From 290ff316ffda3bb30a84936cdf74222813b66e3d Mon Sep 17 00:00:00 2001 From: jcchavezs Date: Mon, 5 Feb 2024 13:38:30 +0000 Subject: [PATCH] deploy: 0ef5a4fc49a2f5e9cc47fd245d5e6d95b5ef9902 --- 404.html | 13 +++++----- connectors/caddy/index.html | 14 +++++----- connectors/coraza-spoa/index.html | 16 ++++++------ connectors/index.html | 17 ++++++------ connectors/index.xml | 2 +- contributors/felipe-zipitria/index.html | 13 +++++----- contributors/felipe-zipitria/index.xml | 2 +- contributors/index.html | 13 +++++----- contributors/index.xml | 2 +- contributors/juan-pablo-tosso/index.html | 17 ++++++------ contributors/juan-pablo-tosso/index.xml | 2 +- docs/index.html | 13 +++++----- docs/index.xml | 2 +- docs/reference/benchmarks/index.html | 16 ++++++------ docs/reference/body-processing/index.html | 16 ++++++------ docs/reference/extending/index.html | 16 ++++++------ docs/reference/index.html | 13 +++++----- docs/reference/index.xml | 2 +- docs/reference/internals/index.html | 16 ++++++------ docs/seclang/actions/index.html | 16 ++++++------ docs/seclang/directives/index.html | 26 ++++++++++++------- docs/seclang/execution-flow/index.html | 16 ++++++------ docs/seclang/index.html | 13 +++++----- docs/seclang/index.xml | 2 +- docs/seclang/operators/index.html | 16 ++++++------ docs/seclang/sitemap.xml | 2 +- docs/seclang/syntax/index.html | 16 ++++++------ docs/seclang/transformations/index.html | 16 ++++++------ docs/seclang/variables/index.html | 16 ++++++------ docs/sitemap.xml | 2 +- docs/tutorials/coreruleset/index.html | 16 ++++++------ docs/tutorials/index.html | 13 +++++----- docs/tutorials/index.xml | 2 +- docs/tutorials/introduction/index.html | 16 ++++++------ docs/tutorials/quick-start/index.html | 16 ++++++------ docs/tutorials/upgrade/index.html | 16 ++++++------ docs/tutorials/using-plugins/index.html | 16 ++++++------ index.html | 13 +++++----- ...f9424d54dadb59a5228af135a3f79353cd0f5a4.js | 11 +++++++- ...ed244670f96aacdf7537912efa93d00994e301.js} | 10 ++++++- ...4df404d3d4d36a44a0c81d3949b318a0a5e757.js} | 2 +- ...8338b1da5ab6051c7fd7d0dc8a29c73e0a86c97.js | 1 - ...0a8951c912ad8c61a9f1c859269aee0acaf4653.js | 14 ++++++++++ plugins/geoip/index.html | 13 +++++----- plugins/index.html | 15 +++++------ sitemap.xml | 2 +- 46 files changed, 273 insertions(+), 249 deletions(-) rename index.min.7c73427c2aa5fd91b7efe8b17477122a4d45afccb0a8663102f77448addb03b8f7942fcb01de72bd7d6ec6f16ef96be5d0d121d71b411075bec24ca0918f2e8a.js => index.min.1565147ff83ed55330c67639714454af535c740e46683550c6803d72bceed92b24988437971360cb3d9bcdf96f9424d54dadb59a5228af135a3f79353cd0f5a4.js (99%) rename js/{bootstrap.min.f06fe6dc0efc9ee1e806021a0c338278256ecf163b547e8e8769fe60b0a1c0d505782852616ca4e1ff6a719eb8fc954e1d26031b8ab3ca71fb9d9998081b319e.js => bootstrap.min.5ba9294247095514d922901cd7b7c1503d426f21b9feb41763d1827ecdd81f9e3b730b69d8ede2161a9e061ff7ed244670f96aacdf7537912efa93d00994e301.js} (98%) rename js/{highlight.min.5c42765ed4daf59624a6e775bdc4bc68bba6664f4d678ecbc55390f986b6852e562c726fb5fd57b078713aa5aef95ebac205fe24f3d998ab84e10b6b28c413ee.js => highlight.min.571ec8077a4fa3ce569c865275342d2cd42ddc19d58c0cdae99d0abf059f749da059d2dff499663327d76b17fc4df404d3d4d36a44a0c81d3949b318a0a5e757.js} (99%) delete mode 100644 main.min.3bb8f119f63c6e06aa99acc71b7037b0c5461db421d5a169df0b668ca079081263bcc72dccff7584205495b398338b1da5ab6051c7fd7d0dc8a29c73e0a86c97.js create mode 100644 main.min.ea773c9f838681ca730da53d014a98775d502489db4d63b78abbcc309f3a1e4bf54a80566a552e96292b66df10a8951c912ad8c61a9f1c859269aee0acaf4653.js diff --git a/404.html b/404.html index 1d2417a4..83151fce 100644 --- a/404.html +++ b/404.html @@ -1,7 +1,6 @@ -404 Page not found - OWASP Coraza

Page not found :(

The page you are looking for doesn't exist or has been moved.

- - -
Top
\ No newline at end of file +404 Page not found - OWASP Coraza +

Page not found :(

The page you are looking for doesn't exist or has been moved.

Top
\ No newline at end of file diff --git a/connectors/caddy/index.html b/connectors/caddy/index.html index b2b726e1..ec1ccb97 100644 --- a/connectors/caddy/index.html +++ b/connectors/caddy/index.html @@ -1,7 +1,7 @@ -Caddy - OWASP Coraza
- - -
Top
\ No newline at end of file +Caddy - OWASP Coraza +
Top
\ No newline at end of file diff --git a/connectors/coraza-spoa/index.html b/connectors/coraza-spoa/index.html index a108808a..265edf01 100644 --- a/connectors/coraza-spoa/index.html +++ b/connectors/coraza-spoa/index.html @@ -1,7 +1,9 @@ -HAProxy Coraza SPOA - OWASP Coraza
Top
\ No newline at end of file diff --git a/connectors/index.html b/connectors/index.html index d7013087..ebea8ebb 100644 --- a/connectors/index.html +++ b/connectors/index.html @@ -1,11 +1,10 @@ -Connectors - OWASP Coraza

Connectors

HAProxy Coraza SPOA

Author: - +Connectors - OWASP Coraza +

  • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
    - - - \ No newline at end of file +Repo: - +Compatibility:

    Top
    \ No newline at end of file diff --git a/connectors/index.xml b/connectors/index.xml index 43b3c72d..ff589a73 100644 --- a/connectors/index.xml +++ b/connectors/index.xml @@ -1,3 +1,3 @@ -Connectors onhttps://coraza.io/connectors/Recent content in Connectors onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:23 +0000HAProxy Coraza SPOAhttps://coraza.io/connectors/coraza-spoa/Thu, 26 May 2022 00:00:00 +0000https://coraza.io/connectors/coraza-spoa/Overview # Coraza SPOA runs the Coraza Web Application Firewall (WAF) as a backing service for HAProxy. It already embeds the Coraza Engine and processes requests for HAProxy. +Connectors onhttps://coraza.io/connectors/Recent content in Connectors onHugo -- gohugo.ioen-USThu, 26 May 2022 00:00:00 +0000HAProxy Coraza SPOAhttps://coraza.io/connectors/coraza-spoa/Thu, 26 May 2022 00:00:00 +0000https://coraza.io/connectors/coraza-spoa/Overview # Coraza SPOA runs the Coraza Web Application Firewall (WAF) as a backing service for HAProxy. It already embeds the Coraza Engine and processes requests for HAProxy. There are multiple components involved in the request processing, so here are some terms you should know: HAProxy includes a Stream Processing Offload Engine (SPOE) to offload request processing to a Stream Processing Offload Agent (SPOA). Data is exchanged between the HAProxy filter and the agent via a binary protocol over TCP called the Stream Processing Offload Procotol (SPOP).Caddyhttps://coraza.io/connectors/caddy/Tue, 06 Oct 2020 08:48:45 +0000https://coraza.io/connectors/caddy/ \ No newline at end of file diff --git a/contributors/felipe-zipitria/index.html b/contributors/felipe-zipitria/index.html index 6a7959fb..11d16ed2 100644 --- a/contributors/felipe-zipitria/index.html +++ b/contributors/felipe-zipitria/index.html @@ -1,7 +1,6 @@ -Felipe Zipitria - OWASP Coraza

    Felipe Zipitria

    You can find me fzipi @ github!

    • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
      - - - \ No newline at end of file +Felipe Zipitria - OWASP Coraza +

      Felipe Zipitria

      You can find me fzipi @ github!

      • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
        \ No newline at end of file diff --git a/contributors/felipe-zipitria/index.xml b/contributors/felipe-zipitria/index.xml index 2920a56e..02d018d8 100644 --- a/contributors/felipe-zipitria/index.xml +++ b/contributors/felipe-zipitria/index.xml @@ -1 +1 @@ -Felipe Zipitria onhttps://coraza.io/contributors/felipe-zipitria/Recent content in Felipe Zipitria onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:50:45 +0000 \ No newline at end of file +Felipe Zipitria onhttps://coraza.io/contributors/felipe-zipitria/Recent content in Felipe Zipitria onHugo -- gohugo.ioen-US \ No newline at end of file diff --git a/contributors/index.html b/contributors/index.html index 04cb24c7..d09b4e4e 100644 --- a/contributors/index.html +++ b/contributors/index.html @@ -1,7 +1,6 @@ -Contributors - OWASP Coraza
        • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
          - - - \ No newline at end of file +Contributors - OWASP Coraza +
          • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
            \ No newline at end of file diff --git a/contributors/index.xml b/contributors/index.xml index e12a3fc1..bf4959bb 100644 --- a/contributors/index.xml +++ b/contributors/index.xml @@ -1 +1 @@ -Contributors onhttps://coraza.io/contributors/Recent content in Contributors onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:50:29 +0000Felipe Zipitriahttps://coraza.io/contributors/felipe-zipitria/Tue, 06 Oct 2020 08:50:45 +0000https://coraza.io/contributors/felipe-zipitria/ You can find me fzipi @ github!Juan Pablo Tossohttps://coraza.io/contributors/juan-pablo-tosso/Tue, 06 Oct 2020 08:50:45 +0000https://coraza.io/contributors/juan-pablo-tosso/ Hi, I'm Juan Pablo Tosso, OWASP #Coraza project co-leader - Research Engineer at @traceableai, Proud Father and Open-Source Developer. \ No newline at end of file +Contributors onhttps://coraza.io/contributors/Recent content in Contributors onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:50:45 +0000Felipe Zipitriahttps://coraza.io/contributors/felipe-zipitria/Tue, 06 Oct 2020 08:50:45 +0000https://coraza.io/contributors/felipe-zipitria/ You can find me fzipi @ github!Juan Pablo Tossohttps://coraza.io/contributors/juan-pablo-tosso/Tue, 06 Oct 2020 08:50:45 +0000https://coraza.io/contributors/juan-pablo-tosso/ Hi, I'm Juan Pablo Tosso, OWASP #Coraza project co-leader - Research Engineer at @traceableai, Proud Father and Open-Source Developer. \ No newline at end of file diff --git a/contributors/juan-pablo-tosso/index.html b/contributors/juan-pablo-tosso/index.html index 92a8264a..0cdf839d 100644 --- a/contributors/juan-pablo-tosso/index.html +++ b/contributors/juan-pablo-tosso/index.html @@ -1,9 +1,8 @@ -Juan Pablo Tosso - OWASP Coraza

            Juan Pablo Tosso

            Hi, I'm Juan Pablo Tosso, OWASP #Coraza project co-leader - Research Engineer at @traceableai, Proud Father and Open-Source Developer.

            Juan Pablo Tosso Linkedin -Juan Pablo Tosso email -Juan Pablo Tosso twitter
            • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
              - - - \ No newline at end of file +Juan Pablo Tosso - OWASP Coraza +

              Juan Pablo Tosso

              Hi, I'm Juan Pablo Tosso, OWASP #Coraza project co-leader - Research Engineer at @traceableai, Proud Father and Open-Source Developer.

              • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                \ No newline at end of file diff --git a/contributors/juan-pablo-tosso/index.xml b/contributors/juan-pablo-tosso/index.xml index ece82be9..cc501585 100644 --- a/contributors/juan-pablo-tosso/index.xml +++ b/contributors/juan-pablo-tosso/index.xml @@ -1 +1 @@ -Juan Pablo Tosso onhttps://coraza.io/contributors/juan-pablo-tosso/Recent content in Juan Pablo Tosso onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:50:45 +0000 \ No newline at end of file +Juan Pablo Tosso onhttps://coraza.io/contributors/juan-pablo-tosso/Recent content in Juan Pablo Tosso onHugo -- gohugo.ioen-US \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index a96b811e..57307648 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,7 +1,6 @@ -Use Cases - OWASP Coraza
                • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                  - - - \ No newline at end of file +Use Cases - OWASP Coraza +
                  • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                    \ No newline at end of file diff --git a/docs/index.xml b/docs/index.xml index 0a46be11..d809eb77 100644 --- a/docs/index.xml +++ b/docs/index.xml @@ -1 +1 @@ -Use Cases onhttps://coraza.io/docs/Recent content in Use Cases onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:45 +0000 \ No newline at end of file +Use Cases onhttps://coraza.io/docs/Recent content in Use Cases onHugo -- gohugo.ioen-US \ No newline at end of file diff --git a/docs/reference/benchmarks/index.html b/docs/reference/benchmarks/index.html index 39bc6c9b..5cda68c8 100644 --- a/docs/reference/benchmarks/index.html +++ b/docs/reference/benchmarks/index.html @@ -1,7 +1,9 @@ -Benchmarks - OWASP Coraza
                    • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                      \ No newline at end of file diff --git a/docs/reference/body-processing/index.html b/docs/reference/body-processing/index.html index 02f9505a..7775daa5 100644 --- a/docs/reference/body-processing/index.html +++ b/docs/reference/body-processing/index.html @@ -1,15 +1,15 @@ -Body Processing - OWASP CorazaBody Processing - OWASP Coraza +

                      BodyBuffer

                      BodyBuffer is used to effectively handle large bodies. Coraza has to buffer the body in order to make reliable blocking possible. Future versions might implement a more efficient solution.

                      BodyBuffer.Reader is a io.Reader that reads from either a memory buffer or a file. Using files is disabled for tinygo.

                      Important: Copying a Reader to BodyBuffer will most likely flush the original reader. In most cases you will have to keep two copies of the reader, one for coraza, and one for your application. You can simply replace your reader pointer with the BodyBuffer reader pointer.

                      Body Processors

                      Body processors are designed to handle requests and responses in the same context. Most processors can handle either a request or a response, but there are cases of body processors like JSON, that can handle request and response in different context. Request-Response correlation is the responsibility of the processor, and the current use-case is GraphQL.

                      Body ProcessorRequestResponseCorrelationTinygo support
                      URLEncodedYesNoNoYes
                      XML (Partial Support)YesYesNoNo
                      MultipartYesNoNoYes
                      JSONYesYesNoYes
                      GraphQLTBDTBDYesTBD
                      • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                        \ No newline at end of file diff --git a/docs/reference/extending/index.html b/docs/reference/extending/index.html index 6d5e9ae1..ef5ebc9c 100644 --- a/docs/reference/extending/index.html +++ b/docs/reference/extending/index.html @@ -1,7 +1,9 @@ -Extending - OWASP Coraza
                        • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                          \ No newline at end of file diff --git a/docs/reference/index.html b/docs/reference/index.html index 210a54a5..6cb81ca3 100644 --- a/docs/reference/index.html +++ b/docs/reference/index.html @@ -1,7 +1,6 @@ -Reference - OWASP Coraza
                          • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                            - - - \ No newline at end of file +Reference - OWASP Coraza +
                            • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                              \ No newline at end of file diff --git a/docs/reference/index.xml b/docs/reference/index.xml index 5600a068..d9776ee2 100644 --- a/docs/reference/index.xml +++ b/docs/reference/index.xml @@ -1,4 +1,4 @@ -Reference onhttps://coraza.io/docs/reference/Recent content in Reference onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:45 +0000Internalshttps://coraza.io/docs/reference/internals/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/reference/internals/WAF Engine # Waf is the main interface used to store settings, rules and create transactions, most directives will set variables for Waf instances. A coraza implementation might have unlimited Waf instances and each Waf might process unlimited transactions. +Reference onhttps://coraza.io/docs/reference/Recent content in Reference onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:57 +0000Internalshttps://coraza.io/docs/reference/internals/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/reference/internals/WAF Engine # Waf is the main interface used to store settings, rules and create transactions, most directives will set variables for Waf instances. A coraza implementation might have unlimited Waf instances and each Waf might process unlimited transactions. Transactions # Transactions are an instance of an url call for a Waf instance, transactions are created with wafinstance.NewTransaction(). Transactions hold collections and configurations that may be updated using rules. Macro Expansion # Macro expansions are a function available for transactions, a macro expansion will compile a string and provide variables data to the current context.Benchmarkshttps://coraza.io/docs/reference/benchmarks/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/reference/benchmarks/Tests description # Tests are performed using OWASP Core Ruleset v4 and go benchmarks. The benchmark tool supports coraza v2, v3 and modsecurity. Modsecurity is executed using CGO. There are currently 4 test-cases and 7 variations: JSON request: 1kb and 100kb payload URLENCODED request: 1kb and 100kb payload Multipart file upload: 1kb and 100kb payload GET request: no body Results # Machine specs: Apple M1 Pro (10 cores, 16 GB RAM)Body Processinghttps://coraza.io/docs/reference/body-processing/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/reference/body-processing/BodyBuffer # BodyBuffer is used to effectively handle large bodies. Coraza has to buffer the body in order to make reliable blocking possible. Future versions might implement a more efficient solution. BodyBuffer.Reader is a io.Reader that reads from either a memory buffer or a file. Using files is disabled for tinygo. diff --git a/docs/reference/internals/index.html b/docs/reference/internals/index.html index f68e97e3..388cda60 100644 --- a/docs/reference/internals/index.html +++ b/docs/reference/internals/index.html @@ -1,11 +1,13 @@ -Internals - OWASP CorazaInternals - OWASP Coraza +
                              • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                \ No newline at end of file diff --git a/docs/seclang/actions/index.html b/docs/seclang/actions/index.html index b27c95d7..6a22ba9f 100644 --- a/docs/seclang/actions/index.html +++ b/docs/seclang/actions/index.html @@ -1,7 +1,9 @@ -Actions - OWASP Coraza
                                • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                  \ No newline at end of file diff --git a/docs/seclang/directives/index.html b/docs/seclang/directives/index.html index 7aa1d91f..71b256ef 100644 --- a/docs/seclang/directives/index.html +++ b/docs/seclang/directives/index.html @@ -1,15 +1,20 @@ -Directives - OWASP Coraza

                                  Include

                                  Description: Include and evaluate a file or file pattern.

                                  Syntax: Include [PATH_TO_CONF_FILES]

                                  Include loads a file or a list of files from the filesystem using golang Glob syntax.

                                  Example:

                                  Include /path/coreruleset/rules/*.conf
                                   

                                  Quoting Glob documentation:

                                  The syntax of patterns is the same as in Match. The pattern may describe hierarchical names such as /usr/*/bin/ed (assuming the Separator is ‘/’). Glob ignores file system errors such as I/O errors reading directories. The only possible returned error is ErrBadPattern, when pattern is malformed.

                                  SecAction

                                  Description: Unconditionally processes the action list it receives as the first and only parameter.

                                  Syntax: SecAction "action1,action2,action3,..."

                                  This directive is commonly used to set variables and initialize persistent collections using the initcol action. The syntax of the parameter is identical to that of the third parameter of SecRule.

                                  Example:

                                  SecAction "nolog,phase:1,initcol:RESOURCE=%{REQUEST_FILENAME}"
                                  +

                                  SecArgumentsLimit

                                  Description: Configures the maximum number of ARGS that will be accepted for processing.

                                  Syntax: SecArgumentsLimit [LIMIT]

                                  Default: 1000

                                  Exceeding the limit will not be included. +With JSON body processing, there is nothing to do when exceed the limit. +Example:

                                  SecArgumentsLimit 1000
                                   

                                  SecAuditEngine

                                  Description: Configures the audit logging engine.

                                  Syntax: SecAuditEngine RelevantOnly

                                  Default: Off

                                  The SecAuditEngine directive is used to configure the audit engine, which logs complete transactions.

                                  The possible values for the audit log engine are as follows:

                                  • On: log all transactions
                                  • Off: do not log any transactions
                                  • RelevantOnly: only the log transactions that have triggered a warning or an error, or have a status code that is considered to be relevant (as determined by the SecAuditLogRelevantStatus @@ -108,7 +113,8 @@ to form the final actions that will be used. (The actions in the rule will overwrite those in the default list.) Refer to SecDefaultAction for more information.

                                    Example:

                                    SecRule ARGS "@rx attack" "phase:1,log,deny,id:1"
                                     

                                    SecRuleEngine

                                    Description: Configures the rules engine.

                                    Syntax: SecRuleEngine On|Off|DetectionOnly

                                    Default: Off

                                    The possible values are:

                                    • On: process rules
                                    • Off: do not process rules
                                    • DetectionOnly: process rules but never executes any disruptive actions -(block, deny, drop, allow, proxy and redirect)

                                    SecRuleRemoveByID

                                    Description: Removes the matching rules from the current configuration context.

                                    Syntax: SecRuleRemoveById ...[ID OR RANGE]

                                  • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                    - - - \ No newline at end of file +(block, deny, drop, allow, proxy and redirect)

                                    SecRuleRemoveByID

                                    Description: Removes the matching rules from the current configuration context.

                                    Syntax: SecRuleRemoveById ...[ID OR RANGE]

                                    SecRuleRemoveByTag

                                    Description: Removes the matching rules from the current configuration context.

                                    Syntax: SecRuleRemoveByTag [TAG]

                                    Normally, you would use SecRuleRemoveById to remove rules, but it may occasionally +be easier to disable an entire group of rules with SecRuleRemoveByTag. Matching is +by case-sensitive string equality.

                                    Example:

                                    SecRuleRemoveByTag attack-dos
                                    +

                                    Note: OWASP CRS has a list of supported tags https://coreruleset.org/docs/rules/metadata/

                                    • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                      \ No newline at end of file diff --git a/docs/seclang/execution-flow/index.html b/docs/seclang/execution-flow/index.html index dd3a753e..3e166434 100644 --- a/docs/seclang/execution-flow/index.html +++ b/docs/seclang/execution-flow/index.html @@ -1,7 +1,9 @@ -Execution flow - OWASP Coraza
                                      • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                        \ No newline at end of file diff --git a/docs/seclang/index.html b/docs/seclang/index.html index 2f5331f9..9c970488 100644 --- a/docs/seclang/index.html +++ b/docs/seclang/index.html @@ -1,7 +1,6 @@ -Seclang - OWASP Coraza
                                        • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                          - - - \ No newline at end of file +Seclang - OWASP Coraza +
                                          • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                            \ No newline at end of file diff --git a/docs/seclang/index.xml b/docs/seclang/index.xml index 9ec4c063..64950b3e 100644 --- a/docs/seclang/index.xml +++ b/docs/seclang/index.xml @@ -1,4 +1,4 @@ -Seclang onhttps://coraza.io/docs/seclang/Recent content in Seclang onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:23 +0000Directiveshttps://coraza.io/docs/seclang/directives/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/seclang/directives/Include # Description: Include and evaluate a file or file pattern. +Seclang onhttps://coraza.io/docs/seclang/Recent content in Seclang onHugo -- gohugo.ioen-USMon, 05 Feb 2024 09:55:41 +0100Directiveshttps://coraza.io/docs/seclang/directives/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/seclang/directives/Include # Description: Include and evaluate a file or file pattern. Syntax: Include [PATH_TO_CONF_FILES] Include loads a file or a list of files from the filesystem using golang Glob syntax. Example: diff --git a/docs/seclang/operators/index.html b/docs/seclang/operators/index.html index caf58d71..af9512a8 100644 --- a/docs/seclang/operators/index.html +++ b/docs/seclang/operators/index.html @@ -1,7 +1,9 @@ -Operators - OWASP Coraza
                                            • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                              \ No newline at end of file diff --git a/docs/seclang/sitemap.xml b/docs/seclang/sitemap.xml index d1425257..7115fc1a 100644 --- a/docs/seclang/sitemap.xml +++ b/docs/seclang/sitemap.xml @@ -1 +1 @@ -https://coraza.io/docs/seclang/directives/2023-06-09T11:28:40+02:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5 \ No newline at end of file +https://coraza.io/docs/seclang/directives/2024-02-05T09:55:41+01:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5 \ No newline at end of file diff --git a/docs/seclang/syntax/index.html b/docs/seclang/syntax/index.html index d73b3ba7..5f9f3c2c 100644 --- a/docs/seclang/syntax/index.html +++ b/docs/seclang/syntax/index.html @@ -1,9 +1,11 @@ -Syntax - OWASP CorazaSyntax - OWASP Coraza +
                                              • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                \ No newline at end of file diff --git a/docs/seclang/transformations/index.html b/docs/seclang/transformations/index.html index 1dcee838..a60415d3 100644 --- a/docs/seclang/transformations/index.html +++ b/docs/seclang/transformations/index.html @@ -1,7 +1,9 @@ -Transformations - OWASP Coraza
                                                • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                  \ No newline at end of file diff --git a/docs/seclang/variables/index.html b/docs/seclang/variables/index.html index 81bd001c..ff6c5358 100644 --- a/docs/seclang/variables/index.html +++ b/docs/seclang/variables/index.html @@ -1,9 +1,11 @@ -Variables - OWASP CorazaVariables - OWASP Coraza +
                                                  • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                    \ No newline at end of file diff --git a/docs/sitemap.xml b/docs/sitemap.xml index 77023bca..0acc4724 100644 --- a/docs/sitemap.xml +++ b/docs/sitemap.xml @@ -1 +1 @@ -https://coraza.io/docs/reference/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/tutorials/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/seclang/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/docs/reference/internals/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/benchmarks/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/body-processing/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/extending/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/introduction/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/quick-start/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/tutorials/coreruleset/2020-10-13T15:21:01+02:00weekly0.5https://coraza.io/docs/tutorials/using-plugins/2021-09-05T14:03:58-03:00weekly0.5https://coraza.io/docs/tutorials/upgrade/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/seclang/directives/2023-06-09T11:28:40+02:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5 \ No newline at end of file +https://coraza.io/docs/reference/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/tutorials/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/seclang/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/docs/reference/internals/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/benchmarks/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/body-processing/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/extending/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/introduction/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/quick-start/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/tutorials/coreruleset/2020-10-13T15:21:01+02:00weekly0.5https://coraza.io/docs/tutorials/using-plugins/2021-09-05T14:03:58-03:00weekly0.5https://coraza.io/docs/tutorials/upgrade/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/seclang/directives/2024-02-05T09:55:41+01:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5 \ No newline at end of file diff --git a/docs/tutorials/coreruleset/index.html b/docs/tutorials/coreruleset/index.html index f10c3bab..ebe779cb 100644 --- a/docs/tutorials/coreruleset/index.html +++ b/docs/tutorials/coreruleset/index.html @@ -1,7 +1,9 @@ -OWASP Core Ruleset - OWASP Coraza
                                                    • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                      \ No newline at end of file diff --git a/docs/tutorials/index.html b/docs/tutorials/index.html index 89ca2743..f99715a8 100644 --- a/docs/tutorials/index.html +++ b/docs/tutorials/index.html @@ -1,7 +1,6 @@ -Tutorials - OWASP Coraza
                                                      • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                        - - - \ No newline at end of file +Tutorials - OWASP Coraza +
                                                        • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                          \ No newline at end of file diff --git a/docs/tutorials/index.xml b/docs/tutorials/index.xml index 9f2226dc..2434e508 100644 --- a/docs/tutorials/index.xml +++ b/docs/tutorials/index.xml @@ -1,4 +1,4 @@ -Tutorials onhttps://coraza.io/docs/tutorials/Recent content in Tutorials onHugo -- gohugo.ioen-USTue, 06 Oct 2020 08:48:45 +0000Introductionhttps://coraza.io/docs/tutorials/introduction/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/tutorials/introduction/  Coraza - Web Application Firewall Coraza is an open source, enterprise-grade, high performance Web Application Firewall (WAF) ready to protect your beloved applications. It written in Go, supports ModSecurity SecLang rulesets and is 100% compatible with the OWASP Core Rule Set. +Tutorials onhttps://coraza.io/docs/tutorials/Recent content in Tutorials onHugo -- gohugo.ioen-USSun, 05 Sep 2021 14:03:58 -0300Introductionhttps://coraza.io/docs/tutorials/introduction/Tue, 06 Oct 2020 08:48:57 +0000https://coraza.io/docs/tutorials/introduction/  Coraza - Web Application Firewall Coraza is an open source, enterprise-grade, high performance Web Application Firewall (WAF) ready to protect your beloved applications. It written in Go, supports ModSecurity SecLang rulesets and is 100% compatible with the OWASP Core Rule Set. Website: https://coraza.io Forum: Github Discussions OWASP Slack Community (#coraza): https://owasp.org/slack/invite Rule testing: Coraza Playground Planning: Github Projects Key Features: ⇲ Drop-in - Coraza is a drop-in alternative to replace Trustwave ModSecurity Engine (planned to be deprecated on July 1, 2024) and supports industry-standard SecLang rule sets.Quick Starthttps://coraza.io/docs/tutorials/quick-start/Mon, 16 Nov 2020 13:59:39 +0100https://coraza.io/docs/tutorials/quick-start/If you are not looking to use Coraza WAF as a library and you want a working WAF implementation or integration, check the integrations page. Requirements # Golang 1.18+ Add Coraza to your go project # go install github.com/corazawaf/coraza/v3@latest Create a WAF instance # WAF instances are the main container for settings and rules which are inherited by transactions that will process requests, responses and logging. A WAF instance can be created like this:OWASP Core Rulesethttps://coraza.io/docs/tutorials/coreruleset/Tue, 13 Oct 2020 15:21:01 +0200https://coraza.io/docs/tutorials/coreruleset/Installation # Core Ruleset can be installed by importing each required file in the following order: diff --git a/docs/tutorials/introduction/index.html b/docs/tutorials/introduction/index.html index cef833cc..68cff8fc 100644 --- a/docs/tutorials/introduction/index.html +++ b/docs/tutorials/introduction/index.html @@ -1,7 +1,9 @@ -Introduction - OWASP Coraza
                                                          • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                            \ No newline at end of file diff --git a/docs/tutorials/quick-start/index.html b/docs/tutorials/quick-start/index.html index 98b2faf8..2838b771 100644 --- a/docs/tutorials/quick-start/index.html +++ b/docs/tutorials/quick-start/index.html @@ -1,7 +1,9 @@ -Quick Start - OWASP Coraza
                                                            • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                              \ No newline at end of file diff --git a/docs/tutorials/upgrade/index.html b/docs/tutorials/upgrade/index.html index 5fd27b47..305e1c40 100644 --- a/docs/tutorials/upgrade/index.html +++ b/docs/tutorials/upgrade/index.html @@ -1,7 +1,9 @@ -Upgrade to v3 🆕 - OWASP Coraza
                                                              • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                \ No newline at end of file diff --git a/docs/tutorials/using-plugins/index.html b/docs/tutorials/using-plugins/index.html index e17d21ea..e2759299 100644 --- a/docs/tutorials/using-plugins/index.html +++ b/docs/tutorials/using-plugins/index.html @@ -1,13 +1,13 @@ -Using Plugins - OWASP Coraza

                                                                Using Plugins

                                                                Plugins can extend most Coraza functionalities like, audit logging, geo ip, operators, actions, transformations and body processors.

                                                                Plugins are imported by calling the respective helpers:

                                                                • plugins.RegisterOperator(...)
                                                                • plugins.RegisterAction(...)
                                                                • plugins.RegisterBodyProcessor(...)
                                                                • plugins.RegisterTransformation(...)

                                                                Most plugins will register themselves automatically, but some will require you to call the respective helper.

                                                                Self-registering plugins will use init() to call the respective registration helper, and they can be imported like this:

                                                                package main
                                                                +Using Plugins - OWASP Coraza
                                                                +

                                                                Using Plugins

                                                                Plugins can extend most Coraza functionalities like, audit logging, geo ip, operators, actions, transformations and body processors.

                                                                Plugins are imported by calling the respective helpers:

                                                                • plugins.RegisterOperator(...)
                                                                • plugins.RegisterAction(...)
                                                                • plugins.RegisterBodyProcessor(...)
                                                                • plugins.RegisterTransformation(...)

                                                                Most plugins will register themselves automatically, but some will require you to call the respective helper.

                                                                Self-registering plugins will use init() to call the respective registration helper, and they can be imported like this:

                                                                package main
                                                                 
                                                                 include(
                                                                   "github.com/corazawaf/coraza/v3"
                                                                   _ "github.com/someorg/my-awesome-plugin
                                                                 )
                                                                -
                                                                • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                  - - - \ No newline at end of file +
                                                                  • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                    \ No newline at end of file diff --git a/index.html b/index.html index 3e764ec3..9a7feb65 100644 --- a/index.html +++ b/index.html @@ -1,7 +1,6 @@ -OWASP Coraza - Enterprise-grade open source web application firewall library

                                                                    OWASP Coraza WAF

                                                                    Coraza is an open source, high performance, Web Application Firewall ready to protect your beloved applications.

                                                                    Get started

                                                                    Open-source Apache 2 Licensed. GitHub v3.0.3

                                                                    Security

                                                                    Security is what Coraza is for, enforce policies using OWASP CRS or create your own policies to stop attackers and generate important audit information.

                                                                    Fast by default ⚡️

                                                                    From huge websites to small blogs, Coraza can handle that load with minimal performance impacts, just check our Benchmarks.

                                                                    Extensible

                                                                    Audit Loggers, persistence engines, operators, actions, create your own functionalities to extend Coraza as much as you want.

                                                                    Integrations

                                                                    Coraza WAF is just a library but we support many integrations to deploy a WAF as an application server, reverse proxy, container, and more.

                                                                    Roadmap

                                                                    Expect interesting features and improvements within our community-driven roadmap, for small developers and big companies.

                                                                    Enterprise ready

                                                                    Continuous development, high performance and great documentation are the recipe for a perfect enterprise open source project.

                                                                    • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                      - - - \ No newline at end of file +OWASP Coraza - Enterprise-grade open source web application firewall library +

                                                                      OWASP Coraza WAF

                                                                      Coraza is an open source, high performance, Web Application Firewall ready to protect your beloved applications.

                                                                      Get started

                                                                      Open-source Apache 2 Licensed. GitHub v3.0.4

                                                                      Security

                                                                      Security is what Coraza is for, enforce policies using OWASP CRS or create your own policies to stop attackers and generate important audit information.

                                                                      Fast by default ⚡️

                                                                      From huge websites to small blogs, Coraza can handle that load with minimal performance impacts, just check our Benchmarks.

                                                                      Extensible

                                                                      Audit Loggers, persistence engines, operators, actions, create your own functionalities to extend Coraza as much as you want.

                                                                      Integrations

                                                                      Coraza WAF is just a library but we support many integrations to deploy a WAF as an application server, reverse proxy, container, and more.

                                                                      Roadmap

                                                                      Expect interesting features and improvements within our community-driven roadmap, for small developers and big companies.

                                                                      Enterprise ready

                                                                      Continuous development, high performance and great documentation are the recipe for a perfect enterprise open source project.

                                                                      • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                        \ No newline at end of file diff --git a/index.min.7c73427c2aa5fd91b7efe8b17477122a4d45afccb0a8663102f77448addb03b8f7942fcb01de72bd7d6ec6f16ef96be5d0d121d71b411075bec24ca0918f2e8a.js b/index.min.1565147ff83ed55330c67639714454af535c740e46683550c6803d72bceed92b24988437971360cb3d9bcdf96f9424d54dadb59a5228af135a3f79353cd0f5a4.js similarity index 99% rename from index.min.7c73427c2aa5fd91b7efe8b17477122a4d45afccb0a8663102f77448addb03b8f7942fcb01de72bd7d6ec6f16ef96be5d0d121d71b411075bec24ca0918f2e8a.js rename to index.min.1565147ff83ed55330c67639714454af535c740e46683550c6803d72bceed92b24988437971360cb3d9bcdf96f9424d54dadb59a5228af135a3f79353cd0f5a4.js index bb393361..89a215e8 100644 --- a/index.min.7c73427c2aa5fd91b7efe8b17477122a4d45afccb0a8663102f77448addb03b8f7942fcb01de72bd7d6ec6f16ef96be5d0d121d71b411075bec24ca0918f2e8a.js +++ b/index.min.1565147ff83ed55330c67639714454af535c740e46683550c6803d72bceed92b24988437971360cb3d9bcdf96f9424d54dadb59a5228af135a3f79353cd0f5a4.js @@ -8,7 +8,11 @@ SecAction # Description: Unconditionally processes the action list it receives a Syntax: SecAction "action1,action2,action3,..." This directive is commonly used to set variables and initialize persistent collections using the initcol action. The syntax of the parameter is identical to that of the third parameter of SecRule. Example: -SecAction "nolog,phase:1,initcol:RESOURCE=%{REQUEST_FILENAME}" SecAuditEngine # Description: Configures the audit logging engine. +SecAction "nolog,phase:1,initcol:RESOURCE=%{REQUEST_FILENAME}" SecArgumentsLimit # Description: Configures the maximum number of ARGS that will be accepted for processing. +Syntax: SecArgumentsLimit [LIMIT] +Default: 1000 +Exceeding the limit will not be included. With JSON body processing, there is nothing to do when exceed the limit. Example: +SecArgumentsLimit 1000 SecAuditEngine # Description: Configures the audit logging engine. Syntax: SecAuditEngine RelevantOnly Default: Off The SecAuditEngine directive is used to configure the audit engine, which logs complete transactions. @@ -102,6 +106,11 @@ Default: Off The possible values are: On: process rules Off: do not process rules DetectionOnly: process rules but never executes any disruptive actions (block, deny, drop, allow, proxy and redirect) SecRuleRemoveByID # Description: Removes the matching rules from the current configuration context. Syntax: SecRuleRemoveById ...[ID OR RANGE] +SecRuleRemoveByTag # Description: Removes the matching rules from the current configuration context. +Syntax: SecRuleRemoveByTag [TAG] +Normally, you would use SecRuleRemoveById to remove rules, but it may occasionally be easier to disable an entire group of rules with SecRuleRemoveByTag. Matching is by case-sensitive string equality. +Example: +SecRuleRemoveByTag attack-dos Note: OWASP CRS has a list of supported tags https://coreruleset.org/docs/rules/metadata/ `}),e.add({id:1,href:"/docs/seclang/syntax/",title:"Syntax",description:`The original language for configuring the ModSecurity Apache module was a set of extension directives to the Apache config language. This extension allows you to generate your Security Policy where you take an access control decision based on a set of parameters. Directives can be used to configure the engine itself, but also to send directives to the engine for access control. Directives look like the examples below: SecDirective1 some options SecDirective2 "some option between brackets \\" and escaped" SecSampleDirective this \\ directive \\ is splitted \\ in lines Rule syntax # Rules are a special directive that must contain variables, operator and actions: SecRule VARIABLES "@OPERATOR OPERATOR_ARGUMENTS" "ACTIONS".`,content:`The original language for configuring the ModSecurity Apache module was a set of extension directives to the Apache config language. This extension allows you to generate your Security Policy where you take an access control decision based on a set of parameters. Directives can be used to configure the engine itself, but also to send directives to the engine for access control. Directives look like the examples below: SecDirective1 some options SecDirective2 "some option between brackets \\" and escaped" SecSampleDirective this \\ directive \\ is splitted \\ in lines Rule syntax # Rules are a special directive that must contain variables, operator and actions: SecRule VARIABLES "@OPERATOR OPERATOR_ARGUMENTS" "ACTIONS". diff --git a/js/bootstrap.min.f06fe6dc0efc9ee1e806021a0c338278256ecf163b547e8e8769fe60b0a1c0d505782852616ca4e1ff6a719eb8fc954e1d26031b8ab3ca71fb9d9998081b319e.js b/js/bootstrap.min.5ba9294247095514d922901cd7b7c1503d426f21b9feb41763d1827ecdd81f9e3b730b69d8ede2161a9e061ff7ed244670f96aacdf7537912efa93d00994e301.js similarity index 98% rename from js/bootstrap.min.f06fe6dc0efc9ee1e806021a0c338278256ecf163b547e8e8769fe60b0a1c0d505782852616ca4e1ff6a719eb8fc954e1d26031b8ab3ca71fb9d9998081b319e.js rename to js/bootstrap.min.5ba9294247095514d922901cd7b7c1503d426f21b9feb41763d1827ecdd81f9e3b730b69d8ede2161a9e061ff7ed244670f96aacdf7537912efa93d00994e301.js index eb87cb9b..d8db3b14 100644 --- a/js/bootstrap.min.f06fe6dc0efc9ee1e806021a0c338278256ecf163b547e8e8769fe60b0a1c0d505782852616ca4e1ff6a719eb8fc954e1d26031b8ab3ca71fb9d9998081b319e.js +++ b/js/bootstrap.min.5ba9294247095514d922901cd7b7c1503d426f21b9feb41763d1827ecdd81f9e3b730b69d8ede2161a9e061ff7ed244670f96aacdf7537912efa93d00994e301.js @@ -1 +1,9 @@ -(()=>{var n=Object.create,e=Object.defineProperty,s=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,n)=>function(){return n||(0,e[t(e)[0]])((n={exports:{}}).exports,n),n.exports},r=(n,o,a,r)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of t(o))!i.call(n,c)&&c!==a&&e(n,c,{get:()=>o[c],enumerable:!(r=s(o,c))||r.enumerable});return n},c=(t,s,i)=>(i=t!=null?n(o(t)):{},r(s||!t||!t.__esModule?e(i,"default",{value:t,enumerable:!0}):i,t)),l=a({"node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"(e,t){!function(n,s){"object"==typeof e&&"undefined"!=typeof t?t.exports=s():"function"==typeof define&&define.amd?define(s):(n="undefined"!=typeof globalThis?globalThis:n||self).bootstrap=s()}(e,function(){"use strict";const y=new Map,_e={set(e,t,n){y.has(e)||y.set(e,new Map);const s=y.get(e);s.has(t)||0===s.size?s.set(t,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,t)=>y.has(e)&&y.get(e).get(t)||null,remove(e,t){if(!y.has(e))return;const n=y.get(e);n.delete(t),0===n.size&&y.delete(e)}},He="transitionend",_t=e=>(e&&window.CSS&&window.CSS.escape&&(e=e.replace(/#([^\s"#']+)/g,(e,t)=>`#${CSS.escape(t)}`)),e),ft=e=>{e.dispatchEvent(new Event(He))},v=e=>!!e&&"object"==typeof e&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),j=e=>v(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?document.querySelector(_t(e)):null,P=e=>{if(!v(e)||0===e.getClientRects().length)return!1;const n="visible"===getComputedStyle(e).getPropertyValue("visibility"),t=e.closest("details:not([open])");if(!t)return n;if(t!==e){const n=e.closest("summary");if(n&&n.parentNode!==t)return!1;if(null===n)return!1}return n},b=e=>!e||e.nodeType!==Node.ELEMENT_NODE||!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled")),Rt=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?Rt(e.parentNode):null},he=()=>{},$=e=>{e.offsetHeight},$t=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,Te=[],d=()=>"rtl"===document.documentElement.dir,l=e=>{var t=()=>{const t=$t();if(t){const n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}};"loading"===document.readyState?(Te.length||document.addEventListener("DOMContentLoaded",()=>{for(const e of Te)e()}),Te.push(t)):t()},o=(e,t=[],n=e)=>"function"==typeof e?e(...t):n,nn=(e,t,n=!0)=>{if(!n)return void o(e);const a=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e);const s=Number.parseFloat(t),o=Number.parseFloat(n);return s||o?(t=t.split(",")[0],n=n.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(n))):0})(t)+5;let s=!1;const i=({target:n})=>{n===t&&(s=!0,t.removeEventListener(He,i),o(e))};t.addEventListener(He,i),setTimeout(()=>{s||ft(t)},a)},Me=(e,t,n,s)=>{const i=e.length;let o=e.indexOf(t);return-1===o?!n&&s?e[i-1]:e[0]:(o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))])},es=/[^.]*(?=\..*)\.|.*/,$n=/\..*/,Dn=/::\d+$/,Ae={};let dn=1;const en={mouseenter:"mouseover",mouseleave:"mouseout"},zn=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 Qt(e,t){return t&&`${t}::${dn++}`||e.uidEvent||dn++}function Bt(e){const t=Qt(e);return e.uidEvent=t,Ae[t]=Ae[t]||{},Ae[t]}function At(e,t,n=null){return Object.values(e).find(e=>e.callable===t&&e.delegationSelector===n)}function xt(e,t,n){const o="string"==typeof t,i=o?n:t||n;let s=dt(e);return zn.has(s)||(s=e),[o,i,s]}function vt(t,n,s,o,i){if("string"!=typeof n||!t)return;let[c,a,l]=xt(n,s,o);if(n in en){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};a=e(a)}const u=Bt(t),h=u[l]||(u[l]={}),d=At(h,a,c?s:null);if(d)return void(d.oneOff=d.oneOff&&i);const m=Qt(a,n.replace(es,"")),r=c?function(t,n,s){return function o(i){const a=t.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(const c of a)if(c===r)return Ze(i,{delegateTarget:r}),o.oneOff&&e.off(t,i.type,n,s),s.apply(r,[i])}}(t,s,a):function(t,n){return function s(o){return Ze(o,{delegateTarget:t}),s.oneOff&&e.off(t,o.type,n),n.apply(t,[o])}}(t,a);r.delegationSelector=c?s:null,r.callable=a,r.oneOff=i,r.uidEvent=m,h[m]=r,t.addEventListener(l,r,c)}function We(e,t,n,s,o){const i=At(t[n],s,o);i&&(e.removeEventListener(n,i,Boolean(o)),delete t[n][i.uidEvent])}function Cs(e,t,n,s){const o=t[n]||{};for(const[a,i]of Object.entries(o))a.includes(s)&&We(e,t,n,i.callable,i.delegationSelector)}function dt(e){return e=e.replace($n,""),en[e]||e}const e={on(e,t,n,s){vt(e,t,n,s,!1)},one(e,t,n,s){vt(e,t,n,s,!0)},off(e,t,n,s){if("string"!=typeof t||!e)return;const[c,a,i]=xt(t,n,s),l=i!==t,o=Bt(e),r=o[i]||{},d=t.startsWith(".");if(void 0===a){if(d)for(const n of Object.keys(o))Cs(e,o,n,t.slice(1));for(const[s,n]of Object.entries(r)){const a=s.replace(Dn,"");l&&!t.includes(a)||We(e,o,i,n.callable,n.delegationSelector)}}else{if(!Object.keys(r).length)return;We(e,o,i,a,c?n:null)}},trigger(e,t,n){if("string"!=typeof t||!e)return null;const i=$t();let s=null,a=!0,r=!0,c=!1;t!==dt(t)&&i&&(s=i.Event(t,n),i(e).trigger(s),a=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),c=s.isDefaultPrevented());const o=Ze(new Event(t,{bubbles:a,cancelable:!0}),n);return c&&o.preventDefault(),r&&e.dispatchEvent(o),o.defaultPrevented&&s&&s.preventDefault(),o}};function Ze(e,t={}){for(const[n,s]of Object.entries(t))try{e[n]=s}catch{Object.defineProperty(e,n,{configurable:!0,get:()=>s})}return e}function ot(e){if("true"===e)return!0;if("false"===e)return!1;if(e===Number(e).toString())return Number(e);if(""===e||"null"===e)return null;if("string"!=typeof e)return e;try{return JSON.parse(decodeURIComponent(e))}catch{return e}}function et(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}const g={setDataAttribute(e,t,n){e.setAttribute(`data-bs-${et(t)}`,n)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${et(t)}`)},getDataAttributes(e){if(!e)return{};const t={},n=Object.keys(e.dataset).filter(e=>e.startsWith("bs")&&!e.startsWith("bsConfig"));for(const o of n){let s=o.replace(/^bs/,"");s=s.charAt(0).toLowerCase()+s.slice(1,s.length),t[s]=ot(e.dataset[o])}return t},getDataAttribute:(e,t)=>ot(e.getAttribute(`data-bs-${et(t)}`))};class G{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(e){return e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e}_mergeConfigObj(e,t){const n=v(t)?g.getDataAttribute(t,"config"):{};return{...this.constructor.Default,..."object"==typeof n?n:{},...v(t)?g.getDataAttributes(t):{},..."object"==typeof e?e:{}}}_typeCheckConfig(e,t=this.constructor.DefaultType){for(const[s,o]of Object.entries(t)){const i=e[s],a=v(i)?"element":null==(n=i)?`${n}`:Object.prototype.toString.call(n).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(o).test(a))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${o}".`)}var n}}class u extends G{constructor(e,t){super(),(e=j(e))&&(this._element=e,this._config=this._getConfig(t),_e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){_e.remove(this._element,this.constructor.DATA_KEY),e.off(this._element,this.constructor.EVENT_KEY);for(const e of Object.getOwnPropertyNames(this))this[e]=null}_queueCallback(e,t,n=!0){nn(e,t,n)}_getConfig(e){return e=this._mergeConfigObj(e,this._element),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}static getInstance(e){return _e.get(j(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.3.0"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(e){return`${e}${this.EVENT_KEY}`}}const ye=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&"#"!==n?n.trim():null}return _t(t)},t={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 s=[];let n=e.parentNode.closest(t);for(;n;)s.push(n),n=n.parentNode.closest(t);return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){const t=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(",");return this.find(t,e).filter(e=>!b(e)&&P(e))},getSelectorFromElement(e){const n=ye(e);return n&&t.findOne(n)?n:null},getElementFromSelector(e){const n=ye(e);return n?t.findOne(n):null},getMultipleElementsFromSelector(e){const n=ye(e);return n?t.find(n):[]}},ue=(n,s="hide")=>{const i=`click.dismiss${n.EVENT_KEY}`,o=n.NAME;e.on(document,i,`[data-bs-dismiss="${o}"]`,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),b(this))return;const i=t.getElementFromSelector(this)||this.closest(`.${o}`);n.getOrCreateInstance(i)[s]()})};class re extends u{static get NAME(){return"alert"}close(){if(e.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback(()=>this._destroyElement(),this._element,t)}_destroyElement(){this._element.remove(),e.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(e){return this.each(function(){const t=re.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}})}}ue(re,"close"),l(re);const it='[data-bs-toggle="button"]';class ae extends u{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=ae.getOrCreateInstance(this);"toggle"===e&&t[e]()})}}e.on(document,"click.bs.button.data-api",it,e=>{e.preventDefault();const t=e.target.closest(it);ae.getOrCreateInstance(t).toggle()}),l(ae);const ks={endCallback:null,leftCallback:null,rightCallback:null},As={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Ke extends G{constructor(e,t){super(),this._element=e,e&&Ke.isSupported()&&(this._config=this._getConfig(t),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return ks}static get DefaultType(){return As}static get NAME(){return"swipe"}dispose(){e.off(this._element,".bs.swipe")}_start(e){this._supportPointerEvents?this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX):this._deltaX=e.touches[0].clientX}_end(e){this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX-this._deltaX),this._handleSwipe(),o(this._config.endCallback)}_move(e){this._deltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this._deltaX}_handleSwipe(){const e=Math.abs(this._deltaX);if(e<=40)return;const t=e/this._deltaX;this._deltaX=0,t&&o(t>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(e.on(this._element,"pointerdown.bs.swipe",e=>this._start(e)),e.on(this._element,"pointerup.bs.swipe",e=>this._end(e)),this._element.classList.add("pointer-event")):(e.on(this._element,"touchstart.bs.swipe",e=>this._start(e)),e.on(this._element,"touchmove.bs.swipe",e=>this._move(e)),e.on(this._element,"touchend.bs.swipe",e=>this._end(e)))}_eventIsPointerPenTouch(e){return this._supportPointerEvents&&("pen"===e.pointerType||"touch"===e.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const X="next",S="prev",F="left",J="right",Ue="slid.bs.carousel",pt="carousel",ne="active",Ss={ArrowLeft:J,ArrowRight:F},Ms={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Fs={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class K extends u{constructor(e,n){super(e,n),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=t.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===pt&&this.cycle()}static get Default(){return Ms}static get DefaultType(){return Fs}static get NAME(){return"carousel"}next(){this._slide(X)}nextWhenVisible(){!document.hidden&&P(this._element)&&this.next()}prev(){this._slide(S)}pause(){this._isSliding&&ft(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval(()=>this.nextWhenVisible(),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?e.one(this._element,Ue,()=>this.cycle()):this.cycle())}to(t){const n=this._getItems();if(t>n.length-1||t<0)return;if(this._isSliding)return void e.one(this._element,Ue,()=>this.to(t));const s=this._getItemIndex(this._getActive());if(s===t)return;const o=t>s?X:S;this._slide(o,n[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(e){return e.defaultInterval=e.interval,e}_addEventListeners(){this._config.keyboard&&e.on(this._element,"keydown.bs.carousel",e=>this._keydown(e)),"hover"===this._config.pause&&(e.on(this._element,"mouseenter.bs.carousel",()=>this.pause()),e.on(this._element,"mouseleave.bs.carousel",()=>this._maybeEnableCycle())),this._config.touch&&Ke.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const n of t.find(".carousel-item img",this._element))e.on(n,"dragstart.bs.carousel",e=>e.preventDefault());const n={leftCallback:()=>this._slide(this._directionToOrder(F)),rightCallback:()=>this._slide(this._directionToOrder(J)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(()=>this._maybeEnableCycle(),500+this._config.interval))}};this._swipeHelper=new Ke(this._element,n)}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=Ss[e.key];t&&(e.preventDefault(),this._slide(this._directionToOrder(t)))}_getItemIndex(e){return this._getItems().indexOf(e)}_setActiveIndicatorElement(e){if(!this._indicatorsElement)return;const s=t.findOne(".active",this._indicatorsElement);s.classList.remove(ne),s.removeAttribute("aria-current");const n=t.findOne(`[data-bs-slide-to="${e}"]`,this._indicatorsElement);n&&(n.classList.add(ne),n.setAttribute("aria-current","true"))}_updateInterval(){const e=this._activeElement||this._getActive();if(!e)return;const t=Number.parseInt(e.getAttribute("data-bs-interval"),10);this._config.interval=t||this._config.defaultInterval}_slide(t,n=null){if(this._isSliding)return;const o=this._getActive(),a=t===X,s=n||Me(this._getItems(),o,a,this._config.wrap);if(s===o)return;const c=this._getItemIndex(s),l=n=>e.trigger(this._element,n,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(o),to:c});if(l("slide.bs.carousel").defaultPrevented)return;if(!o||!s)return;const d=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(c),this._activeElement=s;const i=a?"carousel-item-start":"carousel-item-end",r=a?"carousel-item-next":"carousel-item-prev";s.classList.add(r),$(s),o.classList.add(i),s.classList.add(i),this._queueCallback(()=>{s.classList.remove(i,r),s.classList.add(ne),o.classList.remove(ne,r,i),this._isSliding=!1,l(Ue)},o,this._isAnimated()),d&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return t.findOne(".active.carousel-item",this._element)}_getItems(){return t.find(".carousel-item",this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(e){return d()?e===F?S:X:e===F?X:S}_orderToDirection(e){return d()?e===S?F:J:e===S?J:F}static jQueryInterface(e){return this.each(function(){const t=K.getOrCreateInstance(this,e);if("number"!=typeof e){if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}else t.to(e)})}}e.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",function(e){const s=t.getElementFromSelector(this);if(!s||!s.classList.contains(pt))return;e.preventDefault();const n=K.getOrCreateInstance(s),o=this.getAttribute("data-bs-slide-to");return o?(n.to(o),void n._maybeEnableCycle()):"next"===g.getDataAttribute(this,"slide")?(n.next(),void n._maybeEnableCycle()):(n.prev(),void n._maybeEnableCycle())}),e.on(window,"load.bs.carousel.data-api",()=>{const e=t.find('[data-bs-ride="carousel"]');for(const t of e)K.getOrCreateInstance(t)}),l(K);const Pe="show",Z="collapse",le="collapsing",xe='[data-bs-toggle="collapse"]',Ds={parent:null,toggle:!0},fs={parent:"(null|element)",toggle:"boolean"};class V extends u{constructor(e,n){super(e,n),this._isTransitioning=!1,this._triggerArray=[];const s=t.find(xe);for(const e of s){const n=t.getSelectorFromElement(e),o=t.find(n).filter(e=>e===this._element);null!==n&&o.length&&this._triggerArray.push(e)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ds}static get DefaultType(){return fs}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let n=[];if(this._config.parent&&(n=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter(e=>e!==this._element).map(e=>V.getOrCreateInstance(e,{toggle:!1}))),n.length&&n[0]._isTransitioning)return;if(e.trigger(this._element,"show.bs.collapse").defaultPrevented)return;for(const e of n)e.hide();const t=this._getDimension();this._element.classList.remove(Z),this._element.classList.add(le),this._element.style[t]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const s=`scroll${t[0].toUpperCase()+t.slice(1)}`;this._queueCallback(()=>{this._isTransitioning=!1,this._element.classList.remove(le),this._element.classList.add(Z,Pe),this._element.style[t]="",e.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[t]=`${this._element[s]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(e.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const n=this._getDimension();this._element.style[n]=`${this._element.getBoundingClientRect()[n]}px`,$(this._element),this._element.classList.add(le),this._element.classList.remove(Z,Pe);for(const e of this._triggerArray){const n=t.getElementFromSelector(e);n&&!this._isShown(n)&&this._addAriaAndCollapsedClass([e],!1)}this._isTransitioning=!0,this._element.style[n]="",this._queueCallback(()=>{this._isTransitioning=!1,this._element.classList.remove(le),this._element.classList.add(Z),e.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}_isShown(e=this._element){return e.classList.contains(Pe)}_configAfterMerge(e){return e.toggle=Boolean(e.toggle),e.parent=j(e.parent),e}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const e=this._getFirstLevelChildren(xe);for(const n of e){const s=t.getElementFromSelector(n);s&&this._addAriaAndCollapsedClass([n],this._isShown(s))}}_getFirstLevelChildren(e){const n=t.find(":scope .collapse .collapse",this._config.parent);return t.find(e,this._config.parent).filter(e=>!n.includes(e))}_addAriaAndCollapsedClass(e,t){if(e.length)for(const n of e)n.classList.toggle("collapsed",!t),n.setAttribute("aria-expanded",t)}static jQueryInterface(e){const t={};return"string"==typeof e&&/show|hide/.test(e)&&(t.toggle=!1),this.each(function(){const n=V.getOrCreateInstance(this,t);if("string"==typeof e){if(void 0===n[e])throw new TypeError(`No method named "${e}"`);n[e]()}})}}e.on(document,"click.bs.collapse.data-api",xe,function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();for(const e of t.getMultipleElementsFromSelector(this))V.getOrCreateInstance(e,{toggle:!1}).toggle()}),l(V);var q,s="top",a="bottom",i="right",n="left",be="auto",L=[s,a,i,n],O="start",R="end",Fn="clippingParents",Oe="viewport",N="popper",Cn="reference",Ee=L.reduce(function(e,t){return e.concat([t+"-"+O,t+"-"+R])},[]),ke=[].concat(L,[be]).reduce(function(e,t){return e.concat([t,t+"-"+O,t+"-"+R])},[]),On="beforeRead",cn="read",on="afterRead",tn="beforeMain",Zt="main",nt="afterMain",Ht="beforeWrite",Nt="write",Ct="afterWrite",wt=[On,cn,on,tn,Zt,nt,Ht,Nt,Ct],ut,gt,bt,De;function h(e){return e?(e.nodeName||"").toLowerCase():null}function r(e){if(e==null)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function x(e){return e instanceof r(e).Element||e instanceof Element}function c(e){return e instanceof r(e).HTMLElement||e instanceof HTMLElement}function Ve(e){return"undefined"!=typeof ShadowRoot&&(e instanceof r(e).ShadowRoot||e instanceof ShadowRoot)}const $e={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];c(n)&&h(n)&&(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];!1===t?n.removeAttribute(e):n.setAttribute(e,!0===t?"":t)}))})},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce(function(e,t){return e[t]="",e},{});c(s)&&h(s)&&(Object.assign(s.style,i),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}},requires:["computeStyles"]};function f(e){return e.split("-")[0]}var E=Math.max,Q=Math.min,M=Math.round;function Ye(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function mt(){return!/^((?!chrome|android).)*safari/i.test(Ye())}function k(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var s=e.getBoundingClientRect(),i=1,a=1;t&&c(e)&&(i=e.offsetWidth>0&&M(s.width)/e.offsetWidth||1,a=e.offsetHeight>0&&M(s.height)/e.offsetHeight||1);var o=(x(e)?r(e):window).visualViewport,u=!mt()&&n,l=(s.left+(u&&o?o.offsetLeft:0))/i,d=(s.top+(u&&o?o.offsetTop:0))/a,h=s.width/i,m=s.height/a;return{width:h,height:m,top:d,right:l+h,bottom:d+m,left:l,x:l,y:d}}function Qe(e){var t=k(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}function at(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ve(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function p(e){return r(e).getComputedStyle(e)}function Es(e){return["table","td","th"].indexOf(h(e))>=0}function w(e){return((x(e)?e.ownerDocument:e.document)||window.document).documentElement}function me(e){return"html"===h(e)?e:e.assignedSlot||e.parentNode||(Ve(e)?e.host:null)||w(e)}function st(e){return c(e)&&"fixed"!==p(e).position?e.offsetParent:null}function I(e){for(var n=r(e),t=st(e);t&&Es(t)&&"static"===p(t).position;)t=st(t);return t&&("html"===h(t)||"body"===h(t)&&"static"===p(t).position)?n:t||function(e){var t,n,s=/firefox/i.test(Ye());if(/Trident/i.test(Ye())&&c(e)&&"fixed"===p(e).position)return null;t=me(e);for(Ve(t)&&(t=t.host);c(t)&&["html","body"].indexOf(h(t))<0;){if(n=p(t),"none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||s&&"filter"===n.willChange||s&&n.filter&&"none"!==n.filter)return t;t=t.parentNode}return null}(e)||n}function Je(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function U(e,t,n){return E(e,Q(t,n))}function rt(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function ct(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}const lt={name:"arrow",enabled:!0,phase:"main",fn:function(e){var l,t=e.state,j=e.name,k=e.options,u=t.elements.arrow,d=t.modifiersData.popperOffsets,h=f(t.placement),o=Je(h),r=[n,i].indexOf(h)>=0?"height":"width";if(u&&d){var p=function(e,t){return rt("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:ct(e,L))}(k.padding,t),g=Qe(u),E="y"===o?s:n,w="y"===o?a:i,_=t.rects.reference[r]+t.rects.reference[o]-d[o]-t.rects.popper[r],y=d[o]-t.rects.reference[o],c=I(u),b=c?"y"===o?c.clientHeight||0:c.clientWidth||0:0,O=_/2-y/2,x=p[E],C=b-g[r]-p[w],v=b/2-g[r]/2+O,m=U(x,v,C),A=o;t.modifiersData[j]=((l={})[A]=m,l.centerOffset=m-v,l)}},effect:function(e){var n=e.state,s=e.options.element,t=void 0===s?"[data-popper-arrow]":s;t!=null&&("string"!=typeof t||(t=n.elements.popper.querySelector(t)))&&at(n.elements.popper,t)&&(n.elements.arrow=t)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function z(e){return e.split("-")[1]}ut={top:"auto",right:"auto",bottom:"auto",left:"auto"};function ht(e){var h,f,b,y,u=e.popper,z=e.popperRect,l=e.placement,S=e.variation,m=e.offsets,A=e.position,v=e.gpuAcceleration,O=e.adaptive,j=e.roundOffsets,k=e.isFixed,N=m.x,t=void 0===N?0:N,D=m.y,o=void 0===D?0:D,E="function"==typeof j?j({x:t,y:o}):{x:t,y:o},t=E.x,o=E.y,x=m.hasOwnProperty("x"),C=m.hasOwnProperty("y"),g=n,_=s,c=window;if(O){var d=I(u),F="clientHeight",T="clientWidth";d===r(u)&&"static"!==p(d=w(u)).position&&"absolute"===A&&(F="scrollHeight",T="scrollWidth"),(l===s||(l===n||l===i)&&S===R)&&(_=a,o-=(k&&d===c&&c.visualViewport?c.visualViewport.height:d[F])-z.height,o*=v?1:-1),l!==n&&(l!==s&&l!==a||S!==R)||(g=i,t-=(k&&d===c&&c.visualViewport?c.visualViewport.width:d[T])-z.width,t*=v?1:-1)}return y=Object.assign({position:A},O&&ut),b=!0===j?function(e,t){var s=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:M(s*n)/n||0,y:M(o*n)/n||0}}({x:t,y:o},r(u)):{x:t,y:o},t=b.x,o=b.y,v?Object.assign({},y,((h={})[_]=C?"0":"",h[g]=x?"0":"",h.transform=(c.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",h)):Object.assign({},y,((f={})[_]=C?o+"px":"",f[g]=x?t+"px":"",f.transform="",f))}const Ge={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,s=n.gpuAcceleration,c=void 0===s||s,o=n.adaptive,l=void 0===o||o,i=n.roundOffsets,a=void 0===i||i,r={placement:f(t.placement),variation:z(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,ht(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,ht(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};q={passive:!0};const je={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=void 0===o||o,a=s.resize,c=void 0===a||a,l=r(n.elements.popper),d=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&d.forEach(function(e){e.addEventListener("scroll",t.update,q)}),c&&l.addEventListener("resize",t.update,q),function(){i&&d.forEach(function(e){e.removeEventListener("scroll",t.update,q)}),c&&l.removeEventListener("resize",t.update,q)}},data:{}};gt={left:"right",right:"left",bottom:"top",top:"bottom"};function ee(e){return e.replace(/left|right|bottom|top/g,function(e){return gt[e]})}bt={start:"end",end:"start"};function jt(e){return e.replace(/start|end/g,function(e){return bt[e]})}function Be(e){var t=r(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Ie(e){return k(w(e)).left+Be(e).scrollLeft}function Re(e){var t=p(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}function Ot(e){return["html","body","#document"].indexOf(h(e))>=0?e.ownerDocument.body:c(e)&&Re(e)?e:Ot(me(e))}function B(e,t){void 0===t&&(t=[]);var s,n=Ot(e),o=n===(null==(s=e.ownerDocument)?void 0:s.body),i=r(n),a=o?[i].concat(i.visualViewport||[],Re(n)?n:[]):n,c=t.concat(a);return o?c:c.concat(B(me(a)))}function Le(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function tt(e,t,n){return t===Oe?Le(function(e,t){var s,d=r(e),o=w(e),n=d.visualViewport,i=o.clientWidth,a=o.clientHeight,c=0,l=0;return n&&(i=n.width,a=n.height,s=mt(),(s||!s&&"fixed"===t)&&(c=n.offsetLeft,l=n.offsetTop)),{width:i,height:a,x:c+Ie(e),y:l}}(e,n)):x(t)?function(e,t){var n=k(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):Le(function(e){var s,n=w(e),o=Be(e),t=null==(s=e.ownerDocument)?void 0:s.body,i=E(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=E(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ie(e),c=-o.scrollTop;return"rtl"===p(t||n).direction&&(a+=E(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}(w(e)))}function kt(e){var o,r,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?z(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case s:o={x:h,y:t.y-c.height};break;case a:o={x:h,y:t.y+t.height};break;case i:o={x:t.x+t.width,y:m};break;case n:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(r=u?Je(u):null,r!=null)switch(l="y"===r?"height":"width",p){case O:o[r]=o[r]-(t[l]/2-c[l]/2);break;case R:o[r]=o[r]+(t[l]/2-c[l]/2)}return o}function A(e,t){void 0===t&&(t={});var A,n=t,y=n.placement,O=void 0===y?e.placement:y,v=n.strategy,V=void 0===v?e.strategy:v,b=n.boundary,T=void 0===b?Fn:b,M=n.rootBoundary,H=void 0===M?Oe:M,F=n.elementContext,l=void 0===F?N:F,g=n.altBoundary,P=void 0!==g&&g,_=n.padding,u=void 0===_?0:_,o=rt("number"!=typeof u?u:ct(u,L)),R=l===N?Cn:N,S=e.rects.popper,f=e.elements[P?R:l],r=function(e,t,n,s){var a="clippingParents"===t?function(e){var n=B(me(e)),t=["absolute","fixed"].indexOf(p(e).position)>=0&&c(e)?I(e):e;return x(t)?n.filter(function(e){return x(e)&&at(e,t)&&"body"!==h(e)}):[]}(e):[].concat(t),i=[].concat(a,[n]),r=i[0],o=i.reduce(function(t,n){var o=tt(e,n,s);return t.top=E(o.top,t.top),t.right=Q(o.right,t.right),t.bottom=Q(o.bottom,t.bottom),t.left=E(o.left,t.left),t},tt(e,r,s));return o.width=o.right-o.left,o.height=o.bottom-o.top,o.x=o.left,o.y=o.top,o}(x(f)?f:f.contextElement||w(e.elements.popper),T,H,V),C=k(e.elements.reference),z=kt({reference:C,element:S,strategy:"absolute",placement:O}),D=Le(Object.assign({},S,z)),d=l===N?D:C,m={top:r.top-d.top+o.top,bottom:d.bottom-r.bottom+o.bottom,left:r.left-d.left+o.left,right:d.right-r.right+o.right},j=e.modifiersData.offset;return l===N&&j&&(A=j[O],Object.keys(m).forEach(function(e){var t=[i,a].indexOf(e)>=0?1:-1,n=[s,a].indexOf(e)>=0?"y":"x";m[e]+=A[n]*t})),m}function xs(e,t){void 0===t&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=void 0===i?ke:i,a=z(c),r=a?h?Ee:Ee.filter(function(e){return z(e)===a}):L,o=r.filter(function(e){return m.indexOf(e)>=0});return 0===o.length&&(o=r),s=o.reduce(function(t,n){return t[n]=A(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}const Mt={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,o=e.options,y=e.name;if(!t.modifiersData[y]._skip){for(var r,d,_,x,w=o.mainAxis,I=void 0===w||w,E=o.altAxis,L=void 0===E||E,R=o.fallbackPlacements,j=o.padding,b=o.boundary,C=o.rootBoundary,$=o.altBoundary,F=o.flipVariations,p=void 0===F||F,W=o.allowedAutoPlacements,l=t.options.placement,V=f(l),B=R||(V!==l&&p?function(e){if(f(e)===be)return[];var t=ee(e);return[jt(e),t,jt(t)]}(l):[ee(l)]),m=[l].concat(B).reduce(function(e,n){return e.concat(f(n)===be?xs(t,{placement:n,boundary:b,rootBoundary:C,padding:j,flipVariations:p,allowedAutoPlacements:W}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,h=m[0],v=0;v=0,k=T?"width":"height",g=A(t,{placement:c,boundary:b,rootBoundary:C,altBoundary:$,padding:j}),u=T?D?i:n:D?a:s;if(H[k]>P[k]&&(u=ee(u)),x=ee(u),r=[],I&&r.push(g[N]<=0),L&&r.push(g[u]<=0,g[x]<=0),r.every(function(e){return e})){h=c,M=!1;break}S.set(c,r)}if(M)for(_=function(e){var t=m.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return h=t,"break"},d=p?3:1;d>0&&"break"!==_(d);d--);t.placement!==h&&(t.modifiersData[y]._skip=!0,t.placement=h,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Ft(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Tt(e){return[s,i,a,n].some(function(t){return e[t]>=0})}const zt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=A(t,{elementContext:"reference"}),u=A(t,{altBoundary:!0}),n=Ft(d,r),s=Ft(u,c,l),o=Tt(n),i=Tt(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}},Dt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,c=e.options,l=e.name,o=c.offset,d=void 0===o?[0,0]:o,a=ke.reduce(function(e,o){return e[o]=function(e,t,o){var c=f(e),d=[n,s].indexOf(c)>=0?-1:1,l="function"==typeof o?o(Object.assign({},t,{placement:e})):o,a=l[0],r=l[1];return a=a||0,r=(r||0)*d,[n,i].indexOf(c)>=0?{x:r,y:a}:{x:a,y:r}}(o,t.rects,d),e},{}),r=a[t.placement],u=r.x,h=r.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=h),t.modifiersData[l]=a}},Ne={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=kt({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},Lt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,c=e.options,ve=e.name,Z=c.mainAxis,me=void 0===Z||Z,ie=c.altAxis,ae=void 0!==ie&&ie,be=c.boundary,je=c.rootBoundary,ye=c.altBoundary,_e=c.padding,L=c.tether,u=void 0===L||L,N=c.tetherOffset,k=void 0===N?0:N,_=A(t,{boundary:be,rootBoundary:je,padding:_e,altBoundary:ye}),D=f(t.placement),C=z(t.placement),ne=!C,o=Je(D),g="x"===o?"y":"x",v=t.modifiersData.popperOffsets,d=t.rects.reference,p=t.rects.popper,w="function"==typeof k?k(Object.assign({},t.rects,{placement:t.placement})):k,m="number"==typeof w?{mainAxis:w,altAxis:w}:Object.assign({mainAxis:0,altAxis:0},w),y=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,S={x:0,y:0};if(v){if(me){var P,F="y"===o?s:n,B="y"===o?a:i,r="y"===o?"height":"width",h=v[o],W=h+_[F],K=h-_[B],T=u?-p[r]/2:0,ge=C===O?d[r]:p[r],pe=C===O?-p[r]:-d[r],X=t.elements.arrow,fe=u&&X?Qe(X):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},ee=J[F],te=J[B],b=U(0,d[r],fe[r]),de=ne?d[r]/2-T-b-ee-m.mainAxis:ge-b-ee-m.mainAxis,le=ne?-d[r]/2+T+b+te+m.mainAxis:pe+b+te+m.mainAxis,x=t.elements.arrow&&I(t.elements.arrow),re=x?"y"===o?x.clientTop||0:x.clientLeft||0:0,q=null!=(P=y?.[o])?P:0,ce=h+le-q,oe=U(u?Q(W,h+de-q-re):W,h,u?E(K,ce):K);v[o]=oe,S[o]=oe-h}if(ae){var se,ue="x"===o?s:n,he="x"===o?a:i,l=v[g],j="y"===g?"height":"width",G=l+_[ue],Y=l-_[he],M=-1!==[s,n].indexOf(D),$=null!=(se=y?.[g])?se:0,V=M?G:l-d[j]-p[j]-$+m.altAxis,H=M?l+d[j]+p[j]-$-m.altAxis:Y,R=u&&M?function(e,t,n){var s=U(e,t,n);return s>n?n:s}(V,l,H):U(u?V:G,l,u?H:Y);v[g]=R,S[g]=R-l}t.modifiersData[ve]=S}},requiresIfExists:["offset"]};function Os(e,t,n){void 0===n&&(n=!1);var s,d,u=c(t),m=c(t)&&function(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return 1!==n||1!==s}(t),a=w(t),i=k(e,m,n),l={scrollLeft:0,scrollTop:0},o={x:0,y:0};return(u||!u&&!n)&&(("body"!==h(t)||Re(a))&&(l=(s=t)!==r(s)&&c(s)?{scrollLeft:(d=s).scrollLeft,scrollTop:d.scrollTop}:Be(s)),c(t)?((o=k(t,!0)).x+=t.clientLeft,o.y+=t.clientTop):a&&(o.x=Ie(a))),{x:i.left+l.scrollLeft-o.x,y:i.top+l.scrollTop-o.y,width:i.width,height:i.height}}function ws(e){var n=new Map,t=new Set,s=[];function o(e){t.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){n.set(e.name,e)}),e.forEach(function(e){t.has(e.name)||o(e)}),s}De={placement:"bottom",modifiers:[],strategy:"absolute"};function It(){for(var t=arguments.length,n=new Array(t),e=0;eNumber.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(this._inNavbar||"static"===this._config.display)&&(g.setDataAttribute(this._menu,"popper","static"),e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...o(this._config.popperConfig,[e])}}_selectMenuItem({key:e,target:n}){const s=t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(e=>P(e));s.length&&Me(s,n,e===Yt,!s.includes(n)).focus()}static jQueryInterface(e){return this.each(function(){const t=m.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(2===e.button||"keyup"===e.type&&"Tab"!==e.key)return;const n=t.find(ms);for(const a of n){const t=m.getInstance(a);if(!t||!1===t._config.autoClose)continue;const s=e.composedPath(),o=s.includes(t._menu);if(s.includes(t._element)||"inside"===t._config.autoClose&&!o||"outside"===t._config.autoClose&&o)continue;if(t._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;const i={relatedTarget:t._element};"click"===e.type&&(i.clickEvent=e),t._completeHide(i)}}static dataApiKeydownHandler(e){const a=/input|textarea/i.test(e.target.tagName),s="Escape"===e.key,o=[ps,Yt].includes(e.key);if(!o&&!s)return;if(a&&!s)return;e.preventDefault();const i=this.matches(C)?this:t.prev(this,C)[0]||t.next(this,C)[0]||t.findOne(C,e.delegateTarget.parentNode),n=m.getOrCreateInstance(i);if(o)return e.stopPropagation(),n.show(),void n._selectMenuItem(e);n._isShown()&&(e.stopPropagation(),n.hide(),i.focus())}}e.on(document,Xt,C,m.dataApiKeydownHandler),e.on(document,Xt,te,m.dataApiKeydownHandler),e.on(document,Gt,m.clearMenus),e.on(document,"keyup.bs.dropdown.data-api",m.clearMenus),e.on(document,Gt,C,function(e){e.preventDefault(),m.getOrCreateInstance(this).toggle()}),l(m);const un="show",hn="mousedown.bs.backdrop",In={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Hn={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class pn extends G{constructor(e){super(),this._config=this._getConfig(e),this._isAppended=!1,this._element=null}static get Default(){return In}static get DefaultType(){return Hn}static get NAME(){return"backdrop"}show(e){if(!this._config.isVisible)return void o(e);this._append();const t=this._getElement();this._config.isAnimated&&$(t),t.classList.add(un),this._emulateAnimation(()=>{o(e)})}hide(e){this._config.isVisible?(this._getElement().classList.remove(un),this._emulateAnimation(()=>{this.dispose(),o(e)})):o(e)}dispose(){this._isAppended&&(e.off(this._element,hn),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_configAfterMerge(e){return e.rootElement=j(e.rootElement),e}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),e.on(t,hn,()=>{o(this._config.clickCallback)}),this._isAppended=!0}_emulateAnimation(e){nn(e,this._getElement(),this._config.isAnimated)}}const gn=".bs.focustrap",vn="backward",Pn={autofocus:!0,trapElement:null},Rn={autofocus:"boolean",trapElement:"element"};class yn extends G{constructor(e){super(),this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return Pn}static get DefaultType(){return Rn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),e.off(document,gn),e.on(document,"focusin.bs.focustrap",e=>this._handleFocusin(e)),e.on(document,"keydown.tab.bs.focustrap",e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,e.off(document,gn))}_handleFocusin(e){const{trapElement:n}=this._config;if(e.target===document||e.target===n||n.contains(e.target))return;const s=t.focusableChildren(n);0===s.length?n.focus():this._lastTabNavDirection===vn?s[s.length-1].focus():s[0].focus()}_handleKeydown(e){"Tab"===e.key&&(this._lastTabNavDirection=e.shiftKey?vn:"forward")}}const _n=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",wn=".sticky-top",se="padding-right",xn="margin-right";class Ce{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,se,t=>t+e),this._setElementAttributes(_n,se,t=>t+e),this._setElementAttributes(wn,xn,t=>t-e)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,se),this._resetElementAttributes(_n,se),this._resetElementAttributes(wn,xn)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){const s=this.getWidth();this._applyManipulationCallback(e,e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);const o=window.getComputedStyle(e).getPropertyValue(t);e.style.setProperty(t,`${n(Number.parseFloat(o))}px`)})}_saveInitialAttribute(e,t){const n=e.style.getPropertyValue(t);n&&g.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,e=>{const n=g.getDataAttribute(e,t);null!==n?(g.removeDataAttribute(e,t),e.style.setProperty(t,n)):e.style.removeProperty(t)})}_applyManipulationCallback(e,n){if(v(e))n(e);else for(const s of t.find(e,this._element))n(s)}}const En=".bs.modal",kn="hidden.bs.modal",An="show.bs.modal",Sn="modal-open",Mn="show",we="modal-static",Ln={backdrop:!0,focus:!0,keyboard:!0},Nn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class T extends u{constructor(e,n){super(e,n),this._dialog=t.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Ce,this._addEventListeners()}static get Default(){return Ln}static get DefaultType(){return Nn}static get NAME(){return"modal"}toggle(e){return this._isShown?this.hide():this.show(e)}show(t){this._isShown||this._isTransitioning||e.trigger(this._element,An,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(Sn),this._adjustDialog(),this._backdrop.show(()=>this._showElement(t)))}hide(){this._isShown&&!this._isTransitioning&&(e.trigger(this._element,"hide.bs.modal").defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Mn),this._queueCallback(()=>this._hideModal(),this._element,this._isAnimated())))}dispose(){e.off(window,En),e.off(this._dialog,En),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new pn({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new yn({trapElement:this._element})}_showElement(n){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const s=t.findOne(".modal-body",this._dialog);s&&(s.scrollTop=0),$(this._element),this._element.classList.add(Mn),this._queueCallback(()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,e.trigger(this._element,"shown.bs.modal",{relatedTarget:n})},this._dialog,this._isAnimated())}_addEventListeners(){e.on(this._element,"keydown.dismiss.bs.modal",e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())}),e.on(window,"resize.bs.modal",()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()}),e.on(this._element,"mousedown.dismiss.bs.modal",t=>{e.one(this._element,"click.dismiss.bs.modal",e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())})})}_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(Sn),this._resetAdjustments(),this._scrollBar.reset(),e.trigger(this._element,kn)})}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(e.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const n=this._element.scrollHeight>document.documentElement.clientHeight,t=this._element.style.overflowY;"hidden"===t||this._element.classList.contains(we)||(n||(this._element.style.overflowY="hidden"),this._element.classList.add(we),this._queueCallback(()=>{this._element.classList.remove(we),this._queueCallback(()=>{this._element.style.overflowY=t},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),n=e>0;if(n&&!t){const t=d()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!n&&t){const t=d()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){const n=T.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===n[e])throw new TypeError(`No method named "${e}"`);n[e](t)}})}}e.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',function(n){const s=t.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&n.preventDefault(),e.one(s,An,t=>{t.defaultPrevented||e.one(s,kn,()=>{P(this)&&this.focus()})});const o=t.findOne(".modal.show");o&&T.getInstance(o).hide(),T.getOrCreateInstance(s).toggle(this)}),ue(T),l(T);const Et="show",Tn="showing",jn="hiding",bn=".offcanvas.show",fn="hidePrevented.bs.offcanvas",mn="hidden.bs.offcanvas",Bn={backdrop:!0,keyboard:!0,scroll:!1},Vn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class _ extends u{constructor(e,t){super(e,t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return Bn}static get DefaultType(){return Vn}static get NAME(){return"offcanvas"}toggle(e){return this._isShown?this.hide():this.show(e)}show(t){this._isShown||e.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new Ce).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Tn),this._queueCallback(()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Et),this._element.classList.remove(Tn),e.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&(e.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(jn),this._backdrop.hide(),this._queueCallback(()=>{this._element.classList.remove(Et,jn),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new Ce).reset(),e.trigger(this._element,mn)},this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new pn({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():e.trigger(this._element,fn)}:null})}_initializeFocusTrap(){return new yn({trapElement:this._element})}_addEventListeners(){e.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():e.trigger(this._element,fn))})}static jQueryInterface(e){return this.each(function(){const t=_.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)}})}}e.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',function(n){const s=t.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&n.preventDefault(),b(this))return;e.one(s,mn,()=>{P(this)&&this.focus()});const o=t.findOne(bn);o&&o!==s&&_.getInstance(o).hide(),_.getOrCreateInstance(s).toggle(this)}),e.on(window,"load.bs.offcanvas.data-api",()=>{for(const e of t.find(bn))_.getOrCreateInstance(e).show()}),e.on(window,"resize.bs.offcanvas",()=>{for(const e of t.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(e).position&&_.getOrCreateInstance(e).hide()}),ue(_),l(_);const ln={"*":["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:[]},Un=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Kn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,qn=(e,t)=>{const n=e.nodeName.toLowerCase();return t.includes(n)?!Un.has(n)||Boolean(Kn.test(e.nodeValue)):t.filter(e=>e instanceof RegExp).some(e=>e.test(n))},Yn={allowList:ln,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
                                                                        "},Gn={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Xn={entry:"(string|element|function|null)",selector:"(string|element)"};class Qn extends G{constructor(e){super(),this._config=this._getConfig(e)}static get Default(){return Yn}static get DefaultType(){return Gn}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map(e=>this._resolvePossibleFunction(e)).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(e){return this._checkContent(e),this._config.content={...this._config.content,...e},this}toHtml(){const e=document.createElement("div");e.innerHTML=this._maybeSanitize(this._config.template);for(const[t,n]of Object.entries(this._config.content))this._setContent(e,n,t);const t=e.children[0],n=this._resolvePossibleFunction(this._config.extraClass);return n&&t.classList.add(...n.split(" ")),t}_typeCheckConfig(e){super._typeCheckConfig(e),this._checkContent(e.content)}_checkContent(e){for(const[t,n]of Object.entries(e))super._typeCheckConfig({selector:t,entry:n},Xn)}_setContent(e,n,s){const o=t.findOne(s,e);o&&((n=this._resolvePossibleFunction(n))?v(n)?this._putElementInTemplate(j(n),o):this._config.html?o.innerHTML=this._maybeSanitize(n):o.textContent=n:o.remove())}_maybeSanitize(e){return this._config.sanitize?function(e,t,n){if(!e.length)return e;if(n&&"function"==typeof n)return n(e);const s=(new window.DOMParser).parseFromString(e,"text/html"),o=[].concat(...s.body.querySelectorAll("*"));for(const e of o){const n=e.nodeName.toLowerCase();if(!Object.keys(t).includes(n)){e.remove();continue}const s=[].concat(...e.attributes),i=[].concat(t["*"]||[],t[n]||[]);for(const t of s)qn(t,i)||e.removeAttribute(t.nodeName)}return s.body.innerHTML}(e,this._config.allowList,this._config.sanitizeFn):e}_resolvePossibleFunction(e){return o(e,[this])}_putElementInTemplate(e,t){if(this._config.html)return t.innerHTML="",void t.append(e);t.textContent=e.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),Se="fade",oe="show",rn=".modal",an="hide.bs.modal",ie="hover",sn="focus",is={AUTO:"auto",TOP:"top",RIGHT:d()?"left":"right",BOTTOM:"bottom",LEFT:d()?"right":"left"},rs={allowList:ln,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},cs={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class D extends u{constructor(e,t){if(void 0===Ut)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e,t),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return rs}static get DefaultType(){return cs}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),e.off(this._element.closest(rn),an,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const n=e.trigger(this._element,this.constructor.eventName("show")),s=(Rt(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(n.defaultPrevented||!s)return;this._disposePopper();const t=this._getTipElement();this._element.setAttribute("aria-describedby",t.getAttribute("id"));const{container:o}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(o.append(t),e.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(t),t.classList.add(oe),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))e.on(t,"mouseover",he);this._queueCallback(()=>{e.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1},this.tip,this._isAnimated())}hide(){if(this._isShown()&&!e.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(oe),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))e.off(t,"mouseover",he);this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,this._isHovered=null,this._queueCallback(()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),e.trigger(this._element,this.constructor.eventName("hidden")))},this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(e){const t=this._getTemplateFactory(e).toHtml();if(!t)return null;t.classList.remove(Se,oe),t.classList.add(`bs-${this.constructor.NAME}-auto`);const n=(e=>{do e+=Math.floor(1e6*Math.random());while(document.getElementById(e))return e})(this.constructor.NAME).toString();return t.setAttribute("id",n),this._isAnimated()&&t.classList.add(Se),t}setContent(e){this._newContent=e,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(e){return this._templateFactory?this._templateFactory.changeContent(e):this._templateFactory=new Qn({...this._config,content:e,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(e){return this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(Se)}_isShown(){return this.tip&&this.tip.classList.contains(oe)}_createPopper(e){const t=o(this._config.placement,[this,e,this._element]),n=is[t.toUpperCase()];return ze(this._element,e,this._getPopperConfig(n))}_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}_resolvePossibleFunction(e){return o(e,[this._element])}_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:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:e=>{this._getTipElement().setAttribute("data-popper-placement",e.state.placement)}}]};return{...t,...o(this._config.popperConfig,[t])}}_setListeners(){const t=this._config.trigger.split(" ");for(const n of t)if("click"===n)e.on(this._element,this.constructor.eventName("click"),this._config.selector,e=>{this._initializeOnDelegatedTarget(e).toggle()});else if("manual"!==n){const t=n===ie?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),s=n===ie?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");e.on(this._element,t,this._config.selector,e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusin"===e.type?sn:ie]=!0,t._enter()}),e.on(this._element,s,this._config.selector,e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusout"===e.type?sn:ie]=t._element.contains(e.relatedTarget),t._leave()})}this._hideModalHandler=()=>{this._element&&this.hide()},e.on(this._element.closest(rn),an,this._hideModalHandler)}_fixTitle(){const e=this._element.getAttribute("title");e&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",e),this._element.setAttribute("data-bs-original-title",e),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout(()=>{this._isHovered&&this.show()},this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout(()=>{this._isHovered||this.hide()},this._config.delay.hide))}_setTimeout(e,t){clearTimeout(this._timeout),this._timeout=setTimeout(e,t)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(e){const t=g.getDataAttributes(this._element);for(const e of Object.keys(t))Zn.has(e)&&delete t[e];return e={...t,..."object"==typeof e&&e?e:{}},e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e.container=!1===e.container?document.body:j(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()),e}_getDelegateConfig(){const e={};for(const[t,n]of Object.entries(this._config))this.constructor.Default[t]!==n&&(e[t]=n);return e.selector=!1,e.trigger="manual",e}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(e){return this.each(function(){const t=D.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}}l(D);const ds={...D.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},us={...D.DefaultType,content:"(null|string|element|function)"};class Fe extends D{static get Default(){return ds}static get DefaultType(){return us}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(e){return this.each(function(){const t=Fe.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}}l(Fe);const Jt="click.bs.scrollspy",W="active",qt="[href]",gs={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},vs={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class de extends u{constructor(e,t){super(e,t),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return gs}static get DefaultType(){return vs}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const e of this._observableSections.values())this._observer.observe(e)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(e){return e.target=j(e.target)||document.body,e.rootMargin=e.offset?`${e.offset}px 0px -30%`:e.rootMargin,"string"==typeof e.threshold&&(e.threshold=e.threshold.split(",").map(e=>Number.parseFloat(e))),e}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(e.off(this._config.target,Jt),e.on(this._config.target,Jt,qt,e=>{const t=this._observableSections.get(e.target.hash);if(t){e.preventDefault();const n=this._rootElement||window,s=t.offsetTop-this._element.offsetTop;if(n.scrollTo)return void n.scrollTo({top:s,behavior:"smooth"});n.scrollTop=s}}))}_getNewObserver(){const e={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver(e=>this._observerCallback(e),e)}_observerCallback(e){const n=e=>this._targetLinks.get(`#${e.target.id}`),s=e=>{this._previousScrollData.visibleEntryTop=e.target.offsetTop,this._process(n(e))},t=(this._rootElement||document.documentElement).scrollTop,o=t>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=t;for(const i of e){if(!i.isIntersecting){this._activeTarget=null,this._clearActiveClass(n(i));continue}const a=i.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(o&&a){if(s(i),!t)return}else o||a||s(i)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const e=t.find(qt,this._config.target);for(const n of e){if(!n.hash||b(n))continue;const s=t.findOne(decodeURI(n.hash),this._element);P(s)&&(this._targetLinks.set(decodeURI(n.hash),n),this._observableSections.set(n.hash,s))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(W),this._activateParents(t),e.trigger(this._element,"activate.bs.scrollspy",{relatedTarget:t}))}_activateParents(e){if(e.classList.contains("dropdown-item"))t.findOne(".dropdown-toggle",e.closest(".dropdown")).classList.add(W);else for(const n of t.parents(e,".nav, .list-group"))for(const e of t.prev(n,".nav-link, .nav-item > .nav-link, .list-group-item"))e.classList.add(W)}_clearActiveClass(e){e.classList.remove(W);const n=t.find("[href].active",e);for(const e of n)e.classList.remove(W)}static jQueryInterface(e){return this.each(function(){const t=de.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]()}})}}e.on(window,"load.bs.scrollspy.data-api",()=>{for(const e of t.find('[data-bs-spy="scroll"]'))de.getOrCreateInstance(e)}),l(de);const js="ArrowLeft",Vt="ArrowRight",_s="ArrowUp",Pt="ArrowDown",fe="active",St="fade",qe="show",Wt='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Xe=`.nav-link:not(.dropdown-toggle), .list-group-item:not(.dropdown-toggle), [role="tab"]:not(.dropdown-toggle), ${Wt}`;class H extends u{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),e.on(this._element,"keydown.bs.tab",e=>this._keydown(e)))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const n=this._getActiveElem(),s=n?e.trigger(n,"hide.bs.tab",{relatedTarget:t}):null;e.trigger(t,"show.bs.tab",{relatedTarget:n}).defaultPrevented||s&&s.defaultPrevented||(this._deactivate(n,t),this._activate(t,n))}_activate(n,s){n&&(n.classList.add(fe),this._activate(t.getElementFromSelector(n)),this._queueCallback(()=>{"tab"===n.getAttribute("role")?(n.removeAttribute("tabindex"),n.setAttribute("aria-selected",!0),this._toggleDropDown(n,!0),e.trigger(n,"shown.bs.tab",{relatedTarget:s})):n.classList.add(qe)},n,n.classList.contains(St)))}_deactivate(n,s){n&&(n.classList.remove(fe),n.blur(),this._deactivate(t.getElementFromSelector(n)),this._queueCallback(()=>{"tab"===n.getAttribute("role")?(n.setAttribute("aria-selected",!1),n.setAttribute("tabindex","-1"),this._toggleDropDown(n,!1),e.trigger(n,"hidden.bs.tab",{relatedTarget:s})):n.classList.remove(qe)},n,n.classList.contains(St)))}_keydown(e){if(![js,Vt,_s,Pt].includes(e.key))return;e.stopPropagation(),e.preventDefault();const n=[Vt,Pt].includes(e.key),t=Me(this._getChildren().filter(e=>!b(e)),e.target,n,!0);t&&(t.focus({preventScroll:!0}),H.getOrCreateInstance(t).show())}_getChildren(){return t.find(Xe,this._parent)}_getActiveElem(){return this._getChildren().find(e=>this._elemIsActive(e))||null}_setInitialAttributes(e,t){this._setAttributeIfNotExists(e,"role","tablist");for(const e of t)this._setInitialAttributesOnChild(e)}_setInitialAttributesOnChild(e){e=this._getInnerElement(e);const t=this._elemIsActive(e),n=this._getOuterElement(e);e.setAttribute("aria-selected",t),n!==e&&this._setAttributeIfNotExists(n,"role","presentation"),t||e.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(e,"role","tab"),this._setInitialAttributesOnTargetPanel(e)}_setInitialAttributesOnTargetPanel(e){const n=t.getElementFromSelector(e);n&&(this._setAttributeIfNotExists(n,"role","tabpanel"),e.id&&this._setAttributeIfNotExists(n,"aria-labelledby",`${e.id}`))}_toggleDropDown(e,n){const s=this._getOuterElement(e);if(!s.classList.contains("dropdown"))return;const o=(e,o)=>{const i=t.findOne(e,s);i&&i.classList.toggle(o,n)};o(".dropdown-toggle",fe),o(".dropdown-menu",qe),s.setAttribute("aria-expanded",n)}_setAttributeIfNotExists(e,t,n){e.hasAttribute(t)||e.setAttribute(t,n)}_elemIsActive(e){return e.classList.contains(fe)}_getInnerElement(e){return e.matches(Xe)?e:t.findOne(Xe,e)}_getOuterElement(e){return e.closest(".nav-item, .list-group-item")||e}static jQueryInterface(e){return this.each(function(){const t=H.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}})}}e.on(document,"click.bs.tab",Wt,function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),b(this)||H.getOrCreateInstance(this).show()}),e.on(window,"load.bs.tab",()=>{for(const e of t.find('.active[data-bs-toggle="tab"], .active[data-bs-toggle="pill"], .active[data-bs-toggle="list"]'))H.getOrCreateInstance(e)}),l(H);const yt="hide",pe="show",ge="showing",Ts={animation:"boolean",autohide:"boolean",delay:"number"},zs={animation:!0,autohide:!0,delay:5e3};class ve extends u{constructor(e,t){super(e,t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return zs}static get DefaultType(){return Ts}static get NAME(){return"toast"}show(){e.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(yt),$(this._element),this._element.classList.add(pe,ge),this._queueCallback(()=>{this._element.classList.remove(ge),e.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this.isShown()&&(e.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(ge),this._queueCallback(()=>{this._element.classList.add(yt),this._element.classList.remove(ge,pe),e.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(pe),super.dispose()}isShown(){return this._element.classList.contains(pe)}_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 n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){e.on(this._element,"mouseover.bs.toast",e=>this._onInteraction(e,!0)),e.on(this._element,"mouseout.bs.toast",e=>this._onInteraction(e,!1)),e.on(this._element,"focusin.bs.toast",e=>this._onInteraction(e,!0)),e.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=ve.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return ue(ve),l(ve),{Alert:re,Button:ae,Carousel:K,Collapse:V,Dropdown:m,Modal:T,Offcanvas:_,Popover:Fe,ScrollSpy:de,Tab:H,Toast:ve,Tooltip:D}})}}),d=c(l())})() \ No newline at end of file +(()=>{var n=Object.create,e=Object.defineProperty,s=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,n)=>function(){return n||(0,e[t(e)[0]])((n={exports:{}}).exports,n),n.exports},r=(n,o,a,r)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of t(o))!i.call(n,c)&&c!==a&&e(n,c,{get:()=>o[c],enumerable:!(r=s(o,c))||r.enumerable});return n},c=(t,s,i)=>(i=t!=null?n(o(t)):{},r(s||!t||!t.__esModule?e(i,"default",{value:t,enumerable:!0}):i,t)),l=a({"node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"(e,t){!function(n,s){"object"==typeof e&&"undefined"!=typeof t?t.exports=s():"function"==typeof define&&define.amd?define(s):(n="undefined"!=typeof globalThis?globalThis:n||self).bootstrap=s()}(e,function(){"use strict";const y=new Map,_e={set(e,t,n){y.has(e)||y.set(e,new Map);const s=y.get(e);s.has(t)||0===s.size?s.set(t,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,t)=>y.has(e)&&y.get(e).get(t)||null,remove(e,t){if(!y.has(e))return;const n=y.get(e);n.delete(t),0===n.size&&y.delete(e)}},He="transitionend",_t=e=>(e&&window.CSS&&window.CSS.escape&&(e=e.replace(/#([^\s"#']+)/g,(e,t)=>`#${CSS.escape(t)}`)),e),ft=e=>{e.dispatchEvent(new Event(He))},v=e=>!!e&&"object"==typeof e&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),j=e=>v(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?document.querySelector(_t(e)):null,P=e=>{if(!v(e)||0===e.getClientRects().length)return!1;const n="visible"===getComputedStyle(e).getPropertyValue("visibility"),t=e.closest("details:not([open])");if(!t)return n;if(t!==e){const n=e.closest("summary");if(n&&n.parentNode!==t)return!1;if(null===n)return!1}return n},b=e=>!e||e.nodeType!==Node.ELEMENT_NODE||!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled")),Rt=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?Rt(e.parentNode):null},he=()=>{},$=e=>{e.offsetHeight},$t=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,Te=[],d=()=>"rtl"===document.documentElement.dir,l=e=>{var t=()=>{const t=$t();if(t){const n=e.NAME,s=t.fn[n];t.fn[n]=e.jQueryInterface,t.fn[n].Constructor=e,t.fn[n].noConflict=()=>(t.fn[n]=s,e.jQueryInterface)}};"loading"===document.readyState?(Te.length||document.addEventListener("DOMContentLoaded",()=>{for(const e of Te)e()}),Te.push(t)):t()},o=(e,t=[],n=e)=>"function"==typeof e?e(...t):n,nn=(e,t,n=!0)=>{if(!n)return void o(e);const a=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:n}=window.getComputedStyle(e);const s=Number.parseFloat(t),o=Number.parseFloat(n);return s||o?(t=t.split(",")[0],n=n.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(n))):0})(t)+5;let s=!1;const i=({target:n})=>{n===t&&(s=!0,t.removeEventListener(He,i),o(e))};t.addEventListener(He,i),setTimeout(()=>{s||ft(t)},a)},Me=(e,t,n,s)=>{const i=e.length;let o=e.indexOf(t);return-1===o?!n&&s?e[i-1]:e[0]:(o+=n?1:-1,s&&(o=(o+i)%i),e[Math.max(0,Math.min(o,i-1))])},es=/[^.]*(?=\..*)\.|.*/,$n=/\..*/,Dn=/::\d+$/,Ae={};let dn=1;const en={mouseenter:"mouseover",mouseleave:"mouseout"},zn=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 Qt(e,t){return t&&`${t}::${dn++}`||e.uidEvent||dn++}function Bt(e){const t=Qt(e);return e.uidEvent=t,Ae[t]=Ae[t]||{},Ae[t]}function At(e,t,n=null){return Object.values(e).find(e=>e.callable===t&&e.delegationSelector===n)}function xt(e,t,n){const o="string"==typeof t,i=o?n:t||n;let s=dt(e);return zn.has(s)||(s=e),[o,i,s]}function vt(t,n,s,o,i){if("string"!=typeof n||!t)return;let[c,a,l]=xt(n,s,o);if(n in en){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};a=e(a)}const u=Bt(t),h=u[l]||(u[l]={}),d=At(h,a,c?s:null);if(d)return void(d.oneOff=d.oneOff&&i);const m=Qt(a,n.replace(es,"")),r=c?function(t,n,s){return function o(i){const a=t.querySelectorAll(n);for(let{target:r}=i;r&&r!==this;r=r.parentNode)for(const c of a)if(c===r)return Ze(i,{delegateTarget:r}),o.oneOff&&e.off(t,i.type,n,s),s.apply(r,[i])}}(t,s,a):function(t,n){return function s(o){return Ze(o,{delegateTarget:t}),s.oneOff&&e.off(t,o.type,n),n.apply(t,[o])}}(t,a);r.delegationSelector=c?s:null,r.callable=a,r.oneOff=i,r.uidEvent=m,h[m]=r,t.addEventListener(l,r,c)}function We(e,t,n,s,o){const i=At(t[n],s,o);i&&(e.removeEventListener(n,i,Boolean(o)),delete t[n][i.uidEvent])}function Cs(e,t,n,s){const o=t[n]||{};for(const[a,i]of Object.entries(o))a.includes(s)&&We(e,t,n,i.callable,i.delegationSelector)}function dt(e){return e=e.replace($n,""),en[e]||e}const e={on(e,t,n,s){vt(e,t,n,s,!1)},one(e,t,n,s){vt(e,t,n,s,!0)},off(e,t,n,s){if("string"!=typeof t||!e)return;const[c,a,i]=xt(t,n,s),l=i!==t,o=Bt(e),r=o[i]||{},d=t.startsWith(".");if(void 0===a){if(d)for(const n of Object.keys(o))Cs(e,o,n,t.slice(1));for(const[s,n]of Object.entries(r)){const a=s.replace(Dn,"");l&&!t.includes(a)||We(e,o,i,n.callable,n.delegationSelector)}}else{if(!Object.keys(r).length)return;We(e,o,i,a,c?n:null)}},trigger(e,t,n){if("string"!=typeof t||!e)return null;const i=$t();let s=null,a=!0,r=!0,c=!1;t!==dt(t)&&i&&(s=i.Event(t,n),i(e).trigger(s),a=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),c=s.isDefaultPrevented());const o=Ze(new Event(t,{bubbles:a,cancelable:!0}),n);return c&&o.preventDefault(),r&&e.dispatchEvent(o),o.defaultPrevented&&s&&s.preventDefault(),o}};function Ze(e,t={}){for(const[n,s]of Object.entries(t))try{e[n]=s}catch{Object.defineProperty(e,n,{configurable:!0,get:()=>s})}return e}function ot(e){if("true"===e)return!0;if("false"===e)return!1;if(e===Number(e).toString())return Number(e);if(""===e||"null"===e)return null;if("string"!=typeof e)return e;try{return JSON.parse(decodeURIComponent(e))}catch{return e}}function et(e){return e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}const g={setDataAttribute(e,t,n){e.setAttribute(`data-bs-${et(t)}`,n)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${et(t)}`)},getDataAttributes(e){if(!e)return{};const t={},n=Object.keys(e.dataset).filter(e=>e.startsWith("bs")&&!e.startsWith("bsConfig"));for(const o of n){let s=o.replace(/^bs/,"");s=s.charAt(0).toLowerCase()+s.slice(1,s.length),t[s]=ot(e.dataset[o])}return t},getDataAttribute:(e,t)=>ot(e.getAttribute(`data-bs-${et(t)}`))};class G{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(e){return e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e}_mergeConfigObj(e,t){const n=v(t)?g.getDataAttribute(t,"config"):{};return{...this.constructor.Default,..."object"==typeof n?n:{},...v(t)?g.getDataAttributes(t):{},..."object"==typeof e?e:{}}}_typeCheckConfig(e,t=this.constructor.DefaultType){for(const[s,o]of Object.entries(t)){const i=e[s],a=v(i)?"element":null==(n=i)?`${n}`:Object.prototype.toString.call(n).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(o).test(a))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${s}" provided type "${a}" but expected type "${o}".`)}var n}}class u extends G{constructor(e,t){super(),(e=j(e))&&(this._element=e,this._config=this._getConfig(t),_e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){_e.remove(this._element,this.constructor.DATA_KEY),e.off(this._element,this.constructor.EVENT_KEY);for(const e of Object.getOwnPropertyNames(this))this[e]=null}_queueCallback(e,t,n=!0){nn(e,t,n)}_getConfig(e){return e=this._mergeConfigObj(e,this._element),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}static getInstance(e){return _e.get(j(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.3.0"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(e){return`${e}${this.EVENT_KEY}`}}const ye=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let n=e.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),t=n&&"#"!==n?n.trim():null}return _t(t)},t={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 s=[];let n=e.parentNode.closest(t);for(;n;)s.push(n),n=n.parentNode.closest(t);return s},prev(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return[n];n=n.previousElementSibling}return[]},next(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return[n];n=n.nextElementSibling}return[]},focusableChildren(e){const t=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(e=>`${e}:not([tabindex^="-"])`).join(",");return this.find(t,e).filter(e=>!b(e)&&P(e))},getSelectorFromElement(e){const n=ye(e);return n&&t.findOne(n)?n:null},getElementFromSelector(e){const n=ye(e);return n?t.findOne(n):null},getMultipleElementsFromSelector(e){const n=ye(e);return n?t.find(n):[]}},ue=(n,s="hide")=>{const i=`click.dismiss${n.EVENT_KEY}`,o=n.NAME;e.on(document,i,`[data-bs-dismiss="${o}"]`,function(e){if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),b(this))return;const i=t.getElementFromSelector(this)||this.closest(`.${o}`);n.getOrCreateInstance(i)[s]()})};class re extends u{static get NAME(){return"alert"}close(){if(e.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback(()=>this._destroyElement(),this._element,t)}_destroyElement(){this._element.remove(),e.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(e){return this.each(function(){const t=re.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}})}}ue(re,"close"),l(re);const it='[data-bs-toggle="button"]';class ae extends u{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=ae.getOrCreateInstance(this);"toggle"===e&&t[e]()})}}e.on(document,"click.bs.button.data-api",it,e=>{e.preventDefault();const t=e.target.closest(it);ae.getOrCreateInstance(t).toggle()}),l(ae);const ks={endCallback:null,leftCallback:null,rightCallback:null},As={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Ke extends G{constructor(e,t){super(),this._element=e,e&&Ke.isSupported()&&(this._config=this._getConfig(t),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return ks}static get DefaultType(){return As}static get NAME(){return"swipe"}dispose(){e.off(this._element,".bs.swipe")}_start(e){this._supportPointerEvents?this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX):this._deltaX=e.touches[0].clientX}_end(e){this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX-this._deltaX),this._handleSwipe(),o(this._config.endCallback)}_move(e){this._deltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this._deltaX}_handleSwipe(){const e=Math.abs(this._deltaX);if(e<=40)return;const t=e/this._deltaX;this._deltaX=0,t&&o(t>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(e.on(this._element,"pointerdown.bs.swipe",e=>this._start(e)),e.on(this._element,"pointerup.bs.swipe",e=>this._end(e)),this._element.classList.add("pointer-event")):(e.on(this._element,"touchstart.bs.swipe",e=>this._start(e)),e.on(this._element,"touchmove.bs.swipe",e=>this._move(e)),e.on(this._element,"touchend.bs.swipe",e=>this._end(e)))}_eventIsPointerPenTouch(e){return this._supportPointerEvents&&("pen"===e.pointerType||"touch"===e.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const X="next",S="prev",F="left",J="right",Ue="slid.bs.carousel",pt="carousel",ne="active",Ss={ArrowLeft:J,ArrowRight:F},Ms={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Fs={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class K extends u{constructor(e,n){super(e,n),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=t.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===pt&&this.cycle()}static get Default(){return Ms}static get DefaultType(){return Fs}static get NAME(){return"carousel"}next(){this._slide(X)}nextWhenVisible(){!document.hidden&&P(this._element)&&this.next()}prev(){this._slide(S)}pause(){this._isSliding&&ft(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval(()=>this.nextWhenVisible(),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?e.one(this._element,Ue,()=>this.cycle()):this.cycle())}to(t){const n=this._getItems();if(t>n.length-1||t<0)return;if(this._isSliding)return void e.one(this._element,Ue,()=>this.to(t));const s=this._getItemIndex(this._getActive());if(s===t)return;const o=t>s?X:S;this._slide(o,n[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(e){return e.defaultInterval=e.interval,e}_addEventListeners(){this._config.keyboard&&e.on(this._element,"keydown.bs.carousel",e=>this._keydown(e)),"hover"===this._config.pause&&(e.on(this._element,"mouseenter.bs.carousel",()=>this.pause()),e.on(this._element,"mouseleave.bs.carousel",()=>this._maybeEnableCycle())),this._config.touch&&Ke.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const n of t.find(".carousel-item img",this._element))e.on(n,"dragstart.bs.carousel",e=>e.preventDefault());const n={leftCallback:()=>this._slide(this._directionToOrder(F)),rightCallback:()=>this._slide(this._directionToOrder(J)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(()=>this._maybeEnableCycle(),500+this._config.interval))}};this._swipeHelper=new Ke(this._element,n)}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=Ss[e.key];t&&(e.preventDefault(),this._slide(this._directionToOrder(t)))}_getItemIndex(e){return this._getItems().indexOf(e)}_setActiveIndicatorElement(e){if(!this._indicatorsElement)return;const s=t.findOne(".active",this._indicatorsElement);s.classList.remove(ne),s.removeAttribute("aria-current");const n=t.findOne(`[data-bs-slide-to="${e}"]`,this._indicatorsElement);n&&(n.classList.add(ne),n.setAttribute("aria-current","true"))}_updateInterval(){const e=this._activeElement||this._getActive();if(!e)return;const t=Number.parseInt(e.getAttribute("data-bs-interval"),10);this._config.interval=t||this._config.defaultInterval}_slide(t,n=null){if(this._isSliding)return;const o=this._getActive(),a=t===X,s=n||Me(this._getItems(),o,a,this._config.wrap);if(s===o)return;const c=this._getItemIndex(s),l=n=>e.trigger(this._element,n,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(o),to:c});if(l("slide.bs.carousel").defaultPrevented)return;if(!o||!s)return;const d=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(c),this._activeElement=s;const i=a?"carousel-item-start":"carousel-item-end",r=a?"carousel-item-next":"carousel-item-prev";s.classList.add(r),$(s),o.classList.add(i),s.classList.add(i),this._queueCallback(()=>{s.classList.remove(i,r),s.classList.add(ne),o.classList.remove(ne,r,i),this._isSliding=!1,l(Ue)},o,this._isAnimated()),d&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return t.findOne(".active.carousel-item",this._element)}_getItems(){return t.find(".carousel-item",this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(e){return d()?e===F?S:X:e===F?X:S}_orderToDirection(e){return d()?e===S?F:J:e===S?J:F}static jQueryInterface(e){return this.each(function(){const t=K.getOrCreateInstance(this,e);if("number"!=typeof e){if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}else t.to(e)})}}e.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",function(e){const s=t.getElementFromSelector(this);if(!s||!s.classList.contains(pt))return;e.preventDefault();const n=K.getOrCreateInstance(s),o=this.getAttribute("data-bs-slide-to");return o?(n.to(o),void n._maybeEnableCycle()):"next"===g.getDataAttribute(this,"slide")?(n.next(),void n._maybeEnableCycle()):(n.prev(),void n._maybeEnableCycle())}),e.on(window,"load.bs.carousel.data-api",()=>{const e=t.find('[data-bs-ride="carousel"]');for(const t of e)K.getOrCreateInstance(t)}),l(K);const Pe="show",Z="collapse",le="collapsing",xe='[data-bs-toggle="collapse"]',Ds={parent:null,toggle:!0},fs={parent:"(null|element)",toggle:"boolean"};class V extends u{constructor(e,n){super(e,n),this._isTransitioning=!1,this._triggerArray=[];const s=t.find(xe);for(const e of s){const n=t.getSelectorFromElement(e),o=t.find(n).filter(e=>e===this._element);null!==n&&o.length&&this._triggerArray.push(e)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ds}static get DefaultType(){return fs}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let n=[];if(this._config.parent&&(n=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter(e=>e!==this._element).map(e=>V.getOrCreateInstance(e,{toggle:!1}))),n.length&&n[0]._isTransitioning)return;if(e.trigger(this._element,"show.bs.collapse").defaultPrevented)return;for(const e of n)e.hide();const t=this._getDimension();this._element.classList.remove(Z),this._element.classList.add(le),this._element.style[t]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const s=`scroll${t[0].toUpperCase()+t.slice(1)}`;this._queueCallback(()=>{this._isTransitioning=!1,this._element.classList.remove(le),this._element.classList.add(Z,Pe),this._element.style[t]="",e.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[t]=`${this._element[s]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(e.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const n=this._getDimension();this._element.style[n]=`${this._element.getBoundingClientRect()[n]}px`,$(this._element),this._element.classList.add(le),this._element.classList.remove(Z,Pe);for(const e of this._triggerArray){const n=t.getElementFromSelector(e);n&&!this._isShown(n)&&this._addAriaAndCollapsedClass([e],!1)}this._isTransitioning=!0,this._element.style[n]="",this._queueCallback(()=>{this._isTransitioning=!1,this._element.classList.remove(le),this._element.classList.add(Z),e.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}_isShown(e=this._element){return e.classList.contains(Pe)}_configAfterMerge(e){return e.toggle=Boolean(e.toggle),e.parent=j(e.parent),e}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const e=this._getFirstLevelChildren(xe);for(const n of e){const s=t.getElementFromSelector(n);s&&this._addAriaAndCollapsedClass([n],this._isShown(s))}}_getFirstLevelChildren(e){const n=t.find(":scope .collapse .collapse",this._config.parent);return t.find(e,this._config.parent).filter(e=>!n.includes(e))}_addAriaAndCollapsedClass(e,t){if(e.length)for(const n of e)n.classList.toggle("collapsed",!t),n.setAttribute("aria-expanded",t)}static jQueryInterface(e){const t={};return"string"==typeof e&&/show|hide/.test(e)&&(t.toggle=!1),this.each(function(){const n=V.getOrCreateInstance(this,t);if("string"==typeof e){if(void 0===n[e])throw new TypeError(`No method named "${e}"`);n[e]()}})}}e.on(document,"click.bs.collapse.data-api",xe,function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();for(const e of t.getMultipleElementsFromSelector(this))V.getOrCreateInstance(e,{toggle:!1}).toggle()}),l(V);var q,s="top",a="bottom",i="right",n="left",be="auto",L=[s,a,i,n],O="start",R="end",Fn="clippingParents",Oe="viewport",N="popper",Cn="reference",Ee=L.reduce(function(e,t){return e.concat([t+"-"+O,t+"-"+R])},[]),ke=[].concat(L,[be]).reduce(function(e,t){return e.concat([t,t+"-"+O,t+"-"+R])},[]),On="beforeRead",cn="read",on="afterRead",tn="beforeMain",Zt="main",nt="afterMain",Ht="beforeWrite",Nt="write",Ct="afterWrite",wt=[On,cn,on,tn,Zt,nt,Ht,Nt,Ct],ut,gt,bt,De;function h(e){return e?(e.nodeName||"").toLowerCase():null}function r(e){if(e==null)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function x(e){return e instanceof r(e).Element||e instanceof Element}function c(e){return e instanceof r(e).HTMLElement||e instanceof HTMLElement}function Ve(e){return"undefined"!=typeof ShadowRoot&&(e instanceof r(e).ShadowRoot||e instanceof ShadowRoot)}const $e={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var o=t.styles[e]||{},s=t.attributes[e]||{},n=t.elements[e];c(n)&&h(n)&&(Object.assign(n.style,o),Object.keys(s).forEach(function(e){var t=s[e];!1===t?n.removeAttribute(e):n.setAttribute(e,!0===t?"":t)}))})},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce(function(e,t){return e[t]="",e},{});c(s)&&h(s)&&(Object.assign(s.style,i),Object.keys(o).forEach(function(e){s.removeAttribute(e)}))})}},requires:["computeStyles"]};function f(e){return e.split("-")[0]}var E=Math.max,Q=Math.min,M=Math.round;function Ye(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function mt(){return!/^((?!chrome|android).)*safari/i.test(Ye())}function k(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var s=e.getBoundingClientRect(),i=1,a=1;t&&c(e)&&(i=e.offsetWidth>0&&M(s.width)/e.offsetWidth||1,a=e.offsetHeight>0&&M(s.height)/e.offsetHeight||1);var o=(x(e)?r(e):window).visualViewport,u=!mt()&&n,l=(s.left+(u&&o?o.offsetLeft:0))/i,d=(s.top+(u&&o?o.offsetTop:0))/a,h=s.width/i,m=s.height/a;return{width:h,height:m,top:d,right:l+h,bottom:d+m,left:l,x:l,y:d}}function Qe(e){var t=k(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}function at(e,t){var n,s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Ve(s)){n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function p(e){return r(e).getComputedStyle(e)}function Es(e){return["table","td","th"].indexOf(h(e))>=0}function w(e){return((x(e)?e.ownerDocument:e.document)||window.document).documentElement}function me(e){return"html"===h(e)?e:e.assignedSlot||e.parentNode||(Ve(e)?e.host:null)||w(e)}function st(e){return c(e)&&"fixed"!==p(e).position?e.offsetParent:null}function I(e){for(var n=r(e),t=st(e);t&&Es(t)&&"static"===p(t).position;)t=st(t);return t&&("html"===h(t)||"body"===h(t)&&"static"===p(t).position)?n:t||function(e){var t,n,s=/firefox/i.test(Ye());if(/Trident/i.test(Ye())&&c(e)&&"fixed"===p(e).position)return null;t=me(e);for(Ve(t)&&(t=t.host);c(t)&&["html","body"].indexOf(h(t))<0;){if(n=p(t),"none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||s&&"filter"===n.willChange||s&&n.filter&&"none"!==n.filter)return t;t=t.parentNode}return null}(e)||n}function Je(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function U(e,t,n){return E(e,Q(t,n))}function rt(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function ct(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}const lt={name:"arrow",enabled:!0,phase:"main",fn:function(e){var l,t=e.state,j=e.name,k=e.options,u=t.elements.arrow,d=t.modifiersData.popperOffsets,h=f(t.placement),o=Je(h),r=[n,i].indexOf(h)>=0?"height":"width";if(u&&d){var p=function(e,t){return rt("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:ct(e,L))}(k.padding,t),g=Qe(u),E="y"===o?s:n,w="y"===o?a:i,_=t.rects.reference[r]+t.rects.reference[o]-d[o]-t.rects.popper[r],y=d[o]-t.rects.reference[o],c=I(u),b=c?"y"===o?c.clientHeight||0:c.clientWidth||0:0,O=_/2-y/2,x=p[E],C=b-g[r]-p[w],v=b/2-g[r]/2+O,m=U(x,v,C),A=o;t.modifiersData[j]=((l={})[A]=m,l.centerOffset=m-v,l)}},effect:function(e){var n=e.state,s=e.options.element,t=void 0===s?"[data-popper-arrow]":s;t!=null&&("string"!=typeof t||(t=n.elements.popper.querySelector(t)))&&at(n.elements.popper,t)&&(n.elements.arrow=t)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function z(e){return e.split("-")[1]}ut={top:"auto",right:"auto",bottom:"auto",left:"auto"};function ht(e){var h,f,b,y,u=e.popper,z=e.popperRect,l=e.placement,S=e.variation,m=e.offsets,A=e.position,v=e.gpuAcceleration,O=e.adaptive,j=e.roundOffsets,k=e.isFixed,N=m.x,t=void 0===N?0:N,D=m.y,o=void 0===D?0:D,E="function"==typeof j?j({x:t,y:o}):{x:t,y:o},t=E.x,o=E.y,x=m.hasOwnProperty("x"),C=m.hasOwnProperty("y"),g=n,_=s,c=window;if(O){var d=I(u),F="clientHeight",T="clientWidth";d===r(u)&&"static"!==p(d=w(u)).position&&"absolute"===A&&(F="scrollHeight",T="scrollWidth"),(l===s||(l===n||l===i)&&S===R)&&(_=a,o-=(k&&d===c&&c.visualViewport?c.visualViewport.height:d[F])-z.height,o*=v?1:-1),l!==n&&(l!==s&&l!==a||S!==R)||(g=i,t-=(k&&d===c&&c.visualViewport?c.visualViewport.width:d[T])-z.width,t*=v?1:-1)}return y=Object.assign({position:A},O&&ut),b=!0===j?function(e,t){var s=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:M(s*n)/n||0,y:M(o*n)/n||0}}({x:t,y:o},r(u)):{x:t,y:o},t=b.x,o=b.y,v?Object.assign({},y,((h={})[_]=C?"0":"",h[g]=x?"0":"",h.transform=(c.devicePixelRatio||1)<=1?"translate("+t+"px, "+o+"px)":"translate3d("+t+"px, "+o+"px, 0)",h)):Object.assign({},y,((f={})[_]=C?o+"px":"",f[g]=x?t+"px":"",f.transform="",f))}const Ge={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,s=n.gpuAcceleration,c=void 0===s||s,o=n.adaptive,l=void 0===o||o,i=n.roundOffsets,a=void 0===i||i,r={placement:f(t.placement),variation:z(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:c,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,ht(Object.assign({},r,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,ht(Object.assign({},r,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};q={passive:!0};const je={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,t=e.instance,s=e.options,o=s.scroll,i=void 0===o||o,a=s.resize,c=void 0===a||a,l=r(n.elements.popper),d=[].concat(n.scrollParents.reference,n.scrollParents.popper);return i&&d.forEach(function(e){e.addEventListener("scroll",t.update,q)}),c&&l.addEventListener("resize",t.update,q),function(){i&&d.forEach(function(e){e.removeEventListener("scroll",t.update,q)}),c&&l.removeEventListener("resize",t.update,q)}},data:{}};gt={left:"right",right:"left",bottom:"top",top:"bottom"};function ee(e){return e.replace(/left|right|bottom|top/g,function(e){return gt[e]})}bt={start:"end",end:"start"};function jt(e){return e.replace(/start|end/g,function(e){return bt[e]})}function Be(e){var t=r(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Ie(e){return k(w(e)).left+Be(e).scrollLeft}function Re(e){var t=p(e),n=t.overflow,s=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+s)}function Ot(e){return["html","body","#document"].indexOf(h(e))>=0?e.ownerDocument.body:c(e)&&Re(e)?e:Ot(me(e))}function B(e,t){void 0===t&&(t=[]);var s,n=Ot(e),o=n===(null==(s=e.ownerDocument)?void 0:s.body),i=r(n),a=o?[i].concat(i.visualViewport||[],Re(n)?n:[]):n,c=t.concat(a);return o?c:c.concat(B(me(a)))}function Le(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function tt(e,t,n){return t===Oe?Le(function(e,t){var s,d=r(e),o=w(e),n=d.visualViewport,i=o.clientWidth,a=o.clientHeight,c=0,l=0;return n&&(i=n.width,a=n.height,s=mt(),(s||!s&&"fixed"===t)&&(c=n.offsetLeft,l=n.offsetTop)),{width:i,height:a,x:c+Ie(e),y:l}}(e,n)):x(t)?function(e,t){var n=k(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):Le(function(e){var s,n=w(e),o=Be(e),t=null==(s=e.ownerDocument)?void 0:s.body,i=E(n.scrollWidth,n.clientWidth,t?t.scrollWidth:0,t?t.clientWidth:0),r=E(n.scrollHeight,n.clientHeight,t?t.scrollHeight:0,t?t.clientHeight:0),a=-o.scrollLeft+Ie(e),c=-o.scrollTop;return"rtl"===p(t||n).direction&&(a+=E(n.clientWidth,t?t.clientWidth:0)-i),{width:i,height:r,x:a,y:c}}(w(e)))}function kt(e){var o,r,l,t=e.reference,c=e.element,d=e.placement,u=d?f(d):null,p=d?z(d):null,h=t.x+t.width/2-c.width/2,m=t.y+t.height/2-c.height/2;switch(u){case s:o={x:h,y:t.y-c.height};break;case a:o={x:h,y:t.y+t.height};break;case i:o={x:t.x+t.width,y:m};break;case n:o={x:t.x-c.width,y:m};break;default:o={x:t.x,y:t.y}}if(r=u?Je(u):null,r!=null)switch(l="y"===r?"height":"width",p){case O:o[r]=o[r]-(t[l]/2-c[l]/2);break;case R:o[r]=o[r]+(t[l]/2-c[l]/2)}return o}function A(e,t){void 0===t&&(t={});var A,n=t,y=n.placement,O=void 0===y?e.placement:y,v=n.strategy,V=void 0===v?e.strategy:v,b=n.boundary,T=void 0===b?Fn:b,M=n.rootBoundary,H=void 0===M?Oe:M,F=n.elementContext,l=void 0===F?N:F,g=n.altBoundary,P=void 0!==g&&g,_=n.padding,u=void 0===_?0:_,o=rt("number"!=typeof u?u:ct(u,L)),R=l===N?Cn:N,S=e.rects.popper,f=e.elements[P?R:l],r=function(e,t,n,s){var a="clippingParents"===t?function(e){var n=B(me(e)),t=["absolute","fixed"].indexOf(p(e).position)>=0&&c(e)?I(e):e;return x(t)?n.filter(function(e){return x(e)&&at(e,t)&&"body"!==h(e)}):[]}(e):[].concat(t),i=[].concat(a,[n]),r=i[0],o=i.reduce(function(t,n){var o=tt(e,n,s);return t.top=E(o.top,t.top),t.right=Q(o.right,t.right),t.bottom=Q(o.bottom,t.bottom),t.left=E(o.left,t.left),t},tt(e,r,s));return o.width=o.right-o.left,o.height=o.bottom-o.top,o.x=o.left,o.y=o.top,o}(x(f)?f:f.contextElement||w(e.elements.popper),T,H,V),C=k(e.elements.reference),z=kt({reference:C,element:S,strategy:"absolute",placement:O}),D=Le(Object.assign({},S,z)),d=l===N?D:C,m={top:r.top-d.top+o.top,bottom:d.bottom-r.bottom+o.bottom,left:r.left-d.left+o.left,right:d.right-r.right+o.right},j=e.modifiersData.offset;return l===N&&j&&(A=j[O],Object.keys(m).forEach(function(e){var t=[i,a].indexOf(e)>=0?1:-1,n=[s,a].indexOf(e)>=0?"y":"x";m[e]+=A[n]*t})),m}function xs(e,t){void 0===t&&(t={});var s,n=t,c=n.placement,l=n.boundary,d=n.rootBoundary,u=n.padding,h=n.flipVariations,i=n.allowedAutoPlacements,m=void 0===i?ke:i,a=z(c),r=a?h?Ee:Ee.filter(function(e){return z(e)===a}):L,o=r.filter(function(e){return m.indexOf(e)>=0});return 0===o.length&&(o=r),s=o.reduce(function(t,n){return t[n]=A(e,{placement:n,boundary:l,rootBoundary:d,padding:u})[f(n)],t},{}),Object.keys(s).sort(function(e,t){return s[e]-s[t]})}const Mt={name:"flip",enabled:!0,phase:"main",fn:function(e){var r,d,_,x,t=e.state,o=e.options,y=e.name;if(!t.modifiersData[y]._skip){for(var w=o.mainAxis,I=void 0===w||w,E=o.altAxis,L=void 0===E||E,R=o.fallbackPlacements,j=o.padding,b=o.boundary,C=o.rootBoundary,$=o.altBoundary,F=o.flipVariations,p=void 0===F||F,W=o.allowedAutoPlacements,l=t.options.placement,V=f(l),B=R||(V!==l&&p?function(e){if(f(e)===be)return[];var t=ee(e);return[jt(e),t,jt(t)]}(l):[ee(l)]),m=[l].concat(B).reduce(function(e,n){return e.concat(f(n)===be?xs(t,{placement:n,boundary:b,rootBoundary:C,padding:j,flipVariations:p,allowedAutoPlacements:W}):n)},[]),H=t.rects.reference,P=t.rects.popper,S=new Map,M=!0,h=m[0],v=0;v=0,k=T?"width":"height",g=A(t,{placement:c,boundary:b,rootBoundary:C,altBoundary:$,padding:j}),u=T?D?i:n:D?a:s;if(H[k]>P[k]&&(u=ee(u)),x=ee(u),r=[],I&&r.push(g[N]<=0),L&&r.push(g[u]<=0,g[x]<=0),r.every(function(e){return e})){h=c,M=!1;break}S.set(c,r)}if(M)for(_=function(e){var t=m.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return h=t,"break"},d=p?3:1;d>0&&"break"!==_(d);d--);t.placement!==h&&(t.modifiersData[y]._skip=!0,t.placement=h,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Ft(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Tt(e){return[s,i,a,n].some(function(t){return e[t]>=0})}const zt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,a=e.name,r=t.rects.reference,c=t.rects.popper,l=t.modifiersData.preventOverflow,d=A(t,{elementContext:"reference"}),u=A(t,{altBoundary:!0}),n=Ft(d,r),s=Ft(u,c,l),o=Tt(n),i=Tt(s);t.modifiersData[a]={referenceClippingOffsets:n,popperEscapeOffsets:s,isReferenceHidden:o,hasPopperEscaped:i},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":o,"data-popper-escaped":i})}},Dt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,c=e.options,l=e.name,o=c.offset,d=void 0===o?[0,0]:o,a=ke.reduce(function(e,o){return e[o]=function(e,t,o){var c=f(e),d=[n,s].indexOf(c)>=0?-1:1,l="function"==typeof o?o(Object.assign({},t,{placement:e})):o,a=l[0],r=l[1];return a=a||0,r=(r||0)*d,[n,i].indexOf(c)>=0?{x:r,y:a}:{x:a,y:r}}(o,t.rects,d),e},{}),r=a[t.placement],u=r.x,h=r.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=h),t.modifiersData[l]=a}},Ne={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=kt({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},Lt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,c=e.options,ve=e.name,Z=c.mainAxis,me=void 0===Z||Z,ie=c.altAxis,ae=void 0!==ie&&ie,be=c.boundary,je=c.rootBoundary,ye=c.altBoundary,_e=c.padding,L=c.tether,u=void 0===L||L,N=c.tetherOffset,k=void 0===N?0:N,_=A(t,{boundary:be,rootBoundary:je,padding:_e,altBoundary:ye}),D=f(t.placement),C=z(t.placement),ne=!C,o=Je(D),g="x"===o?"y":"x",v=t.modifiersData.popperOffsets,d=t.rects.reference,p=t.rects.popper,w="function"==typeof k?k(Object.assign({},t.rects,{placement:t.placement})):k,m="number"==typeof w?{mainAxis:w,altAxis:w}:Object.assign({mainAxis:0,altAxis:0},w),y=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,S={x:0,y:0};if(v){if(me){var P,F="y"===o?s:n,B="y"===o?a:i,r="y"===o?"height":"width",h=v[o],W=h+_[F],K=h-_[B],T=u?-p[r]/2:0,ge=C===O?d[r]:p[r],pe=C===O?-p[r]:-d[r],X=t.elements.arrow,fe=u&&X?Qe(X):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},ee=J[F],te=J[B],b=U(0,d[r],fe[r]),de=ne?d[r]/2-T-b-ee-m.mainAxis:ge-b-ee-m.mainAxis,le=ne?-d[r]/2+T+b+te+m.mainAxis:pe+b+te+m.mainAxis,x=t.elements.arrow&&I(t.elements.arrow),re=x?"y"===o?x.clientTop||0:x.clientLeft||0:0,q=null!=(P=y?.[o])?P:0,ce=h+le-q,oe=U(u?Q(W,h+de-q-re):W,h,u?E(K,ce):K);v[o]=oe,S[o]=oe-h}if(ae){var se,ue="x"===o?s:n,he="x"===o?a:i,l=v[g],j="y"===g?"height":"width",G=l+_[ue],Y=l-_[he],M=-1!==[s,n].indexOf(D),$=null!=(se=y?.[g])?se:0,V=M?G:l-d[j]-p[j]-$+m.altAxis,H=M?l+d[j]+p[j]-$-m.altAxis:Y,R=u&&M?function(e,t,n){var s=U(e,t,n);return s>n?n:s}(V,l,H):U(u?V:G,l,u?H:Y);v[g]=R,S[g]=R-l}t.modifiersData[ve]=S}},requiresIfExists:["offset"]};function Os(e,t,n){void 0===n&&(n=!1);var s,d,u=c(t),m=c(t)&&function(e){var t=e.getBoundingClientRect(),n=M(t.width)/e.offsetWidth||1,s=M(t.height)/e.offsetHeight||1;return 1!==n||1!==s}(t),a=w(t),i=k(e,m,n),l={scrollLeft:0,scrollTop:0},o={x:0,y:0};return(u||!u&&!n)&&(("body"!==h(t)||Re(a))&&(l=(s=t)!==r(s)&&c(s)?{scrollLeft:(d=s).scrollLeft,scrollTop:d.scrollTop}:Be(s)),c(t)?((o=k(t,!0)).x+=t.clientLeft,o.y+=t.clientTop):a&&(o.x=Ie(a))),{x:i.left+l.scrollLeft-o.x,y:i.top+l.scrollTop-o.y,width:i.width,height:i.height}}function ws(e){var n=new Map,t=new Set,s=[];function o(e){t.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!t.has(e)){var s=n.get(e);s&&o(s)}}),s.push(e)}return e.forEach(function(e){n.set(e.name,e)}),e.forEach(function(e){t.has(e.name)||o(e)}),s}De={placement:"bottom",modifiers:[],strategy:"absolute"};function It(){for(var t=arguments.length,n=new Array(t),e=0;eNumber.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(this._inNavbar||"static"===this._config.display)&&(g.setDataAttribute(this._menu,"popper","static"),e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...o(this._config.popperConfig,[e])}}_selectMenuItem({key:e,target:n}){const s=t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(e=>P(e));s.length&&Me(s,n,e===Yt,!s.includes(n)).focus()}static jQueryInterface(e){return this.each(function(){const t=m.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}static clearMenus(e){if(2===e.button||"keyup"===e.type&&"Tab"!==e.key)return;const n=t.find(ms);for(const a of n){const t=m.getInstance(a);if(!t||!1===t._config.autoClose)continue;const s=e.composedPath(),o=s.includes(t._menu);if(s.includes(t._element)||"inside"===t._config.autoClose&&!o||"outside"===t._config.autoClose&&o)continue;if(t._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;const i={relatedTarget:t._element};"click"===e.type&&(i.clickEvent=e),t._completeHide(i)}}static dataApiKeydownHandler(e){const a=/input|textarea/i.test(e.target.tagName),s="Escape"===e.key,o=[ps,Yt].includes(e.key);if(!o&&!s)return;if(a&&!s)return;e.preventDefault();const i=this.matches(C)?this:t.prev(this,C)[0]||t.next(this,C)[0]||t.findOne(C,e.delegateTarget.parentNode),n=m.getOrCreateInstance(i);if(o)return e.stopPropagation(),n.show(),void n._selectMenuItem(e);n._isShown()&&(e.stopPropagation(),n.hide(),i.focus())}}e.on(document,Xt,C,m.dataApiKeydownHandler),e.on(document,Xt,te,m.dataApiKeydownHandler),e.on(document,Gt,m.clearMenus),e.on(document,"keyup.bs.dropdown.data-api",m.clearMenus),e.on(document,Gt,C,function(e){e.preventDefault(),m.getOrCreateInstance(this).toggle()}),l(m);const un="show",hn="mousedown.bs.backdrop",In={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Hn={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class pn extends G{constructor(e){super(),this._config=this._getConfig(e),this._isAppended=!1,this._element=null}static get Default(){return In}static get DefaultType(){return Hn}static get NAME(){return"backdrop"}show(e){if(!this._config.isVisible)return void o(e);this._append();const t=this._getElement();this._config.isAnimated&&$(t),t.classList.add(un),this._emulateAnimation(()=>{o(e)})}hide(e){this._config.isVisible?(this._getElement().classList.remove(un),this._emulateAnimation(()=>{this.dispose(),o(e)})):o(e)}dispose(){this._isAppended&&(e.off(this._element,hn),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_configAfterMerge(e){return e.rootElement=j(e.rootElement),e}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),e.on(t,hn,()=>{o(this._config.clickCallback)}),this._isAppended=!0}_emulateAnimation(e){nn(e,this._getElement(),this._config.isAnimated)}}const gn=".bs.focustrap",vn="backward",Pn={autofocus:!0,trapElement:null},Rn={autofocus:"boolean",trapElement:"element"};class yn extends G{constructor(e){super(),this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return Pn}static get DefaultType(){return Rn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),e.off(document,gn),e.on(document,"focusin.bs.focustrap",e=>this._handleFocusin(e)),e.on(document,"keydown.tab.bs.focustrap",e=>this._handleKeydown(e)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,e.off(document,gn))}_handleFocusin(e){const{trapElement:n}=this._config;if(e.target===document||e.target===n||n.contains(e.target))return;const s=t.focusableChildren(n);0===s.length?n.focus():this._lastTabNavDirection===vn?s[s.length-1].focus():s[0].focus()}_handleKeydown(e){"Tab"===e.key&&(this._lastTabNavDirection=e.shiftKey?vn:"forward")}}const _n=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",wn=".sticky-top",se="padding-right",xn="margin-right";class Ce{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,se,t=>t+e),this._setElementAttributes(_n,se,t=>t+e),this._setElementAttributes(wn,xn,t=>t-e)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,se),this._resetElementAttributes(_n,se),this._resetElementAttributes(wn,xn)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,n){const s=this.getWidth();this._applyManipulationCallback(e,e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+s)return;this._saveInitialAttribute(e,t);const o=window.getComputedStyle(e).getPropertyValue(t);e.style.setProperty(t,`${n(Number.parseFloat(o))}px`)})}_saveInitialAttribute(e,t){const n=e.style.getPropertyValue(t);n&&g.setDataAttribute(e,t,n)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,e=>{const n=g.getDataAttribute(e,t);null!==n?(g.removeDataAttribute(e,t),e.style.setProperty(t,n)):e.style.removeProperty(t)})}_applyManipulationCallback(e,n){if(v(e))n(e);else for(const s of t.find(e,this._element))n(s)}}const En=".bs.modal",kn="hidden.bs.modal",An="show.bs.modal",Sn="modal-open",Mn="show",we="modal-static",Ln={backdrop:!0,focus:!0,keyboard:!0},Nn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class T extends u{constructor(e,n){super(e,n),this._dialog=t.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Ce,this._addEventListeners()}static get Default(){return Ln}static get DefaultType(){return Nn}static get NAME(){return"modal"}toggle(e){return this._isShown?this.hide():this.show(e)}show(t){this._isShown||this._isTransitioning||e.trigger(this._element,An,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(Sn),this._adjustDialog(),this._backdrop.show(()=>this._showElement(t)))}hide(){this._isShown&&!this._isTransitioning&&(e.trigger(this._element,"hide.bs.modal").defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Mn),this._queueCallback(()=>this._hideModal(),this._element,this._isAnimated())))}dispose(){e.off(window,En),e.off(this._dialog,En),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new pn({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new yn({trapElement:this._element})}_showElement(n){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const s=t.findOne(".modal-body",this._dialog);s&&(s.scrollTop=0),$(this._element),this._element.classList.add(Mn),this._queueCallback(()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,e.trigger(this._element,"shown.bs.modal",{relatedTarget:n})},this._dialog,this._isAnimated())}_addEventListeners(){e.on(this._element,"keydown.dismiss.bs.modal",e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())}),e.on(window,"resize.bs.modal",()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()}),e.on(this._element,"mousedown.dismiss.bs.modal",t=>{e.one(this._element,"click.dismiss.bs.modal",e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())})})}_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(Sn),this._resetAdjustments(),this._scrollBar.reset(),e.trigger(this._element,kn)})}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(e.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const n=this._element.scrollHeight>document.documentElement.clientHeight,t=this._element.style.overflowY;"hidden"===t||this._element.classList.contains(we)||(n||(this._element.style.overflowY="hidden"),this._element.classList.add(we),this._queueCallback(()=>{this._element.classList.remove(we),this._queueCallback(()=>{this._element.style.overflowY=t},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),n=e>0;if(n&&!t){const t=d()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!n&&t){const t=d()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each(function(){const n=T.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===n[e])throw new TypeError(`No method named "${e}"`);n[e](t)}})}}e.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',function(n){const s=t.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&n.preventDefault(),e.one(s,An,t=>{t.defaultPrevented||e.one(s,kn,()=>{P(this)&&this.focus()})});const o=t.findOne(".modal.show");o&&T.getInstance(o).hide(),T.getOrCreateInstance(s).toggle(this)}),ue(T),l(T);const Et="show",Tn="showing",jn="hiding",bn=".offcanvas.show",fn="hidePrevented.bs.offcanvas",mn="hidden.bs.offcanvas",Bn={backdrop:!0,keyboard:!0,scroll:!1},Vn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class _ extends u{constructor(e,t){super(e,t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return Bn}static get DefaultType(){return Vn}static get NAME(){return"offcanvas"}toggle(e){return this._isShown?this.hide():this.show(e)}show(t){this._isShown||e.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new Ce).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Tn),this._queueCallback(()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Et),this._element.classList.remove(Tn),e.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&(e.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(jn),this._backdrop.hide(),this._queueCallback(()=>{this._element.classList.remove(Et,jn),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new Ce).reset(),e.trigger(this._element,mn)},this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new pn({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():e.trigger(this._element,fn)}:null})}_initializeFocusTrap(){return new yn({trapElement:this._element})}_addEventListeners(){e.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():e.trigger(this._element,fn))})}static jQueryInterface(e){return this.each(function(){const t=_.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)}})}}e.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',function(n){const s=t.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&n.preventDefault(),b(this))return;e.one(s,mn,()=>{P(this)&&this.focus()});const o=t.findOne(bn);o&&o!==s&&_.getInstance(o).hide(),_.getOrCreateInstance(s).toggle(this)}),e.on(window,"load.bs.offcanvas.data-api",()=>{for(const e of t.find(bn))_.getOrCreateInstance(e).show()}),e.on(window,"resize.bs.offcanvas",()=>{for(const e of t.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(e).position&&_.getOrCreateInstance(e).hide()}),ue(_),l(_);const ln={"*":["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:[]},Un=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Kn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,qn=(e,t)=>{const n=e.nodeName.toLowerCase();return t.includes(n)?!Un.has(n)||Boolean(Kn.test(e.nodeValue)):t.filter(e=>e instanceof RegExp).some(e=>e.test(n))},Yn={allowList:ln,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
                                                                        "},Gn={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Xn={entry:"(string|element|function|null)",selector:"(string|element)"};class Qn extends G{constructor(e){super(),this._config=this._getConfig(e)}static get Default(){return Yn}static get DefaultType(){return Gn}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map(e=>this._resolvePossibleFunction(e)).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(e){return this._checkContent(e),this._config.content={...this._config.content,...e},this}toHtml(){const e=document.createElement("div");e.innerHTML=this._maybeSanitize(this._config.template);for(const[t,n]of Object.entries(this._config.content))this._setContent(e,n,t);const t=e.children[0],n=this._resolvePossibleFunction(this._config.extraClass);return n&&t.classList.add(...n.split(" ")),t}_typeCheckConfig(e){super._typeCheckConfig(e),this._checkContent(e.content)}_checkContent(e){for(const[t,n]of Object.entries(e))super._typeCheckConfig({selector:t,entry:n},Xn)}_setContent(e,n,s){const o=t.findOne(s,e);o&&((n=this._resolvePossibleFunction(n))?v(n)?this._putElementInTemplate(j(n),o):this._config.html?o.innerHTML=this._maybeSanitize(n):o.textContent=n:o.remove())}_maybeSanitize(e){return this._config.sanitize?function(e,t,n){if(!e.length)return e;if(n&&"function"==typeof n)return n(e);const s=(new window.DOMParser).parseFromString(e,"text/html"),o=[].concat(...s.body.querySelectorAll("*"));for(const e of o){const n=e.nodeName.toLowerCase();if(!Object.keys(t).includes(n)){e.remove();continue}const s=[].concat(...e.attributes),i=[].concat(t["*"]||[],t[n]||[]);for(const t of s)qn(t,i)||e.removeAttribute(t.nodeName)}return s.body.innerHTML}(e,this._config.allowList,this._config.sanitizeFn):e}_resolvePossibleFunction(e){return o(e,[this])}_putElementInTemplate(e,t){if(this._config.html)return t.innerHTML="",void t.append(e);t.textContent=e.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),Se="fade",oe="show",rn=".modal",an="hide.bs.modal",ie="hover",sn="focus",is={AUTO:"auto",TOP:"top",RIGHT:d()?"left":"right",BOTTOM:"bottom",LEFT:d()?"right":"left"},rs={allowList:ln,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},cs={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class D extends u{constructor(e,t){if(void 0===Ut)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e,t),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return rs}static get DefaultType(){return cs}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),e.off(this._element.closest(rn),an,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const n=e.trigger(this._element,this.constructor.eventName("show")),s=(Rt(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(n.defaultPrevented||!s)return;this._disposePopper();const t=this._getTipElement();this._element.setAttribute("aria-describedby",t.getAttribute("id"));const{container:o}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(o.append(t),e.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(t),t.classList.add(oe),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))e.on(t,"mouseover",he);this._queueCallback(()=>{e.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1},this.tip,this._isAnimated())}hide(){if(this._isShown()&&!e.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(oe),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))e.off(t,"mouseover",he);this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,this._isHovered=null,this._queueCallback(()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),e.trigger(this._element,this.constructor.eventName("hidden")))},this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(e){const t=this._getTemplateFactory(e).toHtml();if(!t)return null;t.classList.remove(Se,oe),t.classList.add(`bs-${this.constructor.NAME}-auto`);const n=(e=>{do e+=Math.floor(1e6*Math.random());while(document.getElementById(e))return e})(this.constructor.NAME).toString();return t.setAttribute("id",n),this._isAnimated()&&t.classList.add(Se),t}setContent(e){this._newContent=e,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(e){return this._templateFactory?this._templateFactory.changeContent(e):this._templateFactory=new Qn({...this._config,content:e,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(e){return this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(Se)}_isShown(){return this.tip&&this.tip.classList.contains(oe)}_createPopper(e){const t=o(this._config.placement,[this,e,this._element]),n=is[t.toUpperCase()];return ze(this._element,e,this._getPopperConfig(n))}_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}_resolvePossibleFunction(e){return o(e,[this._element])}_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:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:e=>{this._getTipElement().setAttribute("data-popper-placement",e.state.placement)}}]};return{...t,...o(this._config.popperConfig,[t])}}_setListeners(){const t=this._config.trigger.split(" ");for(const n of t)if("click"===n)e.on(this._element,this.constructor.eventName("click"),this._config.selector,e=>{this._initializeOnDelegatedTarget(e).toggle()});else if("manual"!==n){const t=n===ie?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),s=n===ie?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");e.on(this._element,t,this._config.selector,e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusin"===e.type?sn:ie]=!0,t._enter()}),e.on(this._element,s,this._config.selector,e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusout"===e.type?sn:ie]=t._element.contains(e.relatedTarget),t._leave()})}this._hideModalHandler=()=>{this._element&&this.hide()},e.on(this._element.closest(rn),an,this._hideModalHandler)}_fixTitle(){const e=this._element.getAttribute("title");e&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",e),this._element.setAttribute("data-bs-original-title",e),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout(()=>{this._isHovered&&this.show()},this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout(()=>{this._isHovered||this.hide()},this._config.delay.hide))}_setTimeout(e,t){clearTimeout(this._timeout),this._timeout=setTimeout(e,t)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(e){const t=g.getDataAttributes(this._element);for(const e of Object.keys(t))Zn.has(e)&&delete t[e];return e={...t,..."object"==typeof e&&e?e:{}},e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e.container=!1===e.container?document.body:j(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()),e}_getDelegateConfig(){const e={};for(const[t,n]of Object.entries(this._config))this.constructor.Default[t]!==n&&(e[t]=n);return e.selector=!1,e.trigger="manual",e}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(e){return this.each(function(){const t=D.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}}l(D);const ds={...D.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},us={...D.DefaultType,content:"(null|string|element|function)"};class Fe extends D{static get Default(){return ds}static get DefaultType(){return us}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(e){return this.each(function(){const t=Fe.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}})}}l(Fe);const Jt="click.bs.scrollspy",W="active",qt="[href]",gs={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},vs={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class de extends u{constructor(e,t){super(e,t),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return gs}static get DefaultType(){return vs}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const e of this._observableSections.values())this._observer.observe(e)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(e){return e.target=j(e.target)||document.body,e.rootMargin=e.offset?`${e.offset}px 0px -30%`:e.rootMargin,"string"==typeof e.threshold&&(e.threshold=e.threshold.split(",").map(e=>Number.parseFloat(e))),e}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(e.off(this._config.target,Jt),e.on(this._config.target,Jt,qt,e=>{const t=this._observableSections.get(e.target.hash);if(t){e.preventDefault();const n=this._rootElement||window,s=t.offsetTop-this._element.offsetTop;if(n.scrollTo)return void n.scrollTo({top:s,behavior:"smooth"});n.scrollTop=s}}))}_getNewObserver(){const e={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver(e=>this._observerCallback(e),e)}_observerCallback(e){const n=e=>this._targetLinks.get(`#${e.target.id}`),s=e=>{this._previousScrollData.visibleEntryTop=e.target.offsetTop,this._process(n(e))},t=(this._rootElement||document.documentElement).scrollTop,o=t>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=t;for(const i of e){if(!i.isIntersecting){this._activeTarget=null,this._clearActiveClass(n(i));continue}const a=i.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(o&&a){if(s(i),!t)return}else o||a||s(i)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const e=t.find(qt,this._config.target);for(const n of e){if(!n.hash||b(n))continue;const s=t.findOne(decodeURI(n.hash),this._element);P(s)&&(this._targetLinks.set(decodeURI(n.hash),n),this._observableSections.set(n.hash,s))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(W),this._activateParents(t),e.trigger(this._element,"activate.bs.scrollspy",{relatedTarget:t}))}_activateParents(e){if(e.classList.contains("dropdown-item"))t.findOne(".dropdown-toggle",e.closest(".dropdown")).classList.add(W);else for(const n of t.parents(e,".nav, .list-group"))for(const e of t.prev(n,".nav-link, .nav-item > .nav-link, .list-group-item"))e.classList.add(W)}_clearActiveClass(e){e.classList.remove(W);const n=t.find("[href].active",e);for(const e of n)e.classList.remove(W)}static jQueryInterface(e){return this.each(function(){const t=de.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]()}})}}e.on(window,"load.bs.scrollspy.data-api",()=>{for(const e of t.find('[data-bs-spy="scroll"]'))de.getOrCreateInstance(e)}),l(de);const js="ArrowLeft",Vt="ArrowRight",_s="ArrowUp",Pt="ArrowDown",fe="active",St="fade",qe="show",Wt='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Xe=`.nav-link:not(.dropdown-toggle), .list-group-item:not(.dropdown-toggle), [role="tab"]:not(.dropdown-toggle), ${Wt}`;class H extends u{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),e.on(this._element,"keydown.bs.tab",e=>this._keydown(e)))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const n=this._getActiveElem(),s=n?e.trigger(n,"hide.bs.tab",{relatedTarget:t}):null;e.trigger(t,"show.bs.tab",{relatedTarget:n}).defaultPrevented||s&&s.defaultPrevented||(this._deactivate(n,t),this._activate(t,n))}_activate(n,s){n&&(n.classList.add(fe),this._activate(t.getElementFromSelector(n)),this._queueCallback(()=>{"tab"===n.getAttribute("role")?(n.removeAttribute("tabindex"),n.setAttribute("aria-selected",!0),this._toggleDropDown(n,!0),e.trigger(n,"shown.bs.tab",{relatedTarget:s})):n.classList.add(qe)},n,n.classList.contains(St)))}_deactivate(n,s){n&&(n.classList.remove(fe),n.blur(),this._deactivate(t.getElementFromSelector(n)),this._queueCallback(()=>{"tab"===n.getAttribute("role")?(n.setAttribute("aria-selected",!1),n.setAttribute("tabindex","-1"),this._toggleDropDown(n,!1),e.trigger(n,"hidden.bs.tab",{relatedTarget:s})):n.classList.remove(qe)},n,n.classList.contains(St)))}_keydown(e){if(![js,Vt,_s,Pt].includes(e.key))return;e.stopPropagation(),e.preventDefault();const n=[Vt,Pt].includes(e.key),t=Me(this._getChildren().filter(e=>!b(e)),e.target,n,!0);t&&(t.focus({preventScroll:!0}),H.getOrCreateInstance(t).show())}_getChildren(){return t.find(Xe,this._parent)}_getActiveElem(){return this._getChildren().find(e=>this._elemIsActive(e))||null}_setInitialAttributes(e,t){this._setAttributeIfNotExists(e,"role","tablist");for(const e of t)this._setInitialAttributesOnChild(e)}_setInitialAttributesOnChild(e){e=this._getInnerElement(e);const t=this._elemIsActive(e),n=this._getOuterElement(e);e.setAttribute("aria-selected",t),n!==e&&this._setAttributeIfNotExists(n,"role","presentation"),t||e.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(e,"role","tab"),this._setInitialAttributesOnTargetPanel(e)}_setInitialAttributesOnTargetPanel(e){const n=t.getElementFromSelector(e);n&&(this._setAttributeIfNotExists(n,"role","tabpanel"),e.id&&this._setAttributeIfNotExists(n,"aria-labelledby",`${e.id}`))}_toggleDropDown(e,n){const s=this._getOuterElement(e);if(!s.classList.contains("dropdown"))return;const o=(e,o)=>{const i=t.findOne(e,s);i&&i.classList.toggle(o,n)};o(".dropdown-toggle",fe),o(".dropdown-menu",qe),s.setAttribute("aria-expanded",n)}_setAttributeIfNotExists(e,t,n){e.hasAttribute(t)||e.setAttribute(t,n)}_elemIsActive(e){return e.classList.contains(fe)}_getInnerElement(e){return e.matches(Xe)?e:t.findOne(Xe,e)}_getOuterElement(e){return e.closest(".nav-item, .list-group-item")||e}static jQueryInterface(e){return this.each(function(){const t=H.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}})}}e.on(document,"click.bs.tab",Wt,function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),b(this)||H.getOrCreateInstance(this).show()}),e.on(window,"load.bs.tab",()=>{for(const e of t.find('.active[data-bs-toggle="tab"], .active[data-bs-toggle="pill"], .active[data-bs-toggle="list"]'))H.getOrCreateInstance(e)}),l(H);const yt="hide",pe="show",ge="showing",Ts={animation:"boolean",autohide:"boolean",delay:"number"},zs={animation:!0,autohide:!0,delay:5e3};class ve extends u{constructor(e,t){super(e,t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return zs}static get DefaultType(){return Ts}static get NAME(){return"toast"}show(){e.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(yt),$(this._element),this._element.classList.add(pe,ge),this._queueCallback(()=>{this._element.classList.remove(ge),e.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this.isShown()&&(e.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(ge),this._queueCallback(()=>{this._element.classList.add(yt),this._element.classList.remove(ge,pe),e.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(pe),super.dispose()}isShown(){return this._element.classList.contains(pe)}_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 n=e.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){e.on(this._element,"mouseover.bs.toast",e=>this._onInteraction(e,!0)),e.on(this._element,"mouseout.bs.toast",e=>this._onInteraction(e,!1)),e.on(this._element,"focusin.bs.toast",e=>this._onInteraction(e,!0)),e.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=ve.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}})}}return ue(ve),l(ve),{Alert:re,Button:ae,Carousel:K,Collapse:V,Dropdown:m,Modal:T,Offcanvas:_,Popover:Fe,ScrollSpy:de,Tab:H,Toast:ve,Tooltip:D}})}}),d=c(l())})();/*! Bundled license information: + +bootstrap/dist/js/bootstrap.bundle.min.js: + (*! + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + *) +*/ \ No newline at end of file diff --git a/js/highlight.min.5c42765ed4daf59624a6e775bdc4bc68bba6664f4d678ecbc55390f986b6852e562c726fb5fd57b078713aa5aef95ebac205fe24f3d998ab84e10b6b28c413ee.js b/js/highlight.min.571ec8077a4fa3ce569c865275342d2cd42ddc19d58c0cdae99d0abf059f749da059d2dff499663327d76b17fc4df404d3d4d36a44a0c81d3949b318a0a5e757.js similarity index 99% rename from js/highlight.min.5c42765ed4daf59624a6e775bdc4bc68bba6664f4d678ecbc55390f986b6852e562c726fb5fd57b078713aa5aef95ebac205fe24f3d998ab84e10b6b28c413ee.js rename to js/highlight.min.571ec8077a4fa3ce569c865275342d2cd42ddc19d58c0cdae99d0abf059f749da059d2dff499663327d76b17fc4df404d3d4d36a44a0c81d3949b318a0a5e757.js index 8ce5c0e9..3468ea7f 100644 --- a/js/highlight.min.5c42765ed4daf59624a6e775bdc4bc68bba6664f4d678ecbc55390f986b6852e562c726fb5fd57b078713aa5aef95ebac205fe24f3d998ab84e10b6b28c413ee.js +++ b/js/highlight.min.571ec8077a4fa3ce569c865275342d2cd42ddc19d58c0cdae99d0abf059f749da059d2dff499663327d76b17fc4df404d3d4d36a44a0c81d3949b318a0a5e757.js @@ -1,2 +1,2 @@ (()=>{var f=Object.create,t=Object.defineProperty,x=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,v=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty,p=(e,t)=>function(){return t||(0,e[s(e)[0]])((t={exports:{}}).exports,t),t.exports},h=(e,n,o,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of s(n))!g.call(e,a)&&a!==o&&t(e,a,{get:()=>n[a],enumerable:!(i=x(n,a))||i.enumerable});return e},u=(e,n,s)=>(s=e!=null?f(v(e)):{},h(n||!e||!e.__esModule?t(s,"default",{value:e,enumerable:!0}):s,e)),j=p({"node_modules/highlight.js/lib/core.js"(e,t){function S(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],s=typeof n;(s==="object"||s==="function")&&!Object.isFrozen(n)&&S(n)}),e}var n,o,a,r,c,l,d,h,m,f,p,g,v,b,y,_,w,x,C,E,k,A,M,F,z,D,N,R,P,H,I,B,V,$,W,U,K,q,G,X,Q,Z,J,T=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}},ce,te,ne,se,ie,ee;function Y(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function s(t,...n){const e=Object.create(null);for(const n in t)e[n]=t[n];return n.forEach(function(t){for(const n in t)e[n]=t[n]}),e}X="",y=e=>!!e.scope,Q=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${"_".repeat(t+1)}`)].join(" ")}return`${t}${e}`},Z=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=Y(e)}openNode(e){if(!y(e))return;const t=Q(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){if(!y(e))return;this.buffer+=X}value(){return this.buffer}span(e){this.buffer+=``}},v=(e={})=>{const t={children:[]};return Object.assign(t,e),t},ce=class _TokenTree{constructor(){this.rootNode=v(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=v({scope:e});this.add(t),this.stack.push(t)}closeNode(){return this.stack.length>1?this.stack.pop():void 0}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(e){if(typeof e=="string")return;if(!e.children)return;e.children.every(e=>typeof e=="string")?e.children=[e.children.join("")]:e.children.forEach(e=>{_TokenTree._collapse(e)})}},K=class extends ce{constructor(e){super(),this.options=e}addText(e){if(e==="")return;this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){const e=new Z(this,this.options);return e.value()}finalize(){return this.closeAllNodes(),!0}};function u(e){return e?typeof e=="string"?e:e.source:null}function le(e){return i("(?=",e,")")}function ue(e){return i("(?:",e,")*")}function he(e){return i("(?:",e,")?")}function i(...e){const t=e.map(e=>u(e)).join("");return t}function Ee(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function j(...e){const t=Ee(e),n="("+(t.capture?"":"?:")+e.map(e=>u(e)).join("|")+")";return n}function L(e){return new RegExp(e.toString()+"|").exec("").length-1}function ke(e,t){const n=e&&e.exec(t);return n&&n.index===0}k=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function O(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;const o=n;let t=u(e),s="";for(;t.length>0;){const e=k.exec(t);if(!e){s+=t;break}s+=t.substring(0,e.index),t=t.substring(e.index+e[0].length),e[0][0]==="\\"&&e[1]?s+="\\"+String(Number(e[1])+o):(s+=e[0],e[0]==="("&&n++)}return s}).map(e=>`(${e})`).join(t)}J=/\b\B/,C="[a-zA-Z]\\w*",h="[a-zA-Z_]\\w*",b="\\b\\d+(\\.\\d+)?",x="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",w="\\b(0b[01]+)",M="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",F=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=i(t,/.*\b/,e.binary,/\b.*/)),s({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{e.index!==0&&t.ignoreMatch()}},e)},r={begin:"\\\\[\\s\\S]",relevance:0},z={scope:"string",begin:"'",end:"'",illegal:`\\n`,contains:[r]},D={scope:"string",begin:'"',end:'"',illegal:`\\n`,contains:[r]},N={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},c=function(e,t,n={}){const o=s({scope:"comment",begin:e,end:t,contains:[]},n);o.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const a=j("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return o.contains.push({begin:i(/[ ]+/,"(",a,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),o},R=c("//","$"),P=c("/\\*","\\*/"),H=c("#","$"),I={scope:"number",begin:b,relevance:0},B={scope:"number",begin:x,relevance:0},V={scope:"number",begin:w,relevance:0},$={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[r,{begin:/\[/,end:/\]/,relevance:0,contains:[r]}]}]},W={scope:"title",begin:C,relevance:0},U={scope:"title",begin:h,relevance:0},A={begin:"\\.\\s*"+h,relevance:0},q=function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},l=Object.freeze({__proto__:null,MATCH_NOTHING_RE:J,IDENT_RE:C,UNDERSCORE_IDENT_RE:h,NUMBER_RE:b,C_NUMBER_RE:x,BINARY_NUMBER_RE:w,RE_STARTERS_RE:M,SHEBANG:F,BACKSLASH_ESCAPE:r,APOS_STRING_MODE:z,QUOTE_STRING_MODE:D,PHRASAL_WORDS_MODE:N,COMMENT:c,C_LINE_COMMENT_MODE:R,C_BLOCK_COMMENT_MODE:P,HASH_COMMENT_MODE:H,NUMBER_MODE:I,C_NUMBER_MODE:B,BINARY_NUMBER_MODE:V,REGEXP_MODE:$,TITLE_MODE:W,UNDERSCORE_TITLE_MODE:U,METHOD_GUARD:A,END_SAME_AS_BEGIN:q});function Ce(e,t){const n=e.input[e.index-1];n==="."&&t.ignoreMatch()}function xe(e){e.className!==void 0&&(e.scope=e.className,delete e.className)}function Oe(e,t){if(!t)return;if(!e.beginKeywords)return;e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=Ce,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0)}function we(e){if(!Array.isArray(e.illegal))return;e.illegal=j(...e.illegal)}function de(e){if(!e.match)return;if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}function _e(e){e.relevance===void 0&&(e.relevance=1)}te=(e)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=i(n.beforeMatch,le(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},ne=["of","and","for","in","not","or","if","then","parent","list","value"],se="keyword";function oe(e,t,n=se){const s=Object.create(null);return typeof e=="string"?o(n,e.split(" ")):Array.isArray(e)?o(n,e):Object.keys(e).forEach(function(n){Object.assign(s,oe(e[n],t,n))}),s;function o(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){const n=t.split("|");s[n[0]]=[e,ye(n[0],n[1])]})}}function ye(e,t){return t?Number(t):be(e)?0:1}function be(e){return ne.includes(e.toLowerCase())}g={},n=e=>{console.error(e)},p=(e,...t)=>{console.log(`WARN: ${e}`,...t)},a=(e,t)=>{if(g[`${e}/${t}`])return;console.log(`Deprecated as of ${e}. ${t}`),g[`${e}/${t}`]=!0},d=new Error;function re(e,t,{key:n}){let s=0;const a=e[n],o={},i={};for(let e=1;e<=t.length;e++)i[e+s]=a[e],o[e+s]=!0,s+=L(t[e-1]);e[n]=i,e[n]._emit=o,e[n]._multi=!0}function me(e){if(!Array.isArray(e.begin))return;if(e.skip||e.excludeBegin||e.returnBegin)throw n("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),d;if(typeof e.beginScope!="object"||e.beginScope===null)throw n("beginScope must be object"),d;re(e,e.begin,{key:"beginScope"}),e.begin=O(e.begin,{joinWith:""})}function fe(e){if(!Array.isArray(e.end))return;if(e.skip||e.excludeEnd||e.returnEnd)throw n("skip, excludeEnd, returnEnd not compatible with endScope: {}"),d;if(typeof e.endScope!="object"||e.endScope===null)throw n("endScope must be object"),d;re(e,e.end,{key:"endScope"}),e.end=O(e.end,{joinWith:""})}function pe(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function ge(e){pe(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),me(e),fe(e)}function ve(e){function t(t,n){return new RegExp(u(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))}class o{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=L(e)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=t(O(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex((e,t)=>t>0&&e!==void 0),s=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,s)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new o;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),t.type==="begin"&&this.count++}exec(e){const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex;let t=n.exec(e);if(this.resumingScanAtSamePosition())if(t&&t.index===this.lastIndex);else{const n=this.getMatcher(0);n.lastIndex=this.lastIndex+1,t=n.exec(e)}return t&&(this.regexIndex+=t.position+1,this.regexIndex===this.count&&this.considerAll()),t}}function a(e){const t=new i;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:"begin"})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}function n(s,o){const i=s;if(s.isCompiled)return i;[xe,de,ge,te].forEach(e=>e(s,o)),e.compilerExtensions.forEach(e=>e(s,o)),s.__beforeBegin=null,[Oe,we,_e].forEach(e=>e(s,o)),s.isCompiled=!0;let r=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),r=s.keywords.$pattern,delete s.keywords.$pattern),r=r||/\w+/,s.keywords&&(s.keywords=oe(s.keywords,e.case_insensitive)),i.keywordPatternRe=t(r,!0),o&&(s.begin||(s.begin=/\B|\b/),i.beginRe=t(i.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(i.endRe=t(i.end)),i.terminatorEnd=u(i.end)||"",s.endsWithParent&&o.terminatorEnd&&(i.terminatorEnd+=(s.end?"|":"")+o.terminatorEnd)),s.illegal&&(i.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(e){return je(e==="self"?s:e)})),s.contains.forEach(function(e){n(e,i)}),s.starts&&n(s.starts,o),i.matcher=a(i),i}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=s(e.classNameAliases||{}),n(e)}function ae(e){return!!e&&(e.endsWithParent||ae(e.starts))}function je(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return s(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:ae(e)?s(e,{starts:e.starts?s(e.starts):null}):Object.isFrozen(e)?s(e):e}ie="11.8.0",ee=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},m=Y,f=s,_=Symbol("nomatch"),G=7,E=function(e){const o=Object.create(null),r=Object.create(null),d=[];let c=!0;const k="Could not find the language '{}', did you forget to load/include a language module?",E={disableAutodetect:!0,name:"Plain text",contains:[]};let t={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:K};function w(e){return t.noHighlightRe.test(e)}function A(e){let o=e.className+" ";o+=e.parentNode?e.parentNode.className:"";const n=t.languageDetectRe.exec(o);if(n){const t=s(n[1]);return t||(p(k.replace("{}",n[1])),p("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}return o.split(/\s+/).find(e=>w(e)||s(e))}function y(e,t,n){let o="",i="";typeof t=="object"?(o=e,n=t.ignoreIllegals,i=t.language):(a("10.7.0","highlight(lang, code, ...args) has been deprecated."),a("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),i=e,o=t),n===void 0&&(n=!0);const s={code:o,language:i};h("before:highlight",s);const r=s.result?s.result:v(s.language,s.code,n);return r.code=s.code,h("after:highlight",r),r}function v(e,i,a,r){const w=Object.create(null);function I(e,t){return e.keywords[t]}function z(){if(!l.keywords){u.addText(d);return}let n=0;l.keywordPatternRe.lastIndex=0;let e=l.keywordPatternRe.exec(d),t="";for(;e;){t+=d.substring(n,e.index);const s=h.case_insensitive?e[0].toLowerCase():e[0],o=I(l,s);if(o){const[n,i]=o;if(u.addText(t),t="",w[s]=(w[s]||0)+1,w[s]<=G&&(j+=i),n.startsWith("_"))t+=e[0];else{const t=h.classNameAliases[n]||n;b(e[0],t)}}else t+=e[0];n=l.keywordPatternRe.lastIndex,e=l.keywordPatternRe.exec(d)}t+=d.substring(n),u.addText(t)}function H(){if(d==="")return;let e=null;if(typeof l.subLanguage=="string"){if(!o[l.subLanguage]){u.addText(d);return}e=v(l.subLanguage,d,!0,S[l.subLanguage]),S[l.subLanguage]=e._top}else e=g(d,l.subLanguage.length?l.subLanguage:null);l.relevance>0&&(j+=e.relevance),u.__addSublanguage(e._emitter,e.language)}function p(){l.subLanguage!=null?H():z(),d=""}function b(e,t){if(e==="")return;u.startScope(t),u.addText(e),u.endScope()}function E(e,t){let n=1;const s=t.length-1;for(;n<=s;){if(!e._emit[n]){n++;continue}const s=h.classNameAliases[e[n]]||e[n],o=t[n];s?b(o,s):(d=o,z(),d=""),n++}}function F(e,t){return e.scope&&typeof e.scope=="string"&&u.openNode(h.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(b(d,h.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),d=""):e.beginScope._multi&&(E(e.beginScope,t),d="")),l=Object.create(e,{parent:{value:l}}),l}function M(e,t,n){let s=ke(e.endRe,n);if(s){if(e["on:end"]){const n=new T(e);e["on:end"](t,n),n.isMatchIgnored&&(s=!1)}if(s){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return M(e.parent,t,n)}function P(e){return l.matcher.regexIndex===0?(d+=e[0],1):(C=!0,0)}function R(e){const n=e[0],t=e.rule,s=new T(t),o=[t.__beforeBegin,t["on:begin"]];for(const t of o){if(!t)continue;if(t(e,s),s.isMatchIgnored)return P(n)}return t.skip?d+=n:(t.excludeBegin&&(d+=n),p(),!t.returnBegin&&!t.excludeBegin&&(d=n)),F(t,e),t.returnBegin?0:n.length}function L(e){const t=e[0],o=i.substring(e.index),s=M(l,e,o);if(!s)return _;const n=l;l.endScope&&l.endScope._wrap?(p(),b(t,l.endScope._wrap)):l.endScope&&l.endScope._multi?(p(),E(l.endScope,e)):n.skip?d+=t:(n.returnEnd||n.excludeEnd||(d+=t),p(),n.excludeEnd&&(d=t));do l.scope&&u.closeNode(),!l.skip&&!l.subLanguage&&(j+=l.relevance),l=l.parent;while(l!==s.parent)return s.starts&&F(s.starts,e),n.returnEnd?0:t.length}function D(){const e=[];for(let t=l;t!==h;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>u.openNode(e))}let y={};function A(t,n){const s=n&&n[0];if(d+=t,s==null)return p(),0;if(y.type==="begin"&&n.type==="end"&&y.index===n.index&&s===""){if(d+=i.slice(n.index,n.index+1),!c){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=y.rule,t}return 1}if(y=n,n.type==="begin")return R(n);if(n.type==="illegal"&&!a){const e=new Error('Illegal lexeme "'+s+'" for mode "'+(l.scope||"")+'"');throw e.mode=l,e}if(n.type==="end"){const e=L(n);if(e!==_)return e}if(n.type==="illegal"&&s==="")return 1;if(O>1e5&&O>n.index*3){const e=new Error("potential infinite loop, way more iterations than matches");throw e}return d+=s,s.length}const h=s(e);if(!h)throw n(k.replace("{}",e)),new Error('Unknown language: "'+e+'"');const N=ve(h);let x="",l=r||N;const S={},u=new t.__emitter(t);D();let d="",j=0,f=0,O=0,C=!1;try{if(h.__emitTokens)h.__emitTokens(i,u);else{for(l.matcher.considerAll();;){O++,C?C=!1:l.matcher.considerAll(),l.matcher.lastIndex=f;const e=l.matcher.exec(i);if(!e)break;const t=i.substring(f,e.index),n=A(t,e);f=e.index+n}A(i.substring(f))}return u.finalize(),x=u.toHTML(),{language:e,value:x,relevance:j,illegal:!1,_emitter:u,_top:l}}catch(t){if(t.message&&t.message.includes("Illegal"))return{language:e,value:m(i),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:f,context:i.slice(f-100,f+100),mode:t.mode,resultSoFar:x},_emitter:u};if(c)return{language:e,value:m(i),illegal:!1,relevance:0,errorRaised:t,_emitter:u,_top:l};throw t}}function V(e){const n={value:m(e),illegal:!1,relevance:0,_top:E,_emitter:new t.__emitter(t)};return n._emitter.addText(e),n}function g(e,n){n=n||t.languages||Object.keys(o);const r=V(e),i=n.filter(s).filter(x).map(t=>v(t,e,!1));i.unshift(r);const c=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(s(e.language).supersetOf===t.language)return 1;if(s(t.language).supersetOf===e.language)return-1}return 0}),[l,d]=c,a=l;return a.secondBest=d,a}function P(e,t,n){const s=t&&r[t]||n;e.classList.add("hljs"),e.classList.add(`language-${s}`)}function b(e){let i=null;const s=A(e);if(w(s))return;if(h("before:highlightElement",{el:e,language:s}),e.children.length>0&&(t.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(e)),t.throwUnescapedHTML)){const t=new ee("One of your code blocks includes unescaped HTML.",e.innerHTML);throw t}i=e;const o=i.textContent,n=s?y(o,{language:s,ignoreIllegals:!0}):g(o);e.innerHTML=n.value,P(e,s,n.language),e.result={language:n.language,re:n.relevance,relevance:n.relevance},n.secondBest&&(e.secondBest={language:n.secondBest.language,relevance:n.secondBest.relevance}),h("after:highlightElement",{el:e,result:n,text:o})}function R(e){t=f(t,e)}const L=()=>{u(),a("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function M(){u(),a("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let O=!1;function u(){if(document.readyState==="loading"){O=!0;return}const e=document.querySelectorAll(t.cssSelector);e.forEach(b)}function F(){O&&u()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",F,!1);function z(t,s){let i=null;try{i=s(e)}catch(e){if(n("Language definition for '{}' could not be registered.".replace("{}",t)),!c)throw e;n(e),i=E}i.name||(i.name=t),o[t]=i,i.rawDefinition=s.bind(null,e),i.aliases&&C(i.aliases,{languageName:t})}function D(e){delete o[e];for(const t of Object.keys(r))r[t]===e&&delete r[t]}function N(){return Object.keys(o)}function s(e){return e=(e||"").toLowerCase(),o[e]||o[r[e]]}function C(e,{languageName:t}){typeof e=="string"&&(e=[e]),e.forEach(e=>{r[e.toLowerCase()]=t})}function x(e){const t=s(e);return t&&!t.disableAutodetect}function H(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}function I(e){H(e),d.push(e)}function B(e){const t=d.indexOf(e);t!==-1&&d.splice(t,1)}function h(e,t){const n=e;d.forEach(function(e){e[n]&&e[n](t)})}function $(e){return a("10.7.0","highlightBlock will be removed entirely in v12.0"),a("10.7.0","Please use highlightElement now."),b(e)}Object.assign(e,{highlight:y,highlightAuto:g,highlightAll:u,highlightElement:b,highlightBlock:$,configure:R,initHighlighting:L,initHighlightingOnLoad:M,registerLanguage:z,unregisterLanguage:D,listLanguages:N,getLanguage:s,registerAliases:C,autoDetection:x,inherit:f,addPlugin:I,removePlugin:B}),e.debugMode=function(){c=!1},e.safeMode=function(){c=!0},e.versionString=ie,e.regex={concat:i,lookahead:le,either:j,optional:he,anyNumberOfTimes:ue};for(const e in l)typeof l[e]=="object"&&S(l[e]);return Object.assign(e,l),e},o=E({}),o.newInstance=()=>E({}),t.exports=o,o.HighlightJS=o,o.default=o}}),d=u(j(),1),e=d.default,r="[A-Za-z$_][0-9A-Za-z$_]*",m=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],c=["true","false","null","undefined","NaN","Infinity"],a=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],i=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],o=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],b=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],l=[].concat(o,a,i);function y(e){const n=e.regex,I=(e,{after:t})=>{const n="",end:""},T=/<[A-Za-z0-9\\._:-]+\s*\/>/,h={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,s=e.input[n];if(s==="<"||s===","){t.ignoreMatch();return}s===">"&&(I(e,{after:n})||t.ignoreMatch());let o;const i=e.input.substring(n);if(o=i.match(/^\s*=/)){t.ignoreMatch();return}if((o=i.match(/^\s+extends\s+/))&&o.index===0){t.ignoreMatch();return}}},s={$pattern:r,keyword:m,literal:c,built_in:l,"variable.language":b},y="[0-9](_?[0-9])*",f=`\\.(${y})`,j=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,v={className:"number",variants:[{begin:`(\\b(${j})((${f})|\\.)?|(${f}))[eE][+-]?(${y})\\b`},{begin:`\\b(${j})\\b((${f})\\b|\\.)?|(${f})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:s,contains:[]},_={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},w={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},O={begin:"gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},x={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},M=e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),g={className:"comment",variants:[M,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},k=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,_,w,O,x,{match:/\$\d+/},v];d.contains=k.concat({begin:/\{/,end:/\}/,keywords:s,contains:["self"].concat(k)});const A=[].concat(g,d.contains),p=A.concat([{begin:/\(/,end:/\)/,keywords:s,contains:["self"].concat(A)}]),u={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:p},F={variants:[{match:[/class/,/\s+/,t,/\s+/,/extends/,/\s+/,n.concat(t,"(",n.concat(/\./,t),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,t],scope:{1:"keyword",3:"title.class"}}]},C={relevance:0,match:n.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...a,...i]}},z={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,t,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[u],illegal:/%/},N={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function L(e){return n.concat("(?!",e.join("|"),")")}const R={match:n.concat(/\b/,L([...o,"super","import"]),t,n.lookahead(/\(/)),className:"title.function",relevance:0},P={begin:n.concat(/\./,n.lookahead(n.concat(t,/(?![0-9A-Za-z$_(])/))),end:t,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},H={match:[/get|set/,/\s+/,t,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},u]},S="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",B={match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(S)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[u]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:s,exports:{PARAMS_CONTAINS:p,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),z,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,_,w,O,x,g,{match:/\$\d+/},v,C,{className:"attr",begin:t+n.lookahead(":"),relevance:0},B,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:S,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:p}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:E.begin,end:E.end},{match:T},{begin:h.begin,"on:begin":h.isTrulyOpeningTag,end:h.end}],subLanguage:"xml",contains:[{begin:h.begin,end:h.end,skip:!0,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[u,e.inherit(e.TITLE_MODE,{begin:t,className:"title.function"})]},{match:/\.\.\./,relevance:0},P,{match:"\\$"+t,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[u]},R,N,F,H,{match:/\$[(.]/}]}}function _(e){const n={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},s={match:/[{}[\],:]/,className:"punctuation",relevance:0},t=["true","false","null"],o={scope:"literal",beginKeywords:t.join(" ")};return{name:"JSON",keywords:{literal:t},contains:[n,s,e.QUOTE_STRING_MODE,o,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function w(e){const l=e.regex,t={},a={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:l.concat(/\$[\w\d#@][\w\d_]*/,`(?![\\w\\d])(?![$])`)},a]});const n={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},u={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},s={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t,n]};n.contains.push(s);const r={className:"",begin:/\\"/},c={className:"string",begin:/'/,end:/'/},o={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]},d=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],i=e.SHEBANG({binary:`(${d.join("|")})`,relevance:10}),h={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"],f=["true","false"],p={match:/(\/[a-z._-]+)+/},g=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],v=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],b=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],j=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:f,built_in:[...g,...v,"set","shopt",...b,...j]},contains:[i,e.SHEBANG(),h,o,e.HASH_COMMENT_MODE,u,p,s,r,c,t]}}function O(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},r=e.inherit(o,{begin:/\(/,end:/\)/}),c=e.inherit(e.APOS_STRING_MODE,{className:"string"}),i=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),a={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,i,c,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,r,i,c]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[i]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[a],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[a],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:a}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function n(e){const n=e.regex,s={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},t=e.COMMENT();t.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const o={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},i={className:"literal",begin:/\bon|off|true|false|yes|no\b/},a={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[t,i,o,a,s,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,d=/"(\\"|[^"])*"/,u=/'[^']*'/,r=n.either(l,d,u),h=n.concat(r,"(\\s*\\.\\s*",r,")*",n.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[t,{className:"section",begin:/\[+/,end:/\]+/},{begin:h,className:"attr",starts:{end:/$/,contains:[t,c,i,o,a,s]}}]}}function C(e){const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",g={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},p={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},a={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,p]},h=e.inherit(a,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l="[0-9]{4}(-[0-9][0-9]){0,2}",c="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",r="(\\.[0-9]*)?",d="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",u={className:"number",begin:"\\b"+l+c+r+d+"\\b"},o={end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},m={begin:/\{/,end:/\}/,contains:[o],illegal:`\\n`,relevance:0},f={begin:"\\[",end:"\\]",contains:[o],illegal:`\\n`,relevance:0},i=[g,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},u,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},m,f,a],s=[...i];return s.pop(),s.push(h),o.contains=s,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:i}}function E(e){const h=e.regex,i={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},m={begin:"^[-\\*]{3,}",end:"$"},c={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},u={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},d={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,o={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:h.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},s={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},n={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},r=e.inherit(s,{contains:[]}),a=e.inherit(n,{contains:[]});s.contains.push(a),n.contains.push(r);let t=[i,o];[s,n,r,a].forEach(e=>{e.contains=e.contains.concat(t)}),t=t.concat(s,n);const f={className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:t},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:`\\n`,contains:t}]}]},p={className:"quote",begin:"^>\\s+",contains:t,end:"$"};return{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[f,i,u,s,n,p,c,m,o,d]}}function k(e){const p=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],g=["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],f=["__debug__","Ellipsis","False","None","NotImplemented","True"],m=["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,built_in:g,literal:f,type:m},t={className:"meta",begin:/^(>>>|\.\.\.) /},o={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},i={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,t,i,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,t,i,o]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,i,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i,o]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},s="[0-9](_?[0-9])*",d=`(\\b(${s}))?\\.(${s})|\\b(${s})\\.`,n=`\\b|${u.join("|")}`,r={className:"number",relevance:0,variants:[{begin:`(\\b(${s})|(${d}))[eE][+-]?(${s})[jJ]?(?=${n})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${n})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${n})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${n})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${n})`},{begin:`\\b(${s})[jJ](?=${n})`}]},v={className:"comment",begin:p.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},h={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",t,r,c,e.HASH_COMMENT_MODE]}]};return o.contains=[c,r,t],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[t,r,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,v,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[h]},{variants:[{match:[/\bclass/,/\s+/,a,/\s*/,/\(\s*/,a,/\s*\)/]},{match:[/\bclass/,/\s+/,a]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[r,h,c]}]}}function A(e){const n=["true","false","iota","nil"],s=["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"],o=["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],i=["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],t={keyword:i,type:o,literal:n,built_in:s};return{name:"Go",aliases:["golang"],keywords:t,illegal:"{document.querySelectorAll("pre code:not(.language-mermaid)").forEach(t=>{e.highlightElement(t)})})})() \ No newline at end of file +https://github.com/highlightjs/highlight.js/issues/2277`),i=e,o=t),n===void 0&&(n=!0);const s={code:o,language:i};h("before:highlight",s);const r=s.result?s.result:v(s.language,s.code,n);return r.code=s.code,h("after:highlight",r),r}function v(e,i,a,r){const w=Object.create(null);function I(e,t){return e.keywords[t]}function z(){if(!l.keywords){u.addText(d);return}let n=0;l.keywordPatternRe.lastIndex=0;let e=l.keywordPatternRe.exec(d),t="";for(;e;){t+=d.substring(n,e.index);const s=h.case_insensitive?e[0].toLowerCase():e[0],o=I(l,s);if(o){const[n,i]=o;if(u.addText(t),t="",w[s]=(w[s]||0)+1,w[s]<=G&&(j+=i),n.startsWith("_"))t+=e[0];else{const t=h.classNameAliases[n]||n;b(e[0],t)}}else t+=e[0];n=l.keywordPatternRe.lastIndex,e=l.keywordPatternRe.exec(d)}t+=d.substring(n),u.addText(t)}function H(){if(d==="")return;let e=null;if(typeof l.subLanguage=="string"){if(!o[l.subLanguage]){u.addText(d);return}e=v(l.subLanguage,d,!0,S[l.subLanguage]),S[l.subLanguage]=e._top}else e=g(d,l.subLanguage.length?l.subLanguage:null);l.relevance>0&&(j+=e.relevance),u.__addSublanguage(e._emitter,e.language)}function p(){l.subLanguage!=null?H():z(),d=""}function b(e,t){if(e==="")return;u.startScope(t),u.addText(e),u.endScope()}function E(e,t){let n=1;const s=t.length-1;for(;n<=s;){if(!e._emit[n]){n++;continue}const s=h.classNameAliases[e[n]]||e[n],o=t[n];s?b(o,s):(d=o,z(),d=""),n++}}function F(e,t){return e.scope&&typeof e.scope=="string"&&u.openNode(h.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(b(d,h.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),d=""):e.beginScope._multi&&(E(e.beginScope,t),d="")),l=Object.create(e,{parent:{value:l}}),l}function M(e,t,n){let s=ke(e.endRe,n);if(s){if(e["on:end"]){const n=new T(e);e["on:end"](t,n),n.isMatchIgnored&&(s=!1)}if(s){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return M(e.parent,t,n)}function P(e){return l.matcher.regexIndex===0?(d+=e[0],1):(C=!0,0)}function R(e){const n=e[0],t=e.rule,s=new T(t),o=[t.__beforeBegin,t["on:begin"]];for(const t of o){if(!t)continue;if(t(e,s),s.isMatchIgnored)return P(n)}return t.skip?d+=n:(t.excludeBegin&&(d+=n),p(),!t.returnBegin&&!t.excludeBegin&&(d=n)),F(t,e),t.returnBegin?0:n.length}function L(e){const t=e[0],o=i.substring(e.index),s=M(l,e,o);if(!s)return _;const n=l;l.endScope&&l.endScope._wrap?(p(),b(t,l.endScope._wrap)):l.endScope&&l.endScope._multi?(p(),E(l.endScope,e)):n.skip?d+=t:(n.returnEnd||n.excludeEnd||(d+=t),p(),n.excludeEnd&&(d=t));do l.scope&&u.closeNode(),!l.skip&&!l.subLanguage&&(j+=l.relevance),l=l.parent;while(l!==s.parent)return s.starts&&F(s.starts,e),n.returnEnd?0:t.length}function D(){const e=[];for(let t=l;t!==h;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>u.openNode(e))}let y={};function A(t,n){const s=n&&n[0];if(d+=t,s==null)return p(),0;if(y.type==="begin"&&n.type==="end"&&y.index===n.index&&s===""){if(d+=i.slice(n.index,n.index+1),!c){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=y.rule,t}return 1}if(y=n,n.type==="begin")return R(n);if(n.type==="illegal"&&!a){const e=new Error('Illegal lexeme "'+s+'" for mode "'+(l.scope||"")+'"');throw e.mode=l,e}if(n.type==="end"){const e=L(n);if(e!==_)return e}if(n.type==="illegal"&&s==="")return 1;if(O>1e5&&O>n.index*3){const e=new Error("potential infinite loop, way more iterations than matches");throw e}return d+=s,s.length}const h=s(e);if(!h)throw n(k.replace("{}",e)),new Error('Unknown language: "'+e+'"');const N=ve(h);let x="",l=r||N;const S={},u=new t.__emitter(t);D();let d="",j=0,f=0,O=0,C=!1;try{if(h.__emitTokens)h.__emitTokens(i,u);else{for(l.matcher.considerAll();;){O++,C?C=!1:l.matcher.considerAll(),l.matcher.lastIndex=f;const e=l.matcher.exec(i);if(!e)break;const t=i.substring(f,e.index),n=A(t,e);f=e.index+n}A(i.substring(f))}return u.finalize(),x=u.toHTML(),{language:e,value:x,relevance:j,illegal:!1,_emitter:u,_top:l}}catch(t){if(t.message&&t.message.includes("Illegal"))return{language:e,value:m(i),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:f,context:i.slice(f-100,f+100),mode:t.mode,resultSoFar:x},_emitter:u};if(c)return{language:e,value:m(i),illegal:!1,relevance:0,errorRaised:t,_emitter:u,_top:l};throw t}}function V(e){const n={value:m(e),illegal:!1,relevance:0,_top:E,_emitter:new t.__emitter(t)};return n._emitter.addText(e),n}function g(e,n){n=n||t.languages||Object.keys(o);const r=V(e),i=n.filter(s).filter(x).map(t=>v(t,e,!1));i.unshift(r);const c=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(s(e.language).supersetOf===t.language)return 1;if(s(t.language).supersetOf===e.language)return-1}return 0}),[l,d]=c,a=l;return a.secondBest=d,a}function P(e,t,n){const s=t&&r[t]||n;e.classList.add("hljs"),e.classList.add(`language-${s}`)}function b(e){let i=null;const s=A(e);if(w(s))return;if(h("before:highlightElement",{el:e,language:s}),e.children.length>0&&(t.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(e)),t.throwUnescapedHTML)){const t=new ee("One of your code blocks includes unescaped HTML.",e.innerHTML);throw t}i=e;const o=i.textContent,n=s?y(o,{language:s,ignoreIllegals:!0}):g(o);e.innerHTML=n.value,P(e,s,n.language),e.result={language:n.language,re:n.relevance,relevance:n.relevance},n.secondBest&&(e.secondBest={language:n.secondBest.language,relevance:n.secondBest.relevance}),h("after:highlightElement",{el:e,result:n,text:o})}function R(e){t=f(t,e)}const L=()=>{u(),a("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function M(){u(),a("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let O=!1;function u(){if(document.readyState==="loading"){O=!0;return}const e=document.querySelectorAll(t.cssSelector);e.forEach(b)}function F(){O&&u()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",F,!1);function z(t,s){let i=null;try{i=s(e)}catch(e){if(n("Language definition for '{}' could not be registered.".replace("{}",t)),!c)throw e;n(e),i=E}i.name||(i.name=t),o[t]=i,i.rawDefinition=s.bind(null,e),i.aliases&&C(i.aliases,{languageName:t})}function D(e){delete o[e];for(const t of Object.keys(r))r[t]===e&&delete r[t]}function N(){return Object.keys(o)}function s(e){return e=(e||"").toLowerCase(),o[e]||o[r[e]]}function C(e,{languageName:t}){typeof e=="string"&&(e=[e]),e.forEach(e=>{r[e.toLowerCase()]=t})}function x(e){const t=s(e);return t&&!t.disableAutodetect}function H(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}function I(e){H(e),d.push(e)}function B(e){const t=d.indexOf(e);t!==-1&&d.splice(t,1)}function h(e,t){const n=e;d.forEach(function(e){e[n]&&e[n](t)})}function $(e){return a("10.7.0","highlightBlock will be removed entirely in v12.0"),a("10.7.0","Please use highlightElement now."),b(e)}Object.assign(e,{highlight:y,highlightAuto:g,highlightAll:u,highlightElement:b,highlightBlock:$,configure:R,initHighlighting:L,initHighlightingOnLoad:M,registerLanguage:z,unregisterLanguage:D,listLanguages:N,getLanguage:s,registerAliases:C,autoDetection:x,inherit:f,addPlugin:I,removePlugin:B}),e.debugMode=function(){c=!1},e.safeMode=function(){c=!0},e.versionString=ie,e.regex={concat:i,lookahead:le,either:j,optional:he,anyNumberOfTimes:ue};for(const e in l)typeof l[e]=="object"&&S(l[e]);return Object.assign(e,l),e},o=E({}),o.newInstance=()=>E({}),t.exports=o,o.HighlightJS=o,o.default=o}}),d=u(j(),1),e=d.default,r="[A-Za-z$_][0-9A-Za-z$_]*",m=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],c=["true","false","null","undefined","NaN","Infinity"],a=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],i=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],o=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],b=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],l=[].concat(o,a,i);function y(e){const n=e.regex,I=(e,{after:t})=>{const n="",end:""},T=/<[A-Za-z0-9\\._:-]+\s*\/>/,h={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,s=e.input[n];if(s==="<"||s===","){t.ignoreMatch();return}s===">"&&(I(e,{after:n})||t.ignoreMatch());let o;const i=e.input.substring(n);if(o=i.match(/^\s*=/)){t.ignoreMatch();return}if((o=i.match(/^\s+extends\s+/))&&o.index===0){t.ignoreMatch();return}}},s={$pattern:r,keyword:m,literal:c,built_in:l,"variable.language":b},y="[0-9](_?[0-9])*",f=`\\.(${y})`,j=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,v={className:"number",variants:[{begin:`(\\b(${j})((${f})|\\.)?|(${f}))[eE][+-]?(${y})\\b`},{begin:`\\b(${j})\\b((${f})\\b|\\.)?|(${f})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:s,contains:[]},_={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},w={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},O={begin:"gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},x={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},M=e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:t+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),g={className:"comment",variants:[M,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},k=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,_,w,O,x,{match:/\$\d+/},v];d.contains=k.concat({begin:/\{/,end:/\}/,keywords:s,contains:["self"].concat(k)});const A=[].concat(g,d.contains),p=A.concat([{begin:/\(/,end:/\)/,keywords:s,contains:["self"].concat(A)}]),u={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:p},F={variants:[{match:[/class/,/\s+/,t,/\s+/,/extends/,/\s+/,n.concat(t,"(",n.concat(/\./,t),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,t],scope:{1:"keyword",3:"title.class"}}]},C={relevance:0,match:n.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...a,...i]}},z={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,t,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[u],illegal:/%/},N={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function L(e){return n.concat("(?!",e.join("|"),")")}const R={match:n.concat(/\b/,L([...o,"super","import"]),t,n.lookahead(/\(/)),className:"title.function",relevance:0},P={begin:n.concat(/\./,n.lookahead(n.concat(t,/(?![0-9A-Za-z$_(])/))),end:t,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},H={match:[/get|set/,/\s+/,t,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},u]},S="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",B={match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(S)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[u]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:s,exports:{PARAMS_CONTAINS:p,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),z,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,_,w,O,x,g,{match:/\$\d+/},v,C,{className:"attr",begin:t+n.lookahead(":"),relevance:0},B,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:S,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:p}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:E.begin,end:E.end},{match:T},{begin:h.begin,"on:begin":h.isTrulyOpeningTag,end:h.end}],subLanguage:"xml",contains:[{begin:h.begin,end:h.end,skip:!0,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[u,e.inherit(e.TITLE_MODE,{begin:t,className:"title.function"})]},{match:/\.\.\./,relevance:0},P,{match:"\\$"+t,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[u]},R,N,F,H,{match:/\$[(.]/}]}}function _(e){const n={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},s={match:/[{}[\],:]/,className:"punctuation",relevance:0},t=["true","false","null"],o={scope:"literal",beginKeywords:t.join(" ")};return{name:"JSON",keywords:{literal:t},contains:[n,s,e.QUOTE_STRING_MODE,o,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function w(e){const l=e.regex,t={},a={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:l.concat(/\$[\w\d#@][\w\d_]*/,`(?![\\w\\d])(?![$])`)},a]});const n={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},u={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},s={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t,n]};n.contains.push(s);const r={className:"",begin:/\\"/},c={className:"string",begin:/'/,end:/'/},o={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]},d=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],i=e.SHEBANG({binary:`(${d.join("|")})`,relevance:10}),h={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"],f=["true","false"],p={match:/(\/[a-z._-]+)+/},g=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],v=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],b=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],j=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:f,built_in:[...g,...v,"set","shopt",...b,...j]},contains:[i,e.SHEBANG(),h,o,e.HASH_COMMENT_MODE,u,p,s,r,c,t]}}function O(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},r=e.inherit(o,{begin:/\(/,end:/\)/}),c=e.inherit(e.APOS_STRING_MODE,{className:"string"}),i=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),a={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,i,c,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,r,i,c]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[i]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[a],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[a],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:a}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function n(e){const n=e.regex,s={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},t=e.COMMENT();t.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const o={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},i={className:"literal",begin:/\bon|off|true|false|yes|no\b/},a={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[t,i,o,a,s,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,d=/"(\\"|[^"])*"/,u=/'[^']*'/,r=n.either(l,d,u),h=n.concat(r,"(\\s*\\.\\s*",r,")*",n.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[t,{className:"section",begin:/\[+/,end:/\]+/},{begin:h,className:"attr",starts:{end:/$/,contains:[t,c,i,o,a,s]}}]}}function C(e){const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",g={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},p={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},a={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,p]},h=e.inherit(a,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l="[0-9]{4}(-[0-9][0-9]){0,2}",c="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",r="(\\.[0-9]*)?",d="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",u={className:"number",begin:"\\b"+l+c+r+d+"\\b"},o={end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},m={begin:/\{/,end:/\}/,contains:[o],illegal:`\\n`,relevance:0},f={begin:"\\[",end:"\\]",contains:[o],illegal:`\\n`,relevance:0},i=[g,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:`[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*`},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},u,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},m,f,a],s=[...i];return s.pop(),s.push(h),o.contains=s,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:i}}function E(e){const h=e.regex,i={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},m={begin:"^[-\\*]{3,}",end:"$"},c={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:`(~{3,})[^~](.|\\n)*?\\1~*[ ]*`},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:`(\\n)$`}],relevance:0}]},u={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},d={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,o={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:h.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},s={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},n={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},r=e.inherit(s,{contains:[]}),a=e.inherit(n,{contains:[]});s.contains.push(a),n.contains.push(r);let t=[i,o];[s,n,r,a].forEach(e=>{e.contains=e.contains.concat(t)}),t=t.concat(s,n);const f={className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:t},{begin:`(?=^.+?\\n[=-]{2,}$)`,contains:[{begin:"^[=-]*$"},{begin:"^",end:`\\n`,contains:t}]}]},p={className:"quote",begin:"^>\\s+",contains:t,end:"$"};return{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[f,i,u,s,n,p,c,m,o,d]}}function k(e){const p=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],g=["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],f=["__debug__","Ellipsis","False","None","NotImplemented","True"],m=["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,built_in:g,literal:f,type:m},t={className:"meta",begin:/^(>>>|\.\.\.) /},o={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},i={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,t,i,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,t,i,o]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,i,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i,o]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},s="[0-9](_?[0-9])*",d=`(\\b(${s}))?\\.(${s})|\\b(${s})\\.`,n=`\\b|${u.join("|")}`,r={className:"number",relevance:0,variants:[{begin:`(\\b(${s})|(${d}))[eE][+-]?(${s})[jJ]?(?=${n})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${n})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${n})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${n})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${n})`},{begin:`\\b(${s})[jJ](?=${n})`}]},v={className:"comment",begin:p.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},h={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",t,r,c,e.HASH_COMMENT_MODE]}]};return o.contains=[c,r,t],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[t,r,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,v,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[h]},{variants:[{match:[/\bclass/,/\s+/,a,/\s*/,/\(\s*/,a,/\s*\)/]},{match:[/\bclass/,/\s+/,a]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[r,h,c]}]}}function A(e){const n=["true","false","iota","nil"],s=["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"],o=["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],i=["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],t={keyword:i,type:o,literal:n,built_in:s};return{name:"Go",aliases:["golang"],keywords:t,illegal:"{document.querySelectorAll("pre code:not(.language-mermaid)").forEach(t=>{e.highlightElement(t)})})})() \ No newline at end of file diff --git a/main.min.3bb8f119f63c6e06aa99acc71b7037b0c5461db421d5a169df0b668ca079081263bcc72dccff7584205495b398338b1da5ab6051c7fd7d0dc8a29c73e0a86c97.js b/main.min.3bb8f119f63c6e06aa99acc71b7037b0c5461db421d5a169df0b668ca079081263bcc72dccff7584205495b398338b1da5ab6051c7fd7d0dc8a29c73e0a86c97.js deleted file mode 100644 index a6a883db..00000000 --- a/main.min.3bb8f119f63c6e06aa99acc71b7037b0c5461db421d5a169df0b668ca079081263bcc72dccff7584205495b398338b1da5ab6051c7fd7d0dc8a29c73e0a86c97.js +++ /dev/null @@ -1 +0,0 @@ -(()=>{var n=Object.create,e=Object.defineProperty,s=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,n)=>function(){return n||(0,e[t(e)[0]])((n={exports:{}}).exports,n),n.exports},r=(n,o,a,r)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of t(o))!i.call(n,c)&&c!==a&&e(n,c,{get:()=>o[c],enumerable:!(r=s(o,c))||r.enumerable});return n},c=(t,s,i)=>(i=t!=null?n(o(t)):{},r(s||!t||!t.__esModule?e(i,"default",{value:t,enumerable:!0}):i,t)),l=a({"node_modules/lazysizes/lazysizes.js"(e,t){(function(e,n){var s=n(e,e.document,Date);e.lazySizes=s,typeof t=="object"&&t.exports&&(t.exports=s)})(typeof window!="undefined"?window:{},function(t,n,s){"use strict";if(function(){var e,n={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",fastLoadedClass:"ls-is-cached",iframeLoadMode:0,srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:!0,ricTimeout:0,throttleDelay:125};o=t.lazySizesConfig||t.lazysizesConfig||{};for(e in n)e in o||(o[e]=n[e])}(),!n||!n.getElementsByClassName)return{init:function(){},cfg:o,noSupport:!0};var o,r,l=n.documentElement,T=t.HTMLPictureElement,d="addEventListener",i="getAttribute",c=t[d].bind(t),a=t.setTimeout,E=t.requestAnimationFrame||a,j=t.requestIdleCallback,C=/^picture$/i,F=["load","error","lazyincluded","_lazyloaded"],b={},S=Array.prototype.forEach,u=function(e,t){return b[t]||(b[t]=new RegExp("(\\s|^)"+t+"(\\s|$)")),b[t].test(e[i]("class")||"")&&b[t]},h=function(e,t){u(e,t)||e.setAttribute("class",(e[i]("class")||"").trim()+" "+t)},y=function(e,t){var n;(n=u(e,t))&&e.setAttribute("class",(e[i]("class")||"").replace(n," "))},_=function(e,t,n){var s=n?d:"removeEventListener";n&&_(e,t),F.forEach(function(n){e[s](n,t)})},p=function(e,t,s,o,i){var a=n.createEvent("Event");return s||(s={}),s.instance=r,a.initEvent(t,!o,!i),a.detail=s,e.dispatchEvent(a),a},O=function(e,n){var s;!T&&(s=t.picturefill||o.pf)?(n&&n.src&&!e[i]("srcset")&&e.setAttribute("srcset",n.src),s({reevaluate:!0,elements:[e]})):n&&n.src&&(e.src=n.src)},f=function(e,t){return(getComputedStyle(e,null)||{})[t]},x=function(e,t,n){for(n=n||e.offsetWidth;n49?function(){j(r,{timeout:t}),t!==o.ricTimeout&&(t=o.ricTimeout)}:g(function(){a(r)},!0);return function(e){var o;if((e=e===!0)&&(t=33),n)return;n=!0,o=l-(s.now()-i),o<0&&(o=0),e||o<9?c():a(c,o)}},k=function(e){var t,o,n=99,i=function(){t=null,e()},r=function(){var e=s.now()-o;e0,i&&f(s,"overflow")!="visible"&&(o=s.getBoundingClientRect(),i=D>o.left&&zo.top-1&&T500&&l.clientWidth>500?500:370:o.expand,r._defEx=c,f=c*o.expFactor,p=o.hFac,P=null,j2&&A>2&&!n.hidden?(j=f,b=0):A>1&&b>1&&v<6?j=c:j=Q),g!==s&&(V=innerWidth+s*p,q=innerHeight+s,h=s*-1,g=s),a=t[e].getBoundingClientRect(),(N=a.bottom)>=h&&(T=a.top)<=q&&(D=a.right)>=h*p&&(z=a.left)<=V&&(N||D||z||T)&&(o.loadHidden||U(t[e]))&&(x&&v<3&&!u&&(A<3||b<4)||se(t[e],s))){if(F(t[e]),m=!0,v>9)break}else!m&&x&&!d&&v<4&&b<4&&A>2&&(R[0]||o.preloadAfterLoad)&&(R[0]||!u&&(N||D||z||T||t[e][i](o.sizesAttr)!="auto"))&&(d=R[0]||t[e])}d&&!m&&F(d)}},e=M(H),I=function(e){var t=e.target;if(t._lazyCache){delete t._lazyCache;return}$(e),h(t,o.loadedClass),y(t,o.loadingClass),_(t,Y),p(t,"lazyloaded")},X=g(I),Y=function(e){X({target:e.target})},Z=function(e,t){var n=e.getAttribute("data-load-mode")||o.iframeLoadMode;n==0?e.contentWindow.location.replace(t):n==1&&(e.src=t)},J=function(e){var t,n=e[i](o.srcsetAttr);(t=o.customMedia[e[i]("data-media")||e[i]("media")])&&e.setAttribute("media",t),n&&e.setAttribute("srcset",n)},ee=g(function(e,t,n,s,r){var c,l,d,u,f,g;(f=p(e,"lazybeforeunveil",t)).defaultPrevented||(s&&(n?h(e,o.autosizesClass):e.setAttribute("sizes",s)),l=e[i](o.srcsetAttr),c=e[i](o.srcAttr),r&&(u=e.parentNode,d=u&&C.test(u.nodeName||"")),g=t.firesLoad||"src"in e&&(l||c||d),f={target:e},h(e,o.loadingClass),g&&(clearTimeout(B),B=a($,2500),_(e,Y,!0)),d&&S.call(u.getElementsByTagName("source"),J),l?e.setAttribute("srcset",l):c&&!d&&(G.test(e.nodeName)?Z(e,c):e.src=c),r&&(l||d)&&O(e,{src:c})),e._lazyRace&&delete e._lazyRace,y(e,o.lazyClass),m(function(){var t=e.complete&&e.naturalWidth>1;(!g||t)&&(t&&h(e,o.fastLoadedClass),I(f),e._lazyCache=!0,a(function(){"_lazyCache"in e&&delete e._lazyCache},9)),e.loading=="lazy"&&v--},!0)}),F=function(e){if(e._lazyRace)return;var s,t=te.test(e.nodeName),a=t&&(e[i](o.sizesAttr)||e[i]("sizes")),n=a=="auto";if((n||!x)&&t&&(e[i]("src")||e.srcset)&&!e.complete&&!u(e,o.errorClass)&&u(e,o.lazyClass))return;s=p(e,"lazyunveilread").detail,n&&w.updateElem(e,!0,e.offsetWidth),e._lazyRace=!0,v++,ee(e,s,n,a,t)},ne=k(function(){o.loadMode=3,e()}),K=function(){o.loadMode==3&&(o.loadMode=2),ne()},L=function(){if(x)return;if(s.now()-W<999){a(L,999);return}x=!0,o.loadMode=3,e(),c("scroll",K,!0)};return{_:function(){W=s.now(),r.elements=n.getElementsByClassName(o.lazyClass),R=n.getElementsByClassName(o.lazyClass+" "+o.preloadClass),c("scroll",e,!0),c("resize",e,!0),c("pageshow",function(e){if(e.persisted){var t=n.querySelectorAll("."+o.loadingClass);t.length&&t.forEach&&E(function(){t.forEach(function(e){e.complete&&F(e)})})}}),t.MutationObserver?new MutationObserver(e).observe(l,{childList:!0,subtree:!0,attributes:!0}):(l[d]("DOMNodeInserted",e,!0),l[d]("DOMAttrModified",e,!0),setInterval(e,999)),c("hashchange",e,!0),["focus","mouseover","click","load","transitionend","animationend"].forEach(function(t){n[d](t,e,!0)}),/d$|^c/.test(n.readyState)?L():(c("load",L),n[d]("DOMContentLoaded",e),a(L,2e4)),r.elements.length?(H(),m._lsFlush()):e()},checkElems:e,unveil:F,_aLSL:K}}(),w=function(){var e,i=g(function(e,t,n,s){var o,i,a;if(e._lazysizesWidth=s,s+="px",e.setAttribute("sizes",s),C.test(t.nodeName||"")){i=t.getElementsByTagName("source");for(o=0,a=i.length;o{var e,t,n,a,f=Object.create,o=Object.defineProperty,p=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,r=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty,h=(e,t)=>function(){return t||(0,e[i(e)[0]])((t={exports:{}}).exports,t),t.exports},u=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of i(t))!m.call(e,a)&&a!==n&&o(e,a,{get:()=>t[a],enumerable:!(s=p(t,a))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?f(r(e)):{},u(t||!e||!e.__esModule?o(n,"default",{value:e,enumerable:!0}):n,e)),l=h({"node_modules/clipboard/dist/clipboard.js"(e,t){(function(s,o){typeof e=="object"&&typeof t=="object"?t.exports=o():typeof define=="function"&&define.amd?define([],o):typeof e=="object"?e.ClipboardJS=o():s.ClipboardJS=o()})(e,function(){return function(){var n={686:function(e,t,n){"use strict";n.d(t,{default:function(){return p}});var a,r,h,m,p,g,v,b,j,F=n(279),M=n.n(F),S=n(370),x=n.n(S),w=n(817),d=n.n(w);function u(e){try{return document.execCommand(e)}catch{return!1}}m=function(t){var n=d()(t);return u("cut"),n},h=m;function T(e){var n,s=document.documentElement.getAttribute("dir")==="rtl",t=document.createElement("textarea");return t.style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[s?"right":"left"]="-9999px",n=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(n,"px"),t.setAttribute("readonly",""),t.value=e,t}r=function(t,n){var o,s=T(t);return n.container.appendChild(s),o=d()(s),u("copy"),s.remove(),o},j=function(t){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},n="";return typeof t=="string"?n=r(t,s):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(t?.type)?n=r(t.value,s):(n=d()(t),u("copy")),n},a=j;function i(e){return"@babel/helpers - typeof",typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?i=function(t){return typeof t}:i=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(e)}v=function(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=s.action,n=o===void 0?"copy":o,r=s.container,t=s.target,c=s.text;if(n!=="copy"&&n!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(t!==void 0)if(t&&i(t)==="object"&&t.nodeType===1){{if(n==="copy"&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(n==="cut"&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}}else throw new Error('Invalid "target" value, use a valid Element');if(c)return a(c,{container:r});if(t)return n==="cut"?h(t):a(t,{container:r})},b=v;function s(e){return"@babel/helpers - typeof",typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?s=function(t){return typeof t}:s=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s(e)}function _(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n,s=0;s0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof t.action=="function"?t.action:this.defaultAction,this.target=typeof t.target=="function"?t.target:this.defaultTarget,this.text=typeof t.text=="function"?t.text:this.defaultText,this.container=s(t.container)==="object"?t.container:document.body}},{key:"listenClick",value:function(t){var n=this;this.listener=x()(t,"click",function(e){return n.onClick(e)})}},{key:"onClick",value:function(t){var n=t.delegateTarget||t.currentTarget,s=this.action(n)||"copy",o=b({action:s,container:this.container,target:this.target(n),text:this.text(n)});this.emit(o?"success":"error",{action:s,text:o,trigger:n,clearSelection:function(){n&&n.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return c("action",t)}},{key:"defaultTarget",value:function(t){var n=c("target",t);if(n)return document.querySelector(n)}},{key:"defaultText",value:function(t){return c("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return a(t,n)}},{key:"cut",value:function(t){return h(t)}},{key:"isSupported",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],s=typeof t=="string"?[t]:t,n=!!document.queryCommandSupported;return s.forEach(function(e){n=n&&!!document.queryCommandSupported(e)}),n}}]),t}(M()),p=g},828:function(e){var t,n=9;typeof Element!="undefined"&&!Element.prototype.matches&&(t=Element.prototype,t.matches=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector);function s(e,t){for(;e&&e.nodeType!==n;){if(typeof e.matches=="function"&&e.matches(t))return e;e=e.parentNode}}e.exports=s},438:function(e,t,n){var o=n(828);function s(e,t,n,s,o){var i=a.apply(this,arguments);return e.addEventListener(n,i,o),{destroy:function(){e.removeEventListener(n,i,o)}}}function i(e,t,n,o,i){return typeof e.addEventListener=="function"?s.apply(null,arguments):typeof n=="function"?s.bind(null,document).apply(null,arguments):(typeof e=="string"&&(e=document.querySelectorAll(e)),Array.prototype.map.call(e,function(e){return s(e,t,n,o,i)}))}function a(e,t,n,s){return function(n){n.delegateTarget=o(n.target,t),n.delegateTarget&&s.call(e,n)}}e.exports=i},879:function(e,t){t.node=function(e){return e!==void 0&&e instanceof HTMLElement&&e.nodeType===1},t.nodeList=function(e){var n=Object.prototype.toString.call(e);return e!==void 0&&(n==="[object NodeList]"||n==="[object HTMLCollection]")&&"length"in e&&(e.length===0||t.node(e[0]))},t.string=function(e){return typeof e=="string"||e instanceof String},t.fn=function(e){var t=Object.prototype.toString.call(e);return t==="[object Function]"}},370:function(e,t,n){var s=n(879),o=n(438);function i(e,t,n){if(!e&&!t&&!n)throw new Error("Missing required arguments");if(!s.string(t))throw new TypeError("Second argument must be a String");if(!s.fn(n))throw new TypeError("Third argument must be a Function");if(s.node(e))return a(e,t,n);if(s.nodeList(e))return r(e,t,n);if(s.string(e))return c(e,t,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function a(e,t,n){return e.addEventListener(t,n),{destroy:function(){e.removeEventListener(t,n)}}}function r(e,t,n){return Array.prototype.forEach.call(e,function(e){e.addEventListener(t,n)}),{destroy:function(){Array.prototype.forEach.call(e,function(e){e.removeEventListener(t,n)})}}}function c(e,t,n){return o(document.body,e,t,n)}e.exports=i},817:function(e){function t(e){if(e.nodeName==="SELECT")e.focus(),t=e.value;else if(e.nodeName==="INPUT"||e.nodeName==="TEXTAREA"){var t,n,s,o=e.hasAttribute("readonly");o||e.setAttribute("readonly",""),e.select(),e.setSelectionRange(0,e.value.length),o||e.removeAttribute("readonly"),t=e.value}else e.hasAttribute("contenteditable")&&e.focus(),n=window.getSelection(),s=document.createRange(),s.selectNodeContents(e),n.removeAllRanges(),n.addRange(s),t=n.toString();return t}e.exports=t},279:function(e){function t(){}t.prototype={on:function(e,t,n){var s=this.e||(this.e={});return(s[e]||(s[e]=[])).push({fn:t,ctx:n}),this},once:function(e,t,n){var o=this;function s(){o.off(e,s),t.apply(n,arguments)}return s._=t,this.on(e,s,n)},emit:function(e){var s=[].slice.call(arguments,1),n=((this.e||(this.e={}))[e]||[]).slice(),t=0,o=n.length;for(t;t');t=new d.default(".btn-copy",{target:function(e){return e.nextElementSibling}}),t.on("success",function(e){e.clearSelection()}),t.on("error",function(e){console.error("Action:",e.action),console.error("Trigger:",e.trigger)})})(),(()=>{var e,o,c,l,d,s=null,a=65,r=new Set,i=1111;u();function u(){const v=document.createElement("link").relList.supports("prefetch");if(!v)return;const b="instantVaryAccept"in document.body.dataset||"Shopify"in window,i=navigator.userAgent.indexOf("Chrome/");if(i>-1&&(s=parseInt(navigator.userAgent.substring(i+"Chrome/".length))),b&&s&&s<110)return;const r="instantMousedownShortcut"in document.body.dataset;d="instantAllowQueryString"in document.body.dataset,l="instantAllowExternalLinks"in document.body.dataset,c="instantWhitelist"in document.body.dataset;const e={capture:!0,passive:!0};let u=!1,p=!1,o=!1;if("instantIntensity"in document.body.dataset){const e=document.body.dataset.instantIntensity;if(e.startsWith("mousedown"))u=!0,e=="mousedown-only"&&(p=!0);else if(e.startsWith("viewport")){const t=navigator.connection&&navigator.connection.saveData,n=navigator.connection&&navigator.connection.effectiveType&&navigator.connection.effectiveType.includes("2g");!t&&!n&&(e=="viewport"?document.documentElement.clientWidth*document.documentElement.clientHeight<45e4&&(o=!0):e=="viewport-all"&&(o=!0))}else{const t=parseInt(e);isNaN(t)||(a=t)}}if(p||document.addEventListener("touchstart",h,e),u?r||document.addEventListener("mousedown",f,e):document.addEventListener("mouseover",m,e),r&&document.addEventListener("mousedown",g,e),o){let e=window.requestIdleCallback;e||(e=e=>{e()}),e(function(){const s=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting){const n=e.target;s.unobserve(n),t(n.href)}})});document.querySelectorAll("a").forEach(e=>{n(e)&&s.observe(e)})},{timeout:1500})}}function h(e){o=performance.now();const s=e.target.closest("a");if(!n(s))return;t(s.href,"high")}function m(s){if(performance.now()-o{t(r.href,"high"),e=void 0},a)}function f(e){const s=e.target.closest("a");if(!n(s))return;t(s.href,"high")}function p(t){if(t.relatedTarget&&t.target.closest("a")==t.relatedTarget.closest("a"))return;e&&(clearTimeout(e),e=void 0)}function g(e){if(performance.now()-o1||e.metaKey||e.ctrlKey)return;if(!t)return;t.addEventListener("click",function(e){if(e.detail==1337)return;e.preventDefault()},{capture:!0,passive:!1,once:!0});const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1,detail:1337});t.dispatchEvent(n)}function n(e){if(!e||!e.href)return;if(c&&!("instant"in e.dataset))return;if(e.origin!=location.origin){let t=l||"instant"in e.dataset;if(!t||!s)return}if(!["http:","https:"].includes(e.protocol))return;if(e.protocol=="http:"&&location.protocol=="https:")return;if(!d&&e.search&&!("instant"in e.dataset))return;if(e.hash&&e.pathname+e.search==location.pathname+location.search)return;if("noInstant"in e.dataset)return;return!0}function t(e,t="auto"){if(r.has(e))return;const n=document.createElement("link");n.rel="prefetch",n.href=e,n.fetchPriority=t,n.as="document",document.head.appendChild(n),r.add(e)}})(),function e(t){"use strict";try{module&&(t=module)}catch{}t._factory=e;function b(e){return"undefined"==typeof e||e}function S(e){const t=Array(e);for(let s=0;s=this.B&&(m||!d[p])){var i,r,l,a=y(h,o,g),c="";switch(this.G){case"full":if(2a;i--)i-a>=this.B&&(l=y(h,o,g,r,a),c=p.substring(a,i),u(this,d,c,l,e,s));break}case"reverse":if(1=this.B&&u(this,d,c,y(h,o,g,r,i),e,s);c=""}case"forward":if(1=this.B&&u(this,d,c,a,e,s);break}default:if(this.C&&(a=Math.min(a/this.C(t,p,g)|0,h-1)),u(this,d,p,a,e,s),m&&1=this.B&&!r[p]){r[p]=1;const t=this.l&&p>a;u(this,f,t?a:p,y(c+(o/2>c?0:1),o,g,i-1,l-1),e,s,t?p:a)}}}}this.m||(this.register[e]=1)}}return this};function y(e,t,n,s,o){return n&&1=this.B&&!s[t])if(this.s||r||this.map[t])l[a++]=t,s[t]=1;else return i;e=l,o=e.length}if(!o)return i;t||(t=100),c=this.depth&&1=s))))break;if(n){if(i)return z(l,s,0);t[t.length]=l;return}}return!n&&l}function z(e,t,n){return e=1===e.length?e[0]:[].concat.apply([],e),n||e.length>t?e.slice(n,n+t):e}function D(e,t,n,s){return n?(s=s&&t>n,e=(e=e[s?t:n])&&e[s?n:t]):e=e[t],e}s.contain=function(e){return!!this.register[e]},s.update=function(e,t){return this.remove(e).add(e,t)},s.remove=function(e,t){const n=this.register[e];if(n){if(this.m)for(let t=0,s;tt||n)&&(o=o.slice(n,n+t)),s&&(o=q.call(this,o)),{tag:e,result:o}}function q(e){const t=Array(e.length);for(let n=0,s;n{var e=document.getElementById("mode");e!==null&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e=>{e.matches?(localStorage.setItem("theme","dark"),document.documentElement.setAttribute("data-dark-mode","")):(localStorage.setItem("theme","light"),document.documentElement.removeAttribute("data-dark-mode"))}),e.addEventListener("click",()=>{document.documentElement.toggleAttribute("data-dark-mode"),localStorage.setItem("theme",document.documentElement.hasAttribute("data-dark-mode")?"dark":"light")}),localStorage.getItem("theme")==="dark"?document.documentElement.setAttribute("data-dark-mode",""):document.documentElement.removeAttribute("data-dark-mode"))})(),(()=>{var t,e=document.getElementById("announcement");e!==null&&(t=e.dataset.id,Object.keys(localStorage).forEach(function(e){/^global-alert-/.test(e)&&e!==t&&(localStorage.removeItem(e),document.documentElement.removeAttribute("data-global-alert"))}),e.addEventListener("closed.bs.alert",()=>{localStorage.setItem(t,"closed")}))})(),(()=>{if(document.querySelector("#sidebar-default")!==null){let e=document.getElementById("sidebar-default"),t=sessionStorage.getItem("sidebar-scroll");t!==null&&(e.scrollTop=parseInt(t,10)),window.addEventListener("beforeunload",()=>{sessionStorage.setItem("sidebar-scroll",e.scrollTop)})}})(),(()=>{var e=document.getElementById("toTop");e!==null&&(e.style.display="none",window.onscroll=function(){t()});function t(){document.body.scrollTop>40||document.documentElement.scrollTop>40?e.style.display="block":e.style.display="none"}})() \ No newline at end of file diff --git a/main.min.ea773c9f838681ca730da53d014a98775d502489db4d63b78abbcc309f3a1e4bf54a80566a552e96292b66df10a8951c912ad8c61a9f1c859269aee0acaf4653.js b/main.min.ea773c9f838681ca730da53d014a98775d502489db4d63b78abbcc309f3a1e4bf54a80566a552e96292b66df10a8951c912ad8c61a9f1c859269aee0acaf4653.js new file mode 100644 index 00000000..dc68fe72 --- /dev/null +++ b/main.min.ea773c9f838681ca730da53d014a98775d502489db4d63b78abbcc309f3a1e4bf54a80566a552e96292b66df10a8951c912ad8c61a9f1c859269aee0acaf4653.js @@ -0,0 +1,14 @@ +(()=>{var n=Object.create,e=Object.defineProperty,s=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,a=(e,n)=>function(){return n||(0,e[t(e)[0]])((n={exports:{}}).exports,n),n.exports},r=(n,o,a,r)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of t(o))!i.call(n,c)&&c!==a&&e(n,c,{get:()=>o[c],enumerable:!(r=s(o,c))||r.enumerable});return n},c=(t,s,i)=>(i=t!=null?n(o(t)):{},r(s||!t||!t.__esModule?e(i,"default",{value:t,enumerable:!0}):i,t)),l=a({"node_modules/lazysizes/lazysizes.js"(e,t){(function(e,n){var s=n(e,e.document,Date);e.lazySizes=s,typeof t=="object"&&t.exports&&(t.exports=s)})(typeof window!="undefined"?window:{},function(t,n,s){"use strict";if(function(){var e,n={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",fastLoadedClass:"ls-is-cached",iframeLoadMode:0,srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:!0,ricTimeout:0,throttleDelay:125};o=t.lazySizesConfig||t.lazysizesConfig||{};for(e in n)e in o||(o[e]=n[e])}(),!n||!n.getElementsByClassName)return{init:function(){},cfg:o,noSupport:!0};var o,r,l=n.documentElement,T=t.HTMLPictureElement,d="addEventListener",i="getAttribute",c=t[d].bind(t),a=t.setTimeout,E=t.requestAnimationFrame||a,j=t.requestIdleCallback,C=/^picture$/i,F=["load","error","lazyincluded","_lazyloaded"],b={},S=Array.prototype.forEach,u=function(e,t){return b[t]||(b[t]=new RegExp("(\\s|^)"+t+"(\\s|$)")),b[t].test(e[i]("class")||"")&&b[t]},h=function(e,t){u(e,t)||e.setAttribute("class",(e[i]("class")||"").trim()+" "+t)},y=function(e,t){var n;(n=u(e,t))&&e.setAttribute("class",(e[i]("class")||"").replace(n," "))},_=function(e,t,n){var s=n?d:"removeEventListener";n&&_(e,t),F.forEach(function(n){e[s](n,t)})},p=function(e,t,s,o,i){var a=n.createEvent("Event");return s||(s={}),s.instance=r,a.initEvent(t,!o,!i),a.detail=s,e.dispatchEvent(a),a},O=function(e,n){var s;!T&&(s=t.picturefill||o.pf)?(n&&n.src&&!e[i]("srcset")&&e.setAttribute("srcset",n.src),s({reevaluate:!0,elements:[e]})):n&&n.src&&(e.src=n.src)},f=function(e,t){return(getComputedStyle(e,null)||{})[t]},x=function(e,t,n){for(n=n||e.offsetWidth;n49?function(){j(r,{timeout:t}),t!==o.ricTimeout&&(t=o.ricTimeout)}:g(function(){a(r)},!0);return function(e){var o;if((e=e===!0)&&(t=33),n)return;n=!0,o=l-(s.now()-i),o<0&&(o=0),e||o<9?c():a(c,o)}},k=function(e){var t,o,n=99,i=function(){t=null,e()},r=function(){var e=s.now()-o;e0,i&&f(s,"overflow")!="visible"&&(o=s.getBoundingClientRect(),i=D>o.left&&zo.top-1&&T500&&l.clientWidth>500?500:370:o.expand,r._defEx=c,f=c*o.expFactor,p=o.hFac,P=null,j2&&A>2&&!n.hidden?(j=f,b=0):A>1&&b>1&&v<6?j=c:j=Q),g!==s&&(V=innerWidth+s*p,q=innerHeight+s,h=s*-1,g=s),a=t[e].getBoundingClientRect(),(N=a.bottom)>=h&&(T=a.top)<=q&&(D=a.right)>=h*p&&(z=a.left)<=V&&(N||D||z||T)&&(o.loadHidden||U(t[e]))&&(x&&v<3&&!u&&(A<3||b<4)||se(t[e],s))){if(F(t[e]),m=!0,v>9)break}else!m&&x&&!d&&v<4&&b<4&&A>2&&(R[0]||o.preloadAfterLoad)&&(R[0]||!u&&(N||D||z||T||t[e][i](o.sizesAttr)!="auto"))&&(d=R[0]||t[e])}d&&!m&&F(d)}},e=M(H),I=function(e){var t=e.target;if(t._lazyCache){delete t._lazyCache;return}$(e),h(t,o.loadedClass),y(t,o.loadingClass),_(t,Y),p(t,"lazyloaded")},X=g(I),Y=function(e){X({target:e.target})},Z=function(e,t){var n=e.getAttribute("data-load-mode")||o.iframeLoadMode;n==0?e.contentWindow.location.replace(t):n==1&&(e.src=t)},J=function(e){var t,n=e[i](o.srcsetAttr);(t=o.customMedia[e[i]("data-media")||e[i]("media")])&&e.setAttribute("media",t),n&&e.setAttribute("srcset",n)},ee=g(function(e,t,n,s,r){var c,l,d,u,f,g;(f=p(e,"lazybeforeunveil",t)).defaultPrevented||(s&&(n?h(e,o.autosizesClass):e.setAttribute("sizes",s)),l=e[i](o.srcsetAttr),c=e[i](o.srcAttr),r&&(u=e.parentNode,d=u&&C.test(u.nodeName||"")),g=t.firesLoad||"src"in e&&(l||c||d),f={target:e},h(e,o.loadingClass),g&&(clearTimeout(B),B=a($,2500),_(e,Y,!0)),d&&S.call(u.getElementsByTagName("source"),J),l?e.setAttribute("srcset",l):c&&!d&&(G.test(e.nodeName)?Z(e,c):e.src=c),r&&(l||d)&&O(e,{src:c})),e._lazyRace&&delete e._lazyRace,y(e,o.lazyClass),m(function(){var t=e.complete&&e.naturalWidth>1;(!g||t)&&(t&&h(e,o.fastLoadedClass),I(f),e._lazyCache=!0,a(function(){"_lazyCache"in e&&delete e._lazyCache},9)),e.loading=="lazy"&&v--},!0)}),F=function(e){if(e._lazyRace)return;var s,t=te.test(e.nodeName),a=t&&(e[i](o.sizesAttr)||e[i]("sizes")),n=a=="auto";if((n||!x)&&t&&(e[i]("src")||e.srcset)&&!e.complete&&!u(e,o.errorClass)&&u(e,o.lazyClass))return;s=p(e,"lazyunveilread").detail,n&&w.updateElem(e,!0,e.offsetWidth),e._lazyRace=!0,v++,ee(e,s,n,a,t)},ne=k(function(){o.loadMode=3,e()}),K=function(){o.loadMode==3&&(o.loadMode=2),ne()},L=function(){if(x)return;if(s.now()-W<999){a(L,999);return}x=!0,o.loadMode=3,e(),c("scroll",K,!0)};return{_:function(){W=s.now(),r.elements=n.getElementsByClassName(o.lazyClass),R=n.getElementsByClassName(o.lazyClass+" "+o.preloadClass),c("scroll",e,!0),c("resize",e,!0),c("pageshow",function(e){if(e.persisted){var t=n.querySelectorAll("."+o.loadingClass);t.length&&t.forEach&&E(function(){t.forEach(function(e){e.complete&&F(e)})})}}),t.MutationObserver?new MutationObserver(e).observe(l,{childList:!0,subtree:!0,attributes:!0}):(l[d]("DOMNodeInserted",e,!0),l[d]("DOMAttrModified",e,!0),setInterval(e,999)),c("hashchange",e,!0),["focus","mouseover","click","load","transitionend","animationend"].forEach(function(t){n[d](t,e,!0)}),/d$|^c/.test(n.readyState)?L():(c("load",L),n[d]("DOMContentLoaded",e),a(L,2e4)),r.elements.length?(H(),m._lsFlush()):e()},checkElems:e,unveil:F,_aLSL:K}}(),w=function(){var e,i=g(function(e,t,n,s){var o,i,a;if(e._lazysizesWidth=s,s+="px",e.setAttribute("sizes",s),C.test(t.nodeName||"")){i=t.getElementsByTagName("source");for(o=0,a=i.length;o{var e,t,n,a,f=Object.create,o=Object.defineProperty,p=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,r=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty,h=(e,t)=>function(){return t||(0,e[i(e)[0]])((t={exports:{}}).exports,t),t.exports},u=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of i(t))!m.call(e,a)&&a!==n&&o(e,a,{get:()=>t[a],enumerable:!(s=p(t,a))||s.enumerable});return e},c=(e,t,n)=>(n=e!=null?f(r(e)):{},u(t||!e||!e.__esModule?o(n,"default",{value:e,enumerable:!0}):n,e)),l=h({"node_modules/clipboard/dist/clipboard.js"(e,t){(function(s,o){typeof e=="object"&&typeof t=="object"?t.exports=o():typeof define=="function"&&define.amd?define([],o):typeof e=="object"?e.ClipboardJS=o():s.ClipboardJS=o()})(e,function(){return function(){var n={686:function(e,t,n){"use strict";n.d(t,{default:function(){return p}});var a,r,h,m,p,g,v,b,j,F=n(279),M=n.n(F),S=n(370),x=n.n(S),w=n(817),d=n.n(w);function u(e){try{return document.execCommand(e)}catch{return!1}}m=function(t){var n=d()(t);return u("cut"),n},h=m;function T(e){var n,s=document.documentElement.getAttribute("dir")==="rtl",t=document.createElement("textarea");return t.style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[s?"right":"left"]="-9999px",n=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(n,"px"),t.setAttribute("readonly",""),t.value=e,t}r=function(t,n){var o,s=T(t);return n.container.appendChild(s),o=d()(s),u("copy"),s.remove(),o},j=function(t){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},n="";return typeof t=="string"?n=r(t,s):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(t?.type)?n=r(t.value,s):(n=d()(t),u("copy")),n},a=j;function i(e){return"@babel/helpers - typeof",typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?i=function(t){return typeof t}:i=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(e)}v=function(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=s.action,n=o===void 0?"copy":o,r=s.container,t=s.target,c=s.text;if(n!=="copy"&&n!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(t!==void 0)if(t&&i(t)==="object"&&t.nodeType===1){{if(n==="copy"&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(n==="cut"&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}}else throw new Error('Invalid "target" value, use a valid Element');if(c)return a(c,{container:r});if(t)return n==="cut"?h(t):a(t,{container:r})},b=v;function s(e){return"@babel/helpers - typeof",typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?s=function(t){return typeof t}:s=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s(e)}function _(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n,s=0;s0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof t.action=="function"?t.action:this.defaultAction,this.target=typeof t.target=="function"?t.target:this.defaultTarget,this.text=typeof t.text=="function"?t.text:this.defaultText,this.container=s(t.container)==="object"?t.container:document.body}},{key:"listenClick",value:function(t){var n=this;this.listener=x()(t,"click",function(e){return n.onClick(e)})}},{key:"onClick",value:function(t){var n=t.delegateTarget||t.currentTarget,s=this.action(n)||"copy",o=b({action:s,container:this.container,target:this.target(n),text:this.text(n)});this.emit(o?"success":"error",{action:s,text:o,trigger:n,clearSelection:function(){n&&n.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return c("action",t)}},{key:"defaultTarget",value:function(t){var n=c("target",t);if(n)return document.querySelector(n)}},{key:"defaultText",value:function(t){return c("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return a(t,n)}},{key:"cut",value:function(t){return h(t)}},{key:"isSupported",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],s=typeof t=="string"?[t]:t,n=!!document.queryCommandSupported;return s.forEach(function(e){n=n&&!!document.queryCommandSupported(e)}),n}}]),t}(M()),p=g},828:function(e){var t,n=9;typeof Element!="undefined"&&!Element.prototype.matches&&(t=Element.prototype,t.matches=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector);function s(e,t){for(;e&&e.nodeType!==n;){if(typeof e.matches=="function"&&e.matches(t))return e;e=e.parentNode}}e.exports=s},438:function(e,t,n){var o=n(828);function s(e,t,n,s,o){var i=a.apply(this,arguments);return e.addEventListener(n,i,o),{destroy:function(){e.removeEventListener(n,i,o)}}}function i(e,t,n,o,i){return typeof e.addEventListener=="function"?s.apply(null,arguments):typeof n=="function"?s.bind(null,document).apply(null,arguments):(typeof e=="string"&&(e=document.querySelectorAll(e)),Array.prototype.map.call(e,function(e){return s(e,t,n,o,i)}))}function a(e,t,n,s){return function(n){n.delegateTarget=o(n.target,t),n.delegateTarget&&s.call(e,n)}}e.exports=i},879:function(e,t){t.node=function(e){return e!==void 0&&e instanceof HTMLElement&&e.nodeType===1},t.nodeList=function(e){var n=Object.prototype.toString.call(e);return e!==void 0&&(n==="[object NodeList]"||n==="[object HTMLCollection]")&&"length"in e&&(e.length===0||t.node(e[0]))},t.string=function(e){return typeof e=="string"||e instanceof String},t.fn=function(e){var t=Object.prototype.toString.call(e);return t==="[object Function]"}},370:function(e,t,n){var s=n(879),o=n(438);function i(e,t,n){if(!e&&!t&&!n)throw new Error("Missing required arguments");if(!s.string(t))throw new TypeError("Second argument must be a String");if(!s.fn(n))throw new TypeError("Third argument must be a Function");if(s.node(e))return a(e,t,n);if(s.nodeList(e))return r(e,t,n);if(s.string(e))return c(e,t,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function a(e,t,n){return e.addEventListener(t,n),{destroy:function(){e.removeEventListener(t,n)}}}function r(e,t,n){return Array.prototype.forEach.call(e,function(e){e.addEventListener(t,n)}),{destroy:function(){Array.prototype.forEach.call(e,function(e){e.removeEventListener(t,n)})}}}function c(e,t,n){return o(document.body,e,t,n)}e.exports=i},817:function(e){function t(e){if(e.nodeName==="SELECT")e.focus(),t=e.value;else if(e.nodeName==="INPUT"||e.nodeName==="TEXTAREA"){var t,n,s,o=e.hasAttribute("readonly");o||e.setAttribute("readonly",""),e.select(),e.setSelectionRange(0,e.value.length),o||e.removeAttribute("readonly"),t=e.value}else e.hasAttribute("contenteditable")&&e.focus(),n=window.getSelection(),s=document.createRange(),s.selectNodeContents(e),n.removeAllRanges(),n.addRange(s),t=n.toString();return t}e.exports=t},279:function(e){function t(){}t.prototype={on:function(e,t,n){var s=this.e||(this.e={});return(s[e]||(s[e]=[])).push({fn:t,ctx:n}),this},once:function(e,t,n){var o=this;function s(){o.off(e,s),t.apply(n,arguments)}return s._=t,this.on(e,s,n)},emit:function(e){var s=[].slice.call(arguments,1),n=((this.e||(this.e={}))[e]||[]).slice(),t=0,o=n.length;for(t;t');t=new d.default(".btn-copy",{target:function(e){return e.nextElementSibling}}),t.on("success",function(e){e.clearSelection()}),t.on("error",function(e){console.error("Action:",e.action),console.error("Trigger:",e.trigger)})})();/*! Bundled license information: + +clipboard/dist/clipboard.js: + (*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + *) +*/(()=>{var e,o,c,l,d,s=null,a=65,r=new Set,i=1111;u();function u(){const v=document.createElement("link").relList.supports("prefetch");if(!v)return;const b="instantVaryAccept"in document.body.dataset||"Shopify"in window,i=navigator.userAgent.indexOf("Chrome/");if(i>-1&&(s=parseInt(navigator.userAgent.substring(i+"Chrome/".length))),b&&s&&s<110)return;const r="instantMousedownShortcut"in document.body.dataset;d="instantAllowQueryString"in document.body.dataset,l="instantAllowExternalLinks"in document.body.dataset,c="instantWhitelist"in document.body.dataset;const e={capture:!0,passive:!0};let u=!1,p=!1,o=!1;if("instantIntensity"in document.body.dataset){const e=document.body.dataset.instantIntensity;if(e.startsWith("mousedown"))u=!0,e=="mousedown-only"&&(p=!0);else if(e.startsWith("viewport")){const t=navigator.connection&&navigator.connection.saveData,n=navigator.connection&&navigator.connection.effectiveType&&navigator.connection.effectiveType.includes("2g");!t&&!n&&(e=="viewport"?document.documentElement.clientWidth*document.documentElement.clientHeight<45e4&&(o=!0):e=="viewport-all"&&(o=!0))}else{const t=parseInt(e);isNaN(t)||(a=t)}}if(p||document.addEventListener("touchstart",h,e),u?r||document.addEventListener("mousedown",f,e):document.addEventListener("mouseover",m,e),r&&document.addEventListener("mousedown",g,e),o){let e=window.requestIdleCallback;e||(e=e=>{e()}),e(function(){const s=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting){const n=e.target;s.unobserve(n),t(n.href)}})});document.querySelectorAll("a").forEach(e=>{n(e)&&s.observe(e)})},{timeout:1500})}}function h(e){o=performance.now();const s=e.target.closest("a");if(!n(s))return;t(s.href,"high")}function m(s){if(performance.now()-o{t(r.href,"high"),e=void 0},a)}function f(e){const s=e.target.closest("a");if(!n(s))return;t(s.href,"high")}function p(t){if(t.relatedTarget&&t.target.closest("a")==t.relatedTarget.closest("a"))return;e&&(clearTimeout(e),e=void 0)}function g(e){if(performance.now()-o1||e.metaKey||e.ctrlKey)return;if(!t)return;t.addEventListener("click",function(e){if(e.detail==1337)return;e.preventDefault()},{capture:!0,passive:!1,once:!0});const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1,detail:1337});t.dispatchEvent(n)}function n(e){if(!e||!e.href)return;if(c&&!("instant"in e.dataset))return;if(e.origin!=location.origin){let t=l||"instant"in e.dataset;if(!t||!s)return}if(!["http:","https:"].includes(e.protocol))return;if(e.protocol=="http:"&&location.protocol=="https:")return;if(!d&&e.search&&!("instant"in e.dataset))return;if(e.hash&&e.pathname+e.search==location.pathname+location.search)return;if("noInstant"in e.dataset)return;return!0}function t(e,t="auto"){if(r.has(e))return;const n=document.createElement("link");n.rel="prefetch",n.href=e,n.fetchPriority=t,n.as="document",document.head.appendChild(n),r.add(e)}})();/*! Bundled license information: + +instant.page/instantpage.js: + (*! instant.page v5.2.0 - (C) 2019-2023 Alexandre Dieulot - https://instant.page/license *) +*/(function e(t){"use strict";try{module&&(t=module)}catch{}t._factory=e;function b(e){return"undefined"==typeof e||e}function S(e){const t=Array(e);for(let s=0;s=this.B&&(m||!d[p])){var i,r,l,a=y(h,o,g),c="";switch(this.G){case"full":if(2a;i--)i-a>=this.B&&(l=y(h,o,g,r,a),c=p.substring(a,i),u(this,d,c,l,e,s));break}case"reverse":if(1=this.B&&u(this,d,c,y(h,o,g,r,i),e,s);c=""}case"forward":if(1=this.B&&u(this,d,c,a,e,s);break}default:if(this.C&&(a=Math.min(a/this.C(t,p,g)|0,h-1)),u(this,d,p,a,e,s),m&&1=this.B&&!r[p]){r[p]=1;const t=this.l&&p>a;u(this,f,t?a:p,y(c+(o/2>c?0:1),o,g,i-1,l-1),e,s,t?p:a)}}}}this.m||(this.register[e]=1)}}return this};function y(e,t,n,s,o){return n&&1=this.B&&!s[t])if(this.s||r||this.map[t])d[a++]=t,s[t]=1;else return i;e=d,o=e.length}if(!o)return i;t||(t=100),c=this.depth&&1=s))))break;if(n){if(i)return z(l,s,0);t[t.length]=l;return}}return!n&&l}function z(e,t,n){return e=1===e.length?e[0]:[].concat.apply([],e),n||e.length>t?e.slice(n,n+t):e}function D(e,t,n,s){return n?(s=s&&t>n,e=(e=e[s?t:n])&&e[s?n:t]):e=e[t],e}s.contain=function(e){return!!this.register[e]},s.update=function(e,t){return this.remove(e).add(e,t)},s.remove=function(e,t){const n=this.register[e];if(n){if(this.m)for(let t=0,s;tt||n)&&(o=o.slice(n,n+t)),s&&(o=q.call(this,o)),{tag:e,result:o}}function q(e){const t=Array(e.length);for(let n=0,s;n{var e=document.getElementById("mode");e!==null&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e=>{e.matches?(localStorage.setItem("theme","dark"),document.documentElement.setAttribute("data-dark-mode","")):(localStorage.setItem("theme","light"),document.documentElement.removeAttribute("data-dark-mode"))}),e.addEventListener("click",()=>{document.documentElement.toggleAttribute("data-dark-mode"),localStorage.setItem("theme",document.documentElement.hasAttribute("data-dark-mode")?"dark":"light")}),localStorage.getItem("theme")==="dark"?document.documentElement.setAttribute("data-dark-mode",""):document.documentElement.removeAttribute("data-dark-mode"))})(),(()=>{var t,e=document.getElementById("announcement");e!==null&&(t=e.dataset.id,Object.keys(localStorage).forEach(function(e){/^global-alert-/.test(e)&&e!==t&&(localStorage.removeItem(e),document.documentElement.removeAttribute("data-global-alert"))}),e.addEventListener("closed.bs.alert",()=>{localStorage.setItem(t,"closed")}))})(),(()=>{if(document.querySelector("#sidebar-default")!==null){let e=document.getElementById("sidebar-default"),t=sessionStorage.getItem("sidebar-scroll");t!==null&&(e.scrollTop=parseInt(t,10)),window.addEventListener("beforeunload",()=>{sessionStorage.setItem("sidebar-scroll",e.scrollTop)})}})(),(()=>{var e=document.getElementById("toTop");e!==null&&(e.style.display="none",window.onscroll=function(){t()});function t(){document.body.scrollTop>40||document.documentElement.scrollTop>40?e.style.display="block":e.style.display="none"}})() \ No newline at end of file diff --git a/plugins/geoip/index.html b/plugins/geoip/index.html index 1e1de01b..ae0830a8 100644 --- a/plugins/geoip/index.html +++ b/plugins/geoip/index.html @@ -1,7 +1,6 @@ -GeoIP - OWASP Coraza

                                                                        GeoIP

                                                                        • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                          - - - \ No newline at end of file +GeoIP - OWASP Coraza +

                                                                          GeoIP

                                                                          • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                            \ No newline at end of file diff --git a/plugins/index.html b/plugins/index.html index 7f63fbe3..bf494717 100644 --- a/plugins/index.html +++ b/plugins/index.html @@ -1,10 +1,9 @@ -Plugins - OWASP Coraza

                                                                            Plugins

                                                                            GeoIP +Plugins - OWASP Coraza +

                                                                            Add plugin on GitHub

                                                                            • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                              - - - \ No newline at end of file +Compatibility: v2.x

                                                                              Adds geoip Maxmind GeoIP2 database support to Coraza

                                                                              Add plugin on GitHub

                                                                              • Powered by a lot of love ❤️ (and code) - By Juan Pablo Tosso and Coraza Contributors
                                                                                \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index f37e6be9..1c080541 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://coraza.io/docs/seclang/directives/2023-06-09T11:28:40+02:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/connectors/coraza-spoa/2022-05-26T00:00:00+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/introduction/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/quick-start/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/tutorials/coreruleset/2020-10-13T15:21:01+02:00weekly0.5https://coraza.io/docs/reference/internals/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/using-plugins/2021-09-05T14:03:58-03:00weekly0.5https://coraza.io/docs/tutorials/upgrade/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/contributors/felipe-zipitria/2020-10-06T08:50:45+00:00weekly0.5https://coraza.io/contributors/juan-pablo-tosso/2020-10-06T08:50:45+00:00weekly0.5https://coraza.io/contributors/2020-10-06T08:50:29+00:00weekly0.5https://coraza.io/docs/reference/benchmarks/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/body-processing/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/extending/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/connectors/caddy/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/reference/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/tutorials/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/connectors/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/plugins/geoip/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/plugins/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/docs/seclang/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/2020-10-06T08:47:36+00:00weekly0.5 \ No newline at end of file +https://coraza.io/docs/seclang/directives/2024-02-05T09:55:41+01:00weekly0.5https://coraza.io/docs/seclang/syntax/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/connectors/coraza-spoa/2022-05-26T00:00:00+00:00weekly0.5https://coraza.io/docs/seclang/actions/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/execution-flow/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/introduction/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/operators/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/transformations/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/seclang/variables/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/quick-start/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/docs/tutorials/coreruleset/2020-10-13T15:21:01+02:00weekly0.5https://coraza.io/docs/reference/internals/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/tutorials/using-plugins/2021-09-05T14:03:58-03:00weekly0.5https://coraza.io/docs/tutorials/upgrade/2020-11-16T13:59:39+01:00weekly0.5https://coraza.io/contributors/felipe-zipitria/2020-10-06T08:50:45+00:00weekly0.5https://coraza.io/contributors/juan-pablo-tosso/2020-10-06T08:50:45+00:00weekly0.5https://coraza.io/contributors/2020-10-06T08:50:29+00:00weekly0.5https://coraza.io/docs/reference/benchmarks/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/body-processing/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/docs/reference/extending/2020-10-06T08:48:57+00:00weekly0.5https://coraza.io/connectors/caddy/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/reference/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/tutorials/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/docs/2020-10-06T08:48:45+00:00weekly0.5https://coraza.io/connectors/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/plugins/geoip/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/plugins/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/docs/seclang/2020-10-06T08:48:23+00:00weekly0.5https://coraza.io/2020-10-06T08:47:36+00:00weekly0.5 \ No newline at end of file