diff --git a/.gitignore b/.gitignore
index 075b2542afb820ca0c990f02a196dfbb35c41a3a..6f4347f5a4be9d62539161fc4924da2838b26607 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,5 @@
 /.quarto/
+
+.DS_Store
+.venv/**
+src/_site/
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..f0ca857a66359e89043636b35b8b9d4deb9c6f5b
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,20 @@
+ARG QUARTO_VERSION="1.3.340"
+
+# Use the Quarto base image
+FROM ghcr.io/quarto-dev/quarto:${QUARTO_VERSION} AS builder
+
+COPY src /app
+WORKDIR /app
+
+# Install Python requirements
+USER root
+RUN apt-get update && apt-get install -y python3 python3-pip
+COPY requirements.txt /app/
+RUN pip3 install -r requirements.txt
+
+# Use Quarto to render your site
+RUN quarto render .
+
+# Use httpd:alpine as the final image to serve the site
+FROM httpd:alpine
+COPY --from=builder /app/_site/ /usr/local/apache2/htdocs/
diff --git a/README.md b/README.md
index 202eaded6916c2034c47f102617917498abdbf67..1867ccca25cf2013b68597da286ec8790762e5d8 100644
--- a/README.md
+++ b/README.md
@@ -3,9 +3,8 @@ title: Quarto Template
 emoji: πŸŒ–
 colorFrom: green
 colorTo: pink
-sdk: static
+sdk: docker
 pinned: false
-app_file: _site/index.html
 ---
 
 Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
diff --git a/_quarto.yml b/_quarto.yml
deleted file mode 100644
index 1250baeb2c0f0b315aca0e3d92cee8247189f97f..0000000000000000000000000000000000000000
--- a/_quarto.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-project:
-  type: website
-
-website:
-  title: "."
-  navbar:
-    right:
-      - about.qmd
-      - icon: github
-        href: https://github.com/
-      - icon: twitter
-        href: https://twitter.com
-format:
-  html:
-    theme: cosmo
-    css: styles.css
-
-
-
diff --git a/_site/about.html b/_site/about.html
deleted file mode 100644
index 16fe8422de200af4ce1c0da3a8c0ee604592abc4..0000000000000000000000000000000000000000
--- a/_site/about.html
+++ /dev/null
@@ -1,533 +0,0 @@
-<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
-
-<meta charset="utf-8">
-<meta name="generator" content="quarto-1.4.543">
-
-<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
-
-
-<title>. - About</title>
-<style>
-code{white-space: pre-wrap;}
-span.smallcaps{font-variant: small-caps;}
-div.columns{display: flex; gap: min(4vw, 1.5em);}
-div.column{flex: auto; overflow-x: auto;}
-div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
-ul.task-list{list-style: none;}
-ul.task-list li input[type="checkbox"] {
-  width: 0.8em;
-  margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 
-  vertical-align: middle;
-}
-</style>
-
-
-<script src="site_libs/quarto-nav/quarto-nav.js"></script>
-<script src="site_libs/quarto-nav/headroom.min.js"></script>
-<script src="site_libs/clipboard/clipboard.min.js"></script>
-<script src="site_libs/quarto-search/autocomplete.umd.js"></script>
-<script src="site_libs/quarto-search/fuse.min.js"></script>
-<script src="site_libs/quarto-search/quarto-search.js"></script>
-<meta name="quarto:offset" content="./">
-<script src="site_libs/quarto-html/quarto.js"></script>
-<script src="site_libs/quarto-html/popper.min.js"></script>
-<script src="site_libs/quarto-html/tippy.umd.min.js"></script>
-<link href="site_libs/quarto-html/tippy.css" rel="stylesheet">
-<link href="site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
-<script src="site_libs/bootstrap/bootstrap.min.js"></script>
-<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
-<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
-<script id="quarto-search-options" type="application/json">{
-  "location": "navbar",
-  "copy-button": false,
-  "collapse-after": 3,
-  "panel-placement": "end",
-  "type": "overlay",
-  "limit": 50,
-  "keyboard-shortcut": [
-    "f",
-    "/",
-    "s"
-  ],
-  "show-item-context": false,
-  "language": {
-    "search-no-results-text": "No results",
-    "search-matching-documents-text": "matching documents",
-    "search-copy-link-title": "Copy link to search",
-    "search-hide-matches-text": "Hide additional matches",
-    "search-more-match-text": "more match in this document",
-    "search-more-matches-text": "more matches in this document",
-    "search-clear-button-title": "Clear",
-    "search-text-placeholder": "",
-    "search-detached-cancel-button-title": "Cancel",
-    "search-submit-button-title": "Submit",
-    "search-label": "Search"
-  }
-}</script>
-
-
-<link rel="stylesheet" href="styles.css">
-</head>
-
-<body class="nav-fixed fullcontent">
-
-<div id="quarto-search-results"></div>
-  <header id="quarto-header" class="headroom fixed-top">
-    <nav class="navbar navbar-expand-lg " data-bs-theme="dark">
-      <div class="navbar-container container-fluid">
-      <div class="navbar-brand-container mx-auto">
-    <a class="navbar-brand" href="./index.html">
-    <span class="navbar-title">.</span>
-    </a>
-  </div>
-            <div id="quarto-search" class="" title="Search"></div>
-          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
-  <span class="navbar-toggler-icon"></span>
-</button>
-          <div class="collapse navbar-collapse" id="navbarCollapse">
-            <ul class="navbar-nav navbar-nav-scroll ms-auto">
-  <li class="nav-item">
-    <a class="nav-link active" href="./about.html" aria-current="page"> 
-<span class="menu-text">About</span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://github.com/"> <i class="bi bi-github" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://twitter.com"> <i class="bi bi-twitter" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-</ul>
-          </div> <!-- /navcollapse -->
-          <div class="quarto-navbar-tools">
-</div>
-      </div> <!-- /container-fluid -->
-    </nav>
-</header>
-<!-- content -->
-<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
-<!-- sidebar -->
-<!-- margin-sidebar -->
-    
-<!-- main -->
-<div class="quarto-about-jolla content">
-  <img src="profile.jpg" class="about-image
-  round " style="height: 15em; width: 15em;">
- <header id="title-block-header" class="quarto-title-block default">
-<div class="quarto-title">
-<h1 class="title">About</h1>
-</div>
-<div class="quarto-title-meta">
-  </div>
-</header><main class="content" id="quarto-document-content">
-<p>About this blog</p>
-
-
-</main> 
-  <hr class="about-sep">
-   <div class="about-links">
-  <a href="https://twitter.com" class="about-link" rel="" target="">
-    <i class="bi bi-twitter"></i>
-     <span class="about-link-text">Twitter</span>
-  </a>
-  <a href="https://linkedin.com" class="about-link" rel="" target="">
-    <i class="bi bi-linkedin"></i>
-     <span class="about-link-text">LinkedIn</span>
-  </a>
-  <a href="https://github.com" class="about-link" rel="" target="">
-    <i class="bi bi-github"></i>
-     <span class="about-link-text">Github</span>
-  </a>
-</div>
-</div>
- <!-- /main -->
-<script id="quarto-html-after-body" type="application/javascript">
-window.document.addEventListener("DOMContentLoaded", function (event) {
-  const toggleBodyColorMode = (bsSheetEl) => {
-    const mode = bsSheetEl.getAttribute("data-mode");
-    const bodyEl = window.document.querySelector("body");
-    if (mode === "dark") {
-      bodyEl.classList.add("quarto-dark");
-      bodyEl.classList.remove("quarto-light");
-    } else {
-      bodyEl.classList.add("quarto-light");
-      bodyEl.classList.remove("quarto-dark");
-    }
-  }
-  const toggleBodyColorPrimary = () => {
-    const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
-    if (bsSheetEl) {
-      toggleBodyColorMode(bsSheetEl);
-    }
-  }
-  toggleBodyColorPrimary();  
-  const isCodeAnnotation = (el) => {
-    for (const clz of el.classList) {
-      if (clz.startsWith('code-annotation-')) {                     
-        return true;
-      }
-    }
-    return false;
-  }
-  const clipboard = new window.ClipboardJS('.code-copy-button', {
-    text: function(trigger) {
-      const codeEl = trigger.previousElementSibling.cloneNode(true);
-      for (const childEl of codeEl.children) {
-        if (isCodeAnnotation(childEl)) {
-          childEl.remove();
-        }
-      }
-      return codeEl.innerText;
-    }
-  });
-  clipboard.on('success', function(e) {
-    // button target
-    const button = e.trigger;
-    // don't keep focus
-    button.blur();
-    // flash "checked"
-    button.classList.add('code-copy-button-checked');
-    var currentTitle = button.getAttribute("title");
-    button.setAttribute("title", "Copied!");
-    let tooltip;
-    if (window.bootstrap) {
-      button.setAttribute("data-bs-toggle", "tooltip");
-      button.setAttribute("data-bs-placement", "left");
-      button.setAttribute("data-bs-title", "Copied!");
-      tooltip = new bootstrap.Tooltip(button, 
-        { trigger: "manual", 
-          customClass: "code-copy-button-tooltip",
-          offset: [0, -8]});
-      tooltip.show();    
-    }
-    setTimeout(function() {
-      if (tooltip) {
-        tooltip.hide();
-        button.removeAttribute("data-bs-title");
-        button.removeAttribute("data-bs-toggle");
-        button.removeAttribute("data-bs-placement");
-      }
-      button.setAttribute("title", currentTitle);
-      button.classList.remove('code-copy-button-checked');
-    }, 1000);
-    // clear code selection
-    e.clearSelection();
-  });
-  function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
-    const config = {
-      allowHTML: true,
-      maxWidth: 500,
-      delay: 100,
-      arrow: false,
-      appendTo: function(el) {
-          return el.parentElement;
-      },
-      interactive: true,
-      interactiveBorder: 10,
-      theme: 'quarto',
-      placement: 'bottom-start',
-    };
-    if (contentFn) {
-      config.content = contentFn;
-    }
-    if (onTriggerFn) {
-      config.onTrigger = onTriggerFn;
-    }
-    if (onUntriggerFn) {
-      config.onUntrigger = onUntriggerFn;
-    }
-    window.tippy(el, config); 
-  }
-  const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
-  for (var i=0; i<noterefs.length; i++) {
-    const ref = noterefs[i];
-    tippyHover(ref, function() {
-      // use id or data attribute instead here
-      let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
-      try { href = new URL(href).hash; } catch {}
-      const id = href.replace(/^#\/?/, "");
-      const note = window.document.getElementById(id);
-      return note.innerHTML;
-    });
-  }
-  const xrefs = window.document.querySelectorAll('a.quarto-xref');
-  const processXRef = (id, note) => {
-    // Strip column container classes
-    const stripColumnClz = (el) => {
-      el.classList.remove("page-full", "page-columns");
-      if (el.children) {
-        for (const child of el.children) {
-          stripColumnClz(child);
-        }
-      }
-    }
-    stripColumnClz(note)
-    if (id === null || id.startsWith('sec-')) {
-      // Special case sections, only their first couple elements
-      const container = document.createElement("div");
-      if (note.children && note.children.length > 2) {
-        container.appendChild(note.children[0].cloneNode(true));
-        for (let i = 1; i < note.children.length; i++) {
-          const child = note.children[i];
-          if (child.tagName === "P" && child.innerText === "") {
-            continue;
-          } else {
-            container.appendChild(child.cloneNode(true));
-            break;
-          }
-        }
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(container);
-        }
-        return container.innerHTML
-      } else {
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(note);
-        }
-        return note.innerHTML;
-      }
-    } else {
-      // Remove any anchor links if they are present
-      const anchorLink = note.querySelector('a.anchorjs-link');
-      if (anchorLink) {
-        anchorLink.remove();
-      }
-      if (window.Quarto?.typesetMath) {
-        window.Quarto.typesetMath(note);
-      }
-      // TODO in 1.5, we should make sure this works without a callout special case
-      if (note.classList.contains("callout")) {
-        return note.outerHTML;
-      } else {
-        return note.innerHTML;
-      }
-    }
-  }
-  for (var i=0; i<xrefs.length; i++) {
-    const xref = xrefs[i];
-    tippyHover(xref, undefined, function(instance) {
-      instance.disable();
-      let url = xref.getAttribute('href');
-      let hash = undefined; 
-      if (url.startsWith('#')) {
-        hash = url;
-      } else {
-        try { hash = new URL(url).hash; } catch {}
-      }
-      if (hash) {
-        const id = hash.replace(/^#\/?/, "");
-        const note = window.document.getElementById(id);
-        if (note !== null) {
-          try {
-            const html = processXRef(id, note.cloneNode(true));
-            instance.setContent(html);
-          } finally {
-            instance.enable();
-            instance.show();
-          }
-        } else {
-          // See if we can fetch this
-          fetch(url.split('#')[0])
-          .then(res => res.text())
-          .then(html => {
-            const parser = new DOMParser();
-            const htmlDoc = parser.parseFromString(html, "text/html");
-            const note = htmlDoc.getElementById(id);
-            if (note !== null) {
-              const html = processXRef(id, note);
-              instance.setContent(html);
-            } 
-          }).finally(() => {
-            instance.enable();
-            instance.show();
-          });
-        }
-      } else {
-        // See if we can fetch a full url (with no hash to target)
-        // This is a special case and we should probably do some content thinning / targeting
-        fetch(url)
-        .then(res => res.text())
-        .then(html => {
-          const parser = new DOMParser();
-          const htmlDoc = parser.parseFromString(html, "text/html");
-          const note = htmlDoc.querySelector('main.content');
-          if (note !== null) {
-            // This should only happen for chapter cross references
-            // (since there is no id in the URL)
-            // remove the first header
-            if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
-              note.children[0].remove();
-            }
-            const html = processXRef(null, note);
-            instance.setContent(html);
-          } 
-        }).finally(() => {
-          instance.enable();
-          instance.show();
-        });
-      }
-    }, function(instance) {
-    });
-  }
-      let selectedAnnoteEl;
-      const selectorForAnnotation = ( cell, annotation) => {
-        let cellAttr = 'data-code-cell="' + cell + '"';
-        let lineAttr = 'data-code-annotation="' +  annotation + '"';
-        const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
-        return selector;
-      }
-      const selectCodeLines = (annoteEl) => {
-        const doc = window.document;
-        const targetCell = annoteEl.getAttribute("data-target-cell");
-        const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
-        const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
-        const lines = annoteSpan.getAttribute("data-code-lines").split(",");
-        const lineIds = lines.map((line) => {
-          return targetCell + "-" + line;
-        })
-        let top = null;
-        let height = null;
-        let parent = null;
-        if (lineIds.length > 0) {
-            //compute the position of the single el (top and bottom and make a div)
-            const el = window.document.getElementById(lineIds[0]);
-            top = el.offsetTop;
-            height = el.offsetHeight;
-            parent = el.parentElement.parentElement;
-          if (lineIds.length > 1) {
-            const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
-            const bottom = lastEl.offsetTop + lastEl.offsetHeight;
-            height = bottom - top;
-          }
-          if (top !== null && height !== null && parent !== null) {
-            // cook up a div (if necessary) and position it 
-            let div = window.document.getElementById("code-annotation-line-highlight");
-            if (div === null) {
-              div = window.document.createElement("div");
-              div.setAttribute("id", "code-annotation-line-highlight");
-              div.style.position = 'absolute';
-              parent.appendChild(div);
-            }
-            div.style.top = top - 2 + "px";
-            div.style.height = height + 4 + "px";
-            div.style.left = 0;
-            let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
-            if (gutterDiv === null) {
-              gutterDiv = window.document.createElement("div");
-              gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
-              gutterDiv.style.position = 'absolute';
-              const codeCell = window.document.getElementById(targetCell);
-              const gutter = codeCell.querySelector('.code-annotation-gutter');
-              gutter.appendChild(gutterDiv);
-            }
-            gutterDiv.style.top = top - 2 + "px";
-            gutterDiv.style.height = height + 4 + "px";
-          }
-          selectedAnnoteEl = annoteEl;
-        }
-      };
-      const unselectCodeLines = () => {
-        const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
-        elementsIds.forEach((elId) => {
-          const div = window.document.getElementById(elId);
-          if (div) {
-            div.remove();
-          }
-        });
-        selectedAnnoteEl = undefined;
-      };
-        // Handle positioning of the toggle
-    window.addEventListener(
-      "resize",
-      throttle(() => {
-        elRect = undefined;
-        if (selectedAnnoteEl) {
-          selectCodeLines(selectedAnnoteEl);
-        }
-      }, 10)
-    );
-    function throttle(fn, ms) {
-    let throttle = false;
-    let timer;
-      return (...args) => {
-        if(!throttle) { // first call gets through
-            fn.apply(this, args);
-            throttle = true;
-        } else { // all the others get throttled
-            if(timer) clearTimeout(timer); // cancel #2
-            timer = setTimeout(() => {
-              fn.apply(this, args);
-              timer = throttle = false;
-            }, ms);
-        }
-      };
-    }
-      // Attach click handler to the DT
-      const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
-      for (const annoteDlNode of annoteDls) {
-        annoteDlNode.addEventListener('click', (event) => {
-          const clickedEl = event.target;
-          if (clickedEl !== selectedAnnoteEl) {
-            unselectCodeLines();
-            const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
-            if (activeEl) {
-              activeEl.classList.remove('code-annotation-active');
-            }
-            selectCodeLines(clickedEl);
-            clickedEl.classList.add('code-annotation-active');
-          } else {
-            // Unselect the line
-            unselectCodeLines();
-            clickedEl.classList.remove('code-annotation-active');
-          }
-        });
-      }
-  const findCites = (el) => {
-    const parentEl = el.parentElement;
-    if (parentEl) {
-      const cites = parentEl.dataset.cites;
-      if (cites) {
-        return {
-          el,
-          cites: cites.split(' ')
-        };
-      } else {
-        return findCites(el.parentElement)
-      }
-    } else {
-      return undefined;
-    }
-  };
-  var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
-  for (var i=0; i<bibliorefs.length; i++) {
-    const ref = bibliorefs[i];
-    const citeInfo = findCites(ref);
-    if (citeInfo) {
-      tippyHover(citeInfo.el, function() {
-        var popup = window.document.createElement('div');
-        citeInfo.cites.forEach(function(cite) {
-          var citeDiv = window.document.createElement('div');
-          citeDiv.classList.add('hanging-indent');
-          citeDiv.classList.add('csl-entry');
-          var biblioDiv = window.document.getElementById('ref-' + cite);
-          if (biblioDiv) {
-            citeDiv.innerHTML = biblioDiv.innerHTML;
-          }
-          popup.appendChild(citeDiv);
-        });
-        return popup.innerHTML;
-      });
-    }
-  }
-});
-</script>
-</div> <!-- /content -->
-
-
-
-
-</body></html>
\ No newline at end of file
diff --git a/_site/index.html b/_site/index.html
deleted file mode 100644
index b816c166d4c2f3a3420db701b8a432f81f05bbcf..0000000000000000000000000000000000000000
--- a/_site/index.html
+++ /dev/null
@@ -1,677 +0,0 @@
-<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
-
-<meta charset="utf-8">
-<meta name="generator" content="quarto-1.4.543">
-
-<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
-
-
-<title>.</title>
-<style>
-code{white-space: pre-wrap;}
-span.smallcaps{font-variant: small-caps;}
-div.columns{display: flex; gap: min(4vw, 1.5em);}
-div.column{flex: auto; overflow-x: auto;}
-div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
-ul.task-list{list-style: none;}
-ul.task-list li input[type="checkbox"] {
-  width: 0.8em;
-  margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 
-  vertical-align: middle;
-}
-</style>
-
-
-<script src="site_libs/quarto-nav/quarto-nav.js"></script>
-<script src="site_libs/quarto-nav/headroom.min.js"></script>
-<script src="site_libs/clipboard/clipboard.min.js"></script>
-<script src="site_libs/quarto-search/autocomplete.umd.js"></script>
-<script src="site_libs/quarto-search/fuse.min.js"></script>
-<script src="site_libs/quarto-search/quarto-search.js"></script>
-<meta name="quarto:offset" content="./">
-<script src="site_libs/quarto-listing/list.min.js"></script>
-<script src="site_libs/quarto-listing/quarto-listing.js"></script>
-<script src="site_libs/quarto-html/quarto.js"></script>
-<script src="site_libs/quarto-html/popper.min.js"></script>
-<script src="site_libs/quarto-html/tippy.umd.min.js"></script>
-<script src="site_libs/quarto-html/anchor.min.js"></script>
-<link href="site_libs/quarto-html/tippy.css" rel="stylesheet">
-<link href="site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
-<script src="site_libs/bootstrap/bootstrap.min.js"></script>
-<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
-<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
-<script id="quarto-search-options" type="application/json">{
-  "location": "navbar",
-  "copy-button": false,
-  "collapse-after": 3,
-  "panel-placement": "end",
-  "type": "overlay",
-  "limit": 50,
-  "keyboard-shortcut": [
-    "f",
-    "/",
-    "s"
-  ],
-  "show-item-context": false,
-  "language": {
-    "search-no-results-text": "No results",
-    "search-matching-documents-text": "matching documents",
-    "search-copy-link-title": "Copy link to search",
-    "search-hide-matches-text": "Hide additional matches",
-    "search-more-match-text": "more match in this document",
-    "search-more-matches-text": "more matches in this document",
-    "search-clear-button-title": "Clear",
-    "search-text-placeholder": "",
-    "search-detached-cancel-button-title": "Cancel",
-    "search-submit-button-title": "Submit",
-    "search-label": "Search"
-  }
-}</script>
-<script>
-
-  window.document.addEventListener("DOMContentLoaded", function (_event) {
-    const listingTargetEl = window.document.querySelector('#listing-listing .list');
-    if (!listingTargetEl) {
-      // No listing discovered, do not attach.
-      return; 
-    }
-
-    const options = {
-      valueNames: ['listing-date','listing-title','listing-author','listing-image','listing-description','listing-categories',{ data: ['index'] },{ data: ['categories'] },{ data: ['listing-date-sort'] },{ data: ['listing-file-modified-sort'] }],
-      
-      searchColumns: ["listing-date","listing-title","listing-author","listing-image","listing-description","listing-categories"],
-    };
-
-    window['quarto-listings'] = window['quarto-listings'] || {};
-    window['quarto-listings']['listing-listing'] = new List('listing-listing', options);
-
-    if (window['quarto-listing-loaded']) {
-      window['quarto-listing-loaded']();
-    }
-  });
-
-  window.addEventListener('hashchange',() => {
-    if (window['quarto-listing-loaded']) {
-      window['quarto-listing-loaded']();
-    }
-  })
-  </script>
-
-  <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
-  <script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-const typesetMath = (el) => {
-  if (window.MathJax) {
-    // MathJax Typeset
-    window.MathJax.typeset([el]);
-  } else if (window.katex) {
-    // KaTeX Render
-    var mathElements = el.getElementsByClassName("math");
-    var macros = [];
-    for (var i = 0; i < mathElements.length; i++) {
-      var texText = mathElements[i].firstChild;
-      if (mathElements[i].tagName == "SPAN") {
-        window.katex.render(texText.data, mathElements[i], {
-          displayMode: mathElements[i].classList.contains('display'),
-          throwOnError: false,
-          macros: macros,
-          fleqn: false
-        });
-      }
-    }
-  }
-}
-window.Quarto = {
-  typesetMath
-};
-</script>
-
-<link rel="stylesheet" href="styles.css">
-</head>
-
-<body class="nav-fixed">
-
-<div id="quarto-search-results"></div>
-  <header id="quarto-header" class="headroom fixed-top quarto-banner">
-    <nav class="navbar navbar-expand-lg " data-bs-theme="dark">
-      <div class="navbar-container container-fluid">
-      <div class="navbar-brand-container mx-auto">
-    <a class="navbar-brand" href="./index.html">
-    <span class="navbar-title">.</span>
-    </a>
-  </div>
-            <div id="quarto-search" class="" title="Search"></div>
-          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
-  <span class="navbar-toggler-icon"></span>
-</button>
-          <div class="collapse navbar-collapse" id="navbarCollapse">
-            <ul class="navbar-nav navbar-nav-scroll ms-auto">
-  <li class="nav-item">
-    <a class="nav-link" href="./about.html"> 
-<span class="menu-text">About</span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://github.com/"> <i class="bi bi-github" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://twitter.com"> <i class="bi bi-twitter" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-</ul>
-          </div> <!-- /navcollapse -->
-          <div class="quarto-navbar-tools">
-</div>
-      </div> <!-- /container-fluid -->
-    </nav>
-</header>
-<!-- content -->
-<header id="title-block-header" class="quarto-title-block default page-columns page-full">
-  <div class="quarto-title-banner page-columns page-full">
-    <div class="quarto-title column-page-left">
-      <h1 class="title">.</h1>
-                      </div>
-  </div>
-    
-  
-  <div class="quarto-title-meta column-page-left">
-
-      
-    
-      
-    </div>
-    
-  
-  </header><div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-full page-navbar">
-<!-- sidebar -->
-<!-- margin-sidebar -->
-    <div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
-        
-    <h5 class="quarto-listing-category-title">Categories</h5><div class="quarto-listing-category category-default"><div class="category" data-category="">All <span class="quarto-category-count">(2)</span></div><div class="category" data-category="analysis">analysis <span class="quarto-category-count">(1)</span></div><div class="category" data-category="code">code <span class="quarto-category-count">(1)</span></div><div class="category" data-category="news">news <span class="quarto-category-count">(2)</span></div></div></div>
-<!-- main -->
-<main class="content quarto-banner-title-block column-page-left" id="quarto-document-content">
-
-
-
-
-
-
-
-
-
-<div class="quarto-listing quarto-listing-container-default" id="listing-listing">
-<div class="list quarto-listing-default">
-<div class="quarto-post image-right" data-index="0" data-categories="news,code,analysis" data-listing-date-sort="1707969600000" data-listing-file-modified-sort="1708029149467" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="7">
-<div class="thumbnail">
-<p><a href="./posts/post-with-code/index.html" class="no-external"></a></p><a href="./posts/post-with-code/index.html" class="no-external">
-<p><img src="./posts/post-with-code/image.jpg" class="thumbnail-image"></p>
-</a><p><a href="./posts/post-with-code/index.html" class="no-external"></a></p>
-</div>
-<div class="body">
-<h3 class="no-anchor listing-title">
-<a href="./posts/post-with-code/index.html" class="no-external">Post With Code</a>
-</h3>
-<div class="listing-subtitle">
-<a href="./posts/post-with-code/index.html" class="no-external"></a>
-</div>
-<div class="listing-categories">
-<div class="listing-category" onclick="window.quartoListingCategory('news'); return false;">
-news
-</div>
-<div class="listing-category" onclick="window.quartoListingCategory('code'); return false;">
-code
-</div>
-<div class="listing-category" onclick="window.quartoListingCategory('analysis'); return false;">
-analysis
-</div>
-</div>
-<div class="listing-description">
-<a href="./posts/post-with-code/index.html" class="no-external">This is a post with executable code.</a>
-</div>
-</div>
-<div class="metadata">
-<a href="./posts/post-with-code/index.html" class="no-external">
-<div class="listing-date">
-Feb 15, 2024
-</div>
-<div class="listing-author">
-Harlow Malloc
-</div>
-</a>
-</div>
-</div>
-<div class="quarto-post image-right" data-index="1" data-categories="news" data-listing-date-sort="1707710400000" data-listing-file-modified-sort="1708029149467" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="32">
-<div class="thumbnail">
-<p><a href="./posts/welcome/index.html" class="no-external"></a></p><a href="./posts/welcome/index.html" class="no-external">
-<p class="card-img-top"><img src="posts/welcome/thumbnail.jpg"  class="thumbnail-image card-img"/></p>
-</a><p><a href="./posts/welcome/index.html" class="no-external"></a></p>
-</div>
-<div class="body">
-<h3 class="no-anchor listing-title">
-<a href="./posts/welcome/index.html" class="no-external">Welcome To My Blog</a>
-</h3>
-<div class="listing-subtitle">
-<a href="./posts/welcome/index.html" class="no-external"></a>
-</div>
-<div class="listing-categories">
-<div class="listing-category" onclick="window.quartoListingCategory('news'); return false;">
-news
-</div>
-</div>
-<div class="listing-description">
-<a href="./posts/welcome/index.html" class="no-external">This is the first post in a Quarto blog. Welcome!</a>
-</div>
-</div>
-<div class="metadata">
-<a href="./posts/welcome/index.html" class="no-external">
-<div class="listing-date">
-Feb 12, 2024
-</div>
-<div class="listing-author">
-Tristan O’Malley
-</div>
-</a>
-</div>
-</div>
-</div>
-<div class="listing-no-matching d-none">
-No matching items
-</div>
-</div></main> <!-- /main -->
-<script id="quarto-html-after-body" type="application/javascript">
-window.document.addEventListener("DOMContentLoaded", function (event) {
-  const toggleBodyColorMode = (bsSheetEl) => {
-    const mode = bsSheetEl.getAttribute("data-mode");
-    const bodyEl = window.document.querySelector("body");
-    if (mode === "dark") {
-      bodyEl.classList.add("quarto-dark");
-      bodyEl.classList.remove("quarto-light");
-    } else {
-      bodyEl.classList.add("quarto-light");
-      bodyEl.classList.remove("quarto-dark");
-    }
-  }
-  const toggleBodyColorPrimary = () => {
-    const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
-    if (bsSheetEl) {
-      toggleBodyColorMode(bsSheetEl);
-    }
-  }
-  toggleBodyColorPrimary();  
-  const icon = "";
-  const anchorJS = new window.AnchorJS();
-  anchorJS.options = {
-    placement: 'right',
-    icon: icon
-  };
-  anchorJS.add('.anchored');
-  const isCodeAnnotation = (el) => {
-    for (const clz of el.classList) {
-      if (clz.startsWith('code-annotation-')) {                     
-        return true;
-      }
-    }
-    return false;
-  }
-  const clipboard = new window.ClipboardJS('.code-copy-button', {
-    text: function(trigger) {
-      const codeEl = trigger.previousElementSibling.cloneNode(true);
-      for (const childEl of codeEl.children) {
-        if (isCodeAnnotation(childEl)) {
-          childEl.remove();
-        }
-      }
-      return codeEl.innerText;
-    }
-  });
-  clipboard.on('success', function(e) {
-    // button target
-    const button = e.trigger;
-    // don't keep focus
-    button.blur();
-    // flash "checked"
-    button.classList.add('code-copy-button-checked');
-    var currentTitle = button.getAttribute("title");
-    button.setAttribute("title", "Copied!");
-    let tooltip;
-    if (window.bootstrap) {
-      button.setAttribute("data-bs-toggle", "tooltip");
-      button.setAttribute("data-bs-placement", "left");
-      button.setAttribute("data-bs-title", "Copied!");
-      tooltip = new bootstrap.Tooltip(button, 
-        { trigger: "manual", 
-          customClass: "code-copy-button-tooltip",
-          offset: [0, -8]});
-      tooltip.show();    
-    }
-    setTimeout(function() {
-      if (tooltip) {
-        tooltip.hide();
-        button.removeAttribute("data-bs-title");
-        button.removeAttribute("data-bs-toggle");
-        button.removeAttribute("data-bs-placement");
-      }
-      button.setAttribute("title", currentTitle);
-      button.classList.remove('code-copy-button-checked');
-    }, 1000);
-    // clear code selection
-    e.clearSelection();
-  });
-  function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
-    const config = {
-      allowHTML: true,
-      maxWidth: 500,
-      delay: 100,
-      arrow: false,
-      appendTo: function(el) {
-          return el.parentElement;
-      },
-      interactive: true,
-      interactiveBorder: 10,
-      theme: 'quarto',
-      placement: 'bottom-start',
-    };
-    if (contentFn) {
-      config.content = contentFn;
-    }
-    if (onTriggerFn) {
-      config.onTrigger = onTriggerFn;
-    }
-    if (onUntriggerFn) {
-      config.onUntrigger = onUntriggerFn;
-    }
-    window.tippy(el, config); 
-  }
-  const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
-  for (var i=0; i<noterefs.length; i++) {
-    const ref = noterefs[i];
-    tippyHover(ref, function() {
-      // use id or data attribute instead here
-      let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
-      try { href = new URL(href).hash; } catch {}
-      const id = href.replace(/^#\/?/, "");
-      const note = window.document.getElementById(id);
-      return note.innerHTML;
-    });
-  }
-  const xrefs = window.document.querySelectorAll('a.quarto-xref');
-  const processXRef = (id, note) => {
-    // Strip column container classes
-    const stripColumnClz = (el) => {
-      el.classList.remove("page-full", "page-columns");
-      if (el.children) {
-        for (const child of el.children) {
-          stripColumnClz(child);
-        }
-      }
-    }
-    stripColumnClz(note)
-    if (id === null || id.startsWith('sec-')) {
-      // Special case sections, only their first couple elements
-      const container = document.createElement("div");
-      if (note.children && note.children.length > 2) {
-        container.appendChild(note.children[0].cloneNode(true));
-        for (let i = 1; i < note.children.length; i++) {
-          const child = note.children[i];
-          if (child.tagName === "P" && child.innerText === "") {
-            continue;
-          } else {
-            container.appendChild(child.cloneNode(true));
-            break;
-          }
-        }
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(container);
-        }
-        return container.innerHTML
-      } else {
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(note);
-        }
-        return note.innerHTML;
-      }
-    } else {
-      // Remove any anchor links if they are present
-      const anchorLink = note.querySelector('a.anchorjs-link');
-      if (anchorLink) {
-        anchorLink.remove();
-      }
-      if (window.Quarto?.typesetMath) {
-        window.Quarto.typesetMath(note);
-      }
-      // TODO in 1.5, we should make sure this works without a callout special case
-      if (note.classList.contains("callout")) {
-        return note.outerHTML;
-      } else {
-        return note.innerHTML;
-      }
-    }
-  }
-  for (var i=0; i<xrefs.length; i++) {
-    const xref = xrefs[i];
-    tippyHover(xref, undefined, function(instance) {
-      instance.disable();
-      let url = xref.getAttribute('href');
-      let hash = undefined; 
-      if (url.startsWith('#')) {
-        hash = url;
-      } else {
-        try { hash = new URL(url).hash; } catch {}
-      }
-      if (hash) {
-        const id = hash.replace(/^#\/?/, "");
-        const note = window.document.getElementById(id);
-        if (note !== null) {
-          try {
-            const html = processXRef(id, note.cloneNode(true));
-            instance.setContent(html);
-          } finally {
-            instance.enable();
-            instance.show();
-          }
-        } else {
-          // See if we can fetch this
-          fetch(url.split('#')[0])
-          .then(res => res.text())
-          .then(html => {
-            const parser = new DOMParser();
-            const htmlDoc = parser.parseFromString(html, "text/html");
-            const note = htmlDoc.getElementById(id);
-            if (note !== null) {
-              const html = processXRef(id, note);
-              instance.setContent(html);
-            } 
-          }).finally(() => {
-            instance.enable();
-            instance.show();
-          });
-        }
-      } else {
-        // See if we can fetch a full url (with no hash to target)
-        // This is a special case and we should probably do some content thinning / targeting
-        fetch(url)
-        .then(res => res.text())
-        .then(html => {
-          const parser = new DOMParser();
-          const htmlDoc = parser.parseFromString(html, "text/html");
-          const note = htmlDoc.querySelector('main.content');
-          if (note !== null) {
-            // This should only happen for chapter cross references
-            // (since there is no id in the URL)
-            // remove the first header
-            if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
-              note.children[0].remove();
-            }
-            const html = processXRef(null, note);
-            instance.setContent(html);
-          } 
-        }).finally(() => {
-          instance.enable();
-          instance.show();
-        });
-      }
-    }, function(instance) {
-    });
-  }
-      let selectedAnnoteEl;
-      const selectorForAnnotation = ( cell, annotation) => {
-        let cellAttr = 'data-code-cell="' + cell + '"';
-        let lineAttr = 'data-code-annotation="' +  annotation + '"';
-        const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
-        return selector;
-      }
-      const selectCodeLines = (annoteEl) => {
-        const doc = window.document;
-        const targetCell = annoteEl.getAttribute("data-target-cell");
-        const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
-        const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
-        const lines = annoteSpan.getAttribute("data-code-lines").split(",");
-        const lineIds = lines.map((line) => {
-          return targetCell + "-" + line;
-        })
-        let top = null;
-        let height = null;
-        let parent = null;
-        if (lineIds.length > 0) {
-            //compute the position of the single el (top and bottom and make a div)
-            const el = window.document.getElementById(lineIds[0]);
-            top = el.offsetTop;
-            height = el.offsetHeight;
-            parent = el.parentElement.parentElement;
-          if (lineIds.length > 1) {
-            const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
-            const bottom = lastEl.offsetTop + lastEl.offsetHeight;
-            height = bottom - top;
-          }
-          if (top !== null && height !== null && parent !== null) {
-            // cook up a div (if necessary) and position it 
-            let div = window.document.getElementById("code-annotation-line-highlight");
-            if (div === null) {
-              div = window.document.createElement("div");
-              div.setAttribute("id", "code-annotation-line-highlight");
-              div.style.position = 'absolute';
-              parent.appendChild(div);
-            }
-            div.style.top = top - 2 + "px";
-            div.style.height = height + 4 + "px";
-            div.style.left = 0;
-            let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
-            if (gutterDiv === null) {
-              gutterDiv = window.document.createElement("div");
-              gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
-              gutterDiv.style.position = 'absolute';
-              const codeCell = window.document.getElementById(targetCell);
-              const gutter = codeCell.querySelector('.code-annotation-gutter');
-              gutter.appendChild(gutterDiv);
-            }
-            gutterDiv.style.top = top - 2 + "px";
-            gutterDiv.style.height = height + 4 + "px";
-          }
-          selectedAnnoteEl = annoteEl;
-        }
-      };
-      const unselectCodeLines = () => {
-        const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
-        elementsIds.forEach((elId) => {
-          const div = window.document.getElementById(elId);
-          if (div) {
-            div.remove();
-          }
-        });
-        selectedAnnoteEl = undefined;
-      };
-        // Handle positioning of the toggle
-    window.addEventListener(
-      "resize",
-      throttle(() => {
-        elRect = undefined;
-        if (selectedAnnoteEl) {
-          selectCodeLines(selectedAnnoteEl);
-        }
-      }, 10)
-    );
-    function throttle(fn, ms) {
-    let throttle = false;
-    let timer;
-      return (...args) => {
-        if(!throttle) { // first call gets through
-            fn.apply(this, args);
-            throttle = true;
-        } else { // all the others get throttled
-            if(timer) clearTimeout(timer); // cancel #2
-            timer = setTimeout(() => {
-              fn.apply(this, args);
-              timer = throttle = false;
-            }, ms);
-        }
-      };
-    }
-      // Attach click handler to the DT
-      const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
-      for (const annoteDlNode of annoteDls) {
-        annoteDlNode.addEventListener('click', (event) => {
-          const clickedEl = event.target;
-          if (clickedEl !== selectedAnnoteEl) {
-            unselectCodeLines();
-            const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
-            if (activeEl) {
-              activeEl.classList.remove('code-annotation-active');
-            }
-            selectCodeLines(clickedEl);
-            clickedEl.classList.add('code-annotation-active');
-          } else {
-            // Unselect the line
-            unselectCodeLines();
-            clickedEl.classList.remove('code-annotation-active');
-          }
-        });
-      }
-  const findCites = (el) => {
-    const parentEl = el.parentElement;
-    if (parentEl) {
-      const cites = parentEl.dataset.cites;
-      if (cites) {
-        return {
-          el,
-          cites: cites.split(' ')
-        };
-      } else {
-        return findCites(el.parentElement)
-      }
-    } else {
-      return undefined;
-    }
-  };
-  var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
-  for (var i=0; i<bibliorefs.length; i++) {
-    const ref = bibliorefs[i];
-    const citeInfo = findCites(ref);
-    if (citeInfo) {
-      tippyHover(citeInfo.el, function() {
-        var popup = window.document.createElement('div');
-        citeInfo.cites.forEach(function(cite) {
-          var citeDiv = window.document.createElement('div');
-          citeDiv.classList.add('hanging-indent');
-          citeDiv.classList.add('csl-entry');
-          var biblioDiv = window.document.getElementById('ref-' + cite);
-          if (biblioDiv) {
-            citeDiv.innerHTML = biblioDiv.innerHTML;
-          }
-          popup.appendChild(citeDiv);
-        });
-        return popup.innerHTML;
-      });
-    }
-  }
-});
-</script>
-</div> <!-- /content -->
-
-
-
-
-</body></html>
\ No newline at end of file
diff --git a/_site/listings.json b/_site/listings.json
deleted file mode 100644
index 95c388f4256c31645690880c5762f6915eae9e34..0000000000000000000000000000000000000000
--- a/_site/listings.json
+++ /dev/null
@@ -1,9 +0,0 @@
-[
-  {
-    "listing": "/index.html",
-    "items": [
-      "/posts/post-with-code/index.html",
-      "/posts/welcome/index.html"
-    ]
-  }
-]
\ No newline at end of file
diff --git a/_site/posts/post-with-code/image.jpg b/_site/posts/post-with-code/image.jpg
deleted file mode 100644
index 3ec04c8c4e169aa7cfbd882821eb0d436b62c93a..0000000000000000000000000000000000000000
Binary files a/_site/posts/post-with-code/image.jpg and /dev/null differ
diff --git a/_site/posts/post-with-code/index.html b/_site/posts/post-with-code/index.html
deleted file mode 100644
index 5989560eeea613be7744065a8a2390025daf25e7..0000000000000000000000000000000000000000
--- a/_site/posts/post-with-code/index.html
+++ /dev/null
@@ -1,556 +0,0 @@
-<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
-
-<meta charset="utf-8">
-<meta name="generator" content="quarto-1.4.543">
-
-<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
-
-<meta name="author" content="Harlow Malloc">
-<meta name="dcterms.date" content="2024-02-15">
-
-<title>. - Post With Code</title>
-<style>
-code{white-space: pre-wrap;}
-span.smallcaps{font-variant: small-caps;}
-div.columns{display: flex; gap: min(4vw, 1.5em);}
-div.column{flex: auto; overflow-x: auto;}
-div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
-ul.task-list{list-style: none;}
-ul.task-list li input[type="checkbox"] {
-  width: 0.8em;
-  margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 
-  vertical-align: middle;
-}
-</style>
-
-
-<script src="../../site_libs/quarto-nav/quarto-nav.js"></script>
-<script src="../../site_libs/quarto-nav/headroom.min.js"></script>
-<script src="../../site_libs/clipboard/clipboard.min.js"></script>
-<script src="../../site_libs/quarto-search/autocomplete.umd.js"></script>
-<script src="../../site_libs/quarto-search/fuse.min.js"></script>
-<script src="../../site_libs/quarto-search/quarto-search.js"></script>
-<meta name="quarto:offset" content="../../">
-<script src="../../site_libs/quarto-html/quarto.js"></script>
-<script src="../../site_libs/quarto-html/popper.min.js"></script>
-<script src="../../site_libs/quarto-html/tippy.umd.min.js"></script>
-<script src="../../site_libs/quarto-html/anchor.min.js"></script>
-<link href="../../site_libs/quarto-html/tippy.css" rel="stylesheet">
-<link href="../../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
-<script src="../../site_libs/bootstrap/bootstrap.min.js"></script>
-<link href="../../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
-<link href="../../site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
-<script id="quarto-search-options" type="application/json">{
-  "location": "navbar",
-  "copy-button": false,
-  "collapse-after": 3,
-  "panel-placement": "end",
-  "type": "overlay",
-  "limit": 50,
-  "keyboard-shortcut": [
-    "f",
-    "/",
-    "s"
-  ],
-  "show-item-context": false,
-  "language": {
-    "search-no-results-text": "No results",
-    "search-matching-documents-text": "matching documents",
-    "search-copy-link-title": "Copy link to search",
-    "search-hide-matches-text": "Hide additional matches",
-    "search-more-match-text": "more match in this document",
-    "search-more-matches-text": "more matches in this document",
-    "search-clear-button-title": "Clear",
-    "search-text-placeholder": "",
-    "search-detached-cancel-button-title": "Cancel",
-    "search-submit-button-title": "Submit",
-    "search-label": "Search"
-  }
-}</script>
-
-
-<link rel="stylesheet" href="../../styles.css">
-</head>
-
-<body class="nav-fixed fullcontent">
-
-<div id="quarto-search-results"></div>
-  <header id="quarto-header" class="headroom fixed-top quarto-banner">
-    <nav class="navbar navbar-expand-lg " data-bs-theme="dark">
-      <div class="navbar-container container-fluid">
-      <div class="navbar-brand-container mx-auto">
-    <a class="navbar-brand" href="../../index.html">
-    <span class="navbar-title">.</span>
-    </a>
-  </div>
-            <div id="quarto-search" class="" title="Search"></div>
-          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
-  <span class="navbar-toggler-icon"></span>
-</button>
-          <div class="collapse navbar-collapse" id="navbarCollapse">
-            <ul class="navbar-nav navbar-nav-scroll ms-auto">
-  <li class="nav-item">
-    <a class="nav-link" href="../../about.html"> 
-<span class="menu-text">About</span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://github.com/"> <i class="bi bi-github" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://twitter.com"> <i class="bi bi-twitter" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-</ul>
-          </div> <!-- /navcollapse -->
-          <div class="quarto-navbar-tools">
-</div>
-      </div> <!-- /container-fluid -->
-    </nav>
-</header>
-<!-- content -->
-<header id="title-block-header" class="quarto-title-block default page-columns page-full">
-  <div class="quarto-title-banner page-columns page-full">
-    <div class="quarto-title column-body">
-      <h1 class="title">Post With Code</h1>
-                                <div class="quarto-categories">
-                <div class="quarto-category">news</div>
-                <div class="quarto-category">code</div>
-                <div class="quarto-category">analysis</div>
-              </div>
-                  </div>
-  </div>
-    
-  
-  <div class="quarto-title-meta">
-
-      <div>
-      <div class="quarto-title-meta-heading">Author</div>
-      <div class="quarto-title-meta-contents">
-               <p>Harlow Malloc </p>
-            </div>
-    </div>
-      
-      <div>
-      <div class="quarto-title-meta-heading">Published</div>
-      <div class="quarto-title-meta-contents">
-        <p class="date">February 15, 2024</p>
-      </div>
-    </div>
-    
-      
-    </div>
-    
-  
-  </header><div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
-<!-- sidebar -->
-<!-- margin-sidebar -->
-    
-<!-- main -->
-<main class="content quarto-banner-title-block" id="quarto-document-content">
-
-
-
-
-
-<p>This is a post with executable code.</p>
-
-
-
-</main> <!-- /main -->
-<script id="quarto-html-after-body" type="application/javascript">
-window.document.addEventListener("DOMContentLoaded", function (event) {
-  const toggleBodyColorMode = (bsSheetEl) => {
-    const mode = bsSheetEl.getAttribute("data-mode");
-    const bodyEl = window.document.querySelector("body");
-    if (mode === "dark") {
-      bodyEl.classList.add("quarto-dark");
-      bodyEl.classList.remove("quarto-light");
-    } else {
-      bodyEl.classList.add("quarto-light");
-      bodyEl.classList.remove("quarto-dark");
-    }
-  }
-  const toggleBodyColorPrimary = () => {
-    const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
-    if (bsSheetEl) {
-      toggleBodyColorMode(bsSheetEl);
-    }
-  }
-  toggleBodyColorPrimary();  
-  const icon = "";
-  const anchorJS = new window.AnchorJS();
-  anchorJS.options = {
-    placement: 'right',
-    icon: icon
-  };
-  anchorJS.add('.anchored');
-  const isCodeAnnotation = (el) => {
-    for (const clz of el.classList) {
-      if (clz.startsWith('code-annotation-')) {                     
-        return true;
-      }
-    }
-    return false;
-  }
-  const clipboard = new window.ClipboardJS('.code-copy-button', {
-    text: function(trigger) {
-      const codeEl = trigger.previousElementSibling.cloneNode(true);
-      for (const childEl of codeEl.children) {
-        if (isCodeAnnotation(childEl)) {
-          childEl.remove();
-        }
-      }
-      return codeEl.innerText;
-    }
-  });
-  clipboard.on('success', function(e) {
-    // button target
-    const button = e.trigger;
-    // don't keep focus
-    button.blur();
-    // flash "checked"
-    button.classList.add('code-copy-button-checked');
-    var currentTitle = button.getAttribute("title");
-    button.setAttribute("title", "Copied!");
-    let tooltip;
-    if (window.bootstrap) {
-      button.setAttribute("data-bs-toggle", "tooltip");
-      button.setAttribute("data-bs-placement", "left");
-      button.setAttribute("data-bs-title", "Copied!");
-      tooltip = new bootstrap.Tooltip(button, 
-        { trigger: "manual", 
-          customClass: "code-copy-button-tooltip",
-          offset: [0, -8]});
-      tooltip.show();    
-    }
-    setTimeout(function() {
-      if (tooltip) {
-        tooltip.hide();
-        button.removeAttribute("data-bs-title");
-        button.removeAttribute("data-bs-toggle");
-        button.removeAttribute("data-bs-placement");
-      }
-      button.setAttribute("title", currentTitle);
-      button.classList.remove('code-copy-button-checked');
-    }, 1000);
-    // clear code selection
-    e.clearSelection();
-  });
-  function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
-    const config = {
-      allowHTML: true,
-      maxWidth: 500,
-      delay: 100,
-      arrow: false,
-      appendTo: function(el) {
-          return el.parentElement;
-      },
-      interactive: true,
-      interactiveBorder: 10,
-      theme: 'quarto',
-      placement: 'bottom-start',
-    };
-    if (contentFn) {
-      config.content = contentFn;
-    }
-    if (onTriggerFn) {
-      config.onTrigger = onTriggerFn;
-    }
-    if (onUntriggerFn) {
-      config.onUntrigger = onUntriggerFn;
-    }
-    window.tippy(el, config); 
-  }
-  const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
-  for (var i=0; i<noterefs.length; i++) {
-    const ref = noterefs[i];
-    tippyHover(ref, function() {
-      // use id or data attribute instead here
-      let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
-      try { href = new URL(href).hash; } catch {}
-      const id = href.replace(/^#\/?/, "");
-      const note = window.document.getElementById(id);
-      return note.innerHTML;
-    });
-  }
-  const xrefs = window.document.querySelectorAll('a.quarto-xref');
-  const processXRef = (id, note) => {
-    // Strip column container classes
-    const stripColumnClz = (el) => {
-      el.classList.remove("page-full", "page-columns");
-      if (el.children) {
-        for (const child of el.children) {
-          stripColumnClz(child);
-        }
-      }
-    }
-    stripColumnClz(note)
-    if (id === null || id.startsWith('sec-')) {
-      // Special case sections, only their first couple elements
-      const container = document.createElement("div");
-      if (note.children && note.children.length > 2) {
-        container.appendChild(note.children[0].cloneNode(true));
-        for (let i = 1; i < note.children.length; i++) {
-          const child = note.children[i];
-          if (child.tagName === "P" && child.innerText === "") {
-            continue;
-          } else {
-            container.appendChild(child.cloneNode(true));
-            break;
-          }
-        }
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(container);
-        }
-        return container.innerHTML
-      } else {
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(note);
-        }
-        return note.innerHTML;
-      }
-    } else {
-      // Remove any anchor links if they are present
-      const anchorLink = note.querySelector('a.anchorjs-link');
-      if (anchorLink) {
-        anchorLink.remove();
-      }
-      if (window.Quarto?.typesetMath) {
-        window.Quarto.typesetMath(note);
-      }
-      // TODO in 1.5, we should make sure this works without a callout special case
-      if (note.classList.contains("callout")) {
-        return note.outerHTML;
-      } else {
-        return note.innerHTML;
-      }
-    }
-  }
-  for (var i=0; i<xrefs.length; i++) {
-    const xref = xrefs[i];
-    tippyHover(xref, undefined, function(instance) {
-      instance.disable();
-      let url = xref.getAttribute('href');
-      let hash = undefined; 
-      if (url.startsWith('#')) {
-        hash = url;
-      } else {
-        try { hash = new URL(url).hash; } catch {}
-      }
-      if (hash) {
-        const id = hash.replace(/^#\/?/, "");
-        const note = window.document.getElementById(id);
-        if (note !== null) {
-          try {
-            const html = processXRef(id, note.cloneNode(true));
-            instance.setContent(html);
-          } finally {
-            instance.enable();
-            instance.show();
-          }
-        } else {
-          // See if we can fetch this
-          fetch(url.split('#')[0])
-          .then(res => res.text())
-          .then(html => {
-            const parser = new DOMParser();
-            const htmlDoc = parser.parseFromString(html, "text/html");
-            const note = htmlDoc.getElementById(id);
-            if (note !== null) {
-              const html = processXRef(id, note);
-              instance.setContent(html);
-            } 
-          }).finally(() => {
-            instance.enable();
-            instance.show();
-          });
-        }
-      } else {
-        // See if we can fetch a full url (with no hash to target)
-        // This is a special case and we should probably do some content thinning / targeting
-        fetch(url)
-        .then(res => res.text())
-        .then(html => {
-          const parser = new DOMParser();
-          const htmlDoc = parser.parseFromString(html, "text/html");
-          const note = htmlDoc.querySelector('main.content');
-          if (note !== null) {
-            // This should only happen for chapter cross references
-            // (since there is no id in the URL)
-            // remove the first header
-            if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
-              note.children[0].remove();
-            }
-            const html = processXRef(null, note);
-            instance.setContent(html);
-          } 
-        }).finally(() => {
-          instance.enable();
-          instance.show();
-        });
-      }
-    }, function(instance) {
-    });
-  }
-      let selectedAnnoteEl;
-      const selectorForAnnotation = ( cell, annotation) => {
-        let cellAttr = 'data-code-cell="' + cell + '"';
-        let lineAttr = 'data-code-annotation="' +  annotation + '"';
-        const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
-        return selector;
-      }
-      const selectCodeLines = (annoteEl) => {
-        const doc = window.document;
-        const targetCell = annoteEl.getAttribute("data-target-cell");
-        const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
-        const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
-        const lines = annoteSpan.getAttribute("data-code-lines").split(",");
-        const lineIds = lines.map((line) => {
-          return targetCell + "-" + line;
-        })
-        let top = null;
-        let height = null;
-        let parent = null;
-        if (lineIds.length > 0) {
-            //compute the position of the single el (top and bottom and make a div)
-            const el = window.document.getElementById(lineIds[0]);
-            top = el.offsetTop;
-            height = el.offsetHeight;
-            parent = el.parentElement.parentElement;
-          if (lineIds.length > 1) {
-            const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
-            const bottom = lastEl.offsetTop + lastEl.offsetHeight;
-            height = bottom - top;
-          }
-          if (top !== null && height !== null && parent !== null) {
-            // cook up a div (if necessary) and position it 
-            let div = window.document.getElementById("code-annotation-line-highlight");
-            if (div === null) {
-              div = window.document.createElement("div");
-              div.setAttribute("id", "code-annotation-line-highlight");
-              div.style.position = 'absolute';
-              parent.appendChild(div);
-            }
-            div.style.top = top - 2 + "px";
-            div.style.height = height + 4 + "px";
-            div.style.left = 0;
-            let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
-            if (gutterDiv === null) {
-              gutterDiv = window.document.createElement("div");
-              gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
-              gutterDiv.style.position = 'absolute';
-              const codeCell = window.document.getElementById(targetCell);
-              const gutter = codeCell.querySelector('.code-annotation-gutter');
-              gutter.appendChild(gutterDiv);
-            }
-            gutterDiv.style.top = top - 2 + "px";
-            gutterDiv.style.height = height + 4 + "px";
-          }
-          selectedAnnoteEl = annoteEl;
-        }
-      };
-      const unselectCodeLines = () => {
-        const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
-        elementsIds.forEach((elId) => {
-          const div = window.document.getElementById(elId);
-          if (div) {
-            div.remove();
-          }
-        });
-        selectedAnnoteEl = undefined;
-      };
-        // Handle positioning of the toggle
-    window.addEventListener(
-      "resize",
-      throttle(() => {
-        elRect = undefined;
-        if (selectedAnnoteEl) {
-          selectCodeLines(selectedAnnoteEl);
-        }
-      }, 10)
-    );
-    function throttle(fn, ms) {
-    let throttle = false;
-    let timer;
-      return (...args) => {
-        if(!throttle) { // first call gets through
-            fn.apply(this, args);
-            throttle = true;
-        } else { // all the others get throttled
-            if(timer) clearTimeout(timer); // cancel #2
-            timer = setTimeout(() => {
-              fn.apply(this, args);
-              timer = throttle = false;
-            }, ms);
-        }
-      };
-    }
-      // Attach click handler to the DT
-      const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
-      for (const annoteDlNode of annoteDls) {
-        annoteDlNode.addEventListener('click', (event) => {
-          const clickedEl = event.target;
-          if (clickedEl !== selectedAnnoteEl) {
-            unselectCodeLines();
-            const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
-            if (activeEl) {
-              activeEl.classList.remove('code-annotation-active');
-            }
-            selectCodeLines(clickedEl);
-            clickedEl.classList.add('code-annotation-active');
-          } else {
-            // Unselect the line
-            unselectCodeLines();
-            clickedEl.classList.remove('code-annotation-active');
-          }
-        });
-      }
-  const findCites = (el) => {
-    const parentEl = el.parentElement;
-    if (parentEl) {
-      const cites = parentEl.dataset.cites;
-      if (cites) {
-        return {
-          el,
-          cites: cites.split(' ')
-        };
-      } else {
-        return findCites(el.parentElement)
-      }
-    } else {
-      return undefined;
-    }
-  };
-  var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
-  for (var i=0; i<bibliorefs.length; i++) {
-    const ref = bibliorefs[i];
-    const citeInfo = findCites(ref);
-    if (citeInfo) {
-      tippyHover(citeInfo.el, function() {
-        var popup = window.document.createElement('div');
-        citeInfo.cites.forEach(function(cite) {
-          var citeDiv = window.document.createElement('div');
-          citeDiv.classList.add('hanging-indent');
-          citeDiv.classList.add('csl-entry');
-          var biblioDiv = window.document.getElementById('ref-' + cite);
-          if (biblioDiv) {
-            citeDiv.innerHTML = biblioDiv.innerHTML;
-          }
-          popup.appendChild(citeDiv);
-        });
-        return popup.innerHTML;
-      });
-    }
-  }
-});
-</script>
-</div> <!-- /content -->
-
-
-
-
-</body></html>
\ No newline at end of file
diff --git a/_site/posts/welcome/index.html b/_site/posts/welcome/index.html
deleted file mode 100644
index 564abe60f2f70e35bcd358ad96d3e2e7676a44fe..0000000000000000000000000000000000000000
--- a/_site/posts/welcome/index.html
+++ /dev/null
@@ -1,556 +0,0 @@
-<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
-
-<meta charset="utf-8">
-<meta name="generator" content="quarto-1.4.543">
-
-<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
-
-<meta name="author" content="Tristan O’Malley">
-<meta name="dcterms.date" content="2024-02-12">
-
-<title>. - Welcome To My Blog</title>
-<style>
-code{white-space: pre-wrap;}
-span.smallcaps{font-variant: small-caps;}
-div.columns{display: flex; gap: min(4vw, 1.5em);}
-div.column{flex: auto; overflow-x: auto;}
-div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
-ul.task-list{list-style: none;}
-ul.task-list li input[type="checkbox"] {
-  width: 0.8em;
-  margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 
-  vertical-align: middle;
-}
-</style>
-
-
-<script src="../../site_libs/quarto-nav/quarto-nav.js"></script>
-<script src="../../site_libs/quarto-nav/headroom.min.js"></script>
-<script src="../../site_libs/clipboard/clipboard.min.js"></script>
-<script src="../../site_libs/quarto-search/autocomplete.umd.js"></script>
-<script src="../../site_libs/quarto-search/fuse.min.js"></script>
-<script src="../../site_libs/quarto-search/quarto-search.js"></script>
-<meta name="quarto:offset" content="../../">
-<script src="../../site_libs/quarto-html/quarto.js"></script>
-<script src="../../site_libs/quarto-html/popper.min.js"></script>
-<script src="../../site_libs/quarto-html/tippy.umd.min.js"></script>
-<script src="../../site_libs/quarto-html/anchor.min.js"></script>
-<link href="../../site_libs/quarto-html/tippy.css" rel="stylesheet">
-<link href="../../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
-<script src="../../site_libs/bootstrap/bootstrap.min.js"></script>
-<link href="../../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
-<link href="../../site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
-<script id="quarto-search-options" type="application/json">{
-  "location": "navbar",
-  "copy-button": false,
-  "collapse-after": 3,
-  "panel-placement": "end",
-  "type": "overlay",
-  "limit": 50,
-  "keyboard-shortcut": [
-    "f",
-    "/",
-    "s"
-  ],
-  "show-item-context": false,
-  "language": {
-    "search-no-results-text": "No results",
-    "search-matching-documents-text": "matching documents",
-    "search-copy-link-title": "Copy link to search",
-    "search-hide-matches-text": "Hide additional matches",
-    "search-more-match-text": "more match in this document",
-    "search-more-matches-text": "more matches in this document",
-    "search-clear-button-title": "Clear",
-    "search-text-placeholder": "",
-    "search-detached-cancel-button-title": "Cancel",
-    "search-submit-button-title": "Submit",
-    "search-label": "Search"
-  }
-}</script>
-
-
-<link rel="stylesheet" href="../../styles.css">
-</head>
-
-<body class="nav-fixed fullcontent">
-
-<div id="quarto-search-results"></div>
-  <header id="quarto-header" class="headroom fixed-top quarto-banner">
-    <nav class="navbar navbar-expand-lg " data-bs-theme="dark">
-      <div class="navbar-container container-fluid">
-      <div class="navbar-brand-container mx-auto">
-    <a class="navbar-brand" href="../../index.html">
-    <span class="navbar-title">.</span>
-    </a>
-  </div>
-            <div id="quarto-search" class="" title="Search"></div>
-          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
-  <span class="navbar-toggler-icon"></span>
-</button>
-          <div class="collapse navbar-collapse" id="navbarCollapse">
-            <ul class="navbar-nav navbar-nav-scroll ms-auto">
-  <li class="nav-item">
-    <a class="nav-link" href="../../about.html"> 
-<span class="menu-text">About</span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://github.com/"> <i class="bi bi-github" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-  <li class="nav-item compact">
-    <a class="nav-link" href="https://twitter.com"> <i class="bi bi-twitter" role="img">
-</i> 
-<span class="menu-text"></span></a>
-  </li>  
-</ul>
-          </div> <!-- /navcollapse -->
-          <div class="quarto-navbar-tools">
-</div>
-      </div> <!-- /container-fluid -->
-    </nav>
-</header>
-<!-- content -->
-<header id="title-block-header" class="quarto-title-block default page-columns page-full">
-  <div class="quarto-title-banner page-columns page-full">
-    <div class="quarto-title column-body">
-      <h1 class="title">Welcome To My Blog</h1>
-                                <div class="quarto-categories">
-                <div class="quarto-category">news</div>
-              </div>
-                  </div>
-  </div>
-    
-  
-  <div class="quarto-title-meta">
-
-      <div>
-      <div class="quarto-title-meta-heading">Author</div>
-      <div class="quarto-title-meta-contents">
-               <p>Tristan O’Malley </p>
-            </div>
-    </div>
-      
-      <div>
-      <div class="quarto-title-meta-heading">Published</div>
-      <div class="quarto-title-meta-contents">
-        <p class="date">February 12, 2024</p>
-      </div>
-    </div>
-    
-      
-    </div>
-    
-  
-  </header><div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
-<!-- sidebar -->
-<!-- margin-sidebar -->
-    
-<!-- main -->
-<main class="content quarto-banner-title-block" id="quarto-document-content">
-
-
-
-
-
-<p>This is the first post in a Quarto blog. Welcome!</p>
-<p><img src="thumbnail.jpg" class="img-fluid"></p>
-<p>Since this post doesn’t specify an explicit <code>image</code>, the first image in the post will be used in the listing page of posts.</p>
-
-
-
-</main> <!-- /main -->
-<script id="quarto-html-after-body" type="application/javascript">
-window.document.addEventListener("DOMContentLoaded", function (event) {
-  const toggleBodyColorMode = (bsSheetEl) => {
-    const mode = bsSheetEl.getAttribute("data-mode");
-    const bodyEl = window.document.querySelector("body");
-    if (mode === "dark") {
-      bodyEl.classList.add("quarto-dark");
-      bodyEl.classList.remove("quarto-light");
-    } else {
-      bodyEl.classList.add("quarto-light");
-      bodyEl.classList.remove("quarto-dark");
-    }
-  }
-  const toggleBodyColorPrimary = () => {
-    const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
-    if (bsSheetEl) {
-      toggleBodyColorMode(bsSheetEl);
-    }
-  }
-  toggleBodyColorPrimary();  
-  const icon = "";
-  const anchorJS = new window.AnchorJS();
-  anchorJS.options = {
-    placement: 'right',
-    icon: icon
-  };
-  anchorJS.add('.anchored');
-  const isCodeAnnotation = (el) => {
-    for (const clz of el.classList) {
-      if (clz.startsWith('code-annotation-')) {                     
-        return true;
-      }
-    }
-    return false;
-  }
-  const clipboard = new window.ClipboardJS('.code-copy-button', {
-    text: function(trigger) {
-      const codeEl = trigger.previousElementSibling.cloneNode(true);
-      for (const childEl of codeEl.children) {
-        if (isCodeAnnotation(childEl)) {
-          childEl.remove();
-        }
-      }
-      return codeEl.innerText;
-    }
-  });
-  clipboard.on('success', function(e) {
-    // button target
-    const button = e.trigger;
-    // don't keep focus
-    button.blur();
-    // flash "checked"
-    button.classList.add('code-copy-button-checked');
-    var currentTitle = button.getAttribute("title");
-    button.setAttribute("title", "Copied!");
-    let tooltip;
-    if (window.bootstrap) {
-      button.setAttribute("data-bs-toggle", "tooltip");
-      button.setAttribute("data-bs-placement", "left");
-      button.setAttribute("data-bs-title", "Copied!");
-      tooltip = new bootstrap.Tooltip(button, 
-        { trigger: "manual", 
-          customClass: "code-copy-button-tooltip",
-          offset: [0, -8]});
-      tooltip.show();    
-    }
-    setTimeout(function() {
-      if (tooltip) {
-        tooltip.hide();
-        button.removeAttribute("data-bs-title");
-        button.removeAttribute("data-bs-toggle");
-        button.removeAttribute("data-bs-placement");
-      }
-      button.setAttribute("title", currentTitle);
-      button.classList.remove('code-copy-button-checked');
-    }, 1000);
-    // clear code selection
-    e.clearSelection();
-  });
-  function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
-    const config = {
-      allowHTML: true,
-      maxWidth: 500,
-      delay: 100,
-      arrow: false,
-      appendTo: function(el) {
-          return el.parentElement;
-      },
-      interactive: true,
-      interactiveBorder: 10,
-      theme: 'quarto',
-      placement: 'bottom-start',
-    };
-    if (contentFn) {
-      config.content = contentFn;
-    }
-    if (onTriggerFn) {
-      config.onTrigger = onTriggerFn;
-    }
-    if (onUntriggerFn) {
-      config.onUntrigger = onUntriggerFn;
-    }
-    window.tippy(el, config); 
-  }
-  const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
-  for (var i=0; i<noterefs.length; i++) {
-    const ref = noterefs[i];
-    tippyHover(ref, function() {
-      // use id or data attribute instead here
-      let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
-      try { href = new URL(href).hash; } catch {}
-      const id = href.replace(/^#\/?/, "");
-      const note = window.document.getElementById(id);
-      return note.innerHTML;
-    });
-  }
-  const xrefs = window.document.querySelectorAll('a.quarto-xref');
-  const processXRef = (id, note) => {
-    // Strip column container classes
-    const stripColumnClz = (el) => {
-      el.classList.remove("page-full", "page-columns");
-      if (el.children) {
-        for (const child of el.children) {
-          stripColumnClz(child);
-        }
-      }
-    }
-    stripColumnClz(note)
-    if (id === null || id.startsWith('sec-')) {
-      // Special case sections, only their first couple elements
-      const container = document.createElement("div");
-      if (note.children && note.children.length > 2) {
-        container.appendChild(note.children[0].cloneNode(true));
-        for (let i = 1; i < note.children.length; i++) {
-          const child = note.children[i];
-          if (child.tagName === "P" && child.innerText === "") {
-            continue;
-          } else {
-            container.appendChild(child.cloneNode(true));
-            break;
-          }
-        }
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(container);
-        }
-        return container.innerHTML
-      } else {
-        if (window.Quarto?.typesetMath) {
-          window.Quarto.typesetMath(note);
-        }
-        return note.innerHTML;
-      }
-    } else {
-      // Remove any anchor links if they are present
-      const anchorLink = note.querySelector('a.anchorjs-link');
-      if (anchorLink) {
-        anchorLink.remove();
-      }
-      if (window.Quarto?.typesetMath) {
-        window.Quarto.typesetMath(note);
-      }
-      // TODO in 1.5, we should make sure this works without a callout special case
-      if (note.classList.contains("callout")) {
-        return note.outerHTML;
-      } else {
-        return note.innerHTML;
-      }
-    }
-  }
-  for (var i=0; i<xrefs.length; i++) {
-    const xref = xrefs[i];
-    tippyHover(xref, undefined, function(instance) {
-      instance.disable();
-      let url = xref.getAttribute('href');
-      let hash = undefined; 
-      if (url.startsWith('#')) {
-        hash = url;
-      } else {
-        try { hash = new URL(url).hash; } catch {}
-      }
-      if (hash) {
-        const id = hash.replace(/^#\/?/, "");
-        const note = window.document.getElementById(id);
-        if (note !== null) {
-          try {
-            const html = processXRef(id, note.cloneNode(true));
-            instance.setContent(html);
-          } finally {
-            instance.enable();
-            instance.show();
-          }
-        } else {
-          // See if we can fetch this
-          fetch(url.split('#')[0])
-          .then(res => res.text())
-          .then(html => {
-            const parser = new DOMParser();
-            const htmlDoc = parser.parseFromString(html, "text/html");
-            const note = htmlDoc.getElementById(id);
-            if (note !== null) {
-              const html = processXRef(id, note);
-              instance.setContent(html);
-            } 
-          }).finally(() => {
-            instance.enable();
-            instance.show();
-          });
-        }
-      } else {
-        // See if we can fetch a full url (with no hash to target)
-        // This is a special case and we should probably do some content thinning / targeting
-        fetch(url)
-        .then(res => res.text())
-        .then(html => {
-          const parser = new DOMParser();
-          const htmlDoc = parser.parseFromString(html, "text/html");
-          const note = htmlDoc.querySelector('main.content');
-          if (note !== null) {
-            // This should only happen for chapter cross references
-            // (since there is no id in the URL)
-            // remove the first header
-            if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
-              note.children[0].remove();
-            }
-            const html = processXRef(null, note);
-            instance.setContent(html);
-          } 
-        }).finally(() => {
-          instance.enable();
-          instance.show();
-        });
-      }
-    }, function(instance) {
-    });
-  }
-      let selectedAnnoteEl;
-      const selectorForAnnotation = ( cell, annotation) => {
-        let cellAttr = 'data-code-cell="' + cell + '"';
-        let lineAttr = 'data-code-annotation="' +  annotation + '"';
-        const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
-        return selector;
-      }
-      const selectCodeLines = (annoteEl) => {
-        const doc = window.document;
-        const targetCell = annoteEl.getAttribute("data-target-cell");
-        const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
-        const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
-        const lines = annoteSpan.getAttribute("data-code-lines").split(",");
-        const lineIds = lines.map((line) => {
-          return targetCell + "-" + line;
-        })
-        let top = null;
-        let height = null;
-        let parent = null;
-        if (lineIds.length > 0) {
-            //compute the position of the single el (top and bottom and make a div)
-            const el = window.document.getElementById(lineIds[0]);
-            top = el.offsetTop;
-            height = el.offsetHeight;
-            parent = el.parentElement.parentElement;
-          if (lineIds.length > 1) {
-            const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
-            const bottom = lastEl.offsetTop + lastEl.offsetHeight;
-            height = bottom - top;
-          }
-          if (top !== null && height !== null && parent !== null) {
-            // cook up a div (if necessary) and position it 
-            let div = window.document.getElementById("code-annotation-line-highlight");
-            if (div === null) {
-              div = window.document.createElement("div");
-              div.setAttribute("id", "code-annotation-line-highlight");
-              div.style.position = 'absolute';
-              parent.appendChild(div);
-            }
-            div.style.top = top - 2 + "px";
-            div.style.height = height + 4 + "px";
-            div.style.left = 0;
-            let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
-            if (gutterDiv === null) {
-              gutterDiv = window.document.createElement("div");
-              gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
-              gutterDiv.style.position = 'absolute';
-              const codeCell = window.document.getElementById(targetCell);
-              const gutter = codeCell.querySelector('.code-annotation-gutter');
-              gutter.appendChild(gutterDiv);
-            }
-            gutterDiv.style.top = top - 2 + "px";
-            gutterDiv.style.height = height + 4 + "px";
-          }
-          selectedAnnoteEl = annoteEl;
-        }
-      };
-      const unselectCodeLines = () => {
-        const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
-        elementsIds.forEach((elId) => {
-          const div = window.document.getElementById(elId);
-          if (div) {
-            div.remove();
-          }
-        });
-        selectedAnnoteEl = undefined;
-      };
-        // Handle positioning of the toggle
-    window.addEventListener(
-      "resize",
-      throttle(() => {
-        elRect = undefined;
-        if (selectedAnnoteEl) {
-          selectCodeLines(selectedAnnoteEl);
-        }
-      }, 10)
-    );
-    function throttle(fn, ms) {
-    let throttle = false;
-    let timer;
-      return (...args) => {
-        if(!throttle) { // first call gets through
-            fn.apply(this, args);
-            throttle = true;
-        } else { // all the others get throttled
-            if(timer) clearTimeout(timer); // cancel #2
-            timer = setTimeout(() => {
-              fn.apply(this, args);
-              timer = throttle = false;
-            }, ms);
-        }
-      };
-    }
-      // Attach click handler to the DT
-      const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
-      for (const annoteDlNode of annoteDls) {
-        annoteDlNode.addEventListener('click', (event) => {
-          const clickedEl = event.target;
-          if (clickedEl !== selectedAnnoteEl) {
-            unselectCodeLines();
-            const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
-            if (activeEl) {
-              activeEl.classList.remove('code-annotation-active');
-            }
-            selectCodeLines(clickedEl);
-            clickedEl.classList.add('code-annotation-active');
-          } else {
-            // Unselect the line
-            unselectCodeLines();
-            clickedEl.classList.remove('code-annotation-active');
-          }
-        });
-      }
-  const findCites = (el) => {
-    const parentEl = el.parentElement;
-    if (parentEl) {
-      const cites = parentEl.dataset.cites;
-      if (cites) {
-        return {
-          el,
-          cites: cites.split(' ')
-        };
-      } else {
-        return findCites(el.parentElement)
-      }
-    } else {
-      return undefined;
-    }
-  };
-  var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
-  for (var i=0; i<bibliorefs.length; i++) {
-    const ref = bibliorefs[i];
-    const citeInfo = findCites(ref);
-    if (citeInfo) {
-      tippyHover(citeInfo.el, function() {
-        var popup = window.document.createElement('div');
-        citeInfo.cites.forEach(function(cite) {
-          var citeDiv = window.document.createElement('div');
-          citeDiv.classList.add('hanging-indent');
-          citeDiv.classList.add('csl-entry');
-          var biblioDiv = window.document.getElementById('ref-' + cite);
-          if (biblioDiv) {
-            citeDiv.innerHTML = biblioDiv.innerHTML;
-          }
-          popup.appendChild(citeDiv);
-        });
-        return popup.innerHTML;
-      });
-    }
-  }
-});
-</script>
-</div> <!-- /content -->
-
-
-
-
-</body></html>
\ No newline at end of file
diff --git a/_site/posts/welcome/thumbnail.jpg b/_site/posts/welcome/thumbnail.jpg
deleted file mode 100644
index 8e3107c9e0a0b43b424bcad3e04f6ece0f8ddb14..0000000000000000000000000000000000000000
Binary files a/_site/posts/welcome/thumbnail.jpg and /dev/null differ
diff --git a/_site/profile.jpg b/_site/profile.jpg
deleted file mode 100644
index 9d50b914ff00f24da73b3f3a51d0080fb0908f4d..0000000000000000000000000000000000000000
Binary files a/_site/profile.jpg and /dev/null differ
diff --git a/_site/search.json b/_site/search.json
deleted file mode 100644
index 876ca52c02f65ecadebc8ce2ca427c0547d57db8..0000000000000000000000000000000000000000
--- a/_site/search.json
+++ /dev/null
@@ -1,30 +0,0 @@
-[
-  {
-    "objectID": "about.html",
-    "href": "about.html",
-    "title": "About",
-    "section": "",
-    "text": "About this blog"
-  },
-  {
-    "objectID": "posts/welcome/index.html",
-    "href": "posts/welcome/index.html",
-    "title": "Welcome To My Blog",
-    "section": "",
-    "text": "This is the first post in a Quarto blog. Welcome!\n\nSince this post doesn’t specify an explicit image, the first image in the post will be used in the listing page of posts."
-  },
-  {
-    "objectID": "posts/post-with-code/index.html",
-    "href": "posts/post-with-code/index.html",
-    "title": "Post With Code",
-    "section": "",
-    "text": "This is a post with executable code."
-  },
-  {
-    "objectID": "index.html",
-    "href": "index.html",
-    "title": ".",
-    "section": "",
-    "text": "Post With Code\n\n\n\n\n\n\nnews\n\n\ncode\n\n\nanalysis\n\n\n\n\n\n\n\n\n\nFeb 15, 2024\n\n\nHarlow Malloc\n\n\n\n\n\n\n\n\n\n\n\n\nWelcome To My Blog\n\n\n\n\n\n\nnews\n\n\n\n\n\n\n\n\n\nFeb 12, 2024\n\n\nTristan O’Malley\n\n\n\n\n\n\nNo matching items"
-  }
-]
\ No newline at end of file
diff --git a/_site/site_libs/bootstrap/bootstrap-icons.css b/_site/site_libs/bootstrap/bootstrap-icons.css
deleted file mode 100644
index 285e4448fc8239bca4d8be301d80a6e777aa1d14..0000000000000000000000000000000000000000
--- a/_site/site_libs/bootstrap/bootstrap-icons.css
+++ /dev/null
@@ -1,2078 +0,0 @@
-/*!
- * Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/)
- * Copyright 2019-2023 The Bootstrap Authors
- * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
- */
-
-@font-face {
-  font-display: block;
-  font-family: "bootstrap-icons";
-  src: 
-url("./bootstrap-icons.woff?2820a3852bdb9a5832199cc61cec4e65") format("woff");
-}
-
-.bi::before,
-[class^="bi-"]::before,
-[class*=" bi-"]::before {
-  display: inline-block;
-  font-family: bootstrap-icons !important;
-  font-style: normal;
-  font-weight: normal !important;
-  font-variant: normal;
-  text-transform: none;
-  line-height: 1;
-  vertical-align: -.125em;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-
-.bi-123::before { content: "\f67f"; }
-.bi-alarm-fill::before { content: "\f101"; }
-.bi-alarm::before { content: "\f102"; }
-.bi-align-bottom::before { content: "\f103"; }
-.bi-align-center::before { content: "\f104"; }
-.bi-align-end::before { content: "\f105"; }
-.bi-align-middle::before { content: "\f106"; }
-.bi-align-start::before { content: "\f107"; }
-.bi-align-top::before { content: "\f108"; }
-.bi-alt::before { content: "\f109"; }
-.bi-app-indicator::before { content: "\f10a"; }
-.bi-app::before { content: "\f10b"; }
-.bi-archive-fill::before { content: "\f10c"; }
-.bi-archive::before { content: "\f10d"; }
-.bi-arrow-90deg-down::before { content: "\f10e"; }
-.bi-arrow-90deg-left::before { content: "\f10f"; }
-.bi-arrow-90deg-right::before { content: "\f110"; }
-.bi-arrow-90deg-up::before { content: "\f111"; }
-.bi-arrow-bar-down::before { content: "\f112"; }
-.bi-arrow-bar-left::before { content: "\f113"; }
-.bi-arrow-bar-right::before { content: "\f114"; }
-.bi-arrow-bar-up::before { content: "\f115"; }
-.bi-arrow-clockwise::before { content: "\f116"; }
-.bi-arrow-counterclockwise::before { content: "\f117"; }
-.bi-arrow-down-circle-fill::before { content: "\f118"; }
-.bi-arrow-down-circle::before { content: "\f119"; }
-.bi-arrow-down-left-circle-fill::before { content: "\f11a"; }
-.bi-arrow-down-left-circle::before { content: "\f11b"; }
-.bi-arrow-down-left-square-fill::before { content: "\f11c"; }
-.bi-arrow-down-left-square::before { content: "\f11d"; }
-.bi-arrow-down-left::before { content: "\f11e"; }
-.bi-arrow-down-right-circle-fill::before { content: "\f11f"; }
-.bi-arrow-down-right-circle::before { content: "\f120"; }
-.bi-arrow-down-right-square-fill::before { content: "\f121"; }
-.bi-arrow-down-right-square::before { content: "\f122"; }
-.bi-arrow-down-right::before { content: "\f123"; }
-.bi-arrow-down-short::before { content: "\f124"; }
-.bi-arrow-down-square-fill::before { content: "\f125"; }
-.bi-arrow-down-square::before { content: "\f126"; }
-.bi-arrow-down-up::before { content: "\f127"; }
-.bi-arrow-down::before { content: "\f128"; }
-.bi-arrow-left-circle-fill::before { content: "\f129"; }
-.bi-arrow-left-circle::before { content: "\f12a"; }
-.bi-arrow-left-right::before { content: "\f12b"; }
-.bi-arrow-left-short::before { content: "\f12c"; }
-.bi-arrow-left-square-fill::before { content: "\f12d"; }
-.bi-arrow-left-square::before { content: "\f12e"; }
-.bi-arrow-left::before { content: "\f12f"; }
-.bi-arrow-repeat::before { content: "\f130"; }
-.bi-arrow-return-left::before { content: "\f131"; }
-.bi-arrow-return-right::before { content: "\f132"; }
-.bi-arrow-right-circle-fill::before { content: "\f133"; }
-.bi-arrow-right-circle::before { content: "\f134"; }
-.bi-arrow-right-short::before { content: "\f135"; }
-.bi-arrow-right-square-fill::before { content: "\f136"; }
-.bi-arrow-right-square::before { content: "\f137"; }
-.bi-arrow-right::before { content: "\f138"; }
-.bi-arrow-up-circle-fill::before { content: "\f139"; }
-.bi-arrow-up-circle::before { content: "\f13a"; }
-.bi-arrow-up-left-circle-fill::before { content: "\f13b"; }
-.bi-arrow-up-left-circle::before { content: "\f13c"; }
-.bi-arrow-up-left-square-fill::before { content: "\f13d"; }
-.bi-arrow-up-left-square::before { content: "\f13e"; }
-.bi-arrow-up-left::before { content: "\f13f"; }
-.bi-arrow-up-right-circle-fill::before { content: "\f140"; }
-.bi-arrow-up-right-circle::before { content: "\f141"; }
-.bi-arrow-up-right-square-fill::before { content: "\f142"; }
-.bi-arrow-up-right-square::before { content: "\f143"; }
-.bi-arrow-up-right::before { content: "\f144"; }
-.bi-arrow-up-short::before { content: "\f145"; }
-.bi-arrow-up-square-fill::before { content: "\f146"; }
-.bi-arrow-up-square::before { content: "\f147"; }
-.bi-arrow-up::before { content: "\f148"; }
-.bi-arrows-angle-contract::before { content: "\f149"; }
-.bi-arrows-angle-expand::before { content: "\f14a"; }
-.bi-arrows-collapse::before { content: "\f14b"; }
-.bi-arrows-expand::before { content: "\f14c"; }
-.bi-arrows-fullscreen::before { content: "\f14d"; }
-.bi-arrows-move::before { content: "\f14e"; }
-.bi-aspect-ratio-fill::before { content: "\f14f"; }
-.bi-aspect-ratio::before { content: "\f150"; }
-.bi-asterisk::before { content: "\f151"; }
-.bi-at::before { content: "\f152"; }
-.bi-award-fill::before { content: "\f153"; }
-.bi-award::before { content: "\f154"; }
-.bi-back::before { content: "\f155"; }
-.bi-backspace-fill::before { content: "\f156"; }
-.bi-backspace-reverse-fill::before { content: "\f157"; }
-.bi-backspace-reverse::before { content: "\f158"; }
-.bi-backspace::before { content: "\f159"; }
-.bi-badge-3d-fill::before { content: "\f15a"; }
-.bi-badge-3d::before { content: "\f15b"; }
-.bi-badge-4k-fill::before { content: "\f15c"; }
-.bi-badge-4k::before { content: "\f15d"; }
-.bi-badge-8k-fill::before { content: "\f15e"; }
-.bi-badge-8k::before { content: "\f15f"; }
-.bi-badge-ad-fill::before { content: "\f160"; }
-.bi-badge-ad::before { content: "\f161"; }
-.bi-badge-ar-fill::before { content: "\f162"; }
-.bi-badge-ar::before { content: "\f163"; }
-.bi-badge-cc-fill::before { content: "\f164"; }
-.bi-badge-cc::before { content: "\f165"; }
-.bi-badge-hd-fill::before { content: "\f166"; }
-.bi-badge-hd::before { content: "\f167"; }
-.bi-badge-tm-fill::before { content: "\f168"; }
-.bi-badge-tm::before { content: "\f169"; }
-.bi-badge-vo-fill::before { content: "\f16a"; }
-.bi-badge-vo::before { content: "\f16b"; }
-.bi-badge-vr-fill::before { content: "\f16c"; }
-.bi-badge-vr::before { content: "\f16d"; }
-.bi-badge-wc-fill::before { content: "\f16e"; }
-.bi-badge-wc::before { content: "\f16f"; }
-.bi-bag-check-fill::before { content: "\f170"; }
-.bi-bag-check::before { content: "\f171"; }
-.bi-bag-dash-fill::before { content: "\f172"; }
-.bi-bag-dash::before { content: "\f173"; }
-.bi-bag-fill::before { content: "\f174"; }
-.bi-bag-plus-fill::before { content: "\f175"; }
-.bi-bag-plus::before { content: "\f176"; }
-.bi-bag-x-fill::before { content: "\f177"; }
-.bi-bag-x::before { content: "\f178"; }
-.bi-bag::before { content: "\f179"; }
-.bi-bar-chart-fill::before { content: "\f17a"; }
-.bi-bar-chart-line-fill::before { content: "\f17b"; }
-.bi-bar-chart-line::before { content: "\f17c"; }
-.bi-bar-chart-steps::before { content: "\f17d"; }
-.bi-bar-chart::before { content: "\f17e"; }
-.bi-basket-fill::before { content: "\f17f"; }
-.bi-basket::before { content: "\f180"; }
-.bi-basket2-fill::before { content: "\f181"; }
-.bi-basket2::before { content: "\f182"; }
-.bi-basket3-fill::before { content: "\f183"; }
-.bi-basket3::before { content: "\f184"; }
-.bi-battery-charging::before { content: "\f185"; }
-.bi-battery-full::before { content: "\f186"; }
-.bi-battery-half::before { content: "\f187"; }
-.bi-battery::before { content: "\f188"; }
-.bi-bell-fill::before { content: "\f189"; }
-.bi-bell::before { content: "\f18a"; }
-.bi-bezier::before { content: "\f18b"; }
-.bi-bezier2::before { content: "\f18c"; }
-.bi-bicycle::before { content: "\f18d"; }
-.bi-binoculars-fill::before { content: "\f18e"; }
-.bi-binoculars::before { content: "\f18f"; }
-.bi-blockquote-left::before { content: "\f190"; }
-.bi-blockquote-right::before { content: "\f191"; }
-.bi-book-fill::before { content: "\f192"; }
-.bi-book-half::before { content: "\f193"; }
-.bi-book::before { content: "\f194"; }
-.bi-bookmark-check-fill::before { content: "\f195"; }
-.bi-bookmark-check::before { content: "\f196"; }
-.bi-bookmark-dash-fill::before { content: "\f197"; }
-.bi-bookmark-dash::before { content: "\f198"; }
-.bi-bookmark-fill::before { content: "\f199"; }
-.bi-bookmark-heart-fill::before { content: "\f19a"; }
-.bi-bookmark-heart::before { content: "\f19b"; }
-.bi-bookmark-plus-fill::before { content: "\f19c"; }
-.bi-bookmark-plus::before { content: "\f19d"; }
-.bi-bookmark-star-fill::before { content: "\f19e"; }
-.bi-bookmark-star::before { content: "\f19f"; }
-.bi-bookmark-x-fill::before { content: "\f1a0"; }
-.bi-bookmark-x::before { content: "\f1a1"; }
-.bi-bookmark::before { content: "\f1a2"; }
-.bi-bookmarks-fill::before { content: "\f1a3"; }
-.bi-bookmarks::before { content: "\f1a4"; }
-.bi-bookshelf::before { content: "\f1a5"; }
-.bi-bootstrap-fill::before { content: "\f1a6"; }
-.bi-bootstrap-reboot::before { content: "\f1a7"; }
-.bi-bootstrap::before { content: "\f1a8"; }
-.bi-border-all::before { content: "\f1a9"; }
-.bi-border-bottom::before { content: "\f1aa"; }
-.bi-border-center::before { content: "\f1ab"; }
-.bi-border-inner::before { content: "\f1ac"; }
-.bi-border-left::before { content: "\f1ad"; }
-.bi-border-middle::before { content: "\f1ae"; }
-.bi-border-outer::before { content: "\f1af"; }
-.bi-border-right::before { content: "\f1b0"; }
-.bi-border-style::before { content: "\f1b1"; }
-.bi-border-top::before { content: "\f1b2"; }
-.bi-border-width::before { content: "\f1b3"; }
-.bi-border::before { content: "\f1b4"; }
-.bi-bounding-box-circles::before { content: "\f1b5"; }
-.bi-bounding-box::before { content: "\f1b6"; }
-.bi-box-arrow-down-left::before { content: "\f1b7"; }
-.bi-box-arrow-down-right::before { content: "\f1b8"; }
-.bi-box-arrow-down::before { content: "\f1b9"; }
-.bi-box-arrow-in-down-left::before { content: "\f1ba"; }
-.bi-box-arrow-in-down-right::before { content: "\f1bb"; }
-.bi-box-arrow-in-down::before { content: "\f1bc"; }
-.bi-box-arrow-in-left::before { content: "\f1bd"; }
-.bi-box-arrow-in-right::before { content: "\f1be"; }
-.bi-box-arrow-in-up-left::before { content: "\f1bf"; }
-.bi-box-arrow-in-up-right::before { content: "\f1c0"; }
-.bi-box-arrow-in-up::before { content: "\f1c1"; }
-.bi-box-arrow-left::before { content: "\f1c2"; }
-.bi-box-arrow-right::before { content: "\f1c3"; }
-.bi-box-arrow-up-left::before { content: "\f1c4"; }
-.bi-box-arrow-up-right::before { content: "\f1c5"; }
-.bi-box-arrow-up::before { content: "\f1c6"; }
-.bi-box-seam::before { content: "\f1c7"; }
-.bi-box::before { content: "\f1c8"; }
-.bi-braces::before { content: "\f1c9"; }
-.bi-bricks::before { content: "\f1ca"; }
-.bi-briefcase-fill::before { content: "\f1cb"; }
-.bi-briefcase::before { content: "\f1cc"; }
-.bi-brightness-alt-high-fill::before { content: "\f1cd"; }
-.bi-brightness-alt-high::before { content: "\f1ce"; }
-.bi-brightness-alt-low-fill::before { content: "\f1cf"; }
-.bi-brightness-alt-low::before { content: "\f1d0"; }
-.bi-brightness-high-fill::before { content: "\f1d1"; }
-.bi-brightness-high::before { content: "\f1d2"; }
-.bi-brightness-low-fill::before { content: "\f1d3"; }
-.bi-brightness-low::before { content: "\f1d4"; }
-.bi-broadcast-pin::before { content: "\f1d5"; }
-.bi-broadcast::before { content: "\f1d6"; }
-.bi-brush-fill::before { content: "\f1d7"; }
-.bi-brush::before { content: "\f1d8"; }
-.bi-bucket-fill::before { content: "\f1d9"; }
-.bi-bucket::before { content: "\f1da"; }
-.bi-bug-fill::before { content: "\f1db"; }
-.bi-bug::before { content: "\f1dc"; }
-.bi-building::before { content: "\f1dd"; }
-.bi-bullseye::before { content: "\f1de"; }
-.bi-calculator-fill::before { content: "\f1df"; }
-.bi-calculator::before { content: "\f1e0"; }
-.bi-calendar-check-fill::before { content: "\f1e1"; }
-.bi-calendar-check::before { content: "\f1e2"; }
-.bi-calendar-date-fill::before { content: "\f1e3"; }
-.bi-calendar-date::before { content: "\f1e4"; }
-.bi-calendar-day-fill::before { content: "\f1e5"; }
-.bi-calendar-day::before { content: "\f1e6"; }
-.bi-calendar-event-fill::before { content: "\f1e7"; }
-.bi-calendar-event::before { content: "\f1e8"; }
-.bi-calendar-fill::before { content: "\f1e9"; }
-.bi-calendar-minus-fill::before { content: "\f1ea"; }
-.bi-calendar-minus::before { content: "\f1eb"; }
-.bi-calendar-month-fill::before { content: "\f1ec"; }
-.bi-calendar-month::before { content: "\f1ed"; }
-.bi-calendar-plus-fill::before { content: "\f1ee"; }
-.bi-calendar-plus::before { content: "\f1ef"; }
-.bi-calendar-range-fill::before { content: "\f1f0"; }
-.bi-calendar-range::before { content: "\f1f1"; }
-.bi-calendar-week-fill::before { content: "\f1f2"; }
-.bi-calendar-week::before { content: "\f1f3"; }
-.bi-calendar-x-fill::before { content: "\f1f4"; }
-.bi-calendar-x::before { content: "\f1f5"; }
-.bi-calendar::before { content: "\f1f6"; }
-.bi-calendar2-check-fill::before { content: "\f1f7"; }
-.bi-calendar2-check::before { content: "\f1f8"; }
-.bi-calendar2-date-fill::before { content: "\f1f9"; }
-.bi-calendar2-date::before { content: "\f1fa"; }
-.bi-calendar2-day-fill::before { content: "\f1fb"; }
-.bi-calendar2-day::before { content: "\f1fc"; }
-.bi-calendar2-event-fill::before { content: "\f1fd"; }
-.bi-calendar2-event::before { content: "\f1fe"; }
-.bi-calendar2-fill::before { content: "\f1ff"; }
-.bi-calendar2-minus-fill::before { content: "\f200"; }
-.bi-calendar2-minus::before { content: "\f201"; }
-.bi-calendar2-month-fill::before { content: "\f202"; }
-.bi-calendar2-month::before { content: "\f203"; }
-.bi-calendar2-plus-fill::before { content: "\f204"; }
-.bi-calendar2-plus::before { content: "\f205"; }
-.bi-calendar2-range-fill::before { content: "\f206"; }
-.bi-calendar2-range::before { content: "\f207"; }
-.bi-calendar2-week-fill::before { content: "\f208"; }
-.bi-calendar2-week::before { content: "\f209"; }
-.bi-calendar2-x-fill::before { content: "\f20a"; }
-.bi-calendar2-x::before { content: "\f20b"; }
-.bi-calendar2::before { content: "\f20c"; }
-.bi-calendar3-event-fill::before { content: "\f20d"; }
-.bi-calendar3-event::before { content: "\f20e"; }
-.bi-calendar3-fill::before { content: "\f20f"; }
-.bi-calendar3-range-fill::before { content: "\f210"; }
-.bi-calendar3-range::before { content: "\f211"; }
-.bi-calendar3-week-fill::before { content: "\f212"; }
-.bi-calendar3-week::before { content: "\f213"; }
-.bi-calendar3::before { content: "\f214"; }
-.bi-calendar4-event::before { content: "\f215"; }
-.bi-calendar4-range::before { content: "\f216"; }
-.bi-calendar4-week::before { content: "\f217"; }
-.bi-calendar4::before { content: "\f218"; }
-.bi-camera-fill::before { content: "\f219"; }
-.bi-camera-reels-fill::before { content: "\f21a"; }
-.bi-camera-reels::before { content: "\f21b"; }
-.bi-camera-video-fill::before { content: "\f21c"; }
-.bi-camera-video-off-fill::before { content: "\f21d"; }
-.bi-camera-video-off::before { content: "\f21e"; }
-.bi-camera-video::before { content: "\f21f"; }
-.bi-camera::before { content: "\f220"; }
-.bi-camera2::before { content: "\f221"; }
-.bi-capslock-fill::before { content: "\f222"; }
-.bi-capslock::before { content: "\f223"; }
-.bi-card-checklist::before { content: "\f224"; }
-.bi-card-heading::before { content: "\f225"; }
-.bi-card-image::before { content: "\f226"; }
-.bi-card-list::before { content: "\f227"; }
-.bi-card-text::before { content: "\f228"; }
-.bi-caret-down-fill::before { content: "\f229"; }
-.bi-caret-down-square-fill::before { content: "\f22a"; }
-.bi-caret-down-square::before { content: "\f22b"; }
-.bi-caret-down::before { content: "\f22c"; }
-.bi-caret-left-fill::before { content: "\f22d"; }
-.bi-caret-left-square-fill::before { content: "\f22e"; }
-.bi-caret-left-square::before { content: "\f22f"; }
-.bi-caret-left::before { content: "\f230"; }
-.bi-caret-right-fill::before { content: "\f231"; }
-.bi-caret-right-square-fill::before { content: "\f232"; }
-.bi-caret-right-square::before { content: "\f233"; }
-.bi-caret-right::before { content: "\f234"; }
-.bi-caret-up-fill::before { content: "\f235"; }
-.bi-caret-up-square-fill::before { content: "\f236"; }
-.bi-caret-up-square::before { content: "\f237"; }
-.bi-caret-up::before { content: "\f238"; }
-.bi-cart-check-fill::before { content: "\f239"; }
-.bi-cart-check::before { content: "\f23a"; }
-.bi-cart-dash-fill::before { content: "\f23b"; }
-.bi-cart-dash::before { content: "\f23c"; }
-.bi-cart-fill::before { content: "\f23d"; }
-.bi-cart-plus-fill::before { content: "\f23e"; }
-.bi-cart-plus::before { content: "\f23f"; }
-.bi-cart-x-fill::before { content: "\f240"; }
-.bi-cart-x::before { content: "\f241"; }
-.bi-cart::before { content: "\f242"; }
-.bi-cart2::before { content: "\f243"; }
-.bi-cart3::before { content: "\f244"; }
-.bi-cart4::before { content: "\f245"; }
-.bi-cash-stack::before { content: "\f246"; }
-.bi-cash::before { content: "\f247"; }
-.bi-cast::before { content: "\f248"; }
-.bi-chat-dots-fill::before { content: "\f249"; }
-.bi-chat-dots::before { content: "\f24a"; }
-.bi-chat-fill::before { content: "\f24b"; }
-.bi-chat-left-dots-fill::before { content: "\f24c"; }
-.bi-chat-left-dots::before { content: "\f24d"; }
-.bi-chat-left-fill::before { content: "\f24e"; }
-.bi-chat-left-quote-fill::before { content: "\f24f"; }
-.bi-chat-left-quote::before { content: "\f250"; }
-.bi-chat-left-text-fill::before { content: "\f251"; }
-.bi-chat-left-text::before { content: "\f252"; }
-.bi-chat-left::before { content: "\f253"; }
-.bi-chat-quote-fill::before { content: "\f254"; }
-.bi-chat-quote::before { content: "\f255"; }
-.bi-chat-right-dots-fill::before { content: "\f256"; }
-.bi-chat-right-dots::before { content: "\f257"; }
-.bi-chat-right-fill::before { content: "\f258"; }
-.bi-chat-right-quote-fill::before { content: "\f259"; }
-.bi-chat-right-quote::before { content: "\f25a"; }
-.bi-chat-right-text-fill::before { content: "\f25b"; }
-.bi-chat-right-text::before { content: "\f25c"; }
-.bi-chat-right::before { content: "\f25d"; }
-.bi-chat-square-dots-fill::before { content: "\f25e"; }
-.bi-chat-square-dots::before { content: "\f25f"; }
-.bi-chat-square-fill::before { content: "\f260"; }
-.bi-chat-square-quote-fill::before { content: "\f261"; }
-.bi-chat-square-quote::before { content: "\f262"; }
-.bi-chat-square-text-fill::before { content: "\f263"; }
-.bi-chat-square-text::before { content: "\f264"; }
-.bi-chat-square::before { content: "\f265"; }
-.bi-chat-text-fill::before { content: "\f266"; }
-.bi-chat-text::before { content: "\f267"; }
-.bi-chat::before { content: "\f268"; }
-.bi-check-all::before { content: "\f269"; }
-.bi-check-circle-fill::before { content: "\f26a"; }
-.bi-check-circle::before { content: "\f26b"; }
-.bi-check-square-fill::before { content: "\f26c"; }
-.bi-check-square::before { content: "\f26d"; }
-.bi-check::before { content: "\f26e"; }
-.bi-check2-all::before { content: "\f26f"; }
-.bi-check2-circle::before { content: "\f270"; }
-.bi-check2-square::before { content: "\f271"; }
-.bi-check2::before { content: "\f272"; }
-.bi-chevron-bar-contract::before { content: "\f273"; }
-.bi-chevron-bar-down::before { content: "\f274"; }
-.bi-chevron-bar-expand::before { content: "\f275"; }
-.bi-chevron-bar-left::before { content: "\f276"; }
-.bi-chevron-bar-right::before { content: "\f277"; }
-.bi-chevron-bar-up::before { content: "\f278"; }
-.bi-chevron-compact-down::before { content: "\f279"; }
-.bi-chevron-compact-left::before { content: "\f27a"; }
-.bi-chevron-compact-right::before { content: "\f27b"; }
-.bi-chevron-compact-up::before { content: "\f27c"; }
-.bi-chevron-contract::before { content: "\f27d"; }
-.bi-chevron-double-down::before { content: "\f27e"; }
-.bi-chevron-double-left::before { content: "\f27f"; }
-.bi-chevron-double-right::before { content: "\f280"; }
-.bi-chevron-double-up::before { content: "\f281"; }
-.bi-chevron-down::before { content: "\f282"; }
-.bi-chevron-expand::before { content: "\f283"; }
-.bi-chevron-left::before { content: "\f284"; }
-.bi-chevron-right::before { content: "\f285"; }
-.bi-chevron-up::before { content: "\f286"; }
-.bi-circle-fill::before { content: "\f287"; }
-.bi-circle-half::before { content: "\f288"; }
-.bi-circle-square::before { content: "\f289"; }
-.bi-circle::before { content: "\f28a"; }
-.bi-clipboard-check::before { content: "\f28b"; }
-.bi-clipboard-data::before { content: "\f28c"; }
-.bi-clipboard-minus::before { content: "\f28d"; }
-.bi-clipboard-plus::before { content: "\f28e"; }
-.bi-clipboard-x::before { content: "\f28f"; }
-.bi-clipboard::before { content: "\f290"; }
-.bi-clock-fill::before { content: "\f291"; }
-.bi-clock-history::before { content: "\f292"; }
-.bi-clock::before { content: "\f293"; }
-.bi-cloud-arrow-down-fill::before { content: "\f294"; }
-.bi-cloud-arrow-down::before { content: "\f295"; }
-.bi-cloud-arrow-up-fill::before { content: "\f296"; }
-.bi-cloud-arrow-up::before { content: "\f297"; }
-.bi-cloud-check-fill::before { content: "\f298"; }
-.bi-cloud-check::before { content: "\f299"; }
-.bi-cloud-download-fill::before { content: "\f29a"; }
-.bi-cloud-download::before { content: "\f29b"; }
-.bi-cloud-drizzle-fill::before { content: "\f29c"; }
-.bi-cloud-drizzle::before { content: "\f29d"; }
-.bi-cloud-fill::before { content: "\f29e"; }
-.bi-cloud-fog-fill::before { content: "\f29f"; }
-.bi-cloud-fog::before { content: "\f2a0"; }
-.bi-cloud-fog2-fill::before { content: "\f2a1"; }
-.bi-cloud-fog2::before { content: "\f2a2"; }
-.bi-cloud-hail-fill::before { content: "\f2a3"; }
-.bi-cloud-hail::before { content: "\f2a4"; }
-.bi-cloud-haze-fill::before { content: "\f2a6"; }
-.bi-cloud-haze::before { content: "\f2a7"; }
-.bi-cloud-haze2-fill::before { content: "\f2a8"; }
-.bi-cloud-lightning-fill::before { content: "\f2a9"; }
-.bi-cloud-lightning-rain-fill::before { content: "\f2aa"; }
-.bi-cloud-lightning-rain::before { content: "\f2ab"; }
-.bi-cloud-lightning::before { content: "\f2ac"; }
-.bi-cloud-minus-fill::before { content: "\f2ad"; }
-.bi-cloud-minus::before { content: "\f2ae"; }
-.bi-cloud-moon-fill::before { content: "\f2af"; }
-.bi-cloud-moon::before { content: "\f2b0"; }
-.bi-cloud-plus-fill::before { content: "\f2b1"; }
-.bi-cloud-plus::before { content: "\f2b2"; }
-.bi-cloud-rain-fill::before { content: "\f2b3"; }
-.bi-cloud-rain-heavy-fill::before { content: "\f2b4"; }
-.bi-cloud-rain-heavy::before { content: "\f2b5"; }
-.bi-cloud-rain::before { content: "\f2b6"; }
-.bi-cloud-slash-fill::before { content: "\f2b7"; }
-.bi-cloud-slash::before { content: "\f2b8"; }
-.bi-cloud-sleet-fill::before { content: "\f2b9"; }
-.bi-cloud-sleet::before { content: "\f2ba"; }
-.bi-cloud-snow-fill::before { content: "\f2bb"; }
-.bi-cloud-snow::before { content: "\f2bc"; }
-.bi-cloud-sun-fill::before { content: "\f2bd"; }
-.bi-cloud-sun::before { content: "\f2be"; }
-.bi-cloud-upload-fill::before { content: "\f2bf"; }
-.bi-cloud-upload::before { content: "\f2c0"; }
-.bi-cloud::before { content: "\f2c1"; }
-.bi-clouds-fill::before { content: "\f2c2"; }
-.bi-clouds::before { content: "\f2c3"; }
-.bi-cloudy-fill::before { content: "\f2c4"; }
-.bi-cloudy::before { content: "\f2c5"; }
-.bi-code-slash::before { content: "\f2c6"; }
-.bi-code-square::before { content: "\f2c7"; }
-.bi-code::before { content: "\f2c8"; }
-.bi-collection-fill::before { content: "\f2c9"; }
-.bi-collection-play-fill::before { content: "\f2ca"; }
-.bi-collection-play::before { content: "\f2cb"; }
-.bi-collection::before { content: "\f2cc"; }
-.bi-columns-gap::before { content: "\f2cd"; }
-.bi-columns::before { content: "\f2ce"; }
-.bi-command::before { content: "\f2cf"; }
-.bi-compass-fill::before { content: "\f2d0"; }
-.bi-compass::before { content: "\f2d1"; }
-.bi-cone-striped::before { content: "\f2d2"; }
-.bi-cone::before { content: "\f2d3"; }
-.bi-controller::before { content: "\f2d4"; }
-.bi-cpu-fill::before { content: "\f2d5"; }
-.bi-cpu::before { content: "\f2d6"; }
-.bi-credit-card-2-back-fill::before { content: "\f2d7"; }
-.bi-credit-card-2-back::before { content: "\f2d8"; }
-.bi-credit-card-2-front-fill::before { content: "\f2d9"; }
-.bi-credit-card-2-front::before { content: "\f2da"; }
-.bi-credit-card-fill::before { content: "\f2db"; }
-.bi-credit-card::before { content: "\f2dc"; }
-.bi-crop::before { content: "\f2dd"; }
-.bi-cup-fill::before { content: "\f2de"; }
-.bi-cup-straw::before { content: "\f2df"; }
-.bi-cup::before { content: "\f2e0"; }
-.bi-cursor-fill::before { content: "\f2e1"; }
-.bi-cursor-text::before { content: "\f2e2"; }
-.bi-cursor::before { content: "\f2e3"; }
-.bi-dash-circle-dotted::before { content: "\f2e4"; }
-.bi-dash-circle-fill::before { content: "\f2e5"; }
-.bi-dash-circle::before { content: "\f2e6"; }
-.bi-dash-square-dotted::before { content: "\f2e7"; }
-.bi-dash-square-fill::before { content: "\f2e8"; }
-.bi-dash-square::before { content: "\f2e9"; }
-.bi-dash::before { content: "\f2ea"; }
-.bi-diagram-2-fill::before { content: "\f2eb"; }
-.bi-diagram-2::before { content: "\f2ec"; }
-.bi-diagram-3-fill::before { content: "\f2ed"; }
-.bi-diagram-3::before { content: "\f2ee"; }
-.bi-diamond-fill::before { content: "\f2ef"; }
-.bi-diamond-half::before { content: "\f2f0"; }
-.bi-diamond::before { content: "\f2f1"; }
-.bi-dice-1-fill::before { content: "\f2f2"; }
-.bi-dice-1::before { content: "\f2f3"; }
-.bi-dice-2-fill::before { content: "\f2f4"; }
-.bi-dice-2::before { content: "\f2f5"; }
-.bi-dice-3-fill::before { content: "\f2f6"; }
-.bi-dice-3::before { content: "\f2f7"; }
-.bi-dice-4-fill::before { content: "\f2f8"; }
-.bi-dice-4::before { content: "\f2f9"; }
-.bi-dice-5-fill::before { content: "\f2fa"; }
-.bi-dice-5::before { content: "\f2fb"; }
-.bi-dice-6-fill::before { content: "\f2fc"; }
-.bi-dice-6::before { content: "\f2fd"; }
-.bi-disc-fill::before { content: "\f2fe"; }
-.bi-disc::before { content: "\f2ff"; }
-.bi-discord::before { content: "\f300"; }
-.bi-display-fill::before { content: "\f301"; }
-.bi-display::before { content: "\f302"; }
-.bi-distribute-horizontal::before { content: "\f303"; }
-.bi-distribute-vertical::before { content: "\f304"; }
-.bi-door-closed-fill::before { content: "\f305"; }
-.bi-door-closed::before { content: "\f306"; }
-.bi-door-open-fill::before { content: "\f307"; }
-.bi-door-open::before { content: "\f308"; }
-.bi-dot::before { content: "\f309"; }
-.bi-download::before { content: "\f30a"; }
-.bi-droplet-fill::before { content: "\f30b"; }
-.bi-droplet-half::before { content: "\f30c"; }
-.bi-droplet::before { content: "\f30d"; }
-.bi-earbuds::before { content: "\f30e"; }
-.bi-easel-fill::before { content: "\f30f"; }
-.bi-easel::before { content: "\f310"; }
-.bi-egg-fill::before { content: "\f311"; }
-.bi-egg-fried::before { content: "\f312"; }
-.bi-egg::before { content: "\f313"; }
-.bi-eject-fill::before { content: "\f314"; }
-.bi-eject::before { content: "\f315"; }
-.bi-emoji-angry-fill::before { content: "\f316"; }
-.bi-emoji-angry::before { content: "\f317"; }
-.bi-emoji-dizzy-fill::before { content: "\f318"; }
-.bi-emoji-dizzy::before { content: "\f319"; }
-.bi-emoji-expressionless-fill::before { content: "\f31a"; }
-.bi-emoji-expressionless::before { content: "\f31b"; }
-.bi-emoji-frown-fill::before { content: "\f31c"; }
-.bi-emoji-frown::before { content: "\f31d"; }
-.bi-emoji-heart-eyes-fill::before { content: "\f31e"; }
-.bi-emoji-heart-eyes::before { content: "\f31f"; }
-.bi-emoji-laughing-fill::before { content: "\f320"; }
-.bi-emoji-laughing::before { content: "\f321"; }
-.bi-emoji-neutral-fill::before { content: "\f322"; }
-.bi-emoji-neutral::before { content: "\f323"; }
-.bi-emoji-smile-fill::before { content: "\f324"; }
-.bi-emoji-smile-upside-down-fill::before { content: "\f325"; }
-.bi-emoji-smile-upside-down::before { content: "\f326"; }
-.bi-emoji-smile::before { content: "\f327"; }
-.bi-emoji-sunglasses-fill::before { content: "\f328"; }
-.bi-emoji-sunglasses::before { content: "\f329"; }
-.bi-emoji-wink-fill::before { content: "\f32a"; }
-.bi-emoji-wink::before { content: "\f32b"; }
-.bi-envelope-fill::before { content: "\f32c"; }
-.bi-envelope-open-fill::before { content: "\f32d"; }
-.bi-envelope-open::before { content: "\f32e"; }
-.bi-envelope::before { content: "\f32f"; }
-.bi-eraser-fill::before { content: "\f330"; }
-.bi-eraser::before { content: "\f331"; }
-.bi-exclamation-circle-fill::before { content: "\f332"; }
-.bi-exclamation-circle::before { content: "\f333"; }
-.bi-exclamation-diamond-fill::before { content: "\f334"; }
-.bi-exclamation-diamond::before { content: "\f335"; }
-.bi-exclamation-octagon-fill::before { content: "\f336"; }
-.bi-exclamation-octagon::before { content: "\f337"; }
-.bi-exclamation-square-fill::before { content: "\f338"; }
-.bi-exclamation-square::before { content: "\f339"; }
-.bi-exclamation-triangle-fill::before { content: "\f33a"; }
-.bi-exclamation-triangle::before { content: "\f33b"; }
-.bi-exclamation::before { content: "\f33c"; }
-.bi-exclude::before { content: "\f33d"; }
-.bi-eye-fill::before { content: "\f33e"; }
-.bi-eye-slash-fill::before { content: "\f33f"; }
-.bi-eye-slash::before { content: "\f340"; }
-.bi-eye::before { content: "\f341"; }
-.bi-eyedropper::before { content: "\f342"; }
-.bi-eyeglasses::before { content: "\f343"; }
-.bi-facebook::before { content: "\f344"; }
-.bi-file-arrow-down-fill::before { content: "\f345"; }
-.bi-file-arrow-down::before { content: "\f346"; }
-.bi-file-arrow-up-fill::before { content: "\f347"; }
-.bi-file-arrow-up::before { content: "\f348"; }
-.bi-file-bar-graph-fill::before { content: "\f349"; }
-.bi-file-bar-graph::before { content: "\f34a"; }
-.bi-file-binary-fill::before { content: "\f34b"; }
-.bi-file-binary::before { content: "\f34c"; }
-.bi-file-break-fill::before { content: "\f34d"; }
-.bi-file-break::before { content: "\f34e"; }
-.bi-file-check-fill::before { content: "\f34f"; }
-.bi-file-check::before { content: "\f350"; }
-.bi-file-code-fill::before { content: "\f351"; }
-.bi-file-code::before { content: "\f352"; }
-.bi-file-diff-fill::before { content: "\f353"; }
-.bi-file-diff::before { content: "\f354"; }
-.bi-file-earmark-arrow-down-fill::before { content: "\f355"; }
-.bi-file-earmark-arrow-down::before { content: "\f356"; }
-.bi-file-earmark-arrow-up-fill::before { content: "\f357"; }
-.bi-file-earmark-arrow-up::before { content: "\f358"; }
-.bi-file-earmark-bar-graph-fill::before { content: "\f359"; }
-.bi-file-earmark-bar-graph::before { content: "\f35a"; }
-.bi-file-earmark-binary-fill::before { content: "\f35b"; }
-.bi-file-earmark-binary::before { content: "\f35c"; }
-.bi-file-earmark-break-fill::before { content: "\f35d"; }
-.bi-file-earmark-break::before { content: "\f35e"; }
-.bi-file-earmark-check-fill::before { content: "\f35f"; }
-.bi-file-earmark-check::before { content: "\f360"; }
-.bi-file-earmark-code-fill::before { content: "\f361"; }
-.bi-file-earmark-code::before { content: "\f362"; }
-.bi-file-earmark-diff-fill::before { content: "\f363"; }
-.bi-file-earmark-diff::before { content: "\f364"; }
-.bi-file-earmark-easel-fill::before { content: "\f365"; }
-.bi-file-earmark-easel::before { content: "\f366"; }
-.bi-file-earmark-excel-fill::before { content: "\f367"; }
-.bi-file-earmark-excel::before { content: "\f368"; }
-.bi-file-earmark-fill::before { content: "\f369"; }
-.bi-file-earmark-font-fill::before { content: "\f36a"; }
-.bi-file-earmark-font::before { content: "\f36b"; }
-.bi-file-earmark-image-fill::before { content: "\f36c"; }
-.bi-file-earmark-image::before { content: "\f36d"; }
-.bi-file-earmark-lock-fill::before { content: "\f36e"; }
-.bi-file-earmark-lock::before { content: "\f36f"; }
-.bi-file-earmark-lock2-fill::before { content: "\f370"; }
-.bi-file-earmark-lock2::before { content: "\f371"; }
-.bi-file-earmark-medical-fill::before { content: "\f372"; }
-.bi-file-earmark-medical::before { content: "\f373"; }
-.bi-file-earmark-minus-fill::before { content: "\f374"; }
-.bi-file-earmark-minus::before { content: "\f375"; }
-.bi-file-earmark-music-fill::before { content: "\f376"; }
-.bi-file-earmark-music::before { content: "\f377"; }
-.bi-file-earmark-person-fill::before { content: "\f378"; }
-.bi-file-earmark-person::before { content: "\f379"; }
-.bi-file-earmark-play-fill::before { content: "\f37a"; }
-.bi-file-earmark-play::before { content: "\f37b"; }
-.bi-file-earmark-plus-fill::before { content: "\f37c"; }
-.bi-file-earmark-plus::before { content: "\f37d"; }
-.bi-file-earmark-post-fill::before { content: "\f37e"; }
-.bi-file-earmark-post::before { content: "\f37f"; }
-.bi-file-earmark-ppt-fill::before { content: "\f380"; }
-.bi-file-earmark-ppt::before { content: "\f381"; }
-.bi-file-earmark-richtext-fill::before { content: "\f382"; }
-.bi-file-earmark-richtext::before { content: "\f383"; }
-.bi-file-earmark-ruled-fill::before { content: "\f384"; }
-.bi-file-earmark-ruled::before { content: "\f385"; }
-.bi-file-earmark-slides-fill::before { content: "\f386"; }
-.bi-file-earmark-slides::before { content: "\f387"; }
-.bi-file-earmark-spreadsheet-fill::before { content: "\f388"; }
-.bi-file-earmark-spreadsheet::before { content: "\f389"; }
-.bi-file-earmark-text-fill::before { content: "\f38a"; }
-.bi-file-earmark-text::before { content: "\f38b"; }
-.bi-file-earmark-word-fill::before { content: "\f38c"; }
-.bi-file-earmark-word::before { content: "\f38d"; }
-.bi-file-earmark-x-fill::before { content: "\f38e"; }
-.bi-file-earmark-x::before { content: "\f38f"; }
-.bi-file-earmark-zip-fill::before { content: "\f390"; }
-.bi-file-earmark-zip::before { content: "\f391"; }
-.bi-file-earmark::before { content: "\f392"; }
-.bi-file-easel-fill::before { content: "\f393"; }
-.bi-file-easel::before { content: "\f394"; }
-.bi-file-excel-fill::before { content: "\f395"; }
-.bi-file-excel::before { content: "\f396"; }
-.bi-file-fill::before { content: "\f397"; }
-.bi-file-font-fill::before { content: "\f398"; }
-.bi-file-font::before { content: "\f399"; }
-.bi-file-image-fill::before { content: "\f39a"; }
-.bi-file-image::before { content: "\f39b"; }
-.bi-file-lock-fill::before { content: "\f39c"; }
-.bi-file-lock::before { content: "\f39d"; }
-.bi-file-lock2-fill::before { content: "\f39e"; }
-.bi-file-lock2::before { content: "\f39f"; }
-.bi-file-medical-fill::before { content: "\f3a0"; }
-.bi-file-medical::before { content: "\f3a1"; }
-.bi-file-minus-fill::before { content: "\f3a2"; }
-.bi-file-minus::before { content: "\f3a3"; }
-.bi-file-music-fill::before { content: "\f3a4"; }
-.bi-file-music::before { content: "\f3a5"; }
-.bi-file-person-fill::before { content: "\f3a6"; }
-.bi-file-person::before { content: "\f3a7"; }
-.bi-file-play-fill::before { content: "\f3a8"; }
-.bi-file-play::before { content: "\f3a9"; }
-.bi-file-plus-fill::before { content: "\f3aa"; }
-.bi-file-plus::before { content: "\f3ab"; }
-.bi-file-post-fill::before { content: "\f3ac"; }
-.bi-file-post::before { content: "\f3ad"; }
-.bi-file-ppt-fill::before { content: "\f3ae"; }
-.bi-file-ppt::before { content: "\f3af"; }
-.bi-file-richtext-fill::before { content: "\f3b0"; }
-.bi-file-richtext::before { content: "\f3b1"; }
-.bi-file-ruled-fill::before { content: "\f3b2"; }
-.bi-file-ruled::before { content: "\f3b3"; }
-.bi-file-slides-fill::before { content: "\f3b4"; }
-.bi-file-slides::before { content: "\f3b5"; }
-.bi-file-spreadsheet-fill::before { content: "\f3b6"; }
-.bi-file-spreadsheet::before { content: "\f3b7"; }
-.bi-file-text-fill::before { content: "\f3b8"; }
-.bi-file-text::before { content: "\f3b9"; }
-.bi-file-word-fill::before { content: "\f3ba"; }
-.bi-file-word::before { content: "\f3bb"; }
-.bi-file-x-fill::before { content: "\f3bc"; }
-.bi-file-x::before { content: "\f3bd"; }
-.bi-file-zip-fill::before { content: "\f3be"; }
-.bi-file-zip::before { content: "\f3bf"; }
-.bi-file::before { content: "\f3c0"; }
-.bi-files-alt::before { content: "\f3c1"; }
-.bi-files::before { content: "\f3c2"; }
-.bi-film::before { content: "\f3c3"; }
-.bi-filter-circle-fill::before { content: "\f3c4"; }
-.bi-filter-circle::before { content: "\f3c5"; }
-.bi-filter-left::before { content: "\f3c6"; }
-.bi-filter-right::before { content: "\f3c7"; }
-.bi-filter-square-fill::before { content: "\f3c8"; }
-.bi-filter-square::before { content: "\f3c9"; }
-.bi-filter::before { content: "\f3ca"; }
-.bi-flag-fill::before { content: "\f3cb"; }
-.bi-flag::before { content: "\f3cc"; }
-.bi-flower1::before { content: "\f3cd"; }
-.bi-flower2::before { content: "\f3ce"; }
-.bi-flower3::before { content: "\f3cf"; }
-.bi-folder-check::before { content: "\f3d0"; }
-.bi-folder-fill::before { content: "\f3d1"; }
-.bi-folder-minus::before { content: "\f3d2"; }
-.bi-folder-plus::before { content: "\f3d3"; }
-.bi-folder-symlink-fill::before { content: "\f3d4"; }
-.bi-folder-symlink::before { content: "\f3d5"; }
-.bi-folder-x::before { content: "\f3d6"; }
-.bi-folder::before { content: "\f3d7"; }
-.bi-folder2-open::before { content: "\f3d8"; }
-.bi-folder2::before { content: "\f3d9"; }
-.bi-fonts::before { content: "\f3da"; }
-.bi-forward-fill::before { content: "\f3db"; }
-.bi-forward::before { content: "\f3dc"; }
-.bi-front::before { content: "\f3dd"; }
-.bi-fullscreen-exit::before { content: "\f3de"; }
-.bi-fullscreen::before { content: "\f3df"; }
-.bi-funnel-fill::before { content: "\f3e0"; }
-.bi-funnel::before { content: "\f3e1"; }
-.bi-gear-fill::before { content: "\f3e2"; }
-.bi-gear-wide-connected::before { content: "\f3e3"; }
-.bi-gear-wide::before { content: "\f3e4"; }
-.bi-gear::before { content: "\f3e5"; }
-.bi-gem::before { content: "\f3e6"; }
-.bi-geo-alt-fill::before { content: "\f3e7"; }
-.bi-geo-alt::before { content: "\f3e8"; }
-.bi-geo-fill::before { content: "\f3e9"; }
-.bi-geo::before { content: "\f3ea"; }
-.bi-gift-fill::before { content: "\f3eb"; }
-.bi-gift::before { content: "\f3ec"; }
-.bi-github::before { content: "\f3ed"; }
-.bi-globe::before { content: "\f3ee"; }
-.bi-globe2::before { content: "\f3ef"; }
-.bi-google::before { content: "\f3f0"; }
-.bi-graph-down::before { content: "\f3f1"; }
-.bi-graph-up::before { content: "\f3f2"; }
-.bi-grid-1x2-fill::before { content: "\f3f3"; }
-.bi-grid-1x2::before { content: "\f3f4"; }
-.bi-grid-3x2-gap-fill::before { content: "\f3f5"; }
-.bi-grid-3x2-gap::before { content: "\f3f6"; }
-.bi-grid-3x2::before { content: "\f3f7"; }
-.bi-grid-3x3-gap-fill::before { content: "\f3f8"; }
-.bi-grid-3x3-gap::before { content: "\f3f9"; }
-.bi-grid-3x3::before { content: "\f3fa"; }
-.bi-grid-fill::before { content: "\f3fb"; }
-.bi-grid::before { content: "\f3fc"; }
-.bi-grip-horizontal::before { content: "\f3fd"; }
-.bi-grip-vertical::before { content: "\f3fe"; }
-.bi-hammer::before { content: "\f3ff"; }
-.bi-hand-index-fill::before { content: "\f400"; }
-.bi-hand-index-thumb-fill::before { content: "\f401"; }
-.bi-hand-index-thumb::before { content: "\f402"; }
-.bi-hand-index::before { content: "\f403"; }
-.bi-hand-thumbs-down-fill::before { content: "\f404"; }
-.bi-hand-thumbs-down::before { content: "\f405"; }
-.bi-hand-thumbs-up-fill::before { content: "\f406"; }
-.bi-hand-thumbs-up::before { content: "\f407"; }
-.bi-handbag-fill::before { content: "\f408"; }
-.bi-handbag::before { content: "\f409"; }
-.bi-hash::before { content: "\f40a"; }
-.bi-hdd-fill::before { content: "\f40b"; }
-.bi-hdd-network-fill::before { content: "\f40c"; }
-.bi-hdd-network::before { content: "\f40d"; }
-.bi-hdd-rack-fill::before { content: "\f40e"; }
-.bi-hdd-rack::before { content: "\f40f"; }
-.bi-hdd-stack-fill::before { content: "\f410"; }
-.bi-hdd-stack::before { content: "\f411"; }
-.bi-hdd::before { content: "\f412"; }
-.bi-headphones::before { content: "\f413"; }
-.bi-headset::before { content: "\f414"; }
-.bi-heart-fill::before { content: "\f415"; }
-.bi-heart-half::before { content: "\f416"; }
-.bi-heart::before { content: "\f417"; }
-.bi-heptagon-fill::before { content: "\f418"; }
-.bi-heptagon-half::before { content: "\f419"; }
-.bi-heptagon::before { content: "\f41a"; }
-.bi-hexagon-fill::before { content: "\f41b"; }
-.bi-hexagon-half::before { content: "\f41c"; }
-.bi-hexagon::before { content: "\f41d"; }
-.bi-hourglass-bottom::before { content: "\f41e"; }
-.bi-hourglass-split::before { content: "\f41f"; }
-.bi-hourglass-top::before { content: "\f420"; }
-.bi-hourglass::before { content: "\f421"; }
-.bi-house-door-fill::before { content: "\f422"; }
-.bi-house-door::before { content: "\f423"; }
-.bi-house-fill::before { content: "\f424"; }
-.bi-house::before { content: "\f425"; }
-.bi-hr::before { content: "\f426"; }
-.bi-hurricane::before { content: "\f427"; }
-.bi-image-alt::before { content: "\f428"; }
-.bi-image-fill::before { content: "\f429"; }
-.bi-image::before { content: "\f42a"; }
-.bi-images::before { content: "\f42b"; }
-.bi-inbox-fill::before { content: "\f42c"; }
-.bi-inbox::before { content: "\f42d"; }
-.bi-inboxes-fill::before { content: "\f42e"; }
-.bi-inboxes::before { content: "\f42f"; }
-.bi-info-circle-fill::before { content: "\f430"; }
-.bi-info-circle::before { content: "\f431"; }
-.bi-info-square-fill::before { content: "\f432"; }
-.bi-info-square::before { content: "\f433"; }
-.bi-info::before { content: "\f434"; }
-.bi-input-cursor-text::before { content: "\f435"; }
-.bi-input-cursor::before { content: "\f436"; }
-.bi-instagram::before { content: "\f437"; }
-.bi-intersect::before { content: "\f438"; }
-.bi-journal-album::before { content: "\f439"; }
-.bi-journal-arrow-down::before { content: "\f43a"; }
-.bi-journal-arrow-up::before { content: "\f43b"; }
-.bi-journal-bookmark-fill::before { content: "\f43c"; }
-.bi-journal-bookmark::before { content: "\f43d"; }
-.bi-journal-check::before { content: "\f43e"; }
-.bi-journal-code::before { content: "\f43f"; }
-.bi-journal-medical::before { content: "\f440"; }
-.bi-journal-minus::before { content: "\f441"; }
-.bi-journal-plus::before { content: "\f442"; }
-.bi-journal-richtext::before { content: "\f443"; }
-.bi-journal-text::before { content: "\f444"; }
-.bi-journal-x::before { content: "\f445"; }
-.bi-journal::before { content: "\f446"; }
-.bi-journals::before { content: "\f447"; }
-.bi-joystick::before { content: "\f448"; }
-.bi-justify-left::before { content: "\f449"; }
-.bi-justify-right::before { content: "\f44a"; }
-.bi-justify::before { content: "\f44b"; }
-.bi-kanban-fill::before { content: "\f44c"; }
-.bi-kanban::before { content: "\f44d"; }
-.bi-key-fill::before { content: "\f44e"; }
-.bi-key::before { content: "\f44f"; }
-.bi-keyboard-fill::before { content: "\f450"; }
-.bi-keyboard::before { content: "\f451"; }
-.bi-ladder::before { content: "\f452"; }
-.bi-lamp-fill::before { content: "\f453"; }
-.bi-lamp::before { content: "\f454"; }
-.bi-laptop-fill::before { content: "\f455"; }
-.bi-laptop::before { content: "\f456"; }
-.bi-layer-backward::before { content: "\f457"; }
-.bi-layer-forward::before { content: "\f458"; }
-.bi-layers-fill::before { content: "\f459"; }
-.bi-layers-half::before { content: "\f45a"; }
-.bi-layers::before { content: "\f45b"; }
-.bi-layout-sidebar-inset-reverse::before { content: "\f45c"; }
-.bi-layout-sidebar-inset::before { content: "\f45d"; }
-.bi-layout-sidebar-reverse::before { content: "\f45e"; }
-.bi-layout-sidebar::before { content: "\f45f"; }
-.bi-layout-split::before { content: "\f460"; }
-.bi-layout-text-sidebar-reverse::before { content: "\f461"; }
-.bi-layout-text-sidebar::before { content: "\f462"; }
-.bi-layout-text-window-reverse::before { content: "\f463"; }
-.bi-layout-text-window::before { content: "\f464"; }
-.bi-layout-three-columns::before { content: "\f465"; }
-.bi-layout-wtf::before { content: "\f466"; }
-.bi-life-preserver::before { content: "\f467"; }
-.bi-lightbulb-fill::before { content: "\f468"; }
-.bi-lightbulb-off-fill::before { content: "\f469"; }
-.bi-lightbulb-off::before { content: "\f46a"; }
-.bi-lightbulb::before { content: "\f46b"; }
-.bi-lightning-charge-fill::before { content: "\f46c"; }
-.bi-lightning-charge::before { content: "\f46d"; }
-.bi-lightning-fill::before { content: "\f46e"; }
-.bi-lightning::before { content: "\f46f"; }
-.bi-link-45deg::before { content: "\f470"; }
-.bi-link::before { content: "\f471"; }
-.bi-linkedin::before { content: "\f472"; }
-.bi-list-check::before { content: "\f473"; }
-.bi-list-nested::before { content: "\f474"; }
-.bi-list-ol::before { content: "\f475"; }
-.bi-list-stars::before { content: "\f476"; }
-.bi-list-task::before { content: "\f477"; }
-.bi-list-ul::before { content: "\f478"; }
-.bi-list::before { content: "\f479"; }
-.bi-lock-fill::before { content: "\f47a"; }
-.bi-lock::before { content: "\f47b"; }
-.bi-mailbox::before { content: "\f47c"; }
-.bi-mailbox2::before { content: "\f47d"; }
-.bi-map-fill::before { content: "\f47e"; }
-.bi-map::before { content: "\f47f"; }
-.bi-markdown-fill::before { content: "\f480"; }
-.bi-markdown::before { content: "\f481"; }
-.bi-mask::before { content: "\f482"; }
-.bi-megaphone-fill::before { content: "\f483"; }
-.bi-megaphone::before { content: "\f484"; }
-.bi-menu-app-fill::before { content: "\f485"; }
-.bi-menu-app::before { content: "\f486"; }
-.bi-menu-button-fill::before { content: "\f487"; }
-.bi-menu-button-wide-fill::before { content: "\f488"; }
-.bi-menu-button-wide::before { content: "\f489"; }
-.bi-menu-button::before { content: "\f48a"; }
-.bi-menu-down::before { content: "\f48b"; }
-.bi-menu-up::before { content: "\f48c"; }
-.bi-mic-fill::before { content: "\f48d"; }
-.bi-mic-mute-fill::before { content: "\f48e"; }
-.bi-mic-mute::before { content: "\f48f"; }
-.bi-mic::before { content: "\f490"; }
-.bi-minecart-loaded::before { content: "\f491"; }
-.bi-minecart::before { content: "\f492"; }
-.bi-moisture::before { content: "\f493"; }
-.bi-moon-fill::before { content: "\f494"; }
-.bi-moon-stars-fill::before { content: "\f495"; }
-.bi-moon-stars::before { content: "\f496"; }
-.bi-moon::before { content: "\f497"; }
-.bi-mouse-fill::before { content: "\f498"; }
-.bi-mouse::before { content: "\f499"; }
-.bi-mouse2-fill::before { content: "\f49a"; }
-.bi-mouse2::before { content: "\f49b"; }
-.bi-mouse3-fill::before { content: "\f49c"; }
-.bi-mouse3::before { content: "\f49d"; }
-.bi-music-note-beamed::before { content: "\f49e"; }
-.bi-music-note-list::before { content: "\f49f"; }
-.bi-music-note::before { content: "\f4a0"; }
-.bi-music-player-fill::before { content: "\f4a1"; }
-.bi-music-player::before { content: "\f4a2"; }
-.bi-newspaper::before { content: "\f4a3"; }
-.bi-node-minus-fill::before { content: "\f4a4"; }
-.bi-node-minus::before { content: "\f4a5"; }
-.bi-node-plus-fill::before { content: "\f4a6"; }
-.bi-node-plus::before { content: "\f4a7"; }
-.bi-nut-fill::before { content: "\f4a8"; }
-.bi-nut::before { content: "\f4a9"; }
-.bi-octagon-fill::before { content: "\f4aa"; }
-.bi-octagon-half::before { content: "\f4ab"; }
-.bi-octagon::before { content: "\f4ac"; }
-.bi-option::before { content: "\f4ad"; }
-.bi-outlet::before { content: "\f4ae"; }
-.bi-paint-bucket::before { content: "\f4af"; }
-.bi-palette-fill::before { content: "\f4b0"; }
-.bi-palette::before { content: "\f4b1"; }
-.bi-palette2::before { content: "\f4b2"; }
-.bi-paperclip::before { content: "\f4b3"; }
-.bi-paragraph::before { content: "\f4b4"; }
-.bi-patch-check-fill::before { content: "\f4b5"; }
-.bi-patch-check::before { content: "\f4b6"; }
-.bi-patch-exclamation-fill::before { content: "\f4b7"; }
-.bi-patch-exclamation::before { content: "\f4b8"; }
-.bi-patch-minus-fill::before { content: "\f4b9"; }
-.bi-patch-minus::before { content: "\f4ba"; }
-.bi-patch-plus-fill::before { content: "\f4bb"; }
-.bi-patch-plus::before { content: "\f4bc"; }
-.bi-patch-question-fill::before { content: "\f4bd"; }
-.bi-patch-question::before { content: "\f4be"; }
-.bi-pause-btn-fill::before { content: "\f4bf"; }
-.bi-pause-btn::before { content: "\f4c0"; }
-.bi-pause-circle-fill::before { content: "\f4c1"; }
-.bi-pause-circle::before { content: "\f4c2"; }
-.bi-pause-fill::before { content: "\f4c3"; }
-.bi-pause::before { content: "\f4c4"; }
-.bi-peace-fill::before { content: "\f4c5"; }
-.bi-peace::before { content: "\f4c6"; }
-.bi-pen-fill::before { content: "\f4c7"; }
-.bi-pen::before { content: "\f4c8"; }
-.bi-pencil-fill::before { content: "\f4c9"; }
-.bi-pencil-square::before { content: "\f4ca"; }
-.bi-pencil::before { content: "\f4cb"; }
-.bi-pentagon-fill::before { content: "\f4cc"; }
-.bi-pentagon-half::before { content: "\f4cd"; }
-.bi-pentagon::before { content: "\f4ce"; }
-.bi-people-fill::before { content: "\f4cf"; }
-.bi-people::before { content: "\f4d0"; }
-.bi-percent::before { content: "\f4d1"; }
-.bi-person-badge-fill::before { content: "\f4d2"; }
-.bi-person-badge::before { content: "\f4d3"; }
-.bi-person-bounding-box::before { content: "\f4d4"; }
-.bi-person-check-fill::before { content: "\f4d5"; }
-.bi-person-check::before { content: "\f4d6"; }
-.bi-person-circle::before { content: "\f4d7"; }
-.bi-person-dash-fill::before { content: "\f4d8"; }
-.bi-person-dash::before { content: "\f4d9"; }
-.bi-person-fill::before { content: "\f4da"; }
-.bi-person-lines-fill::before { content: "\f4db"; }
-.bi-person-plus-fill::before { content: "\f4dc"; }
-.bi-person-plus::before { content: "\f4dd"; }
-.bi-person-square::before { content: "\f4de"; }
-.bi-person-x-fill::before { content: "\f4df"; }
-.bi-person-x::before { content: "\f4e0"; }
-.bi-person::before { content: "\f4e1"; }
-.bi-phone-fill::before { content: "\f4e2"; }
-.bi-phone-landscape-fill::before { content: "\f4e3"; }
-.bi-phone-landscape::before { content: "\f4e4"; }
-.bi-phone-vibrate-fill::before { content: "\f4e5"; }
-.bi-phone-vibrate::before { content: "\f4e6"; }
-.bi-phone::before { content: "\f4e7"; }
-.bi-pie-chart-fill::before { content: "\f4e8"; }
-.bi-pie-chart::before { content: "\f4e9"; }
-.bi-pin-angle-fill::before { content: "\f4ea"; }
-.bi-pin-angle::before { content: "\f4eb"; }
-.bi-pin-fill::before { content: "\f4ec"; }
-.bi-pin::before { content: "\f4ed"; }
-.bi-pip-fill::before { content: "\f4ee"; }
-.bi-pip::before { content: "\f4ef"; }
-.bi-play-btn-fill::before { content: "\f4f0"; }
-.bi-play-btn::before { content: "\f4f1"; }
-.bi-play-circle-fill::before { content: "\f4f2"; }
-.bi-play-circle::before { content: "\f4f3"; }
-.bi-play-fill::before { content: "\f4f4"; }
-.bi-play::before { content: "\f4f5"; }
-.bi-plug-fill::before { content: "\f4f6"; }
-.bi-plug::before { content: "\f4f7"; }
-.bi-plus-circle-dotted::before { content: "\f4f8"; }
-.bi-plus-circle-fill::before { content: "\f4f9"; }
-.bi-plus-circle::before { content: "\f4fa"; }
-.bi-plus-square-dotted::before { content: "\f4fb"; }
-.bi-plus-square-fill::before { content: "\f4fc"; }
-.bi-plus-square::before { content: "\f4fd"; }
-.bi-plus::before { content: "\f4fe"; }
-.bi-power::before { content: "\f4ff"; }
-.bi-printer-fill::before { content: "\f500"; }
-.bi-printer::before { content: "\f501"; }
-.bi-puzzle-fill::before { content: "\f502"; }
-.bi-puzzle::before { content: "\f503"; }
-.bi-question-circle-fill::before { content: "\f504"; }
-.bi-question-circle::before { content: "\f505"; }
-.bi-question-diamond-fill::before { content: "\f506"; }
-.bi-question-diamond::before { content: "\f507"; }
-.bi-question-octagon-fill::before { content: "\f508"; }
-.bi-question-octagon::before { content: "\f509"; }
-.bi-question-square-fill::before { content: "\f50a"; }
-.bi-question-square::before { content: "\f50b"; }
-.bi-question::before { content: "\f50c"; }
-.bi-rainbow::before { content: "\f50d"; }
-.bi-receipt-cutoff::before { content: "\f50e"; }
-.bi-receipt::before { content: "\f50f"; }
-.bi-reception-0::before { content: "\f510"; }
-.bi-reception-1::before { content: "\f511"; }
-.bi-reception-2::before { content: "\f512"; }
-.bi-reception-3::before { content: "\f513"; }
-.bi-reception-4::before { content: "\f514"; }
-.bi-record-btn-fill::before { content: "\f515"; }
-.bi-record-btn::before { content: "\f516"; }
-.bi-record-circle-fill::before { content: "\f517"; }
-.bi-record-circle::before { content: "\f518"; }
-.bi-record-fill::before { content: "\f519"; }
-.bi-record::before { content: "\f51a"; }
-.bi-record2-fill::before { content: "\f51b"; }
-.bi-record2::before { content: "\f51c"; }
-.bi-reply-all-fill::before { content: "\f51d"; }
-.bi-reply-all::before { content: "\f51e"; }
-.bi-reply-fill::before { content: "\f51f"; }
-.bi-reply::before { content: "\f520"; }
-.bi-rss-fill::before { content: "\f521"; }
-.bi-rss::before { content: "\f522"; }
-.bi-rulers::before { content: "\f523"; }
-.bi-save-fill::before { content: "\f524"; }
-.bi-save::before { content: "\f525"; }
-.bi-save2-fill::before { content: "\f526"; }
-.bi-save2::before { content: "\f527"; }
-.bi-scissors::before { content: "\f528"; }
-.bi-screwdriver::before { content: "\f529"; }
-.bi-search::before { content: "\f52a"; }
-.bi-segmented-nav::before { content: "\f52b"; }
-.bi-server::before { content: "\f52c"; }
-.bi-share-fill::before { content: "\f52d"; }
-.bi-share::before { content: "\f52e"; }
-.bi-shield-check::before { content: "\f52f"; }
-.bi-shield-exclamation::before { content: "\f530"; }
-.bi-shield-fill-check::before { content: "\f531"; }
-.bi-shield-fill-exclamation::before { content: "\f532"; }
-.bi-shield-fill-minus::before { content: "\f533"; }
-.bi-shield-fill-plus::before { content: "\f534"; }
-.bi-shield-fill-x::before { content: "\f535"; }
-.bi-shield-fill::before { content: "\f536"; }
-.bi-shield-lock-fill::before { content: "\f537"; }
-.bi-shield-lock::before { content: "\f538"; }
-.bi-shield-minus::before { content: "\f539"; }
-.bi-shield-plus::before { content: "\f53a"; }
-.bi-shield-shaded::before { content: "\f53b"; }
-.bi-shield-slash-fill::before { content: "\f53c"; }
-.bi-shield-slash::before { content: "\f53d"; }
-.bi-shield-x::before { content: "\f53e"; }
-.bi-shield::before { content: "\f53f"; }
-.bi-shift-fill::before { content: "\f540"; }
-.bi-shift::before { content: "\f541"; }
-.bi-shop-window::before { content: "\f542"; }
-.bi-shop::before { content: "\f543"; }
-.bi-shuffle::before { content: "\f544"; }
-.bi-signpost-2-fill::before { content: "\f545"; }
-.bi-signpost-2::before { content: "\f546"; }
-.bi-signpost-fill::before { content: "\f547"; }
-.bi-signpost-split-fill::before { content: "\f548"; }
-.bi-signpost-split::before { content: "\f549"; }
-.bi-signpost::before { content: "\f54a"; }
-.bi-sim-fill::before { content: "\f54b"; }
-.bi-sim::before { content: "\f54c"; }
-.bi-skip-backward-btn-fill::before { content: "\f54d"; }
-.bi-skip-backward-btn::before { content: "\f54e"; }
-.bi-skip-backward-circle-fill::before { content: "\f54f"; }
-.bi-skip-backward-circle::before { content: "\f550"; }
-.bi-skip-backward-fill::before { content: "\f551"; }
-.bi-skip-backward::before { content: "\f552"; }
-.bi-skip-end-btn-fill::before { content: "\f553"; }
-.bi-skip-end-btn::before { content: "\f554"; }
-.bi-skip-end-circle-fill::before { content: "\f555"; }
-.bi-skip-end-circle::before { content: "\f556"; }
-.bi-skip-end-fill::before { content: "\f557"; }
-.bi-skip-end::before { content: "\f558"; }
-.bi-skip-forward-btn-fill::before { content: "\f559"; }
-.bi-skip-forward-btn::before { content: "\f55a"; }
-.bi-skip-forward-circle-fill::before { content: "\f55b"; }
-.bi-skip-forward-circle::before { content: "\f55c"; }
-.bi-skip-forward-fill::before { content: "\f55d"; }
-.bi-skip-forward::before { content: "\f55e"; }
-.bi-skip-start-btn-fill::before { content: "\f55f"; }
-.bi-skip-start-btn::before { content: "\f560"; }
-.bi-skip-start-circle-fill::before { content: "\f561"; }
-.bi-skip-start-circle::before { content: "\f562"; }
-.bi-skip-start-fill::before { content: "\f563"; }
-.bi-skip-start::before { content: "\f564"; }
-.bi-slack::before { content: "\f565"; }
-.bi-slash-circle-fill::before { content: "\f566"; }
-.bi-slash-circle::before { content: "\f567"; }
-.bi-slash-square-fill::before { content: "\f568"; }
-.bi-slash-square::before { content: "\f569"; }
-.bi-slash::before { content: "\f56a"; }
-.bi-sliders::before { content: "\f56b"; }
-.bi-smartwatch::before { content: "\f56c"; }
-.bi-snow::before { content: "\f56d"; }
-.bi-snow2::before { content: "\f56e"; }
-.bi-snow3::before { content: "\f56f"; }
-.bi-sort-alpha-down-alt::before { content: "\f570"; }
-.bi-sort-alpha-down::before { content: "\f571"; }
-.bi-sort-alpha-up-alt::before { content: "\f572"; }
-.bi-sort-alpha-up::before { content: "\f573"; }
-.bi-sort-down-alt::before { content: "\f574"; }
-.bi-sort-down::before { content: "\f575"; }
-.bi-sort-numeric-down-alt::before { content: "\f576"; }
-.bi-sort-numeric-down::before { content: "\f577"; }
-.bi-sort-numeric-up-alt::before { content: "\f578"; }
-.bi-sort-numeric-up::before { content: "\f579"; }
-.bi-sort-up-alt::before { content: "\f57a"; }
-.bi-sort-up::before { content: "\f57b"; }
-.bi-soundwave::before { content: "\f57c"; }
-.bi-speaker-fill::before { content: "\f57d"; }
-.bi-speaker::before { content: "\f57e"; }
-.bi-speedometer::before { content: "\f57f"; }
-.bi-speedometer2::before { content: "\f580"; }
-.bi-spellcheck::before { content: "\f581"; }
-.bi-square-fill::before { content: "\f582"; }
-.bi-square-half::before { content: "\f583"; }
-.bi-square::before { content: "\f584"; }
-.bi-stack::before { content: "\f585"; }
-.bi-star-fill::before { content: "\f586"; }
-.bi-star-half::before { content: "\f587"; }
-.bi-star::before { content: "\f588"; }
-.bi-stars::before { content: "\f589"; }
-.bi-stickies-fill::before { content: "\f58a"; }
-.bi-stickies::before { content: "\f58b"; }
-.bi-sticky-fill::before { content: "\f58c"; }
-.bi-sticky::before { content: "\f58d"; }
-.bi-stop-btn-fill::before { content: "\f58e"; }
-.bi-stop-btn::before { content: "\f58f"; }
-.bi-stop-circle-fill::before { content: "\f590"; }
-.bi-stop-circle::before { content: "\f591"; }
-.bi-stop-fill::before { content: "\f592"; }
-.bi-stop::before { content: "\f593"; }
-.bi-stoplights-fill::before { content: "\f594"; }
-.bi-stoplights::before { content: "\f595"; }
-.bi-stopwatch-fill::before { content: "\f596"; }
-.bi-stopwatch::before { content: "\f597"; }
-.bi-subtract::before { content: "\f598"; }
-.bi-suit-club-fill::before { content: "\f599"; }
-.bi-suit-club::before { content: "\f59a"; }
-.bi-suit-diamond-fill::before { content: "\f59b"; }
-.bi-suit-diamond::before { content: "\f59c"; }
-.bi-suit-heart-fill::before { content: "\f59d"; }
-.bi-suit-heart::before { content: "\f59e"; }
-.bi-suit-spade-fill::before { content: "\f59f"; }
-.bi-suit-spade::before { content: "\f5a0"; }
-.bi-sun-fill::before { content: "\f5a1"; }
-.bi-sun::before { content: "\f5a2"; }
-.bi-sunglasses::before { content: "\f5a3"; }
-.bi-sunrise-fill::before { content: "\f5a4"; }
-.bi-sunrise::before { content: "\f5a5"; }
-.bi-sunset-fill::before { content: "\f5a6"; }
-.bi-sunset::before { content: "\f5a7"; }
-.bi-symmetry-horizontal::before { content: "\f5a8"; }
-.bi-symmetry-vertical::before { content: "\f5a9"; }
-.bi-table::before { content: "\f5aa"; }
-.bi-tablet-fill::before { content: "\f5ab"; }
-.bi-tablet-landscape-fill::before { content: "\f5ac"; }
-.bi-tablet-landscape::before { content: "\f5ad"; }
-.bi-tablet::before { content: "\f5ae"; }
-.bi-tag-fill::before { content: "\f5af"; }
-.bi-tag::before { content: "\f5b0"; }
-.bi-tags-fill::before { content: "\f5b1"; }
-.bi-tags::before { content: "\f5b2"; }
-.bi-telegram::before { content: "\f5b3"; }
-.bi-telephone-fill::before { content: "\f5b4"; }
-.bi-telephone-forward-fill::before { content: "\f5b5"; }
-.bi-telephone-forward::before { content: "\f5b6"; }
-.bi-telephone-inbound-fill::before { content: "\f5b7"; }
-.bi-telephone-inbound::before { content: "\f5b8"; }
-.bi-telephone-minus-fill::before { content: "\f5b9"; }
-.bi-telephone-minus::before { content: "\f5ba"; }
-.bi-telephone-outbound-fill::before { content: "\f5bb"; }
-.bi-telephone-outbound::before { content: "\f5bc"; }
-.bi-telephone-plus-fill::before { content: "\f5bd"; }
-.bi-telephone-plus::before { content: "\f5be"; }
-.bi-telephone-x-fill::before { content: "\f5bf"; }
-.bi-telephone-x::before { content: "\f5c0"; }
-.bi-telephone::before { content: "\f5c1"; }
-.bi-terminal-fill::before { content: "\f5c2"; }
-.bi-terminal::before { content: "\f5c3"; }
-.bi-text-center::before { content: "\f5c4"; }
-.bi-text-indent-left::before { content: "\f5c5"; }
-.bi-text-indent-right::before { content: "\f5c6"; }
-.bi-text-left::before { content: "\f5c7"; }
-.bi-text-paragraph::before { content: "\f5c8"; }
-.bi-text-right::before { content: "\f5c9"; }
-.bi-textarea-resize::before { content: "\f5ca"; }
-.bi-textarea-t::before { content: "\f5cb"; }
-.bi-textarea::before { content: "\f5cc"; }
-.bi-thermometer-half::before { content: "\f5cd"; }
-.bi-thermometer-high::before { content: "\f5ce"; }
-.bi-thermometer-low::before { content: "\f5cf"; }
-.bi-thermometer-snow::before { content: "\f5d0"; }
-.bi-thermometer-sun::before { content: "\f5d1"; }
-.bi-thermometer::before { content: "\f5d2"; }
-.bi-three-dots-vertical::before { content: "\f5d3"; }
-.bi-three-dots::before { content: "\f5d4"; }
-.bi-toggle-off::before { content: "\f5d5"; }
-.bi-toggle-on::before { content: "\f5d6"; }
-.bi-toggle2-off::before { content: "\f5d7"; }
-.bi-toggle2-on::before { content: "\f5d8"; }
-.bi-toggles::before { content: "\f5d9"; }
-.bi-toggles2::before { content: "\f5da"; }
-.bi-tools::before { content: "\f5db"; }
-.bi-tornado::before { content: "\f5dc"; }
-.bi-trash-fill::before { content: "\f5dd"; }
-.bi-trash::before { content: "\f5de"; }
-.bi-trash2-fill::before { content: "\f5df"; }
-.bi-trash2::before { content: "\f5e0"; }
-.bi-tree-fill::before { content: "\f5e1"; }
-.bi-tree::before { content: "\f5e2"; }
-.bi-triangle-fill::before { content: "\f5e3"; }
-.bi-triangle-half::before { content: "\f5e4"; }
-.bi-triangle::before { content: "\f5e5"; }
-.bi-trophy-fill::before { content: "\f5e6"; }
-.bi-trophy::before { content: "\f5e7"; }
-.bi-tropical-storm::before { content: "\f5e8"; }
-.bi-truck-flatbed::before { content: "\f5e9"; }
-.bi-truck::before { content: "\f5ea"; }
-.bi-tsunami::before { content: "\f5eb"; }
-.bi-tv-fill::before { content: "\f5ec"; }
-.bi-tv::before { content: "\f5ed"; }
-.bi-twitch::before { content: "\f5ee"; }
-.bi-twitter::before { content: "\f5ef"; }
-.bi-type-bold::before { content: "\f5f0"; }
-.bi-type-h1::before { content: "\f5f1"; }
-.bi-type-h2::before { content: "\f5f2"; }
-.bi-type-h3::before { content: "\f5f3"; }
-.bi-type-italic::before { content: "\f5f4"; }
-.bi-type-strikethrough::before { content: "\f5f5"; }
-.bi-type-underline::before { content: "\f5f6"; }
-.bi-type::before { content: "\f5f7"; }
-.bi-ui-checks-grid::before { content: "\f5f8"; }
-.bi-ui-checks::before { content: "\f5f9"; }
-.bi-ui-radios-grid::before { content: "\f5fa"; }
-.bi-ui-radios::before { content: "\f5fb"; }
-.bi-umbrella-fill::before { content: "\f5fc"; }
-.bi-umbrella::before { content: "\f5fd"; }
-.bi-union::before { content: "\f5fe"; }
-.bi-unlock-fill::before { content: "\f5ff"; }
-.bi-unlock::before { content: "\f600"; }
-.bi-upc-scan::before { content: "\f601"; }
-.bi-upc::before { content: "\f602"; }
-.bi-upload::before { content: "\f603"; }
-.bi-vector-pen::before { content: "\f604"; }
-.bi-view-list::before { content: "\f605"; }
-.bi-view-stacked::before { content: "\f606"; }
-.bi-vinyl-fill::before { content: "\f607"; }
-.bi-vinyl::before { content: "\f608"; }
-.bi-voicemail::before { content: "\f609"; }
-.bi-volume-down-fill::before { content: "\f60a"; }
-.bi-volume-down::before { content: "\f60b"; }
-.bi-volume-mute-fill::before { content: "\f60c"; }
-.bi-volume-mute::before { content: "\f60d"; }
-.bi-volume-off-fill::before { content: "\f60e"; }
-.bi-volume-off::before { content: "\f60f"; }
-.bi-volume-up-fill::before { content: "\f610"; }
-.bi-volume-up::before { content: "\f611"; }
-.bi-vr::before { content: "\f612"; }
-.bi-wallet-fill::before { content: "\f613"; }
-.bi-wallet::before { content: "\f614"; }
-.bi-wallet2::before { content: "\f615"; }
-.bi-watch::before { content: "\f616"; }
-.bi-water::before { content: "\f617"; }
-.bi-whatsapp::before { content: "\f618"; }
-.bi-wifi-1::before { content: "\f619"; }
-.bi-wifi-2::before { content: "\f61a"; }
-.bi-wifi-off::before { content: "\f61b"; }
-.bi-wifi::before { content: "\f61c"; }
-.bi-wind::before { content: "\f61d"; }
-.bi-window-dock::before { content: "\f61e"; }
-.bi-window-sidebar::before { content: "\f61f"; }
-.bi-window::before { content: "\f620"; }
-.bi-wrench::before { content: "\f621"; }
-.bi-x-circle-fill::before { content: "\f622"; }
-.bi-x-circle::before { content: "\f623"; }
-.bi-x-diamond-fill::before { content: "\f624"; }
-.bi-x-diamond::before { content: "\f625"; }
-.bi-x-octagon-fill::before { content: "\f626"; }
-.bi-x-octagon::before { content: "\f627"; }
-.bi-x-square-fill::before { content: "\f628"; }
-.bi-x-square::before { content: "\f629"; }
-.bi-x::before { content: "\f62a"; }
-.bi-youtube::before { content: "\f62b"; }
-.bi-zoom-in::before { content: "\f62c"; }
-.bi-zoom-out::before { content: "\f62d"; }
-.bi-bank::before { content: "\f62e"; }
-.bi-bank2::before { content: "\f62f"; }
-.bi-bell-slash-fill::before { content: "\f630"; }
-.bi-bell-slash::before { content: "\f631"; }
-.bi-cash-coin::before { content: "\f632"; }
-.bi-check-lg::before { content: "\f633"; }
-.bi-coin::before { content: "\f634"; }
-.bi-currency-bitcoin::before { content: "\f635"; }
-.bi-currency-dollar::before { content: "\f636"; }
-.bi-currency-euro::before { content: "\f637"; }
-.bi-currency-exchange::before { content: "\f638"; }
-.bi-currency-pound::before { content: "\f639"; }
-.bi-currency-yen::before { content: "\f63a"; }
-.bi-dash-lg::before { content: "\f63b"; }
-.bi-exclamation-lg::before { content: "\f63c"; }
-.bi-file-earmark-pdf-fill::before { content: "\f63d"; }
-.bi-file-earmark-pdf::before { content: "\f63e"; }
-.bi-file-pdf-fill::before { content: "\f63f"; }
-.bi-file-pdf::before { content: "\f640"; }
-.bi-gender-ambiguous::before { content: "\f641"; }
-.bi-gender-female::before { content: "\f642"; }
-.bi-gender-male::before { content: "\f643"; }
-.bi-gender-trans::before { content: "\f644"; }
-.bi-headset-vr::before { content: "\f645"; }
-.bi-info-lg::before { content: "\f646"; }
-.bi-mastodon::before { content: "\f647"; }
-.bi-messenger::before { content: "\f648"; }
-.bi-piggy-bank-fill::before { content: "\f649"; }
-.bi-piggy-bank::before { content: "\f64a"; }
-.bi-pin-map-fill::before { content: "\f64b"; }
-.bi-pin-map::before { content: "\f64c"; }
-.bi-plus-lg::before { content: "\f64d"; }
-.bi-question-lg::before { content: "\f64e"; }
-.bi-recycle::before { content: "\f64f"; }
-.bi-reddit::before { content: "\f650"; }
-.bi-safe-fill::before { content: "\f651"; }
-.bi-safe2-fill::before { content: "\f652"; }
-.bi-safe2::before { content: "\f653"; }
-.bi-sd-card-fill::before { content: "\f654"; }
-.bi-sd-card::before { content: "\f655"; }
-.bi-skype::before { content: "\f656"; }
-.bi-slash-lg::before { content: "\f657"; }
-.bi-translate::before { content: "\f658"; }
-.bi-x-lg::before { content: "\f659"; }
-.bi-safe::before { content: "\f65a"; }
-.bi-apple::before { content: "\f65b"; }
-.bi-microsoft::before { content: "\f65d"; }
-.bi-windows::before { content: "\f65e"; }
-.bi-behance::before { content: "\f65c"; }
-.bi-dribbble::before { content: "\f65f"; }
-.bi-line::before { content: "\f660"; }
-.bi-medium::before { content: "\f661"; }
-.bi-paypal::before { content: "\f662"; }
-.bi-pinterest::before { content: "\f663"; }
-.bi-signal::before { content: "\f664"; }
-.bi-snapchat::before { content: "\f665"; }
-.bi-spotify::before { content: "\f666"; }
-.bi-stack-overflow::before { content: "\f667"; }
-.bi-strava::before { content: "\f668"; }
-.bi-wordpress::before { content: "\f669"; }
-.bi-vimeo::before { content: "\f66a"; }
-.bi-activity::before { content: "\f66b"; }
-.bi-easel2-fill::before { content: "\f66c"; }
-.bi-easel2::before { content: "\f66d"; }
-.bi-easel3-fill::before { content: "\f66e"; }
-.bi-easel3::before { content: "\f66f"; }
-.bi-fan::before { content: "\f670"; }
-.bi-fingerprint::before { content: "\f671"; }
-.bi-graph-down-arrow::before { content: "\f672"; }
-.bi-graph-up-arrow::before { content: "\f673"; }
-.bi-hypnotize::before { content: "\f674"; }
-.bi-magic::before { content: "\f675"; }
-.bi-person-rolodex::before { content: "\f676"; }
-.bi-person-video::before { content: "\f677"; }
-.bi-person-video2::before { content: "\f678"; }
-.bi-person-video3::before { content: "\f679"; }
-.bi-person-workspace::before { content: "\f67a"; }
-.bi-radioactive::before { content: "\f67b"; }
-.bi-webcam-fill::before { content: "\f67c"; }
-.bi-webcam::before { content: "\f67d"; }
-.bi-yin-yang::before { content: "\f67e"; }
-.bi-bandaid-fill::before { content: "\f680"; }
-.bi-bandaid::before { content: "\f681"; }
-.bi-bluetooth::before { content: "\f682"; }
-.bi-body-text::before { content: "\f683"; }
-.bi-boombox::before { content: "\f684"; }
-.bi-boxes::before { content: "\f685"; }
-.bi-dpad-fill::before { content: "\f686"; }
-.bi-dpad::before { content: "\f687"; }
-.bi-ear-fill::before { content: "\f688"; }
-.bi-ear::before { content: "\f689"; }
-.bi-envelope-check-fill::before { content: "\f68b"; }
-.bi-envelope-check::before { content: "\f68c"; }
-.bi-envelope-dash-fill::before { content: "\f68e"; }
-.bi-envelope-dash::before { content: "\f68f"; }
-.bi-envelope-exclamation-fill::before { content: "\f691"; }
-.bi-envelope-exclamation::before { content: "\f692"; }
-.bi-envelope-plus-fill::before { content: "\f693"; }
-.bi-envelope-plus::before { content: "\f694"; }
-.bi-envelope-slash-fill::before { content: "\f696"; }
-.bi-envelope-slash::before { content: "\f697"; }
-.bi-envelope-x-fill::before { content: "\f699"; }
-.bi-envelope-x::before { content: "\f69a"; }
-.bi-explicit-fill::before { content: "\f69b"; }
-.bi-explicit::before { content: "\f69c"; }
-.bi-git::before { content: "\f69d"; }
-.bi-infinity::before { content: "\f69e"; }
-.bi-list-columns-reverse::before { content: "\f69f"; }
-.bi-list-columns::before { content: "\f6a0"; }
-.bi-meta::before { content: "\f6a1"; }
-.bi-nintendo-switch::before { content: "\f6a4"; }
-.bi-pc-display-horizontal::before { content: "\f6a5"; }
-.bi-pc-display::before { content: "\f6a6"; }
-.bi-pc-horizontal::before { content: "\f6a7"; }
-.bi-pc::before { content: "\f6a8"; }
-.bi-playstation::before { content: "\f6a9"; }
-.bi-plus-slash-minus::before { content: "\f6aa"; }
-.bi-projector-fill::before { content: "\f6ab"; }
-.bi-projector::before { content: "\f6ac"; }
-.bi-qr-code-scan::before { content: "\f6ad"; }
-.bi-qr-code::before { content: "\f6ae"; }
-.bi-quora::before { content: "\f6af"; }
-.bi-quote::before { content: "\f6b0"; }
-.bi-robot::before { content: "\f6b1"; }
-.bi-send-check-fill::before { content: "\f6b2"; }
-.bi-send-check::before { content: "\f6b3"; }
-.bi-send-dash-fill::before { content: "\f6b4"; }
-.bi-send-dash::before { content: "\f6b5"; }
-.bi-send-exclamation-fill::before { content: "\f6b7"; }
-.bi-send-exclamation::before { content: "\f6b8"; }
-.bi-send-fill::before { content: "\f6b9"; }
-.bi-send-plus-fill::before { content: "\f6ba"; }
-.bi-send-plus::before { content: "\f6bb"; }
-.bi-send-slash-fill::before { content: "\f6bc"; }
-.bi-send-slash::before { content: "\f6bd"; }
-.bi-send-x-fill::before { content: "\f6be"; }
-.bi-send-x::before { content: "\f6bf"; }
-.bi-send::before { content: "\f6c0"; }
-.bi-steam::before { content: "\f6c1"; }
-.bi-terminal-dash::before { content: "\f6c3"; }
-.bi-terminal-plus::before { content: "\f6c4"; }
-.bi-terminal-split::before { content: "\f6c5"; }
-.bi-ticket-detailed-fill::before { content: "\f6c6"; }
-.bi-ticket-detailed::before { content: "\f6c7"; }
-.bi-ticket-fill::before { content: "\f6c8"; }
-.bi-ticket-perforated-fill::before { content: "\f6c9"; }
-.bi-ticket-perforated::before { content: "\f6ca"; }
-.bi-ticket::before { content: "\f6cb"; }
-.bi-tiktok::before { content: "\f6cc"; }
-.bi-window-dash::before { content: "\f6cd"; }
-.bi-window-desktop::before { content: "\f6ce"; }
-.bi-window-fullscreen::before { content: "\f6cf"; }
-.bi-window-plus::before { content: "\f6d0"; }
-.bi-window-split::before { content: "\f6d1"; }
-.bi-window-stack::before { content: "\f6d2"; }
-.bi-window-x::before { content: "\f6d3"; }
-.bi-xbox::before { content: "\f6d4"; }
-.bi-ethernet::before { content: "\f6d5"; }
-.bi-hdmi-fill::before { content: "\f6d6"; }
-.bi-hdmi::before { content: "\f6d7"; }
-.bi-usb-c-fill::before { content: "\f6d8"; }
-.bi-usb-c::before { content: "\f6d9"; }
-.bi-usb-fill::before { content: "\f6da"; }
-.bi-usb-plug-fill::before { content: "\f6db"; }
-.bi-usb-plug::before { content: "\f6dc"; }
-.bi-usb-symbol::before { content: "\f6dd"; }
-.bi-usb::before { content: "\f6de"; }
-.bi-boombox-fill::before { content: "\f6df"; }
-.bi-displayport::before { content: "\f6e1"; }
-.bi-gpu-card::before { content: "\f6e2"; }
-.bi-memory::before { content: "\f6e3"; }
-.bi-modem-fill::before { content: "\f6e4"; }
-.bi-modem::before { content: "\f6e5"; }
-.bi-motherboard-fill::before { content: "\f6e6"; }
-.bi-motherboard::before { content: "\f6e7"; }
-.bi-optical-audio-fill::before { content: "\f6e8"; }
-.bi-optical-audio::before { content: "\f6e9"; }
-.bi-pci-card::before { content: "\f6ea"; }
-.bi-router-fill::before { content: "\f6eb"; }
-.bi-router::before { content: "\f6ec"; }
-.bi-thunderbolt-fill::before { content: "\f6ef"; }
-.bi-thunderbolt::before { content: "\f6f0"; }
-.bi-usb-drive-fill::before { content: "\f6f1"; }
-.bi-usb-drive::before { content: "\f6f2"; }
-.bi-usb-micro-fill::before { content: "\f6f3"; }
-.bi-usb-micro::before { content: "\f6f4"; }
-.bi-usb-mini-fill::before { content: "\f6f5"; }
-.bi-usb-mini::before { content: "\f6f6"; }
-.bi-cloud-haze2::before { content: "\f6f7"; }
-.bi-device-hdd-fill::before { content: "\f6f8"; }
-.bi-device-hdd::before { content: "\f6f9"; }
-.bi-device-ssd-fill::before { content: "\f6fa"; }
-.bi-device-ssd::before { content: "\f6fb"; }
-.bi-displayport-fill::before { content: "\f6fc"; }
-.bi-mortarboard-fill::before { content: "\f6fd"; }
-.bi-mortarboard::before { content: "\f6fe"; }
-.bi-terminal-x::before { content: "\f6ff"; }
-.bi-arrow-through-heart-fill::before { content: "\f700"; }
-.bi-arrow-through-heart::before { content: "\f701"; }
-.bi-badge-sd-fill::before { content: "\f702"; }
-.bi-badge-sd::before { content: "\f703"; }
-.bi-bag-heart-fill::before { content: "\f704"; }
-.bi-bag-heart::before { content: "\f705"; }
-.bi-balloon-fill::before { content: "\f706"; }
-.bi-balloon-heart-fill::before { content: "\f707"; }
-.bi-balloon-heart::before { content: "\f708"; }
-.bi-balloon::before { content: "\f709"; }
-.bi-box2-fill::before { content: "\f70a"; }
-.bi-box2-heart-fill::before { content: "\f70b"; }
-.bi-box2-heart::before { content: "\f70c"; }
-.bi-box2::before { content: "\f70d"; }
-.bi-braces-asterisk::before { content: "\f70e"; }
-.bi-calendar-heart-fill::before { content: "\f70f"; }
-.bi-calendar-heart::before { content: "\f710"; }
-.bi-calendar2-heart-fill::before { content: "\f711"; }
-.bi-calendar2-heart::before { content: "\f712"; }
-.bi-chat-heart-fill::before { content: "\f713"; }
-.bi-chat-heart::before { content: "\f714"; }
-.bi-chat-left-heart-fill::before { content: "\f715"; }
-.bi-chat-left-heart::before { content: "\f716"; }
-.bi-chat-right-heart-fill::before { content: "\f717"; }
-.bi-chat-right-heart::before { content: "\f718"; }
-.bi-chat-square-heart-fill::before { content: "\f719"; }
-.bi-chat-square-heart::before { content: "\f71a"; }
-.bi-clipboard-check-fill::before { content: "\f71b"; }
-.bi-clipboard-data-fill::before { content: "\f71c"; }
-.bi-clipboard-fill::before { content: "\f71d"; }
-.bi-clipboard-heart-fill::before { content: "\f71e"; }
-.bi-clipboard-heart::before { content: "\f71f"; }
-.bi-clipboard-minus-fill::before { content: "\f720"; }
-.bi-clipboard-plus-fill::before { content: "\f721"; }
-.bi-clipboard-pulse::before { content: "\f722"; }
-.bi-clipboard-x-fill::before { content: "\f723"; }
-.bi-clipboard2-check-fill::before { content: "\f724"; }
-.bi-clipboard2-check::before { content: "\f725"; }
-.bi-clipboard2-data-fill::before { content: "\f726"; }
-.bi-clipboard2-data::before { content: "\f727"; }
-.bi-clipboard2-fill::before { content: "\f728"; }
-.bi-clipboard2-heart-fill::before { content: "\f729"; }
-.bi-clipboard2-heart::before { content: "\f72a"; }
-.bi-clipboard2-minus-fill::before { content: "\f72b"; }
-.bi-clipboard2-minus::before { content: "\f72c"; }
-.bi-clipboard2-plus-fill::before { content: "\f72d"; }
-.bi-clipboard2-plus::before { content: "\f72e"; }
-.bi-clipboard2-pulse-fill::before { content: "\f72f"; }
-.bi-clipboard2-pulse::before { content: "\f730"; }
-.bi-clipboard2-x-fill::before { content: "\f731"; }
-.bi-clipboard2-x::before { content: "\f732"; }
-.bi-clipboard2::before { content: "\f733"; }
-.bi-emoji-kiss-fill::before { content: "\f734"; }
-.bi-emoji-kiss::before { content: "\f735"; }
-.bi-envelope-heart-fill::before { content: "\f736"; }
-.bi-envelope-heart::before { content: "\f737"; }
-.bi-envelope-open-heart-fill::before { content: "\f738"; }
-.bi-envelope-open-heart::before { content: "\f739"; }
-.bi-envelope-paper-fill::before { content: "\f73a"; }
-.bi-envelope-paper-heart-fill::before { content: "\f73b"; }
-.bi-envelope-paper-heart::before { content: "\f73c"; }
-.bi-envelope-paper::before { content: "\f73d"; }
-.bi-filetype-aac::before { content: "\f73e"; }
-.bi-filetype-ai::before { content: "\f73f"; }
-.bi-filetype-bmp::before { content: "\f740"; }
-.bi-filetype-cs::before { content: "\f741"; }
-.bi-filetype-css::before { content: "\f742"; }
-.bi-filetype-csv::before { content: "\f743"; }
-.bi-filetype-doc::before { content: "\f744"; }
-.bi-filetype-docx::before { content: "\f745"; }
-.bi-filetype-exe::before { content: "\f746"; }
-.bi-filetype-gif::before { content: "\f747"; }
-.bi-filetype-heic::before { content: "\f748"; }
-.bi-filetype-html::before { content: "\f749"; }
-.bi-filetype-java::before { content: "\f74a"; }
-.bi-filetype-jpg::before { content: "\f74b"; }
-.bi-filetype-js::before { content: "\f74c"; }
-.bi-filetype-jsx::before { content: "\f74d"; }
-.bi-filetype-key::before { content: "\f74e"; }
-.bi-filetype-m4p::before { content: "\f74f"; }
-.bi-filetype-md::before { content: "\f750"; }
-.bi-filetype-mdx::before { content: "\f751"; }
-.bi-filetype-mov::before { content: "\f752"; }
-.bi-filetype-mp3::before { content: "\f753"; }
-.bi-filetype-mp4::before { content: "\f754"; }
-.bi-filetype-otf::before { content: "\f755"; }
-.bi-filetype-pdf::before { content: "\f756"; }
-.bi-filetype-php::before { content: "\f757"; }
-.bi-filetype-png::before { content: "\f758"; }
-.bi-filetype-ppt::before { content: "\f75a"; }
-.bi-filetype-psd::before { content: "\f75b"; }
-.bi-filetype-py::before { content: "\f75c"; }
-.bi-filetype-raw::before { content: "\f75d"; }
-.bi-filetype-rb::before { content: "\f75e"; }
-.bi-filetype-sass::before { content: "\f75f"; }
-.bi-filetype-scss::before { content: "\f760"; }
-.bi-filetype-sh::before { content: "\f761"; }
-.bi-filetype-svg::before { content: "\f762"; }
-.bi-filetype-tiff::before { content: "\f763"; }
-.bi-filetype-tsx::before { content: "\f764"; }
-.bi-filetype-ttf::before { content: "\f765"; }
-.bi-filetype-txt::before { content: "\f766"; }
-.bi-filetype-wav::before { content: "\f767"; }
-.bi-filetype-woff::before { content: "\f768"; }
-.bi-filetype-xls::before { content: "\f76a"; }
-.bi-filetype-xml::before { content: "\f76b"; }
-.bi-filetype-yml::before { content: "\f76c"; }
-.bi-heart-arrow::before { content: "\f76d"; }
-.bi-heart-pulse-fill::before { content: "\f76e"; }
-.bi-heart-pulse::before { content: "\f76f"; }
-.bi-heartbreak-fill::before { content: "\f770"; }
-.bi-heartbreak::before { content: "\f771"; }
-.bi-hearts::before { content: "\f772"; }
-.bi-hospital-fill::before { content: "\f773"; }
-.bi-hospital::before { content: "\f774"; }
-.bi-house-heart-fill::before { content: "\f775"; }
-.bi-house-heart::before { content: "\f776"; }
-.bi-incognito::before { content: "\f777"; }
-.bi-magnet-fill::before { content: "\f778"; }
-.bi-magnet::before { content: "\f779"; }
-.bi-person-heart::before { content: "\f77a"; }
-.bi-person-hearts::before { content: "\f77b"; }
-.bi-phone-flip::before { content: "\f77c"; }
-.bi-plugin::before { content: "\f77d"; }
-.bi-postage-fill::before { content: "\f77e"; }
-.bi-postage-heart-fill::before { content: "\f77f"; }
-.bi-postage-heart::before { content: "\f780"; }
-.bi-postage::before { content: "\f781"; }
-.bi-postcard-fill::before { content: "\f782"; }
-.bi-postcard-heart-fill::before { content: "\f783"; }
-.bi-postcard-heart::before { content: "\f784"; }
-.bi-postcard::before { content: "\f785"; }
-.bi-search-heart-fill::before { content: "\f786"; }
-.bi-search-heart::before { content: "\f787"; }
-.bi-sliders2-vertical::before { content: "\f788"; }
-.bi-sliders2::before { content: "\f789"; }
-.bi-trash3-fill::before { content: "\f78a"; }
-.bi-trash3::before { content: "\f78b"; }
-.bi-valentine::before { content: "\f78c"; }
-.bi-valentine2::before { content: "\f78d"; }
-.bi-wrench-adjustable-circle-fill::before { content: "\f78e"; }
-.bi-wrench-adjustable-circle::before { content: "\f78f"; }
-.bi-wrench-adjustable::before { content: "\f790"; }
-.bi-filetype-json::before { content: "\f791"; }
-.bi-filetype-pptx::before { content: "\f792"; }
-.bi-filetype-xlsx::before { content: "\f793"; }
-.bi-1-circle-fill::before { content: "\f796"; }
-.bi-1-circle::before { content: "\f797"; }
-.bi-1-square-fill::before { content: "\f798"; }
-.bi-1-square::before { content: "\f799"; }
-.bi-2-circle-fill::before { content: "\f79c"; }
-.bi-2-circle::before { content: "\f79d"; }
-.bi-2-square-fill::before { content: "\f79e"; }
-.bi-2-square::before { content: "\f79f"; }
-.bi-3-circle-fill::before { content: "\f7a2"; }
-.bi-3-circle::before { content: "\f7a3"; }
-.bi-3-square-fill::before { content: "\f7a4"; }
-.bi-3-square::before { content: "\f7a5"; }
-.bi-4-circle-fill::before { content: "\f7a8"; }
-.bi-4-circle::before { content: "\f7a9"; }
-.bi-4-square-fill::before { content: "\f7aa"; }
-.bi-4-square::before { content: "\f7ab"; }
-.bi-5-circle-fill::before { content: "\f7ae"; }
-.bi-5-circle::before { content: "\f7af"; }
-.bi-5-square-fill::before { content: "\f7b0"; }
-.bi-5-square::before { content: "\f7b1"; }
-.bi-6-circle-fill::before { content: "\f7b4"; }
-.bi-6-circle::before { content: "\f7b5"; }
-.bi-6-square-fill::before { content: "\f7b6"; }
-.bi-6-square::before { content: "\f7b7"; }
-.bi-7-circle-fill::before { content: "\f7ba"; }
-.bi-7-circle::before { content: "\f7bb"; }
-.bi-7-square-fill::before { content: "\f7bc"; }
-.bi-7-square::before { content: "\f7bd"; }
-.bi-8-circle-fill::before { content: "\f7c0"; }
-.bi-8-circle::before { content: "\f7c1"; }
-.bi-8-square-fill::before { content: "\f7c2"; }
-.bi-8-square::before { content: "\f7c3"; }
-.bi-9-circle-fill::before { content: "\f7c6"; }
-.bi-9-circle::before { content: "\f7c7"; }
-.bi-9-square-fill::before { content: "\f7c8"; }
-.bi-9-square::before { content: "\f7c9"; }
-.bi-airplane-engines-fill::before { content: "\f7ca"; }
-.bi-airplane-engines::before { content: "\f7cb"; }
-.bi-airplane-fill::before { content: "\f7cc"; }
-.bi-airplane::before { content: "\f7cd"; }
-.bi-alexa::before { content: "\f7ce"; }
-.bi-alipay::before { content: "\f7cf"; }
-.bi-android::before { content: "\f7d0"; }
-.bi-android2::before { content: "\f7d1"; }
-.bi-box-fill::before { content: "\f7d2"; }
-.bi-box-seam-fill::before { content: "\f7d3"; }
-.bi-browser-chrome::before { content: "\f7d4"; }
-.bi-browser-edge::before { content: "\f7d5"; }
-.bi-browser-firefox::before { content: "\f7d6"; }
-.bi-browser-safari::before { content: "\f7d7"; }
-.bi-c-circle-fill::before { content: "\f7da"; }
-.bi-c-circle::before { content: "\f7db"; }
-.bi-c-square-fill::before { content: "\f7dc"; }
-.bi-c-square::before { content: "\f7dd"; }
-.bi-capsule-pill::before { content: "\f7de"; }
-.bi-capsule::before { content: "\f7df"; }
-.bi-car-front-fill::before { content: "\f7e0"; }
-.bi-car-front::before { content: "\f7e1"; }
-.bi-cassette-fill::before { content: "\f7e2"; }
-.bi-cassette::before { content: "\f7e3"; }
-.bi-cc-circle-fill::before { content: "\f7e6"; }
-.bi-cc-circle::before { content: "\f7e7"; }
-.bi-cc-square-fill::before { content: "\f7e8"; }
-.bi-cc-square::before { content: "\f7e9"; }
-.bi-cup-hot-fill::before { content: "\f7ea"; }
-.bi-cup-hot::before { content: "\f7eb"; }
-.bi-currency-rupee::before { content: "\f7ec"; }
-.bi-dropbox::before { content: "\f7ed"; }
-.bi-escape::before { content: "\f7ee"; }
-.bi-fast-forward-btn-fill::before { content: "\f7ef"; }
-.bi-fast-forward-btn::before { content: "\f7f0"; }
-.bi-fast-forward-circle-fill::before { content: "\f7f1"; }
-.bi-fast-forward-circle::before { content: "\f7f2"; }
-.bi-fast-forward-fill::before { content: "\f7f3"; }
-.bi-fast-forward::before { content: "\f7f4"; }
-.bi-filetype-sql::before { content: "\f7f5"; }
-.bi-fire::before { content: "\f7f6"; }
-.bi-google-play::before { content: "\f7f7"; }
-.bi-h-circle-fill::before { content: "\f7fa"; }
-.bi-h-circle::before { content: "\f7fb"; }
-.bi-h-square-fill::before { content: "\f7fc"; }
-.bi-h-square::before { content: "\f7fd"; }
-.bi-indent::before { content: "\f7fe"; }
-.bi-lungs-fill::before { content: "\f7ff"; }
-.bi-lungs::before { content: "\f800"; }
-.bi-microsoft-teams::before { content: "\f801"; }
-.bi-p-circle-fill::before { content: "\f804"; }
-.bi-p-circle::before { content: "\f805"; }
-.bi-p-square-fill::before { content: "\f806"; }
-.bi-p-square::before { content: "\f807"; }
-.bi-pass-fill::before { content: "\f808"; }
-.bi-pass::before { content: "\f809"; }
-.bi-prescription::before { content: "\f80a"; }
-.bi-prescription2::before { content: "\f80b"; }
-.bi-r-circle-fill::before { content: "\f80e"; }
-.bi-r-circle::before { content: "\f80f"; }
-.bi-r-square-fill::before { content: "\f810"; }
-.bi-r-square::before { content: "\f811"; }
-.bi-repeat-1::before { content: "\f812"; }
-.bi-repeat::before { content: "\f813"; }
-.bi-rewind-btn-fill::before { content: "\f814"; }
-.bi-rewind-btn::before { content: "\f815"; }
-.bi-rewind-circle-fill::before { content: "\f816"; }
-.bi-rewind-circle::before { content: "\f817"; }
-.bi-rewind-fill::before { content: "\f818"; }
-.bi-rewind::before { content: "\f819"; }
-.bi-train-freight-front-fill::before { content: "\f81a"; }
-.bi-train-freight-front::before { content: "\f81b"; }
-.bi-train-front-fill::before { content: "\f81c"; }
-.bi-train-front::before { content: "\f81d"; }
-.bi-train-lightrail-front-fill::before { content: "\f81e"; }
-.bi-train-lightrail-front::before { content: "\f81f"; }
-.bi-truck-front-fill::before { content: "\f820"; }
-.bi-truck-front::before { content: "\f821"; }
-.bi-ubuntu::before { content: "\f822"; }
-.bi-unindent::before { content: "\f823"; }
-.bi-unity::before { content: "\f824"; }
-.bi-universal-access-circle::before { content: "\f825"; }
-.bi-universal-access::before { content: "\f826"; }
-.bi-virus::before { content: "\f827"; }
-.bi-virus2::before { content: "\f828"; }
-.bi-wechat::before { content: "\f829"; }
-.bi-yelp::before { content: "\f82a"; }
-.bi-sign-stop-fill::before { content: "\f82b"; }
-.bi-sign-stop-lights-fill::before { content: "\f82c"; }
-.bi-sign-stop-lights::before { content: "\f82d"; }
-.bi-sign-stop::before { content: "\f82e"; }
-.bi-sign-turn-left-fill::before { content: "\f82f"; }
-.bi-sign-turn-left::before { content: "\f830"; }
-.bi-sign-turn-right-fill::before { content: "\f831"; }
-.bi-sign-turn-right::before { content: "\f832"; }
-.bi-sign-turn-slight-left-fill::before { content: "\f833"; }
-.bi-sign-turn-slight-left::before { content: "\f834"; }
-.bi-sign-turn-slight-right-fill::before { content: "\f835"; }
-.bi-sign-turn-slight-right::before { content: "\f836"; }
-.bi-sign-yield-fill::before { content: "\f837"; }
-.bi-sign-yield::before { content: "\f838"; }
-.bi-ev-station-fill::before { content: "\f839"; }
-.bi-ev-station::before { content: "\f83a"; }
-.bi-fuel-pump-diesel-fill::before { content: "\f83b"; }
-.bi-fuel-pump-diesel::before { content: "\f83c"; }
-.bi-fuel-pump-fill::before { content: "\f83d"; }
-.bi-fuel-pump::before { content: "\f83e"; }
-.bi-0-circle-fill::before { content: "\f83f"; }
-.bi-0-circle::before { content: "\f840"; }
-.bi-0-square-fill::before { content: "\f841"; }
-.bi-0-square::before { content: "\f842"; }
-.bi-rocket-fill::before { content: "\f843"; }
-.bi-rocket-takeoff-fill::before { content: "\f844"; }
-.bi-rocket-takeoff::before { content: "\f845"; }
-.bi-rocket::before { content: "\f846"; }
-.bi-stripe::before { content: "\f847"; }
-.bi-subscript::before { content: "\f848"; }
-.bi-superscript::before { content: "\f849"; }
-.bi-trello::before { content: "\f84a"; }
-.bi-envelope-at-fill::before { content: "\f84b"; }
-.bi-envelope-at::before { content: "\f84c"; }
-.bi-regex::before { content: "\f84d"; }
-.bi-text-wrap::before { content: "\f84e"; }
-.bi-sign-dead-end-fill::before { content: "\f84f"; }
-.bi-sign-dead-end::before { content: "\f850"; }
-.bi-sign-do-not-enter-fill::before { content: "\f851"; }
-.bi-sign-do-not-enter::before { content: "\f852"; }
-.bi-sign-intersection-fill::before { content: "\f853"; }
-.bi-sign-intersection-side-fill::before { content: "\f854"; }
-.bi-sign-intersection-side::before { content: "\f855"; }
-.bi-sign-intersection-t-fill::before { content: "\f856"; }
-.bi-sign-intersection-t::before { content: "\f857"; }
-.bi-sign-intersection-y-fill::before { content: "\f858"; }
-.bi-sign-intersection-y::before { content: "\f859"; }
-.bi-sign-intersection::before { content: "\f85a"; }
-.bi-sign-merge-left-fill::before { content: "\f85b"; }
-.bi-sign-merge-left::before { content: "\f85c"; }
-.bi-sign-merge-right-fill::before { content: "\f85d"; }
-.bi-sign-merge-right::before { content: "\f85e"; }
-.bi-sign-no-left-turn-fill::before { content: "\f85f"; }
-.bi-sign-no-left-turn::before { content: "\f860"; }
-.bi-sign-no-parking-fill::before { content: "\f861"; }
-.bi-sign-no-parking::before { content: "\f862"; }
-.bi-sign-no-right-turn-fill::before { content: "\f863"; }
-.bi-sign-no-right-turn::before { content: "\f864"; }
-.bi-sign-railroad-fill::before { content: "\f865"; }
-.bi-sign-railroad::before { content: "\f866"; }
-.bi-building-add::before { content: "\f867"; }
-.bi-building-check::before { content: "\f868"; }
-.bi-building-dash::before { content: "\f869"; }
-.bi-building-down::before { content: "\f86a"; }
-.bi-building-exclamation::before { content: "\f86b"; }
-.bi-building-fill-add::before { content: "\f86c"; }
-.bi-building-fill-check::before { content: "\f86d"; }
-.bi-building-fill-dash::before { content: "\f86e"; }
-.bi-building-fill-down::before { content: "\f86f"; }
-.bi-building-fill-exclamation::before { content: "\f870"; }
-.bi-building-fill-gear::before { content: "\f871"; }
-.bi-building-fill-lock::before { content: "\f872"; }
-.bi-building-fill-slash::before { content: "\f873"; }
-.bi-building-fill-up::before { content: "\f874"; }
-.bi-building-fill-x::before { content: "\f875"; }
-.bi-building-fill::before { content: "\f876"; }
-.bi-building-gear::before { content: "\f877"; }
-.bi-building-lock::before { content: "\f878"; }
-.bi-building-slash::before { content: "\f879"; }
-.bi-building-up::before { content: "\f87a"; }
-.bi-building-x::before { content: "\f87b"; }
-.bi-buildings-fill::before { content: "\f87c"; }
-.bi-buildings::before { content: "\f87d"; }
-.bi-bus-front-fill::before { content: "\f87e"; }
-.bi-bus-front::before { content: "\f87f"; }
-.bi-ev-front-fill::before { content: "\f880"; }
-.bi-ev-front::before { content: "\f881"; }
-.bi-globe-americas::before { content: "\f882"; }
-.bi-globe-asia-australia::before { content: "\f883"; }
-.bi-globe-central-south-asia::before { content: "\f884"; }
-.bi-globe-europe-africa::before { content: "\f885"; }
-.bi-house-add-fill::before { content: "\f886"; }
-.bi-house-add::before { content: "\f887"; }
-.bi-house-check-fill::before { content: "\f888"; }
-.bi-house-check::before { content: "\f889"; }
-.bi-house-dash-fill::before { content: "\f88a"; }
-.bi-house-dash::before { content: "\f88b"; }
-.bi-house-down-fill::before { content: "\f88c"; }
-.bi-house-down::before { content: "\f88d"; }
-.bi-house-exclamation-fill::before { content: "\f88e"; }
-.bi-house-exclamation::before { content: "\f88f"; }
-.bi-house-gear-fill::before { content: "\f890"; }
-.bi-house-gear::before { content: "\f891"; }
-.bi-house-lock-fill::before { content: "\f892"; }
-.bi-house-lock::before { content: "\f893"; }
-.bi-house-slash-fill::before { content: "\f894"; }
-.bi-house-slash::before { content: "\f895"; }
-.bi-house-up-fill::before { content: "\f896"; }
-.bi-house-up::before { content: "\f897"; }
-.bi-house-x-fill::before { content: "\f898"; }
-.bi-house-x::before { content: "\f899"; }
-.bi-person-add::before { content: "\f89a"; }
-.bi-person-down::before { content: "\f89b"; }
-.bi-person-exclamation::before { content: "\f89c"; }
-.bi-person-fill-add::before { content: "\f89d"; }
-.bi-person-fill-check::before { content: "\f89e"; }
-.bi-person-fill-dash::before { content: "\f89f"; }
-.bi-person-fill-down::before { content: "\f8a0"; }
-.bi-person-fill-exclamation::before { content: "\f8a1"; }
-.bi-person-fill-gear::before { content: "\f8a2"; }
-.bi-person-fill-lock::before { content: "\f8a3"; }
-.bi-person-fill-slash::before { content: "\f8a4"; }
-.bi-person-fill-up::before { content: "\f8a5"; }
-.bi-person-fill-x::before { content: "\f8a6"; }
-.bi-person-gear::before { content: "\f8a7"; }
-.bi-person-lock::before { content: "\f8a8"; }
-.bi-person-slash::before { content: "\f8a9"; }
-.bi-person-up::before { content: "\f8aa"; }
-.bi-scooter::before { content: "\f8ab"; }
-.bi-taxi-front-fill::before { content: "\f8ac"; }
-.bi-taxi-front::before { content: "\f8ad"; }
-.bi-amd::before { content: "\f8ae"; }
-.bi-database-add::before { content: "\f8af"; }
-.bi-database-check::before { content: "\f8b0"; }
-.bi-database-dash::before { content: "\f8b1"; }
-.bi-database-down::before { content: "\f8b2"; }
-.bi-database-exclamation::before { content: "\f8b3"; }
-.bi-database-fill-add::before { content: "\f8b4"; }
-.bi-database-fill-check::before { content: "\f8b5"; }
-.bi-database-fill-dash::before { content: "\f8b6"; }
-.bi-database-fill-down::before { content: "\f8b7"; }
-.bi-database-fill-exclamation::before { content: "\f8b8"; }
-.bi-database-fill-gear::before { content: "\f8b9"; }
-.bi-database-fill-lock::before { content: "\f8ba"; }
-.bi-database-fill-slash::before { content: "\f8bb"; }
-.bi-database-fill-up::before { content: "\f8bc"; }
-.bi-database-fill-x::before { content: "\f8bd"; }
-.bi-database-fill::before { content: "\f8be"; }
-.bi-database-gear::before { content: "\f8bf"; }
-.bi-database-lock::before { content: "\f8c0"; }
-.bi-database-slash::before { content: "\f8c1"; }
-.bi-database-up::before { content: "\f8c2"; }
-.bi-database-x::before { content: "\f8c3"; }
-.bi-database::before { content: "\f8c4"; }
-.bi-houses-fill::before { content: "\f8c5"; }
-.bi-houses::before { content: "\f8c6"; }
-.bi-nvidia::before { content: "\f8c7"; }
-.bi-person-vcard-fill::before { content: "\f8c8"; }
-.bi-person-vcard::before { content: "\f8c9"; }
-.bi-sina-weibo::before { content: "\f8ca"; }
-.bi-tencent-qq::before { content: "\f8cb"; }
-.bi-wikipedia::before { content: "\f8cc"; }
-.bi-alphabet-uppercase::before { content: "\f2a5"; }
-.bi-alphabet::before { content: "\f68a"; }
-.bi-amazon::before { content: "\f68d"; }
-.bi-arrows-collapse-vertical::before { content: "\f690"; }
-.bi-arrows-expand-vertical::before { content: "\f695"; }
-.bi-arrows-vertical::before { content: "\f698"; }
-.bi-arrows::before { content: "\f6a2"; }
-.bi-ban-fill::before { content: "\f6a3"; }
-.bi-ban::before { content: "\f6b6"; }
-.bi-bing::before { content: "\f6c2"; }
-.bi-cake::before { content: "\f6e0"; }
-.bi-cake2::before { content: "\f6ed"; }
-.bi-cookie::before { content: "\f6ee"; }
-.bi-copy::before { content: "\f759"; }
-.bi-crosshair::before { content: "\f769"; }
-.bi-crosshair2::before { content: "\f794"; }
-.bi-emoji-astonished-fill::before { content: "\f795"; }
-.bi-emoji-astonished::before { content: "\f79a"; }
-.bi-emoji-grimace-fill::before { content: "\f79b"; }
-.bi-emoji-grimace::before { content: "\f7a0"; }
-.bi-emoji-grin-fill::before { content: "\f7a1"; }
-.bi-emoji-grin::before { content: "\f7a6"; }
-.bi-emoji-surprise-fill::before { content: "\f7a7"; }
-.bi-emoji-surprise::before { content: "\f7ac"; }
-.bi-emoji-tear-fill::before { content: "\f7ad"; }
-.bi-emoji-tear::before { content: "\f7b2"; }
-.bi-envelope-arrow-down-fill::before { content: "\f7b3"; }
-.bi-envelope-arrow-down::before { content: "\f7b8"; }
-.bi-envelope-arrow-up-fill::before { content: "\f7b9"; }
-.bi-envelope-arrow-up::before { content: "\f7be"; }
-.bi-feather::before { content: "\f7bf"; }
-.bi-feather2::before { content: "\f7c4"; }
-.bi-floppy-fill::before { content: "\f7c5"; }
-.bi-floppy::before { content: "\f7d8"; }
-.bi-floppy2-fill::before { content: "\f7d9"; }
-.bi-floppy2::before { content: "\f7e4"; }
-.bi-gitlab::before { content: "\f7e5"; }
-.bi-highlighter::before { content: "\f7f8"; }
-.bi-marker-tip::before { content: "\f802"; }
-.bi-nvme-fill::before { content: "\f803"; }
-.bi-nvme::before { content: "\f80c"; }
-.bi-opencollective::before { content: "\f80d"; }
-.bi-pci-card-network::before { content: "\f8cd"; }
-.bi-pci-card-sound::before { content: "\f8ce"; }
-.bi-radar::before { content: "\f8cf"; }
-.bi-send-arrow-down-fill::before { content: "\f8d0"; }
-.bi-send-arrow-down::before { content: "\f8d1"; }
-.bi-send-arrow-up-fill::before { content: "\f8d2"; }
-.bi-send-arrow-up::before { content: "\f8d3"; }
-.bi-sim-slash-fill::before { content: "\f8d4"; }
-.bi-sim-slash::before { content: "\f8d5"; }
-.bi-sourceforge::before { content: "\f8d6"; }
-.bi-substack::before { content: "\f8d7"; }
-.bi-threads-fill::before { content: "\f8d8"; }
-.bi-threads::before { content: "\f8d9"; }
-.bi-transparency::before { content: "\f8da"; }
-.bi-twitter-x::before { content: "\f8db"; }
-.bi-type-h4::before { content: "\f8dc"; }
-.bi-type-h5::before { content: "\f8dd"; }
-.bi-type-h6::before { content: "\f8de"; }
-.bi-backpack-fill::before { content: "\f8df"; }
-.bi-backpack::before { content: "\f8e0"; }
-.bi-backpack2-fill::before { content: "\f8e1"; }
-.bi-backpack2::before { content: "\f8e2"; }
-.bi-backpack3-fill::before { content: "\f8e3"; }
-.bi-backpack3::before { content: "\f8e4"; }
-.bi-backpack4-fill::before { content: "\f8e5"; }
-.bi-backpack4::before { content: "\f8e6"; }
-.bi-brilliance::before { content: "\f8e7"; }
-.bi-cake-fill::before { content: "\f8e8"; }
-.bi-cake2-fill::before { content: "\f8e9"; }
-.bi-duffle-fill::before { content: "\f8ea"; }
-.bi-duffle::before { content: "\f8eb"; }
-.bi-exposure::before { content: "\f8ec"; }
-.bi-gender-neuter::before { content: "\f8ed"; }
-.bi-highlights::before { content: "\f8ee"; }
-.bi-luggage-fill::before { content: "\f8ef"; }
-.bi-luggage::before { content: "\f8f0"; }
-.bi-mailbox-flag::before { content: "\f8f1"; }
-.bi-mailbox2-flag::before { content: "\f8f2"; }
-.bi-noise-reduction::before { content: "\f8f3"; }
-.bi-passport-fill::before { content: "\f8f4"; }
-.bi-passport::before { content: "\f8f5"; }
-.bi-person-arms-up::before { content: "\f8f6"; }
-.bi-person-raised-hand::before { content: "\f8f7"; }
-.bi-person-standing-dress::before { content: "\f8f8"; }
-.bi-person-standing::before { content: "\f8f9"; }
-.bi-person-walking::before { content: "\f8fa"; }
-.bi-person-wheelchair::before { content: "\f8fb"; }
-.bi-shadows::before { content: "\f8fc"; }
-.bi-suitcase-fill::before { content: "\f8fd"; }
-.bi-suitcase-lg-fill::before { content: "\f8fe"; }
-.bi-suitcase-lg::before { content: "\f8ff"; }
-.bi-suitcase::before { content: "\f900"; }
-.bi-suitcase2-fill::before { content: "\f901"; }
-.bi-suitcase2::before { content: "\f902"; }
-.bi-vignette::before { content: "\f903"; }
diff --git a/_site/site_libs/bootstrap/bootstrap-icons.woff b/_site/site_libs/bootstrap/bootstrap-icons.woff
deleted file mode 100644
index dbeeb055674125ad78fda0f3d166b36e5cc92336..0000000000000000000000000000000000000000
Binary files a/_site/site_libs/bootstrap/bootstrap-icons.woff and /dev/null differ
diff --git a/_site/site_libs/bootstrap/bootstrap.min.css b/_site/site_libs/bootstrap/bootstrap.min.css
deleted file mode 100644
index a5235860c4c6828fee29550ae01600ea05acc088..0000000000000000000000000000000000000000
--- a/_site/site_libs/bootstrap/bootstrap.min.css
+++ /dev/null
@@ -1,12 +0,0 @@
-ο»Ώ/*!
- * Bootstrap  v5.3.1 (https://getbootstrap.com/)
- * Copyright 2011-2023 The Bootstrap Authors
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
- */@import"https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300;400;700&display=swap";:root,[data-bs-theme=light]{--bs-blue: #2780e3;--bs-indigo: #6610f2;--bs-purple: #613d7c;--bs-pink: #e83e8c;--bs-red: #ff0039;--bs-orange: #f0ad4e;--bs-yellow: #ff7518;--bs-green: #3fb618;--bs-teal: #20c997;--bs-cyan: #9954bb;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-default: #343a40;--bs-primary: #2780e3;--bs-secondary: #343a40;--bs-success: #3fb618;--bs-info: #9954bb;--bs-warning: #ff7518;--bs-danger: #ff0039;--bs-light: #f8f9fa;--bs-dark: #343a40;--bs-default-rgb: 52, 58, 64;--bs-primary-rgb: 39, 128, 227;--bs-secondary-rgb: 52, 58, 64;--bs-success-rgb: 63, 182, 24;--bs-info-rgb: 153, 84, 187;--bs-warning-rgb: 255, 117, 24;--bs-danger-rgb: 255, 0, 57;--bs-light-rgb: 248, 249, 250;--bs-dark-rgb: 52, 58, 64;--bs-primary-text-emphasis: #10335b;--bs-secondary-text-emphasis: #15171a;--bs-success-text-emphasis: #19490a;--bs-info-text-emphasis: #3d224b;--bs-warning-text-emphasis: #662f0a;--bs-danger-text-emphasis: #660017;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #d4e6f9;--bs-secondary-bg-subtle: #d6d8d9;--bs-success-bg-subtle: #d9f0d1;--bs-info-bg-subtle: #ebddf1;--bs-warning-bg-subtle: #ffe3d1;--bs-danger-bg-subtle: #ffccd7;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #a9ccf4;--bs-secondary-border-subtle: #aeb0b3;--bs-success-border-subtle: #b2e2a3;--bs-info-border-subtle: #d6bbe4;--bs-warning-border-subtle: #ffc8a3;--bs-danger-border-subtle: #ff99b0;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-root-font-size: 17px;--bs-body-font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #343a40;--bs-body-color-rgb: 52, 58, 64;--bs-body-bg: #fff;--bs-body-bg-rgb: 255, 255, 255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: rgba(52, 58, 64, 0.75);--bs-secondary-color-rgb: 52, 58, 64;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233, 236, 239;--bs-tertiary-color: rgba(52, 58, 64, 0.5);--bs-tertiary-color-rgb: 52, 58, 64;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248, 249, 250;--bs-heading-color: inherit;--bs-link-color: #2761e3;--bs-link-color-rgb: 39, 97, 227;--bs-link-decoration: underline;--bs-link-hover-color: #1f4eb6;--bs-link-hover-color-rgb: 31, 78, 182;--bs-code-color: #7d12ba;--bs-highlight-bg: #ffe3d1;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.25rem;--bs-border-radius-sm: 0.2em;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width: 0.25rem;--bs-focus-ring-opacity: 0.25;--bs-focus-ring-color: rgba(39, 128, 227, 0.25);--bs-form-valid-color: #3fb618;--bs-form-valid-border-color: #3fb618;--bs-form-invalid-color: #ff0039;--bs-form-invalid-border-color: #ff0039}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color: #dee2e6;--bs-body-color-rgb: 222, 226, 230;--bs-body-bg: #212529;--bs-body-bg-rgb: 33, 37, 41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255, 255, 255;--bs-secondary-color: rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb: 222, 226, 230;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52, 58, 64;--bs-tertiary-color: rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb: 222, 226, 230;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43, 48, 53;--bs-primary-text-emphasis: #7db3ee;--bs-secondary-text-emphasis: #85898c;--bs-success-text-emphasis: #8cd374;--bs-info-text-emphasis: #c298d6;--bs-warning-text-emphasis: #ffac74;--bs-danger-text-emphasis: #ff6688;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #081a2d;--bs-secondary-bg-subtle: #0a0c0d;--bs-success-bg-subtle: #0d2405;--bs-info-bg-subtle: #1f1125;--bs-warning-bg-subtle: #331705;--bs-danger-bg-subtle: #33000b;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #174d88;--bs-secondary-border-subtle: #1f2326;--bs-success-border-subtle: #266d0e;--bs-info-border-subtle: #5c3270;--bs-warning-border-subtle: #99460e;--bs-danger-border-subtle: #990022;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #7db3ee;--bs-link-hover-color: #97c2f1;--bs-link-color-rgb: 125, 179, 238;--bs-link-hover-color-rgb: 151, 194, 241;--bs-code-color: white;--bs-border-color: #495057;--bs-border-color-translucent: rgba(255, 255, 255, 0.15);--bs-form-valid-color: #8cd374;--bs-form-valid-border-color: #8cd374;--bs-form-invalid-color: #ff6688;--bs-form-invalid-border-color: #ff6688}*,*::before,*::after{box-sizing:border-box}:root{font-size:var(--bs-root-font-size)}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:400;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h1,.h1{font-size:2rem}}h2,.h2{font-size:calc(1.29rem + 0.48vw)}@media(min-width: 1200px){h2,.h2{font-size:1.65rem}}h3,.h3{font-size:calc(1.27rem + 0.24vw)}@media(min-width: 1200px){h3,.h3{font-size:1.45rem}}h4,.h4{font-size:1.25rem}h5,.h5{font-size:1.1rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #e9ecef}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:0.875em;color:#000;background-color:#f8f9fa;padding:.5rem;border:1px solid var(--bs-border-color, #dee2e6)}pre code{background-color:rgba(0,0,0,0);font-size:inherit;color:inherit;word-break:normal}code{font-size:0.875em;color:var(--bs-code-color);background-color:#f8f9fa;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.4rem .4rem;font-size:0.875em;color:#fff;background-color:#343a40}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:rgba(52,58,64,.75);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + 0.3vw);line-height:inherit}@media(min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"β€” "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:0.875em;color:rgba(52,58,64,.75)}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-sm,.container{max-width:540px}}@media(min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media(min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media(min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media(min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media(min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media(min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media(min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media(min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media(min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: #343a40;--bs-table-bg: #fff;--bs-table-border-color: #dee2e6;--bs-table-accent-bg: transparent;--bs-table-striped-color: #343a40;--bs-table-striped-bg: rgba(0, 0, 0, 0.05);--bs-table-active-color: #343a40;--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: #343a40;--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(1px*2) solid #b2bac1}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #d4e6f9;--bs-table-border-color: #bfcfe0;--bs-table-striped-bg: #c9dbed;--bs-table-striped-color: #000;--bs-table-active-bg: #bfcfe0;--bs-table-active-color: #000;--bs-table-hover-bg: #c4d5e6;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #d6d8d9;--bs-table-border-color: #c1c2c3;--bs-table-striped-bg: #cbcdce;--bs-table-striped-color: #000;--bs-table-active-bg: #c1c2c3;--bs-table-active-color: #000;--bs-table-hover-bg: #c6c8c9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d9f0d1;--bs-table-border-color: #c3d8bc;--bs-table-striped-bg: #cee4c7;--bs-table-striped-color: #000;--bs-table-active-bg: #c3d8bc;--bs-table-active-color: #000;--bs-table-hover-bg: #c9dec1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #ebddf1;--bs-table-border-color: #d4c7d9;--bs-table-striped-bg: #dfd2e5;--bs-table-striped-color: #000;--bs-table-active-bg: #d4c7d9;--bs-table-active-color: #000;--bs-table-hover-bg: #d9ccdf;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #ffe3d1;--bs-table-border-color: #e6ccbc;--bs-table-striped-bg: #f2d8c7;--bs-table-striped-color: #000;--bs-table-active-bg: #e6ccbc;--bs-table-active-color: #000;--bs-table-hover-bg: #ecd2c1;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #ffccd7;--bs-table-border-color: #e6b8c2;--bs-table-striped-bg: #f2c2cc;--bs-table-striped-color: #000;--bs-table-active-bg: #e6b8c2;--bs-table-active-color: #000;--bs-table-hover-bg: #ecbdc7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #dfe0e1;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #343a40;--bs-table-border-color: #484e53;--bs-table-striped-bg: #3e444a;--bs-table-striped-color: #fff;--bs-table-active-bg: #484e53;--bs-table-active-color: #fff;--bs-table-hover-bg: #43494e;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + 1px);padding-bottom:calc(0.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:rgba(52,58,64,.75)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#343a40;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#fff;background-clip:padding-box;border:1px solid #dee2e6;border-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#343a40;background-color:#fff;border-color:#93c0f1;outline:0;box-shadow:0 0 0 .25rem rgba(39,128,227,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:rgba(52,58,64,.75);opacity:1}.form-control:disabled{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#343a40;background-color:#f8f9fa;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#e9ecef}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#343a40;background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:1px 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + 0.5rem + calc(1px * 2));padding:.25rem .5rem;font-size:0.875rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(1px * 2));padding:.5rem 1rem;font-size:1.25rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + calc(1px * 2))}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + calc(1px * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(1px * 2))}.form-control-color{width:3rem;height:calc(1.5em + 0.75rem + calc(1px * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important}.form-control-color::-webkit-color-swatch{border:0 !important}.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + calc(1px * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(1px * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#343a40;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#fff;background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #dee2e6;border-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#93c0f1;outline:0;box-shadow:0 0 0 .25rem rgba(39,128,227,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #343a40}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.125rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-reverse{padding-right:0;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:0;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{--bs-form-check-bg: #fff;width:1em;height:1em;margin-top:.25em;vertical-align:top;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid #dee2e6;print-color-adjust:exact}.form-check-input[type=radio],.shiny-input-container .checkbox input[type=radio],.shiny-input-container .checkbox-inline input[type=radio],.shiny-input-container .radio input[type=radio],.shiny-input-container .radio-inline input[type=radio]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#93c0f1;outline:0;box-shadow:0 0 0 .25rem rgba(39,128,227,.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#2780e3;border-color:#2780e3}.form-check-input:checked[type=checkbox],.shiny-input-container .checkbox input:checked[type=checkbox],.shiny-input-container .checkbox-inline input:checked[type=checkbox],.shiny-input-container .radio input:checked[type=checkbox],.shiny-input-container .radio-inline input:checked[type=checkbox]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio],.shiny-input-container .checkbox input:checked[type=radio],.shiny-input-container .checkbox-inline input:checked[type=radio],.shiny-input-container .radio input:checked[type=radio],.shiny-input-container .radio-inline input:checked[type=radio]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate,.shiny-input-container .checkbox input[type=checkbox]:indeterminate,.shiny-input-container .checkbox-inline input[type=checkbox]:indeterminate,.shiny-input-container .radio input[type=checkbox]:indeterminate,.shiny-input-container .radio-inline input[type=checkbox]:indeterminate{background-color:#2780e3;border-color:#2780e3;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{cursor:default;opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2393c0f1'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:rgba(0,0,0,0)}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(39,128,227,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(39,128,227,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#2780e3;border:0;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#bed9f7}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#f8f9fa;border-color:rgba(0,0,0,0)}.form-range::-moz-range-thumb{width:1rem;height:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;background-color:#2780e3;border:0;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#bed9f7}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#f8f9fa;border-color:rgba(0,0,0,0)}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:rgba(52,58,64,.75)}.form-range:disabled::-moz-range-thumb{background-color:rgba(52,58,64,.75)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(1px * 2));min-height:calc(3.5rem + calc(1px * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:#fff}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:1px 0}.form-floating>:disabled~label,.form-floating>.form-control:disabled~label{color:#6c757d}.form-floating>:disabled~label::after,.form-floating>.form-control:disabled~label::after{background-color:#e9ecef}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#343a40;text-align:center;white-space:nowrap;background-color:#f8f9fa;border:1px solid #dee2e6}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(1px*-1)}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#3fb618}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:#3fb618}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#3fb618;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%233fb618' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#3fb618;box-shadow:0 0 0 .25rem rgba(63,182,24,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:#3fb618}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%233fb618' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:#3fb618;box-shadow:0 0 0 .25rem rgba(63,182,24,.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:#3fb618}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:#3fb618}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(63,182,24,.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:#3fb618}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#ff0039}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:#ff0039}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#ff0039;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23ff0039'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ff0039' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#ff0039;box-shadow:0 0 0 .25rem rgba(255,0,57,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:#ff0039}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23ff0039'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ff0039' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:#ff0039;box-shadow:0 0 0 .25rem rgba(255,0,57,.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:#ff0039}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:#ff0039}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(255,0,57,.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:#ff0039}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 0.75rem;--bs-btn-padding-y: 0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: #343a40;--bs-btn-bg: transparent;--bs-btn-border-width: 1px;--bs-btn-border-color: transparent;--bs-btn-border-radius: 0.25rem;--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity: 0.65;--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-default{--bs-btn-color: #fff;--bs-btn-bg: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #2c3136;--bs-btn-hover-border-color: #2a2e33;--bs-btn-focus-shadow-rgb: 82, 88, 93;--bs-btn-active-color: #fff;--bs-btn-active-bg: #2a2e33;--bs-btn-active-border-color: #272c30;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #343a40;--bs-btn-disabled-border-color: #343a40}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #2780e3;--bs-btn-border-color: #2780e3;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #216dc1;--bs-btn-hover-border-color: #1f66b6;--bs-btn-focus-shadow-rgb: 71, 147, 231;--bs-btn-active-color: #fff;--bs-btn-active-bg: #1f66b6;--bs-btn-active-border-color: #1d60aa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #2780e3;--bs-btn-disabled-border-color: #2780e3}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #2c3136;--bs-btn-hover-border-color: #2a2e33;--bs-btn-focus-shadow-rgb: 82, 88, 93;--bs-btn-active-color: #fff;--bs-btn-active-bg: #2a2e33;--bs-btn-active-border-color: #272c30;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #343a40;--bs-btn-disabled-border-color: #343a40}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #3fb618;--bs-btn-border-color: #3fb618;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #369b14;--bs-btn-hover-border-color: #329213;--bs-btn-focus-shadow-rgb: 92, 193, 59;--bs-btn-active-color: #fff;--bs-btn-active-bg: #329213;--bs-btn-active-border-color: #2f8912;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #3fb618;--bs-btn-disabled-border-color: #3fb618}.btn-info{--bs-btn-color: #fff;--bs-btn-bg: #9954bb;--bs-btn-border-color: #9954bb;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #82479f;--bs-btn-hover-border-color: #7a4396;--bs-btn-focus-shadow-rgb: 168, 110, 197;--bs-btn-active-color: #fff;--bs-btn-active-bg: #7a4396;--bs-btn-active-border-color: #733f8c;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #9954bb;--bs-btn-disabled-border-color: #9954bb}.btn-warning{--bs-btn-color: #fff;--bs-btn-bg: #ff7518;--bs-btn-border-color: #ff7518;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #d96314;--bs-btn-hover-border-color: #cc5e13;--bs-btn-focus-shadow-rgb: 255, 138, 59;--bs-btn-active-color: #fff;--bs-btn-active-bg: #cc5e13;--bs-btn-active-border-color: #bf5812;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #ff7518;--bs-btn-disabled-border-color: #ff7518}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #ff0039;--bs-btn-border-color: #ff0039;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #d90030;--bs-btn-hover-border-color: #cc002e;--bs-btn-focus-shadow-rgb: 255, 38, 87;--bs-btn-active-color: #fff;--bs-btn-active-bg: #cc002e;--bs-btn-active-border-color: #bf002b;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #ff0039;--bs-btn-disabled-border-color: #ff0039}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211, 212, 213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #52585d;--bs-btn-hover-border-color: #484e53;--bs-btn-focus-shadow-rgb: 82, 88, 93;--bs-btn-active-color: #fff;--bs-btn-active-bg: #5d6166;--bs-btn-active-border-color: #484e53;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #343a40;--bs-btn-disabled-border-color: #343a40}.btn-outline-default{--bs-btn-color: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #343a40;--bs-btn-hover-border-color: #343a40;--bs-btn-focus-shadow-rgb: 52, 58, 64;--bs-btn-active-color: #fff;--bs-btn-active-bg: #343a40;--bs-btn-active-border-color: #343a40;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #343a40;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #343a40;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-primary{--bs-btn-color: #2780e3;--bs-btn-border-color: #2780e3;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #2780e3;--bs-btn-hover-border-color: #2780e3;--bs-btn-focus-shadow-rgb: 39, 128, 227;--bs-btn-active-color: #fff;--bs-btn-active-bg: #2780e3;--bs-btn-active-border-color: #2780e3;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #2780e3;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #2780e3;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #343a40;--bs-btn-hover-border-color: #343a40;--bs-btn-focus-shadow-rgb: 52, 58, 64;--bs-btn-active-color: #fff;--bs-btn-active-bg: #343a40;--bs-btn-active-border-color: #343a40;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #343a40;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #343a40;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #3fb618;--bs-btn-border-color: #3fb618;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #3fb618;--bs-btn-hover-border-color: #3fb618;--bs-btn-focus-shadow-rgb: 63, 182, 24;--bs-btn-active-color: #fff;--bs-btn-active-bg: #3fb618;--bs-btn-active-border-color: #3fb618;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #3fb618;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #3fb618;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #9954bb;--bs-btn-border-color: #9954bb;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #9954bb;--bs-btn-hover-border-color: #9954bb;--bs-btn-focus-shadow-rgb: 153, 84, 187;--bs-btn-active-color: #fff;--bs-btn-active-bg: #9954bb;--bs-btn-active-border-color: #9954bb;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #9954bb;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #9954bb;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ff7518;--bs-btn-border-color: #ff7518;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #ff7518;--bs-btn-hover-border-color: #ff7518;--bs-btn-focus-shadow-rgb: 255, 117, 24;--bs-btn-active-color: #fff;--bs-btn-active-bg: #ff7518;--bs-btn-active-border-color: #ff7518;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ff7518;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ff7518;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #ff0039;--bs-btn-border-color: #ff0039;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #ff0039;--bs-btn-hover-border-color: #ff0039;--bs-btn-focus-shadow-rgb: 255, 0, 57;--bs-btn-active-color: #fff;--bs-btn-active-bg: #ff0039;--bs-btn-active-border-color: #ff0039;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ff0039;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ff0039;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-btn-bg: transparent;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #343a40;--bs-btn-hover-border-color: #343a40;--bs-btn-focus-shadow-rgb: 52, 58, 64;--bs-btn-active-color: #fff;--bs-btn-active-bg: #343a40;--bs-btn-active-border-color: #343a40;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #343a40;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #343a40;--bs-btn-bg: transparent;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: #2761e3;--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: #1f4eb6;--bs-btn-hover-border-color: transparent;--bs-btn-active-color: #1f4eb6;--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 71, 121, 231;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: 0.5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: 0.5rem}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: 0.25rem;--bs-btn-padding-x: 0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius: 0.2em}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .2s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 10rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: 0.5rem;--bs-dropdown-spacer: 0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: #343a40;--bs-dropdown-bg: #fff;--bs-dropdown-border-color: rgba(0, 0, 0, 0.175);--bs-dropdown-border-radius: 0.25rem;--bs-dropdown-border-width: 1px;--bs-dropdown-inner-border-radius: calc(0.25rem - 1px);--bs-dropdown-divider-bg: rgba(0, 0, 0, 0.175);--bs-dropdown-divider-margin-y: 0.5rem;--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-dropdown-link-color: #343a40;--bs-dropdown-link-hover-color: #343a40;--bs-dropdown-link-hover-bg: #f8f9fa;--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #2780e3;--bs-dropdown-link-disabled-color: rgba(52, 58, 64, 0.5);--bs-dropdown-item-padding-x: 1rem;--bs-dropdown-item-padding-y: 0.25rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 1rem;--bs-dropdown-header-padding-y: 0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:rgba(0,0,0,0);border:0}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: rgba(0, 0, 0, 0.175);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: rgba(0, 0, 0, 0.175);--bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #2780e3;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(1px*-1)}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(1px*-1)}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: #2761e3;--bs-nav-link-hover-color: #1f4eb6;--bs-nav-link-disabled-color: rgba(52, 58, 64, 0.75);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(39,128,227,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: 1px;--bs-nav-tabs-border-color: #dee2e6;--bs-nav-tabs-border-radius: 0.25rem;--bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color: #000;--bs-nav-tabs-link-active-bg: #fff;--bs-nav-tabs-link-active-border-color: #dee2e6 #dee2e6 #fff;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1*var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid rgba(0,0,0,0)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1*var(--bs-nav-tabs-border-width))}.nav-pills{--bs-nav-pills-border-radius: 0.25rem;--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #2780e3}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: 0.125rem;--bs-nav-underline-link-active-color: #000;gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid rgba(0,0,0,0)}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x: 0;--bs-navbar-padding-y: 0.5rem;--bs-navbar-color: #545555;--bs-navbar-hover-color: rgba(31, 78, 182, 0.8);--bs-navbar-disabled-color: rgba(84, 85, 85, 0.75);--bs-navbar-active-color: #1f4eb6;--bs-navbar-brand-padding-y: 0.3125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.25rem;--bs-navbar-brand-color: #545555;--bs-navbar-brand-hover-color: #1f4eb6;--bs-navbar-nav-link-padding-x: 0.5rem;--bs-navbar-toggler-padding-y: 0.25;--bs-navbar-toggler-padding-x: 0;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23545555' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(84, 85, 85, 0);--bs-navbar-toggler-border-radius: 0.25rem;--bs-navbar-toggler-focus-width: 0.25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:rgba(0,0,0,0);border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);transition:var(--bs-navbar-toggler-transition)}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;-webkit-flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color: #545555;--bs-navbar-hover-color: rgba(31, 78, 182, 0.8);--bs-navbar-disabled-color: rgba(84, 85, 85, 0.75);--bs-navbar-active-color: #1f4eb6;--bs-navbar-brand-color: #545555;--bs-navbar-brand-hover-color: #1f4eb6;--bs-navbar-toggler-border-color: rgba(84, 85, 85, 0);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23545555' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23545555' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 1rem;--bs-card-spacer-x: 1rem;--bs-card-title-spacer-y: 0.5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: 1px;--bs-card-border-color: rgba(0, 0, 0, 0.175);--bs-card-border-radius: 0.25rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(0.25rem - 1px);--bs-card-cap-padding-y: 0.5rem;--bs-card-cap-padding-x: 1rem;--bs-card-cap-bg: rgba(52, 58, 64, 0.25);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: #fff;--bs-card-img-overlay-padding: 1rem;--bs-card-group-margin: 0.75rem;position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0}.card>.list-group:last-child{border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-0.5*var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header-tabs{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-bottom:calc(-1*var(--bs-card-cap-padding-y));margin-left:calc(-0.5*var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-left:calc(-0.5*var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media(min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}}.accordion{--bs-accordion-color: #343a40;--bs-accordion-bg: #fff;--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;--bs-accordion-border-color: #dee2e6;--bs-accordion-border-width: 1px;--bs-accordion-border-radius: 0.25rem;--bs-accordion-inner-border-radius: calc(0.25rem - 1px);--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: #343a40;--bs-accordion-btn-bg: #fff;--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23343a40'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2310335b'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #93c0f1;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(39, 128, 227, 0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: #10335b;--bs-accordion-active-bg: #d4e6f9}.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1*var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:not(:first-of-type){border-top:0}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237db3ee'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237db3ee'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: rgba(52, 58, 64, 0.75);--bs-breadcrumb-item-padding-x: 0.5rem;--bs-breadcrumb-item-active-color: rgba(52, 58, 64, 0.75);display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, ">") /* rtl: var(--bs-breadcrumb-divider, ">") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: 0.75rem;--bs-pagination-padding-y: 0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: #2761e3;--bs-pagination-bg: #fff;--bs-pagination-border-width: 1px;--bs-pagination-border-color: #dee2e6;--bs-pagination-border-radius: 0.25rem;--bs-pagination-hover-color: #1f4eb6;--bs-pagination-hover-bg: #f8f9fa;--bs-pagination-hover-border-color: #dee2e6;--bs-pagination-focus-color: #1f4eb6;--bs-pagination-focus-bg: #e9ecef;--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(39, 128, 227, 0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #2780e3;--bs-pagination-active-border-color: #2780e3;--bs-pagination-disabled-color: rgba(52, 58, 64, 0.75);--bs-pagination-disabled-bg: #e9ecef;--bs-pagination-disabled-border-color: #dee2e6;display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(1px*-1)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: 0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: 0.5rem}.pagination-sm{--bs-pagination-padding-x: 0.5rem;--bs-pagination-padding-y: 0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius: 0.2em}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: 0.25rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 1rem;--bs-alert-padding-y: 1rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: 0 solid var(--bs-alert-border-color);--bs-alert-border-radius: 0.25rem;--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{--bs-alert-color: var(--bs-default-text-emphasis);--bs-alert-bg: var(--bs-default-bg-subtle);--bs-alert-border-color: var(--bs-default-border-subtle);--bs-alert-link-color: var(--bs-default-text-emphasis)}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:.5rem}}.progress,.progress-stacked{--bs-progress-height: 0.5rem;--bs-progress-font-size:0.75rem;--bs-progress-bg: #e9ecef;--bs-progress-border-radius: 0.25rem;--bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #2780e3;--bs-progress-bar-transition: width 0.6s ease;display:flex;display:-webkit-flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg)}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: #343a40;--bs-list-group-bg: #fff;--bs-list-group-border-color: #dee2e6;--bs-list-group-border-width: 1px;--bs-list-group-border-radius: 0.25rem;--bs-list-group-item-padding-x: 1rem;--bs-list-group-item-padding-y: 0.5rem;--bs-list-group-action-color: rgba(52, 58, 64, 0.75);--bs-list-group-action-hover-color: #000;--bs-list-group-action-hover-bg: #f8f9fa;--bs-list-group-action-active-color: #343a40;--bs-list-group-action-active-bg: #e9ecef;--bs-list-group-disabled-color: rgba(52, 58, 64, 0.75);--bs-list-group-disabled-bg: #fff;--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #2780e3;--bs-list-group-active-border-color: #2780e3;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1*var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{--bs-list-group-color: var(--bs-default-text-emphasis);--bs-list-group-bg: var(--bs-default-bg-subtle);--bs-list-group-border-color: var(--bs-default-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-default-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-default-border-subtle);--bs-list-group-active-color: var(--bs-default-bg-subtle);--bs-list-group-active-bg: var(--bs-default-text-emphasis);--bs-list-group-active-border-color: var(--bs-default-text-emphasis)}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: 0.5;--bs-btn-close-hover-opacity: 0.75;--bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(39, 128, 227, 0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: 0.25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:rgba(0,0,0,0) var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: 0.75rem;--bs-toast-padding-y: 0.5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(255, 255, 255, 0.85);--bs-toast-border-width: 1px;--bs-toast-border-color: rgba(0, 0, 0, 0.175);--bs-toast-border-radius: 0.25rem;--bs-toast-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-toast-header-color: rgba(52, 58, 64, 0.75);--bs-toast-header-bg: rgba(255, 255, 255, 0.85);--bs-toast-header-border-color: rgba(0, 0, 0, 0.175);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color)}.toast-header .btn-close{margin-right:calc(-0.5*var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 1rem;--bs-modal-margin: 0.5rem;--bs-modal-color: ;--bs-modal-bg: #fff;--bs-modal-border-color: rgba(0, 0, 0, 0.175);--bs-modal-border-width: 1px;--bs-modal-border-radius: 0.5rem;--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-modal-inner-border-radius: calc(0.5rem - 1px);--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1rem 1rem;--bs-modal-header-border-color: #dee2e6;--bs-modal-header-border-width: 1px;--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: 0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: #dee2e6;--bs-modal-footer-border-width: 1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: 0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*.5) calc(var(--bs-modal-header-padding-x)*.5);margin:calc(-0.5*var(--bs-modal-header-padding-y)) calc(-0.5*var(--bs-modal-header-padding-x)) calc(-0.5*var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*.5)}@media(min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media(min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media(min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 200px;--bs-tooltip-padding-x: 0.5rem;--bs-tooltip-padding-y: 0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color: #fff;--bs-tooltip-bg: #000;--bs-tooltip-border-radius: 0.25rem;--bs-tooltip-opacity: 0.9;--bs-tooltip-arrow-width: 0.8rem;--bs-tooltip-arrow-height: 0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:"Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) 0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:0.875rem;--bs-popover-bg: #fff;--bs-popover-border-width: 1px;--bs-popover-border-color: rgba(0, 0, 0, 0.175);--bs-popover-border-radius: 0.5rem;--bs-popover-inner-border-radius: calc(0.5rem - 1px);--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-popover-header-padding-x: 1rem;--bs-popover-header-padding-y: 0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: #e9ecef;--bs-popover-body-padding-x: 1rem;--bs-popover-body-padding-y: 1rem;--bs-popover-body-color: #343a40;--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: 0.5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:"Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-0.5*var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) 0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media(prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity .15s ease}@media(prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);opacity:.5;transition:opacity .6s ease}@media(prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-border-width: 0.25em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:rgba(0,0,0,0)}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: 0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 1rem;--bs-offcanvas-padding-y: 1rem;--bs-offcanvas-color: #343a40;--bs-offcanvas-bg: #fff;--bs-offcanvas-border-width: 1px;--bs-offcanvas-border-color: rgba(0, 0, 0, 0.175);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-offcanvas-transition: transform 0.3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media(max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 575.98px)and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media(min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 767.98px)and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media(min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 991.98px)and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media(min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1199.98px)and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media(min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1399.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media(min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5);margin-top:calc(-0.5*var(--bs-offcanvas-padding-y));margin-right:calc(-0.5*var(--bs-offcanvas-padding-x));margin-bottom:calc(-0.5*var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-default{color:#fff !important;background-color:RGBA(var(--bs-default-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#fff !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#fff !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-default{color:RGBA(var(--bs-default-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-default-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-default:hover,.link-default:focus{color:RGBA(42, 46, 51, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(42, 46, 51, var(--bs-link-underline-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(31, 102, 182, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(31, 102, 182, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(42, 46, 51, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(42, 46, 51, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(50, 146, 19, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(50, 146, 19, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(122, 67, 150, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(122, 67, 150, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(204, 94, 19, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(204, 94, 19, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(204, 0, 46, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(204, 0, 46, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(42, 46, 51, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(42, 46, 51, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;-webkit-flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media(prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.focus-ring-default{--bs-focus-ring-color: rgba(var(--bs-default-rgb), var(--bs-focus-ring-opacity))}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-default{--bs-border-opacity: 1;border-color:rgba(var(--bs-default-rgb), var(--bs-border-opacity)) !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: 0.1}.border-opacity-25{--bs-border-opacity: 0.25}.border-opacity-50{--bs-border-opacity: 0.5}.border-opacity-75{--bs-border-opacity: 0.75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.25rem !important}.row-gap-2{row-gap:.5rem !important}.row-gap-3{row-gap:1rem !important}.row-gap-4{row-gap:1.5rem !important}.row-gap-5{row-gap:3rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.25rem !important}.column-gap-2{column-gap:.5rem !important}.column-gap-3{column-gap:1rem !important}.column-gap-4{column-gap:1.5rem !important}.column-gap-5{column-gap:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.325rem + 0.9vw) !important}.fs-2{font-size:calc(1.29rem + 0.48vw) !important}.fs-3{font-size:calc(1.27rem + 0.24vw) !important}.fs-4{font-size:1.25rem !important}.fs-5{font-size:1.1rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: 0.1}.link-opacity-10-hover:hover{--bs-link-opacity: 0.1}.link-opacity-25{--bs-link-opacity: 0.25}.link-opacity-25-hover:hover{--bs-link-opacity: 0.25}.link-opacity-50{--bs-link-opacity: 0.5}.link-opacity-50-hover:hover{--bs-link-opacity: 0.5}.link-opacity-75{--bs-link-opacity: 0.75}.link-opacity-75-hover:hover{--bs-link-opacity: 0.75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-default{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-default-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: 0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: 0.1}.link-underline-opacity-25{--bs-link-underline-opacity: 0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: 0.25}.link-underline-opacity-50{--bs-link-underline-opacity: 0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: 0.5}.link-underline-opacity-75{--bs-link-underline-opacity: 0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: 0.75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.25rem !important}.row-gap-sm-2{row-gap:.5rem !important}.row-gap-sm-3{row-gap:1rem !important}.row-gap-sm-4{row-gap:1.5rem !important}.row-gap-sm-5{row-gap:3rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.25rem !important}.column-gap-sm-2{column-gap:.5rem !important}.column-gap-sm-3{column-gap:1rem !important}.column-gap-sm-4{column-gap:1.5rem !important}.column-gap-sm-5{column-gap:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.25rem !important}.row-gap-md-2{row-gap:.5rem !important}.row-gap-md-3{row-gap:1rem !important}.row-gap-md-4{row-gap:1.5rem !important}.row-gap-md-5{row-gap:3rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.25rem !important}.column-gap-md-2{column-gap:.5rem !important}.column-gap-md-3{column-gap:1rem !important}.column-gap-md-4{column-gap:1.5rem !important}.column-gap-md-5{column-gap:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.25rem !important}.row-gap-lg-2{row-gap:.5rem !important}.row-gap-lg-3{row-gap:1rem !important}.row-gap-lg-4{row-gap:1.5rem !important}.row-gap-lg-5{row-gap:3rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.25rem !important}.column-gap-lg-2{column-gap:.5rem !important}.column-gap-lg-3{column-gap:1rem !important}.column-gap-lg-4{column-gap:1.5rem !important}.column-gap-lg-5{column-gap:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.25rem !important}.row-gap-xl-2{row-gap:.5rem !important}.row-gap-xl-3{row-gap:1rem !important}.row-gap-xl-4{row-gap:1.5rem !important}.row-gap-xl-5{row-gap:3rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.25rem !important}.column-gap-xl-2{column-gap:.5rem !important}.column-gap-xl-3{column-gap:1rem !important}.column-gap-xl-4{column-gap:1.5rem !important}.column-gap-xl-5{column-gap:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.25rem !important}.row-gap-xxl-2{row-gap:.5rem !important}.row-gap-xxl-3{row-gap:1rem !important}.row-gap-xxl-4{row-gap:1.5rem !important}.row-gap-xxl-5{row-gap:3rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.25rem !important}.column-gap-xxl-2{column-gap:.5rem !important}.column-gap-xxl-3{column-gap:1rem !important}.column-gap-xxl-4{column-gap:1.5rem !important}.column-gap-xxl-5{column-gap:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#fff}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#fff}.bg-warning{color:#fff}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media(min-width: 1200px){.fs-1{font-size:2rem !important}.fs-2{font-size:1.65rem !important}.fs-3{font-size:1.45rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}:root{--bslib-spacer: 1rem;--bslib-mb-spacer: var(--bslib-spacer, 1rem)}.bslib-mb-spacing{margin-bottom:var(--bslib-mb-spacer)}.bslib-gap-spacing{gap:var(--bslib-mb-spacer)}.bslib-gap-spacing>.bslib-mb-spacing,.bslib-gap-spacing>.form-group,.bslib-gap-spacing>p,.bslib-gap-spacing>pre{margin-bottom:0}.html-fill-container>.html-fill-item.bslib-mb-spacing{margin-bottom:0}.tab-content>.tab-pane.html-fill-container{display:none}.tab-content>.active.html-fill-container{display:flex}.tab-content.html-fill-container{padding:0}.bg-blue{--bslib-color-bg: #2780e3;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-blue{--bslib-color-fg: #2780e3;color:var(--bslib-color-fg)}.bg-indigo{--bslib-color-bg: #6610f2;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-indigo{--bslib-color-fg: #6610f2;color:var(--bslib-color-fg)}.bg-purple{--bslib-color-bg: #613d7c;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-purple{--bslib-color-fg: #613d7c;color:var(--bslib-color-fg)}.bg-pink{--bslib-color-bg: #e83e8c;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-pink{--bslib-color-fg: #e83e8c;color:var(--bslib-color-fg)}.bg-red{--bslib-color-bg: #ff0039;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-red{--bslib-color-fg: #ff0039;color:var(--bslib-color-fg)}.bg-orange{--bslib-color-bg: #f0ad4e;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-orange{--bslib-color-fg: #f0ad4e;color:var(--bslib-color-fg)}.bg-yellow{--bslib-color-bg: #ff7518;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-yellow{--bslib-color-fg: #ff7518;color:var(--bslib-color-fg)}.bg-green{--bslib-color-bg: #3fb618;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-green{--bslib-color-fg: #3fb618;color:var(--bslib-color-fg)}.bg-teal{--bslib-color-bg: #20c997;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-teal{--bslib-color-fg: #20c997;color:var(--bslib-color-fg)}.bg-cyan{--bslib-color-bg: #9954bb;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-cyan{--bslib-color-fg: #9954bb;color:var(--bslib-color-fg)}.text-default{--bslib-color-fg: #343a40}.bg-default{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.text-primary{--bslib-color-fg: #2780e3}.bg-primary{--bslib-color-bg: #2780e3;--bslib-color-fg: #fff}.text-secondary{--bslib-color-fg: #343a40}.bg-secondary{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.text-success{--bslib-color-fg: #3fb618}.bg-success{--bslib-color-bg: #3fb618;--bslib-color-fg: #fff}.text-info{--bslib-color-fg: #9954bb}.bg-info{--bslib-color-bg: #9954bb;--bslib-color-fg: #fff}.text-warning{--bslib-color-fg: #ff7518}.bg-warning{--bslib-color-bg: #ff7518;--bslib-color-fg: #fff}.text-danger{--bslib-color-fg: #ff0039}.bg-danger{--bslib-color-bg: #ff0039;--bslib-color-fg: #fff}.text-light{--bslib-color-fg: #f8f9fa}.bg-light{--bslib-color-bg: #f8f9fa;--bslib-color-fg: #000}.text-dark{--bslib-color-fg: #343a40}.bg-dark{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.bg-gradient-blue-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #4053e9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #4053e9;color:#fff}.bg-gradient-blue-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3e65ba;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #3e65ba;color:#fff}.bg-gradient-blue-pink{--bslib-color-fg: #fff;--bslib-color-bg: #7466c0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #7466c0;color:#fff}.bg-gradient-blue-red{--bslib-color-fg: #fff;--bslib-color-bg: #7d4d9f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #7d4d9f;color:#fff}.bg-gradient-blue-orange{--bslib-color-fg: #fff;--bslib-color-bg: #7792a7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #7792a7;color:#fff}.bg-gradient-blue-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #7d7c92;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #7d7c92;color:#fff}.bg-gradient-blue-green{--bslib-color-fg: #fff;--bslib-color-bg: #319692;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #319692;color:#fff}.bg-gradient-blue-teal{--bslib-color-fg: #fff;--bslib-color-bg: #249dc5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #249dc5;color:#fff}.bg-gradient-blue-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #556ed3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #556ed3;color:#fff}.bg-gradient-indigo-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4d3dec;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #4d3dec;color:#fff}.bg-gradient-indigo-purple{--bslib-color-fg: #fff;--bslib-color-bg: #6422c3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #6422c3;color:#fff}.bg-gradient-indigo-pink{--bslib-color-fg: #fff;--bslib-color-bg: #9a22c9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #9a22c9;color:#fff}.bg-gradient-indigo-red{--bslib-color-fg: #fff;--bslib-color-bg: #a30aa8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #a30aa8;color:#fff}.bg-gradient-indigo-orange{--bslib-color-fg: #fff;--bslib-color-bg: #9d4fb0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #9d4fb0;color:#fff}.bg-gradient-indigo-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a3389b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #a3389b;color:#fff}.bg-gradient-indigo-green{--bslib-color-fg: #fff;--bslib-color-bg: #56529b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #56529b;color:#fff}.bg-gradient-indigo-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4a5ace;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4a5ace;color:#fff}.bg-gradient-indigo-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #7a2bdc;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #7a2bdc;color:#fff}.bg-gradient-purple-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4a58a5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #4a58a5;color:#fff}.bg-gradient-purple-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #632bab;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #632bab;color:#fff}.bg-gradient-purple-pink{--bslib-color-fg: #fff;--bslib-color-bg: #973d82;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #973d82;color:#fff}.bg-gradient-purple-red{--bslib-color-fg: #fff;--bslib-color-bg: #a02561;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #a02561;color:#fff}.bg-gradient-purple-orange{--bslib-color-fg: #fff;--bslib-color-bg: #9a6a6a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #9a6a6a;color:#fff}.bg-gradient-purple-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a05354;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #a05354;color:#fff}.bg-gradient-purple-green{--bslib-color-fg: #fff;--bslib-color-bg: #536d54;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #536d54;color:#fff}.bg-gradient-purple-teal{--bslib-color-fg: #fff;--bslib-color-bg: #477587;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #477587;color:#fff}.bg-gradient-purple-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #774695;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #774695;color:#fff}.bg-gradient-pink-blue{--bslib-color-fg: #fff;--bslib-color-bg: #9b58af;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #9b58af;color:#fff}.bg-gradient-pink-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #b42cb5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #b42cb5;color:#fff}.bg-gradient-pink-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b23e86;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #b23e86;color:#fff}.bg-gradient-pink-red{--bslib-color-fg: #fff;--bslib-color-bg: #f1256b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #f1256b;color:#fff}.bg-gradient-pink-orange{--bslib-color-fg: #fff;--bslib-color-bg: #eb6a73;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #eb6a73;color:#fff}.bg-gradient-pink-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #f1545e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #f1545e;color:#fff}.bg-gradient-pink-green{--bslib-color-fg: #fff;--bslib-color-bg: #a46e5e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #a46e5e;color:#fff}.bg-gradient-pink-teal{--bslib-color-fg: #fff;--bslib-color-bg: #987690;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #987690;color:#fff}.bg-gradient-pink-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #c8479f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #c8479f;color:#fff}.bg-gradient-red-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a9337d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a9337d;color:#fff}.bg-gradient-red-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #c20683;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c20683;color:#fff}.bg-gradient-red-purple{--bslib-color-fg: #fff;--bslib-color-bg: #c01854;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #c01854;color:#fff}.bg-gradient-red-pink{--bslib-color-fg: #fff;--bslib-color-bg: #f6195a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #f6195a;color:#fff}.bg-gradient-red-orange{--bslib-color-fg: #fff;--bslib-color-bg: #f94541;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #f94541;color:#fff}.bg-gradient-red-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #ff2f2c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #ff2f2c;color:#fff}.bg-gradient-red-green{--bslib-color-fg: #fff;--bslib-color-bg: #b2492c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #b2492c;color:#fff}.bg-gradient-red-teal{--bslib-color-fg: #fff;--bslib-color-bg: #a6505f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6505f;color:#fff}.bg-gradient-red-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #d6226d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #d6226d;color:#fff}.bg-gradient-orange-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a09b8a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a09b8a;color:#fff}.bg-gradient-orange-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #b96e90;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #b96e90;color:#fff}.bg-gradient-orange-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b78060;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #b78060;color:#fff}.bg-gradient-orange-pink{--bslib-color-fg: #fff;--bslib-color-bg: #ed8167;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #ed8167;color:#fff}.bg-gradient-orange-red{--bslib-color-fg: #fff;--bslib-color-bg: #f66846;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #f66846;color:#fff}.bg-gradient-orange-yellow{--bslib-color-fg: #000;--bslib-color-bg: #f69738;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #f69738;color:#000}.bg-gradient-orange-green{--bslib-color-fg: #000;--bslib-color-bg: #a9b138;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #a9b138;color:#000}.bg-gradient-orange-teal{--bslib-color-fg: #000;--bslib-color-bg: #9db86b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #9db86b;color:#000}.bg-gradient-orange-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #cd897a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #cd897a;color:#fff}.bg-gradient-yellow-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a97969;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a97969;color:#fff}.bg-gradient-yellow-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #c24d6f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c24d6f;color:#fff}.bg-gradient-yellow-purple{--bslib-color-fg: #fff;--bslib-color-bg: #c05f40;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #c05f40;color:#fff}.bg-gradient-yellow-pink{--bslib-color-fg: #fff;--bslib-color-bg: #f65f46;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #f65f46;color:#fff}.bg-gradient-yellow-red{--bslib-color-fg: #fff;--bslib-color-bg: #ff4625;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #ff4625;color:#fff}.bg-gradient-yellow-orange{--bslib-color-fg: #000;--bslib-color-bg: #f98b2e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #f98b2e;color:#000}.bg-gradient-yellow-green{--bslib-color-fg: #fff;--bslib-color-bg: #b28f18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #b28f18;color:#fff}.bg-gradient-yellow-teal{--bslib-color-fg: #fff;--bslib-color-bg: #a6974b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6974b;color:#fff}.bg-gradient-yellow-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #d66859;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #d66859;color:#fff}.bg-gradient-green-blue{--bslib-color-fg: #fff;--bslib-color-bg: #35a069;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #35a069;color:#fff}.bg-gradient-green-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #4f746f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #4f746f;color:#fff}.bg-gradient-green-purple{--bslib-color-fg: #fff;--bslib-color-bg: #4d8640;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #4d8640;color:#fff}.bg-gradient-green-pink{--bslib-color-fg: #fff;--bslib-color-bg: #838646;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #838646;color:#fff}.bg-gradient-green-red{--bslib-color-fg: #fff;--bslib-color-bg: #8c6d25;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #8c6d25;color:#fff}.bg-gradient-green-orange{--bslib-color-fg: #000;--bslib-color-bg: #86b22e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #86b22e;color:#000}.bg-gradient-green-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #8c9c18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #8c9c18;color:#fff}.bg-gradient-green-teal{--bslib-color-fg: #000;--bslib-color-bg: #33be4b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #33be4b;color:#000}.bg-gradient-green-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #638f59;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #638f59;color:#fff}.bg-gradient-teal-blue{--bslib-color-fg: #fff;--bslib-color-bg: #23acb5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #23acb5;color:#fff}.bg-gradient-teal-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #3c7fbb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3c7fbb;color:#fff}.bg-gradient-teal-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3a918c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #3a918c;color:#fff}.bg-gradient-teal-pink{--bslib-color-fg: #fff;--bslib-color-bg: #709193;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #709193;color:#fff}.bg-gradient-teal-red{--bslib-color-fg: #fff;--bslib-color-bg: #797971;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #797971;color:#fff}.bg-gradient-teal-orange{--bslib-color-fg: #000;--bslib-color-bg: #73be7a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #73be7a;color:#000}.bg-gradient-teal-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #79a764;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #79a764;color:#fff}.bg-gradient-teal-green{--bslib-color-fg: #000;--bslib-color-bg: #2cc164;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #2cc164;color:#000}.bg-gradient-teal-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #509aa5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #509aa5;color:#fff}.bg-gradient-cyan-blue{--bslib-color-fg: #fff;--bslib-color-bg: #6b66cb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #6b66cb;color:#fff}.bg-gradient-cyan-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #8539d1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #8539d1;color:#fff}.bg-gradient-cyan-purple{--bslib-color-fg: #fff;--bslib-color-bg: #834ba2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #834ba2;color:#fff}.bg-gradient-cyan-pink{--bslib-color-fg: #fff;--bslib-color-bg: #b94ba8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #b94ba8;color:#fff}.bg-gradient-cyan-red{--bslib-color-fg: #fff;--bslib-color-bg: #c23287;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #c23287;color:#fff}.bg-gradient-cyan-orange{--bslib-color-fg: #fff;--bslib-color-bg: #bc788f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #bc788f;color:#fff}.bg-gradient-cyan-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #c2617a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #c2617a;color:#fff}.bg-gradient-cyan-green{--bslib-color-fg: #fff;--bslib-color-bg: #757b7a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #757b7a;color:#fff}.bg-gradient-cyan-teal{--bslib-color-fg: #fff;--bslib-color-bg: #6983ad;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #6983ad;color:#fff}.tab-content>.tab-pane.html-fill-container{display:none}.tab-content>.active.html-fill-container{display:flex}.tab-content.html-fill-container{padding:0}:root{--bslib-spacer: 1rem;--bslib-mb-spacer: var(--bslib-spacer, 1rem)}.bslib-mb-spacing{margin-bottom:var(--bslib-mb-spacer)}.bslib-gap-spacing{gap:var(--bslib-mb-spacer)}.bslib-gap-spacing>.bslib-mb-spacing,.bslib-gap-spacing>.form-group,.bslib-gap-spacing>p,.bslib-gap-spacing>pre{margin-bottom:0}.html-fill-container>.html-fill-item.bslib-mb-spacing{margin-bottom:0}.bg-blue{--bslib-color-bg: #2780e3;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-blue{--bslib-color-fg: #2780e3;color:var(--bslib-color-fg)}.bg-indigo{--bslib-color-bg: #6610f2;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-indigo{--bslib-color-fg: #6610f2;color:var(--bslib-color-fg)}.bg-purple{--bslib-color-bg: #613d7c;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-purple{--bslib-color-fg: #613d7c;color:var(--bslib-color-fg)}.bg-pink{--bslib-color-bg: #e83e8c;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-pink{--bslib-color-fg: #e83e8c;color:var(--bslib-color-fg)}.bg-red{--bslib-color-bg: #ff0039;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-red{--bslib-color-fg: #ff0039;color:var(--bslib-color-fg)}.bg-orange{--bslib-color-bg: #f0ad4e;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-orange{--bslib-color-fg: #f0ad4e;color:var(--bslib-color-fg)}.bg-yellow{--bslib-color-bg: #ff7518;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-yellow{--bslib-color-fg: #ff7518;color:var(--bslib-color-fg)}.bg-green{--bslib-color-bg: #3fb618;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-green{--bslib-color-fg: #3fb618;color:var(--bslib-color-fg)}.bg-teal{--bslib-color-bg: #20c997;--bslib-color-fg: #000;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-teal{--bslib-color-fg: #20c997;color:var(--bslib-color-fg)}.bg-cyan{--bslib-color-bg: #9954bb;--bslib-color-fg: #fff;background-color:var(--bslib-color-bg);color:var(--bslib-color-fg)}.text-cyan{--bslib-color-fg: #9954bb;color:var(--bslib-color-fg)}.text-default{--bslib-color-fg: #343a40}.bg-default{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.text-primary{--bslib-color-fg: #2780e3}.bg-primary{--bslib-color-bg: #2780e3;--bslib-color-fg: #fff}.text-secondary{--bslib-color-fg: #343a40}.bg-secondary{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.text-success{--bslib-color-fg: #3fb618}.bg-success{--bslib-color-bg: #3fb618;--bslib-color-fg: #fff}.text-info{--bslib-color-fg: #9954bb}.bg-info{--bslib-color-bg: #9954bb;--bslib-color-fg: #fff}.text-warning{--bslib-color-fg: #ff7518}.bg-warning{--bslib-color-bg: #ff7518;--bslib-color-fg: #fff}.text-danger{--bslib-color-fg: #ff0039}.bg-danger{--bslib-color-bg: #ff0039;--bslib-color-fg: #fff}.text-light{--bslib-color-fg: #f8f9fa}.bg-light{--bslib-color-bg: #f8f9fa;--bslib-color-fg: #000}.text-dark{--bslib-color-fg: #343a40}.bg-dark{--bslib-color-bg: #343a40;--bslib-color-fg: #fff}.bg-gradient-blue-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #4053e9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #4053e9;color:#fff}.bg-gradient-blue-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3e65ba;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #3e65ba;color:#fff}.bg-gradient-blue-pink{--bslib-color-fg: #fff;--bslib-color-bg: #7466c0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #7466c0;color:#fff}.bg-gradient-blue-red{--bslib-color-fg: #fff;--bslib-color-bg: #7d4d9f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #7d4d9f;color:#fff}.bg-gradient-blue-orange{--bslib-color-fg: #fff;--bslib-color-bg: #7792a7;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #7792a7;color:#fff}.bg-gradient-blue-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #7d7c92;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #7d7c92;color:#fff}.bg-gradient-blue-green{--bslib-color-fg: #fff;--bslib-color-bg: #319692;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #319692;color:#fff}.bg-gradient-blue-teal{--bslib-color-fg: #fff;--bslib-color-bg: #249dc5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #249dc5;color:#fff}.bg-gradient-blue-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #556ed3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #2780e3 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #556ed3;color:#fff}.bg-gradient-indigo-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4d3dec;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #4d3dec;color:#fff}.bg-gradient-indigo-purple{--bslib-color-fg: #fff;--bslib-color-bg: #6422c3;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #6422c3;color:#fff}.bg-gradient-indigo-pink{--bslib-color-fg: #fff;--bslib-color-bg: #9a22c9;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #9a22c9;color:#fff}.bg-gradient-indigo-red{--bslib-color-fg: #fff;--bslib-color-bg: #a30aa8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #a30aa8;color:#fff}.bg-gradient-indigo-orange{--bslib-color-fg: #fff;--bslib-color-bg: #9d4fb0;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #9d4fb0;color:#fff}.bg-gradient-indigo-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a3389b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #a3389b;color:#fff}.bg-gradient-indigo-green{--bslib-color-fg: #fff;--bslib-color-bg: #56529b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #56529b;color:#fff}.bg-gradient-indigo-teal{--bslib-color-fg: #fff;--bslib-color-bg: #4a5ace;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #4a5ace;color:#fff}.bg-gradient-indigo-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #7a2bdc;background:linear-gradient(var(--bg-gradient-deg, 140deg), #6610f2 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #7a2bdc;color:#fff}.bg-gradient-purple-blue{--bslib-color-fg: #fff;--bslib-color-bg: #4a58a5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #4a58a5;color:#fff}.bg-gradient-purple-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #632bab;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #632bab;color:#fff}.bg-gradient-purple-pink{--bslib-color-fg: #fff;--bslib-color-bg: #973d82;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #973d82;color:#fff}.bg-gradient-purple-red{--bslib-color-fg: #fff;--bslib-color-bg: #a02561;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #a02561;color:#fff}.bg-gradient-purple-orange{--bslib-color-fg: #fff;--bslib-color-bg: #9a6a6a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #9a6a6a;color:#fff}.bg-gradient-purple-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #a05354;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #a05354;color:#fff}.bg-gradient-purple-green{--bslib-color-fg: #fff;--bslib-color-bg: #536d54;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #536d54;color:#fff}.bg-gradient-purple-teal{--bslib-color-fg: #fff;--bslib-color-bg: #477587;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #477587;color:#fff}.bg-gradient-purple-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #774695;background:linear-gradient(var(--bg-gradient-deg, 140deg), #613d7c var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #774695;color:#fff}.bg-gradient-pink-blue{--bslib-color-fg: #fff;--bslib-color-bg: #9b58af;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #9b58af;color:#fff}.bg-gradient-pink-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #b42cb5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #b42cb5;color:#fff}.bg-gradient-pink-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b23e86;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #b23e86;color:#fff}.bg-gradient-pink-red{--bslib-color-fg: #fff;--bslib-color-bg: #f1256b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #f1256b;color:#fff}.bg-gradient-pink-orange{--bslib-color-fg: #fff;--bslib-color-bg: #eb6a73;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #eb6a73;color:#fff}.bg-gradient-pink-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #f1545e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #f1545e;color:#fff}.bg-gradient-pink-green{--bslib-color-fg: #fff;--bslib-color-bg: #a46e5e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #a46e5e;color:#fff}.bg-gradient-pink-teal{--bslib-color-fg: #fff;--bslib-color-bg: #987690;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #987690;color:#fff}.bg-gradient-pink-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #c8479f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #e83e8c var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #c8479f;color:#fff}.bg-gradient-red-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a9337d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a9337d;color:#fff}.bg-gradient-red-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #c20683;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c20683;color:#fff}.bg-gradient-red-purple{--bslib-color-fg: #fff;--bslib-color-bg: #c01854;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #c01854;color:#fff}.bg-gradient-red-pink{--bslib-color-fg: #fff;--bslib-color-bg: #f6195a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #f6195a;color:#fff}.bg-gradient-red-orange{--bslib-color-fg: #fff;--bslib-color-bg: #f94541;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #f94541;color:#fff}.bg-gradient-red-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #ff2f2c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #ff2f2c;color:#fff}.bg-gradient-red-green{--bslib-color-fg: #fff;--bslib-color-bg: #b2492c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #b2492c;color:#fff}.bg-gradient-red-teal{--bslib-color-fg: #fff;--bslib-color-bg: #a6505f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6505f;color:#fff}.bg-gradient-red-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #d6226d;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff0039 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #d6226d;color:#fff}.bg-gradient-orange-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a09b8a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a09b8a;color:#fff}.bg-gradient-orange-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #b96e90;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #b96e90;color:#fff}.bg-gradient-orange-purple{--bslib-color-fg: #fff;--bslib-color-bg: #b78060;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #b78060;color:#fff}.bg-gradient-orange-pink{--bslib-color-fg: #fff;--bslib-color-bg: #ed8167;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #ed8167;color:#fff}.bg-gradient-orange-red{--bslib-color-fg: #fff;--bslib-color-bg: #f66846;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #f66846;color:#fff}.bg-gradient-orange-yellow{--bslib-color-fg: #000;--bslib-color-bg: #f69738;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #f69738;color:#000}.bg-gradient-orange-green{--bslib-color-fg: #000;--bslib-color-bg: #a9b138;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #a9b138;color:#000}.bg-gradient-orange-teal{--bslib-color-fg: #000;--bslib-color-bg: #9db86b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #9db86b;color:#000}.bg-gradient-orange-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #cd897a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #f0ad4e var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #cd897a;color:#fff}.bg-gradient-yellow-blue{--bslib-color-fg: #fff;--bslib-color-bg: #a97969;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #a97969;color:#fff}.bg-gradient-yellow-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #c24d6f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #c24d6f;color:#fff}.bg-gradient-yellow-purple{--bslib-color-fg: #fff;--bslib-color-bg: #c05f40;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #c05f40;color:#fff}.bg-gradient-yellow-pink{--bslib-color-fg: #fff;--bslib-color-bg: #f65f46;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #f65f46;color:#fff}.bg-gradient-yellow-red{--bslib-color-fg: #fff;--bslib-color-bg: #ff4625;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #ff4625;color:#fff}.bg-gradient-yellow-orange{--bslib-color-fg: #000;--bslib-color-bg: #f98b2e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #f98b2e;color:#000}.bg-gradient-yellow-green{--bslib-color-fg: #fff;--bslib-color-bg: #b28f18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #b28f18;color:#fff}.bg-gradient-yellow-teal{--bslib-color-fg: #fff;--bslib-color-bg: #a6974b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #a6974b;color:#fff}.bg-gradient-yellow-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #d66859;background:linear-gradient(var(--bg-gradient-deg, 140deg), #ff7518 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #d66859;color:#fff}.bg-gradient-green-blue{--bslib-color-fg: #fff;--bslib-color-bg: #35a069;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #35a069;color:#fff}.bg-gradient-green-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #4f746f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #4f746f;color:#fff}.bg-gradient-green-purple{--bslib-color-fg: #fff;--bslib-color-bg: #4d8640;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #4d8640;color:#fff}.bg-gradient-green-pink{--bslib-color-fg: #fff;--bslib-color-bg: #838646;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #838646;color:#fff}.bg-gradient-green-red{--bslib-color-fg: #fff;--bslib-color-bg: #8c6d25;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #8c6d25;color:#fff}.bg-gradient-green-orange{--bslib-color-fg: #000;--bslib-color-bg: #86b22e;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #86b22e;color:#000}.bg-gradient-green-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #8c9c18;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #8c9c18;color:#fff}.bg-gradient-green-teal{--bslib-color-fg: #000;--bslib-color-bg: #33be4b;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #33be4b;color:#000}.bg-gradient-green-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #638f59;background:linear-gradient(var(--bg-gradient-deg, 140deg), #3fb618 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #638f59;color:#fff}.bg-gradient-teal-blue{--bslib-color-fg: #fff;--bslib-color-bg: #23acb5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #23acb5;color:#fff}.bg-gradient-teal-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #3c7fbb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #3c7fbb;color:#fff}.bg-gradient-teal-purple{--bslib-color-fg: #fff;--bslib-color-bg: #3a918c;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #3a918c;color:#fff}.bg-gradient-teal-pink{--bslib-color-fg: #fff;--bslib-color-bg: #709193;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #709193;color:#fff}.bg-gradient-teal-red{--bslib-color-fg: #fff;--bslib-color-bg: #797971;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #797971;color:#fff}.bg-gradient-teal-orange{--bslib-color-fg: #000;--bslib-color-bg: #73be7a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #73be7a;color:#000}.bg-gradient-teal-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #79a764;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #79a764;color:#fff}.bg-gradient-teal-green{--bslib-color-fg: #000;--bslib-color-bg: #2cc164;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #2cc164;color:#000}.bg-gradient-teal-cyan{--bslib-color-fg: #fff;--bslib-color-bg: #509aa5;background:linear-gradient(var(--bg-gradient-deg, 140deg), #20c997 var(--bg-gradient-start, 36%), #9954bb var(--bg-gradient-end, 180%)) #509aa5;color:#fff}.bg-gradient-cyan-blue{--bslib-color-fg: #fff;--bslib-color-bg: #6b66cb;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #2780e3 var(--bg-gradient-end, 180%)) #6b66cb;color:#fff}.bg-gradient-cyan-indigo{--bslib-color-fg: #fff;--bslib-color-bg: #8539d1;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #6610f2 var(--bg-gradient-end, 180%)) #8539d1;color:#fff}.bg-gradient-cyan-purple{--bslib-color-fg: #fff;--bslib-color-bg: #834ba2;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #613d7c var(--bg-gradient-end, 180%)) #834ba2;color:#fff}.bg-gradient-cyan-pink{--bslib-color-fg: #fff;--bslib-color-bg: #b94ba8;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #e83e8c var(--bg-gradient-end, 180%)) #b94ba8;color:#fff}.bg-gradient-cyan-red{--bslib-color-fg: #fff;--bslib-color-bg: #c23287;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #ff0039 var(--bg-gradient-end, 180%)) #c23287;color:#fff}.bg-gradient-cyan-orange{--bslib-color-fg: #fff;--bslib-color-bg: #bc788f;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #f0ad4e var(--bg-gradient-end, 180%)) #bc788f;color:#fff}.bg-gradient-cyan-yellow{--bslib-color-fg: #fff;--bslib-color-bg: #c2617a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #ff7518 var(--bg-gradient-end, 180%)) #c2617a;color:#fff}.bg-gradient-cyan-green{--bslib-color-fg: #fff;--bslib-color-bg: #757b7a;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #3fb618 var(--bg-gradient-end, 180%)) #757b7a;color:#fff}.bg-gradient-cyan-teal{--bslib-color-fg: #fff;--bslib-color-bg: #6983ad;background:linear-gradient(var(--bg-gradient-deg, 140deg), #9954bb var(--bg-gradient-start, 36%), #20c997 var(--bg-gradient-end, 180%)) #6983ad;color:#fff}:root{--bslib-value-box-shadow: none;--bslib-value-box-border-width-auto-yes: var(--bslib-value-box-border-width-baseline);--bslib-value-box-border-width-auto-no: 0;--bslib-value-box-border-width-baseline: 1px}.bslib-value-box{border-width:var(--bslib-value-box-border-width-auto-no, var(--bslib-value-box-border-width-baseline));container-name:bslib-value-box;container-type:inline-size}.bslib-value-box.card{box-shadow:var(--bslib-value-box-shadow)}.bslib-value-box.border-auto{border-width:var(--bslib-value-box-border-width-auto-yes, var(--bslib-value-box-border-width-baseline))}.bslib-value-box.default{--bslib-value-box-bg-default: var(--bs-card-bg, #fff);--bslib-value-box-border-color-default: var(--bs-card-border-color, rgba(0, 0, 0, 0.175));color:var(--bslib-value-box-color);background-color:var(--bslib-value-box-bg, var(--bslib-value-box-bg-default));border-color:var(--bslib-value-box-border-color, var(--bslib-value-box-border-color-default))}.bslib-value-box .value-box-grid{display:grid;grid-template-areas:"left right";align-items:center;overflow:hidden}.bslib-value-box .value-box-showcase{height:100%;max-height:var(---bslib-value-box-showcase-max-h, 100%)}.bslib-value-box .value-box-showcase,.bslib-value-box .value-box-showcase>.html-fill-item{width:100%}.bslib-value-box[data-full-screen=true] .value-box-showcase{max-height:var(---bslib-value-box-showcase-max-h-fs, 100%)}@media screen and (min-width: 575.98px){@container bslib-value-box (max-width: 300px){.bslib-value-box:not(.showcase-bottom) .value-box-grid{grid-template-columns:1fr !important;grid-template-rows:auto auto;grid-template-areas:"top" "bottom"}.bslib-value-box:not(.showcase-bottom) .value-box-grid .value-box-showcase{grid-area:top !important}.bslib-value-box:not(.showcase-bottom) .value-box-grid .value-box-area{grid-area:bottom !important;justify-content:end}}}.bslib-value-box .value-box-area{justify-content:center;padding:1.5rem 1rem;font-size:.9rem;font-weight:500}.bslib-value-box .value-box-area *{margin-bottom:0;margin-top:0}.bslib-value-box .value-box-title{font-size:1rem;margin-top:0;margin-bottom:.5rem;font-weight:400;line-height:1.2}.bslib-value-box .value-box-title:empty::after{content:" "}.bslib-value-box .value-box-value{font-size:calc(1.29rem + 0.48vw);margin-top:0;margin-bottom:.5rem;font-weight:400;line-height:1.2}@media(min-width: 1200px){.bslib-value-box .value-box-value{font-size:1.65rem}}.bslib-value-box .value-box-value:empty::after{content:" "}.bslib-value-box .value-box-showcase{align-items:center;justify-content:center;margin-top:auto;margin-bottom:auto;padding:1rem}.bslib-value-box .value-box-showcase .bi,.bslib-value-box .value-box-showcase .fa,.bslib-value-box .value-box-showcase .fab,.bslib-value-box .value-box-showcase .fas,.bslib-value-box .value-box-showcase .far{opacity:.85;min-width:50px;max-width:125%}.bslib-value-box .value-box-showcase .bi,.bslib-value-box .value-box-showcase .fa,.bslib-value-box .value-box-showcase .fab,.bslib-value-box .value-box-showcase .fas,.bslib-value-box .value-box-showcase .far{font-size:4rem}.bslib-value-box.showcase-top-right .value-box-grid{grid-template-columns:1fr var(---bslib-value-box-showcase-w, 50%)}.bslib-value-box.showcase-top-right .value-box-grid .value-box-showcase{grid-area:right;margin-left:auto;align-self:start;align-items:end;padding-left:0;padding-bottom:0}.bslib-value-box.showcase-top-right .value-box-grid .value-box-area{grid-area:left;align-self:end}.bslib-value-box.showcase-top-right[data-full-screen=true] .value-box-grid{grid-template-columns:auto var(---bslib-value-box-showcase-w-fs, 1fr)}.bslib-value-box.showcase-top-right[data-full-screen=true] .value-box-grid>div{align-self:center}.bslib-value-box.showcase-top-right:not([data-full-screen=true]) .value-box-showcase{margin-top:0}@container bslib-value-box (max-width: 300px){.bslib-value-box.showcase-top-right:not([data-full-screen=true]) .value-box-grid .value-box-showcase{padding-left:1rem}}.bslib-value-box.showcase-left-center .value-box-grid{grid-template-columns:var(---bslib-value-box-showcase-w, 30%) auto}.bslib-value-box.showcase-left-center[data-full-screen=true] .value-box-grid{grid-template-columns:var(---bslib-value-box-showcase-w-fs, 1fr) auto}.bslib-value-box.showcase-left-center:not([data-fill-screen=true]) .value-box-grid .value-box-showcase{grid-area:left}.bslib-value-box.showcase-left-center:not([data-fill-screen=true]) .value-box-grid .value-box-area{grid-area:right}.bslib-value-box.showcase-bottom .value-box-grid{grid-template-columns:1fr;grid-template-rows:1fr var(---bslib-value-box-showcase-h, auto);grid-template-areas:"top" "bottom";overflow:hidden}.bslib-value-box.showcase-bottom .value-box-grid .value-box-showcase{grid-area:bottom;padding:0;margin:0}.bslib-value-box.showcase-bottom .value-box-grid .value-box-area{grid-area:top}.bslib-value-box.showcase-bottom[data-full-screen=true] .value-box-grid{grid-template-rows:1fr var(---bslib-value-box-showcase-h-fs, 2fr)}.bslib-value-box.showcase-bottom[data-full-screen=true] .value-box-grid .value-box-showcase{padding:1rem}[data-bs-theme=dark] .bslib-value-box{--bslib-value-box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 50%)}@media(min-width: 576px){.nav:not(.nav-hidden){display:flex !important;display:-webkit-flex !important}.nav:not(.nav-hidden):not(.nav-stacked):not(.flex-column){float:none !important}.nav:not(.nav-hidden):not(.nav-stacked):not(.flex-column)>.bslib-nav-spacer{margin-left:auto !important}.nav:not(.nav-hidden):not(.nav-stacked):not(.flex-column)>.form-inline{margin-top:auto;margin-bottom:auto}.nav:not(.nav-hidden).nav-stacked{flex-direction:column;-webkit-flex-direction:column;height:100%}.nav:not(.nav-hidden).nav-stacked>.bslib-nav-spacer{margin-top:auto !important}}.bslib-card{overflow:auto}.bslib-card .card-body+.card-body{padding-top:0}.bslib-card .card-body{overflow:auto}.bslib-card .card-body p{margin-top:0}.bslib-card .card-body p:last-child{margin-bottom:0}.bslib-card .card-body{max-height:var(--bslib-card-body-max-height, none)}.bslib-card[data-full-screen=true]>.card-body{max-height:var(--bslib-card-body-max-height-full-screen, none)}.bslib-card .card-header .form-group{margin-bottom:0}.bslib-card .card-header .selectize-control{margin-bottom:0}.bslib-card .card-header .selectize-control .item{margin-right:1.15rem}.bslib-card .card-footer{margin-top:auto}.bslib-card .bslib-navs-card-title{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}.bslib-card .bslib-navs-card-title .nav{margin-left:auto}.bslib-card .bslib-sidebar-layout:not([data-bslib-sidebar-border=true]){border:none}.bslib-card .bslib-sidebar-layout:not([data-bslib-sidebar-border-radius=true]){border-top-left-radius:0;border-top-right-radius:0}[data-full-screen=true]{position:fixed;inset:3.5rem 1rem 1rem;height:auto !important;max-height:none !important;width:auto !important;z-index:1070}.bslib-full-screen-enter{display:none;position:absolute;bottom:var(--bslib-full-screen-enter-bottom, 0.2rem);right:var(--bslib-full-screen-enter-right, 0);top:var(--bslib-full-screen-enter-top);left:var(--bslib-full-screen-enter-left);color:var(--bslib-color-fg, var(--bs-card-color));background-color:var(--bslib-color-bg, var(--bs-card-bg, var(--bs-body-bg)));border:var(--bs-card-border-width) solid var(--bslib-color-fg, var(--bs-card-border-color));box-shadow:0 2px 4px rgba(0,0,0,.15);margin:.2rem .4rem;padding:.55rem !important;font-size:.8rem;cursor:pointer;opacity:.7;z-index:1070}.bslib-full-screen-enter:hover{opacity:1}.card[data-full-screen=false]:hover>*>.bslib-full-screen-enter{display:block}.bslib-has-full-screen .card:hover>*>.bslib-full-screen-enter{display:none}@media(max-width: 575.98px){.bslib-full-screen-enter{display:none !important}}.bslib-full-screen-exit{position:relative;top:1.35rem;font-size:.9rem;cursor:pointer;text-decoration:none;display:flex;float:right;margin-right:2.15rem;align-items:center;color:rgba(var(--bs-body-bg-rgb), 0.8)}.bslib-full-screen-exit:hover{color:rgba(var(--bs-body-bg-rgb), 1)}.bslib-full-screen-exit svg{margin-left:.5rem;font-size:1.5rem}#bslib-full-screen-overlay{position:fixed;inset:0;background-color:rgba(var(--bs-body-color-rgb), 0.6);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:1069;animation:bslib-full-screen-overlay-enter 400ms cubic-bezier(0.6, 0.02, 0.65, 1) forwards}@keyframes bslib-full-screen-overlay-enter{0%{opacity:0}100%{opacity:1}}.bslib-grid{display:grid !important;gap:var(--bslib-spacer, 1rem);height:var(--bslib-grid-height)}.bslib-grid.grid{grid-template-columns:repeat(var(--bs-columns, 12), minmax(0, 1fr));grid-template-rows:unset;grid-auto-rows:var(--bslib-grid--row-heights);--bslib-grid--row-heights--xs: unset;--bslib-grid--row-heights--sm: unset;--bslib-grid--row-heights--md: unset;--bslib-grid--row-heights--lg: unset;--bslib-grid--row-heights--xl: unset;--bslib-grid--row-heights--xxl: unset}.bslib-grid.grid.bslib-grid--row-heights--xs{--bslib-grid--row-heights: var(--bslib-grid--row-heights--xs)}@media(min-width: 576px){.bslib-grid.grid.bslib-grid--row-heights--sm{--bslib-grid--row-heights: var(--bslib-grid--row-heights--sm)}}@media(min-width: 768px){.bslib-grid.grid.bslib-grid--row-heights--md{--bslib-grid--row-heights: var(--bslib-grid--row-heights--md)}}@media(min-width: 992px){.bslib-grid.grid.bslib-grid--row-heights--lg{--bslib-grid--row-heights: var(--bslib-grid--row-heights--lg)}}@media(min-width: 1200px){.bslib-grid.grid.bslib-grid--row-heights--xl{--bslib-grid--row-heights: var(--bslib-grid--row-heights--xl)}}@media(min-width: 1400px){.bslib-grid.grid.bslib-grid--row-heights--xxl{--bslib-grid--row-heights: var(--bslib-grid--row-heights--xxl)}}.bslib-grid>*>.shiny-input-container{width:100%}.bslib-grid-item{grid-column:auto/span 1}@media(max-width: 767.98px){.bslib-grid-item{grid-column:1/-1}}@media(max-width: 575.98px){.bslib-grid{grid-template-columns:1fr !important;height:var(--bslib-grid-height-mobile)}.bslib-grid.grid{height:unset !important;grid-auto-rows:var(--bslib-grid--row-heights--xs, auto)}}.accordion .accordion-header{font-size:calc(1.29rem + 0.48vw);margin-top:0;margin-bottom:.5rem;font-weight:400;line-height:1.2;color:var(--bs-heading-color);margin-bottom:0}@media(min-width: 1200px){.accordion .accordion-header{font-size:1.65rem}}.accordion .accordion-icon:not(:empty){margin-right:.75rem;display:flex}.accordion .accordion-button:not(.collapsed){box-shadow:none}.accordion .accordion-button:not(.collapsed):focus{box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.navbar+.container-fluid:has(>.tab-content>.tab-pane.active.html-fill-container),.navbar+.container-sm:has(>.tab-content>.tab-pane.active.html-fill-container),.navbar+.container-md:has(>.tab-content>.tab-pane.active.html-fill-container),.navbar+.container-lg:has(>.tab-content>.tab-pane.active.html-fill-container),.navbar+.container-xl:has(>.tab-content>.tab-pane.active.html-fill-container),.navbar+.container-xxl:has(>.tab-content>.tab-pane.active.html-fill-container){padding-left:0;padding-right:0}.navbar+.container-fluid>.tab-content>.tab-pane.active.html-fill-container,.navbar+.container-sm>.tab-content>.tab-pane.active.html-fill-container,.navbar+.container-md>.tab-content>.tab-pane.active.html-fill-container,.navbar+.container-lg>.tab-content>.tab-pane.active.html-fill-container,.navbar+.container-xl>.tab-content>.tab-pane.active.html-fill-container,.navbar+.container-xxl>.tab-content>.tab-pane.active.html-fill-container{padding:var(--bslib-spacer, 1rem);gap:var(--bslib-spacer, 1rem)}.navbar+.container-fluid>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child),.navbar+.container-sm>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child),.navbar+.container-md>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child),.navbar+.container-lg>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child),.navbar+.container-xl>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child),.navbar+.container-xxl>.tab-content>.tab-pane.active.html-fill-container:has(>.bslib-sidebar-layout:only-child){padding:0}.navbar+.container-fluid>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]),.navbar+.container-sm>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]),.navbar+.container-md>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]),.navbar+.container-lg>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]),.navbar+.container-xl>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]),.navbar+.container-xxl>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border=true]){border-left:none;border-right:none;border-bottom:none}.navbar+.container-fluid>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]),.navbar+.container-sm>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]),.navbar+.container-md>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]),.navbar+.container-lg>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]),.navbar+.container-xl>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]),.navbar+.container-xxl>.tab-content>.tab-pane.active.html-fill-container>.bslib-sidebar-layout:only-child:not([data-bslib-sidebar-border-radius=true]){border-radius:0}.navbar+div>.bslib-sidebar-layout{border-top:var(--bslib-sidebar-border)}html{height:100%}.bslib-page-fill{width:100%;height:100%;margin:0;padding:var(--bslib-spacer, 1rem);gap:var(--bslib-spacer, 1rem)}@media(max-width: 575.98px){.bslib-page-fill{height:var(--bslib-page-fill-mobile-height, auto)}}:root{--bslib-page-sidebar-title-bg: #f8f9fa;--bslib-page-sidebar-title-color: #000}.bslib-page-title{background-color:var(--bslib-page-sidebar-title-bg);color:var(--bslib-page-sidebar-title-color);font-size:1.25rem;font-weight:300;padding:var(--bslib-spacer, 1rem);padding-left:1.5rem;margin-bottom:0;border-bottom:1px solid #dee2e6}.bslib-sidebar-layout{--bslib-sidebar-transition-duration: 500ms;--bslib-sidebar-transition-easing-x: cubic-bezier(0.8, 0.78, 0.22, 1.07);--bslib-sidebar-border: var(--bs-card-border-width, 1px) solid var(--bs-card-border-color, rgba(0, 0, 0, 0.175));--bslib-sidebar-border-radius: var(--bs-border-radius);--bslib-sidebar-vert-border: var(--bs-card-border-width, 1px) solid var(--bs-card-border-color, rgba(0, 0, 0, 0.175));--bslib-sidebar-bg: rgba(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.05);--bslib-sidebar-fg: var(--bs-emphasis-color, black);--bslib-sidebar-main-fg: var(--bs-card-color, var(--bs-body-color));--bslib-sidebar-main-bg: var(--bs-card-bg, var(--bs-body-bg));--bslib-sidebar-toggle-bg: rgba(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.1);--bslib-sidebar-padding: calc(var(--bslib-spacer) * 1.5);--bslib-sidebar-icon-size: var(--bslib-spacer, 1rem);--bslib-sidebar-icon-button-size: calc(var(--bslib-sidebar-icon-size, 1rem) * 2);--bslib-sidebar-padding-icon: calc(var(--bslib-sidebar-icon-button-size, 2rem) * 1.5);--bslib-collapse-toggle-border-radius: var(--bs-border-radius, 0.25rem);--bslib-collapse-toggle-transform: 0deg;--bslib-sidebar-toggle-transition-easing: cubic-bezier(1, 0, 0, 1);--bslib-collapse-toggle-right-transform: 180deg;--bslib-sidebar-column-main: minmax(0, 1fr);display:grid !important;grid-template-columns:min(100% - var(--bslib-sidebar-icon-size),var(--bslib-sidebar-width, 250px)) var(--bslib-sidebar-column-main);position:relative;transition:grid-template-columns ease-in-out var(--bslib-sidebar-transition-duration);border:var(--bslib-sidebar-border);border-radius:var(--bslib-sidebar-border-radius)}@media(prefers-reduced-motion: reduce){.bslib-sidebar-layout{transition:none}}.bslib-sidebar-layout[data-bslib-sidebar-border=false]{border:none}.bslib-sidebar-layout[data-bslib-sidebar-border-radius=false]{border-radius:initial}.bslib-sidebar-layout>.main,.bslib-sidebar-layout>.sidebar{grid-row:1/2;border-radius:inherit;overflow:auto}.bslib-sidebar-layout>.main{grid-column:2/3;border-top-left-radius:0;border-bottom-left-radius:0;padding:var(--bslib-sidebar-padding);transition:padding var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration);color:var(--bslib-sidebar-main-fg);background-color:var(--bslib-sidebar-main-bg)}.bslib-sidebar-layout>.sidebar{grid-column:1/2;width:100%;height:100%;border-right:var(--bslib-sidebar-vert-border);border-top-right-radius:0;border-bottom-right-radius:0;color:var(--bslib-sidebar-fg);background-color:var(--bslib-sidebar-bg);backdrop-filter:blur(5px)}.bslib-sidebar-layout>.sidebar>.sidebar-content{display:flex;flex-direction:column;gap:var(--bslib-spacer, 1rem);padding:var(--bslib-sidebar-padding);padding-top:var(--bslib-sidebar-padding-icon)}.bslib-sidebar-layout>.sidebar>.sidebar-content>:last-child:not(.sidebar-title){margin-bottom:0}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion{margin-left:calc(-1*var(--bslib-sidebar-padding));margin-right:calc(-1*var(--bslib-sidebar-padding))}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion:last-child{margin-bottom:calc(-1*var(--bslib-sidebar-padding))}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion:not(:last-child){margin-bottom:1rem}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion .accordion-body{display:flex;flex-direction:column}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion:not(:first-child) .accordion-item:first-child{border-top:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.bslib-sidebar-layout>.sidebar>.sidebar-content>.accordion:not(:last-child) .accordion-item:last-child{border-bottom:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.bslib-sidebar-layout>.sidebar>.sidebar-content.has-accordion>.sidebar-title{border-bottom:none;padding-bottom:0}.bslib-sidebar-layout>.sidebar .shiny-input-container{width:100%}.bslib-sidebar-layout[data-bslib-sidebar-open=always]>.sidebar>.sidebar-content{padding-top:var(--bslib-sidebar-padding)}.bslib-sidebar-layout>.collapse-toggle{grid-row:1/2;grid-column:1/2;display:inline-flex;align-items:center;position:absolute;right:calc(var(--bslib-sidebar-icon-size));top:calc(var(--bslib-sidebar-icon-size, 1rem)/2);border:none;border-radius:var(--bslib-collapse-toggle-border-radius);height:var(--bslib-sidebar-icon-button-size, 2rem);width:var(--bslib-sidebar-icon-button-size, 2rem);display:flex;align-items:center;justify-content:center;padding:0;color:var(--bslib-sidebar-fg);background-color:unset;transition:color var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration),top var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration),right var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration),left var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration)}.bslib-sidebar-layout>.collapse-toggle:hover{background-color:var(--bslib-sidebar-toggle-bg)}.bslib-sidebar-layout>.collapse-toggle>.collapse-icon{opacity:.8;width:var(--bslib-sidebar-icon-size);height:var(--bslib-sidebar-icon-size);transform:rotateY(var(--bslib-collapse-toggle-transform));transition:transform var(--bslib-sidebar-toggle-transition-easing) var(--bslib-sidebar-transition-duration)}.bslib-sidebar-layout>.collapse-toggle:hover>.collapse-icon{opacity:1}.bslib-sidebar-layout .sidebar-title{font-size:1.25rem;line-height:1.25;margin-top:0;margin-bottom:1rem;padding-bottom:1rem;border-bottom:var(--bslib-sidebar-border)}.bslib-sidebar-layout.sidebar-right{grid-template-columns:var(--bslib-sidebar-column-main) min(100% - var(--bslib-sidebar-icon-size),var(--bslib-sidebar-width, 250px))}.bslib-sidebar-layout.sidebar-right>.main{grid-column:1/2;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:inherit;border-bottom-left-radius:inherit}.bslib-sidebar-layout.sidebar-right>.sidebar{grid-column:2/3;border-right:none;border-left:var(--bslib-sidebar-vert-border);border-top-left-radius:0;border-bottom-left-radius:0}.bslib-sidebar-layout.sidebar-right>.collapse-toggle{grid-column:2/3;left:var(--bslib-sidebar-icon-size);right:unset;border:var(--bslib-collapse-toggle-border)}.bslib-sidebar-layout.sidebar-right>.collapse-toggle>.collapse-icon{transform:rotateY(var(--bslib-collapse-toggle-right-transform))}.bslib-sidebar-layout.sidebar-collapsed{--bslib-collapse-toggle-transform: 180deg;--bslib-collapse-toggle-right-transform: 0deg;--bslib-sidebar-vert-border: none;grid-template-columns:0 minmax(0, 1fr)}.bslib-sidebar-layout.sidebar-collapsed.sidebar-right{grid-template-columns:minmax(0, 1fr) 0}.bslib-sidebar-layout.sidebar-collapsed:not(.transitioning)>.sidebar>*{display:none}.bslib-sidebar-layout.sidebar-collapsed>.main{border-radius:inherit}.bslib-sidebar-layout.sidebar-collapsed:not(.sidebar-right)>.main{padding-left:var(--bslib-sidebar-padding-icon)}.bslib-sidebar-layout.sidebar-collapsed.sidebar-right>.main{padding-right:var(--bslib-sidebar-padding-icon)}.bslib-sidebar-layout.sidebar-collapsed>.collapse-toggle{color:var(--bslib-sidebar-main-fg);top:calc(var(--bslib-sidebar-overlap-counter, 0)*(var(--bslib-sidebar-icon-size) + var(--bslib-sidebar-padding)) + var(--bslib-sidebar-icon-size, 1rem)/2);right:calc(-2.5*var(--bslib-sidebar-icon-size) - var(--bs-card-border-width, 1px))}.bslib-sidebar-layout.sidebar-collapsed.sidebar-right>.collapse-toggle{left:calc(-2.5*var(--bslib-sidebar-icon-size) - var(--bs-card-border-width, 1px));right:unset}@media(min-width: 576px){.bslib-sidebar-layout.transitioning>.sidebar>.sidebar-content{display:none}}@media(max-width: 575.98px){.bslib-sidebar-layout[data-bslib-sidebar-open=desktop]{--bslib-sidebar-js-init-collapsed: true}.bslib-sidebar-layout>.sidebar,.bslib-sidebar-layout.sidebar-right>.sidebar{border:none}.bslib-sidebar-layout>.main,.bslib-sidebar-layout.sidebar-right>.main{grid-column:1/3}.bslib-sidebar-layout[data-bslib-sidebar-open=always]{display:block !important}.bslib-sidebar-layout[data-bslib-sidebar-open=always]>.sidebar{max-height:var(--bslib-sidebar-max-height-mobile);overflow-y:auto;border-top:var(--bslib-sidebar-vert-border)}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]){grid-template-columns:100% 0}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]):not(.sidebar-collapsed)>.sidebar{z-index:1}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]):not(.sidebar-collapsed)>.collapse-toggle{z-index:1}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]).sidebar-right{grid-template-columns:0 100%}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]).sidebar-collapsed{grid-template-columns:0 100%}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]).sidebar-collapsed.sidebar-right{grid-template-columns:100% 0}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]):not(.sidebar-right)>.main{padding-left:var(--bslib-sidebar-padding-icon)}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]).sidebar-right>.main{padding-right:var(--bslib-sidebar-padding-icon)}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always])>.main{opacity:0;transition:opacity var(--bslib-sidebar-transition-easing-x) var(--bslib-sidebar-transition-duration)}.bslib-sidebar-layout:not([data-bslib-sidebar-open=always]).sidebar-collapsed>.main{opacity:1}}.html-fill-container{display:flex;flex-direction:column;min-height:0;min-width:0}.html-fill-container>.html-fill-item{flex:1 1 auto;min-height:0;min-width:0}.html-fill-container>:not(.html-fill-item){flex:0 0 auto}.quarto-container{min-height:calc(100vh - 132px)}body.hypothesis-enabled #quarto-header{margin-right:16px}footer.footer .nav-footer,#quarto-header>nav{padding-left:1em;padding-right:1em}footer.footer div.nav-footer p:first-child{margin-top:0}footer.footer div.nav-footer p:last-child{margin-bottom:0}#quarto-content>*{padding-top:14px}#quarto-content>#quarto-sidebar-glass{padding-top:0px}@media(max-width: 991.98px){#quarto-content>*{padding-top:0}#quarto-content .subtitle{padding-top:14px}#quarto-content section:first-of-type h2:first-of-type,#quarto-content section:first-of-type .h2:first-of-type{margin-top:1rem}}.headroom-target,header.headroom{will-change:transform;transition:position 200ms linear;transition:all 200ms linear}header.headroom--pinned{transform:translateY(0%)}header.headroom--unpinned{transform:translateY(-100%)}.navbar-container{width:100%}.navbar-brand{overflow:hidden;text-overflow:ellipsis}.navbar-brand-container{max-width:calc(100% - 115px);min-width:0;display:flex;align-items:center}@media(min-width: 992px){.navbar-brand-container{margin-right:1em}}.navbar-brand.navbar-brand-logo{margin-right:4px;display:inline-flex}.navbar-toggler{flex-basis:content;flex-shrink:0}.navbar .navbar-brand-container{order:2}.navbar .navbar-toggler{order:1}.navbar .navbar-container>.navbar-nav{order:20}.navbar .navbar-container>.navbar-brand-container{margin-left:0 !important;margin-right:0 !important}.navbar .navbar-collapse{order:20}.navbar #quarto-search{order:4;margin-left:auto}.navbar .navbar-toggler{margin-right:.5em}.navbar-logo{max-height:24px;width:auto;padding-right:4px}nav .nav-item:not(.compact){padding-top:1px}nav .nav-link i,nav .dropdown-item i{padding-right:1px}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.6rem;padding-right:.6rem}nav .nav-item.compact .nav-link{padding-left:.5rem;padding-right:.5rem;font-size:1.1rem}.navbar .quarto-navbar-tools{order:3}.navbar .quarto-navbar-tools div.dropdown{display:inline-block}.navbar .quarto-navbar-tools .quarto-navigation-tool{color:#545555}.navbar .quarto-navbar-tools .quarto-navigation-tool:hover{color:#1f4eb6}.navbar-nav .dropdown-menu{min-width:220px;font-size:.9rem}.navbar .navbar-nav .nav-link.dropdown-toggle::after{opacity:.75;vertical-align:.175em}.navbar ul.dropdown-menu{padding-top:0;padding-bottom:0}.navbar .dropdown-header{text-transform:uppercase;font-size:.8rem;padding:0 .5rem}.navbar .dropdown-item{padding:.4rem .5rem}.navbar .dropdown-item>i.bi{margin-left:.1rem;margin-right:.25em}.sidebar #quarto-search{margin-top:-1px}.sidebar #quarto-search svg.aa-SubmitIcon{width:16px;height:16px}.sidebar-navigation a{color:inherit}.sidebar-title{margin-top:.25rem;padding-bottom:.5rem;font-size:1.3rem;line-height:1.6rem;visibility:visible}.sidebar-title>a{font-size:inherit;text-decoration:none}.sidebar-title .sidebar-tools-main{margin-top:-6px}@media(max-width: 991.98px){#quarto-sidebar div.sidebar-header{padding-top:.2em}}.sidebar-header-stacked .sidebar-title{margin-top:.6rem}.sidebar-logo{max-width:90%;padding-bottom:.5rem}.sidebar-logo-link{text-decoration:none}.sidebar-navigation li a{text-decoration:none}.sidebar-navigation .quarto-navigation-tool{opacity:.7;font-size:.875rem}#quarto-sidebar>nav>.sidebar-tools-main{margin-left:14px}.sidebar-tools-main{display:inline-flex;margin-left:0px;order:2}.sidebar-tools-main:not(.tools-wide){vertical-align:middle}.sidebar-navigation .quarto-navigation-tool.dropdown-toggle::after{display:none}.sidebar.sidebar-navigation>*{padding-top:1em}.sidebar-item{margin-bottom:.2em;line-height:1rem;margin-top:.4rem}.sidebar-section{padding-left:.5em;padding-bottom:.2em}.sidebar-item .sidebar-item-container{display:flex;justify-content:space-between;cursor:pointer}.sidebar-item-toggle:hover{cursor:pointer}.sidebar-item .sidebar-item-toggle .bi{font-size:.7rem;text-align:center}.sidebar-item .sidebar-item-toggle .bi-chevron-right::before{transition:transform 200ms ease}.sidebar-item .sidebar-item-toggle[aria-expanded=false] .bi-chevron-right::before{transform:none}.sidebar-item .sidebar-item-toggle[aria-expanded=true] .bi-chevron-right::before{transform:rotate(90deg)}.sidebar-item-text{width:100%}.sidebar-navigation .sidebar-divider{margin-left:0;margin-right:0;margin-top:.5rem;margin-bottom:.5rem}@media(max-width: 991.98px){.quarto-secondary-nav{display:block}.quarto-secondary-nav button.quarto-search-button{padding-right:0em;padding-left:2em}.quarto-secondary-nav button.quarto-btn-toggle{margin-left:-0.75rem;margin-right:.15rem}.quarto-secondary-nav nav.quarto-title-breadcrumbs{display:none}.quarto-secondary-nav nav.quarto-page-breadcrumbs{display:flex;align-items:center;padding-right:1em;margin-left:-0.25em}.quarto-secondary-nav nav.quarto-page-breadcrumbs a{text-decoration:none}.quarto-secondary-nav nav.quarto-page-breadcrumbs ol.breadcrumb{margin-bottom:0}}@media(min-width: 992px){.quarto-secondary-nav{display:none}}.quarto-title-breadcrumbs .breadcrumb{margin-bottom:.5em;font-size:.9rem}.quarto-title-breadcrumbs .breadcrumb li:last-of-type a{color:#6c757d}.quarto-secondary-nav .quarto-btn-toggle{color:#595959}.quarto-secondary-nav[aria-expanded=false] .quarto-btn-toggle .bi-chevron-right::before{transform:none}.quarto-secondary-nav[aria-expanded=true] .quarto-btn-toggle .bi-chevron-right::before{transform:rotate(90deg)}.quarto-secondary-nav .quarto-btn-toggle .bi-chevron-right::before{transition:transform 200ms ease}.quarto-secondary-nav{cursor:pointer}.no-decor{text-decoration:none}.quarto-secondary-nav-title{margin-top:.3em;color:#595959;padding-top:4px}.quarto-secondary-nav nav.quarto-page-breadcrumbs{color:#595959}.quarto-secondary-nav nav.quarto-page-breadcrumbs a{color:#595959}.quarto-secondary-nav nav.quarto-page-breadcrumbs a:hover{color:rgba(33,81,191,.8)}.quarto-secondary-nav nav.quarto-page-breadcrumbs .breadcrumb-item::before{color:#8c8c8c}.breadcrumb-item{line-height:1.2rem}div.sidebar-item-container{color:#595959}div.sidebar-item-container:hover,div.sidebar-item-container:focus{color:rgba(33,81,191,.8)}div.sidebar-item-container.disabled{color:rgba(89,89,89,.75)}div.sidebar-item-container .active,div.sidebar-item-container .show>.nav-link,div.sidebar-item-container .sidebar-link>code{color:#2151bf}div.sidebar.sidebar-navigation.rollup.quarto-sidebar-toggle-contents,nav.sidebar.sidebar-navigation:not(.rollup){background-color:#fff}@media(max-width: 991.98px){.sidebar-navigation .sidebar-item a,.nav-page .nav-page-text,.sidebar-navigation{font-size:1rem}.sidebar-navigation ul.sidebar-section.depth1 .sidebar-section-item{font-size:1.1rem}.sidebar-logo{display:none}.sidebar.sidebar-navigation{position:static;border-bottom:1px solid #dee2e6}.sidebar.sidebar-navigation.collapsing{position:fixed;z-index:1000}.sidebar.sidebar-navigation.show{position:fixed;z-index:1000}.sidebar.sidebar-navigation{min-height:100%}nav.quarto-secondary-nav{background-color:#fff;border-bottom:1px solid #dee2e6}.quarto-banner nav.quarto-secondary-nav{background-color:#f8f9fa;color:#545555;border-top:1px solid #dee2e6}.sidebar .sidebar-footer{visibility:visible;padding-top:1rem;position:inherit}.sidebar-tools-collapse{display:block}}#quarto-sidebar{transition:width .15s ease-in}#quarto-sidebar>*{padding-right:1em}@media(max-width: 991.98px){#quarto-sidebar .sidebar-menu-container{white-space:nowrap;min-width:225px}#quarto-sidebar.show{transition:width .15s ease-out}}@media(min-width: 992px){#quarto-sidebar{display:flex;flex-direction:column}.nav-page .nav-page-text,.sidebar-navigation .sidebar-section .sidebar-item{font-size:.875rem}.sidebar-navigation .sidebar-item{font-size:.925rem}.sidebar.sidebar-navigation{display:block;position:sticky}.sidebar-search{width:100%}.sidebar .sidebar-footer{visibility:visible}}@media(max-width: 991.98px){#quarto-sidebar-glass{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(255,255,255,0);transition:background-color .15s ease-in;z-index:-1}#quarto-sidebar-glass.collapsing{z-index:1000}#quarto-sidebar-glass.show{transition:background-color .15s ease-out;background-color:rgba(102,102,102,.4);z-index:1000}}.sidebar .sidebar-footer{padding:.5rem 1rem;align-self:flex-end;color:#6c757d;width:100%}.quarto-page-breadcrumbs .breadcrumb-item+.breadcrumb-item,.quarto-page-breadcrumbs .breadcrumb-item{padding-right:.33em;padding-left:0}.quarto-page-breadcrumbs .breadcrumb-item::before{padding-right:.33em}.quarto-sidebar-footer{font-size:.875em}.sidebar-section .bi-chevron-right{vertical-align:middle}.sidebar-section .bi-chevron-right::before{font-size:.9em}.notransition{-webkit-transition:none !important;-moz-transition:none !important;-o-transition:none !important;transition:none !important}.btn:focus:not(:focus-visible){box-shadow:none}.page-navigation{display:flex;justify-content:space-between}.nav-page{padding-bottom:.75em}.nav-page .bi{font-size:1.8rem;vertical-align:middle}.nav-page .nav-page-text{padding-left:.25em;padding-right:.25em}.nav-page a{color:#6c757d;text-decoration:none;display:flex;align-items:center}.nav-page a:hover{color:#1f4eb6}.nav-footer .toc-actions{padding-bottom:.5em;padding-top:.5em}.nav-footer .toc-actions a,.nav-footer .toc-actions a:hover{text-decoration:none}.nav-footer .toc-actions ul{display:flex;list-style:none}.nav-footer .toc-actions ul :first-child{margin-left:auto}.nav-footer .toc-actions ul :last-child{margin-right:auto}.nav-footer .toc-actions ul li{padding-right:1.5em}.nav-footer .toc-actions ul li i.bi{padding-right:.4em}.nav-footer .toc-actions ul li:last-of-type{padding-right:0}.nav-footer{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:baseline;text-align:center;padding-top:.5rem;padding-bottom:.5rem;background-color:#fff}body.nav-fixed{padding-top:64px}.nav-footer-contents{color:#6c757d;margin-top:.25rem}.nav-footer{min-height:3.5em;color:#757575}.nav-footer a{color:#757575}.nav-footer .nav-footer-left{font-size:.825em}.nav-footer .nav-footer-center{font-size:.825em}.nav-footer .nav-footer-right{font-size:.825em}.nav-footer-left .footer-items,.nav-footer-center .footer-items,.nav-footer-right .footer-items{display:inline-flex;padding-top:.3em;padding-bottom:.3em;margin-bottom:0em}.nav-footer-left .footer-items .nav-link,.nav-footer-center .footer-items .nav-link,.nav-footer-right .footer-items .nav-link{padding-left:.6em;padding-right:.6em}.nav-footer-left{flex:1 1 0px;text-align:left}.nav-footer-right{flex:1 1 0px;text-align:right}.nav-footer-center{flex:1 1 0px;min-height:3em;text-align:center}.nav-footer-center .footer-items{justify-content:center}@media(max-width: 767.98px){.nav-footer-center{margin-top:3em}}.navbar .quarto-reader-toggle.reader .quarto-reader-toggle-btn{background-color:#545555;border-radius:3px}@media(max-width: 991.98px){.quarto-reader-toggle{display:none}}.quarto-reader-toggle.reader.quarto-navigation-tool .quarto-reader-toggle-btn{background-color:#595959;border-radius:3px}.quarto-reader-toggle .quarto-reader-toggle-btn{display:inline-flex;padding-left:.2em;padding-right:.2em;margin-left:-0.2em;margin-right:-0.2em;text-align:center}.navbar .quarto-reader-toggle:not(.reader) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(84, 85, 85, 1)" class="bi bi-body-text" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M0 .5A.5.5 0 0 1 .5 0h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 0 .5Zm0 2A.5.5 0 0 1 .5 2h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm9 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-9 2A.5.5 0 0 1 .5 4h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm5 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm-12 2A.5.5 0 0 1 .5 6h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5Zm8 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-8 2A.5.5 0 0 1 .5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm-7 2a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5Z"/></svg>')}.navbar .quarto-reader-toggle.reader .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(248, 249, 250, 1)" class="bi bi-body-text" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M0 .5A.5.5 0 0 1 .5 0h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 0 .5Zm0 2A.5.5 0 0 1 .5 2h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm9 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-9 2A.5.5 0 0 1 .5 4h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm5 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm-12 2A.5.5 0 0 1 .5 6h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5Zm8 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-8 2A.5.5 0 0 1 .5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm-7 2a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5Z"/></svg>')}.sidebar-navigation .quarto-reader-toggle:not(.reader) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(89, 89, 89, 1)" class="bi bi-body-text" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M0 .5A.5.5 0 0 1 .5 0h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 0 .5Zm0 2A.5.5 0 0 1 .5 2h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm9 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-9 2A.5.5 0 0 1 .5 4h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm5 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm-12 2A.5.5 0 0 1 .5 6h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5Zm8 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-8 2A.5.5 0 0 1 .5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm-7 2a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5Z"/></svg>')}.sidebar-navigation .quarto-reader-toggle.reader .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(255, 255, 255, 1)" class="bi bi-body-text" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M0 .5A.5.5 0 0 1 .5 0h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 0 .5Zm0 2A.5.5 0 0 1 .5 2h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm9 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-9 2A.5.5 0 0 1 .5 4h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm5 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm-12 2A.5.5 0 0 1 .5 6h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5Zm8 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm-8 2A.5.5 0 0 1 .5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5Zm-7 2a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5Z"/></svg>')}#quarto-back-to-top{display:none;position:fixed;bottom:50px;background-color:#fff;border-radius:.25rem;box-shadow:0 .2rem .5rem #6c757d,0 0 .05rem #6c757d;color:#6c757d;text-decoration:none;font-size:.9em;text-align:center;left:50%;padding:.4rem .8rem;transform:translate(-50%, 0)}.aa-DetachedSearchButtonQuery{display:none}.aa-DetachedOverlay ul.aa-List,#quarto-search-results ul.aa-List{list-style:none;padding-left:0}.aa-DetachedOverlay .aa-Panel,#quarto-search-results .aa-Panel{background-color:#fff;position:absolute;z-index:2000}#quarto-search-results .aa-Panel{max-width:400px}#quarto-search input{font-size:.925rem}@media(min-width: 992px){.navbar #quarto-search{margin-left:.25rem;order:999}}.navbar.navbar-expand-sm #quarto-search,.navbar.navbar-expand-md #quarto-search{order:999}@media(min-width: 992px){.navbar .quarto-navbar-tools{margin-left:auto;order:900}}@media(max-width: 991.98px){#quarto-sidebar .sidebar-search{display:none}}#quarto-sidebar .sidebar-search .aa-Autocomplete{width:100%}.navbar .aa-Autocomplete .aa-Form{width:180px}.navbar #quarto-search.type-overlay .aa-Autocomplete{width:40px}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form{background-color:inherit;border:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form:focus-within{box-shadow:none;outline:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-InputWrapper{display:none}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-InputWrapper:focus-within{display:inherit}.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-Label svg,.navbar #quarto-search.type-overlay .aa-Autocomplete .aa-Form .aa-LoadingIndicator svg{width:26px;height:26px;color:#545555;opacity:1}.navbar #quarto-search.type-overlay .aa-Autocomplete svg.aa-SubmitIcon{width:26px;height:26px;color:#545555;opacity:1}.aa-Autocomplete .aa-Form,.aa-DetachedFormContainer .aa-Form{align-items:center;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;color:#343a40;display:flex;line-height:1em;margin:0;position:relative;width:100%}.aa-Autocomplete .aa-Form:focus-within,.aa-DetachedFormContainer .aa-Form:focus-within{box-shadow:rgba(39,128,227,.6) 0 0 0 1px;outline:currentColor none medium}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix{align-items:center;display:flex;flex-shrink:0;order:1}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-Label,.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-Label,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator{cursor:initial;flex-shrink:0;padding:0;text-align:left}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-Label svg,.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-Label svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator svg{color:#343a40;opacity:.5}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-SubmitButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-SubmitButton{appearance:none;background:none;border:0;margin:0}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator{align-items:center;display:flex;justify-content:center}.aa-Autocomplete .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperPrefix .aa-LoadingIndicator[hidden]{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapper,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper{order:3;position:relative;width:100%}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input{appearance:none;background:none;border:0;color:#343a40;font:inherit;height:calc(1.5em + .1rem + 2px);padding:0;width:100%}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::placeholder,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::placeholder{color:#343a40;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input:focus{border-color:none;box-shadow:none;outline:none}.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-decoration,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-cancel-button,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-button,.aa-Autocomplete .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-decoration,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-decoration,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-cancel-button,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-button,.aa-DetachedFormContainer .aa-Form .aa-InputWrapper .aa-Input::-webkit-search-results-decoration{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix{align-items:center;display:flex;order:4}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton{align-items:center;background:none;border:0;color:#343a40;opacity:.8;cursor:pointer;display:flex;margin:0;width:calc(1.5em + .1rem + 2px)}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:hover,.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:hover,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton:focus{color:#343a40;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton[hidden]{display:none}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-ClearButton svg,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-ClearButton svg{width:calc(1.5em + 0.75rem + calc(1px * 2))}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton{border:none;align-items:center;background:none;color:#343a40;opacity:.4;font-size:.7rem;cursor:pointer;display:none;margin:0;width:calc(1em + .1rem + 2px)}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:hover,.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:focus,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:hover,.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton:focus{color:#343a40;opacity:.8}.aa-Autocomplete .aa-Form .aa-InputWrapperSuffix .aa-CopyButton[hidden],.aa-DetachedFormContainer .aa-Form .aa-InputWrapperSuffix .aa-CopyButton[hidden]{display:none}.aa-PanelLayout:empty{display:none}.quarto-search-no-results.no-query{display:none}.aa-Source:has(.no-query){display:none}#quarto-search-results .aa-Panel{border:solid #dee2e6 1px}#quarto-search-results .aa-SourceNoResults{width:398px}.aa-DetachedOverlay .aa-Panel,#quarto-search-results .aa-Panel{max-height:65vh;overflow-y:auto;font-size:.925rem}.aa-DetachedOverlay .aa-SourceNoResults,#quarto-search-results .aa-SourceNoResults{height:60px;display:flex;justify-content:center;align-items:center}.aa-DetachedOverlay .search-error,#quarto-search-results .search-error{padding-top:10px;padding-left:20px;padding-right:20px;cursor:default}.aa-DetachedOverlay .search-error .search-error-title,#quarto-search-results .search-error .search-error-title{font-size:1.1rem;margin-bottom:.5rem}.aa-DetachedOverlay .search-error .search-error-title .search-error-icon,#quarto-search-results .search-error .search-error-title .search-error-icon{margin-right:8px}.aa-DetachedOverlay .search-error .search-error-text,#quarto-search-results .search-error .search-error-text{font-weight:300}.aa-DetachedOverlay .search-result-text,#quarto-search-results .search-result-text{font-weight:300;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2rem;max-height:2.4rem}.aa-DetachedOverlay .aa-SourceHeader .search-result-header,#quarto-search-results .aa-SourceHeader .search-result-header{font-size:.875rem;background-color:#f2f2f2;padding-left:14px;padding-bottom:4px;padding-top:4px}.aa-DetachedOverlay .aa-SourceHeader .search-result-header-no-results,#quarto-search-results .aa-SourceHeader .search-result-header-no-results{display:none}.aa-DetachedOverlay .aa-SourceFooter .algolia-search-logo,#quarto-search-results .aa-SourceFooter .algolia-search-logo{width:110px;opacity:.85;margin:8px;float:right}.aa-DetachedOverlay .search-result-section,#quarto-search-results .search-result-section{font-size:.925em}.aa-DetachedOverlay a.search-result-link,#quarto-search-results a.search-result-link{color:inherit;text-decoration:none}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item,#quarto-search-results li.aa-Item[aria-selected=true] .search-item{background-color:#2780e3}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item.search-result-more,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-section,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-text,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-title-container,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-result-text-container,#quarto-search-results li.aa-Item[aria-selected=true] .search-item.search-result-more,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-section,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-text,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-title-container,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-result-text-container{color:#fff;background-color:#2780e3}.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item mark.search-match,.aa-DetachedOverlay li.aa-Item[aria-selected=true] .search-item .search-match.mark,#quarto-search-results li.aa-Item[aria-selected=true] .search-item mark.search-match,#quarto-search-results li.aa-Item[aria-selected=true] .search-item .search-match.mark{color:#fff;background-color:#4b95e8}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item,#quarto-search-results li.aa-Item[aria-selected=false] .search-item{background-color:#fff}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item.search-result-more,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-section,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-text,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-title-container,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-result-text-container,#quarto-search-results li.aa-Item[aria-selected=false] .search-item.search-result-more,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-section,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-text,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-title-container,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-result-text-container{color:#343a40}.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item mark.search-match,.aa-DetachedOverlay li.aa-Item[aria-selected=false] .search-item .search-match.mark,#quarto-search-results li.aa-Item[aria-selected=false] .search-item mark.search-match,#quarto-search-results li.aa-Item[aria-selected=false] .search-item .search-match.mark{color:inherit;background-color:#e5effc}.aa-DetachedOverlay .aa-Item .search-result-doc:not(.document-selectable) .search-result-title-container,#quarto-search-results .aa-Item .search-result-doc:not(.document-selectable) .search-result-title-container{background-color:#fff;color:#343a40}.aa-DetachedOverlay .aa-Item .search-result-doc:not(.document-selectable) .search-result-text-container,#quarto-search-results .aa-Item .search-result-doc:not(.document-selectable) .search-result-text-container{padding-top:0px}.aa-DetachedOverlay li.aa-Item .search-result-doc.document-selectable .search-result-text-container,#quarto-search-results li.aa-Item .search-result-doc.document-selectable .search-result-text-container{margin-top:-4px}.aa-DetachedOverlay .aa-Item,#quarto-search-results .aa-Item{cursor:pointer}.aa-DetachedOverlay .aa-Item .search-item,#quarto-search-results .aa-Item .search-item{border-left:none;border-right:none;border-top:none;background-color:#fff;border-color:#dee2e6;color:#343a40}.aa-DetachedOverlay .aa-Item .search-item p,#quarto-search-results .aa-Item .search-item p{margin-top:0;margin-bottom:0}.aa-DetachedOverlay .aa-Item .search-item i.bi,#quarto-search-results .aa-Item .search-item i.bi{padding-left:8px;padding-right:8px;font-size:1.3em}.aa-DetachedOverlay .aa-Item .search-item .search-result-title,#quarto-search-results .aa-Item .search-item .search-result-title{margin-top:.3em;margin-bottom:0em}.aa-DetachedOverlay .aa-Item .search-item .search-result-crumbs,#quarto-search-results .aa-Item .search-item .search-result-crumbs{white-space:nowrap;text-overflow:ellipsis;font-size:.8em;font-weight:300;margin-right:1em}.aa-DetachedOverlay .aa-Item .search-item .search-result-crumbs:not(.search-result-crumbs-wrap),#quarto-search-results .aa-Item .search-item .search-result-crumbs:not(.search-result-crumbs-wrap){max-width:30%;margin-left:auto;margin-top:.5em;margin-bottom:.1rem}.aa-DetachedOverlay .aa-Item .search-item .search-result-crumbs.search-result-crumbs-wrap,#quarto-search-results .aa-Item .search-item .search-result-crumbs.search-result-crumbs-wrap{flex-basis:100%;margin-top:0em;margin-bottom:.2em;margin-left:37px}.aa-DetachedOverlay .aa-Item .search-result-title-container,#quarto-search-results .aa-Item .search-result-title-container{font-size:1em;display:flex;flex-wrap:wrap;padding:6px 4px 6px 4px}.aa-DetachedOverlay .aa-Item .search-result-text-container,#quarto-search-results .aa-Item .search-result-text-container{padding-bottom:8px;padding-right:8px;margin-left:42px}.aa-DetachedOverlay .aa-Item .search-result-doc-section,.aa-DetachedOverlay .aa-Item .search-result-more,#quarto-search-results .aa-Item .search-result-doc-section,#quarto-search-results .aa-Item .search-result-more{padding-top:8px;padding-bottom:8px;padding-left:44px}.aa-DetachedOverlay .aa-Item .search-result-more,#quarto-search-results .aa-Item .search-result-more{font-size:.8em;font-weight:400}.aa-DetachedOverlay .aa-Item .search-result-doc,#quarto-search-results .aa-Item .search-result-doc{border-top:1px solid #dee2e6}.aa-DetachedSearchButton{background:none;border:none}.aa-DetachedSearchButton .aa-DetachedSearchButtonPlaceholder{display:none}.navbar .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon{color:#545555}.sidebar-tools-collapse #quarto-search,.sidebar-tools-main #quarto-search{display:inline}.sidebar-tools-collapse #quarto-search .aa-Autocomplete,.sidebar-tools-main #quarto-search .aa-Autocomplete{display:inline}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton{padding-left:4px;padding-right:4px}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon{color:#595959}.sidebar-tools-collapse #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon .aa-SubmitIcon,.sidebar-tools-main #quarto-search .aa-DetachedSearchButton .aa-DetachedSearchButtonIcon .aa-SubmitIcon{margin-top:-3px}.aa-DetachedContainer{background:rgba(255,255,255,.65);width:90%;bottom:0;box-shadow:rgba(222,226,230,.6) 0 0 0 1px;outline:currentColor none medium;display:flex;flex-direction:column;left:0;margin:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:1101}.aa-DetachedContainer::after{height:32px}.aa-DetachedContainer .aa-SourceHeader{margin:var(--aa-spacing-half) 0 var(--aa-spacing-half) 2px}.aa-DetachedContainer .aa-Panel{background-color:#fff;border-radius:0;box-shadow:none;flex-grow:1;margin:0;padding:0;position:relative}.aa-DetachedContainer .aa-PanelLayout{bottom:0;box-shadow:none;left:0;margin:0;max-height:none;overflow-y:auto;position:absolute;right:0;top:0;width:100%}.aa-DetachedFormContainer{background-color:#fff;border-bottom:1px solid #dee2e6;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:.5em}.aa-DetachedCancelButton{background:none;font-size:.8em;border:0;border-radius:3px;color:#343a40;cursor:pointer;margin:0 0 0 .5em;padding:0 .5em}.aa-DetachedCancelButton:hover,.aa-DetachedCancelButton:focus{box-shadow:rgba(39,128,227,.6) 0 0 0 1px;outline:currentColor none medium}.aa-DetachedContainer--modal{bottom:inherit;height:auto;margin:0 auto;position:absolute;top:100px;border-radius:6px;max-width:850px}@media(max-width: 575.98px){.aa-DetachedContainer--modal{width:100%;top:0px;border-radius:0px;border:none}}.aa-DetachedContainer--modal .aa-PanelLayout{max-height:var(--aa-detached-modal-max-height);padding-bottom:var(--aa-spacing-half);position:static}.aa-Detached{height:100vh;overflow:hidden}.aa-DetachedOverlay{background-color:rgba(52,58,64,.4);position:fixed;left:0;right:0;top:0;margin:0;padding:0;height:100vh;z-index:1100}.quarto-dashboard.nav-fixed.dashboard-sidebar #quarto-content.quarto-dashboard-content{padding:0em}.quarto-dashboard #quarto-content.quarto-dashboard-content{padding:1em}.quarto-dashboard #quarto-content.quarto-dashboard-content>*{padding-top:0}@media(min-width: 576px){.quarto-dashboard{height:100%}}.quarto-dashboard .card.valuebox.bslib-card.bg-primary{background-color:#5397e9 !important}.quarto-dashboard .card.valuebox.bslib-card.bg-secondary{background-color:#343a40 !important}.quarto-dashboard .card.valuebox.bslib-card.bg-success{background-color:#3aa716 !important}.quarto-dashboard .card.valuebox.bslib-card.bg-info{background-color:rgba(153,84,187,.7019607843) !important}.quarto-dashboard .card.valuebox.bslib-card.bg-warning{background-color:#fa6400 !important}.quarto-dashboard .card.valuebox.bslib-card.bg-danger{background-color:rgba(255,0,57,.7019607843) !important}.quarto-dashboard .card.valuebox.bslib-card.bg-light{background-color:#f8f9fa !important}.quarto-dashboard .card.valuebox.bslib-card.bg-dark{background-color:#343a40 !important}.quarto-dashboard.dashboard-fill{display:flex;flex-direction:column}.quarto-dashboard #quarto-appendix{display:none}.quarto-dashboard #quarto-header #quarto-dashboard-header{border-top:solid 1px #dae0e5;border-bottom:solid 1px #dae0e5}.quarto-dashboard #quarto-header #quarto-dashboard-header>nav{padding-left:1em;padding-right:1em}.quarto-dashboard #quarto-header #quarto-dashboard-header>nav .navbar-brand-container{padding-left:0}.quarto-dashboard #quarto-header #quarto-dashboard-header .navbar-toggler{margin-right:0}.quarto-dashboard #quarto-header #quarto-dashboard-header .navbar-toggler-icon{height:1em;width:1em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(84, 85, 85)" class="bi bi-menu-button-wide" viewBox="0 0 16 16"><path d="M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v2A1.5 1.5 0 0 1 14.5 5h-13A1.5 1.5 0 0 1 0 3.5v-2zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-13z"/><path d="M2 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5zm10.823.323-.396-.396A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2H1zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2h14zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zm0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5z"/></svg>')}.quarto-dashboard #quarto-header #quarto-dashboard-header .navbar-brand-container{padding-right:1em}.quarto-dashboard #quarto-header #quarto-dashboard-header .navbar-title{font-size:1.1em}.quarto-dashboard #quarto-header #quarto-dashboard-header .navbar-nav{font-size:.9em}.quarto-dashboard #quarto-dashboard-header .navbar{padding:0}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-container{padding-left:1em}.quarto-dashboard #quarto-dashboard-header .navbar.slim .navbar-brand-container .nav-link,.quarto-dashboard #quarto-dashboard-header .navbar.slim .navbar-nav .nav-link{padding:.7em}.quarto-dashboard #quarto-dashboard-header .navbar .quarto-color-scheme-toggle{order:9}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-toggler{margin-left:.5em;order:10}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-nav .nav-link{padding:.5em;height:100%;display:flex;align-items:center}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-nav .active{background-color:#e0e5e9}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-brand-container{padding:.5em .5em .5em 0;display:flex;flex-direction:row;margin-right:2em;align-items:center}@media(max-width: 767.98px){.quarto-dashboard #quarto-dashboard-header .navbar .navbar-brand-container{margin-right:auto}}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-collapse{align-self:stretch}@media(min-width: 768px){.quarto-dashboard #quarto-dashboard-header .navbar .navbar-collapse{order:8}}@media(max-width: 767.98px){.quarto-dashboard #quarto-dashboard-header .navbar .navbar-collapse{order:1000;padding-bottom:.5em}}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-collapse .navbar-nav{align-self:stretch}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-title{font-size:1.25em;line-height:1.1em;display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-title .navbar-title-text{margin-right:.4em}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-title a{text-decoration:none;color:inherit}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-subtitle,.quarto-dashboard #quarto-dashboard-header .navbar .navbar-author{font-size:.9rem;margin-right:.5em}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-author{margin-left:auto}.quarto-dashboard #quarto-dashboard-header .navbar .navbar-logo{max-height:48px;min-height:30px;object-fit:cover;margin-right:1em}.quarto-dashboard #quarto-dashboard-header .navbar .quarto-dashboard-links{order:9;padding-right:1em}.quarto-dashboard #quarto-dashboard-header .navbar .quarto-dashboard-link-text{margin-left:.25em}.quarto-dashboard #quarto-dashboard-header .navbar .quarto-dashboard-link{padding-right:0em;padding-left:.7em;text-decoration:none;color:#545555}.quarto-dashboard .page-layout-custom .tab-content{padding:0;border:none}.quarto-dashboard-img-contain{height:100%;width:100%;object-fit:contain}@media(max-width: 575.98px){.quarto-dashboard .bslib-grid{grid-template-rows:minmax(1em, max-content) !important}.quarto-dashboard .sidebar-content{height:inherit}.quarto-dashboard .page-layout-custom{min-height:100vh}}.quarto-dashboard.dashboard-toolbar>.page-layout-custom,.quarto-dashboard.dashboard-sidebar>.page-layout-custom{padding:0}.quarto-dashboard .quarto-dashboard-content.quarto-dashboard-pages{padding:0}.quarto-dashboard .callout{margin-bottom:0;margin-top:0}.quarto-dashboard .html-fill-container figure{overflow:hidden}.quarto-dashboard bslib-tooltip .rounded-pill{border:solid #6c757d 1px}.quarto-dashboard bslib-tooltip .rounded-pill .svg{fill:#343a40}.quarto-dashboard .tabset .dashboard-card-no-title .nav-tabs{margin-left:0;margin-right:auto}.quarto-dashboard .tabset .tab-content{border:none}.quarto-dashboard .tabset .card-header .nav-link[role=tab]{margin-top:-6px;padding-top:6px;padding-bottom:6px}.quarto-dashboard .card.valuebox,.quarto-dashboard .card.bslib-value-box{min-height:3rem}.quarto-dashboard .card.valuebox .card-body,.quarto-dashboard .card.bslib-value-box .card-body{padding:0}.quarto-dashboard .bslib-value-box .value-box-value{font-size:clamp(.1em,15cqw,5em)}.quarto-dashboard .bslib-value-box .value-box-showcase .bi{font-size:clamp(.1em,max(18cqw,5.2cqh),5em);text-align:center;height:1em}.quarto-dashboard .bslib-value-box .value-box-showcase .bi::before{vertical-align:1em}.quarto-dashboard .bslib-value-box .value-box-area{margin-top:auto;margin-bottom:auto}.quarto-dashboard .card figure.quarto-float{display:flex;flex-direction:column;align-items:center}.quarto-dashboard .dashboard-scrolling{padding:1em}.quarto-dashboard .full-height{height:100%}.quarto-dashboard .showcase-bottom .value-box-grid{display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto;grid-template-areas:"top" "bottom"}.quarto-dashboard .showcase-bottom .value-box-grid .value-box-showcase{grid-area:bottom;padding:0;margin:0}.quarto-dashboard .showcase-bottom .value-box-grid .value-box-showcase i.bi{font-size:4rem}.quarto-dashboard .showcase-bottom .value-box-grid .value-box-area{grid-area:top}.quarto-dashboard .tab-content{margin-bottom:0}.quarto-dashboard .bslib-card .bslib-navs-card-title{justify-content:stretch;align-items:end}.quarto-dashboard .card-header{display:flex;flex-wrap:wrap;justify-content:space-between}.quarto-dashboard .card-header .card-title{display:flex;flex-direction:column;justify-content:center;margin-bottom:0}.quarto-dashboard .tabset .card-toolbar{margin-bottom:1em}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout{border:none;gap:var(--bslib-spacer, 1rem)}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout>.main{padding:0}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout>.sidebar{border-radius:.25rem;border:1px solid rgba(0,0,0,.175)}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout>.collapse-toggle{display:none}@media(max-width: 767.98px){.quarto-dashboard .bslib-grid>.bslib-sidebar-layout{grid-template-columns:1fr;grid-template-rows:max-content 1fr}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout>.main{grid-column:1;grid-row:2}.quarto-dashboard .bslib-grid>.bslib-sidebar-layout .sidebar{grid-column:1;grid-row:1}}.quarto-dashboard .sidebar-right .sidebar{padding-left:2.5em}.quarto-dashboard .sidebar-right .collapse-toggle{left:2px}.quarto-dashboard .quarto-dashboard .sidebar-right button.collapse-toggle:not(.transitioning){left:unset}.quarto-dashboard aside.sidebar{padding-left:1em;padding-right:1em;background-color:rgba(52,58,64,.25);color:#343a40}.quarto-dashboard .bslib-sidebar-layout>div.main{padding:.7em}.quarto-dashboard .bslib-sidebar-layout button.collapse-toggle{margin-top:.3em}.quarto-dashboard .bslib-sidebar-layout .collapse-toggle{top:0}.quarto-dashboard .bslib-sidebar-layout.sidebar-collapsed:not(.transitioning):not(.sidebar-right) .collapse-toggle{left:2px}.quarto-dashboard .sidebar>section>.h3:first-of-type{margin-top:0em}.quarto-dashboard .sidebar .h3,.quarto-dashboard .sidebar .h4,.quarto-dashboard .sidebar .h5,.quarto-dashboard .sidebar .h6{margin-top:.5em}.quarto-dashboard .sidebar form{flex-direction:column;align-items:start;margin-bottom:1em}.quarto-dashboard .sidebar form div[class*=oi-][class$=-input]{flex-direction:column}.quarto-dashboard .sidebar form[class*=oi-][class$=-toggle]{flex-direction:row-reverse;align-items:center;justify-content:start}.quarto-dashboard .sidebar form input[type=range]{margin-top:.5em;margin-right:.8em;margin-left:1em}.quarto-dashboard .sidebar label{width:fit-content}.quarto-dashboard .sidebar .card-body{margin-bottom:2em}.quarto-dashboard .sidebar .shiny-input-container{margin-bottom:1em}.quarto-dashboard .sidebar .shiny-options-group{margin-top:0}.quarto-dashboard .sidebar .control-label{margin-bottom:.3em}.quarto-dashboard .card .card-body .quarto-layout-row{align-items:stretch}.quarto-dashboard .toolbar{font-size:.9em;display:flex;flex-direction:row;border-top:solid 1px #bcbfc0;padding:1em;flex-wrap:wrap;background-color:rgba(52,58,64,.25)}.quarto-dashboard .toolbar .cell-output-display{display:flex}.quarto-dashboard .toolbar .shiny-input-container{padding-bottom:.5em;margin-bottom:.5em;width:inherit}.quarto-dashboard .toolbar .shiny-input-container>.checkbox:first-child{margin-top:6px}.quarto-dashboard .toolbar>*:last-child{margin-right:0}.quarto-dashboard .toolbar>*>*{margin-right:1em;align-items:baseline}.quarto-dashboard .toolbar>*>*>a{text-decoration:none;margin-top:auto;margin-bottom:auto}.quarto-dashboard .toolbar .shiny-input-container{padding-bottom:0;margin-bottom:0}.quarto-dashboard .toolbar .shiny-input-container>*{flex-shrink:0;flex-grow:0}.quarto-dashboard .toolbar .form-group.shiny-input-container:not([role=group])>label{margin-bottom:0}.quarto-dashboard .toolbar .shiny-input-container.no-baseline{align-items:start;padding-top:6px}.quarto-dashboard .toolbar .shiny-input-container{display:flex;align-items:baseline}.quarto-dashboard .toolbar .shiny-input-container label{padding-right:.4em}.quarto-dashboard .toolbar .shiny-input-container .bslib-input-switch{margin-top:6px}.quarto-dashboard .toolbar input[type=text]{line-height:1;width:inherit}.quarto-dashboard .toolbar .input-daterange{width:inherit}.quarto-dashboard .toolbar .input-daterange input[type=text]{height:2.4em;width:10em}.quarto-dashboard .toolbar .input-daterange .input-group-addon{height:auto;padding:0;margin-left:-5px !important;margin-right:-5px}.quarto-dashboard .toolbar .input-daterange .input-group-addon .input-group-text{padding-top:0;padding-bottom:0;height:100%}.quarto-dashboard .toolbar span.irs.irs--shiny{width:10em}.quarto-dashboard .toolbar span.irs.irs--shiny .irs-line{top:9px}.quarto-dashboard .toolbar span.irs.irs--shiny .irs-min,.quarto-dashboard .toolbar span.irs.irs--shiny .irs-max,.quarto-dashboard .toolbar span.irs.irs--shiny .irs-from,.quarto-dashboard .toolbar span.irs.irs--shiny .irs-to,.quarto-dashboard .toolbar span.irs.irs--shiny .irs-single{top:20px}.quarto-dashboard .toolbar span.irs.irs--shiny .irs-bar{top:8px}.quarto-dashboard .toolbar span.irs.irs--shiny .irs-handle{top:0px}.quarto-dashboard .toolbar .shiny-input-checkboxgroup>label{margin-top:6px}.quarto-dashboard .toolbar .shiny-input-checkboxgroup>.shiny-options-group{margin-top:0;align-items:baseline}.quarto-dashboard .toolbar .shiny-input-radiogroup>label{margin-top:6px}.quarto-dashboard .toolbar .shiny-input-radiogroup>.shiny-options-group{align-items:baseline;margin-top:0}.quarto-dashboard .toolbar .shiny-input-radiogroup>.shiny-options-group>.radio{margin-right:.3em}.quarto-dashboard .toolbar .form-select{padding-top:.2em;padding-bottom:.2em}.quarto-dashboard .toolbar .shiny-input-select{min-width:6em}.quarto-dashboard .toolbar div.checkbox{margin-bottom:0px}.quarto-dashboard .toolbar>.checkbox:first-child{margin-top:6px}.quarto-dashboard .toolbar form{width:fit-content}.quarto-dashboard .toolbar form label{padding-top:.2em;padding-bottom:.2em;width:fit-content}.quarto-dashboard .toolbar form input[type=date]{width:fit-content}.quarto-dashboard .toolbar form input[type=color]{width:3em}.quarto-dashboard .toolbar form button{padding:.4em}.quarto-dashboard .toolbar form select{width:fit-content}.quarto-dashboard .toolbar>*{font-size:.9em;flex-grow:0}.quarto-dashboard .toolbar .shiny-input-container label{margin-bottom:1px}.quarto-dashboard .toolbar-bottom{margin-top:1em;margin-bottom:0 !important;order:2}.quarto-dashboard .quarto-dashboard-content>.dashboard-toolbar-container>.toolbar-content>.tab-content>.tab-pane>*:not(.bslib-sidebar-layout){padding:1em}.quarto-dashboard .quarto-dashboard-content>.dashboard-toolbar-container>.toolbar-content>*:not(.tab-content){padding:1em}.quarto-dashboard .quarto-dashboard-content>.tab-content>.dashboard-page>.dashboard-toolbar-container>.toolbar-content,.quarto-dashboard .quarto-dashboard-content>.tab-content>.dashboard-page:not(.dashboard-sidebar-container)>*:not(.dashboard-toolbar-container){padding:1em}.quarto-dashboard .toolbar-content{padding:0}.quarto-dashboard .quarto-dashboard-content.quarto-dashboard-pages .tab-pane>.dashboard-toolbar-container .toolbar{border-radius:0;margin-bottom:0}.quarto-dashboard .dashboard-toolbar-container.toolbar-toplevel .toolbar{border-bottom:1px solid rgba(0,0,0,.175)}.quarto-dashboard .dashboard-toolbar-container.toolbar-toplevel .toolbar-bottom{margin-top:0}.quarto-dashboard .dashboard-toolbar-container:not(.toolbar-toplevel) .toolbar{margin-bottom:1em;border-top:none;border-radius:.25rem;border:1px solid rgba(0,0,0,.175)}.quarto-dashboard .vega-embed.has-actions details{width:1.7em;height:2em;position:absolute !important;top:0;right:0}.quarto-dashboard .dashboard-toolbar-container{padding:0}.quarto-dashboard .card .card-header p:last-child,.quarto-dashboard .card .card-footer p:last-child{margin-bottom:0}.quarto-dashboard .card .card-body>.h4:first-child{margin-top:0}.quarto-dashboard .card .card-body{z-index:1000}@media(max-width: 767.98px){.quarto-dashboard .card .card-body .itables div.dataTables_wrapper div.dataTables_length,.quarto-dashboard .card .card-body .itables div.dataTables_wrapper div.dataTables_info,.quarto-dashboard .card .card-body .itables div.dataTables_wrapper div.dataTables_paginate{text-align:initial}.quarto-dashboard .card .card-body .itables div.dataTables_wrapper div.dataTables_filter{text-align:right}.quarto-dashboard .card .card-body .itables div.dataTables_wrapper div.dataTables_paginate ul.pagination{justify-content:initial}}.quarto-dashboard .card .card-body .itables .dataTables_wrapper{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding-top:0}.quarto-dashboard .card .card-body .itables .dataTables_wrapper table{flex-shrink:0}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dt-buttons{margin-bottom:.5em;margin-left:auto;width:fit-content;float:right}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dt-buttons.btn-group{background:#fff;border:none}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dt-buttons .btn-secondary{background-color:#fff;background-image:none;border:solid #dee2e6 1px;padding:.2em .7em}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dt-buttons .btn span{font-size:.8em;color:#343a40}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_info{margin-left:.5em;margin-bottom:.5em;padding-top:0}@media(min-width: 768px){.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_info{font-size:.875em}}@media(max-width: 767.98px){.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_info{font-size:.8em}}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_filter{margin-bottom:.5em;font-size:.875em}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_filter input[type=search]{padding:1px 5px 1px 5px;font-size:.875em}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_length{flex-basis:1 1 50%;margin-bottom:.5em;font-size:.875em}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_length select{padding:.4em 3em .4em .5em;font-size:.875em;margin-left:.2em;margin-right:.2em}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_paginate{flex-shrink:0}@media(min-width: 768px){.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_paginate{margin-left:auto}}.quarto-dashboard .card .card-body .itables .dataTables_wrapper .dataTables_paginate ul.pagination .paginate_button .page-link{font-size:.8em}.quarto-dashboard .card .card-footer{font-size:.9em}.quarto-dashboard .card .card-toolbar{display:flex;flex-grow:1;flex-direction:row;width:100%;flex-wrap:wrap}.quarto-dashboard .card .card-toolbar>*{font-size:.8em;flex-grow:0}.quarto-dashboard .card .card-toolbar>.card-title{font-size:1em;flex-grow:1;align-self:flex-start;margin-top:.1em}.quarto-dashboard .card .card-toolbar .cell-output-display{display:flex}.quarto-dashboard .card .card-toolbar .shiny-input-container{padding-bottom:.5em;margin-bottom:.5em;width:inherit}.quarto-dashboard .card .card-toolbar .shiny-input-container>.checkbox:first-child{margin-top:6px}.quarto-dashboard .card .card-toolbar>*:last-child{margin-right:0}.quarto-dashboard .card .card-toolbar>*>*{margin-right:1em;align-items:baseline}.quarto-dashboard .card .card-toolbar>*>*>a{text-decoration:none;margin-top:auto;margin-bottom:auto}.quarto-dashboard .card .card-toolbar form{width:fit-content}.quarto-dashboard .card .card-toolbar form label{padding-top:.2em;padding-bottom:.2em;width:fit-content}.quarto-dashboard .card .card-toolbar form input[type=date]{width:fit-content}.quarto-dashboard .card .card-toolbar form input[type=color]{width:3em}.quarto-dashboard .card .card-toolbar form button{padding:.4em}.quarto-dashboard .card .card-toolbar form select{width:fit-content}.quarto-dashboard .card .card-toolbar .cell-output-display{display:flex}.quarto-dashboard .card .card-toolbar .shiny-input-container{padding-bottom:.5em;margin-bottom:.5em;width:inherit}.quarto-dashboard .card .card-toolbar .shiny-input-container>.checkbox:first-child{margin-top:6px}.quarto-dashboard .card .card-toolbar>*:last-child{margin-right:0}.quarto-dashboard .card .card-toolbar>*>*{margin-right:1em;align-items:baseline}.quarto-dashboard .card .card-toolbar>*>*>a{text-decoration:none;margin-top:auto;margin-bottom:auto}.quarto-dashboard .card .card-toolbar .shiny-input-container{padding-bottom:0;margin-bottom:0}.quarto-dashboard .card .card-toolbar .shiny-input-container>*{flex-shrink:0;flex-grow:0}.quarto-dashboard .card .card-toolbar .form-group.shiny-input-container:not([role=group])>label{margin-bottom:0}.quarto-dashboard .card .card-toolbar .shiny-input-container.no-baseline{align-items:start;padding-top:6px}.quarto-dashboard .card .card-toolbar .shiny-input-container{display:flex;align-items:baseline}.quarto-dashboard .card .card-toolbar .shiny-input-container label{padding-right:.4em}.quarto-dashboard .card .card-toolbar .shiny-input-container .bslib-input-switch{margin-top:6px}.quarto-dashboard .card .card-toolbar input[type=text]{line-height:1;width:inherit}.quarto-dashboard .card .card-toolbar .input-daterange{width:inherit}.quarto-dashboard .card .card-toolbar .input-daterange input[type=text]{height:2.4em;width:10em}.quarto-dashboard .card .card-toolbar .input-daterange .input-group-addon{height:auto;padding:0;margin-left:-5px !important;margin-right:-5px}.quarto-dashboard .card .card-toolbar .input-daterange .input-group-addon .input-group-text{padding-top:0;padding-bottom:0;height:100%}.quarto-dashboard .card .card-toolbar span.irs.irs--shiny{width:10em}.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-line{top:9px}.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-min,.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-max,.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-from,.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-to,.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-single{top:20px}.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-bar{top:8px}.quarto-dashboard .card .card-toolbar span.irs.irs--shiny .irs-handle{top:0px}.quarto-dashboard .card .card-toolbar .shiny-input-checkboxgroup>label{margin-top:6px}.quarto-dashboard .card .card-toolbar .shiny-input-checkboxgroup>.shiny-options-group{margin-top:0;align-items:baseline}.quarto-dashboard .card .card-toolbar .shiny-input-radiogroup>label{margin-top:6px}.quarto-dashboard .card .card-toolbar .shiny-input-radiogroup>.shiny-options-group{align-items:baseline;margin-top:0}.quarto-dashboard .card .card-toolbar .shiny-input-radiogroup>.shiny-options-group>.radio{margin-right:.3em}.quarto-dashboard .card .card-toolbar .form-select{padding-top:.2em;padding-bottom:.2em}.quarto-dashboard .card .card-toolbar .shiny-input-select{min-width:6em}.quarto-dashboard .card .card-toolbar div.checkbox{margin-bottom:0px}.quarto-dashboard .card .card-toolbar>.checkbox:first-child{margin-top:6px}.quarto-dashboard .card-body>table>thead{border-top:none}.quarto-dashboard .card-body>.table>:not(caption)>*>*{background-color:#fff}.quarto-listing{padding-bottom:1em}.listing-pagination{padding-top:.5em}ul.pagination{float:right;padding-left:8px;padding-top:.5em}ul.pagination li{padding-right:.75em}ul.pagination li.disabled a,ul.pagination li.active a{color:#fff;text-decoration:none}ul.pagination li:last-of-type{padding-right:0}.listing-actions-group{display:flex}.quarto-listing-filter{margin-bottom:1em;width:200px;margin-left:auto}.quarto-listing-sort{margin-bottom:1em;margin-right:auto;width:auto}.quarto-listing-sort .input-group-text{font-size:.8em}.input-group-text{border-right:none}.quarto-listing-sort select.form-select{font-size:.8em}.listing-no-matching{text-align:center;padding-top:2em;padding-bottom:3em;font-size:1em}#quarto-margin-sidebar .quarto-listing-category{padding-top:0;font-size:1rem}#quarto-margin-sidebar .quarto-listing-category-title{cursor:pointer;font-weight:600;font-size:1rem}.quarto-listing-category .category{cursor:pointer}.quarto-listing-category .category.active{font-weight:600}.quarto-listing-category.category-cloud{display:flex;flex-wrap:wrap;align-items:baseline}.quarto-listing-category.category-cloud .category{padding-right:5px}.quarto-listing-category.category-cloud .category-cloud-1{font-size:.75em}.quarto-listing-category.category-cloud .category-cloud-2{font-size:.95em}.quarto-listing-category.category-cloud .category-cloud-3{font-size:1.15em}.quarto-listing-category.category-cloud .category-cloud-4{font-size:1.35em}.quarto-listing-category.category-cloud .category-cloud-5{font-size:1.55em}.quarto-listing-category.category-cloud .category-cloud-6{font-size:1.75em}.quarto-listing-category.category-cloud .category-cloud-7{font-size:1.95em}.quarto-listing-category.category-cloud .category-cloud-8{font-size:2.15em}.quarto-listing-category.category-cloud .category-cloud-9{font-size:2.35em}.quarto-listing-category.category-cloud .category-cloud-10{font-size:2.55em}.quarto-listing-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-1{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-2{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-3{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-3{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-4{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-4{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-5{grid-template-columns:repeat(5, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-5{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-5{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-6{grid-template-columns:repeat(6, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-6{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-6{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-7{grid-template-columns:repeat(7, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-7{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-7{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-8{grid-template-columns:repeat(8, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-8{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-8{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-9{grid-template-columns:repeat(9, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-9{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-9{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-10{grid-template-columns:repeat(10, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-10{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-10{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-11{grid-template-columns:repeat(11, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-11{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-11{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-cols-12{grid-template-columns:repeat(12, minmax(0, 1fr));gap:1.5em}@media(max-width: 767.98px){.quarto-listing-cols-12{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5em}}@media(max-width: 575.98px){.quarto-listing-cols-12{grid-template-columns:minmax(0, 1fr);gap:1.5em}}.quarto-listing-grid{gap:1.5em}.quarto-grid-item.borderless{border:none}.quarto-grid-item.borderless .listing-categories .listing-category:last-of-type,.quarto-grid-item.borderless .listing-categories .listing-category:first-of-type{padding-left:0}.quarto-grid-item.borderless .listing-categories .listing-category{border:0}.quarto-grid-link{text-decoration:none;color:inherit}.quarto-grid-link:hover{text-decoration:none;color:inherit}.quarto-grid-item h5.title,.quarto-grid-item .title.h5{margin-top:0;margin-bottom:0}.quarto-grid-item .card-footer{display:flex;justify-content:space-between;font-size:.8em}.quarto-grid-item .card-footer p{margin-bottom:0}.quarto-grid-item p.card-img-top{margin-bottom:0}.quarto-grid-item p.card-img-top>img{object-fit:cover}.quarto-grid-item .card-other-values{margin-top:.5em;font-size:.8em}.quarto-grid-item .card-other-values tr{margin-bottom:.5em}.quarto-grid-item .card-other-values tr>td:first-of-type{font-weight:600;padding-right:1em;padding-left:1em;vertical-align:top}.quarto-grid-item div.post-contents{display:flex;flex-direction:column;text-decoration:none;height:100%}.quarto-grid-item .listing-item-img-placeholder{background-color:rgba(52,58,64,.25);flex-shrink:0}.quarto-grid-item .card-attribution{padding-top:1em;display:flex;gap:1em;text-transform:uppercase;color:#6c757d;font-weight:500;flex-grow:10;align-items:flex-end}.quarto-grid-item .description{padding-bottom:1em}.quarto-grid-item .card-attribution .date{align-self:flex-end}.quarto-grid-item .card-attribution.justify{justify-content:space-between}.quarto-grid-item .card-attribution.start{justify-content:flex-start}.quarto-grid-item .card-attribution.end{justify-content:flex-end}.quarto-grid-item .card-title{margin-bottom:.1em}.quarto-grid-item .card-subtitle{padding-top:.25em}.quarto-grid-item .card-text{font-size:.9em}.quarto-grid-item .listing-reading-time{padding-bottom:.25em}.quarto-grid-item .card-text-small{font-size:.8em}.quarto-grid-item .card-subtitle.subtitle{font-size:.9em;font-weight:600;padding-bottom:.5em}.quarto-grid-item .listing-categories{display:flex;flex-wrap:wrap;padding-bottom:5px}.quarto-grid-item .listing-categories .listing-category{color:#6c757d;border:solid 1px #dee2e6;border-radius:.25rem;text-transform:uppercase;font-size:.65em;padding-left:.5em;padding-right:.5em;padding-top:.15em;padding-bottom:.15em;cursor:pointer;margin-right:4px;margin-bottom:4px}.quarto-grid-item.card-right{text-align:right}.quarto-grid-item.card-right .listing-categories{justify-content:flex-end}.quarto-grid-item.card-left{text-align:left}.quarto-grid-item.card-center{text-align:center}.quarto-grid-item.card-center .listing-description{text-align:justify}.quarto-grid-item.card-center .listing-categories{justify-content:center}table.quarto-listing-table td.image{padding:0px}table.quarto-listing-table td.image img{width:100%;max-width:50px;object-fit:contain}table.quarto-listing-table a{text-decoration:none;word-break:keep-all}table.quarto-listing-table th a{color:inherit}table.quarto-listing-table th a.asc:after{margin-bottom:-2px;margin-left:5px;display:inline-block;height:1rem;width:1rem;background-repeat:no-repeat;background-size:1rem 1rem;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-sort-up" viewBox="0 0 16 16"><path d="M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"/></svg>');content:""}table.quarto-listing-table th a.desc:after{margin-bottom:-2px;margin-left:5px;display:inline-block;height:1rem;width:1rem;background-repeat:no-repeat;background-size:1rem 1rem;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-sort-down" viewBox="0 0 16 16"><path d="M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"/></svg>');content:""}table.quarto-listing-table.table-hover td{cursor:pointer}.quarto-post.image-left{flex-direction:row}.quarto-post.image-right{flex-direction:row-reverse}@media(max-width: 767.98px){.quarto-post.image-right,.quarto-post.image-left{gap:0em;flex-direction:column}.quarto-post .metadata{padding-bottom:1em;order:2}.quarto-post .body{order:1}.quarto-post .thumbnail{order:3}}.list.quarto-listing-default div:last-of-type{border-bottom:none}@media(min-width: 992px){.quarto-listing-container-default{margin-right:2em}}div.quarto-post{display:flex;gap:2em;margin-bottom:1.5em;border-bottom:1px solid #dee2e6}@media(max-width: 767.98px){div.quarto-post{padding-bottom:1em}}div.quarto-post .metadata{flex-basis:20%;flex-grow:0;margin-top:.2em;flex-shrink:10}div.quarto-post .thumbnail{flex-basis:30%;flex-grow:0;flex-shrink:0}div.quarto-post .thumbnail img{margin-top:.4em;width:100%;object-fit:cover}div.quarto-post .body{flex-basis:45%;flex-grow:1;flex-shrink:0}div.quarto-post .body h3.listing-title,div.quarto-post .body .listing-title.h3{margin-top:0px;margin-bottom:0px;border-bottom:none}div.quarto-post .body .listing-subtitle{font-size:.875em;margin-bottom:.5em;margin-top:.2em}div.quarto-post .body .description{font-size:.9em}div.quarto-post .body pre code{white-space:pre-wrap}div.quarto-post a{color:#343a40;text-decoration:none}div.quarto-post .metadata{display:flex;flex-direction:column;font-size:.8em;font-family:"Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";flex-basis:33%}div.quarto-post .listing-categories{display:flex;flex-wrap:wrap;padding-bottom:5px}div.quarto-post .listing-categories .listing-category{color:#6c757d;border:solid 1px #dee2e6;border-radius:.25rem;text-transform:uppercase;font-size:.65em;padding-left:.5em;padding-right:.5em;padding-top:.15em;padding-bottom:.15em;cursor:pointer;margin-right:4px;margin-bottom:4px}div.quarto-post .listing-description{margin-bottom:.5em}div.quarto-about-jolla{display:flex !important;flex-direction:column;align-items:center;margin-top:10%;padding-bottom:1em}div.quarto-about-jolla .about-image{object-fit:cover;margin-left:auto;margin-right:auto;margin-bottom:1.5em}div.quarto-about-jolla img.round{border-radius:50%}div.quarto-about-jolla img.rounded{border-radius:10px}div.quarto-about-jolla .quarto-title h1.title,div.quarto-about-jolla .quarto-title .title.h1{text-align:center}div.quarto-about-jolla .quarto-title .description{text-align:center}div.quarto-about-jolla h2,div.quarto-about-jolla .h2{border-bottom:none}div.quarto-about-jolla .about-sep{width:60%}div.quarto-about-jolla main{text-align:center}div.quarto-about-jolla .about-links{display:flex}@media(min-width: 992px){div.quarto-about-jolla .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-jolla .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-jolla .about-link{color:#626d78;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-jolla .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-jolla .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-jolla .about-link:hover{color:#2761e3}div.quarto-about-jolla .about-link i.bi{margin-right:.15em}div.quarto-about-solana{display:flex !important;flex-direction:column;padding-top:3em !important;padding-bottom:1em}div.quarto-about-solana .about-entity{display:flex !important;align-items:start;justify-content:space-between}@media(min-width: 992px){div.quarto-about-solana .about-entity{flex-direction:row}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity{flex-direction:column-reverse;align-items:center;text-align:center}}div.quarto-about-solana .about-entity .entity-contents{display:flex;flex-direction:column}@media(max-width: 767.98px){div.quarto-about-solana .about-entity .entity-contents{width:100%}}div.quarto-about-solana .about-entity .about-image{object-fit:cover}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-image{margin-bottom:1.5em}}div.quarto-about-solana .about-entity img.round{border-radius:50%}div.quarto-about-solana .about-entity img.rounded{border-radius:10px}div.quarto-about-solana .about-entity .about-links{display:flex;justify-content:left;padding-bottom:1.2em}@media(min-width: 992px){div.quarto-about-solana .about-entity .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-solana .about-entity .about-link{color:#626d78;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-solana .about-entity .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-solana .about-entity .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-solana .about-entity .about-link:hover{color:#2761e3}div.quarto-about-solana .about-entity .about-link i.bi{margin-right:.15em}div.quarto-about-solana .about-contents{padding-right:1.5em;flex-basis:0;flex-grow:1}div.quarto-about-solana .about-contents main.content{margin-top:0}div.quarto-about-solana .about-contents h2,div.quarto-about-solana .about-contents .h2{border-bottom:none}div.quarto-about-trestles{display:flex !important;flex-direction:row;padding-top:3em !important;padding-bottom:1em}@media(max-width: 991.98px){div.quarto-about-trestles{flex-direction:column;padding-top:0em !important}}div.quarto-about-trestles .about-entity{display:flex !important;flex-direction:column;align-items:center;text-align:center;padding-right:1em}@media(min-width: 992px){div.quarto-about-trestles .about-entity{flex:0 0 42%}}div.quarto-about-trestles .about-entity .about-image{object-fit:cover;margin-bottom:1.5em}div.quarto-about-trestles .about-entity img.round{border-radius:50%}div.quarto-about-trestles .about-entity img.rounded{border-radius:10px}div.quarto-about-trestles .about-entity .about-links{display:flex;justify-content:center}@media(min-width: 992px){div.quarto-about-trestles .about-entity .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-trestles .about-entity .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-trestles .about-entity .about-link{color:#626d78;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-trestles .about-entity .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-trestles .about-entity .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-trestles .about-entity .about-link:hover{color:#2761e3}div.quarto-about-trestles .about-entity .about-link i.bi{margin-right:.15em}div.quarto-about-trestles .about-contents{flex-basis:0;flex-grow:1}div.quarto-about-trestles .about-contents h2,div.quarto-about-trestles .about-contents .h2{border-bottom:none}@media(min-width: 992px){div.quarto-about-trestles .about-contents{border-left:solid 1px #dee2e6;padding-left:1.5em}}div.quarto-about-trestles .about-contents main.content{margin-top:0}div.quarto-about-marquee{padding-bottom:1em}div.quarto-about-marquee .about-contents{display:flex;flex-direction:column}div.quarto-about-marquee .about-image{max-height:550px;margin-bottom:1.5em;object-fit:cover}div.quarto-about-marquee img.round{border-radius:50%}div.quarto-about-marquee img.rounded{border-radius:10px}div.quarto-about-marquee h2,div.quarto-about-marquee .h2{border-bottom:none}div.quarto-about-marquee .about-links{display:flex;justify-content:center;padding-top:1.5em}@media(min-width: 992px){div.quarto-about-marquee .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-marquee .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-marquee .about-link{color:#626d78;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-marquee .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-marquee .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-marquee .about-link:hover{color:#2761e3}div.quarto-about-marquee .about-link i.bi{margin-right:.15em}@media(min-width: 992px){div.quarto-about-marquee .about-link{border:none}}div.quarto-about-broadside{display:flex;flex-direction:column;padding-bottom:1em}div.quarto-about-broadside .about-main{display:flex !important;padding-top:0 !important}@media(min-width: 992px){div.quarto-about-broadside .about-main{flex-direction:row;align-items:flex-start}}@media(max-width: 991.98px){div.quarto-about-broadside .about-main{flex-direction:column}}@media(max-width: 991.98px){div.quarto-about-broadside .about-main .about-entity{flex-shrink:0;width:100%;height:450px;margin-bottom:1.5em;background-size:cover;background-repeat:no-repeat}}@media(min-width: 992px){div.quarto-about-broadside .about-main .about-entity{flex:0 10 50%;margin-right:1.5em;width:100%;height:100%;background-size:100%;background-repeat:no-repeat}}div.quarto-about-broadside .about-main .about-contents{padding-top:14px;flex:0 0 50%}div.quarto-about-broadside h2,div.quarto-about-broadside .h2{border-bottom:none}div.quarto-about-broadside .about-sep{margin-top:1.5em;width:60%;align-self:center}div.quarto-about-broadside .about-links{display:flex;justify-content:center;column-gap:20px;padding-top:1.5em}@media(min-width: 992px){div.quarto-about-broadside .about-links{flex-direction:row;column-gap:.8em;row-gap:15px;flex-wrap:wrap}}@media(max-width: 991.98px){div.quarto-about-broadside .about-links{flex-direction:column;row-gap:1em;width:100%;padding-bottom:1.5em}}div.quarto-about-broadside .about-link{color:#626d78;text-decoration:none;border:solid 1px}@media(min-width: 992px){div.quarto-about-broadside .about-link{font-size:.8em;padding:.25em .5em;border-radius:4px}}@media(max-width: 991.98px){div.quarto-about-broadside .about-link{font-size:1.1em;padding:.5em .5em;text-align:center;border-radius:6px}}div.quarto-about-broadside .about-link:hover{color:#2761e3}div.quarto-about-broadside .about-link i.bi{margin-right:.15em}@media(min-width: 992px){div.quarto-about-broadside .about-link{border:none}}.tippy-box[data-theme~=quarto]{background-color:#fff;border:solid 1px #dee2e6;border-radius:.25rem;color:#343a40;font-size:.875rem}.tippy-box[data-theme~=quarto]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=quarto]>.tippy-arrow:after,.tippy-box[data-theme~=quarto]>.tippy-svg-arrow:after{content:"";position:absolute;z-index:-1}.tippy-box[data-theme~=quarto]>.tippy-arrow:after{border-color:rgba(0,0,0,0);border-style:solid}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-6px}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-6px}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-6px}.tippy-box[data-placement^=left]>.tippy-arrow:before{right:-6px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-arrow:after{border-top-color:#dee2e6;border-width:7px 7px 0;top:17px;left:1px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-svg-arrow>svg{top:16px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-svg-arrow:after{top:17px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff;bottom:16px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-arrow:after{border-bottom-color:#dee2e6;border-width:0 7px 7px;bottom:17px;left:1px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-svg-arrow>svg{bottom:15px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-svg-arrow:after{bottom:17px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-arrow:after{border-left-color:#dee2e6;border-width:7px 0 7px 7px;left:17px;top:1px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-svg-arrow>svg{left:11px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-svg-arrow:after{left:12px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff;right:16px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-arrow:after{border-width:7px 7px 7px 0;right:17px;top:1px;border-right-color:#dee2e6}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-svg-arrow>svg{right:11px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-svg-arrow:after{right:12px}.tippy-box[data-theme~=quarto]>.tippy-svg-arrow{fill:#343a40}.tippy-box[data-theme~=quarto]>.tippy-svg-arrow:after{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCA2czEuNzk2LS4wMTMgNC42Ny0zLjYxNUM1Ljg1MS45IDYuOTMuMDA2IDggMGMxLjA3LS4wMDYgMi4xNDguODg3IDMuMzQzIDIuMzg1QzE0LjIzMyA2LjAwNSAxNiA2IDE2IDZIMHoiIGZpbGw9InJnYmEoMCwgOCwgMTYsIDAuMikiLz48L3N2Zz4=);background-size:16px 6px;width:16px;height:6px}.top-right{position:absolute;top:1em;right:1em}.visually-hidden{border:0;clip:rect(0 0 0 0);height:auto;margin:0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none !important}.zindex-bottom{z-index:-1 !important}figure.figure{display:block}.quarto-layout-panel{margin-bottom:1em}.quarto-layout-panel>figure{width:100%}.quarto-layout-panel>figure>figcaption,.quarto-layout-panel>.panel-caption{margin-top:10pt}.quarto-layout-panel>.table-caption{margin-top:0px}.table-caption p{margin-bottom:.5em}.quarto-layout-row{display:flex;flex-direction:row;align-items:flex-start}.quarto-layout-valign-top{align-items:flex-start}.quarto-layout-valign-bottom{align-items:flex-end}.quarto-layout-valign-center{align-items:center}.quarto-layout-cell{position:relative;margin-right:20px}.quarto-layout-cell:last-child{margin-right:0}.quarto-layout-cell figure,.quarto-layout-cell>p{margin:.2em}.quarto-layout-cell img{max-width:100%}.quarto-layout-cell .html-widget{width:100% !important}.quarto-layout-cell div figure p{margin:0}.quarto-layout-cell figure{display:block;margin-inline-start:0;margin-inline-end:0}.quarto-layout-cell table{display:inline-table}.quarto-layout-cell-subref figcaption,figure .quarto-layout-row figure figcaption{text-align:center;font-style:italic}.quarto-figure{position:relative;margin-bottom:1em}.quarto-figure>figure{width:100%;margin-bottom:0}.quarto-figure-left>figure>p,.quarto-figure-left>figure>div{text-align:left}.quarto-figure-center>figure>p,.quarto-figure-center>figure>div{text-align:center}.quarto-figure-right>figure>p,.quarto-figure-right>figure>div{text-align:right}.quarto-figure>figure>div.cell-annotation,.quarto-figure>figure>div code{text-align:left}figure>p:empty{display:none}figure>p:first-child{margin-top:0;margin-bottom:0}figure>figcaption.quarto-float-caption-bottom{margin-bottom:.5em}figure>figcaption.quarto-float-caption-top{margin-top:.5em}div[id^=tbl-]{position:relative}.quarto-figure>.anchorjs-link{position:absolute;top:.6em;right:.5em}div[id^=tbl-]>.anchorjs-link{position:absolute;top:.7em;right:.3em}.quarto-figure:hover>.anchorjs-link,div[id^=tbl-]:hover>.anchorjs-link,h2:hover>.anchorjs-link,.h2:hover>.anchorjs-link,h3:hover>.anchorjs-link,.h3:hover>.anchorjs-link,h4:hover>.anchorjs-link,.h4:hover>.anchorjs-link,h5:hover>.anchorjs-link,.h5:hover>.anchorjs-link,h6:hover>.anchorjs-link,.h6:hover>.anchorjs-link,.reveal-anchorjs-link>.anchorjs-link{opacity:1}#title-block-header{margin-block-end:1rem;position:relative;margin-top:-1px}#title-block-header .abstract{margin-block-start:1rem}#title-block-header .abstract .abstract-title{font-weight:600}#title-block-header a{text-decoration:none}#title-block-header .author,#title-block-header .date,#title-block-header .doi{margin-block-end:.2rem}#title-block-header .quarto-title-block>div{display:flex}#title-block-header .quarto-title-block>div>h1,#title-block-header .quarto-title-block>div>.h1{flex-grow:1}#title-block-header .quarto-title-block>div>button{flex-shrink:0;height:2.25rem;margin-top:0}@media(min-width: 992px){#title-block-header .quarto-title-block>div>button{margin-top:5px}}tr.header>th>p:last-of-type{margin-bottom:0px}table,table.table{margin-top:.5rem;margin-bottom:.5rem}caption,.table-caption{padding-top:.5rem;padding-bottom:.5rem;text-align:center}figure.quarto-float-tbl figcaption.quarto-float-caption-top{margin-top:.5rem;margin-bottom:.25rem;text-align:center}figure.quarto-float-tbl figcaption.quarto-float-caption-bottom{padding-top:.25rem;margin-bottom:.5rem;text-align:center}.utterances{max-width:none;margin-left:-8px}iframe{margin-bottom:1em}details{margin-bottom:1em}details[show]{margin-bottom:0}details>summary{color:#6c757d}details>summary>p:only-child{display:inline}pre.sourceCode,code.sourceCode{position:relative}p code:not(.sourceCode){white-space:pre-wrap}code{white-space:pre}@media print{code{white-space:pre-wrap}}pre>code{display:block}pre>code.sourceCode{white-space:pre}pre>code.sourceCode>span>a:first-child::before{text-decoration:none}pre.code-overflow-wrap>code.sourceCode{white-space:pre-wrap}pre.code-overflow-scroll>code.sourceCode{white-space:pre}code a:any-link{color:inherit;text-decoration:none}code a:hover{color:inherit;text-decoration:underline}ul.task-list{padding-left:1em}[data-tippy-root]{display:inline-block}.tippy-content .footnote-back{display:none}.tippy-content{overflow-x:auto}.quarto-embedded-source-code{display:none}.quarto-unresolved-ref{font-weight:600}.quarto-cover-image{max-width:35%;float:right;margin-left:30px}.cell-output-display .widget-subarea{margin-bottom:1em}.cell-output-display:not(.no-overflow-x),.knitsql-table:not(.no-overflow-x){overflow-x:auto}.panel-input{margin-bottom:1em}.panel-input>div,.panel-input>div>div{display:inline-block;vertical-align:top;padding-right:12px}.panel-input>p:last-child{margin-bottom:0}.layout-sidebar{margin-bottom:1em}.layout-sidebar .tab-content{border:none}.tab-content>.page-columns.active{display:grid}div.sourceCode>iframe{width:100%;height:300px;margin-bottom:-0.5em}a{text-underline-offset:3px}div.ansi-escaped-output{font-family:monospace;display:block}/*!
-*
-* ansi colors from IPython notebook's
-*
-* we also add `bright-[color]-` synonyms for the `-[color]-intense` classes since
-* that seems to be what ansi_up emits
-*
-*/.ansi-black-fg{color:#3e424d}.ansi-black-bg{background-color:#3e424d}.ansi-black-intense-black,.ansi-bright-black-fg{color:#282c36}.ansi-black-intense-black,.ansi-bright-black-bg{background-color:#282c36}.ansi-red-fg{color:#e75c58}.ansi-red-bg{background-color:#e75c58}.ansi-red-intense-red,.ansi-bright-red-fg{color:#b22b31}.ansi-red-intense-red,.ansi-bright-red-bg{background-color:#b22b31}.ansi-green-fg{color:#00a250}.ansi-green-bg{background-color:#00a250}.ansi-green-intense-green,.ansi-bright-green-fg{color:#007427}.ansi-green-intense-green,.ansi-bright-green-bg{background-color:#007427}.ansi-yellow-fg{color:#ddb62b}.ansi-yellow-bg{background-color:#ddb62b}.ansi-yellow-intense-yellow,.ansi-bright-yellow-fg{color:#b27d12}.ansi-yellow-intense-yellow,.ansi-bright-yellow-bg{background-color:#b27d12}.ansi-blue-fg{color:#208ffb}.ansi-blue-bg{background-color:#208ffb}.ansi-blue-intense-blue,.ansi-bright-blue-fg{color:#0065ca}.ansi-blue-intense-blue,.ansi-bright-blue-bg{background-color:#0065ca}.ansi-magenta-fg{color:#d160c4}.ansi-magenta-bg{background-color:#d160c4}.ansi-magenta-intense-magenta,.ansi-bright-magenta-fg{color:#a03196}.ansi-magenta-intense-magenta,.ansi-bright-magenta-bg{background-color:#a03196}.ansi-cyan-fg{color:#60c6c8}.ansi-cyan-bg{background-color:#60c6c8}.ansi-cyan-intense-cyan,.ansi-bright-cyan-fg{color:#258f8f}.ansi-cyan-intense-cyan,.ansi-bright-cyan-bg{background-color:#258f8f}.ansi-white-fg{color:#c5c1b4}.ansi-white-bg{background-color:#c5c1b4}.ansi-white-intense-white,.ansi-bright-white-fg{color:#a1a6b2}.ansi-white-intense-white,.ansi-bright-white-bg{background-color:#a1a6b2}.ansi-default-inverse-fg{color:#fff}.ansi-default-inverse-bg{background-color:#000}.ansi-bold{font-weight:bold}.ansi-underline{text-decoration:underline}:root{--quarto-body-bg: #fff;--quarto-body-color: #343a40;--quarto-text-muted: #6c757d;--quarto-border-color: #dee2e6;--quarto-border-width: 1px;--quarto-border-radius: 0.25rem}table.gt_table{color:var(--quarto-body-color);font-size:1em;width:100%;background-color:rgba(0,0,0,0);border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_column_spanner_outer{color:var(--quarto-body-color);background-color:rgba(0,0,0,0);border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_col_heading{color:var(--quarto-body-color);font-weight:bold;background-color:rgba(0,0,0,0)}table.gt_table thead.gt_col_headings{border-bottom:1px solid currentColor;border-top-width:inherit;border-top-color:var(--quarto-border-color)}table.gt_table thead.gt_col_headings:not(:first-child){border-top-width:1px;border-top-color:var(--quarto-border-color)}table.gt_table td.gt_row{border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-width:0px}table.gt_table tbody.gt_table_body{border-top-width:1px;border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-color:currentColor}div.columns{display:initial;gap:initial}div.column{display:inline-block;overflow-x:initial;vertical-align:top;width:50%}.code-annotation-tip-content{word-wrap:break-word}.code-annotation-container-hidden{display:none !important}dl.code-annotation-container-grid{display:grid;grid-template-columns:min-content auto}dl.code-annotation-container-grid dt{grid-column:1}dl.code-annotation-container-grid dd{grid-column:2}pre.sourceCode.code-annotation-code{padding-right:0}code.sourceCode .code-annotation-anchor{z-index:100;position:relative;float:right;background-color:rgba(0,0,0,0)}input[type=checkbox]{margin-right:.5ch}:root{--mermaid-bg-color: #fff;--mermaid-edge-color: #343a40;--mermaid-node-fg-color: #343a40;--mermaid-fg-color: #343a40;--mermaid-fg-color--lighter: #4b545c;--mermaid-fg-color--lightest: #626d78;--mermaid-font-family: Source Sans Pro, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;--mermaid-label-bg-color: #fff;--mermaid-label-fg-color: #2780e3;--mermaid-node-bg-color: rgba(39, 128, 227, 0.1);--mermaid-node-fg-color: #343a40}@media print{:root{font-size:11pt}#quarto-sidebar,#TOC,.nav-page{display:none}.page-columns .content{grid-column-start:page-start}.fixed-top{position:relative}.panel-caption,.figure-caption,figcaption{color:#666}}.code-copy-button{position:absolute;top:0;right:0;border:0;margin-top:5px;margin-right:5px;background-color:rgba(0,0,0,0);z-index:3}.code-copy-button:focus{outline:none}.code-copy-button-tooltip{font-size:.75em}pre.sourceCode:hover>.code-copy-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(94, 94, 94)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>');background-repeat:no-repeat;background-size:1rem 1rem}pre.sourceCode:hover>.code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(94, 94, 94)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}pre.sourceCode:hover>.code-copy-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(71, 88, 171)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>')}pre.sourceCode:hover>.code-copy-button-checked:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(71, 88, 171)"  viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}main ol ol,main ul ul,main ol ul,main ul ol{margin-bottom:1em}ul>li:not(:has(>p))>ul,ol>li:not(:has(>p))>ul,ul>li:not(:has(>p))>ol,ol>li:not(:has(>p))>ol{margin-bottom:0}ul>li:not(:has(>p))>ul>li:has(>p),ol>li:not(:has(>p))>ul>li:has(>p),ul>li:not(:has(>p))>ol>li:has(>p),ol>li:not(:has(>p))>ol>li:has(>p){margin-top:1rem}body{margin:0}main.page-columns>header>h1.title,main.page-columns>header>.title.h1{margin-bottom:0}@media(min-width: 992px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] 35px [page-end-inset page-end] 5fr [screen-end-inset] 1.5em}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(850px - 3em)) [body-content-end] 3em [body-end] 50px [body-end-outset] minmax(0px, 250px) [page-end-inset] minmax(50px, 100px) [page-end] 1fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(1000px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(50px, 100px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(1000px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc(1000px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(50px, 150px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 991.98px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc(1250px - 3em)) [body-content-end body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1.5em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(1000px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(800px - 3em)) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 4fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 4fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc(750px - 3em)) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 4fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 767.98px){body .page-columns,body.fullcontent:not(.floating):not(.docked) .page-columns,body.slimcontent:not(.floating):not(.docked) .page-columns,body.docked .page-columns,body.docked.slimcontent .page-columns,body.docked.fullcontent .page-columns,body.floating .page-columns,body.floating.slimcontent .page-columns,body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}nav[role=doc-toc]{display:none}}body,.page-row-navigation{grid-template-rows:[page-top] max-content [contents-top] max-content [contents-bottom] max-content [page-bottom]}.page-rows-contents{grid-template-rows:[content-top] minmax(max-content, 1fr) [content-bottom] minmax(60px, max-content) [page-bottom]}.page-full{grid-column:screen-start/screen-end !important}.page-columns>*{grid-column:body-content-start/body-content-end}.page-columns.column-page>*{grid-column:page-start/page-end}.page-columns.column-page-left .page-columns.page-full>*,.page-columns.column-page-left>*{grid-column:page-start/body-content-end}.page-columns.column-page-right .page-columns.page-full>*,.page-columns.column-page-right>*{grid-column:body-content-start/page-end}.page-rows{grid-auto-rows:auto}.header{grid-column:screen-start/screen-end;grid-row:page-top/contents-top}#quarto-content{padding:0;grid-column:screen-start/screen-end;grid-row:contents-top/contents-bottom}body.floating .sidebar.sidebar-navigation{grid-column:page-start/body-start;grid-row:content-top/page-bottom}body.docked .sidebar.sidebar-navigation{grid-column:screen-start/body-start;grid-row:content-top/page-bottom}.sidebar.toc-left{grid-column:page-start/body-start;grid-row:content-top/page-bottom}.sidebar.margin-sidebar{grid-column:body-end/page-end;grid-row:content-top/page-bottom}.page-columns .content{grid-column:body-content-start/body-content-end;grid-row:content-top/content-bottom;align-content:flex-start}.page-columns .page-navigation{grid-column:body-content-start/body-content-end;grid-row:content-bottom/page-bottom}.page-columns .footer{grid-column:screen-start/screen-end;grid-row:contents-bottom/page-bottom}.page-columns .column-body{grid-column:body-content-start/body-content-end}.page-columns .column-body-fullbleed{grid-column:body-start/body-end}.page-columns .column-body-outset{grid-column:body-start-outset/body-end-outset;z-index:998;opacity:.999}.page-columns .column-body-outset table{background:#fff}.page-columns .column-body-outset-left{grid-column:body-start-outset/body-content-end;z-index:998;opacity:.999}.page-columns .column-body-outset-left table{background:#fff}.page-columns .column-body-outset-right{grid-column:body-content-start/body-end-outset;z-index:998;opacity:.999}.page-columns .column-body-outset-right table{background:#fff}.page-columns .column-page{grid-column:page-start/page-end;z-index:998;opacity:.999}.page-columns .column-page table{background:#fff}.page-columns .column-page-inset{grid-column:page-start-inset/page-end-inset;z-index:998;opacity:.999}.page-columns .column-page-inset table{background:#fff}.page-columns .column-page-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;opacity:.999}.page-columns .column-page-inset-left table{background:#fff}.page-columns .column-page-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;opacity:.999}.page-columns .column-page-inset-right figcaption table{background:#fff}.page-columns .column-page-left{grid-column:page-start/body-content-end;z-index:998;opacity:.999}.page-columns .column-page-left table{background:#fff}.page-columns .column-page-right{grid-column:body-content-start/page-end;z-index:998;opacity:.999}.page-columns .column-page-right figcaption table{background:#fff}#quarto-content.page-columns #quarto-margin-sidebar,#quarto-content.page-columns #quarto-sidebar{z-index:1}@media(max-width: 991.98px){#quarto-content.page-columns #quarto-margin-sidebar.collapse,#quarto-content.page-columns #quarto-sidebar.collapse,#quarto-content.page-columns #quarto-margin-sidebar.collapsing,#quarto-content.page-columns #quarto-sidebar.collapsing{z-index:1055}}#quarto-content.page-columns main.column-page,#quarto-content.page-columns main.column-page-right,#quarto-content.page-columns main.column-page-left{z-index:0}.page-columns .column-screen-inset{grid-column:screen-start-inset/screen-end-inset;z-index:998;opacity:.999}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:screen-start-inset/body-content-end;z-index:998;opacity:.999}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/screen-end-inset;z-index:998;opacity:.999}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:screen-start/screen-end;z-index:998;opacity:.999}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:screen-start/body-content-end;z-index:998;opacity:.999}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/screen-end;z-index:998;opacity:.999}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:screen-start/screen-end;padding:1em;background:#f8f9fa;z-index:998;opacity:.999;margin-bottom:1em}.zindex-content{z-index:998;opacity:.999}.zindex-modal{z-index:1055;opacity:.999}.zindex-over-content{z-index:999;opacity:.999}img.img-fluid.column-screen,img.img-fluid.column-screen-inset-shaded,img.img-fluid.column-screen-inset,img.img-fluid.column-screen-inset-left,img.img-fluid.column-screen-inset-right,img.img-fluid.column-screen-left,img.img-fluid.column-screen-right{width:100%}@media(min-width: 992px){.margin-caption,div.aside,aside:not(.footnotes):not(.sidebar),.column-margin{grid-column:body-end/page-end !important;z-index:998}.column-sidebar{grid-column:page-start/body-start !important;z-index:998}.column-leftmargin{grid-column:screen-start-inset/body-start !important;z-index:998}.no-row-height{height:1em;overflow:visible}}@media(max-width: 991.98px){.margin-caption,div.aside,aside:not(.footnotes):not(.sidebar),.column-margin{grid-column:body-end/page-end !important;z-index:998}.no-row-height{height:1em;overflow:visible}.page-columns.page-full{overflow:visible}.page-columns.toc-left .margin-caption,.page-columns.toc-left div.aside,.page-columns.toc-left aside:not(.footnotes):not(.sidebar),.page-columns.toc-left .column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;opacity:.999}.page-columns.toc-left .no-row-height{height:initial;overflow:initial}}@media(max-width: 767.98px){.margin-caption,div.aside,aside:not(.footnotes):not(.sidebar),.column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;opacity:.999}.no-row-height{height:initial;overflow:initial}#quarto-margin-sidebar{display:none}#quarto-sidebar-toc-left{display:none}.hidden-sm{display:none}}.panel-grid{display:grid;grid-template-rows:repeat(1, 1fr);grid-template-columns:repeat(24, 1fr);gap:1em}.panel-grid .g-col-1{grid-column:auto/span 1}.panel-grid .g-col-2{grid-column:auto/span 2}.panel-grid .g-col-3{grid-column:auto/span 3}.panel-grid .g-col-4{grid-column:auto/span 4}.panel-grid .g-col-5{grid-column:auto/span 5}.panel-grid .g-col-6{grid-column:auto/span 6}.panel-grid .g-col-7{grid-column:auto/span 7}.panel-grid .g-col-8{grid-column:auto/span 8}.panel-grid .g-col-9{grid-column:auto/span 9}.panel-grid .g-col-10{grid-column:auto/span 10}.panel-grid .g-col-11{grid-column:auto/span 11}.panel-grid .g-col-12{grid-column:auto/span 12}.panel-grid .g-col-13{grid-column:auto/span 13}.panel-grid .g-col-14{grid-column:auto/span 14}.panel-grid .g-col-15{grid-column:auto/span 15}.panel-grid .g-col-16{grid-column:auto/span 16}.panel-grid .g-col-17{grid-column:auto/span 17}.panel-grid .g-col-18{grid-column:auto/span 18}.panel-grid .g-col-19{grid-column:auto/span 19}.panel-grid .g-col-20{grid-column:auto/span 20}.panel-grid .g-col-21{grid-column:auto/span 21}.panel-grid .g-col-22{grid-column:auto/span 22}.panel-grid .g-col-23{grid-column:auto/span 23}.panel-grid .g-col-24{grid-column:auto/span 24}.panel-grid .g-start-1{grid-column-start:1}.panel-grid .g-start-2{grid-column-start:2}.panel-grid .g-start-3{grid-column-start:3}.panel-grid .g-start-4{grid-column-start:4}.panel-grid .g-start-5{grid-column-start:5}.panel-grid .g-start-6{grid-column-start:6}.panel-grid .g-start-7{grid-column-start:7}.panel-grid .g-start-8{grid-column-start:8}.panel-grid .g-start-9{grid-column-start:9}.panel-grid .g-start-10{grid-column-start:10}.panel-grid .g-start-11{grid-column-start:11}.panel-grid .g-start-12{grid-column-start:12}.panel-grid .g-start-13{grid-column-start:13}.panel-grid .g-start-14{grid-column-start:14}.panel-grid .g-start-15{grid-column-start:15}.panel-grid .g-start-16{grid-column-start:16}.panel-grid .g-start-17{grid-column-start:17}.panel-grid .g-start-18{grid-column-start:18}.panel-grid .g-start-19{grid-column-start:19}.panel-grid .g-start-20{grid-column-start:20}.panel-grid .g-start-21{grid-column-start:21}.panel-grid .g-start-22{grid-column-start:22}.panel-grid .g-start-23{grid-column-start:23}@media(min-width: 576px){.panel-grid .g-col-sm-1{grid-column:auto/span 1}.panel-grid .g-col-sm-2{grid-column:auto/span 2}.panel-grid .g-col-sm-3{grid-column:auto/span 3}.panel-grid .g-col-sm-4{grid-column:auto/span 4}.panel-grid .g-col-sm-5{grid-column:auto/span 5}.panel-grid .g-col-sm-6{grid-column:auto/span 6}.panel-grid .g-col-sm-7{grid-column:auto/span 7}.panel-grid .g-col-sm-8{grid-column:auto/span 8}.panel-grid .g-col-sm-9{grid-column:auto/span 9}.panel-grid .g-col-sm-10{grid-column:auto/span 10}.panel-grid .g-col-sm-11{grid-column:auto/span 11}.panel-grid .g-col-sm-12{grid-column:auto/span 12}.panel-grid .g-col-sm-13{grid-column:auto/span 13}.panel-grid .g-col-sm-14{grid-column:auto/span 14}.panel-grid .g-col-sm-15{grid-column:auto/span 15}.panel-grid .g-col-sm-16{grid-column:auto/span 16}.panel-grid .g-col-sm-17{grid-column:auto/span 17}.panel-grid .g-col-sm-18{grid-column:auto/span 18}.panel-grid .g-col-sm-19{grid-column:auto/span 19}.panel-grid .g-col-sm-20{grid-column:auto/span 20}.panel-grid .g-col-sm-21{grid-column:auto/span 21}.panel-grid .g-col-sm-22{grid-column:auto/span 22}.panel-grid .g-col-sm-23{grid-column:auto/span 23}.panel-grid .g-col-sm-24{grid-column:auto/span 24}.panel-grid .g-start-sm-1{grid-column-start:1}.panel-grid .g-start-sm-2{grid-column-start:2}.panel-grid .g-start-sm-3{grid-column-start:3}.panel-grid .g-start-sm-4{grid-column-start:4}.panel-grid .g-start-sm-5{grid-column-start:5}.panel-grid .g-start-sm-6{grid-column-start:6}.panel-grid .g-start-sm-7{grid-column-start:7}.panel-grid .g-start-sm-8{grid-column-start:8}.panel-grid .g-start-sm-9{grid-column-start:9}.panel-grid .g-start-sm-10{grid-column-start:10}.panel-grid .g-start-sm-11{grid-column-start:11}.panel-grid .g-start-sm-12{grid-column-start:12}.panel-grid .g-start-sm-13{grid-column-start:13}.panel-grid .g-start-sm-14{grid-column-start:14}.panel-grid .g-start-sm-15{grid-column-start:15}.panel-grid .g-start-sm-16{grid-column-start:16}.panel-grid .g-start-sm-17{grid-column-start:17}.panel-grid .g-start-sm-18{grid-column-start:18}.panel-grid .g-start-sm-19{grid-column-start:19}.panel-grid .g-start-sm-20{grid-column-start:20}.panel-grid .g-start-sm-21{grid-column-start:21}.panel-grid .g-start-sm-22{grid-column-start:22}.panel-grid .g-start-sm-23{grid-column-start:23}}@media(min-width: 768px){.panel-grid .g-col-md-1{grid-column:auto/span 1}.panel-grid .g-col-md-2{grid-column:auto/span 2}.panel-grid .g-col-md-3{grid-column:auto/span 3}.panel-grid .g-col-md-4{grid-column:auto/span 4}.panel-grid .g-col-md-5{grid-column:auto/span 5}.panel-grid .g-col-md-6{grid-column:auto/span 6}.panel-grid .g-col-md-7{grid-column:auto/span 7}.panel-grid .g-col-md-8{grid-column:auto/span 8}.panel-grid .g-col-md-9{grid-column:auto/span 9}.panel-grid .g-col-md-10{grid-column:auto/span 10}.panel-grid .g-col-md-11{grid-column:auto/span 11}.panel-grid .g-col-md-12{grid-column:auto/span 12}.panel-grid .g-col-md-13{grid-column:auto/span 13}.panel-grid .g-col-md-14{grid-column:auto/span 14}.panel-grid .g-col-md-15{grid-column:auto/span 15}.panel-grid .g-col-md-16{grid-column:auto/span 16}.panel-grid .g-col-md-17{grid-column:auto/span 17}.panel-grid .g-col-md-18{grid-column:auto/span 18}.panel-grid .g-col-md-19{grid-column:auto/span 19}.panel-grid .g-col-md-20{grid-column:auto/span 20}.panel-grid .g-col-md-21{grid-column:auto/span 21}.panel-grid .g-col-md-22{grid-column:auto/span 22}.panel-grid .g-col-md-23{grid-column:auto/span 23}.panel-grid .g-col-md-24{grid-column:auto/span 24}.panel-grid .g-start-md-1{grid-column-start:1}.panel-grid .g-start-md-2{grid-column-start:2}.panel-grid .g-start-md-3{grid-column-start:3}.panel-grid .g-start-md-4{grid-column-start:4}.panel-grid .g-start-md-5{grid-column-start:5}.panel-grid .g-start-md-6{grid-column-start:6}.panel-grid .g-start-md-7{grid-column-start:7}.panel-grid .g-start-md-8{grid-column-start:8}.panel-grid .g-start-md-9{grid-column-start:9}.panel-grid .g-start-md-10{grid-column-start:10}.panel-grid .g-start-md-11{grid-column-start:11}.panel-grid .g-start-md-12{grid-column-start:12}.panel-grid .g-start-md-13{grid-column-start:13}.panel-grid .g-start-md-14{grid-column-start:14}.panel-grid .g-start-md-15{grid-column-start:15}.panel-grid .g-start-md-16{grid-column-start:16}.panel-grid .g-start-md-17{grid-column-start:17}.panel-grid .g-start-md-18{grid-column-start:18}.panel-grid .g-start-md-19{grid-column-start:19}.panel-grid .g-start-md-20{grid-column-start:20}.panel-grid .g-start-md-21{grid-column-start:21}.panel-grid .g-start-md-22{grid-column-start:22}.panel-grid .g-start-md-23{grid-column-start:23}}@media(min-width: 992px){.panel-grid .g-col-lg-1{grid-column:auto/span 1}.panel-grid .g-col-lg-2{grid-column:auto/span 2}.panel-grid .g-col-lg-3{grid-column:auto/span 3}.panel-grid .g-col-lg-4{grid-column:auto/span 4}.panel-grid .g-col-lg-5{grid-column:auto/span 5}.panel-grid .g-col-lg-6{grid-column:auto/span 6}.panel-grid .g-col-lg-7{grid-column:auto/span 7}.panel-grid .g-col-lg-8{grid-column:auto/span 8}.panel-grid .g-col-lg-9{grid-column:auto/span 9}.panel-grid .g-col-lg-10{grid-column:auto/span 10}.panel-grid .g-col-lg-11{grid-column:auto/span 11}.panel-grid .g-col-lg-12{grid-column:auto/span 12}.panel-grid .g-col-lg-13{grid-column:auto/span 13}.panel-grid .g-col-lg-14{grid-column:auto/span 14}.panel-grid .g-col-lg-15{grid-column:auto/span 15}.panel-grid .g-col-lg-16{grid-column:auto/span 16}.panel-grid .g-col-lg-17{grid-column:auto/span 17}.panel-grid .g-col-lg-18{grid-column:auto/span 18}.panel-grid .g-col-lg-19{grid-column:auto/span 19}.panel-grid .g-col-lg-20{grid-column:auto/span 20}.panel-grid .g-col-lg-21{grid-column:auto/span 21}.panel-grid .g-col-lg-22{grid-column:auto/span 22}.panel-grid .g-col-lg-23{grid-column:auto/span 23}.panel-grid .g-col-lg-24{grid-column:auto/span 24}.panel-grid .g-start-lg-1{grid-column-start:1}.panel-grid .g-start-lg-2{grid-column-start:2}.panel-grid .g-start-lg-3{grid-column-start:3}.panel-grid .g-start-lg-4{grid-column-start:4}.panel-grid .g-start-lg-5{grid-column-start:5}.panel-grid .g-start-lg-6{grid-column-start:6}.panel-grid .g-start-lg-7{grid-column-start:7}.panel-grid .g-start-lg-8{grid-column-start:8}.panel-grid .g-start-lg-9{grid-column-start:9}.panel-grid .g-start-lg-10{grid-column-start:10}.panel-grid .g-start-lg-11{grid-column-start:11}.panel-grid .g-start-lg-12{grid-column-start:12}.panel-grid .g-start-lg-13{grid-column-start:13}.panel-grid .g-start-lg-14{grid-column-start:14}.panel-grid .g-start-lg-15{grid-column-start:15}.panel-grid .g-start-lg-16{grid-column-start:16}.panel-grid .g-start-lg-17{grid-column-start:17}.panel-grid .g-start-lg-18{grid-column-start:18}.panel-grid .g-start-lg-19{grid-column-start:19}.panel-grid .g-start-lg-20{grid-column-start:20}.panel-grid .g-start-lg-21{grid-column-start:21}.panel-grid .g-start-lg-22{grid-column-start:22}.panel-grid .g-start-lg-23{grid-column-start:23}}@media(min-width: 1200px){.panel-grid .g-col-xl-1{grid-column:auto/span 1}.panel-grid .g-col-xl-2{grid-column:auto/span 2}.panel-grid .g-col-xl-3{grid-column:auto/span 3}.panel-grid .g-col-xl-4{grid-column:auto/span 4}.panel-grid .g-col-xl-5{grid-column:auto/span 5}.panel-grid .g-col-xl-6{grid-column:auto/span 6}.panel-grid .g-col-xl-7{grid-column:auto/span 7}.panel-grid .g-col-xl-8{grid-column:auto/span 8}.panel-grid .g-col-xl-9{grid-column:auto/span 9}.panel-grid .g-col-xl-10{grid-column:auto/span 10}.panel-grid .g-col-xl-11{grid-column:auto/span 11}.panel-grid .g-col-xl-12{grid-column:auto/span 12}.panel-grid .g-col-xl-13{grid-column:auto/span 13}.panel-grid .g-col-xl-14{grid-column:auto/span 14}.panel-grid .g-col-xl-15{grid-column:auto/span 15}.panel-grid .g-col-xl-16{grid-column:auto/span 16}.panel-grid .g-col-xl-17{grid-column:auto/span 17}.panel-grid .g-col-xl-18{grid-column:auto/span 18}.panel-grid .g-col-xl-19{grid-column:auto/span 19}.panel-grid .g-col-xl-20{grid-column:auto/span 20}.panel-grid .g-col-xl-21{grid-column:auto/span 21}.panel-grid .g-col-xl-22{grid-column:auto/span 22}.panel-grid .g-col-xl-23{grid-column:auto/span 23}.panel-grid .g-col-xl-24{grid-column:auto/span 24}.panel-grid .g-start-xl-1{grid-column-start:1}.panel-grid .g-start-xl-2{grid-column-start:2}.panel-grid .g-start-xl-3{grid-column-start:3}.panel-grid .g-start-xl-4{grid-column-start:4}.panel-grid .g-start-xl-5{grid-column-start:5}.panel-grid .g-start-xl-6{grid-column-start:6}.panel-grid .g-start-xl-7{grid-column-start:7}.panel-grid .g-start-xl-8{grid-column-start:8}.panel-grid .g-start-xl-9{grid-column-start:9}.panel-grid .g-start-xl-10{grid-column-start:10}.panel-grid .g-start-xl-11{grid-column-start:11}.panel-grid .g-start-xl-12{grid-column-start:12}.panel-grid .g-start-xl-13{grid-column-start:13}.panel-grid .g-start-xl-14{grid-column-start:14}.panel-grid .g-start-xl-15{grid-column-start:15}.panel-grid .g-start-xl-16{grid-column-start:16}.panel-grid .g-start-xl-17{grid-column-start:17}.panel-grid .g-start-xl-18{grid-column-start:18}.panel-grid .g-start-xl-19{grid-column-start:19}.panel-grid .g-start-xl-20{grid-column-start:20}.panel-grid .g-start-xl-21{grid-column-start:21}.panel-grid .g-start-xl-22{grid-column-start:22}.panel-grid .g-start-xl-23{grid-column-start:23}}@media(min-width: 1400px){.panel-grid .g-col-xxl-1{grid-column:auto/span 1}.panel-grid .g-col-xxl-2{grid-column:auto/span 2}.panel-grid .g-col-xxl-3{grid-column:auto/span 3}.panel-grid .g-col-xxl-4{grid-column:auto/span 4}.panel-grid .g-col-xxl-5{grid-column:auto/span 5}.panel-grid .g-col-xxl-6{grid-column:auto/span 6}.panel-grid .g-col-xxl-7{grid-column:auto/span 7}.panel-grid .g-col-xxl-8{grid-column:auto/span 8}.panel-grid .g-col-xxl-9{grid-column:auto/span 9}.panel-grid .g-col-xxl-10{grid-column:auto/span 10}.panel-grid .g-col-xxl-11{grid-column:auto/span 11}.panel-grid .g-col-xxl-12{grid-column:auto/span 12}.panel-grid .g-col-xxl-13{grid-column:auto/span 13}.panel-grid .g-col-xxl-14{grid-column:auto/span 14}.panel-grid .g-col-xxl-15{grid-column:auto/span 15}.panel-grid .g-col-xxl-16{grid-column:auto/span 16}.panel-grid .g-col-xxl-17{grid-column:auto/span 17}.panel-grid .g-col-xxl-18{grid-column:auto/span 18}.panel-grid .g-col-xxl-19{grid-column:auto/span 19}.panel-grid .g-col-xxl-20{grid-column:auto/span 20}.panel-grid .g-col-xxl-21{grid-column:auto/span 21}.panel-grid .g-col-xxl-22{grid-column:auto/span 22}.panel-grid .g-col-xxl-23{grid-column:auto/span 23}.panel-grid .g-col-xxl-24{grid-column:auto/span 24}.panel-grid .g-start-xxl-1{grid-column-start:1}.panel-grid .g-start-xxl-2{grid-column-start:2}.panel-grid .g-start-xxl-3{grid-column-start:3}.panel-grid .g-start-xxl-4{grid-column-start:4}.panel-grid .g-start-xxl-5{grid-column-start:5}.panel-grid .g-start-xxl-6{grid-column-start:6}.panel-grid .g-start-xxl-7{grid-column-start:7}.panel-grid .g-start-xxl-8{grid-column-start:8}.panel-grid .g-start-xxl-9{grid-column-start:9}.panel-grid .g-start-xxl-10{grid-column-start:10}.panel-grid .g-start-xxl-11{grid-column-start:11}.panel-grid .g-start-xxl-12{grid-column-start:12}.panel-grid .g-start-xxl-13{grid-column-start:13}.panel-grid .g-start-xxl-14{grid-column-start:14}.panel-grid .g-start-xxl-15{grid-column-start:15}.panel-grid .g-start-xxl-16{grid-column-start:16}.panel-grid .g-start-xxl-17{grid-column-start:17}.panel-grid .g-start-xxl-18{grid-column-start:18}.panel-grid .g-start-xxl-19{grid-column-start:19}.panel-grid .g-start-xxl-20{grid-column-start:20}.panel-grid .g-start-xxl-21{grid-column-start:21}.panel-grid .g-start-xxl-22{grid-column-start:22}.panel-grid .g-start-xxl-23{grid-column-start:23}}main{margin-top:1em;margin-bottom:1em}h1,.h1,h2,.h2{color:inherit;margin-top:2rem;margin-bottom:1rem;font-weight:600}h1.title,.title.h1{margin-top:0}main.content>section:first-of-type>h2:first-child,main.content>section:first-of-type>.h2:first-child{margin-top:0}h2,.h2{border-bottom:1px solid #dee2e6;padding-bottom:.5rem}h3,.h3{font-weight:600}h3,.h3,h4,.h4{opacity:.9;margin-top:1.5rem}h5,.h5,h6,.h6{opacity:.9}.header-section-number{color:#6d7a86}.nav-link.active .header-section-number{color:inherit}mark,.mark{padding:0em}.panel-caption,.figure-caption,.subfigure-caption,.table-caption,figcaption,caption{font-size:.9rem;color:#6d7a86}.quarto-layout-cell[data-ref-parent] caption{color:#6d7a86}.column-margin figcaption,.margin-caption,div.aside,aside,.column-margin{color:#6d7a86;font-size:.825rem}.panel-caption.margin-caption{text-align:inherit}.column-margin.column-container p{margin-bottom:0}.column-margin.column-container>*:not(.collapse):first-child{padding-bottom:.5em;display:block}.column-margin.column-container>*:not(.collapse):not(:first-child){padding-top:.5em;padding-bottom:.5em;display:block}.column-margin.column-container>*.collapse:not(.show){display:none}@media(min-width: 768px){.column-margin.column-container .callout-margin-content:first-child{margin-top:4.5em}.column-margin.column-container .callout-margin-content-simple:first-child{margin-top:3.5em}}.margin-caption>*{padding-top:.5em;padding-bottom:.5em}@media(max-width: 767.98px){.quarto-layout-row{flex-direction:column}}.nav-tabs .nav-item{margin-top:1px;cursor:pointer}.tab-content{margin-top:0px;border-left:#dee2e6 1px solid;border-right:#dee2e6 1px solid;border-bottom:#dee2e6 1px solid;margin-left:0;padding:1em;margin-bottom:1em}@media(max-width: 767.98px){.layout-sidebar{margin-left:0;margin-right:0}}.panel-sidebar,.panel-sidebar .form-control,.panel-input,.panel-input .form-control,.selectize-dropdown{font-size:.9rem}.panel-sidebar .form-control,.panel-input .form-control{padding-top:.1rem}.tab-pane div.sourceCode{margin-top:0px}.tab-pane>p{padding-top:0}.tab-pane>p:nth-child(1){padding-top:0}.tab-pane>p:last-child{margin-bottom:0}.tab-pane>pre:last-child{margin-bottom:0}.tab-content>.tab-pane:not(.active){display:none !important}div.sourceCode{background-color:rgba(233,236,239,.65);border:1px solid rgba(233,236,239,.65);border-radius:.25rem}pre.sourceCode{background-color:rgba(0,0,0,0)}pre.sourceCode{border:none;font-size:.875em;overflow:visible !important;padding:.4em}.callout pre.sourceCode{padding-left:0}div.sourceCode{overflow-y:hidden}.callout div.sourceCode{margin-left:initial}.blockquote{font-size:inherit;padding-left:1rem;padding-right:1.5rem;color:#6d7a86}.blockquote h1:first-child,.blockquote .h1:first-child,.blockquote h2:first-child,.blockquote .h2:first-child,.blockquote h3:first-child,.blockquote .h3:first-child,.blockquote h4:first-child,.blockquote .h4:first-child,.blockquote h5:first-child,.blockquote .h5:first-child{margin-top:0}pre{background-color:initial;padding:initial;border:initial}p pre code:not(.sourceCode),li pre code:not(.sourceCode),pre code:not(.sourceCode){background-color:initial}p code:not(.sourceCode),li code:not(.sourceCode),td code:not(.sourceCode){background-color:#f8f9fa;padding:.2em}nav p code:not(.sourceCode),nav li code:not(.sourceCode),nav td code:not(.sourceCode){background-color:rgba(0,0,0,0);padding:0}td code:not(.sourceCode){white-space:pre-wrap}#quarto-embedded-source-code-modal>.modal-dialog{max-width:1000px;padding-left:1.75rem;padding-right:1.75rem}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body{padding:0}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body div.sourceCode{margin:0;padding:.2rem .2rem;border-radius:0px;border:none}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-header{padding:.7rem}.code-tools-button{font-size:1rem;padding:.15rem .15rem;margin-left:5px;color:#6c757d;background-color:rgba(0,0,0,0);transition:initial;cursor:pointer}.code-tools-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>');background-repeat:no-repeat;background-size:1rem 1rem}.code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}#quarto-embedded-source-code-modal .code-copy-button>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/><path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/></svg>')}#quarto-embedded-source-code-modal .code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" viewBox="0 0 16 16"><path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>')}.sidebar{will-change:top;transition:top 200ms linear;position:sticky;overflow-y:auto;padding-top:1.2em;max-height:100vh}.sidebar.toc-left,.sidebar.margin-sidebar{top:0px;padding-top:1em}.sidebar.quarto-banner-title-block-sidebar>*{padding-top:1.65em}figure .quarto-notebook-link{margin-top:.5em}.quarto-notebook-link{font-size:.75em;color:#6c757d;margin-bottom:1em;text-decoration:none;display:block}.quarto-notebook-link:hover{text-decoration:underline;color:#2761e3}.quarto-notebook-link::before{display:inline-block;height:.75rem;width:.75rem;margin-bottom:0em;margin-right:.25em;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(108, 117, 125)" class="bi bi-journal-code" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z"/><path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z"/><path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/></svg>');background-repeat:no-repeat;background-size:.75rem .75rem}.toc-actions i.bi,.quarto-code-links i.bi,.quarto-other-links i.bi,.quarto-alternate-notebooks i.bi,.quarto-alternate-formats i.bi{margin-right:.4em;font-size:.8rem}.quarto-other-links-text-target .quarto-code-links i.bi,.quarto-other-links-text-target .quarto-other-links i.bi{margin-right:.2em}.quarto-other-formats-text-target .quarto-alternate-formats i.bi{margin-right:.1em}.toc-actions i.bi.empty,.quarto-code-links i.bi.empty,.quarto-other-links i.bi.empty,.quarto-alternate-notebooks i.bi.empty,.quarto-alternate-formats i.bi.empty{padding-left:1em}.quarto-notebook h2,.quarto-notebook .h2{border-bottom:none}.quarto-notebook .cell-container{display:flex}.quarto-notebook .cell-container .cell{flex-grow:4}.quarto-notebook .cell-container .cell-decorator{padding-top:1.5em;padding-right:1em;text-align:right}.quarto-notebook .cell-container.code-fold .cell-decorator{padding-top:3em}.quarto-notebook .cell-code code{white-space:pre-wrap}.quarto-notebook .cell .cell-output-stderr pre code,.quarto-notebook .cell .cell-output-stdout pre code{white-space:pre-wrap;overflow-wrap:anywhere}.toc-actions,.quarto-alternate-formats,.quarto-other-links,.quarto-code-links,.quarto-alternate-notebooks{padding-left:0em}.sidebar .toc-actions a,.sidebar .quarto-alternate-formats a,.sidebar .quarto-other-links a,.sidebar .quarto-code-links a,.sidebar .quarto-alternate-notebooks a,.sidebar nav[role=doc-toc] a{text-decoration:none}.sidebar .toc-actions a:hover,.sidebar .quarto-other-links a:hover,.sidebar .quarto-code-links a:hover,.sidebar .quarto-alternate-formats a:hover,.sidebar .quarto-alternate-notebooks a:hover{color:#2761e3}.sidebar .toc-actions h2,.sidebar .toc-actions .h2,.sidebar .quarto-code-links h2,.sidebar .quarto-code-links .h2,.sidebar .quarto-other-links h2,.sidebar .quarto-other-links .h2,.sidebar .quarto-alternate-notebooks h2,.sidebar .quarto-alternate-notebooks .h2,.sidebar .quarto-alternate-formats h2,.sidebar .quarto-alternate-formats .h2,.sidebar nav[role=doc-toc]>h2,.sidebar nav[role=doc-toc]>.h2{font-weight:500;margin-bottom:.2rem;margin-top:.3rem;font-family:inherit;border-bottom:0;padding-bottom:0;padding-top:0px}.sidebar .toc-actions>h2,.sidebar .toc-actions>.h2,.sidebar .quarto-code-links>h2,.sidebar .quarto-code-links>.h2,.sidebar .quarto-other-links>h2,.sidebar .quarto-other-links>.h2,.sidebar .quarto-alternate-notebooks>h2,.sidebar .quarto-alternate-notebooks>.h2,.sidebar .quarto-alternate-formats>h2,.sidebar .quarto-alternate-formats>.h2{font-size:.8rem}.sidebar nav[role=doc-toc]>h2,.sidebar nav[role=doc-toc]>.h2{font-size:.875rem}.sidebar nav[role=doc-toc]>ul a{border-left:1px solid #e9ecef;padding-left:.6rem}.sidebar .toc-actions h2>ul a,.sidebar .toc-actions .h2>ul a,.sidebar .quarto-code-links h2>ul a,.sidebar .quarto-code-links .h2>ul a,.sidebar .quarto-other-links h2>ul a,.sidebar .quarto-other-links .h2>ul a,.sidebar .quarto-alternate-notebooks h2>ul a,.sidebar .quarto-alternate-notebooks .h2>ul a,.sidebar .quarto-alternate-formats h2>ul a,.sidebar .quarto-alternate-formats .h2>ul a{border-left:none;padding-left:.6rem}.sidebar .toc-actions ul a:empty,.sidebar .quarto-code-links ul a:empty,.sidebar .quarto-other-links ul a:empty,.sidebar .quarto-alternate-notebooks ul a:empty,.sidebar .quarto-alternate-formats ul a:empty,.sidebar nav[role=doc-toc]>ul a:empty{display:none}.sidebar .toc-actions ul,.sidebar .quarto-code-links ul,.sidebar .quarto-other-links ul,.sidebar .quarto-alternate-notebooks ul,.sidebar .quarto-alternate-formats ul{padding-left:0;list-style:none}.sidebar nav[role=doc-toc] ul{list-style:none;padding-left:0;list-style:none}.sidebar nav[role=doc-toc]>ul{margin-left:.45em}.quarto-margin-sidebar nav[role=doc-toc]{padding-left:.5em}.sidebar .toc-actions>ul,.sidebar .quarto-code-links>ul,.sidebar .quarto-other-links>ul,.sidebar .quarto-alternate-notebooks>ul,.sidebar .quarto-alternate-formats>ul{font-size:.8rem}.sidebar nav[role=doc-toc]>ul{font-size:.875rem}.sidebar .toc-actions ul li a,.sidebar .quarto-code-links ul li a,.sidebar .quarto-other-links ul li a,.sidebar .quarto-alternate-notebooks ul li a,.sidebar .quarto-alternate-formats ul li a,.sidebar nav[role=doc-toc]>ul li a{line-height:1.1rem;padding-bottom:.2rem;padding-top:.2rem;color:inherit}.sidebar nav[role=doc-toc] ul>li>ul>li>a{padding-left:1.2em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>a{padding-left:2.4em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>a{padding-left:3.6em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:4.8em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:6em}.sidebar nav[role=doc-toc] ul>li>a.active,.sidebar nav[role=doc-toc] ul>li>ul>li>a.active{border-left:1px solid #2761e3;color:#2761e3 !important}.sidebar nav[role=doc-toc] ul>li>a:hover,.sidebar nav[role=doc-toc] ul>li>ul>li>a:hover{color:#2761e3 !important}kbd,.kbd{color:#343a40;background-color:#f8f9fa;border:1px solid;border-radius:5px;border-color:#dee2e6}.quarto-appendix-contents div.hanging-indent{margin-left:0em}.quarto-appendix-contents div.hanging-indent div.csl-entry{margin-left:1em;text-indent:-1em}.citation a,.footnote-ref{text-decoration:none}.footnotes ol{padding-left:1em}.tippy-content>*{margin-bottom:.7em}.tippy-content>*:last-child{margin-bottom:0}.callout{margin-top:1.25rem;margin-bottom:1.25rem;border-radius:.25rem;overflow-wrap:break-word}.callout .callout-title-container{overflow-wrap:anywhere}.callout.callout-style-simple{padding:.4em .7em;border-left:5px solid;border-right:1px solid #dee2e6;border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.callout.callout-style-default{border-left:5px solid;border-right:1px solid #dee2e6;border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.callout .callout-body-container{flex-grow:1}.callout.callout-style-simple .callout-body{font-size:.9rem;font-weight:400}.callout.callout-style-default .callout-body{font-size:.9rem;font-weight:400}.callout:not(.no-icon).callout-titled.callout-style-simple .callout-body{padding-left:1.6em}.callout.callout-titled>.callout-header{padding-top:.2em;margin-bottom:-0.2em}.callout.callout-style-simple>div.callout-header{border-bottom:none;font-size:.9rem;font-weight:600;opacity:75%}.callout.callout-style-default>div.callout-header{border-bottom:none;font-weight:600;opacity:85%;font-size:.9rem;padding-left:.5em;padding-right:.5em}.callout.callout-style-default .callout-body{padding-left:.5em;padding-right:.5em}.callout.callout-style-default .callout-body>:first-child{padding-top:.5rem;margin-top:0}.callout>div.callout-header[data-bs-toggle=collapse]{cursor:pointer}.callout.callout-style-default .callout-header[aria-expanded=false],.callout.callout-style-default .callout-header[aria-expanded=true]{padding-top:0px;margin-bottom:0px;align-items:center}.callout.callout-titled .callout-body>:last-child:not(.sourceCode),.callout.callout-titled .callout-body>div>:last-child:not(.sourceCode){padding-bottom:.5rem;margin-bottom:0}.callout:not(.callout-titled) .callout-body>:first-child,.callout:not(.callout-titled) .callout-body>div>:first-child{margin-top:.25rem}.callout:not(.callout-titled) .callout-body>:last-child,.callout:not(.callout-titled) .callout-body>div>:last-child{margin-bottom:.2rem}.callout.callout-style-simple .callout-icon::before,.callout.callout-style-simple .callout-toggle::before{height:1rem;width:1rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.callout.callout-style-default .callout-icon::before,.callout.callout-style-default .callout-toggle::before{height:.9rem;width:.9rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:.9rem .9rem}.callout.callout-style-default .callout-toggle::before{margin-top:5px}.callout .callout-btn-toggle .callout-toggle::before{transition:transform .2s linear}.callout .callout-header[aria-expanded=false] .callout-toggle::before{transform:rotate(-90deg)}.callout .callout-header[aria-expanded=true] .callout-toggle::before{transform:none}.callout.callout-style-simple:not(.no-icon) div.callout-icon-container{padding-top:.2em;padding-right:.55em}.callout.callout-style-default:not(.no-icon) div.callout-icon-container{padding-top:.1em;padding-right:.35em}.callout.callout-style-default:not(.no-icon) div.callout-title-container{margin-top:-1px}.callout.callout-style-default.callout-caution:not(.no-icon) div.callout-icon-container{padding-top:.3em;padding-right:.35em}.callout>.callout-body>.callout-icon-container>.no-icon,.callout>.callout-header>.callout-icon-container>.no-icon{display:none}div.callout.callout{border-left-color:#6c757d}div.callout.callout-style-default>.callout-header{background-color:#6c757d}div.callout-note.callout{border-left-color:#2780e3}div.callout-note.callout-style-default>.callout-header{background-color:#e9f2fc}div.callout-note:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %232373cc" class="bi bi-info-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z"/></svg>');}div.callout-note.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %232373cc" class="bi bi-info-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z"/></svg>');}div.callout-note .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-tip.callout{border-left-color:#3fb618}div.callout-tip.callout-style-default>.callout-header{background-color:#ecf8e8}div.callout-tip:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %2339a416" class="bi bi-lightbulb" viewBox="0 0 16 16"><path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/></svg>');}div.callout-tip.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %2339a416" class="bi bi-lightbulb" viewBox="0 0 16 16"><path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/></svg>');}div.callout-tip .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-warning.callout{border-left-color:#ff7518}div.callout-warning.callout-style-default>.callout-header{background-color:#fff1e8}div.callout-warning:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e66916" class="bi bi-exclamation-triangle" viewBox="0 0 16 16"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></svg>');}div.callout-warning.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e66916" class="bi bi-exclamation-triangle" viewBox="0 0 16 16"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></svg>');}div.callout-warning .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-caution.callout{border-left-color:#f0ad4e}div.callout-caution.callout-style-default>.callout-header{background-color:#fef7ed}div.callout-caution:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23d89c46" class="bi bi-cone-striped" viewBox="0 0 16 16"><path d="M9.97 4.88l.953 3.811C10.158 8.878 9.14 9 8 9c-1.14 0-2.159-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.274 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/></svg>');}div.callout-caution.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23d89c46" class="bi bi-cone-striped" viewBox="0 0 16 16"><path d="M9.97 4.88l.953 3.811C10.158 8.878 9.14 9 8 9c-1.14 0-2.159-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.274 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/></svg>');}div.callout-caution .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}div.callout-important.callout{border-left-color:#ff0039}div.callout-important.callout-style-default>.callout-header{background-color:#ffe6eb}div.callout-important:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e60033" class="bi bi-exclamation-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></svg>');}div.callout-important.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: %23e60033" class="bi bi-exclamation-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></svg>');}div.callout-important .callout-toggle::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(52, 58, 64)" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>')}.quarto-toggle-container{display:flex;align-items:center}.quarto-reader-toggle .bi::before,.quarto-color-scheme-toggle .bi::before{display:inline-block;height:1rem;width:1rem;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.sidebar-navigation{padding-left:20px}.navbar{background-color:#f8f9fa;color:#545555}.navbar .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(84, 85, 85, 1)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.navbar .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(84, 85, 85, 1)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}.sidebar-navigation .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(75, 84, 92, 1)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.sidebar-navigation .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(75, 84, 92, 1)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}.quarto-sidebar-toggle{border-color:#dee2e6;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem;border-style:solid;border-width:1px;overflow:hidden;border-top-width:0px;padding-top:0px !important}.quarto-sidebar-toggle-title{cursor:pointer;padding-bottom:2px;margin-left:.25em;text-align:center;font-weight:400;font-size:.775em}#quarto-content .quarto-sidebar-toggle{background:#fafafa}#quarto-content .quarto-sidebar-toggle-title{color:#343a40}.quarto-sidebar-toggle-icon{color:#dee2e6;margin-right:.5em;float:right;transition:transform .2s ease}.quarto-sidebar-toggle-icon::before{padding-top:5px}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-icon{transform:rotate(-180deg)}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-title{border-bottom:solid #dee2e6 1px}.quarto-sidebar-toggle-contents{background-color:#fff;padding-right:10px;padding-left:10px;margin-top:0px !important;transition:max-height .5s ease}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-contents{padding-top:1em;padding-bottom:10px}@media(max-width: 767.98px){.sidebar-menu-container{padding-bottom:5em}}.quarto-sidebar-toggle:not(.expanded) .quarto-sidebar-toggle-contents{padding-top:0px !important;padding-bottom:0px}nav[role=doc-toc]{z-index:1020}#quarto-sidebar>*,nav[role=doc-toc]>*{transition:opacity .1s ease,border .1s ease}#quarto-sidebar.slow>*,nav[role=doc-toc].slow>*{transition:opacity .4s ease,border .4s ease}.quarto-color-scheme-toggle:not(.alternate).top-right .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(136, 147, 158, 1)" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/></svg>')}.quarto-color-scheme-toggle.alternate.top-right .bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgba(98, 109, 120, 1)" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/></svg>')}#quarto-appendix.default{border-top:1px solid #dee2e6}#quarto-appendix.default{background-color:#fff;padding-top:1.5em;margin-top:2em;z-index:998}#quarto-appendix.default .quarto-appendix-heading{margin-top:0;line-height:1.4em;font-weight:600;opacity:.9;border-bottom:none;margin-bottom:0}#quarto-appendix.default .footnotes ol,#quarto-appendix.default .footnotes ol li>p:last-of-type,#quarto-appendix.default .quarto-appendix-contents>p:last-of-type{margin-bottom:0}#quarto-appendix.default .footnotes ol{margin-left:.5em}#quarto-appendix.default .quarto-appendix-secondary-label{margin-bottom:.4em}#quarto-appendix.default .quarto-appendix-bibtex{font-size:.7em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-bibtex code.sourceCode{white-space:pre-wrap}#quarto-appendix.default .quarto-appendix-citeas{font-size:.9em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-heading{font-size:1em !important}#quarto-appendix.default *[role=doc-endnotes]>ol,#quarto-appendix.default .quarto-appendix-contents>*:not(h2):not(.h2){font-size:.9em}#quarto-appendix.default section{padding-bottom:1.5em}#quarto-appendix.default section *[role=doc-endnotes],#quarto-appendix.default section>*:not(a){opacity:.9;word-wrap:break-word}.btn.btn-quarto,div.cell-output-display .btn-quarto{--bs-btn-color: #cacccd;--bs-btn-bg: #343a40;--bs-btn-border-color: #343a40;--bs-btn-hover-color: #cacccd;--bs-btn-hover-bg: #52585d;--bs-btn-hover-border-color: #484e53;--bs-btn-focus-shadow-rgb: 75, 80, 85;--bs-btn-active-color: #fff;--bs-btn-active-bg: #5d6166;--bs-btn-active-border-color: #484e53;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #343a40;--bs-btn-disabled-border-color: #343a40}nav.quarto-secondary-nav.color-navbar{background-color:#f8f9fa;color:#545555}nav.quarto-secondary-nav.color-navbar h1,nav.quarto-secondary-nav.color-navbar .h1,nav.quarto-secondary-nav.color-navbar .quarto-btn-toggle{color:#545555}@media(max-width: 991.98px){body.nav-sidebar .quarto-title-banner{margin-bottom:0;padding-bottom:1em}body.nav-sidebar #title-block-header{margin-block-end:0}}p.subtitle{margin-top:.25em;margin-bottom:.5em}code a:any-link{color:inherit;text-decoration-color:#6c757d}/*! light */div.observablehq table thead tr th{background-color:var(--bs-body-bg)}input,button,select,optgroup,textarea{background-color:var(--bs-body-bg)}.code-annotated .code-copy-button{margin-right:1.25em;margin-top:0;padding-bottom:0;padding-top:3px}.code-annotation-gutter-bg{background-color:#fff}.code-annotation-gutter{background-color:rgba(233,236,239,.65)}.code-annotation-gutter,.code-annotation-gutter-bg{height:100%;width:calc(20px + .5em);position:absolute;top:0;right:0}dl.code-annotation-container-grid dt{margin-right:1em;margin-top:.25rem}dl.code-annotation-container-grid dt{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;color:#4b545c;border:solid #4b545c 1px;border-radius:50%;height:22px;width:22px;line-height:22px;font-size:11px;text-align:center;vertical-align:middle;text-decoration:none}dl.code-annotation-container-grid dt[data-target-cell]{cursor:pointer}dl.code-annotation-container-grid dt[data-target-cell].code-annotation-active{color:#fff;border:solid #aaa 1px;background-color:#aaa}pre.code-annotation-code{padding-top:0;padding-bottom:0}pre.code-annotation-code code{z-index:3}#code-annotation-line-highlight-gutter{width:100%;border-top:solid rgba(170,170,170,.2666666667) 1px;border-bottom:solid rgba(170,170,170,.2666666667) 1px;z-index:2;background-color:rgba(170,170,170,.1333333333)}#code-annotation-line-highlight{margin-left:-4em;width:calc(100% + 4em);border-top:solid rgba(170,170,170,.2666666667) 1px;border-bottom:solid rgba(170,170,170,.2666666667) 1px;z-index:2;background-color:rgba(170,170,170,.1333333333)}code.sourceCode .code-annotation-anchor.code-annotation-active{background-color:var(--quarto-hl-normal-color, #aaaaaa);border:solid var(--quarto-hl-normal-color, #aaaaaa) 1px;color:#e9ecef;font-weight:bolder}code.sourceCode .code-annotation-anchor{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;color:var(--quarto-hl-co-color);border:solid var(--quarto-hl-co-color) 1px;border-radius:50%;height:18px;width:18px;font-size:9px;margin-top:2px}code.sourceCode button.code-annotation-anchor{padding:2px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none}code.sourceCode a.code-annotation-anchor{line-height:18px;text-align:center;vertical-align:middle;cursor:default;text-decoration:none}@media print{.page-columns .column-screen-inset{grid-column:page-start-inset/page-end-inset;z-index:998;opacity:.999}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;opacity:.999}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;opacity:.999}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:page-start/page-end;z-index:998;opacity:.999}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:page-start/body-content-end;z-index:998;opacity:.999}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/page-end;z-index:998;opacity:.999}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:page-start-inset/page-end-inset;padding:1em;background:#f8f9fa;z-index:998;opacity:.999;margin-bottom:1em}}.quarto-video{margin-bottom:1em}.table{border-top:1px solid #ebedee;border-bottom:1px solid #ebedee}.table>thead{border-top-width:0;border-bottom:1px solid #b2bac1}.table a{word-break:break-word}.table>:not(caption)>*>*{background-color:unset;color:unset}#quarto-document-content .crosstalk-input .checkbox input[type=checkbox],#quarto-document-content .crosstalk-input .checkbox-inline input[type=checkbox]{position:unset;margin-top:unset;margin-left:unset}#quarto-document-content .row{margin-left:unset;margin-right:unset}.quarto-xref{white-space:nowrap}a.external:after{content:"";background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(39, 97, 227)" class="bi bi-box-arrow-up-right" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');background-size:contain;background-repeat:no-repeat;background-position:center center;margin-left:.2em;padding-right:.75em}div.sourceCode code a.external:after{content:none}a.external:after:hover{cursor:pointer}.quarto-ext-icon{display:inline-block;font-size:.75em;padding-left:.3em}.code-with-filename .code-with-filename-file{margin-bottom:0;padding-bottom:2px;padding-top:2px;padding-left:.7em;border:var(--quarto-border-width) solid var(--quarto-border-color);border-radius:var(--quarto-border-radius);border-bottom:0;border-bottom-left-radius:0%;border-bottom-right-radius:0%}.code-with-filename div.sourceCode,.reveal .code-with-filename div.sourceCode{margin-top:0;border-top-left-radius:0%;border-top-right-radius:0%}.code-with-filename .code-with-filename-file pre{margin-bottom:0}.code-with-filename .code-with-filename-file{background-color:rgba(219,219,219,.8)}.quarto-dark .code-with-filename .code-with-filename-file{background-color:#555}.code-with-filename .code-with-filename-file strong{font-weight:400}.quarto-title-banner{margin-bottom:1em;color:#545555;background:#f8f9fa}.quarto-title-banner a{color:#545555}.quarto-title-banner h1,.quarto-title-banner .h1,.quarto-title-banner h2,.quarto-title-banner .h2{color:#545555}.quarto-title-banner .code-tools-button{color:#878888}.quarto-title-banner .code-tools-button:hover{color:#545555}.quarto-title-banner .code-tools-button>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(135, 136, 136)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}.quarto-title-banner .code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(84, 85, 85)" viewBox="0 0 16 16"><path d="M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294l4-13zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0zm6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0z"/></svg>')}.quarto-title-banner .quarto-title .title{font-weight:600}.quarto-title-banner .quarto-categories{margin-top:.75em}@media(min-width: 992px){.quarto-title-banner{padding-top:2.5em;padding-bottom:2.5em}}@media(max-width: 991.98px){.quarto-title-banner{padding-top:1em;padding-bottom:1em}}@media(max-width: 767.98px){body.hypothesis-enabled #title-block-header>*{padding-right:20px}}main.quarto-banner-title-block>section:first-child>h2,main.quarto-banner-title-block>section:first-child>.h2,main.quarto-banner-title-block>section:first-child>h3,main.quarto-banner-title-block>section:first-child>.h3,main.quarto-banner-title-block>section:first-child>h4,main.quarto-banner-title-block>section:first-child>.h4{margin-top:0}.quarto-title .quarto-categories{display:flex;flex-wrap:wrap;row-gap:.5em;column-gap:.4em;padding-bottom:.5em;margin-top:.75em}.quarto-title .quarto-categories .quarto-category{padding:.25em .75em;font-size:.65em;text-transform:uppercase;border:solid 1px;border-radius:.25rem;opacity:.6}.quarto-title .quarto-categories .quarto-category a{color:inherit}.quarto-title-meta-container{display:grid;grid-template-columns:1fr auto}.quarto-title-meta-column-end{display:flex;flex-direction:column;padding-left:1em}.quarto-title-meta-column-end a .bi{margin-right:.3em}#title-block-header.quarto-title-block.default .quarto-title-meta{display:grid;grid-template-columns:minmax(max-content, 1fr) 1fr;grid-column-gap:1em}#title-block-header.quarto-title-block.default .quarto-title .title{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-author-orcid img{margin-top:-0.2em;height:.8em;width:.8em}#title-block-header.quarto-title-block.default .quarto-title-author-email{opacity:.7}#title-block-header.quarto-title-block.default .quarto-description p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p,#title-block-header.quarto-title-block.default .quarto-title-authors p,#title-block-header.quarto-title-block.default .quarto-title-affiliations p{margin-bottom:.1em}#title-block-header.quarto-title-block.default .quarto-title-meta-heading{text-transform:uppercase;margin-top:1em;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-contents{font-size:.9em}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p.affiliation:last-of-type{margin-bottom:.1em}#title-block-header.quarto-title-block.default p.affiliation{margin-bottom:.1em}#title-block-header.quarto-title-block.default .keywords,#title-block-header.quarto-title-block.default .description,#title-block-header.quarto-title-block.default .abstract{margin-top:0}#title-block-header.quarto-title-block.default .keywords>p,#title-block-header.quarto-title-block.default .description>p,#title-block-header.quarto-title-block.default .abstract>p{font-size:.9em}#title-block-header.quarto-title-block.default .keywords>p:last-of-type,#title-block-header.quarto-title-block.default .description>p:last-of-type,#title-block-header.quarto-title-block.default .abstract>p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .keywords .block-title,#title-block-header.quarto-title-block.default .description .block-title,#title-block-header.quarto-title-block.default .abstract .block-title{margin-top:1em;text-transform:uppercase;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-author{display:grid;grid-template-columns:minmax(max-content, 1fr) 1fr;grid-column-gap:1em}.quarto-title-tools-only{display:flex;justify-content:right}body{-webkit-font-smoothing:antialiased}.badge.bg-light{color:#343a40}.progress .progress-bar{font-size:8px;line-height:8px}
diff --git a/_site/site_libs/bootstrap/bootstrap.min.js b/_site/site_libs/bootstrap/bootstrap.min.js
deleted file mode 100644
index e8f21f703f7bb4e9ab84daca93c9ee1d5358a316..0000000000000000000000000000000000000000
--- a/_site/site_libs/bootstrap/bootstrap.min.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
-  * Bootstrap v5.3.1 (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)
-  */
-!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t=new Map,e={set(e,i,n){t.has(e)||t.set(e,new Map);const s=t.get(e);s.has(i)||0===s.size?s.set(i,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,i)=>t.has(e)&&t.get(e).get(i)||null,remove(e,i){if(!t.has(e))return;const n=t.get(e);n.delete(i),0===n.size&&t.delete(e)}},i="transitionend",n=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),s=t=>{t.dispatchEvent(new Event(i))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(n(t)):null,a=t=>{if(!o(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},l=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),c=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?c(t.parentNode):null},h=()=>{},d=t=>{t.offsetHeight},u=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,f=[],p=()=>"rtl"===document.documentElement.dir,m=t=>{var e;e=()=>{const e=u();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of f)t()})),f.push(e)):e()},g=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,_=(t,e,n=!0)=>{if(!n)return void g(t);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let r=!1;const a=({target:n})=>{n===e&&(r=!0,e.removeEventListener(i,a),g(t))};e.addEventListener(i,a),setTimeout((()=>{r||s(e)}),o)},b=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},v=/[^.]*(?=\..*)\.|.*/,y=/\..*/,w=/::\d+$/,A={};let E=1;const T={mouseenter:"mouseover",mouseleave:"mouseout"},C=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 O(t,e){return e&&`${e}::${E++}`||t.uidEvent||E++}function x(t){const e=O(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function k(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function L(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=I(t);return C.has(o)||(o=t),[n,s,o]}function S(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=L(e,i,n);if(e in T){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=x(t),c=l[a]||(l[a]={}),h=k(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=O(r,e.replace(v,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return P(s,{delegateTarget:r}),n.oneOff&&N.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return P(n,{delegateTarget:t}),i.oneOff&&N.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function D(t,e,i,n,s){const o=k(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function $(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&D(t,e,i,r.callable,r.delegationSelector)}function I(t){return t=t.replace(y,""),T[t]||t}const N={on(t,e,i,n){S(t,e,i,n,!1)},one(t,e,i,n){S(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=L(e,i,n),a=r!==e,l=x(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))$(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(w,"");a&&!e.includes(s)||D(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;D(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=u();let s=null,o=!0,r=!0,a=!1;e!==I(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=P(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function P(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function M(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function j(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const F={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${j(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${j(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=M(t.dataset[n])}return e},getDataAttribute:(t,e)=>M(t.getAttribute(`data-bs-${j(e)}`))};class H{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(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=o(e)?F.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...o(e)?F.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],r=o(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(r))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}var i}}class W extends H{constructor(t,i){super(),(t=r(t))&&(this._element=t,this._config=this._getConfig(i),e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){e.remove(this._element,this.constructor.DATA_KEY),N.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){_(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return e.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.1"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const B=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return n(e)},z={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!l(t)&&a(t)))},getSelectorFromElement(t){const e=B(t);return e&&z.findOne(e)?e:null},getElementFromSelector(t){const e=B(t);return e?z.findOne(e):null},getMultipleElementsFromSelector(t){const e=B(t);return e?z.find(e):[]}},R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;N.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),l(this))return;const s=z.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))},q=".bs.alert",V=`close${q}`,K=`closed${q}`;class Q extends W{static get NAME(){return"alert"}close(){if(N.trigger(this._element,V).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(),N.trigger(this._element,K),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=Q.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(Q,"close"),m(Q);const X='[data-bs-toggle="button"]';class Y extends W{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=Y.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}N.on(document,"click.bs.button.data-api",X,(t=>{t.preventDefault();const e=t.target.closest(X);Y.getOrCreateInstance(e).toggle()})),m(Y);const U=".bs.swipe",G=`touchstart${U}`,J=`touchmove${U}`,Z=`touchend${U}`,tt=`pointerdown${U}`,et=`pointerup${U}`,it={endCallback:null,leftCallback:null,rightCallback:null},nt={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class st extends H{constructor(t,e){super(),this._element=t,t&&st.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return it}static get DefaultType(){return nt}static get NAME(){return"swipe"}dispose(){N.off(this._element,U)}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),g(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&g(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(N.on(this._element,tt,(t=>this._start(t))),N.on(this._element,et,(t=>this._end(t))),this._element.classList.add("pointer-event")):(N.on(this._element,G,(t=>this._start(t))),N.on(this._element,J,(t=>this._move(t))),N.on(this._element,Z,(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const ot=".bs.carousel",rt=".data-api",at="next",lt="prev",ct="left",ht="right",dt=`slide${ot}`,ut=`slid${ot}`,ft=`keydown${ot}`,pt=`mouseenter${ot}`,mt=`mouseleave${ot}`,gt=`dragstart${ot}`,_t=`load${ot}${rt}`,bt=`click${ot}${rt}`,vt="carousel",yt="active",wt=".active",At=".carousel-item",Et=wt+At,Tt={ArrowLeft:ht,ArrowRight:ct},Ct={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Ot={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class xt extends W{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=z.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===vt&&this.cycle()}static get Default(){return Ct}static get DefaultType(){return Ot}static get NAME(){return"carousel"}next(){this._slide(at)}nextWhenVisible(){!document.hidden&&a(this._element)&&this.next()}prev(){this._slide(lt)}pause(){this._isSliding&&s(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?N.one(this._element,ut,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void N.one(this._element,ut,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?at:lt;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&N.on(this._element,ft,(t=>this._keydown(t))),"hover"===this._config.pause&&(N.on(this._element,pt,(()=>this.pause())),N.on(this._element,mt,(()=>this._maybeEnableCycle()))),this._config.touch&&st.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of z.find(".carousel-item img",this._element))N.on(t,gt,(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(ct)),rightCallback:()=>this._slide(this._directionToOrder(ht)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new st(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Tt[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=z.findOne(wt,this._indicatorsElement);e.classList.remove(yt),e.removeAttribute("aria-current");const i=z.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(yt),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===at,s=e||b(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>N.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r(dt).defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),d(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(yt),i.classList.remove(yt,c,l),this._isSliding=!1,r(ut)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return z.findOne(Et,this._element)}_getItems(){return z.find(At,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return p()?t===ct?lt:at:t===ct?at:lt}_orderToDirection(t){return p()?t===lt?ct:ht:t===lt?ht:ct}static jQueryInterface(t){return this.each((function(){const e=xt.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}N.on(document,bt,"[data-bs-slide], [data-bs-slide-to]",(function(t){const e=z.getElementFromSelector(this);if(!e||!e.classList.contains(vt))return;t.preventDefault();const i=xt.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===F.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),N.on(window,_t,(()=>{const t=z.find('[data-bs-ride="carousel"]');for(const e of t)xt.getOrCreateInstance(e)})),m(xt);const kt=".bs.collapse",Lt=`show${kt}`,St=`shown${kt}`,Dt=`hide${kt}`,$t=`hidden${kt}`,It=`click${kt}.data-api`,Nt="show",Pt="collapse",Mt="collapsing",jt=`:scope .${Pt} .${Pt}`,Ft='[data-bs-toggle="collapse"]',Ht={parent:null,toggle:!0},Wt={parent:"(null|element)",toggle:"boolean"};class Bt extends W{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=z.find(Ft);for(const t of i){const e=z.getSelectorFromElement(t),i=z.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ht}static get DefaultType(){return Wt}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>Bt.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(N.trigger(this._element,Lt).defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(Pt),this._element.classList.add(Mt),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt,Nt),this._element.style[e]="",N.trigger(this._element,St)}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(N.trigger(this._element,Dt).defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,d(this._element),this._element.classList.add(Mt),this._element.classList.remove(Pt,Nt);for(const t of this._triggerArray){const e=z.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt),N.trigger(this._element,$t)}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(Nt)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=r(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(Ft);for(const e of t){const t=z.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=z.find(jt,this._config.parent);return z.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=Bt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}N.on(document,It,Ft,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of z.getMultipleElementsFromSelector(this))Bt.getOrCreateInstance(t,{toggle:!1}).toggle()})),m(Bt);var zt="top",Rt="bottom",qt="right",Vt="left",Kt="auto",Qt=[zt,Rt,qt,Vt],Xt="start",Yt="end",Ut="clippingParents",Gt="viewport",Jt="popper",Zt="reference",te=Qt.reduce((function(t,e){return t.concat([e+"-"+Xt,e+"-"+Yt])}),[]),ee=[].concat(Qt,[Kt]).reduce((function(t,e){return t.concat([e,e+"-"+Xt,e+"-"+Yt])}),[]),ie="beforeRead",ne="read",se="afterRead",oe="beforeMain",re="main",ae="afterMain",le="beforeWrite",ce="write",he="afterWrite",de=[ie,ne,se,oe,re,ae,le,ce,he];function ue(t){return t?(t.nodeName||"").toLowerCase():null}function fe(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function pe(t){return t instanceof fe(t).Element||t instanceof Element}function me(t){return t instanceof fe(t).HTMLElement||t instanceof HTMLElement}function ge(t){return"undefined"!=typeof ShadowRoot&&(t instanceof fe(t).ShadowRoot||t instanceof ShadowRoot)}const _e={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];me(s)&&ue(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});me(n)&&ue(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function be(t){return t.split("-")[0]}var ve=Math.max,ye=Math.min,we=Math.round;function Ae(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function Ee(){return!/^((?!chrome|android).)*safari/i.test(Ae())}function Te(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&me(t)&&(s=t.offsetWidth>0&&we(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&we(n.height)/t.offsetHeight||1);var r=(pe(t)?fe(t):window).visualViewport,a=!Ee()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function Ce(t){var e=Te(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Oe(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&ge(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function xe(t){return fe(t).getComputedStyle(t)}function ke(t){return["table","td","th"].indexOf(ue(t))>=0}function Le(t){return((pe(t)?t.ownerDocument:t.document)||window.document).documentElement}function Se(t){return"html"===ue(t)?t:t.assignedSlot||t.parentNode||(ge(t)?t.host:null)||Le(t)}function De(t){return me(t)&&"fixed"!==xe(t).position?t.offsetParent:null}function $e(t){for(var e=fe(t),i=De(t);i&&ke(i)&&"static"===xe(i).position;)i=De(i);return i&&("html"===ue(i)||"body"===ue(i)&&"static"===xe(i).position)?e:i||function(t){var e=/firefox/i.test(Ae());if(/Trident/i.test(Ae())&&me(t)&&"fixed"===xe(t).position)return null;var i=Se(t);for(ge(i)&&(i=i.host);me(i)&&["html","body"].indexOf(ue(i))<0;){var n=xe(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Ie(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Ne(t,e,i){return ve(t,ye(e,i))}function Pe(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function Me(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const je={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=be(i.placement),l=Ie(a),c=[Vt,qt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return Pe("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:Me(t,Qt))}(s.padding,i),d=Ce(o),u="y"===l?zt:Vt,f="y"===l?Rt:qt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=$e(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,A=Ne(v,w,y),E=l;i.modifiersData[n]=((e={})[E]=A,e.centerOffset=A-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Oe(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Fe(t){return t.split("-")[1]}var He={top:"auto",right:"auto",bottom:"auto",left:"auto"};function We(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=t.isFixed,u=r.x,f=void 0===u?0:u,p=r.y,m=void 0===p?0:p,g="function"==typeof h?h({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var _=r.hasOwnProperty("x"),b=r.hasOwnProperty("y"),v=Vt,y=zt,w=window;if(c){var A=$e(i),E="clientHeight",T="clientWidth";A===fe(i)&&"static"!==xe(A=Le(i)).position&&"absolute"===a&&(E="scrollHeight",T="scrollWidth"),(s===zt||(s===Vt||s===qt)&&o===Yt)&&(y=Rt,m-=(d&&A===w&&w.visualViewport?w.visualViewport.height:A[E])-n.height,m*=l?1:-1),s!==Vt&&(s!==zt&&s!==Rt||o!==Yt)||(v=qt,f-=(d&&A===w&&w.visualViewport?w.visualViewport.width:A[T])-n.width,f*=l?1:-1)}var C,O=Object.assign({position:a},c&&He),x=!0===h?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:we(i*s)/s||0,y:we(n*s)/s||0}}({x:f,y:m},fe(i)):{x:f,y:m};return f=x.x,m=x.y,l?Object.assign({},O,((C={})[y]=b?"0":"",C[v]=_?"0":"",C.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",C)):Object.assign({},O,((e={})[y]=b?m+"px":"",e[v]=_?f+"px":"",e.transform="",e))}const Be={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:be(e.placement),variation:Fe(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,We(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,We(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var ze={passive:!0};const Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=fe(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,ze)})),a&&l.addEventListener("resize",i.update,ze),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,ze)})),a&&l.removeEventListener("resize",i.update,ze)}},data:{}};var qe={left:"right",right:"left",bottom:"top",top:"bottom"};function Ve(t){return t.replace(/left|right|bottom|top/g,(function(t){return qe[t]}))}var Ke={start:"end",end:"start"};function Qe(t){return t.replace(/start|end/g,(function(t){return Ke[t]}))}function Xe(t){var e=fe(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Ye(t){return Te(Le(t)).left+Xe(t).scrollLeft}function Ue(t){var e=xe(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ge(t){return["html","body","#document"].indexOf(ue(t))>=0?t.ownerDocument.body:me(t)&&Ue(t)?t:Ge(Se(t))}function Je(t,e){var i;void 0===e&&(e=[]);var n=Ge(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=fe(n),r=s?[o].concat(o.visualViewport||[],Ue(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Je(Se(r)))}function Ze(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function ti(t,e,i){return e===Gt?Ze(function(t,e){var i=fe(t),n=Le(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=Ee();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+Ye(t),y:l}}(t,i)):pe(e)?function(t,e){var i=Te(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):Ze(function(t){var e,i=Le(t),n=Xe(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ve(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ve(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+Ye(t),l=-n.scrollTop;return"rtl"===xe(s||i).direction&&(a+=ve(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Le(t)))}function ei(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?be(s):null,r=s?Fe(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case zt:e={x:a,y:i.y-n.height};break;case Rt:e={x:a,y:i.y+i.height};break;case qt:e={x:i.x+i.width,y:l};break;case Vt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?Ie(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Xt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case Yt:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ii(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.strategy,r=void 0===o?t.strategy:o,a=i.boundary,l=void 0===a?Ut:a,c=i.rootBoundary,h=void 0===c?Gt:c,d=i.elementContext,u=void 0===d?Jt:d,f=i.altBoundary,p=void 0!==f&&f,m=i.padding,g=void 0===m?0:m,_=Pe("number"!=typeof g?g:Me(g,Qt)),b=u===Jt?Zt:Jt,v=t.rects.popper,y=t.elements[p?b:u],w=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=Je(Se(t)),i=["absolute","fixed"].indexOf(xe(t).position)>=0&&me(t)?$e(t):t;return pe(i)?e.filter((function(t){return pe(t)&&Oe(t,i)&&"body"!==ue(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=ti(t,i,n);return e.top=ve(s.top,e.top),e.right=ye(s.right,e.right),e.bottom=ye(s.bottom,e.bottom),e.left=ve(s.left,e.left),e}),ti(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(pe(y)?y:y.contextElement||Le(t.elements.popper),l,h,r),A=Te(t.elements.reference),E=ei({reference:A,element:v,strategy:"absolute",placement:s}),T=Ze(Object.assign({},v,E)),C=u===Jt?T:A,O={top:w.top-C.top+_.top,bottom:C.bottom-w.bottom+_.bottom,left:w.left-C.left+_.left,right:C.right-w.right+_.right},x=t.modifiersData.offset;if(u===Jt&&x){var k=x[s];Object.keys(O).forEach((function(t){var e=[qt,Rt].indexOf(t)>=0?1:-1,i=[zt,Rt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function ni(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?ee:l,h=Fe(n),d=h?a?te:te.filter((function(t){return Fe(t)===h})):Qt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ii(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[be(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const si={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=be(g),b=l||(_!==g&&p?function(t){if(be(t)===Kt)return[];var e=Ve(t);return[Qe(t),e,Qe(e)]}(g):[Ve(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(be(i)===Kt?ni(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,A=new Map,E=!0,T=v[0],C=0;C<v.length;C++){var O=v[C],x=be(O),k=Fe(O)===Xt,L=[zt,Rt].indexOf(x)>=0,S=L?"width":"height",D=ii(e,{placement:O,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),$=L?k?qt:Vt:k?Rt:zt;y[S]>w[S]&&($=Ve($));var I=Ve($),N=[];if(o&&N.push(D[x]<=0),a&&N.push(D[$]<=0,D[I]<=0),N.every((function(t){return t}))){T=O,E=!1;break}A.set(O,N)}if(E)for(var P=function(t){var e=v.find((function(e){var i=A.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},M=p?3:1;M>0&&"break"!==P(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function oi(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function ri(t){return[zt,qt,Rt,Vt].some((function(e){return t[e]>=0}))}const ai={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ii(e,{elementContext:"reference"}),a=ii(e,{altBoundary:!0}),l=oi(r,n),c=oi(a,s,o),h=ri(l),d=ri(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},li={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=ee.reduce((function(t,i){return t[i]=function(t,e,i){var n=be(t),s=[Vt,zt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[Vt,qt].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},ci={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=ei({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},hi={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ii(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=be(e.placement),b=Fe(e.placement),v=!b,y=Ie(_),w="x"===y?"y":"x",A=e.modifiersData.popperOffsets,E=e.rects.reference,T=e.rects.popper,C="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,O="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),x=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,k={x:0,y:0};if(A){if(o){var L,S="y"===y?zt:Vt,D="y"===y?Rt:qt,$="y"===y?"height":"width",I=A[y],N=I+g[S],P=I-g[D],M=f?-T[$]/2:0,j=b===Xt?E[$]:T[$],F=b===Xt?-T[$]:-E[$],H=e.elements.arrow,W=f&&H?Ce(H):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},z=B[S],R=B[D],q=Ne(0,E[$],W[$]),V=v?E[$]/2-M-q-z-O.mainAxis:j-q-z-O.mainAxis,K=v?-E[$]/2+M+q+R+O.mainAxis:F+q+R+O.mainAxis,Q=e.elements.arrow&&$e(e.elements.arrow),X=Q?"y"===y?Q.clientTop||0:Q.clientLeft||0:0,Y=null!=(L=null==x?void 0:x[y])?L:0,U=I+K-Y,G=Ne(f?ye(N,I+V-Y-X):N,I,f?ve(P,U):P);A[y]=G,k[y]=G-I}if(a){var J,Z="x"===y?zt:Vt,tt="x"===y?Rt:qt,et=A[w],it="y"===w?"height":"width",nt=et+g[Z],st=et-g[tt],ot=-1!==[zt,Vt].indexOf(_),rt=null!=(J=null==x?void 0:x[w])?J:0,at=ot?nt:et-E[it]-T[it]-rt+O.altAxis,lt=ot?et+E[it]+T[it]-rt-O.altAxis:st,ct=f&&ot?function(t,e,i){var n=Ne(t,e,i);return n>i?i:n}(at,et,lt):Ne(f?at:nt,et,f?lt:st);A[w]=ct,k[w]=ct-et}e.modifiersData[n]=k}},requiresIfExists:["offset"]};function di(t,e,i){void 0===i&&(i=!1);var n,s,o=me(e),r=me(e)&&function(t){var e=t.getBoundingClientRect(),i=we(e.width)/t.offsetWidth||1,n=we(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=Le(e),l=Te(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==ue(e)||Ue(a))&&(c=(n=e)!==fe(n)&&me(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:Xe(n)),me(e)?((h=Te(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=Ye(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function ui(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var fi={placement:"bottom",modifiers:[],strategy:"absolute"};function pi(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return!e.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function mi(t){void 0===t&&(t={});var e=t,i=e.defaultModifiers,n=void 0===i?[]:i,s=e.defaultOptions,o=void 0===s?fi:s;return function(t,e,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},fi,o),modifiersData:{},elements:{reference:t,popper:e},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){var s="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,s),a.scrollParents={reference:pe(t)?Je(t):t.contextElement?Je(t.contextElement):[],popper:Je(e)};var r,c,u=function(t){var e=ui(t);return de.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((r=[].concat(n,a.options.modifiers),c=r.reduce((function(t,e){var i=t[e.name];return t[e.name]=i?Object.assign({},i,e,{options:Object.assign({},i.options,e.options),data:Object.assign({},i.data,e.data)}):e,t}),{}),Object.keys(c).map((function(t){return c[t]}))));return a.orderedModifiers=u.filter((function(t){return t.enabled})),a.orderedModifiers.forEach((function(t){var e=t.name,i=t.options,n=void 0===i?{}:i,s=t.effect;if("function"==typeof s){var o=s({state:a,name:e,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var t=a.elements,e=t.reference,i=t.popper;if(pi(e,i)){a.rects={reference:di(e,$e(i),"fixed"===a.options.strategy),popper:Ce(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach((function(t){return a.modifiersData[t.name]=Object.assign({},t.data)}));for(var n=0;n<a.orderedModifiers.length;n++)if(!0!==a.reset){var s=a.orderedModifiers[n],o=s.fn,r=s.options,l=void 0===r?{}:r,d=s.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:h})||a)}else a.reset=!1,n=-1}}},update:(s=function(){return new Promise((function(t){h.forceUpdate(),t(a)}))},function(){return r||(r=new Promise((function(t){Promise.resolve().then((function(){r=void 0,t(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!pi(t,e))return h;function d(){l.forEach((function(t){return t()})),l=[]}return h.setOptions(i).then((function(t){!c&&i.onFirstUpdate&&i.onFirstUpdate(t)})),h}}var gi=mi(),_i=mi({defaultModifiers:[Re,ci,Be,_e]}),bi=mi({defaultModifiers:[Re,ci,Be,_e,li,si,hi,je,ai]});const vi=Object.freeze(Object.defineProperty({__proto__:null,afterMain:ae,afterRead:se,afterWrite:he,applyStyles:_e,arrow:je,auto:Kt,basePlacements:Qt,beforeMain:oe,beforeRead:ie,beforeWrite:le,bottom:Rt,clippingParents:Ut,computeStyles:Be,createPopper:bi,createPopperBase:gi,createPopperLite:_i,detectOverflow:ii,end:Yt,eventListeners:Re,flip:si,hide:ai,left:Vt,main:re,modifierPhases:de,offset:li,placements:ee,popper:Jt,popperGenerator:mi,popperOffsets:ci,preventOverflow:hi,read:ne,reference:Zt,right:qt,start:Xt,top:zt,variationPlacements:te,viewport:Gt,write:ce},Symbol.toStringTag,{value:"Module"})),yi="dropdown",wi=".bs.dropdown",Ai=".data-api",Ei="ArrowUp",Ti="ArrowDown",Ci=`hide${wi}`,Oi=`hidden${wi}`,xi=`show${wi}`,ki=`shown${wi}`,Li=`click${wi}${Ai}`,Si=`keydown${wi}${Ai}`,Di=`keyup${wi}${Ai}`,$i="show",Ii='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',Ni=`${Ii}.${$i}`,Pi=".dropdown-menu",Mi=p()?"top-end":"top-start",ji=p()?"top-start":"top-end",Fi=p()?"bottom-end":"bottom-start",Hi=p()?"bottom-start":"bottom-end",Wi=p()?"left-start":"right-start",Bi=p()?"right-start":"left-start",zi={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},Ri={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class qi extends W{constructor(t,e){super(t,e),this._popper=null,this._parent=this._element.parentNode,this._menu=z.next(this._element,Pi)[0]||z.prev(this._element,Pi)[0]||z.findOne(Pi,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return zi}static get DefaultType(){return Ri}static get NAME(){return yi}toggle(){return this._isShown()?this.hide():this.show()}show(){if(l(this._element)||this._isShown())return;const t={relatedTarget:this._element};if(!N.trigger(this._element,xi,t).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const t of[].concat(...document.body.children))N.on(t,"mouseover",h);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add($i),this._element.classList.add($i),N.trigger(this._element,ki,t)}}hide(){if(l(this._element)||!this._isShown())return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){if(!N.trigger(this._element,Ci,t).defaultPrevented){if("ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.off(t,"mouseover",h);this._popper&&this._popper.destroy(),this._menu.classList.remove($i),this._element.classList.remove($i),this._element.setAttribute("aria-expanded","false"),F.removeDataAttribute(this._menu,"popper"),N.trigger(this._element,Oi,t)}}_getConfig(t){if("object"==typeof(t=super._getConfig(t)).reference&&!o(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${yi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(){if(void 0===vi)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=this._parent:o(this._config.reference)?t=r(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const e=this._getPopperConfig();this._popper=bi(t,this._menu,e)}_isShown(){return this._menu.classList.contains($i)}_getPlacement(){const t=this._parent;if(t.classList.contains("dropend"))return Wi;if(t.classList.contains("dropstart"))return Bi;if(t.classList.contains("dropup-center"))return"top";if(t.classList.contains("dropdown-center"))return"bottom";const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ji:Mi:e?Hi:Fi}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(F.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...g(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>a(t)));i.length&&b(i,e,t===Ti,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=qi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=z.find(Ni);for(const i of e){const e=qi.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Ei,Ti].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Ii)?this:z.prev(this,Ii)[0]||z.next(this,Ii)[0]||z.findOne(Ii,t.delegateTarget.parentNode),o=qi.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}N.on(document,Si,Ii,qi.dataApiKeydownHandler),N.on(document,Si,Pi,qi.dataApiKeydownHandler),N.on(document,Li,qi.clearMenus),N.on(document,Di,qi.clearMenus),N.on(document,Li,Ii,(function(t){t.preventDefault(),qi.getOrCreateInstance(this).toggle()})),m(qi);const Vi="backdrop",Ki="show",Qi=`mousedown.bs.${Vi}`,Xi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Yi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Ui extends H{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return Xi}static get DefaultType(){return Yi}static get NAME(){return Vi}show(t){if(!this._config.isVisible)return void g(t);this._append();const e=this._getElement();this._config.isAnimated&&d(e),e.classList.add(Ki),this._emulateAnimation((()=>{g(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(Ki),this._emulateAnimation((()=>{this.dispose(),g(t)}))):g(t)}dispose(){this._isAppended&&(N.off(this._element,Qi),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=r(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),N.on(t,Qi,(()=>{g(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){_(t,this._getElement(),this._config.isAnimated)}}const Gi=".bs.focustrap",Ji=`focusin${Gi}`,Zi=`keydown.tab${Gi}`,tn="backward",en={autofocus:!0,trapElement:null},nn={autofocus:"boolean",trapElement:"element"};class sn extends H{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return en}static get DefaultType(){return nn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),N.off(document,Gi),N.on(document,Ji,(t=>this._handleFocusin(t))),N.on(document,Zi,(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,N.off(document,Gi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=z.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===tn?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?tn:"forward")}}const on=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",rn=".sticky-top",an="padding-right",ln="margin-right";class cn{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,an,(e=>e+t)),this._setElementAttributes(on,an,(e=>e+t)),this._setElementAttributes(rn,ln,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,an),this._resetElementAttributes(on,an),this._resetElementAttributes(rn,ln)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&F.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=F.getDataAttribute(t,e);null!==i?(F.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(o(t))e(t);else for(const i of z.find(t,this._element))e(i)}}const hn=".bs.modal",dn=`hide${hn}`,un=`hidePrevented${hn}`,fn=`hidden${hn}`,pn=`show${hn}`,mn=`shown${hn}`,gn=`resize${hn}`,_n=`click.dismiss${hn}`,bn=`mousedown.dismiss${hn}`,vn=`keydown.dismiss${hn}`,yn=`click${hn}.data-api`,wn="modal-open",An="show",En="modal-static",Tn={backdrop:!0,focus:!0,keyboard:!0},Cn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class On extends W{constructor(t,e){super(t,e),this._dialog=z.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new cn,this._addEventListeners()}static get Default(){return Tn}static get DefaultType(){return Cn}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||N.trigger(this._element,pn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(wn),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(N.trigger(this._element,dn).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(An),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){N.off(window,hn),N.off(this._dialog,hn),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ui({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_showElement(t){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 e=z.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),d(this._element),this._element.classList.add(An),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,N.trigger(this._element,mn,{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){N.on(this._element,vn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),N.on(window,gn,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),N.on(this._element,bn,(t=>{N.one(this._element,_n,(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(wn),this._resetAdjustments(),this._scrollBar.reset(),N.trigger(this._element,fn)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(N.trigger(this._element,un).defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(En)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(En),this._queueCallback((()=>{this._element.classList.remove(En),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=p()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=p()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=On.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}N.on(document,yn,'[data-bs-toggle="modal"]',(function(t){const e=z.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),N.one(e,pn,(t=>{t.defaultPrevented||N.one(e,fn,(()=>{a(this)&&this.focus()}))}));const i=z.findOne(".modal.show");i&&On.getInstance(i).hide(),On.getOrCreateInstance(e).toggle(this)})),R(On),m(On);const xn=".bs.offcanvas",kn=".data-api",Ln=`load${xn}${kn}`,Sn="show",Dn="showing",$n="hiding",In=".offcanvas.show",Nn=`show${xn}`,Pn=`shown${xn}`,Mn=`hide${xn}`,jn=`hidePrevented${xn}`,Fn=`hidden${xn}`,Hn=`resize${xn}`,Wn=`click${xn}${kn}`,Bn=`keydown.dismiss${xn}`,zn={backdrop:!0,keyboard:!0,scroll:!1},Rn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class qn extends W{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return zn}static get DefaultType(){return Rn}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||N.trigger(this._element,Nn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new cn).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Dn),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Sn),this._element.classList.remove(Dn),N.trigger(this._element,Pn,{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(N.trigger(this._element,Mn).defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add($n),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Sn,$n),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new cn).reset(),N.trigger(this._element,Fn)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new Ui({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():N.trigger(this._element,jn)}:null})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_addEventListeners(){N.on(this._element,Bn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():N.trigger(this._element,jn))}))}static jQueryInterface(t){return this.each((function(){const e=qn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}N.on(document,Wn,'[data-bs-toggle="offcanvas"]',(function(t){const e=z.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this))return;N.one(e,Fn,(()=>{a(this)&&this.focus()}));const i=z.findOne(In);i&&i!==e&&qn.getInstance(i).hide(),qn.getOrCreateInstance(e).toggle(this)})),N.on(window,Ln,(()=>{for(const t of z.find(In))qn.getOrCreateInstance(t).show()})),N.on(window,Hn,(()=>{for(const t of z.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&qn.getOrCreateInstance(t).hide()})),R(qn),m(qn);const Vn={"*":["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:[]},Kn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Qn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Xn=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!Kn.has(i)||Boolean(Qn.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Yn={allowList:Vn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"<div></div>"},Un={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Gn={entry:"(string|element|function|null)",selector:"(string|element)"};class Jn extends H{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Yn}static get DefaultType(){return Un}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},Gn)}_setContent(t,e,i){const n=z.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?o(e)?this._putElementInTemplate(r(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Xn(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return g(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),ts="fade",es="show",is=".modal",ns="hide.bs.modal",ss="hover",os="focus",rs={AUTO:"auto",TOP:"top",RIGHT:p()?"left":"right",BOTTOM:"bottom",LEFT:p()?"right":"left"},as={allowList:Vn,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:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',title:"",trigger:"hover focus"},ls={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 cs extends W{constructor(t,e){if(void 0===vi)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,e),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 as}static get DefaultType(){return ls}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),N.off(this._element.closest(is),ns,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 t=N.trigger(this._element,this.constructor.eventName("show")),e=(c(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),N.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.on(t,"mouseover",h);this._queueCallback((()=>{N.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!N.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.off(t,"mouseover",h);this._activeTrigger.click=!1,this._activeTrigger[os]=!1,this._activeTrigger[ss]=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),N.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(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(ts,es),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(ts),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Jn({...this._config,content:t,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(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ts)}_isShown(){return this.tip&&this.tip.classList.contains(es)}_createPopper(t){const e=g(this._config.placement,[this,t,this._element]),i=rs[e.toUpperCase()];return bi(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return g(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...g(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)N.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===ss?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===ss?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");N.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?os:ss]=!0,e._enter()})),N.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?os:ss]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},N.on(this._element.closest(is),ns,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),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(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=F.getDataAttributes(this._element);for(const t of Object.keys(e))Zn.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=cs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(cs);const hs={...cs.Default,content:"",offset:[0,8],placement:"right",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>',trigger:"click"},ds={...cs.DefaultType,content:"(null|string|element|function)"};class us extends cs{static get Default(){return hs}static get DefaultType(){return ds}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(t){return this.each((function(){const e=us.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(us);const fs=".bs.scrollspy",ps=`activate${fs}`,ms=`click${fs}`,gs=`load${fs}.data-api`,_s="active",bs="[href]",vs=".nav-link",ys=`${vs}, .nav-item > ${vs}, .list-group-item`,ws={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},As={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Es extends W{constructor(t,e){super(t,e),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 ws}static get DefaultType(){return As}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=r(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(N.off(this._config.target,ms),N.on(this._config.target,ms,bs,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=z.find(bs,this._config.target);for(const e of t){if(!e.hash||l(e))continue;const t=z.findOne(decodeURI(e.hash),this._element);a(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(_s),this._activateParents(t),N.trigger(this._element,ps,{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))z.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(_s);else for(const e of z.parents(t,".nav, .list-group"))for(const t of z.prev(e,ys))t.classList.add(_s)}_clearActiveClass(t){t.classList.remove(_s);const e=z.find(`${bs}.${_s}`,t);for(const t of e)t.classList.remove(_s)}static jQueryInterface(t){return this.each((function(){const e=Es.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(window,gs,(()=>{for(const t of z.find('[data-bs-spy="scroll"]'))Es.getOrCreateInstance(t)})),m(Es);const Ts=".bs.tab",Cs=`hide${Ts}`,Os=`hidden${Ts}`,xs=`show${Ts}`,ks=`shown${Ts}`,Ls=`click${Ts}`,Ss=`keydown${Ts}`,Ds=`load${Ts}`,$s="ArrowLeft",Is="ArrowRight",Ns="ArrowUp",Ps="ArrowDown",Ms="Home",js="End",Fs="active",Hs="fade",Ws="show",Bs=":not(.dropdown-toggle)",zs='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Rs=`.nav-link${Bs}, .list-group-item${Bs}, [role="tab"]${Bs}, ${zs}`,qs=`.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`;class Vs extends W{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),N.on(this._element,Ss,(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?N.trigger(e,Cs,{relatedTarget:t}):null;N.trigger(t,xs,{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(Fs),this._activate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),N.trigger(t,ks,{relatedTarget:e})):t.classList.add(Ws)}),t,t.classList.contains(Hs)))}_deactivate(t,e){t&&(t.classList.remove(Fs),t.blur(),this._deactivate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),N.trigger(t,Os,{relatedTarget:e})):t.classList.remove(Ws)}),t,t.classList.contains(Hs)))}_keydown(t){if(![$s,Is,Ns,Ps,Ms,js].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=this._getChildren().filter((t=>!l(t)));let i;if([Ms,js].includes(t.key))i=e[t.key===Ms?0:e.length-1];else{const n=[Is,Ps].includes(t.key);i=b(e,t.target,n,!0)}i&&(i.focus({preventScroll:!0}),Vs.getOrCreateInstance(i).show())}_getChildren(){return z.find(Rs,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=z.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=z.findOne(t,i);s&&s.classList.toggle(n,e)};n(".dropdown-toggle",Fs),n(".dropdown-menu",Ws),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(Fs)}_getInnerElement(t){return t.matches(Rs)?t:z.findOne(Rs,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=Vs.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(document,Ls,zs,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this)||Vs.getOrCreateInstance(this).show()})),N.on(window,Ds,(()=>{for(const t of z.find(qs))Vs.getOrCreateInstance(t)})),m(Vs);const Ks=".bs.toast",Qs=`mouseover${Ks}`,Xs=`mouseout${Ks}`,Ys=`focusin${Ks}`,Us=`focusout${Ks}`,Gs=`hide${Ks}`,Js=`hidden${Ks}`,Zs=`show${Ks}`,to=`shown${Ks}`,eo="hide",io="show",no="showing",so={animation:"boolean",autohide:"boolean",delay:"number"},oo={animation:!0,autohide:!0,delay:5e3};class ro extends W{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return oo}static get DefaultType(){return so}static get NAME(){return"toast"}show(){N.trigger(this._element,Zs).defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(eo),d(this._element),this._element.classList.add(io,no),this._queueCallback((()=>{this._element.classList.remove(no),N.trigger(this._element,to),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(N.trigger(this._element,Gs).defaultPrevented||(this._element.classList.add(no),this._queueCallback((()=>{this._element.classList.add(eo),this._element.classList.remove(no,io),N.trigger(this._element,Js)}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(io),super.dispose()}isShown(){return this._element.classList.contains(io)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){N.on(this._element,Qs,(t=>this._onInteraction(t,!0))),N.on(this._element,Xs,(t=>this._onInteraction(t,!1))),N.on(this._element,Ys,(t=>this._onInteraction(t,!0))),N.on(this._element,Us,(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=ro.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(ro),m(ro),{Alert:Q,Button:Y,Carousel:xt,Collapse:Bt,Dropdown:qi,Modal:On,Offcanvas:qn,Popover:us,ScrollSpy:Es,Tab:Vs,Toast:ro,Tooltip:cs}}));
-//# sourceMappingURL=bootstrap.bundle.min.js.map
\ No newline at end of file
diff --git a/_site/site_libs/clipboard/clipboard.min.js b/_site/site_libs/clipboard/clipboard.min.js
deleted file mode 100644
index 1103f811ed80f17985ecf61e0d50e3359484244f..0000000000000000000000000000000000000000
--- a/_site/site_libs/clipboard/clipboard.min.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * clipboard.js v2.0.11
- * https://clipboardjs.com/
- *
- * Licensed MIT Β© Zeno Rocha
- */
-!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return b}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),r=n.n(e);function c(t){try{return document.execCommand(t)}catch(t){return}}var a=function(t){t=r()(t);return c("cut"),t};function o(t,e){var n,o,t=(n=t,o="rtl"===document.documentElement.getAttribute("dir"),(t=document.createElement("textarea")).style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[o?"right":"left"]="-9999px",o=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(o,"px"),t.setAttribute("readonly",""),t.value=n,t);return e.container.appendChild(t),e=r()(t),c("copy"),t.remove(),e}var f=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body},n="";return"string"==typeof t?n=o(t,e):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(null==t?void 0:t.type)?n=o(t.value,e):(n=r()(t),c("copy")),n};function l(t){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var s=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.action,n=void 0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==e){if(!e||"object"!==l(e)||1!==e.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return t?f(t,{container:o}):e?"cut"===n?a(e):f(e,{container:o}):void 0};function p(t){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function y(t,e){return(y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function h(n){var o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=v(n);return t=o?(t=v(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeof t?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}function v(t){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))return e.getAttribute(t)}var b=function(){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());var t,e,n,o=h(r);function r(t,e){var n;return function(t){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}return t=r,n=[{key:"copy",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body};return f(t,e)}},{key:"cut",value:function(t){return a(t)}},{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],t="string"==typeof t?[t]:t,e=!!document.queryCommandSupported;return t.forEach(function(t){e=e&&!!document.queryCommandSupported(t)}),e}}],(e=[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===p(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=u()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget,n=this.action(e)||"copy",t=s({action:n,container:this.container,target:this.target(e),text:this.text(e)});this.emit(t?"success":"error",{action:n,text:t,trigger:e,clearSelection:function(){e&&e.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return m("action",t)}},{key:"defaultTarget",value:function(t){t=m("target",t);if(t)return document.querySelector(t)}},{key:"defaultText",value:function(t){return m("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}])&&d(t.prototype,e),n&&d(t,n),r}()},828:function(t){var e;"undefined"==typeof Element||Element.prototype.matches||((e=Element.prototype).matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector),t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},438:function(t,e,n){var u=n(828);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=u(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},879:function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,n){var f=n(879),l=n(438);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!f.string(e))throw new TypeError("Second argument must be a String");if(!f.fn(n))throw new TypeError("Third argument must be a Function");if(f.node(t))return c=e,a=n,(u=t).addEventListener(c,a),{destroy:function(){u.removeEventListener(c,a)}};if(f.nodeList(t))return o=t,r=e,i=n,Array.prototype.forEach.call(o,function(t){t.addEventListener(r,i)}),{destroy:function(){Array.prototype.forEach.call(o,function(t){t.removeEventListener(r,i)})}};if(f.string(t))return t=t,e=e,n=n,l(document.body,t,e,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,u,c,a}},817:function(t){t.exports=function(t){var e,n="SELECT"===t.nodeName?(t.focus(),t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((e=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),e||t.removeAttribute("readonly"),t.value):(t.hasAttribute("contenteditable")&&t.focus(),n=window.getSelection(),(e=document.createRange()).selectNodeContents(t),n.removeAllRanges(),n.addRange(e),n.toString());return n}},279:function(t){function e(){}e.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,u=o.length;i<u;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=e,t.exports.TinyEmitter=e}},r={},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o(686).default;function o(t){if(r[t])return r[t].exports;var e=r[t]={exports:{}};return n[t](e,e.exports,o),e.exports}var n,r});
\ No newline at end of file
diff --git a/_site/site_libs/quarto-html/anchor.min.js b/_site/site_libs/quarto-html/anchor.min.js
deleted file mode 100644
index 5ac814d1e2bf288721fe5f4d9f0aae2a6283903e..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/anchor.min.js
+++ /dev/null
@@ -1,9 +0,0 @@
-// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
-//
-// AnchorJS - v5.0.0 - 2023-01-18
-// https://www.bryanbraun.com/anchorjs/
-// Copyright (c) 2023 Bryan Braun; Licensed MIT
-//
-// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
-!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(globalThis,function(){"use strict";return function(A){function u(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function d(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],u(this.options),this.add=function(A){var e,t,o,i,n,s,a,r,l,c,h,p=[];if(u(this.options),0!==(e=d(A=A||"h2, h3, h4, h5, h6")).length){for(null===document.head.querySelector("style.anchorjs")&&((A=document.createElement("style")).className="anchorjs",A.appendChild(document.createTextNode("")),void 0===(h=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(A):document.head.insertBefore(A,h),A.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",A.sheet.cssRules.length),A.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",A.sheet.cssRules.length),A.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",A.sheet.cssRules.length),A.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',A.sheet.cssRules.length)),h=document.querySelectorAll("[id]"),t=[].map.call(h,function(A){return A.id}),i=0;i<e.length;i++)if(this.hasAnchorJSLink(e[i]))p.push(i);else{if(e[i].hasAttribute("id"))o=e[i].getAttribute("id");else if(e[i].hasAttribute("data-anchor-id"))o=e[i].getAttribute("data-anchor-id");else{for(r=a=this.urlify(e[i].textContent),s=0;n=t.indexOf(r=void 0!==n?a+"-"+s:r),s+=1,-1!==n;);n=void 0,t.push(r),e[i].setAttribute("id",r),o=r}(l=document.createElement("a")).className="anchorjs-link "+this.options.class,l.setAttribute("aria-label",this.options.ariaLabel),l.setAttribute("data-anchorjs-icon",this.options.icon),this.options.titleText&&(l.title=this.options.titleText),c=document.querySelector("base")?window.location.pathname+window.location.search:"",c=this.options.base||c,l.href=c+"#"+o,"always"===this.options.visible&&(l.style.opacity="1"),""===this.options.icon&&(l.style.font="1em/1 anchorjs-icons","left"===this.options.placement)&&(l.style.lineHeight="inherit"),"left"===this.options.placement?(l.style.position="absolute",l.style.marginLeft="-1.25em",l.style.paddingRight=".25em",l.style.paddingLeft=".25em",e[i].insertBefore(l,e[i].firstChild)):(l.style.marginLeft=".1875em",l.style.paddingRight=".1875em",l.style.paddingLeft=".1875em",e[i].appendChild(l))}for(i=0;i<p.length;i++)e.splice(p[i]-i,1);this.elements=this.elements.concat(e)}return this},this.remove=function(A){for(var e,t,o=d(A),i=0;i<o.length;i++)(t=o[i].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(o[i]))&&this.elements.splice(e,1),o[i].removeChild(t));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(A){var e=document.createElement("textarea");return e.innerHTML=A,A=e.value,this.options.truncate||u(this.options),A.trim().replace(/'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}});
-// @license-end
\ No newline at end of file
diff --git a/_site/site_libs/quarto-html/popper.min.js b/_site/site_libs/quarto-html/popper.min.js
deleted file mode 100644
index e3726d728b717eb344760b3db47f7e9b142ed0fb..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/popper.min.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/**
- * @popperjs/core v2.11.7 - MIT License
- */
-
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function c(){return!/^((?!chrome|android).)*safari/i.test(f())}function p(e,o,i){void 0===o&&(o=!1),void 0===i&&(i=!1);var a=e.getBoundingClientRect(),f=1,p=1;o&&r(e)&&(f=e.offsetWidth>0&&s(a.width)/e.offsetWidth||1,p=e.offsetHeight>0&&s(a.height)/e.offsetHeight||1);var u=(n(e)?t(e):window).visualViewport,l=!c()&&i,d=(a.left+(l&&u?u.offsetLeft:0))/f,h=(a.top+(l&&u?u.offsetTop:0))/p,m=a.width/f,v=a.height/p;return{width:m,height:v,top:h,right:d+m,bottom:h+v,left:d,x:d,y:h}}function u(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function l(e){return e?(e.nodeName||"").toLowerCase():null}function d(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function h(e){return p(d(e)).left+u(e).scrollLeft}function m(e){return t(e).getComputedStyle(e)}function v(e){var t=m(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function y(e,n,o){void 0===o&&(o=!1);var i,a,f=r(n),c=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),m=d(n),y=p(e,c,o),g={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(f||!f&&!o)&&(("body"!==l(n)||v(m))&&(g=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:u(i)),r(n)?((b=p(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):m&&(b.x=h(m))),{x:y.left+g.scrollLeft-b.x,y:y.top+g.scrollTop-b.y,width:y.width,height:y.height}}function g(e){var t=p(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function b(e){return"html"===l(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||d(e)}function x(e){return["html","body","#document"].indexOf(l(e))>=0?e.ownerDocument.body:r(e)&&v(e)?e:x(b(e))}function w(e,n){var r;void 0===n&&(n=[]);var o=x(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],v(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(w(b(s)))}function O(e){return["table","td","th"].indexOf(l(e))>=0}function j(e){return r(e)&&"fixed"!==m(e).position?e.offsetParent:null}function E(e){for(var n=t(e),i=j(e);i&&O(i)&&"static"===m(i).position;)i=j(i);return i&&("html"===l(i)||"body"===l(i)&&"static"===m(i).position)?n:i||function(e){var t=/firefox/i.test(f());if(/Trident/i.test(f())&&r(e)&&"fixed"===m(e).position)return null;var n=b(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(l(n))<0;){var i=m(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var D="top",A="bottom",L="right",P="left",M="auto",k=[D,A,L,P],W="start",B="end",H="viewport",T="popper",R=k.reduce((function(e,t){return e.concat([t+"-"+W,t+"-"+B])}),[]),S=[].concat(k,[M]).reduce((function(e,t){return e.concat([t,t+"-"+W,t+"-"+B])}),[]),V=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function q(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function N(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function I(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function _(e,r,o){return r===H?I(function(e,n){var r=t(e),o=d(e),i=r.visualViewport,a=o.clientWidth,s=o.clientHeight,f=0,p=0;if(i){a=i.width,s=i.height;var u=c();(u||!u&&"fixed"===n)&&(f=i.offsetLeft,p=i.offsetTop)}return{width:a,height:s,x:f+h(e),y:p}}(e,o)):n(r)?function(e,t){var n=p(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}(r,o):I(function(e){var t,n=d(e),r=u(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=i(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=i(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),f=-r.scrollLeft+h(e),c=-r.scrollTop;return"rtl"===m(o||n).direction&&(f+=i(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:f,y:c}}(d(e)))}function F(e,t,o,s){var f="clippingParents"===t?function(e){var t=w(b(e)),o=["absolute","fixed"].indexOf(m(e).position)>=0&&r(e)?E(e):e;return n(o)?t.filter((function(e){return n(e)&&N(e,o)&&"body"!==l(e)})):[]}(e):[].concat(t),c=[].concat(f,[o]),p=c[0],u=c.reduce((function(t,n){var r=_(e,n,s);return t.top=i(r.top,t.top),t.right=a(r.right,t.right),t.bottom=a(r.bottom,t.bottom),t.left=i(r.left,t.left),t}),_(e,p,s));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function U(e){return e.split("-")[1]}function z(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function X(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?C(o):null,a=o?U(o):null,s=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(i){case D:t={x:s,y:n.y-r.height};break;case A:t={x:s,y:n.y+n.height};break;case L:t={x:n.x+n.width,y:f};break;case P:t={x:n.x-r.width,y:f};break;default:t={x:n.x,y:n.y}}var c=i?z(i):null;if(null!=c){var p="y"===c?"height":"width";switch(a){case W:t[c]=t[c]-(n[p]/2-r[p]/2);break;case B:t[c]=t[c]+(n[p]/2-r[p]/2)}}return t}function Y(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function G(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function J(e,t){void 0===t&&(t={});var r=t,o=r.placement,i=void 0===o?e.placement:o,a=r.strategy,s=void 0===a?e.strategy:a,f=r.boundary,c=void 0===f?"clippingParents":f,u=r.rootBoundary,l=void 0===u?H:u,h=r.elementContext,m=void 0===h?T:h,v=r.altBoundary,y=void 0!==v&&v,g=r.padding,b=void 0===g?0:g,x=Y("number"!=typeof b?b:G(b,k)),w=m===T?"reference":T,O=e.rects.popper,j=e.elements[y?w:m],E=F(n(j)?j:j.contextElement||d(e.elements.popper),c,l,s),P=p(e.elements.reference),M=X({reference:P,element:O,strategy:"absolute",placement:i}),W=I(Object.assign({},O,M)),B=m===T?W:P,R={top:E.top-B.top+x.top,bottom:B.bottom-E.bottom+x.bottom,left:E.left-B.left+x.left,right:B.right-E.right+x.right},S=e.modifiersData.offset;if(m===T&&S){var V=S[i];Object.keys(R).forEach((function(e){var t=[L,A].indexOf(e)>=0?1:-1,n=[D,A].indexOf(e)>=0?"y":"x";R[e]+=V[n]*t}))}return R}var K={placement:"bottom",modifiers:[],strategy:"absolute"};function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function Z(e){void 0===e&&(e={});var t=e,r=t.defaultModifiers,o=void 0===r?[]:r,i=t.defaultOptions,a=void 0===i?K:i;return function(e,t,r){void 0===r&&(r=a);var i,s,f={placement:"bottom",orderedModifiers:[],options:Object.assign({},K,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],p=!1,u={state:f,setOptions:function(r){var i="function"==typeof r?r(f.options):r;l(),f.options=Object.assign({},a,f.options,i),f.scrollParents={reference:n(e)?w(e):e.contextElement?w(e.contextElement):[],popper:w(t)};var s,p,d=function(e){var t=q(e);return V.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}((s=[].concat(o,f.options.modifiers),p=s.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{}),Object.keys(p).map((function(e){return p[e]}))));return f.orderedModifiers=d.filter((function(e){return e.enabled})),f.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,o=e.effect;if("function"==typeof o){var i=o({state:f,name:t,instance:u,options:r}),a=function(){};c.push(i||a)}})),u.update()},forceUpdate:function(){if(!p){var e=f.elements,t=e.reference,n=e.popper;if(Q(t,n)){f.rects={reference:y(t,E(n),"fixed"===f.options.strategy),popper:g(n)},f.reset=!1,f.placement=f.options.placement,f.orderedModifiers.forEach((function(e){return f.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<f.orderedModifiers.length;r++)if(!0!==f.reset){var o=f.orderedModifiers[r],i=o.fn,a=o.options,s=void 0===a?{}:a,c=o.name;"function"==typeof i&&(f=i({state:f,options:s,name:c,instance:u})||f)}else f.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){u.forceUpdate(),e(f)}))},function(){return s||(s=new Promise((function(e){Promise.resolve().then((function(){s=void 0,e(i())}))}))),s}),destroy:function(){l(),p=!0}};if(!Q(e,t))return u;function l(){c.forEach((function(e){return e()})),c=[]}return u.setOptions(r).then((function(e){!p&&r.onFirstUpdate&&r.onFirstUpdate(e)})),u}}var $={passive:!0};var ee={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,r=e.instance,o=e.options,i=o.scroll,a=void 0===i||i,s=o.resize,f=void 0===s||s,c=t(n.elements.popper),p=[].concat(n.scrollParents.reference,n.scrollParents.popper);return a&&p.forEach((function(e){e.addEventListener("scroll",r.update,$)})),f&&c.addEventListener("resize",r.update,$),function(){a&&p.forEach((function(e){e.removeEventListener("scroll",r.update,$)})),f&&c.removeEventListener("resize",r.update,$)}},data:{}};var te={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=X({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},ne={top:"auto",right:"auto",bottom:"auto",left:"auto"};function re(e){var n,r=e.popper,o=e.popperRect,i=e.placement,a=e.variation,f=e.offsets,c=e.position,p=e.gpuAcceleration,u=e.adaptive,l=e.roundOffsets,h=e.isFixed,v=f.x,y=void 0===v?0:v,g=f.y,b=void 0===g?0:g,x="function"==typeof l?l({x:y,y:b}):{x:y,y:b};y=x.x,b=x.y;var w=f.hasOwnProperty("x"),O=f.hasOwnProperty("y"),j=P,M=D,k=window;if(u){var W=E(r),H="clientHeight",T="clientWidth";if(W===t(r)&&"static"!==m(W=d(r)).position&&"absolute"===c&&(H="scrollHeight",T="scrollWidth"),W=W,i===D||(i===P||i===L)&&a===B)M=A,b-=(h&&W===k&&k.visualViewport?k.visualViewport.height:W[H])-o.height,b*=p?1:-1;if(i===P||(i===D||i===A)&&a===B)j=L,y-=(h&&W===k&&k.visualViewport?k.visualViewport.width:W[T])-o.width,y*=p?1:-1}var R,S=Object.assign({position:c},u&&ne),V=!0===l?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:s(n*o)/o||0,y:s(r*o)/o||0}}({x:y,y:b},t(r)):{x:y,y:b};return y=V.x,b=V.y,p?Object.assign({},S,((R={})[M]=O?"0":"",R[j]=w?"0":"",R.transform=(k.devicePixelRatio||1)<=1?"translate("+y+"px, "+b+"px)":"translate3d("+y+"px, "+b+"px, 0)",R)):Object.assign({},S,((n={})[M]=O?b+"px":"",n[j]=w?y+"px":"",n.transform="",n))}var oe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,f=void 0===s||s,c={placement:C(t.placement),variation:U(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,re(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:f})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,re(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var ie={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},i=t.elements[e];r(i)&&l(i)&&(Object.assign(i.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});r(o)&&l(o)&&(Object.assign(o.style,a),Object.keys(i).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]};var ae={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,a=S.reduce((function(e,n){return e[n]=function(e,t,n){var r=C(e),o=[P,D].indexOf(r)>=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[P,L].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],f=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=f,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}},se={left:"right",right:"left",bottom:"top",top:"bottom"};function fe(e){return e.replace(/left|right|bottom|top/g,(function(e){return se[e]}))}var ce={start:"end",end:"start"};function pe(e){return e.replace(/start|end/g,(function(e){return ce[e]}))}function ue(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=void 0===f?S:f,p=U(r),u=p?s?R:R.filter((function(e){return U(e)===p})):k,l=u.filter((function(e){return c.indexOf(e)>=0}));0===l.length&&(l=u);var d=l.reduce((function(t,n){return t[n]=J(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[C(n)],t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}var le={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,f=n.fallbackPlacements,c=n.padding,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.flipVariations,h=void 0===d||d,m=n.allowedAutoPlacements,v=t.options.placement,y=C(v),g=f||(y===v||!h?[fe(v)]:function(e){if(C(e)===M)return[];var t=fe(e);return[pe(e),t,pe(t)]}(v)),b=[v].concat(g).reduce((function(e,n){return e.concat(C(n)===M?ue(t,{placement:n,boundary:p,rootBoundary:u,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,O=new Map,j=!0,E=b[0],k=0;k<b.length;k++){var B=b[k],H=C(B),T=U(B)===W,R=[D,A].indexOf(H)>=0,S=R?"width":"height",V=J(t,{placement:B,boundary:p,rootBoundary:u,altBoundary:l,padding:c}),q=R?T?L:P:T?A:D;x[S]>w[S]&&(q=fe(q));var N=fe(q),I=[];if(i&&I.push(V[H]<=0),s&&I.push(V[q]<=0,V[N]<=0),I.every((function(e){return e}))){E=B,j=!1;break}O.set(B,I)}if(j)for(var _=function(e){var t=b.find((function(t){var n=O.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return E=t,"break"},F=h?3:1;F>0;F--){if("break"===_(F))break}t.placement!==E&&(t.modifiersData[r]._skip=!0,t.placement=E,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function de(e,t,n){return i(e,a(t,n))}var he={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=void 0===o||o,f=n.altAxis,c=void 0!==f&&f,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.padding,h=n.tether,m=void 0===h||h,v=n.tetherOffset,y=void 0===v?0:v,b=J(t,{boundary:p,rootBoundary:u,padding:d,altBoundary:l}),x=C(t.placement),w=U(t.placement),O=!w,j=z(x),M="x"===j?"y":"x",k=t.modifiersData.popperOffsets,B=t.rects.reference,H=t.rects.popper,T="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,R="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,V={x:0,y:0};if(k){if(s){var q,N="y"===j?D:P,I="y"===j?A:L,_="y"===j?"height":"width",F=k[j],X=F+b[N],Y=F-b[I],G=m?-H[_]/2:0,K=w===W?B[_]:H[_],Q=w===W?-H[_]:-B[_],Z=t.elements.arrow,$=m&&Z?g(Z):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[N],ne=ee[I],re=de(0,B[_],$[_]),oe=O?B[_]/2-G-re-te-R.mainAxis:K-re-te-R.mainAxis,ie=O?-B[_]/2+G+re+ne+R.mainAxis:Q+re+ne+R.mainAxis,ae=t.elements.arrow&&E(t.elements.arrow),se=ae?"y"===j?ae.clientTop||0:ae.clientLeft||0:0,fe=null!=(q=null==S?void 0:S[j])?q:0,ce=F+ie-fe,pe=de(m?a(X,F+oe-fe-se):X,F,m?i(Y,ce):Y);k[j]=pe,V[j]=pe-F}if(c){var ue,le="x"===j?D:P,he="x"===j?A:L,me=k[M],ve="y"===M?"height":"width",ye=me+b[le],ge=me-b[he],be=-1!==[D,P].indexOf(x),xe=null!=(ue=null==S?void 0:S[M])?ue:0,we=be?ye:me-B[ve]-H[ve]-xe+R.altAxis,Oe=be?me+B[ve]+H[ve]-xe-R.altAxis:ge,je=m&&be?function(e,t,n){var r=de(e,t,n);return r>n?n:r}(we,me,Oe):de(m?we:ye,me,m?Oe:ge);k[M]=je,V[M]=je-me}t.modifiersData[r]=V}},requiresIfExists:["offset"]};var me={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=C(n.placement),f=z(s),c=[P,L].indexOf(s)>=0?"height":"width";if(i&&a){var p=function(e,t){return Y("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:G(e,k))}(o.padding,n),u=g(i),l="y"===f?D:P,d="y"===f?A:L,h=n.rects.reference[c]+n.rects.reference[f]-a[f]-n.rects.popper[c],m=a[f]-n.rects.reference[f],v=E(i),y=v?"y"===f?v.clientHeight||0:v.clientWidth||0:0,b=h/2-m/2,x=p[l],w=y-u[c]-p[d],O=y/2-u[c]/2+b,j=de(x,O,w),M=f;n.modifiersData[r]=((t={})[M]=j,t.centerOffset=j-O,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&N(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ve(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 ye(e){return[D,L,A,P].some((function(t){return e[t]>=0}))}var ge={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=J(t,{elementContext:"reference"}),s=J(t,{altBoundary:!0}),f=ve(a,r),c=ve(s,o,i),p=ye(f),u=ye(c);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":u})}},be=Z({defaultModifiers:[ee,te,oe,ie]}),xe=[ee,te,oe,ie,ae,le,he,me,ge],we=Z({defaultModifiers:xe});e.applyStyles=ie,e.arrow=me,e.computeStyles=oe,e.createPopper=we,e.createPopperLite=be,e.defaultModifiers=xe,e.detectOverflow=J,e.eventListeners=ee,e.flip=le,e.hide=ge,e.offset=ae,e.popperGenerator=Z,e.popperOffsets=te,e.preventOverflow=he,Object.defineProperty(e,"__esModule",{value:!0})}));
-
diff --git a/_site/site_libs/quarto-html/quarto-syntax-highlighting.css b/_site/site_libs/quarto-html/quarto-syntax-highlighting.css
deleted file mode 100644
index d9fd98f040973821b431026876f51351960f58e0..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/quarto-syntax-highlighting.css
+++ /dev/null
@@ -1,203 +0,0 @@
-/* quarto syntax highlight colors */
-:root {
-  --quarto-hl-ot-color: #003B4F;
-  --quarto-hl-at-color: #657422;
-  --quarto-hl-ss-color: #20794D;
-  --quarto-hl-an-color: #5E5E5E;
-  --quarto-hl-fu-color: #4758AB;
-  --quarto-hl-st-color: #20794D;
-  --quarto-hl-cf-color: #003B4F;
-  --quarto-hl-op-color: #5E5E5E;
-  --quarto-hl-er-color: #AD0000;
-  --quarto-hl-bn-color: #AD0000;
-  --quarto-hl-al-color: #AD0000;
-  --quarto-hl-va-color: #111111;
-  --quarto-hl-bu-color: inherit;
-  --quarto-hl-ex-color: inherit;
-  --quarto-hl-pp-color: #AD0000;
-  --quarto-hl-in-color: #5E5E5E;
-  --quarto-hl-vs-color: #20794D;
-  --quarto-hl-wa-color: #5E5E5E;
-  --quarto-hl-do-color: #5E5E5E;
-  --quarto-hl-im-color: #00769E;
-  --quarto-hl-ch-color: #20794D;
-  --quarto-hl-dt-color: #AD0000;
-  --quarto-hl-fl-color: #AD0000;
-  --quarto-hl-co-color: #5E5E5E;
-  --quarto-hl-cv-color: #5E5E5E;
-  --quarto-hl-cn-color: #8f5902;
-  --quarto-hl-sc-color: #5E5E5E;
-  --quarto-hl-dv-color: #AD0000;
-  --quarto-hl-kw-color: #003B4F;
-}
-
-/* other quarto variables */
-:root {
-  --quarto-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
-}
-
-pre > code.sourceCode > span {
-  color: #003B4F;
-}
-
-code span {
-  color: #003B4F;
-}
-
-code.sourceCode > span {
-  color: #003B4F;
-}
-
-div.sourceCode,
-div.sourceCode pre.sourceCode {
-  color: #003B4F;
-}
-
-code span.ot {
-  color: #003B4F;
-  font-style: inherit;
-}
-
-code span.at {
-  color: #657422;
-  font-style: inherit;
-}
-
-code span.ss {
-  color: #20794D;
-  font-style: inherit;
-}
-
-code span.an {
-  color: #5E5E5E;
-  font-style: inherit;
-}
-
-code span.fu {
-  color: #4758AB;
-  font-style: inherit;
-}
-
-code span.st {
-  color: #20794D;
-  font-style: inherit;
-}
-
-code span.cf {
-  color: #003B4F;
-  font-style: inherit;
-}
-
-code span.op {
-  color: #5E5E5E;
-  font-style: inherit;
-}
-
-code span.er {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.bn {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.al {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.va {
-  color: #111111;
-  font-style: inherit;
-}
-
-code span.bu {
-  font-style: inherit;
-}
-
-code span.ex {
-  font-style: inherit;
-}
-
-code span.pp {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.in {
-  color: #5E5E5E;
-  font-style: inherit;
-}
-
-code span.vs {
-  color: #20794D;
-  font-style: inherit;
-}
-
-code span.wa {
-  color: #5E5E5E;
-  font-style: italic;
-}
-
-code span.do {
-  color: #5E5E5E;
-  font-style: italic;
-}
-
-code span.im {
-  color: #00769E;
-  font-style: inherit;
-}
-
-code span.ch {
-  color: #20794D;
-  font-style: inherit;
-}
-
-code span.dt {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.fl {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.co {
-  color: #5E5E5E;
-  font-style: inherit;
-}
-
-code span.cv {
-  color: #5E5E5E;
-  font-style: italic;
-}
-
-code span.cn {
-  color: #8f5902;
-  font-style: inherit;
-}
-
-code span.sc {
-  color: #5E5E5E;
-  font-style: inherit;
-}
-
-code span.dv {
-  color: #AD0000;
-  font-style: inherit;
-}
-
-code span.kw {
-  color: #003B4F;
-  font-style: inherit;
-}
-
-.prevent-inlining {
-  content: "</";
-}
-
-/*# sourceMappingURL=debc5d5d77c3f9108843748ff7464032.css.map */
diff --git a/_site/site_libs/quarto-html/quarto.js b/_site/site_libs/quarto-html/quarto.js
deleted file mode 100644
index 3ebd49cbd32b65fe49a4b82e4cd09ca0d11709fd..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/quarto.js
+++ /dev/null
@@ -1,899 +0,0 @@
-const sectionChanged = new CustomEvent("quarto-sectionChanged", {
-  detail: {},
-  bubbles: true,
-  cancelable: false,
-  composed: false,
-});
-
-const layoutMarginEls = () => {
-  // Find any conflicting margin elements and add margins to the
-  // top to prevent overlap
-  const marginChildren = window.document.querySelectorAll(
-    ".column-margin.column-container > *, .margin-caption, .aside"
-  );
-
-  let lastBottom = 0;
-  for (const marginChild of marginChildren) {
-    if (marginChild.offsetParent !== null) {
-      // clear the top margin so we recompute it
-      marginChild.style.marginTop = null;
-      const top = marginChild.getBoundingClientRect().top + window.scrollY;
-      if (top < lastBottom) {
-        const marginChildStyle = window.getComputedStyle(marginChild);
-        const marginBottom = parseFloat(marginChildStyle["marginBottom"]);
-        const margin = lastBottom - top + marginBottom;
-        marginChild.style.marginTop = `${margin}px`;
-      }
-      const styles = window.getComputedStyle(marginChild);
-      const marginTop = parseFloat(styles["marginTop"]);
-      lastBottom = top + marginChild.getBoundingClientRect().height + marginTop;
-    }
-  }
-};
-
-window.document.addEventListener("DOMContentLoaded", function (_event) {
-  // Recompute the position of margin elements anytime the body size changes
-  if (window.ResizeObserver) {
-    const resizeObserver = new window.ResizeObserver(
-      throttle(() => {
-        layoutMarginEls();
-        if (
-          window.document.body.getBoundingClientRect().width < 990 &&
-          isReaderMode()
-        ) {
-          quartoToggleReader();
-        }
-      }, 50)
-    );
-    resizeObserver.observe(window.document.body);
-  }
-
-  const tocEl = window.document.querySelector('nav.toc-active[role="doc-toc"]');
-  const sidebarEl = window.document.getElementById("quarto-sidebar");
-  const leftTocEl = window.document.getElementById("quarto-sidebar-toc-left");
-  const marginSidebarEl = window.document.getElementById(
-    "quarto-margin-sidebar"
-  );
-  // function to determine whether the element has a previous sibling that is active
-  const prevSiblingIsActiveLink = (el) => {
-    const sibling = el.previousElementSibling;
-    if (sibling && sibling.tagName === "A") {
-      return sibling.classList.contains("active");
-    } else {
-      return false;
-    }
-  };
-
-  // fire slideEnter for bootstrap tab activations (for htmlwidget resize behavior)
-  function fireSlideEnter(e) {
-    const event = window.document.createEvent("Event");
-    event.initEvent("slideenter", true, true);
-    window.document.dispatchEvent(event);
-  }
-  const tabs = window.document.querySelectorAll('a[data-bs-toggle="tab"]');
-  tabs.forEach((tab) => {
-    tab.addEventListener("shown.bs.tab", fireSlideEnter);
-  });
-
-  // fire slideEnter for tabby tab activations (for htmlwidget resize behavior)
-  document.addEventListener("tabby", fireSlideEnter, false);
-
-  // Track scrolling and mark TOC links as active
-  // get table of contents and sidebar (bail if we don't have at least one)
-  const tocLinks = tocEl
-    ? [...tocEl.querySelectorAll("a[data-scroll-target]")]
-    : [];
-  const makeActive = (link) => tocLinks[link].classList.add("active");
-  const removeActive = (link) => tocLinks[link].classList.remove("active");
-  const removeAllActive = () =>
-    [...Array(tocLinks.length).keys()].forEach((link) => removeActive(link));
-
-  // activate the anchor for a section associated with this TOC entry
-  tocLinks.forEach((link) => {
-    link.addEventListener("click", () => {
-      if (link.href.indexOf("#") !== -1) {
-        const anchor = link.href.split("#")[1];
-        const heading = window.document.querySelector(
-          `[data-anchor-id=${anchor}]`
-        );
-        if (heading) {
-          // Add the class
-          heading.classList.add("reveal-anchorjs-link");
-
-          // function to show the anchor
-          const handleMouseout = () => {
-            heading.classList.remove("reveal-anchorjs-link");
-            heading.removeEventListener("mouseout", handleMouseout);
-          };
-
-          // add a function to clear the anchor when the user mouses out of it
-          heading.addEventListener("mouseout", handleMouseout);
-        }
-      }
-    });
-  });
-
-  const sections = tocLinks.map((link) => {
-    const target = link.getAttribute("data-scroll-target");
-    if (target.startsWith("#")) {
-      return window.document.getElementById(decodeURI(`${target.slice(1)}`));
-    } else {
-      return window.document.querySelector(decodeURI(`${target}`));
-    }
-  });
-
-  const sectionMargin = 200;
-  let currentActive = 0;
-  // track whether we've initialized state the first time
-  let init = false;
-
-  const updateActiveLink = () => {
-    // The index from bottom to top (e.g. reversed list)
-    let sectionIndex = -1;
-    if (
-      window.innerHeight + window.pageYOffset >=
-      window.document.body.offsetHeight
-    ) {
-      sectionIndex = 0;
-    } else {
-      sectionIndex = [...sections].reverse().findIndex((section) => {
-        if (section) {
-          return window.pageYOffset >= section.offsetTop - sectionMargin;
-        } else {
-          return false;
-        }
-      });
-    }
-    if (sectionIndex > -1) {
-      const current = sections.length - sectionIndex - 1;
-      if (current !== currentActive) {
-        removeAllActive();
-        currentActive = current;
-        makeActive(current);
-        if (init) {
-          window.dispatchEvent(sectionChanged);
-        }
-        init = true;
-      }
-    }
-  };
-
-  const inHiddenRegion = (top, bottom, hiddenRegions) => {
-    for (const region of hiddenRegions) {
-      if (top <= region.bottom && bottom >= region.top) {
-        return true;
-      }
-    }
-    return false;
-  };
-
-  const categorySelector = "header.quarto-title-block .quarto-category";
-  const activateCategories = (href) => {
-    // Find any categories
-    // Surround them with a link pointing back to:
-    // #category=Authoring
-    try {
-      const categoryEls = window.document.querySelectorAll(categorySelector);
-      for (const categoryEl of categoryEls) {
-        const categoryText = categoryEl.textContent;
-        if (categoryText) {
-          const link = `${href}#category=${encodeURIComponent(categoryText)}`;
-          const linkEl = window.document.createElement("a");
-          linkEl.setAttribute("href", link);
-          for (const child of categoryEl.childNodes) {
-            linkEl.append(child);
-          }
-          categoryEl.appendChild(linkEl);
-        }
-      }
-    } catch {
-      // Ignore errors
-    }
-  };
-  function hasTitleCategories() {
-    return window.document.querySelector(categorySelector) !== null;
-  }
-
-  function offsetRelativeUrl(url) {
-    const offset = getMeta("quarto:offset");
-    return offset ? offset + url : url;
-  }
-
-  function offsetAbsoluteUrl(url) {
-    const offset = getMeta("quarto:offset");
-    const baseUrl = new URL(offset, window.location);
-
-    const projRelativeUrl = url.replace(baseUrl, "");
-    if (projRelativeUrl.startsWith("/")) {
-      return projRelativeUrl;
-    } else {
-      return "/" + projRelativeUrl;
-    }
-  }
-
-  // read a meta tag value
-  function getMeta(metaName) {
-    const metas = window.document.getElementsByTagName("meta");
-    for (let i = 0; i < metas.length; i++) {
-      if (metas[i].getAttribute("name") === metaName) {
-        return metas[i].getAttribute("content");
-      }
-    }
-    return "";
-  }
-
-  async function findAndActivateCategories() {
-    const currentPagePath = offsetAbsoluteUrl(window.location.href);
-    const response = await fetch(offsetRelativeUrl("listings.json"));
-    if (response.status == 200) {
-      return response.json().then(function (listingPaths) {
-        const listingHrefs = [];
-        for (const listingPath of listingPaths) {
-          const pathWithoutLeadingSlash = listingPath.listing.substring(1);
-          for (const item of listingPath.items) {
-            if (
-              item === currentPagePath ||
-              item === currentPagePath + "index.html"
-            ) {
-              // Resolve this path against the offset to be sure
-              // we already are using the correct path to the listing
-              // (this adjusts the listing urls to be rooted against
-              // whatever root the page is actually running against)
-              const relative = offsetRelativeUrl(pathWithoutLeadingSlash);
-              const baseUrl = window.location;
-              const resolvedPath = new URL(relative, baseUrl);
-              listingHrefs.push(resolvedPath.pathname);
-              break;
-            }
-          }
-        }
-
-        // Look up the tree for a nearby linting and use that if we find one
-        const nearestListing = findNearestParentListing(
-          offsetAbsoluteUrl(window.location.pathname),
-          listingHrefs
-        );
-        if (nearestListing) {
-          activateCategories(nearestListing);
-        } else {
-          // See if the referrer is a listing page for this item
-          const referredRelativePath = offsetAbsoluteUrl(document.referrer);
-          const referrerListing = listingHrefs.find((listingHref) => {
-            const isListingReferrer =
-              listingHref === referredRelativePath ||
-              listingHref === referredRelativePath + "index.html";
-            return isListingReferrer;
-          });
-
-          if (referrerListing) {
-            // Try to use the referrer if possible
-            activateCategories(referrerListing);
-          } else if (listingHrefs.length > 0) {
-            // Otherwise, just fall back to the first listing
-            activateCategories(listingHrefs[0]);
-          }
-        }
-      });
-    }
-  }
-  if (hasTitleCategories()) {
-    findAndActivateCategories();
-  }
-
-  const findNearestParentListing = (href, listingHrefs) => {
-    if (!href || !listingHrefs) {
-      return undefined;
-    }
-    // Look up the tree for a nearby linting and use that if we find one
-    const relativeParts = href.substring(1).split("/");
-    while (relativeParts.length > 0) {
-      const path = relativeParts.join("/");
-      for (const listingHref of listingHrefs) {
-        if (listingHref.startsWith(path)) {
-          return listingHref;
-        }
-      }
-      relativeParts.pop();
-    }
-
-    return undefined;
-  };
-
-  const manageSidebarVisiblity = (el, placeholderDescriptor) => {
-    let isVisible = true;
-    let elRect;
-
-    return (hiddenRegions) => {
-      if (el === null) {
-        return;
-      }
-
-      // Find the last element of the TOC
-      const lastChildEl = el.lastElementChild;
-
-      if (lastChildEl) {
-        // Converts the sidebar to a menu
-        const convertToMenu = () => {
-          for (const child of el.children) {
-            child.style.opacity = 0;
-            child.style.overflow = "hidden";
-          }
-
-          nexttick(() => {
-            const toggleContainer = window.document.createElement("div");
-            toggleContainer.style.width = "100%";
-            toggleContainer.classList.add("zindex-over-content");
-            toggleContainer.classList.add("quarto-sidebar-toggle");
-            toggleContainer.classList.add("headroom-target"); // Marks this to be managed by headeroom
-            toggleContainer.id = placeholderDescriptor.id;
-            toggleContainer.style.position = "fixed";
-
-            const toggleIcon = window.document.createElement("i");
-            toggleIcon.classList.add("quarto-sidebar-toggle-icon");
-            toggleIcon.classList.add("bi");
-            toggleIcon.classList.add("bi-caret-down-fill");
-
-            const toggleTitle = window.document.createElement("div");
-            const titleEl = window.document.body.querySelector(
-              placeholderDescriptor.titleSelector
-            );
-            if (titleEl) {
-              toggleTitle.append(
-                titleEl.textContent || titleEl.innerText,
-                toggleIcon
-              );
-            }
-            toggleTitle.classList.add("zindex-over-content");
-            toggleTitle.classList.add("quarto-sidebar-toggle-title");
-            toggleContainer.append(toggleTitle);
-
-            const toggleContents = window.document.createElement("div");
-            toggleContents.classList = el.classList;
-            toggleContents.classList.add("zindex-over-content");
-            toggleContents.classList.add("quarto-sidebar-toggle-contents");
-            for (const child of el.children) {
-              if (child.id === "toc-title") {
-                continue;
-              }
-
-              const clone = child.cloneNode(true);
-              clone.style.opacity = 1;
-              clone.style.display = null;
-              toggleContents.append(clone);
-            }
-            toggleContents.style.height = "0px";
-            const positionToggle = () => {
-              // position the element (top left of parent, same width as parent)
-              if (!elRect) {
-                elRect = el.getBoundingClientRect();
-              }
-              toggleContainer.style.left = `${elRect.left}px`;
-              toggleContainer.style.top = `${elRect.top}px`;
-              toggleContainer.style.width = `${elRect.width}px`;
-            };
-            positionToggle();
-
-            toggleContainer.append(toggleContents);
-            el.parentElement.prepend(toggleContainer);
-
-            // Process clicks
-            let tocShowing = false;
-            // Allow the caller to control whether this is dismissed
-            // when it is clicked (e.g. sidebar navigation supports
-            // opening and closing the nav tree, so don't dismiss on click)
-            const clickEl = placeholderDescriptor.dismissOnClick
-              ? toggleContainer
-              : toggleTitle;
-
-            const closeToggle = () => {
-              if (tocShowing) {
-                toggleContainer.classList.remove("expanded");
-                toggleContents.style.height = "0px";
-                tocShowing = false;
-              }
-            };
-
-            // Get rid of any expanded toggle if the user scrolls
-            window.document.addEventListener(
-              "scroll",
-              throttle(() => {
-                closeToggle();
-              }, 50)
-            );
-
-            // Handle positioning of the toggle
-            window.addEventListener(
-              "resize",
-              throttle(() => {
-                elRect = undefined;
-                positionToggle();
-              }, 50)
-            );
-
-            window.addEventListener("quarto-hrChanged", () => {
-              elRect = undefined;
-            });
-
-            // Process the click
-            clickEl.onclick = () => {
-              if (!tocShowing) {
-                toggleContainer.classList.add("expanded");
-                toggleContents.style.height = null;
-                tocShowing = true;
-              } else {
-                closeToggle();
-              }
-            };
-          });
-        };
-
-        // Converts a sidebar from a menu back to a sidebar
-        const convertToSidebar = () => {
-          for (const child of el.children) {
-            child.style.opacity = 1;
-            child.style.overflow = null;
-          }
-
-          const placeholderEl = window.document.getElementById(
-            placeholderDescriptor.id
-          );
-          if (placeholderEl) {
-            placeholderEl.remove();
-          }
-
-          el.classList.remove("rollup");
-        };
-
-        if (isReaderMode()) {
-          convertToMenu();
-          isVisible = false;
-        } else {
-          // Find the top and bottom o the element that is being managed
-          const elTop = el.offsetTop;
-          const elBottom =
-            elTop + lastChildEl.offsetTop + lastChildEl.offsetHeight;
-
-          if (!isVisible) {
-            // If the element is current not visible reveal if there are
-            // no conflicts with overlay regions
-            if (!inHiddenRegion(elTop, elBottom, hiddenRegions)) {
-              convertToSidebar();
-              isVisible = true;
-            }
-          } else {
-            // If the element is visible, hide it if it conflicts with overlay regions
-            // and insert a placeholder toggle (or if we're in reader mode)
-            if (inHiddenRegion(elTop, elBottom, hiddenRegions)) {
-              convertToMenu();
-              isVisible = false;
-            }
-          }
-        }
-      }
-    };
-  };
-
-  const tabEls = document.querySelectorAll('a[data-bs-toggle="tab"]');
-  for (const tabEl of tabEls) {
-    const id = tabEl.getAttribute("data-bs-target");
-    if (id) {
-      const columnEl = document.querySelector(
-        `${id} .column-margin, .tabset-margin-content`
-      );
-      if (columnEl)
-        tabEl.addEventListener("shown.bs.tab", function (event) {
-          const el = event.srcElement;
-          if (el) {
-            const visibleCls = `${el.id}-margin-content`;
-            // walk up until we find a parent tabset
-            let panelTabsetEl = el.parentElement;
-            while (panelTabsetEl) {
-              if (panelTabsetEl.classList.contains("panel-tabset")) {
-                break;
-              }
-              panelTabsetEl = panelTabsetEl.parentElement;
-            }
-
-            if (panelTabsetEl) {
-              const prevSib = panelTabsetEl.previousElementSibling;
-              if (
-                prevSib &&
-                prevSib.classList.contains("tabset-margin-container")
-              ) {
-                const childNodes = prevSib.querySelectorAll(
-                  ".tabset-margin-content"
-                );
-                for (const childEl of childNodes) {
-                  if (childEl.classList.contains(visibleCls)) {
-                    childEl.classList.remove("collapse");
-                  } else {
-                    childEl.classList.add("collapse");
-                  }
-                }
-              }
-            }
-          }
-
-          layoutMarginEls();
-        });
-    }
-  }
-
-  // Manage the visibility of the toc and the sidebar
-  const marginScrollVisibility = manageSidebarVisiblity(marginSidebarEl, {
-    id: "quarto-toc-toggle",
-    titleSelector: "#toc-title",
-    dismissOnClick: true,
-  });
-  const sidebarScrollVisiblity = manageSidebarVisiblity(sidebarEl, {
-    id: "quarto-sidebarnav-toggle",
-    titleSelector: ".title",
-    dismissOnClick: false,
-  });
-  let tocLeftScrollVisibility;
-  if (leftTocEl) {
-    tocLeftScrollVisibility = manageSidebarVisiblity(leftTocEl, {
-      id: "quarto-lefttoc-toggle",
-      titleSelector: "#toc-title",
-      dismissOnClick: true,
-    });
-  }
-
-  // Find the first element that uses formatting in special columns
-  const conflictingEls = window.document.body.querySelectorAll(
-    '[class^="column-"], [class*=" column-"], aside, [class*="margin-caption"], [class*=" margin-caption"], [class*="margin-ref"], [class*=" margin-ref"]'
-  );
-
-  // Filter all the possibly conflicting elements into ones
-  // the do conflict on the left or ride side
-  const arrConflictingEls = Array.from(conflictingEls);
-  const leftSideConflictEls = arrConflictingEls.filter((el) => {
-    if (el.tagName === "ASIDE") {
-      return false;
-    }
-    return Array.from(el.classList).find((className) => {
-      return (
-        className !== "column-body" &&
-        className.startsWith("column-") &&
-        !className.endsWith("right") &&
-        !className.endsWith("container") &&
-        className !== "column-margin"
-      );
-    });
-  });
-  const rightSideConflictEls = arrConflictingEls.filter((el) => {
-    if (el.tagName === "ASIDE") {
-      return true;
-    }
-
-    const hasMarginCaption = Array.from(el.classList).find((className) => {
-      return className == "margin-caption";
-    });
-    if (hasMarginCaption) {
-      return true;
-    }
-
-    return Array.from(el.classList).find((className) => {
-      return (
-        className !== "column-body" &&
-        !className.endsWith("container") &&
-        className.startsWith("column-") &&
-        !className.endsWith("left")
-      );
-    });
-  });
-
-  const kOverlapPaddingSize = 10;
-  function toRegions(els) {
-    return els.map((el) => {
-      const boundRect = el.getBoundingClientRect();
-      const top =
-        boundRect.top +
-        document.documentElement.scrollTop -
-        kOverlapPaddingSize;
-      return {
-        top,
-        bottom: top + el.scrollHeight + 2 * kOverlapPaddingSize,
-      };
-    });
-  }
-
-  let hasObserved = false;
-  const visibleItemObserver = (els) => {
-    let visibleElements = [...els];
-    const intersectionObserver = new IntersectionObserver(
-      (entries, _observer) => {
-        entries.forEach((entry) => {
-          if (entry.isIntersecting) {
-            if (visibleElements.indexOf(entry.target) === -1) {
-              visibleElements.push(entry.target);
-            }
-          } else {
-            visibleElements = visibleElements.filter((visibleEntry) => {
-              return visibleEntry !== entry;
-            });
-          }
-        });
-
-        if (!hasObserved) {
-          hideOverlappedSidebars();
-        }
-        hasObserved = true;
-      },
-      {}
-    );
-    els.forEach((el) => {
-      intersectionObserver.observe(el);
-    });
-
-    return {
-      getVisibleEntries: () => {
-        return visibleElements;
-      },
-    };
-  };
-
-  const rightElementObserver = visibleItemObserver(rightSideConflictEls);
-  const leftElementObserver = visibleItemObserver(leftSideConflictEls);
-
-  const hideOverlappedSidebars = () => {
-    marginScrollVisibility(toRegions(rightElementObserver.getVisibleEntries()));
-    sidebarScrollVisiblity(toRegions(leftElementObserver.getVisibleEntries()));
-    if (tocLeftScrollVisibility) {
-      tocLeftScrollVisibility(
-        toRegions(leftElementObserver.getVisibleEntries())
-      );
-    }
-  };
-
-  window.quartoToggleReader = () => {
-    // Applies a slow class (or removes it)
-    // to update the transition speed
-    const slowTransition = (slow) => {
-      const manageTransition = (id, slow) => {
-        const el = document.getElementById(id);
-        if (el) {
-          if (slow) {
-            el.classList.add("slow");
-          } else {
-            el.classList.remove("slow");
-          }
-        }
-      };
-
-      manageTransition("TOC", slow);
-      manageTransition("quarto-sidebar", slow);
-    };
-    const readerMode = !isReaderMode();
-    setReaderModeValue(readerMode);
-
-    // If we're entering reader mode, slow the transition
-    if (readerMode) {
-      slowTransition(readerMode);
-    }
-    highlightReaderToggle(readerMode);
-    hideOverlappedSidebars();
-
-    // If we're exiting reader mode, restore the non-slow transition
-    if (!readerMode) {
-      slowTransition(!readerMode);
-    }
-  };
-
-  const highlightReaderToggle = (readerMode) => {
-    const els = document.querySelectorAll(".quarto-reader-toggle");
-    if (els) {
-      els.forEach((el) => {
-        if (readerMode) {
-          el.classList.add("reader");
-        } else {
-          el.classList.remove("reader");
-        }
-      });
-    }
-  };
-
-  const setReaderModeValue = (val) => {
-    if (window.location.protocol !== "file:") {
-      window.localStorage.setItem("quarto-reader-mode", val);
-    } else {
-      localReaderMode = val;
-    }
-  };
-
-  const isReaderMode = () => {
-    if (window.location.protocol !== "file:") {
-      return window.localStorage.getItem("quarto-reader-mode") === "true";
-    } else {
-      return localReaderMode;
-    }
-  };
-  let localReaderMode = null;
-
-  const tocOpenDepthStr = tocEl?.getAttribute("data-toc-expanded");
-  const tocOpenDepth = tocOpenDepthStr ? Number(tocOpenDepthStr) : 1;
-
-  // Walk the TOC and collapse/expand nodes
-  // Nodes are expanded if:
-  // - they are top level
-  // - they have children that are 'active' links
-  // - they are directly below an link that is 'active'
-  const walk = (el, depth) => {
-    // Tick depth when we enter a UL
-    if (el.tagName === "UL") {
-      depth = depth + 1;
-    }
-
-    // It this is active link
-    let isActiveNode = false;
-    if (el.tagName === "A" && el.classList.contains("active")) {
-      isActiveNode = true;
-    }
-
-    // See if there is an active child to this element
-    let hasActiveChild = false;
-    for (child of el.children) {
-      hasActiveChild = walk(child, depth) || hasActiveChild;
-    }
-
-    // Process the collapse state if this is an UL
-    if (el.tagName === "UL") {
-      if (tocOpenDepth === -1 && depth > 1) {
-        el.classList.add("collapse");
-      } else if (
-        depth <= tocOpenDepth ||
-        hasActiveChild ||
-        prevSiblingIsActiveLink(el)
-      ) {
-        el.classList.remove("collapse");
-      } else {
-        el.classList.add("collapse");
-      }
-
-      // untick depth when we leave a UL
-      depth = depth - 1;
-    }
-    return hasActiveChild || isActiveNode;
-  };
-
-  // walk the TOC and expand / collapse any items that should be shown
-
-  if (tocEl) {
-    walk(tocEl, 0);
-    updateActiveLink();
-  }
-
-  // Throttle the scroll event and walk peridiocally
-  window.document.addEventListener(
-    "scroll",
-    throttle(() => {
-      if (tocEl) {
-        updateActiveLink();
-        walk(tocEl, 0);
-      }
-      if (!isReaderMode()) {
-        hideOverlappedSidebars();
-      }
-    }, 5)
-  );
-  window.addEventListener(
-    "resize",
-    throttle(() => {
-      if (!isReaderMode()) {
-        hideOverlappedSidebars();
-      }
-    }, 10)
-  );
-  hideOverlappedSidebars();
-  highlightReaderToggle(isReaderMode());
-});
-
-// grouped tabsets
-window.addEventListener("pageshow", (_event) => {
-  function getTabSettings() {
-    const data = localStorage.getItem("quarto-persistent-tabsets-data");
-    if (!data) {
-      localStorage.setItem("quarto-persistent-tabsets-data", "{}");
-      return {};
-    }
-    if (data) {
-      return JSON.parse(data);
-    }
-  }
-
-  function setTabSettings(data) {
-    localStorage.setItem(
-      "quarto-persistent-tabsets-data",
-      JSON.stringify(data)
-    );
-  }
-
-  function setTabState(groupName, groupValue) {
-    const data = getTabSettings();
-    data[groupName] = groupValue;
-    setTabSettings(data);
-  }
-
-  function toggleTab(tab, active) {
-    const tabPanelId = tab.getAttribute("aria-controls");
-    const tabPanel = document.getElementById(tabPanelId);
-    if (active) {
-      tab.classList.add("active");
-      tabPanel.classList.add("active");
-    } else {
-      tab.classList.remove("active");
-      tabPanel.classList.remove("active");
-    }
-  }
-
-  function toggleAll(selectedGroup, selectorsToSync) {
-    for (const [thisGroup, tabs] of Object.entries(selectorsToSync)) {
-      const active = selectedGroup === thisGroup;
-      for (const tab of tabs) {
-        toggleTab(tab, active);
-      }
-    }
-  }
-
-  function findSelectorsToSyncByLanguage() {
-    const result = {};
-    const tabs = Array.from(
-      document.querySelectorAll(`div[data-group] a[id^='tabset-']`)
-    );
-    for (const item of tabs) {
-      const div = item.parentElement.parentElement.parentElement;
-      const group = div.getAttribute("data-group");
-      if (!result[group]) {
-        result[group] = {};
-      }
-      const selectorsToSync = result[group];
-      const value = item.innerHTML;
-      if (!selectorsToSync[value]) {
-        selectorsToSync[value] = [];
-      }
-      selectorsToSync[value].push(item);
-    }
-    return result;
-  }
-
-  function setupSelectorSync() {
-    const selectorsToSync = findSelectorsToSyncByLanguage();
-    Object.entries(selectorsToSync).forEach(([group, tabSetsByValue]) => {
-      Object.entries(tabSetsByValue).forEach(([value, items]) => {
-        items.forEach((item) => {
-          item.addEventListener("click", (_event) => {
-            setTabState(group, value);
-            toggleAll(value, selectorsToSync[group]);
-          });
-        });
-      });
-    });
-    return selectorsToSync;
-  }
-
-  const selectorsToSync = setupSelectorSync();
-  for (const [group, selectedName] of Object.entries(getTabSettings())) {
-    const selectors = selectorsToSync[group];
-    // it's possible that stale state gives us empty selections, so we explicitly check here.
-    if (selectors) {
-      toggleAll(selectedName, selectors);
-    }
-  }
-});
-
-function throttle(func, wait) {
-  let waiting = false;
-  return function () {
-    if (!waiting) {
-      func.apply(this, arguments);
-      waiting = true;
-      setTimeout(function () {
-        waiting = false;
-      }, wait);
-    }
-  };
-}
-
-function nexttick(func) {
-  return setTimeout(func, 0);
-}
diff --git a/_site/site_libs/quarto-html/tippy.css b/_site/site_libs/quarto-html/tippy.css
deleted file mode 100644
index e6ae635cb1f82b176c18afa80dfa029c7a536e70..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/tippy.css
+++ /dev/null
@@ -1 +0,0 @@
-.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}
\ No newline at end of file
diff --git a/_site/site_libs/quarto-html/tippy.umd.min.js b/_site/site_libs/quarto-html/tippy.umd.min.js
deleted file mode 100644
index ca292be32b252f9a40e231f3a3e696b2506f7c96..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-html/tippy.umd.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],t):(e=e||self).tippy=t(e.Popper)}(this,(function(e){"use strict";var t={passive:!0,capture:!0},n=function(){return document.body};function r(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function o(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function i(e,t){return"function"==typeof e?e.apply(void 0,t):e}function a(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function s(e,t){var n=Object.assign({},e);return t.forEach((function(e){delete n[e]})),n}function u(e){return[].concat(e)}function c(e,t){-1===e.indexOf(t)&&e.push(t)}function p(e){return e.split("-")[0]}function f(e){return[].slice.call(e)}function l(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function d(){return document.createElement("div")}function v(e){return["Element","Fragment"].some((function(t){return o(e,t)}))}function m(e){return o(e,"MouseEvent")}function g(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function h(e){return v(e)?[e]:function(e){return o(e,"NodeList")}(e)?f(e):Array.isArray(e)?e:f(document.querySelectorAll(e))}function b(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function y(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function w(e){var t,n=u(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function E(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function O(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var x={isTouch:!1},C=0;function T(){x.isTouch||(x.isTouch=!0,window.performance&&document.addEventListener("mousemove",A))}function A(){var e=performance.now();e-C<20&&(x.isTouch=!1,document.removeEventListener("mousemove",A)),C=e}function L(){var e=document.activeElement;if(g(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var D=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto,R=Object.assign({appendTo:n,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),k=Object.keys(R);function P(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=R[o])?r:i);return t}),{});return Object.assign({},e,t)}function j(e,t){var n=Object.assign({},t,{content:i(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(P(Object.assign({},R,{plugins:t}))):k).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function M(e,t){e.innerHTML=t}function V(e){var t=d();return!0===e?t.className="tippy-arrow":(t.className="tippy-svg-arrow",v(e)?t.appendChild(e):M(t,e)),t}function I(e,t){v(t.content)?(M(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?M(e,t.content):e.textContent=t.content)}function S(e){var t=e.firstElementChild,n=f(t.children);return{box:t,content:n.find((function(e){return e.classList.contains("tippy-content")})),arrow:n.find((function(e){return e.classList.contains("tippy-arrow")||e.classList.contains("tippy-svg-arrow")})),backdrop:n.find((function(e){return e.classList.contains("tippy-backdrop")}))}}function N(e){var t=d(),n=d();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=d();function o(n,r){var o=S(t),i=o.box,a=o.content,s=o.arrow;r.theme?i.setAttribute("data-theme",r.theme):i.removeAttribute("data-theme"),"string"==typeof r.animation?i.setAttribute("data-animation",r.animation):i.removeAttribute("data-animation"),r.inertia?i.setAttribute("data-inertia",""):i.removeAttribute("data-inertia"),i.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?i.setAttribute("role",r.role):i.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||I(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(i.removeChild(s),i.appendChild(V(r.arrow))):i.appendChild(V(r.arrow)):s&&i.removeChild(s)}return r.className="tippy-content",r.setAttribute("data-state","hidden"),I(r,e.props),t.appendChild(n),n.appendChild(r),o(e.props,e.props),{popper:t,onUpdate:o}}N.$$tippy=!0;var B=1,H=[],U=[];function _(o,s){var v,g,h,C,T,A,L,k,M=j(o,Object.assign({},R,P(l(s)))),V=!1,I=!1,N=!1,_=!1,F=[],W=a(we,M.interactiveDebounce),X=B++,Y=(k=M.plugins).filter((function(e,t){return k.indexOf(e)===t})),$={id:X,reference:o,popper:d(),popperInstance:null,props:M,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:Y,clearDelayTimeouts:function(){clearTimeout(v),clearTimeout(g),cancelAnimationFrame(h)},setProps:function(e){if($.state.isDestroyed)return;ae("onBeforeUpdate",[$,e]),be();var t=$.props,n=j(o,Object.assign({},t,l(e),{ignoreAttributes:!0}));$.props=n,he(),t.interactiveDebounce!==n.interactiveDebounce&&(ce(),W=a(we,n.interactiveDebounce));t.triggerTarget&&!n.triggerTarget?u(t.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):n.triggerTarget&&o.removeAttribute("aria-expanded");ue(),ie(),J&&J(t,n);$.popperInstance&&(Ce(),Ae().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));ae("onAfterUpdate",[$,e])},setContent:function(e){$.setProps({content:e})},show:function(){var e=$.state.isVisible,t=$.state.isDestroyed,o=!$.state.isEnabled,a=x.isTouch&&!$.props.touch,s=r($.props.duration,0,R.duration);if(e||t||o||a)return;if(te().hasAttribute("disabled"))return;if(ae("onShow",[$],!1),!1===$.props.onShow($))return;$.state.isVisible=!0,ee()&&(z.style.visibility="visible");ie(),de(),$.state.isMounted||(z.style.transition="none");if(ee()){var u=re(),p=u.box,f=u.content;b([p,f],0)}A=function(){var e;if($.state.isVisible&&!_){if(_=!0,z.offsetHeight,z.style.transition=$.props.moveTransition,ee()&&$.props.animation){var t=re(),n=t.box,r=t.content;b([n,r],s),y([n,r],"visible")}se(),ue(),c(U,$),null==(e=$.popperInstance)||e.forceUpdate(),ae("onMount",[$]),$.props.animation&&ee()&&function(e,t){me(e,t)}(s,(function(){$.state.isShown=!0,ae("onShown",[$])}))}},function(){var e,t=$.props.appendTo,r=te();e=$.props.interactive&&t===n||"parent"===t?r.parentNode:i(t,[r]);e.contains(z)||e.appendChild(z);$.state.isMounted=!0,Ce()}()},hide:function(){var e=!$.state.isVisible,t=$.state.isDestroyed,n=!$.state.isEnabled,o=r($.props.duration,1,R.duration);if(e||t||n)return;if(ae("onHide",[$],!1),!1===$.props.onHide($))return;$.state.isVisible=!1,$.state.isShown=!1,_=!1,V=!1,ee()&&(z.style.visibility="hidden");if(ce(),ve(),ie(!0),ee()){var i=re(),a=i.box,s=i.content;$.props.animation&&(b([a,s],o),y([a,s],"hidden"))}se(),ue(),$.props.animation?ee()&&function(e,t){me(e,(function(){!$.state.isVisible&&z.parentNode&&z.parentNode.contains(z)&&t()}))}(o,$.unmount):$.unmount()},hideWithInteractivity:function(e){ne().addEventListener("mousemove",W),c(H,W),W(e)},enable:function(){$.state.isEnabled=!0},disable:function(){$.hide(),$.state.isEnabled=!1},unmount:function(){$.state.isVisible&&$.hide();if(!$.state.isMounted)return;Te(),Ae().forEach((function(e){e._tippy.unmount()})),z.parentNode&&z.parentNode.removeChild(z);U=U.filter((function(e){return e!==$})),$.state.isMounted=!1,ae("onHidden",[$])},destroy:function(){if($.state.isDestroyed)return;$.clearDelayTimeouts(),$.unmount(),be(),delete o._tippy,$.state.isDestroyed=!0,ae("onDestroy",[$])}};if(!M.render)return $;var q=M.render($),z=q.popper,J=q.onUpdate;z.setAttribute("data-tippy-root",""),z.id="tippy-"+$.id,$.popper=z,o._tippy=$,z._tippy=$;var G=Y.map((function(e){return e.fn($)})),K=o.hasAttribute("aria-expanded");return he(),ue(),ie(),ae("onCreate",[$]),M.showOnCreate&&Le(),z.addEventListener("mouseenter",(function(){$.props.interactive&&$.state.isVisible&&$.clearDelayTimeouts()})),z.addEventListener("mouseleave",(function(){$.props.interactive&&$.props.trigger.indexOf("mouseenter")>=0&&ne().addEventListener("mousemove",W)})),$;function Q(){var e=$.props.touch;return Array.isArray(e)?e:[e,0]}function Z(){return"hold"===Q()[0]}function ee(){var e;return!(null==(e=$.props.render)||!e.$$tippy)}function te(){return L||o}function ne(){var e=te().parentNode;return e?w(e):document}function re(){return S(z)}function oe(e){return $.state.isMounted&&!$.state.isVisible||x.isTouch||C&&"focus"===C.type?0:r($.props.delay,e?0:1,R.delay)}function ie(e){void 0===e&&(e=!1),z.style.pointerEvents=$.props.interactive&&!e?"":"none",z.style.zIndex=""+$.props.zIndex}function ae(e,t,n){var r;(void 0===n&&(n=!0),G.forEach((function(n){n[e]&&n[e].apply(n,t)})),n)&&(r=$.props)[e].apply(r,t)}function se(){var e=$.props.aria;if(e.content){var t="aria-"+e.content,n=z.id;u($.props.triggerTarget||o).forEach((function(e){var r=e.getAttribute(t);if($.state.isVisible)e.setAttribute(t,r?r+" "+n:n);else{var o=r&&r.replace(n,"").trim();o?e.setAttribute(t,o):e.removeAttribute(t)}}))}}function ue(){!K&&$.props.aria.expanded&&u($.props.triggerTarget||o).forEach((function(e){$.props.interactive?e.setAttribute("aria-expanded",$.state.isVisible&&e===te()?"true":"false"):e.removeAttribute("aria-expanded")}))}function ce(){ne().removeEventListener("mousemove",W),H=H.filter((function(e){return e!==W}))}function pe(e){if(!x.isTouch||!N&&"mousedown"!==e.type){var t=e.composedPath&&e.composedPath()[0]||e.target;if(!$.props.interactive||!O(z,t)){if(u($.props.triggerTarget||o).some((function(e){return O(e,t)}))){if(x.isTouch)return;if($.state.isVisible&&$.props.trigger.indexOf("click")>=0)return}else ae("onClickOutside",[$,e]);!0===$.props.hideOnClick&&($.clearDelayTimeouts(),$.hide(),I=!0,setTimeout((function(){I=!1})),$.state.isMounted||ve())}}}function fe(){N=!0}function le(){N=!1}function de(){var e=ne();e.addEventListener("mousedown",pe,!0),e.addEventListener("touchend",pe,t),e.addEventListener("touchstart",le,t),e.addEventListener("touchmove",fe,t)}function ve(){var e=ne();e.removeEventListener("mousedown",pe,!0),e.removeEventListener("touchend",pe,t),e.removeEventListener("touchstart",le,t),e.removeEventListener("touchmove",fe,t)}function me(e,t){var n=re().box;function r(e){e.target===n&&(E(n,"remove",r),t())}if(0===e)return t();E(n,"remove",T),E(n,"add",r),T=r}function ge(e,t,n){void 0===n&&(n=!1),u($.props.triggerTarget||o).forEach((function(r){r.addEventListener(e,t,n),F.push({node:r,eventType:e,handler:t,options:n})}))}function he(){var e;Z()&&(ge("touchstart",ye,{passive:!0}),ge("touchend",Ee,{passive:!0})),(e=$.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(ge(e,ye),e){case"mouseenter":ge("mouseleave",Ee);break;case"focus":ge(D?"focusout":"blur",Oe);break;case"focusin":ge("focusout",Oe)}}))}function be(){F.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),F=[]}function ye(e){var t,n=!1;if($.state.isEnabled&&!xe(e)&&!I){var r="focus"===(null==(t=C)?void 0:t.type);C=e,L=e.currentTarget,ue(),!$.state.isVisible&&m(e)&&H.forEach((function(t){return t(e)})),"click"===e.type&&($.props.trigger.indexOf("mouseenter")<0||V)&&!1!==$.props.hideOnClick&&$.state.isVisible?n=!0:Le(e),"click"===e.type&&(V=!n),n&&!r&&De(e)}}function we(e){var t=e.target,n=te().contains(t)||z.contains(t);"mousemove"===e.type&&n||function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,o=e.popperState,i=e.props.interactiveBorder,a=p(o.placement),s=o.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,c="top"===a?s.bottom.y:0,f="right"===a?s.left.x:0,l="left"===a?s.right.x:0,d=t.top-r+u>i,v=r-t.bottom-c>i,m=t.left-n+f>i,g=n-t.right-l>i;return d||v||m||g}))}(Ae().concat(z).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:M}:null})).filter(Boolean),e)&&(ce(),De(e))}function Ee(e){xe(e)||$.props.trigger.indexOf("click")>=0&&V||($.props.interactive?$.hideWithInteractivity(e):De(e))}function Oe(e){$.props.trigger.indexOf("focusin")<0&&e.target!==te()||$.props.interactive&&e.relatedTarget&&z.contains(e.relatedTarget)||De(e)}function xe(e){return!!x.isTouch&&Z()!==e.type.indexOf("touch")>=0}function Ce(){Te();var t=$.props,n=t.popperOptions,r=t.placement,i=t.offset,a=t.getReferenceClientRect,s=t.moveTransition,u=ee()?S(z).arrow:null,c=a?{getBoundingClientRect:a,contextElement:a.contextElement||te()}:o,p=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(ee()){var n=re().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}}];ee()&&u&&p.push({name:"arrow",options:{element:u,padding:3}}),p.push.apply(p,(null==n?void 0:n.modifiers)||[]),$.popperInstance=e.createPopper(c,z,Object.assign({},n,{placement:r,onFirstUpdate:A,modifiers:p}))}function Te(){$.popperInstance&&($.popperInstance.destroy(),$.popperInstance=null)}function Ae(){return f(z.querySelectorAll("[data-tippy-root]"))}function Le(e){$.clearDelayTimeouts(),e&&ae("onTrigger",[$,e]),de();var t=oe(!0),n=Q(),r=n[0],o=n[1];x.isTouch&&"hold"===r&&o&&(t=o),t?v=setTimeout((function(){$.show()}),t):$.show()}function De(e){if($.clearDelayTimeouts(),ae("onUntrigger",[$,e]),$.state.isVisible){if(!($.props.trigger.indexOf("mouseenter")>=0&&$.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&V)){var t=oe(!1);t?g=setTimeout((function(){$.state.isVisible&&$.hide()}),t):h=requestAnimationFrame((function(){$.hide()}))}}else ve()}}function F(e,n){void 0===n&&(n={});var r=R.plugins.concat(n.plugins||[]);document.addEventListener("touchstart",T,t),window.addEventListener("blur",L);var o=Object.assign({},n,{plugins:r}),i=h(e).reduce((function(e,t){var n=t&&_(t,o);return n&&e.push(n),e}),[]);return v(e)?i[0]:i}F.defaultProps=R,F.setDefaultProps=function(e){Object.keys(e).forEach((function(t){R[t]=e[t]}))},F.currentInput=x;var W=Object.assign({},e.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),X={mouseover:"mouseenter",focusin:"focus",click:"click"};var Y={name:"animateFill",defaultValue:!1,fn:function(e){var t;if(null==(t=e.props.render)||!t.$$tippy)return{};var n=S(e.popper),r=n.box,o=n.content,i=e.props.animateFill?function(){var e=d();return e.className="tippy-backdrop",y([e],"hidden"),e}():null;return{onCreate:function(){i&&(r.insertBefore(i,r.firstElementChild),r.setAttribute("data-animatefill",""),r.style.overflow="hidden",e.setProps({arrow:!1,animation:"shift-away"}))},onMount:function(){if(i){var e=r.style.transitionDuration,t=Number(e.replace("ms",""));o.style.transitionDelay=Math.round(t/10)+"ms",i.style.transitionDuration=e,y([i],"visible")}},onShow:function(){i&&(i.style.transitionDuration="0ms")},onHide:function(){i&&y([i],"hidden")}}}};var $={clientX:0,clientY:0},q=[];function z(e){var t=e.clientX,n=e.clientY;$={clientX:t,clientY:n}}var J={name:"followCursor",defaultValue:!1,fn:function(e){var t=e.reference,n=w(e.props.triggerTarget||t),r=!1,o=!1,i=!0,a=e.props;function s(){return"initial"===e.props.followCursor&&e.state.isVisible}function u(){n.addEventListener("mousemove",f)}function c(){n.removeEventListener("mousemove",f)}function p(){r=!0,e.setProps({getReferenceClientRect:null}),r=!1}function f(n){var r=!n.target||t.contains(n.target),o=e.props.followCursor,i=n.clientX,a=n.clientY,s=t.getBoundingClientRect(),u=i-s.left,c=a-s.top;!r&&e.props.interactive||e.setProps({getReferenceClientRect:function(){var e=t.getBoundingClientRect(),n=i,r=a;"initial"===o&&(n=e.left+u,r=e.top+c);var s="horizontal"===o?e.top:r,p="vertical"===o?e.right:n,f="horizontal"===o?e.bottom:r,l="vertical"===o?e.left:n;return{width:p-l,height:f-s,top:s,right:p,bottom:f,left:l}}})}function l(){e.props.followCursor&&(q.push({instance:e,doc:n}),function(e){e.addEventListener("mousemove",z)}(n))}function d(){0===(q=q.filter((function(t){return t.instance!==e}))).filter((function(e){return e.doc===n})).length&&function(e){e.removeEventListener("mousemove",z)}(n)}return{onCreate:l,onDestroy:d,onBeforeUpdate:function(){a=e.props},onAfterUpdate:function(t,n){var i=n.followCursor;r||void 0!==i&&a.followCursor!==i&&(d(),i?(l(),!e.state.isMounted||o||s()||u()):(c(),p()))},onMount:function(){e.props.followCursor&&!o&&(i&&(f($),i=!1),s()||u())},onTrigger:function(e,t){m(t)&&($={clientX:t.clientX,clientY:t.clientY}),o="focus"===t.type},onHidden:function(){e.props.followCursor&&(p(),c(),i=!0)}}}};var G={name:"inlinePositioning",defaultValue:!1,fn:function(e){var t,n=e.reference;var r=-1,o=!1,i=[],a={name:"tippyInlinePositioning",enabled:!0,phase:"afterWrite",fn:function(o){var a=o.state;e.props.inlinePositioning&&(-1!==i.indexOf(a.placement)&&(i=[]),t!==a.placement&&-1===i.indexOf(a.placement)&&(i.push(a.placement),e.setProps({getReferenceClientRect:function(){return function(e){return function(e,t,n,r){if(n.length<2||null===e)return t;if(2===n.length&&r>=0&&n[0].left>n[1].right)return n[r]||t;switch(e){case"top":case"bottom":var o=n[0],i=n[n.length-1],a="top"===e,s=o.top,u=i.bottom,c=a?o.left:i.left,p=a?o.right:i.right;return{top:s,bottom:u,left:c,right:p,width:p-c,height:u-s};case"left":case"right":var f=Math.min.apply(Math,n.map((function(e){return e.left}))),l=Math.max.apply(Math,n.map((function(e){return e.right}))),d=n.filter((function(t){return"left"===e?t.left===f:t.right===l})),v=d[0].top,m=d[d.length-1].bottom;return{top:v,bottom:m,left:f,right:l,width:l-f,height:m-v};default:return t}}(p(e),n.getBoundingClientRect(),f(n.getClientRects()),r)}(a.placement)}})),t=a.placement)}};function s(){var t;o||(t=function(e,t){var n;return{popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat(((null==(n=e.popperOptions)?void 0:n.modifiers)||[]).filter((function(e){return e.name!==t.name})),[t])})}}(e.props,a),o=!0,e.setProps(t),o=!1)}return{onCreate:s,onAfterUpdate:s,onTrigger:function(t,n){if(m(n)){var o=f(e.reference.getClientRects()),i=o.find((function(e){return e.left-2<=n.clientX&&e.right+2>=n.clientX&&e.top-2<=n.clientY&&e.bottom+2>=n.clientY})),a=o.indexOf(i);r=a>-1?a:r}},onHidden:function(){r=-1}}}};var K={name:"sticky",defaultValue:!1,fn:function(e){var t=e.reference,n=e.popper;function r(t){return!0===e.props.sticky||e.props.sticky===t}var o=null,i=null;function a(){var s=r("reference")?(e.popperInstance?e.popperInstance.state.elements.reference:t).getBoundingClientRect():null,u=r("popper")?n.getBoundingClientRect():null;(s&&Q(o,s)||u&&Q(i,u))&&e.popperInstance&&e.popperInstance.update(),o=s,i=u,e.state.isMounted&&requestAnimationFrame(a)}return{onMount:function(){e.props.sticky&&a()}}}};function Q(e,t){return!e||!t||(e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom||e.left!==t.left)}return F.setDefaultProps({plugins:[Y,J,G,K],render:N}),F.createSingleton=function(e,t){var n;void 0===t&&(t={});var r,o=e,i=[],a=[],c=t.overrides,p=[],f=!1;function l(){a=o.map((function(e){return u(e.props.triggerTarget||e.reference)})).reduce((function(e,t){return e.concat(t)}),[])}function v(){i=o.map((function(e){return e.reference}))}function m(e){o.forEach((function(t){e?t.enable():t.disable()}))}function g(e){return o.map((function(t){var n=t.setProps;return t.setProps=function(o){n(o),t.reference===r&&e.setProps(o)},function(){t.setProps=n}}))}function h(e,t){var n=a.indexOf(t);if(t!==r){r=t;var s=(c||[]).concat("content").reduce((function(e,t){return e[t]=o[n].props[t],e}),{});e.setProps(Object.assign({},s,{getReferenceClientRect:"function"==typeof s.getReferenceClientRect?s.getReferenceClientRect:function(){var e;return null==(e=i[n])?void 0:e.getBoundingClientRect()}}))}}m(!1),v(),l();var b={fn:function(){return{onDestroy:function(){m(!0)},onHidden:function(){r=null},onClickOutside:function(e){e.props.showOnCreate&&!f&&(f=!0,r=null)},onShow:function(e){e.props.showOnCreate&&!f&&(f=!0,h(e,i[0]))},onTrigger:function(e,t){h(e,t.currentTarget)}}}},y=F(d(),Object.assign({},s(t,["overrides"]),{plugins:[b].concat(t.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat((null==(n=t.popperOptions)?void 0:n.modifiers)||[],[W])})})),w=y.show;y.show=function(e){if(w(),!r&&null==e)return h(y,i[0]);if(!r||null!=e){if("number"==typeof e)return i[e]&&h(y,i[e]);if(o.indexOf(e)>=0){var t=e.reference;return h(y,t)}return i.indexOf(e)>=0?h(y,e):void 0}},y.showNext=function(){var e=i[0];if(!r)return y.show(0);var t=i.indexOf(r);y.show(i[t+1]||e)},y.showPrevious=function(){var e=i[i.length-1];if(!r)return y.show(e);var t=i.indexOf(r),n=i[t-1]||e;y.show(n)};var E=y.setProps;return y.setProps=function(e){c=e.overrides||c,E(e)},y.setInstances=function(e){m(!0),p.forEach((function(e){return e()})),o=e,m(!1),v(),l(),p=g(y),y.setProps({triggerTarget:a})},p=g(y),y},F.delegate=function(e,n){var r=[],o=[],i=!1,a=n.target,c=s(n,["target"]),p=Object.assign({},c,{trigger:"manual",touch:!1}),f=Object.assign({touch:R.touch},c,{showOnCreate:!0}),l=F(e,p);function d(e){if(e.target&&!i){var t=e.target.closest(a);if(t){var r=t.getAttribute("data-tippy-trigger")||n.trigger||R.trigger;if(!t._tippy&&!("touchstart"===e.type&&"boolean"==typeof f.touch||"touchstart"!==e.type&&r.indexOf(X[e.type])<0)){var s=F(t,f);s&&(o=o.concat(s))}}}}function v(e,t,n,o){void 0===o&&(o=!1),e.addEventListener(t,n,o),r.push({node:e,eventType:t,handler:n,options:o})}return u(l).forEach((function(e){var n=e.destroy,a=e.enable,s=e.disable;e.destroy=function(e){void 0===e&&(e=!0),e&&o.forEach((function(e){e.destroy()})),o=[],r.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),r=[],n()},e.enable=function(){a(),o.forEach((function(e){return e.enable()})),i=!1},e.disable=function(){s(),o.forEach((function(e){return e.disable()})),i=!0},function(e){var n=e.reference;v(n,"touchstart",d,t),v(n,"mouseover",d),v(n,"focusin",d),v(n,"click",d)}(e)})),l},F.hideAll=function(e){var t=void 0===e?{}:e,n=t.exclude,r=t.duration;U.forEach((function(e){var t=!1;if(n&&(t=g(n)?e.reference===n:e.popper===n.popper),!t){var o=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:o})}}))},F.roundArrow='<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>',F}));
-
diff --git a/_site/site_libs/quarto-listing/list.min.js b/_site/site_libs/quarto-listing/list.min.js
deleted file mode 100644
index 81318815c904e3fb9d192ecc73ec237a46ff57a9..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-listing/list.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-var List;List=function(){var t={"./src/add-async.js":function(t){t.exports=function(t){return function e(r,n,s){var i=r.splice(0,50);s=(s=s||[]).concat(t.add(i)),r.length>0?setTimeout((function(){e(r,n,s)}),1):(t.update(),n(s))}}},"./src/filter.js":function(t){t.exports=function(t){return t.handlers.filterStart=t.handlers.filterStart||[],t.handlers.filterComplete=t.handlers.filterComplete||[],function(e){if(t.trigger("filterStart"),t.i=1,t.reset.filter(),void 0===e)t.filtered=!1;else{t.filtered=!0;for(var r=t.items,n=0,s=r.length;n<s;n++){var i=r[n];e(i)?i.filtered=!0:i.filtered=!1}}return t.update(),t.trigger("filterComplete"),t.visibleItems}}},"./src/fuzzy-search.js":function(t,e,r){r("./src/utils/classes.js");var n=r("./src/utils/events.js"),s=r("./src/utils/extend.js"),i=r("./src/utils/to-string.js"),a=r("./src/utils/get-by-class.js"),o=r("./src/utils/fuzzy.js");t.exports=function(t,e){e=s({location:0,distance:100,threshold:.4,multiSearch:!0,searchClass:"fuzzy-search"},e=e||{});var r={search:function(n,s){for(var i=e.multiSearch?n.replace(/ +$/,"").split(/ +/):[n],a=0,o=t.items.length;a<o;a++)r.item(t.items[a],s,i)},item:function(t,e,n){for(var s=!0,i=0;i<n.length;i++){for(var a=!1,o=0,l=e.length;o<l;o++)r.values(t.values(),e[o],n[i])&&(a=!0);a||(s=!1)}t.found=s},values:function(t,r,n){if(t.hasOwnProperty(r)){var s=i(t[r]).toLowerCase();if(o(s,n,e))return!0}return!1}};return n.bind(a(t.listContainer,e.searchClass),"keyup",t.utils.events.debounce((function(e){var n=e.target||e.srcElement;t.search(n.value,r.search)}),t.searchDelay)),function(e,n){t.search(e,n,r.search)}}},"./src/index.js":function(t,e,r){var n=r("./node_modules/string-natural-compare/natural-compare.js"),s=r("./src/utils/get-by-class.js"),i=r("./src/utils/extend.js"),a=r("./src/utils/index-of.js"),o=r("./src/utils/events.js"),l=r("./src/utils/to-string.js"),u=r("./src/utils/classes.js"),c=r("./src/utils/get-attribute.js"),f=r("./src/utils/to-array.js");t.exports=function(t,e,h){var d,v=this,g=r("./src/item.js")(v),m=r("./src/add-async.js")(v),p=r("./src/pagination.js")(v);d={start:function(){v.listClass="list",v.searchClass="search",v.sortClass="sort",v.page=1e4,v.i=1,v.items=[],v.visibleItems=[],v.matchingItems=[],v.searched=!1,v.filtered=!1,v.searchColumns=void 0,v.searchDelay=0,v.handlers={updated:[]},v.valueNames=[],v.utils={getByClass:s,extend:i,indexOf:a,events:o,toString:l,naturalSort:n,classes:u,getAttribute:c,toArray:f},v.utils.extend(v,e),v.listContainer="string"==typeof t?document.getElementById(t):t,v.listContainer&&(v.list=s(v.listContainer,v.listClass,!0),v.parse=r("./src/parse.js")(v),v.templater=r("./src/templater.js")(v),v.search=r("./src/search.js")(v),v.filter=r("./src/filter.js")(v),v.sort=r("./src/sort.js")(v),v.fuzzySearch=r("./src/fuzzy-search.js")(v,e.fuzzySearch),this.handlers(),this.items(),this.pagination(),v.update())},handlers:function(){for(var t in v.handlers)v[t]&&v.handlers.hasOwnProperty(t)&&v.on(t,v[t])},items:function(){v.parse(v.list),void 0!==h&&v.add(h)},pagination:function(){if(void 0!==e.pagination){!0===e.pagination&&(e.pagination=[{}]),void 0===e.pagination[0]&&(e.pagination=[e.pagination]);for(var t=0,r=e.pagination.length;t<r;t++)p(e.pagination[t])}}},this.reIndex=function(){v.items=[],v.visibleItems=[],v.matchingItems=[],v.searched=!1,v.filtered=!1,v.parse(v.list)},this.toJSON=function(){for(var t=[],e=0,r=v.items.length;e<r;e++)t.push(v.items[e].values());return t},this.add=function(t,e){if(0!==t.length){if(!e){var r=[],n=!1;void 0===t[0]&&(t=[t]);for(var s=0,i=t.length;s<i;s++){var a;n=v.items.length>v.page,a=new g(t[s],void 0,n),v.items.push(a),r.push(a)}return v.update(),r}m(t.slice(0),e)}},this.show=function(t,e){return this.i=t,this.page=e,v.update(),v},this.remove=function(t,e,r){for(var n=0,s=0,i=v.items.length;s<i;s++)v.items[s].values()[t]==e&&(v.templater.remove(v.items[s],r),v.items.splice(s,1),i--,s--,n++);return v.update(),n},this.get=function(t,e){for(var r=[],n=0,s=v.items.length;n<s;n++){var i=v.items[n];i.values()[t]==e&&r.push(i)}return r},this.size=function(){return v.items.length},this.clear=function(){return v.templater.clear(),v.items=[],v},this.on=function(t,e){return v.handlers[t].push(e),v},this.off=function(t,e){var r=v.handlers[t],n=a(r,e);return n>-1&&r.splice(n,1),v},this.trigger=function(t){for(var e=v.handlers[t].length;e--;)v.handlers[t][e](v);return v},this.reset={filter:function(){for(var t=v.items,e=t.length;e--;)t[e].filtered=!1;return v},search:function(){for(var t=v.items,e=t.length;e--;)t[e].found=!1;return v}},this.update=function(){var t=v.items,e=t.length;v.visibleItems=[],v.matchingItems=[],v.templater.clear();for(var r=0;r<e;r++)t[r].matching()&&v.matchingItems.length+1>=v.i&&v.visibleItems.length<v.page?(t[r].show(),v.visibleItems.push(t[r]),v.matchingItems.push(t[r])):t[r].matching()?(v.matchingItems.push(t[r]),t[r].hide()):t[r].hide();return v.trigger("updated"),v},d.start()}},"./src/item.js":function(t){t.exports=function(t){return function(e,r,n){var s=this;this._values={},this.found=!1,this.filtered=!1;this.values=function(e,r){if(void 0===e)return s._values;for(var n in e)s._values[n]=e[n];!0!==r&&t.templater.set(s,s.values())},this.show=function(){t.templater.show(s)},this.hide=function(){t.templater.hide(s)},this.matching=function(){return t.filtered&&t.searched&&s.found&&s.filtered||t.filtered&&!t.searched&&s.filtered||!t.filtered&&t.searched&&s.found||!t.filtered&&!t.searched},this.visible=function(){return!(!s.elm||s.elm.parentNode!=t.list)},function(e,r,n){if(void 0===r)n?s.values(e,n):s.values(e);else{s.elm=r;var i=t.templater.get(s,e);s.values(i)}}(e,r,n)}}},"./src/pagination.js":function(t,e,r){var n=r("./src/utils/classes.js"),s=r("./src/utils/events.js"),i=r("./src/index.js");t.exports=function(t){var e=!1,r=function(r,s){if(t.page<1)return t.listContainer.style.display="none",void(e=!0);e&&(t.listContainer.style.display="block");var i,o=t.matchingItems.length,l=t.i,u=t.page,c=Math.ceil(o/u),f=Math.ceil(l/u),h=s.innerWindow||2,d=s.left||s.outerWindow||0,v=s.right||s.outerWindow||0;v=c-v,r.clear();for(var g=1;g<=c;g++){var m=f===g?"active":"";a.number(g,d,v,f,h)?(i=r.add({page:g,dotted:!1})[0],m&&n(i.elm).add(m),i.elm.firstChild.setAttribute("data-i",g),i.elm.firstChild.setAttribute("data-page",u)):a.dotted(r,g,d,v,f,h,r.size())&&(i=r.add({page:"...",dotted:!0})[0],n(i.elm).add("disabled"))}},a={number:function(t,e,r,n,s){return this.left(t,e)||this.right(t,r)||this.innerWindow(t,n,s)},left:function(t,e){return t<=e},right:function(t,e){return t>e},innerWindow:function(t,e,r){return t>=e-r&&t<=e+r},dotted:function(t,e,r,n,s,i,a){return this.dottedLeft(t,e,r,n,s,i)||this.dottedRight(t,e,r,n,s,i,a)},dottedLeft:function(t,e,r,n,s,i){return e==r+1&&!this.innerWindow(e,s,i)&&!this.right(e,n)},dottedRight:function(t,e,r,n,s,i,a){return!t.items[a-1].values().dotted&&(e==n&&!this.innerWindow(e,s,i)&&!this.right(e,n))}};return function(e){var n=new i(t.listContainer.id,{listClass:e.paginationClass||"pagination",item:e.item||"<li><a class='page' href='#'></a></li>",valueNames:["page","dotted"],searchClass:"pagination-search-that-is-not-supposed-to-exist",sortClass:"pagination-sort-that-is-not-supposed-to-exist"});s.bind(n.listContainer,"click",(function(e){var r=e.target||e.srcElement,n=t.utils.getAttribute(r,"data-page"),s=t.utils.getAttribute(r,"data-i");s&&t.show((s-1)*n+1,n)})),t.on("updated",(function(){r(n,e)})),r(n,e)}}},"./src/parse.js":function(t,e,r){t.exports=function(t){var e=r("./src/item.js")(t),n=function(r,n){for(var s=0,i=r.length;s<i;s++)t.items.push(new e(n,r[s]))},s=function e(r,s){var i=r.splice(0,50);n(i,s),r.length>0?setTimeout((function(){e(r,s)}),1):(t.update(),t.trigger("parseComplete"))};return t.handlers.parseComplete=t.handlers.parseComplete||[],function(){var e=function(t){for(var e=t.childNodes,r=[],n=0,s=e.length;n<s;n++)void 0===e[n].data&&r.push(e[n]);return r}(t.list),r=t.valueNames;t.indexAsync?s(e,r):n(e,r)}}},"./src/search.js":function(t){t.exports=function(t){var e,r,n,s={resetList:function(){t.i=1,t.templater.clear(),n=void 0},setOptions:function(t){2==t.length&&t[1]instanceof Array?e=t[1]:2==t.length&&"function"==typeof t[1]?(e=void 0,n=t[1]):3==t.length?(e=t[1],n=t[2]):e=void 0},setColumns:function(){0!==t.items.length&&void 0===e&&(e=void 0===t.searchColumns?s.toArray(t.items[0].values()):t.searchColumns)},setSearchString:function(e){e=(e=t.utils.toString(e).toLowerCase()).replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&"),r=e},toArray:function(t){var e=[];for(var r in t)e.push(r);return e}},i=function(){for(var n,s=[],i=r;null!==(n=i.match(/"([^"]+)"/));)s.push(n[1]),i=i.substring(0,n.index)+i.substring(n.index+n[0].length);(i=i.trim()).length&&(s=s.concat(i.split(/\s+/)));for(var a=0,o=t.items.length;a<o;a++){var l=t.items[a];if(l.found=!1,s.length){for(var u=0,c=s.length;u<c;u++){for(var f=!1,h=0,d=e.length;h<d;h++){var v=l.values(),g=e[h];if(v.hasOwnProperty(g)&&void 0!==v[g]&&null!==v[g])if(-1!==("string"!=typeof v[g]?v[g].toString():v[g]).toLowerCase().indexOf(s[u])){f=!0;break}}if(!f)break}l.found=f}}},a=function(){t.reset.search(),t.searched=!1},o=function(o){return t.trigger("searchStart"),s.resetList(),s.setSearchString(o),s.setOptions(arguments),s.setColumns(),""===r?a():(t.searched=!0,n?n(r,e):i()),t.update(),t.trigger("searchComplete"),t.visibleItems};return t.handlers.searchStart=t.handlers.searchStart||[],t.handlers.searchComplete=t.handlers.searchComplete||[],t.utils.events.bind(t.utils.getByClass(t.listContainer,t.searchClass),"keyup",t.utils.events.debounce((function(e){var r=e.target||e.srcElement;""===r.value&&!t.searched||o(r.value)}),t.searchDelay)),t.utils.events.bind(t.utils.getByClass(t.listContainer,t.searchClass),"input",(function(t){""===(t.target||t.srcElement).value&&o("")})),o}},"./src/sort.js":function(t){t.exports=function(t){var e={els:void 0,clear:function(){for(var r=0,n=e.els.length;r<n;r++)t.utils.classes(e.els[r]).remove("asc"),t.utils.classes(e.els[r]).remove("desc")},getOrder:function(e){var r=t.utils.getAttribute(e,"data-order");return"asc"==r||"desc"==r?r:t.utils.classes(e).has("desc")?"asc":t.utils.classes(e).has("asc")?"desc":"asc"},getInSensitive:function(e,r){var n=t.utils.getAttribute(e,"data-insensitive");r.insensitive="false"!==n},setOrder:function(r){for(var n=0,s=e.els.length;n<s;n++){var i=e.els[n];if(t.utils.getAttribute(i,"data-sort")===r.valueName){var a=t.utils.getAttribute(i,"data-order");"asc"==a||"desc"==a?a==r.order&&t.utils.classes(i).add(r.order):t.utils.classes(i).add(r.order)}}}},r=function(){t.trigger("sortStart");var r={},n=arguments[0].currentTarget||arguments[0].srcElement||void 0;n?(r.valueName=t.utils.getAttribute(n,"data-sort"),e.getInSensitive(n,r),r.order=e.getOrder(n)):((r=arguments[1]||r).valueName=arguments[0],r.order=r.order||"asc",r.insensitive=void 0===r.insensitive||r.insensitive),e.clear(),e.setOrder(r);var s,i=r.sortFunction||t.sortFunction||null,a="desc"===r.order?-1:1;s=i?function(t,e){return i(t,e,r)*a}:function(e,n){var s=t.utils.naturalSort;return s.alphabet=t.alphabet||r.alphabet||void 0,!s.alphabet&&r.insensitive&&(s=t.utils.naturalSort.caseInsensitive),s(e.values()[r.valueName],n.values()[r.valueName])*a},t.items.sort(s),t.update(),t.trigger("sortComplete")};return t.handlers.sortStart=t.handlers.sortStart||[],t.handlers.sortComplete=t.handlers.sortComplete||[],e.els=t.utils.getByClass(t.listContainer,t.sortClass),t.utils.events.bind(e.els,"click",r),t.on("searchStart",e.clear),t.on("filterStart",e.clear),r}},"./src/templater.js":function(t){var e=function(t){var e,r=this,n=function(e,r){var n=e.cloneNode(!0);n.removeAttribute("id");for(var s=0,i=r.length;s<i;s++){var a=void 0,o=r[s];if(o.data)for(var l=0,u=o.data.length;l<u;l++)n.setAttribute("data-"+o.data[l],"");else o.attr&&o.name?(a=t.utils.getByClass(n,o.name,!0))&&a.setAttribute(o.attr,""):(a=t.utils.getByClass(n,o,!0))&&(a.innerHTML="")}return n},s=function(){for(var e=t.list.childNodes,r=0,n=e.length;r<n;r++)if(void 0===e[r].data)return e[r].cloneNode(!0)},i=function(t){if("string"==typeof t){if(/<tr[\s>]/g.exec(t)){var e=document.createElement("tbody");return e.innerHTML=t,e.firstElementChild}if(-1!==t.indexOf("<")){var r=document.createElement("div");return r.innerHTML=t,r.firstElementChild}}},a=function(e,r,n){var s=void 0,i=function(e){for(var r=0,n=t.valueNames.length;r<n;r++){var s=t.valueNames[r];if(s.data){for(var i=s.data,a=0,o=i.length;a<o;a++)if(i[a]===e)return{data:e}}else{if(s.attr&&s.name&&s.name==e)return s;if(s===e)return e}}}(r);i&&(i.data?e.elm.setAttribute("data-"+i.data,n):i.attr&&i.name?(s=t.utils.getByClass(e.elm,i.name,!0))&&s.setAttribute(i.attr,n):(s=t.utils.getByClass(e.elm,i,!0))&&(s.innerHTML=n))};this.get=function(e,n){r.create(e);for(var s={},i=0,a=n.length;i<a;i++){var o=void 0,l=n[i];if(l.data)for(var u=0,c=l.data.length;u<c;u++)s[l.data[u]]=t.utils.getAttribute(e.elm,"data-"+l.data[u]);else l.attr&&l.name?(o=t.utils.getByClass(e.elm,l.name,!0),s[l.name]=o?t.utils.getAttribute(o,l.attr):""):(o=t.utils.getByClass(e.elm,l,!0),s[l]=o?o.innerHTML:"")}return s},this.set=function(t,e){if(!r.create(t))for(var n in e)e.hasOwnProperty(n)&&a(t,n,e[n])},this.create=function(t){return void 0===t.elm&&(t.elm=e(t.values()),r.set(t,t.values()),!0)},this.remove=function(e){e.elm.parentNode===t.list&&t.list.removeChild(e.elm)},this.show=function(e){r.create(e),t.list.appendChild(e.elm)},this.hide=function(e){void 0!==e.elm&&e.elm.parentNode===t.list&&t.list.removeChild(e.elm)},this.clear=function(){if(t.list.hasChildNodes())for(;t.list.childNodes.length>=1;)t.list.removeChild(t.list.firstChild)},function(){var r;if("function"!=typeof t.item){if(!(r="string"==typeof t.item?-1===t.item.indexOf("<")?document.getElementById(t.item):i(t.item):s()))throw new Error("The list needs to have at least one item on init otherwise you'll have to add a template.");r=n(r,t.valueNames),e=function(){return r.cloneNode(!0)}}else e=function(e){var r=t.item(e);return i(r)}}()};t.exports=function(t){return new e(t)}},"./src/utils/classes.js":function(t,e,r){var n=r("./src/utils/index-of.js"),s=/\s+/;Object.prototype.toString;function i(t){if(!t||!t.nodeType)throw new Error("A DOM element reference is required");this.el=t,this.list=t.classList}t.exports=function(t){return new i(t)},i.prototype.add=function(t){if(this.list)return this.list.add(t),this;var e=this.array();return~n(e,t)||e.push(t),this.el.className=e.join(" "),this},i.prototype.remove=function(t){if(this.list)return this.list.remove(t),this;var e=this.array(),r=n(e,t);return~r&&e.splice(r,1),this.el.className=e.join(" "),this},i.prototype.toggle=function(t,e){return this.list?(void 0!==e?e!==this.list.toggle(t,e)&&this.list.toggle(t):this.list.toggle(t),this):(void 0!==e?e?this.add(t):this.remove(t):this.has(t)?this.remove(t):this.add(t),this)},i.prototype.array=function(){var t=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(s);return""===t[0]&&t.shift(),t},i.prototype.has=i.prototype.contains=function(t){return this.list?this.list.contains(t):!!~n(this.array(),t)}},"./src/utils/events.js":function(t,e,r){var n=window.addEventListener?"addEventListener":"attachEvent",s=window.removeEventListener?"removeEventListener":"detachEvent",i="addEventListener"!==n?"on":"",a=r("./src/utils/to-array.js");e.bind=function(t,e,r,s){for(var o=0,l=(t=a(t)).length;o<l;o++)t[o][n](i+e,r,s||!1)},e.unbind=function(t,e,r,n){for(var o=0,l=(t=a(t)).length;o<l;o++)t[o][s](i+e,r,n||!1)},e.debounce=function(t,e,r){var n;return e?function(){var s=this,i=arguments,a=function(){n=null,r||t.apply(s,i)},o=r&&!n;clearTimeout(n),n=setTimeout(a,e),o&&t.apply(s,i)}:t}},"./src/utils/extend.js":function(t){t.exports=function(t){for(var e,r=Array.prototype.slice.call(arguments,1),n=0;e=r[n];n++)if(e)for(var s in e)t[s]=e[s];return t}},"./src/utils/fuzzy.js":function(t){t.exports=function(t,e,r){var n=r.location||0,s=r.distance||100,i=r.threshold||.4;if(e===t)return!0;if(e.length>32)return!1;var a=n,o=function(){var t,r={};for(t=0;t<e.length;t++)r[e.charAt(t)]=0;for(t=0;t<e.length;t++)r[e.charAt(t)]|=1<<e.length-t-1;return r}();function l(t,r){var n=t/e.length,i=Math.abs(a-r);return s?n+i/s:i?1:n}var u=i,c=t.indexOf(e,a);-1!=c&&(u=Math.min(l(0,c),u),-1!=(c=t.lastIndexOf(e,a+e.length))&&(u=Math.min(l(0,c),u)));var f,h,d=1<<e.length-1;c=-1;for(var v,g=e.length+t.length,m=0;m<e.length;m++){for(f=0,h=g;f<h;)l(m,a+h)<=u?f=h:g=h,h=Math.floor((g-f)/2+f);g=h;var p=Math.max(1,a-h+1),y=Math.min(a+h,t.length)+e.length,C=Array(y+2);C[y+1]=(1<<m)-1;for(var b=y;b>=p;b--){var j=o[t.charAt(b-1)];if(C[b]=0===m?(C[b+1]<<1|1)&j:(C[b+1]<<1|1)&j|(v[b+1]|v[b])<<1|1|v[b+1],C[b]&d){var x=l(m,b-1);if(x<=u){if(u=x,!((c=b-1)>a))break;p=Math.max(1,2*a-c)}}}if(l(m+1,a)>u)break;v=C}return!(c<0)}},"./src/utils/get-attribute.js":function(t){t.exports=function(t,e){var r=t.getAttribute&&t.getAttribute(e)||null;if(!r)for(var n=t.attributes,s=n.length,i=0;i<s;i++)void 0!==n[i]&&n[i].nodeName===e&&(r=n[i].nodeValue);return r}},"./src/utils/get-by-class.js":function(t){t.exports=function(t,e,r,n){return(n=n||{}).test&&n.getElementsByClassName||!n.test&&document.getElementsByClassName?function(t,e,r){return r?t.getElementsByClassName(e)[0]:t.getElementsByClassName(e)}(t,e,r):n.test&&n.querySelector||!n.test&&document.querySelector?function(t,e,r){return e="."+e,r?t.querySelector(e):t.querySelectorAll(e)}(t,e,r):function(t,e,r){for(var n=[],s=t.getElementsByTagName("*"),i=s.length,a=new RegExp("(^|\\s)"+e+"(\\s|$)"),o=0,l=0;o<i;o++)if(a.test(s[o].className)){if(r)return s[o];n[l]=s[o],l++}return n}(t,e,r)}},"./src/utils/index-of.js":function(t){var e=[].indexOf;t.exports=function(t,r){if(e)return t.indexOf(r);for(var n=0,s=t.length;n<s;++n)if(t[n]===r)return n;return-1}},"./src/utils/to-array.js":function(t){t.exports=function(t){if(void 0===t)return[];if(null===t)return[null];if(t===window)return[window];if("string"==typeof t)return[t];if(function(t){return"[object Array]"===Object.prototype.toString.call(t)}(t))return t;if("number"!=typeof t.length)return[t];if("function"==typeof t&&t instanceof Function)return[t];for(var e=[],r=0,n=t.length;r<n;r++)(Object.prototype.hasOwnProperty.call(t,r)||r in t)&&e.push(t[r]);return e.length?e:[]}},"./src/utils/to-string.js":function(t){t.exports=function(t){return t=(t=null===(t=void 0===t?"":t)?"":t).toString()}},"./node_modules/string-natural-compare/natural-compare.js":function(t){"use strict";var e,r,n=0;function s(t){return t>=48&&t<=57}function i(t,e){for(var i=(t+="").length,a=(e+="").length,o=0,l=0;o<i&&l<a;){var u=t.charCodeAt(o),c=e.charCodeAt(l);if(s(u)){if(!s(c))return u-c;for(var f=o,h=l;48===u&&++f<i;)u=t.charCodeAt(f);for(;48===c&&++h<a;)c=e.charCodeAt(h);for(var d=f,v=h;d<i&&s(t.charCodeAt(d));)++d;for(;v<a&&s(e.charCodeAt(v));)++v;var g=d-f-v+h;if(g)return g;for(;f<d;)if(g=t.charCodeAt(f++)-e.charCodeAt(h++))return g;o=d,l=v}else{if(u!==c)return u<n&&c<n&&-1!==r[u]&&-1!==r[c]?r[u]-r[c]:u-c;++o,++l}}return o>=i&&l<a&&i>=a?-1:l>=a&&o<i&&a>=i?1:i-a}i.caseInsensitive=i.i=function(t,e){return i((""+t).toLowerCase(),(""+e).toLowerCase())},Object.defineProperties(i,{alphabet:{get:function(){return e},set:function(t){r=[];var s=0;if(e=t)for(;s<e.length;s++)r[e.charCodeAt(s)]=s;for(n=r.length,s=0;s<n;s++)void 0===r[s]&&(r[s]=-1)}}}),t.exports=i}},e={};return function r(n){if(e[n])return e[n].exports;var s=e[n]={exports:{}};return t[n](s,s.exports,r),s.exports}("./src/index.js")}();
-//# sourceMappingURL=list.min.js.map
\ No newline at end of file
diff --git a/_site/site_libs/quarto-listing/quarto-listing.js b/_site/site_libs/quarto-listing/quarto-listing.js
deleted file mode 100644
index 88d209a9cc924a7957a00dfd994e8719d25d74ef..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-listing/quarto-listing.js
+++ /dev/null
@@ -1,243 +0,0 @@
-const kProgressiveAttr = "data-src";
-let categoriesLoaded = false;
-
-window.quartoListingCategory = (category) => {
-  if (categoriesLoaded) {
-    activateCategory(category);
-    setCategoryHash(category);
-  }
-};
-
-window["quarto-listing-loaded"] = () => {
-  // Process any existing hash
-  const hash = getHash();
-
-  if (hash) {
-    // If there is a category, switch to that
-    if (hash.category) {
-      activateCategory(hash.category);
-    }
-    // Paginate a specific listing
-    const listingIds = Object.keys(window["quarto-listings"]);
-    for (const listingId of listingIds) {
-      const page = hash[getListingPageKey(listingId)];
-      if (page) {
-        showPage(listingId, page);
-      }
-    }
-  }
-
-  const listingIds = Object.keys(window["quarto-listings"]);
-  for (const listingId of listingIds) {
-    // The actual list
-    const list = window["quarto-listings"][listingId];
-
-    // Update the handlers for pagination events
-    refreshPaginationHandlers(listingId);
-
-    // Render any visible items that need it
-    renderVisibleProgressiveImages(list);
-
-    // Whenever the list is updated, we also need to
-    // attach handlers to the new pagination elements
-    // and refresh any newly visible items.
-    list.on("updated", function () {
-      renderVisibleProgressiveImages(list);
-      setTimeout(() => refreshPaginationHandlers(listingId));
-
-      // Show or hide the no matching message
-      toggleNoMatchingMessage(list);
-    });
-  }
-};
-
-window.document.addEventListener("DOMContentLoaded", function (_event) {
-  // Attach click handlers to categories
-  const categoryEls = window.document.querySelectorAll(
-    ".quarto-listing-category .category"
-  );
-
-  for (const categoryEl of categoryEls) {
-    const category = categoryEl.getAttribute("data-category");
-    categoryEl.onclick = () => {
-      activateCategory(category);
-      setCategoryHash(category);
-    };
-  }
-
-  // Attach a click handler to the category title
-  // (there should be only one, but since it is a class name, handle N)
-  const categoryTitleEls = window.document.querySelectorAll(
-    ".quarto-listing-category-title"
-  );
-  for (const categoryTitleEl of categoryTitleEls) {
-    categoryTitleEl.onclick = () => {
-      activateCategory("");
-      setCategoryHash("");
-    };
-  }
-
-  categoriesLoaded = true;
-});
-
-function toggleNoMatchingMessage(list) {
-  const selector = `#${list.listContainer.id} .listing-no-matching`;
-  const noMatchingEl = window.document.querySelector(selector);
-  if (noMatchingEl) {
-    if (list.visibleItems.length === 0) {
-      noMatchingEl.classList.remove("d-none");
-    } else {
-      if (!noMatchingEl.classList.contains("d-none")) {
-        noMatchingEl.classList.add("d-none");
-      }
-    }
-  }
-}
-
-function setCategoryHash(category) {
-  setHash({ category });
-}
-
-function setPageHash(listingId, page) {
-  const currentHash = getHash() || {};
-  currentHash[getListingPageKey(listingId)] = page;
-  setHash(currentHash);
-}
-
-function getListingPageKey(listingId) {
-  return `${listingId}-page`;
-}
-
-function refreshPaginationHandlers(listingId) {
-  const listingEl = window.document.getElementById(listingId);
-  const paginationEls = listingEl.querySelectorAll(
-    ".pagination li.page-item:not(.disabled) .page.page-link"
-  );
-  for (const paginationEl of paginationEls) {
-    paginationEl.onclick = (sender) => {
-      setPageHash(listingId, sender.target.getAttribute("data-i"));
-      showPage(listingId, sender.target.getAttribute("data-i"));
-      return false;
-    };
-  }
-}
-
-function renderVisibleProgressiveImages(list) {
-  // Run through the visible items and render any progressive images
-  for (const item of list.visibleItems) {
-    const itemEl = item.elm;
-    if (itemEl) {
-      const progressiveImgs = itemEl.querySelectorAll(
-        `img[${kProgressiveAttr}]`
-      );
-      for (const progressiveImg of progressiveImgs) {
-        const srcValue = progressiveImg.getAttribute(kProgressiveAttr);
-        if (srcValue) {
-          progressiveImg.setAttribute("src", srcValue);
-        }
-        progressiveImg.removeAttribute(kProgressiveAttr);
-      }
-    }
-  }
-}
-
-function getHash() {
-  // Hashes are of the form
-  // #name:value|name1:value1|name2:value2
-  const currentUrl = new URL(window.location);
-  const hashRaw = currentUrl.hash ? currentUrl.hash.slice(1) : undefined;
-  return parseHash(hashRaw);
-}
-
-const kAnd = "&";
-const kEquals = "=";
-
-function parseHash(hash) {
-  if (!hash) {
-    return undefined;
-  }
-  const hasValuesStrs = hash.split(kAnd);
-  const hashValues = hasValuesStrs
-    .map((hashValueStr) => {
-      const vals = hashValueStr.split(kEquals);
-      if (vals.length === 2) {
-        return { name: vals[0], value: vals[1] };
-      } else {
-        return undefined;
-      }
-    })
-    .filter((value) => {
-      return value !== undefined;
-    });
-
-  const hashObj = {};
-  hashValues.forEach((hashValue) => {
-    hashObj[hashValue.name] = decodeURIComponent(hashValue.value);
-  });
-  return hashObj;
-}
-
-function makeHash(obj) {
-  return Object.keys(obj)
-    .map((key) => {
-      return `${key}${kEquals}${obj[key]}`;
-    })
-    .join(kAnd);
-}
-
-function setHash(obj) {
-  const hash = makeHash(obj);
-  window.history.pushState(null, null, `#${hash}`);
-}
-
-function showPage(listingId, page) {
-  const list = window["quarto-listings"][listingId];
-  if (list) {
-    list.show((page - 1) * list.page + 1, list.page);
-  }
-}
-
-function activateCategory(category) {
-  // Deactivate existing categories
-  const activeEls = window.document.querySelectorAll(
-    ".quarto-listing-category .category.active"
-  );
-  for (const activeEl of activeEls) {
-    activeEl.classList.remove("active");
-  }
-
-  // Activate this category
-  const categoryEl = window.document.querySelector(
-    `.quarto-listing-category .category[data-category='${category}'`
-  );
-  if (categoryEl) {
-    categoryEl.classList.add("active");
-  }
-
-  // Filter the listings to this category
-  filterListingCategory(category);
-}
-
-function filterListingCategory(category) {
-  const listingIds = Object.keys(window["quarto-listings"]);
-  for (const listingId of listingIds) {
-    const list = window["quarto-listings"][listingId];
-    if (list) {
-      if (category === "") {
-        // resets the filter
-        list.filter();
-      } else {
-        // filter to this category
-        list.filter(function (item) {
-          const itemValues = item.values();
-          if (itemValues.categories !== null) {
-            const categories = itemValues.categories.split(",");
-            return categories.includes(category);
-          } else {
-            return false;
-          }
-        });
-      }
-    }
-  }
-}
diff --git a/_site/site_libs/quarto-nav/headroom.min.js b/_site/site_libs/quarto-nav/headroom.min.js
deleted file mode 100644
index b08f1dffbbdae0ace4eb2510b43666c8491546d3..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-nav/headroom.min.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * headroom.js v0.12.0 - Give your page some headroom. Hide your header until you need it
- * Copyright (c) 2020 Nick Williams - http://wicky.nillia.ms/headroom.js
- * License: MIT
- */
-
-!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(t=t||self).Headroom=n()}(this,function(){"use strict";function t(){return"undefined"!=typeof window}function d(t){return function(t){return t&&t.document&&function(t){return 9===t.nodeType}(t.document)}(t)?function(t){var n=t.document,o=n.body,s=n.documentElement;return{scrollHeight:function(){return Math.max(o.scrollHeight,s.scrollHeight,o.offsetHeight,s.offsetHeight,o.clientHeight,s.clientHeight)},height:function(){return t.innerHeight||s.clientHeight||o.clientHeight},scrollY:function(){return void 0!==t.pageYOffset?t.pageYOffset:(s||o.parentNode||o).scrollTop}}}(t):function(t){return{scrollHeight:function(){return Math.max(t.scrollHeight,t.offsetHeight,t.clientHeight)},height:function(){return Math.max(t.offsetHeight,t.clientHeight)},scrollY:function(){return t.scrollTop}}}(t)}function n(t,s,e){var n,o=function(){var n=!1;try{var t={get passive(){n=!0}};window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch(t){n=!1}return n}(),i=!1,r=d(t),l=r.scrollY(),a={};function c(){var t=Math.round(r.scrollY()),n=r.height(),o=r.scrollHeight();a.scrollY=t,a.lastScrollY=l,a.direction=l<t?"down":"up",a.distance=Math.abs(t-l),a.isOutOfBounds=t<0||o<t+n,a.top=t<=s.offset[a.direction],a.bottom=o<=t+n,a.toleranceExceeded=a.distance>s.tolerance[a.direction],e(a),l=t,i=!1}function h(){i||(i=!0,n=requestAnimationFrame(c))}var u=!!o&&{passive:!0,capture:!1};return t.addEventListener("scroll",h,u),c(),{destroy:function(){cancelAnimationFrame(n),t.removeEventListener("scroll",h,u)}}}function o(t){return t===Object(t)?t:{down:t,up:t}}function s(t,n){n=n||{},Object.assign(this,s.options,n),this.classes=Object.assign({},s.options.classes,n.classes),this.elem=t,this.tolerance=o(this.tolerance),this.offset=o(this.offset),this.initialised=!1,this.frozen=!1}return s.prototype={constructor:s,init:function(){return s.cutsTheMustard&&!this.initialised&&(this.addClass("initial"),this.initialised=!0,setTimeout(function(t){t.scrollTracker=n(t.scroller,{offset:t.offset,tolerance:t.tolerance},t.update.bind(t))},100,this)),this},destroy:function(){this.initialised=!1,Object.keys(this.classes).forEach(this.removeClass,this),this.scrollTracker.destroy()},unpin:function(){!this.hasClass("pinned")&&this.hasClass("unpinned")||(this.addClass("unpinned"),this.removeClass("pinned"),this.onUnpin&&this.onUnpin.call(this))},pin:function(){this.hasClass("unpinned")&&(this.addClass("pinned"),this.removeClass("unpinned"),this.onPin&&this.onPin.call(this))},freeze:function(){this.frozen=!0,this.addClass("frozen")},unfreeze:function(){this.frozen=!1,this.removeClass("frozen")},top:function(){this.hasClass("top")||(this.addClass("top"),this.removeClass("notTop"),this.onTop&&this.onTop.call(this))},notTop:function(){this.hasClass("notTop")||(this.addClass("notTop"),this.removeClass("top"),this.onNotTop&&this.onNotTop.call(this))},bottom:function(){this.hasClass("bottom")||(this.addClass("bottom"),this.removeClass("notBottom"),this.onBottom&&this.onBottom.call(this))},notBottom:function(){this.hasClass("notBottom")||(this.addClass("notBottom"),this.removeClass("bottom"),this.onNotBottom&&this.onNotBottom.call(this))},shouldUnpin:function(t){return"down"===t.direction&&!t.top&&t.toleranceExceeded},shouldPin:function(t){return"up"===t.direction&&t.toleranceExceeded||t.top},addClass:function(t){this.elem.classList.add.apply(this.elem.classList,this.classes[t].split(" "))},removeClass:function(t){this.elem.classList.remove.apply(this.elem.classList,this.classes[t].split(" "))},hasClass:function(t){return this.classes[t].split(" ").every(function(t){return this.classList.contains(t)},this.elem)},update:function(t){t.isOutOfBounds||!0!==this.frozen&&(t.top?this.top():this.notTop(),t.bottom?this.bottom():this.notBottom(),this.shouldUnpin(t)?this.unpin():this.shouldPin(t)&&this.pin())}},s.options={tolerance:{up:0,down:0},offset:0,scroller:t()?window:null,classes:{frozen:"headroom--frozen",pinned:"headroom--pinned",unpinned:"headroom--unpinned",top:"headroom--top",notTop:"headroom--not-top",bottom:"headroom--bottom",notBottom:"headroom--not-bottom",initial:"headroom"}},s.cutsTheMustard=!!(t()&&function(){}.bind&&"classList"in document.documentElement&&Object.assign&&Object.keys&&requestAnimationFrame),s});
diff --git a/_site/site_libs/quarto-nav/quarto-nav.js b/_site/site_libs/quarto-nav/quarto-nav.js
deleted file mode 100644
index ebfc262e470055d2af07d6830106ff0dad54c980..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-nav/quarto-nav.js
+++ /dev/null
@@ -1,288 +0,0 @@
-const headroomChanged = new CustomEvent("quarto-hrChanged", {
-  detail: {},
-  bubbles: true,
-  cancelable: false,
-  composed: false,
-});
-
-window.document.addEventListener("DOMContentLoaded", function () {
-  let init = false;
-
-  // Manage the back to top button, if one is present.
-  let lastScrollTop = window.pageYOffset || document.documentElement.scrollTop;
-  const scrollDownBuffer = 5;
-  const scrollUpBuffer = 35;
-  const btn = document.getElementById("quarto-back-to-top");
-  const hideBackToTop = () => {
-    btn.style.display = "none";
-  };
-  const showBackToTop = () => {
-    btn.style.display = "inline-block";
-  };
-  if (btn) {
-    window.document.addEventListener(
-      "scroll",
-      function () {
-        const currentScrollTop =
-          window.pageYOffset || document.documentElement.scrollTop;
-
-        // Shows and hides the button 'intelligently' as the user scrolls
-        if (currentScrollTop - scrollDownBuffer > lastScrollTop) {
-          hideBackToTop();
-          lastScrollTop = currentScrollTop <= 0 ? 0 : currentScrollTop;
-        } else if (currentScrollTop < lastScrollTop - scrollUpBuffer) {
-          showBackToTop();
-          lastScrollTop = currentScrollTop <= 0 ? 0 : currentScrollTop;
-        }
-
-        // Show the button at the bottom, hides it at the top
-        if (currentScrollTop <= 0) {
-          hideBackToTop();
-        } else if (
-          window.innerHeight + currentScrollTop >=
-          document.body.offsetHeight
-        ) {
-          showBackToTop();
-        }
-      },
-      false
-    );
-  }
-
-  function throttle(func, wait) {
-    var timeout;
-    return function () {
-      const context = this;
-      const args = arguments;
-      const later = function () {
-        clearTimeout(timeout);
-        timeout = null;
-        func.apply(context, args);
-      };
-
-      if (!timeout) {
-        timeout = setTimeout(later, wait);
-      }
-    };
-  }
-
-  function headerOffset() {
-    // Set an offset if there is are fixed top navbar
-    const headerEl = window.document.querySelector("header.fixed-top");
-    if (headerEl) {
-      return headerEl.clientHeight;
-    } else {
-      return 0;
-    }
-  }
-
-  function footerOffset() {
-    const footerEl = window.document.querySelector("footer.footer");
-    if (footerEl) {
-      return footerEl.clientHeight;
-    } else {
-      return 0;
-    }
-  }
-
-  function dashboardOffset() {
-    const dashboardNavEl = window.document.getElementById(
-      "quarto-dashboard-header"
-    );
-    if (dashboardNavEl !== null) {
-      return dashboardNavEl.clientHeight;
-    } else {
-      return 0;
-    }
-  }
-
-  function updateDocumentOffsetWithoutAnimation() {
-    updateDocumentOffset(false);
-  }
-
-  function updateDocumentOffset(animated) {
-    // set body offset
-    const topOffset = headerOffset();
-    const bodyOffset = topOffset + footerOffset() + dashboardOffset();
-    const bodyEl = window.document.body;
-    bodyEl.setAttribute("data-bs-offset", topOffset);
-    bodyEl.style.paddingTop = topOffset + "px";
-
-    // deal with sidebar offsets
-    const sidebars = window.document.querySelectorAll(
-      ".sidebar, .headroom-target"
-    );
-    sidebars.forEach((sidebar) => {
-      if (!animated) {
-        sidebar.classList.add("notransition");
-        // Remove the no transition class after the animation has time to complete
-        setTimeout(function () {
-          sidebar.classList.remove("notransition");
-        }, 201);
-      }
-
-      if (window.Headroom && sidebar.classList.contains("sidebar-unpinned")) {
-        sidebar.style.top = "0";
-        sidebar.style.maxHeight = "100vh";
-      } else {
-        sidebar.style.top = topOffset + "px";
-        sidebar.style.maxHeight = "calc(100vh - " + topOffset + "px)";
-      }
-    });
-
-    // allow space for footer
-    const mainContainer = window.document.querySelector(".quarto-container");
-    if (mainContainer) {
-      mainContainer.style.minHeight = "calc(100vh - " + bodyOffset + "px)";
-    }
-
-    // link offset
-    let linkStyle = window.document.querySelector("#quarto-target-style");
-    if (!linkStyle) {
-      linkStyle = window.document.createElement("style");
-      linkStyle.setAttribute("id", "quarto-target-style");
-      window.document.head.appendChild(linkStyle);
-    }
-    while (linkStyle.firstChild) {
-      linkStyle.removeChild(linkStyle.firstChild);
-    }
-    if (topOffset > 0) {
-      linkStyle.appendChild(
-        window.document.createTextNode(`
-      section:target::before {
-        content: "";
-        display: block;
-        height: ${topOffset}px;
-        margin: -${topOffset}px 0 0;
-      }`)
-      );
-    }
-    if (init) {
-      window.dispatchEvent(headroomChanged);
-    }
-    init = true;
-  }
-
-  // initialize headroom
-  var header = window.document.querySelector("#quarto-header");
-  if (header && window.Headroom) {
-    const headroom = new window.Headroom(header, {
-      tolerance: 5,
-      onPin: function () {
-        const sidebars = window.document.querySelectorAll(
-          ".sidebar, .headroom-target"
-        );
-        sidebars.forEach((sidebar) => {
-          sidebar.classList.remove("sidebar-unpinned");
-        });
-        updateDocumentOffset();
-      },
-      onUnpin: function () {
-        const sidebars = window.document.querySelectorAll(
-          ".sidebar, .headroom-target"
-        );
-        sidebars.forEach((sidebar) => {
-          sidebar.classList.add("sidebar-unpinned");
-        });
-        updateDocumentOffset();
-      },
-    });
-    headroom.init();
-
-    let frozen = false;
-    window.quartoToggleHeadroom = function () {
-      if (frozen) {
-        headroom.unfreeze();
-        frozen = false;
-      } else {
-        headroom.freeze();
-        frozen = true;
-      }
-    };
-  }
-
-  window.addEventListener(
-    "hashchange",
-    function (e) {
-      if (
-        getComputedStyle(document.documentElement).scrollBehavior !== "smooth"
-      ) {
-        window.scrollTo(0, window.pageYOffset - headerOffset());
-      }
-    },
-    false
-  );
-
-  // Observe size changed for the header
-  const headerEl = window.document.querySelector("header.fixed-top");
-  if (headerEl && window.ResizeObserver) {
-    const observer = new window.ResizeObserver(() => {
-      setTimeout(updateDocumentOffsetWithoutAnimation, 0);
-    });
-    observer.observe(headerEl, {
-      attributes: true,
-      childList: true,
-      characterData: true,
-    });
-  } else {
-    window.addEventListener(
-      "resize",
-      throttle(updateDocumentOffsetWithoutAnimation, 50)
-    );
-  }
-  setTimeout(updateDocumentOffsetWithoutAnimation, 250);
-
-  // fixup index.html links if we aren't on the filesystem
-  if (window.location.protocol !== "file:") {
-    const links = window.document.querySelectorAll("a");
-    for (let i = 0; i < links.length; i++) {
-      if (links[i].href) {
-        links[i].href = links[i].href.replace(/\/index\.html/, "/");
-      }
-    }
-
-    // Fixup any sharing links that require urls
-    // Append url to any sharing urls
-    const sharingLinks = window.document.querySelectorAll(
-      "a.sidebar-tools-main-item, a.quarto-navigation-tool, a.quarto-navbar-tools, a.quarto-navbar-tools-item"
-    );
-    for (let i = 0; i < sharingLinks.length; i++) {
-      const sharingLink = sharingLinks[i];
-      const href = sharingLink.getAttribute("href");
-      if (href) {
-        sharingLink.setAttribute(
-          "href",
-          href.replace("|url|", window.location.href)
-        );
-      }
-    }
-
-    // Scroll the active navigation item into view, if necessary
-    const navSidebar = window.document.querySelector("nav#quarto-sidebar");
-    if (navSidebar) {
-      // Find the active item
-      const activeItem = navSidebar.querySelector("li.sidebar-item a.active");
-      if (activeItem) {
-        // Wait for the scroll height and height to resolve by observing size changes on the
-        // nav element that is scrollable
-        const resizeObserver = new ResizeObserver((_entries) => {
-          // The bottom of the element
-          const elBottom = activeItem.offsetTop;
-          const viewBottom = navSidebar.scrollTop + navSidebar.clientHeight;
-
-          // The element height and scroll height are the same, then we are still loading
-          if (viewBottom !== navSidebar.scrollHeight) {
-            // Determine if the item isn't visible and scroll to it
-            if (elBottom >= viewBottom) {
-              navSidebar.scrollTop = elBottom;
-            }
-
-            // stop observing now since we've completed the scroll
-            resizeObserver.unobserve(navSidebar);
-          }
-        });
-        resizeObserver.observe(navSidebar);
-      }
-    }
-  }
-});
diff --git a/_site/site_libs/quarto-search/autocomplete.umd.js b/_site/site_libs/quarto-search/autocomplete.umd.js
deleted file mode 100644
index ae0063aa9ea872eb1f240ee64628a7ae0cd5b9de..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-search/autocomplete.umd.js
+++ /dev/null
@@ -1,3 +0,0 @@
-/*! @algolia/autocomplete-js 1.11.1 | MIT License | Β© Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-js"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?t(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):t(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}function u(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,u,a=[],l=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(a.push(r.value),a.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(c)throw o}}return a}}(e,t)||c(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e){return function(e){if(Array.isArray(e))return s(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||c(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(e,t):void 0}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function f(e){return{current:e}}function p(e,t){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),i=0;i<r;i++)o[i]=arguments[i];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,o)}),t)}}function m(e){return e.reduce((function(e,t){return e.concat(t)}),[])}var v=0;function d(){return"autocomplete-".concat(v++)}function y(e,t){return t.reduce((function(e,t){return e&&e[t]}),e)}function b(e){return 0===e.collections.length?0:e.collections.reduce((function(e,t){return e+t.items.length}),0)}function g(e){return e!==Object(e)}function h(e,t){if(e===t)return!0;if(g(e)||g(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n=0,r=Object.keys(e);n<r.length;n++){var o=r[n];if(!(o in t))return!1;if(!h(e[o],t[o]))return!1}return!0}var O=function(){};var _="1.11.1",S=[{segment:"autocomplete-core",version:_}];function j(e){var t=e.item,n=e.items,r=void 0===n?[]:n;return{index:t.__autocomplete_indexName,items:[t],positions:[1+r.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}function P(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,u,a=[],l=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(a.push(r.value),a.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(c)throw o}}return a}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return w(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return w(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var I=["items"],A=["items"];function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function D(e){return function(e){if(Array.isArray(e))return C(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return C(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return C(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function k(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function x(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function N(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?x(Object(n),!0).forEach((function(t){T(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):x(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function T(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==E(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==E(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===E(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function q(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r<e.objectIDs.length;r+=t)n.push(N(N({},e),{},{objectIDs:e.objectIDs.slice(r,r+t)}));return n}function B(e){return e.map((function(e){var t=e.items,n=k(e,I);return N(N({},n),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||n.objectIDs})}))}function R(e){var t,n,r,o=(t=P((e.version||"").split(".").map(Number),2),n=t[0],r=t[1],n>=3||2===n&&r>=4||1===n&&r>=10);function i(t,n,r){if(o&&void 0!==r){var i=r[0].__autocomplete_algoliaCredentials,u={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(D(n),[{headers:u}]))}else e.apply(void 0,[t].concat(D(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&i("clickedObjectIDsAfterSearch",B(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&i("clickedObjectIDs",B(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&i("convertedObjectIDsAfterSearch",B(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&i("convertedObjectIDs",B(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&t.reduce((function(e,t){var n=t.items,r=k(t,A);return[].concat(D(e),D(q(N(N({},r),{},{objectIDs:(null==n?void 0:n.map((function(e){return e.objectID})))||r.objectIDs})).map((function(e){return{items:n,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return i("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function F(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function L(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function U(e){return U="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},U(e)}function M(e){return function(e){if(Array.isArray(e))return H(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return H(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return H(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function V(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function W(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?V(Object(n),!0).forEach((function(t){K(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):V(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function K(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==U(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==U(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===U(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Q="2.6.0",$="https://cdn.jsdelivr.net/npm/search-insights@".concat(Q,"/dist/search-insights.min.js"),z=p((function(e){var t=e.onItemsChange,n=e.items,r=e.insights,o=e.state;t({insights:r,insightsEvents:F({items:n}).map((function(e){return W({eventName:"Items Viewed"},e)})),state:o})}),400);function G(e){var t=function(e){return W({onItemsChange:function(e){var t=e.insights,n=e.insightsEvents;t.viewedObjectIDs.apply(t,M(n.map((function(e){return W(W({},e),{},{algoliaSource:[].concat(M(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onSelect:function(e){var t=e.insights,n=e.insightsEvents;t.clickedObjectIDsAfterSearch.apply(t,M(n.map((function(e){return W(W({},e),{},{algoliaSource:[].concat(M(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onActive:O},e)}(e),n=t.insightsClient,r=t.onItemsChange,o=t.onSelect,i=t.onActive,u=n;n||function(e){if("undefined"!=typeof window)e({window:window})}((function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(u=t[n]),u||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];t[n].queue.push(r)}),t[n].version=Q,u=t[n],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var n=e.document.createElement("script");n.async=!0,n.src=$,n.onerror=function(){console.error(t)},document.body.appendChild(n)}catch(e){console.error(t)}}(t))}));var a=R(u),l=f([]),c=p((function(e){var t=e.state;if(t.isOpen){var n=t.collections.reduce((function(e,t){return[].concat(M(e),M(t.items))}),[]).filter(L);h(l.current.map((function(e){return e.objectID})),n.map((function(e){return e.objectID})))||(l.current=n,n.length>0&&z({onItemsChange:r,items:n,insights:a,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;function l(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:W({clickAnalytics:!0},e?{userToken:e}:{}),insights:a}})}u("addAlgoliaAgent","insights-plugin"),l(),u("onUserTokenChange",l),u("getUserToken",null,(function(e,t){l(t)})),n((function(e){var t=e.item,n=e.state,r=e.event,i=e.source;L(t)&&o({state:n,event:r,insights:a,item:t,insightsEvents:[W({eventName:"Item Selected"},j({item:t,items:i.getItems().filter(L)}))]})})),r((function(e){var t=e.item,n=e.source,r=e.state,o=e.event;L(t)&&i({state:r,event:o,insights:a,item:t,insightsEvents:[W({eventName:"Item Active"},j({item:t,items:n.getItems().filter(L)}))]})}))},onStateChange:function(e){var t=e.state;c({state:t})},__autocomplete_pluginOptions:e}}function J(e,t){var n=t;return{then:function(t,r){return J(e.then(Y(t,n,e),Y(r,n,e)),n)},catch:function(t){return J(e.catch(Y(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),J(e.finally(Y(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===n.isCanceled}}}function X(e){return J(e,{isCanceled:!1,onCancelList:[]})}function Y(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function Z(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var o=(null===t?-1:t)+e;return o<=-1||o>=n?null===r?null:0:o}function ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(n),!0).forEach((function(t){ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ee(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ne(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==re(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==re(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===re(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function re(e){return re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},re(e)}function oe(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e}),[]).reduce((function(t,n){return n<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,o=0,i=0;!1===r;){var u=t.collections[o];if(u===n){r=!0;break}i+=u.items.length,o++}return t.activeItemId-i}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function ie(e,t,n){return[e,null==n?void 0:n.sourceId,t].filter(Boolean).join("-").replace(/\s/g,"")}var ue=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function ae(e){return ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ae(e)}function le(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ce(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==ae(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==ae(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ae(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function se(e,t,n){var r,o=t.initialState;return{getState:function(){return o},dispatch:function(r,i){var u=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?le(Object(n),!0).forEach((function(t){ce(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):le(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},o);o=e(o,{type:r,props:t,payload:i}),n({state:o,prevState:u})},pendingRequests:(r=[],{add:function(e){return r.push(e),e.finally((function(){r=r.filter((function(t){return t!==e}))}))},cancelAll:function(){r.forEach((function(e){return e.cancel()}))},isEmpty:function(){return 0===r.length}})}}function fe(e){return fe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fe(e)}function pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?pe(Object(n),!0).forEach((function(t){ve(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ve(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==fe(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==fe(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===fe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function de(e){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},de(e)}function ye(e){return function(e){if(Array.isArray(e))return be(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return be(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return be(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function be(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function he(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach((function(t){Oe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Oe(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==de(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==de(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===de(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _e(e,t){var n,r="undefined"!=typeof window?window:{},o=e.plugins||[];return he(he({debug:!1,openOnFocus:!1,enterKeyHint:void 0,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:!1,environment:r,shouldPanelOpen:function(e){return b(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:d(),plugins:o,initialState:he({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(n){return Promise.all([].concat(ye(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:O,onResolve:O};Object.keys(t).forEach((function(e){t[e].__default=!0}));var r=te(te({},t),e);return Promise.resolve(r)})))}))}(e,n)}))).then((function(e){return m(e)})).then((function(e){return e.map((function(e){return he(he({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))},onResolve:function(n){e.onResolve(n),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:he({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}function Se(e){return Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Se(e)}function je(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Pe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?je(Object(n),!0).forEach((function(t){we(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):je(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function we(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==Se(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==Se(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Se(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ie(e){return Ie="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ie(e)}function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ee(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach((function(t){De(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function De(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==Ie(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==Ie(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Ie(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ce(e){return function(e){if(Array.isArray(e))return ke(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ke(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ke(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ke(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function xe(e){return Boolean(e.execute)}function Ne(e,t,n){if(o=e,Boolean(null==o?void 0:o.execute)){var r="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(Ce(Object.keys(n.context).map((function(e){var t;return null===(t=n.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return Ee(Ee({},e),{},{requests:e.queries.map((function(n){return{query:"algolia"===e.requesterId?Ee(Ee({},n),{},{params:Ee(Ee({},r),n.params)}):n,sourceId:t,transformResponse:e.transformResponse}}))})}var o;return{items:e,sourceId:t}}function Te(e){var t=e.reduce((function(e,t){if(!xe(t))return e.push(t),e;var n=t.searchClient,r=t.execute,o=t.requesterId,i=t.requests,u=e.find((function(e){return xe(t)&&xe(e)&&e.searchClient===n&&Boolean(o)&&e.requesterId===o}));if(u){var a;(a=u.items).push.apply(a,Ce(i))}else{var l={execute:r,requesterId:o,items:i,searchClient:n};e.push(l)}return e}),[]).map((function(e){if(!xe(e))return Promise.resolve(e);var t=e,n=t.execute,r=t.items;return n({searchClient:t.searchClient,requests:r})}));return Promise.all(t).then((function(e){return m(e)}))}function qe(e,t,n){return t.map((function(t){var r,o=e.filter((function(e){return e.sourceId===t.sourceId})),i=o.map((function(e){return e.items})),u=o[0].transformResponse,a=u?u({results:r=i,hits:r.map((function(e){return e.hits})).filter(Boolean),facetHits:r.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}):i;return t.onResolve({source:t,results:i,items:a,state:n.getState()}),a.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:a}}))}function Be(e){return Be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Be(e)}var Re=["event","nextState","props","query","refresh","store"];function Fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Fe(Object(n),!0).forEach((function(t){Ue(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Fe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ue(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==Be(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==Be(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Be(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Me(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var He,Ve,We,Ke=null,Qe=(He=-1,Ve=-1,We=void 0,function(e){var t=++He;return Promise.resolve(e).then((function(e){return We&&t<Ve?We:(Ve=t,We=e,e)}))});function $e(e){var t=e.event,n=e.nextState,r=void 0===n?{}:n,o=e.props,i=e.query,u=e.refresh,a=e.store,l=Me(e,Re);Ke&&o.environment.clearTimeout(Ke);var c=l.setCollections,s=l.setIsOpen,f=l.setQuery,p=l.setActiveItemId,v=l.setStatus;if(f(i),p(o.defaultActiveItemId),!i&&!1===o.openOnFocus){var d,y=a.getState().collections.map((function(e){return Le(Le({},e),{},{items:[]})}));v("idle"),c(y),s(null!==(d=r.isOpen)&&void 0!==d?d:o.shouldPanelOpen({state:a.getState()}));var b=X(Qe(y).then((function(){return Promise.resolve()})));return a.pendingRequests.add(b)}v("loading"),Ke=o.environment.setTimeout((function(){v("stalled")}),o.stallThreshold);var g=X(Qe(o.getSources(Le({query:i,refresh:u,state:a.getState()},l)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(Le({query:i,refresh:u,state:a.getState()},l))).then((function(t){return Ne(t,e.sourceId,a.getState())}))}))).then(Te).then((function(t){return qe(t,e,a)})).then((function(e){return function(e){var t=e.collections,n=e.props,r=e.state,o=t.reduce((function(e,t){return Pe(Pe({},e),{},we({},t.source.sourceId,Pe(Pe({},t.source),{},{getItems:function(){return m(t.items)}})))}),{}),i=n.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:o,state:r}).sourcesBySourceId;return m(n.reshape({sourcesBySourceId:i,sources:Object.values(i),state:r})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:a.getState()})}))})))).then((function(e){var n;v("idle"),c(e);var f=o.shouldPanelOpen({state:a.getState()});s(null!==(n=r.isOpen)&&void 0!==n?n:o.openOnFocus&&!i&&f||f);var p=oe(a.getState());if(null!==a.getState().activeItemId&&p){var m=p.item,d=p.itemInputValue,y=p.itemUrl,b=p.source;b.onActive(Le({event:t,item:m,itemInputValue:d,itemUrl:y,refresh:u,source:b,state:a.getState()},l))}})).finally((function(){v("idle"),Ke&&o.environment.clearTimeout(Ke)}));return a.pendingRequests.add(g)}function ze(e){return ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ze(e)}var Ge=["event","props","refresh","store"];function Je(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Je(Object(n),!0).forEach((function(t){Ye(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Je(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ye(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==ze(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==ze(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ze(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ze(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function et(e){return et="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},et(e)}var tt=["props","refresh","store"],nt=["inputElement","formElement","panelElement"],rt=["inputElement"],ot=["inputElement","maxLength"],it=["source"],ut=["item","source"];function at(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function lt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?at(Object(n),!0).forEach((function(t){ct(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):at(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ct(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==et(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==et(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===et(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function st(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ft(e){var t=e.props,n=e.refresh,r=e.store,o=st(e,tt);return{getEnvironmentProps:function(e){var n=e.inputElement,o=e.formElement,i=e.panelElement;function u(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[o,i].some((function(t){return n=t,r=e.target,n===r||n.contains(r);var n,r}))&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return lt({onTouchStart:u,onMouseDown:u,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},st(e,nt))},getRootProps:function(e){return lt({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?r.getState().collections.map((function(e){var n=e.source;return ie(t.id,"list",n)})).join(" "):void 0,"aria-labelledby":ie(t.id,"label")},e)},getFormProps:function(e){return e.inputElement,lt({action:"",noValidate:!0,role:"search",onSubmit:function(i){var u;i.preventDefault(),t.onSubmit(lt({event:i,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),null===(u=e.inputElement)||void 0===u||u.blur()},onReset:function(i){var u;i.preventDefault(),t.onReset(lt({event:i,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),null===(u=e.inputElement)||void 0===u||u.focus()}},st(e,rt))},getLabelProps:function(e){return lt({htmlFor:ie(t.id,"input"),id:ie(t.id,"label")},e)},getInputProps:function(e){var i;function u(e){(t.openOnFocus||Boolean(r.getState().query))&&$e(lt({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var a=e||{};a.inputElement;var l=a.maxLength,c=void 0===l?512:l,s=st(a,ot),f=oe(r.getState()),p=function(e){return Boolean(e&&e.match(ue))}((null===(i=t.environment.navigator)||void 0===i?void 0:i.userAgent)||""),m=t.enterKeyHint||(null!=f&&f.itemUrl&&!p?"go":"search");return lt({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?ie(t.id,"item-".concat(r.getState().activeItemId),null==f?void 0:f.source):void 0,"aria-controls":r.getState().isOpen?r.getState().collections.map((function(e){var n=e.source;return ie(t.id,"list",n)})).join(" "):void 0,"aria-labelledby":ie(t.id,"label"),value:r.getState().completion||r.getState().query,id:ie(t.id,"input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:m,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(e){$e(lt({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},o))},onKeyDown:function(e){!function(e){var t=e.event,n=e.props,r=e.refresh,o=e.store,i=Ze(e,Ge);if("ArrowUp"===t.key||"ArrowDown"===t.key){var u=function(){var e=oe(o.getState()),t=n.environment.document.getElementById(ie(n.id,"item-".concat(o.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},a=function(){var e=oe(o.getState());if(null!==o.getState().activeItemId&&e){var n=e.item,u=e.itemInputValue,a=e.itemUrl,l=e.source;l.onActive(Xe({event:t,item:n,itemInputValue:u,itemUrl:a,refresh:r,source:l,state:o.getState()},i))}};t.preventDefault(),!1===o.getState().isOpen&&(n.openOnFocus||Boolean(o.getState().query))?$e(Xe({event:t,props:n,query:o.getState().query,refresh:r,store:o},i)).then((function(){o.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),a(),setTimeout(u,0)})):(o.dispatch(t.key,{}),a(),u())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(n.debug||o.pendingRequests.cancelAll());t.preventDefault();var l=oe(o.getState()),c=l.item,s=l.itemInputValue,f=l.itemUrl,p=l.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(p.onSelect(Xe({event:t,item:c,itemInputValue:s,itemUrl:f,refresh:r,source:p,state:o.getState()},i)),n.navigator.navigateNewTab({itemUrl:f,item:c,state:o.getState()}));else if(t.shiftKey)void 0!==f&&(p.onSelect(Xe({event:t,item:c,itemInputValue:s,itemUrl:f,refresh:r,source:p,state:o.getState()},i)),n.navigator.navigateNewWindow({itemUrl:f,item:c,state:o.getState()}));else if(t.altKey);else{if(void 0!==f)return p.onSelect(Xe({event:t,item:c,itemInputValue:s,itemUrl:f,refresh:r,source:p,state:o.getState()},i)),void n.navigator.navigate({itemUrl:f,item:c,state:o.getState()});$e(Xe({event:t,nextState:{isOpen:!1},props:n,query:s,refresh:r,store:o},i)).then((function(){p.onSelect(Xe({event:t,item:c,itemInputValue:s,itemUrl:f,refresh:r,source:p,state:o.getState()},i))}))}}}(lt({event:e,props:t,refresh:n,store:r},o))},onFocus:u,onBlur:O,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||u(n)}},s)},getPanelProps:function(e){return lt({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.source,o=st(n,it);return lt({role:"listbox","aria-labelledby":ie(t.id,"label"),id:ie(t.id,"list",r)},o)},getItemProps:function(e){var i=e.item,u=e.source,a=st(e,ut);return lt({id:ie(t.id,"item-".concat(i.__autocomplete_id),u),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var t=oe(r.getState());if(null!==r.getState().activeItemId&&t){var u=t.item,a=t.itemInputValue,l=t.itemUrl,c=t.source;c.onActive(lt({event:e,item:u,itemInputValue:a,itemUrl:l,refresh:n,source:c,state:r.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var a=u.getItemInputValue({item:i,state:r.getState()}),l=u.getItemUrl({item:i,state:r.getState()});(l?Promise.resolve():$e(lt({event:e,nextState:{isOpen:!1},props:t,query:a,refresh:n,store:r},o))).then((function(){u.onSelect(lt({event:e,item:i,itemInputValue:a,itemUrl:l,refresh:n,source:u,state:r.getState()},o))}))}},a)}}}function pt(e){return pt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pt(e)}function mt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?mt(Object(n),!0).forEach((function(t){dt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function dt(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==pt(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==pt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===pt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function yt(e){var t,n,r,o,i=e.plugins,u=e.options,a=null===(t=((null===(n=u.__autocomplete_metadata)||void 0===n?void 0:n.userAgents)||[])[0])||void 0===t?void 0:t.segment,l=a?dt({},a,Object.keys((null===(r=u.__autocomplete_metadata)||void 0===r?void 0:r.options)||{})):{};return{plugins:i.map((function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}})),options:vt({"autocomplete-core":Object.keys(u)},l),ua:S.concat((null===(o=u.__autocomplete_metadata)||void 0===o?void 0:o.userAgents)||[])}}function bt(e){var t,n=e.state;return!1===n.isOpen||null===n.activeItemId?null:(null===(t=oe(n))||void 0===t?void 0:t.itemInputValue)||null}function gt(e){return gt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gt(e)}function ht(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ot(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ht(Object(n),!0).forEach((function(t){_t(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ht(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _t(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==gt(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==gt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===gt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var St=function(e,t){switch(t.type){case"setActiveItemId":case"mousemove":return Ot(Ot({},e),{},{activeItemId:t.payload});case"setQuery":return Ot(Ot({},e),{},{query:t.payload,completion:null});case"setCollections":return Ot(Ot({},e),{},{collections:t.payload});case"setIsOpen":return Ot(Ot({},e),{},{isOpen:t.payload});case"setStatus":return Ot(Ot({},e),{},{status:t.payload});case"setContext":return Ot(Ot({},e),{},{context:Ot(Ot({},e.context),t.payload)});case"ArrowDown":var n=Ot(Ot({},e),{},{activeItemId:t.payload.hasOwnProperty("nextActiveItemId")?t.payload.nextActiveItemId:Z(1,e.activeItemId,b(e),t.props.defaultActiveItemId)});return Ot(Ot({},n),{},{completion:bt({state:n})});case"ArrowUp":var r=Ot(Ot({},e),{},{activeItemId:Z(-1,e.activeItemId,b(e),t.props.defaultActiveItemId)});return Ot(Ot({},r),{},{completion:bt({state:r})});case"Escape":return e.isOpen?Ot(Ot({},e),{},{activeItemId:null,isOpen:!1,completion:null}):Ot(Ot({},e),{},{activeItemId:null,query:"",status:"idle",collections:[]});case"submit":return Ot(Ot({},e),{},{activeItemId:null,isOpen:!1,status:"idle"});case"reset":return Ot(Ot({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:"idle",query:""});case"focus":return Ot(Ot({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case"blur":return t.props.debug?e:Ot(Ot({},e),{},{isOpen:!1,activeItemId:null});case"mouseleave":return Ot(Ot({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return"The reducer action ".concat(JSON.stringify(t.type)," is not supported."),e}};function jt(e){return jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jt(e)}function Pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function wt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Pt(Object(n),!0).forEach((function(t){It(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function It(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==jt(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==jt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===jt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function At(e){var t=[],n=_e(e,t),r=se(St,n,(function(e){var t=e.prevState,r=e.state;n.onStateChange(wt({prevState:t,state:r,refresh:u,navigator:n.navigator},o))})),o=function(e){var t=e.store;return{setActiveItemId:function(e){t.dispatch("setActiveItemId",e)},setQuery:function(e){t.dispatch("setQuery",e)},setCollections:function(e){var n=0,r=e.map((function(e){return me(me({},e),{},{items:m(e.items).map((function(e){return me(me({},e),{},{__autocomplete_id:n++})}))})}));t.dispatch("setCollections",r)},setIsOpen:function(e){t.dispatch("setIsOpen",e)},setStatus:function(e){t.dispatch("setStatus",e)},setContext:function(e){t.dispatch("setContext",e)}}}({store:r}),i=ft(wt({props:n,refresh:u,store:r,navigator:n.navigator},o));function u(){return $e(wt({event:new Event("input"),nextState:{isOpen:r.getState().isOpen},props:n,navigator:n.navigator,query:r.getState().query,refresh:u,store:r},o))}if(e.insights&&!n.plugins.some((function(e){return"aa.algoliaInsightsPlugin"===e.name}))){var a="boolean"==typeof e.insights?{}:e.insights;n.plugins.push(G(a))}return n.plugins.forEach((function(e){var r;return null===(r=e.subscribe)||void 0===r?void 0:r.call(e,wt(wt({},o),{},{navigator:n.navigator,refresh:u,onSelect:function(e){t.push({onSelect:e})},onActive:function(e){t.push({onActive:e})},onResolve:function(e){t.push({onResolve:e})}}))})),function(e){var t,n,r=e.metadata,o=e.environment;if(null===(t=o.navigator)||void 0===t||null===(n=t.userAgent)||void 0===n?void 0:n.includes("Algolia Crawler")){var i=o.document.createElement("meta"),u=o.document.querySelector("head");i.name="algolia:metadata",setTimeout((function(){i.content=JSON.stringify(r),u.appendChild(i)}),0)}}({metadata:yt({plugins:n.plugins,options:e}),environment:n.environment}),wt(wt({refresh:u,navigator:n.navigator},i),o)}var Et=function(e,t,n,r){var o;t[0]=0;for(var i=1;i<t.length;i++){var u=t[i++],a=t[i]?(t[0]|=u?1:2,n[t[i++]]):t[++i];3===u?r[0]=a:4===u?r[1]=Object.assign(r[1]||{},a):5===u?(r[1]=r[1]||{})[t[++i]]=a:6===u?r[1][t[++i]]+=a+"":u?(o=e.apply(a,Et(e,a,n,["",null])),r.push(o),a[0]?t[0]|=2:(t[i-2]=0,t[i]=o)):r.push(a)}return r},Dt=new Map;function Ct(e){var t=Dt.get(this);return t||(t=new Map,Dt.set(this,t)),(t=Et(this,t.get(e)||(t.set(e,t=function(e){for(var t,n,r=1,o="",i="",u=[0],a=function(e){1===r&&(e||(o=o.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?u.push(0,e,o):3===r&&(e||o)?(u.push(3,e,o),r=2):2===r&&"..."===o&&e?u.push(4,e,0):2===r&&o&&!e?u.push(5,0,!0,o):r>=5&&((o||!e&&5===r)&&(u.push(r,0,o,n),r=6),e&&(u.push(r,e,0,n),r=6)),o=""},l=0;l<e.length;l++){l&&(1===r&&a(),a(l));for(var c=0;c<e[l].length;c++)t=e[l][c],1===r?"<"===t?(a(),u=[u],r=3):o+=t:4===r?"--"===o&&">"===t?(r=1,o=""):o=t+o[0]:i?t===i?i="":o+=t:'"'===t||"'"===t?i=t:">"===t?(a(),r=1):r&&("="===t?(r=5,n=o,o=""):"/"===t&&(r<5||">"===e[l][c+1])?(a(),3===r&&(u=u[0]),r=u,(u=u[0]).push(2,0,r),r=0):" "===t||"\t"===t||"\n"===t||"\r"===t?(a(),r=2):o+=t),3===r&&"!--"===o&&(r=4,u=u[0])}return a(),u}(e)),t),arguments,[])).length>1?t:t[0]}var kt=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-ClearIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","18"),n.setAttribute("height","18"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"),n.appendChild(r),n};function xt(e,t){if("string"==typeof t){var n=e.document.querySelector(t);return"The element ".concat(JSON.stringify(t)," is not in the document."),n}return t}function Nt(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((function(e,t){return Object.keys(t).forEach((function(n){var r=e[n],o=t[n];r!==o&&(e[n]=[r,o].filter(Boolean).join(" "))})),e}),{})}var Tt=function(e){return e&&"object"===r(e)&&"[object Object]"===Object.prototype.toString.call(e)};function qt(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((function(e,t){return Object.keys(t).forEach((function(n){var r=e[n],o=t[n];Array.isArray(r)&&Array.isArray(o)?e[n]=r.concat.apply(r,l(o)):Tt(r)&&Tt(o)?e[n]=qt(r,o):e[n]=o})),e}),{})}function Bt(e,t){return Object.entries(e).reduce((function(e,r){var i=a(r,2),u=i[0],l=i[1];return t({key:u,value:l})?n(n({},e),{},o({},u,l)):e}),{})}var Rt=["ontouchstart","ontouchend","ontouchmove","ontouchcancel"];function Ft(e,t,n){e[t]=null===n?"":"number"!=typeof n?n:n+"px"}function Lt(e){this._listeners[e.type](e)}function Ut(e,t,n){var r,o,i=e[t];if("style"===t)if("string"==typeof n)e.style=n;else if(null===n)e.style="";else for(t in n)i&&n[t]===i[t]||Ft(e.style,t,n[t]);else"o"===t[0]&&"n"===t[1]?(r=t!==(t=t.replace(/Capture$/,"")),((o=t.toLowerCase())in e||Rt.includes(o))&&(t=o),t=t.slice(2),e._listeners||(e._listeners={}),e._listeners[t]=n,n?i||e.addEventListener(t,Lt,r):e.removeEventListener(t,Lt,r)):"list"!==t&&"tagName"!==t&&"form"!==t&&"type"!==t&&"size"!==t&&"download"!==t&&"href"!==t&&t in e?e[t]=null==n?"":n:"function"!=typeof n&&"dangerouslySetInnerHTML"!==t&&(null==n||!1===n&&!/^ar/.test(t)?e.removeAttribute(t):e.setAttribute(t,n))}function Mt(e){return"onChange"===e?"onInput":e}function Ht(e,t){for(var n in t)Ut(e,Mt(n),t[n])}function Vt(e,t){for(var n in t)"o"===n[0]&&"n"===n[1]||Ut(e,Mt(n),t[n])}var Wt=["children"];function Kt(e){return function(t,n){var r=n.children,o=void 0===r?[]:r,i=u(n,Wt),a=e.document.createElement(t);return Ht(a,i),a.append.apply(a,l(o)),a}}var Qt=["autocompleteScopeApi","environment","classNames","getInputProps","getInputPropsCore","isDetached","state"],$t=function(e){var t=e.environment.document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("class","aa-LoadingIcon"),t.setAttribute("viewBox","0 0 100 100"),t.setAttribute("width","20"),t.setAttribute("height","20"),t.innerHTML='<circle\n  cx="50"\n  cy="50"\n  fill="none"\n  r="35"\n  stroke="currentColor"\n  stroke-dasharray="164.93361431346415 56.97787143782138"\n  stroke-width="6"\n>\n  <animateTransform\n    attributeName="transform"\n    type="rotate"\n    repeatCount="indefinite"\n    dur="1s"\n    values="0 50 50;90 50 50;180 50 50;360 50 50"\n    keyTimes="0;0.40;0.65;1"\n  />\n</circle>',t},zt=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-SubmitIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","20"),n.setAttribute("height","20"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"),n.appendChild(r),n};function Gt(e){var t=e.autocomplete,r=e.autocompleteScopeApi,o=e.classNames,i=e.environment,a=e.isDetached,l=e.placeholder,c=void 0===l?"Search":l,s=e.propGetters,f=e.setIsModalOpen,p=e.state,m=e.translations,v=Kt(i),d=s.getRootProps(n({state:p,props:t.getRootProps({})},r)),y=v("div",n({class:o.root},d)),b=v("div",{class:o.detachedContainer,onMouseDown:function(e){e.stopPropagation()}}),g=v("div",{class:o.detachedOverlay,children:[b],onMouseDown:function(){f(!1),t.setIsOpen(!1)}}),h=s.getLabelProps(n({state:p,props:t.getLabelProps({})},r)),O=v("button",{class:o.submitButton,type:"submit",title:m.submitButtonTitle,children:[zt({environment:i})]}),_=v("label",n({class:o.label,children:[O]},h)),S=v("button",{class:o.clearButton,type:"reset",title:m.clearButtonTitle,children:[kt({environment:i})]}),j=v("div",{class:o.loadingIndicator,children:[$t({environment:i})]}),P=function(e){var t=e.autocompleteScopeApi,r=e.environment;e.classNames;var o=e.getInputProps,i=e.getInputPropsCore,a=e.isDetached,l=e.state,c=u(e,Qt),s=Kt(r)("input",c),f=o(n({state:l,props:i({inputElement:s}),inputElement:s},t));return Ht(s,n(n({},f),{},{onKeyDown:function(e){a&&"Tab"===e.key||f.onKeyDown(e)}})),s}({class:o.input,environment:i,state:p,getInputProps:s.getInputProps,getInputPropsCore:t.getInputProps,autocompleteScopeApi:r,isDetached:a}),w=v("div",{class:o.inputWrapperPrefix,children:[_,j]}),I=v("div",{class:o.inputWrapperSuffix,children:[S]}),A=v("div",{class:o.inputWrapper,children:[P]}),E=s.getFormProps(n({state:p,props:t.getFormProps({inputElement:P})},r)),D=v("form",n({class:o.form,children:[w,A,I]},E)),C=s.getPanelProps(n({state:p,props:t.getPanelProps({})},r)),k=v("div",n({class:o.panel},C)),x=v("div",{class:o.detachedSearchButtonQuery,textContent:p.query}),N=v("div",{class:o.detachedSearchButtonPlaceholder,hidden:Boolean(p.query),textContent:c});if(a){var T=v("div",{class:o.detachedSearchButtonIcon,children:[zt({environment:i})]}),q=v("button",{type:"button",class:o.detachedSearchButton,onClick:function(){f(!0)},children:[T,N,x]}),B=v("button",{type:"button",class:o.detachedCancelButton,textContent:m.detachedCancelButtonText,onTouchStart:function(e){e.stopPropagation()},onClick:function(){t.setIsOpen(!1),f(!1)}}),R=v("div",{class:o.detachedFormContainer,children:[D,B]});b.appendChild(R),y.appendChild(q)}else y.appendChild(D);return{detachedContainer:b,detachedOverlay:g,detachedSearchButtonQuery:x,detachedSearchButtonPlaceholder:N,inputWrapper:A,input:P,root:y,form:D,label:_,submitButton:O,clearButton:S,loadingIndicator:j,panel:k}}var Jt,Xt,Yt,Zt,en,tn,nn,rn={},on=[],un=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function an(e,t){for(var n in t)e[n]=t[n];return e}function ln(e){var t=e.parentNode;t&&t.removeChild(e)}function cn(e,t,n){var r,o,i,u={};for(i in t)"key"==i?r=t[i]:"ref"==i?o=t[i]:u[i]=t[i];if(arguments.length>2&&(u.children=arguments.length>3?Jt.call(arguments,2):n),"function"==typeof e&&null!=e.defaultProps)for(i in e.defaultProps)void 0===u[i]&&(u[i]=e.defaultProps[i]);return sn(e,u,r,o,null)}function sn(e,t,n,r,o){var i={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==o?++Yt:o};return null==o&&null!=Xt.vnode&&Xt.vnode(i),i}function fn(e){return e.children}function pn(e,t){this.props=e,this.context=t}function mn(e,t){if(null==t)return e.__?mn(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t<e.__k.length;t++)if(null!=(n=e.__k[t])&&null!=n.__e)return n.__e;return"function"==typeof e.type?mn(e):null}function vn(e){var t,n;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if(null!=(n=e.__k[t])&&null!=n.__e){e.__e=e.__c.base=n.__e;break}return vn(e)}}function dn(e){(!e.__d&&(e.__d=!0)&&Zt.push(e)&&!yn.__r++||en!==Xt.debounceRendering)&&((en=Xt.debounceRendering)||tn)(yn)}function yn(){var e,t,n,r,o,i,u,a;for(Zt.sort(nn);e=Zt.shift();)e.__d&&(t=Zt.length,r=void 0,o=void 0,u=(i=(n=e).__v).__e,(a=n.__P)&&(r=[],(o=an({},i)).__v=i.__v+1,wn(a,i,o,n.__n,void 0!==a.ownerSVGElement,null!=i.__h?[u]:null,r,null==u?mn(i):u,i.__h),In(r,i),i.__e!=u&&vn(i)),Zt.length>t&&Zt.sort(nn));yn.__r=0}function bn(e,t,n,r,o,i,u,a,l,c){var s,f,p,m,v,d,y,b=r&&r.__k||on,g=b.length;for(n.__k=[],s=0;s<t.length;s++)if(null!=(m=n.__k[s]=null==(m=t[s])||"boolean"==typeof m||"function"==typeof m?null:"string"==typeof m||"number"==typeof m||"bigint"==typeof m?sn(null,m,null,null,m):Array.isArray(m)?sn(fn,{children:m},null,null,null):m.__b>0?sn(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)){if(m.__=n,m.__b=n.__b+1,null===(p=b[s])||p&&m.key==p.key&&m.type===p.type)b[s]=void 0;else for(f=0;f<g;f++){if((p=b[f])&&m.key==p.key&&m.type===p.type){b[f]=void 0;break}p=null}wn(e,m,p=p||rn,o,i,u,a,l,c),v=m.__e,(f=m.ref)&&p.ref!=f&&(y||(y=[]),p.ref&&y.push(p.ref,null,m),y.push(f,m.__c||v,m)),null!=v?(null==d&&(d=v),"function"==typeof m.type&&m.__k===p.__k?m.__d=l=gn(m,l,e):l=hn(e,m,p,b,v,l),"function"==typeof n.type&&(n.__d=l)):l&&p.__e==l&&l.parentNode!=e&&(l=mn(p))}for(n.__e=d,s=g;s--;)null!=b[s]&&("function"==typeof n.type&&null!=b[s].__e&&b[s].__e==n.__d&&(n.__d=On(r).nextSibling),Dn(b[s],b[s]));if(y)for(s=0;s<y.length;s++)En(y[s],y[++s],y[++s])}function gn(e,t,n){for(var r,o=e.__k,i=0;o&&i<o.length;i++)(r=o[i])&&(r.__=e,t="function"==typeof r.type?gn(r,t,n):hn(n,r,r,o,r.__e,t));return t}function hn(e,t,n,r,o,i){var u,a,l;if(void 0!==t.__d)u=t.__d,t.__d=void 0;else if(null==n||o!=i||null==o.parentNode)e:if(null==i||i.parentNode!==e)e.appendChild(o),u=null;else{for(a=i,l=0;(a=a.nextSibling)&&l<r.length;l+=1)if(a==o)break e;e.insertBefore(o,i),u=i}return void 0!==u?u:o.nextSibling}function On(e){var t,n,r;if(null==e.type||"string"==typeof e.type)return e.__e;if(e.__k)for(t=e.__k.length-1;t>=0;t--)if((n=e.__k[t])&&(r=On(n)))return r;return null}function _n(e,t,n){"-"===t[0]?e.setProperty(t,null==n?"":n):e[t]=null==n?"":"number"!=typeof n||un.test(t)?n:n+"px"}function Sn(e,t,n,r,o){var i;e:if("style"===t)if("string"==typeof n)e.style.cssText=n;else{if("string"==typeof r&&(e.style.cssText=r=""),r)for(t in r)n&&t in n||_n(e.style,t,"");if(n)for(t in n)r&&n[t]===r[t]||_n(e.style,t,n[t])}else if("o"===t[0]&&"n"===t[1])i=t!==(t=t.replace(/Capture$/,"")),t=t.toLowerCase()in e?t.toLowerCase().slice(2):t.slice(2),e.l||(e.l={}),e.l[t+i]=n,n?r||e.addEventListener(t,i?Pn:jn,i):e.removeEventListener(t,i?Pn:jn,i);else if("dangerouslySetInnerHTML"!==t){if(o)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!==t&&"height"!==t&&"href"!==t&&"list"!==t&&"form"!==t&&"tabIndex"!==t&&"download"!==t&&t in e)try{e[t]=null==n?"":n;break e}catch(e){}"function"==typeof n||(null==n||!1===n&&"-"!==t[4]?e.removeAttribute(t):e.setAttribute(t,n))}}function jn(e){return this.l[e.type+!1](Xt.event?Xt.event(e):e)}function Pn(e){return this.l[e.type+!0](Xt.event?Xt.event(e):e)}function wn(e,t,n,r,o,i,u,a,l){var c,s,f,p,m,v,d,y,b,g,h,O,_,S,j,P=t.type;if(void 0!==t.constructor)return null;null!=n.__h&&(l=n.__h,a=t.__e=n.__e,t.__h=null,i=[a]),(c=Xt.__b)&&c(t);try{e:if("function"==typeof P){if(y=t.props,b=(c=P.contextType)&&r[c.__c],g=c?b?b.props.value:c.__:r,n.__c?d=(s=t.__c=n.__c).__=s.__E:("prototype"in P&&P.prototype.render?t.__c=s=new P(y,g):(t.__c=s=new pn(y,g),s.constructor=P,s.render=Cn),b&&b.sub(s),s.props=y,s.state||(s.state={}),s.context=g,s.__n=r,f=s.__d=!0,s.__h=[],s._sb=[]),null==s.__s&&(s.__s=s.state),null!=P.getDerivedStateFromProps&&(s.__s==s.state&&(s.__s=an({},s.__s)),an(s.__s,P.getDerivedStateFromProps(y,s.__s))),p=s.props,m=s.state,s.__v=t,f)null==P.getDerivedStateFromProps&&null!=s.componentWillMount&&s.componentWillMount(),null!=s.componentDidMount&&s.__h.push(s.componentDidMount);else{if(null==P.getDerivedStateFromProps&&y!==p&&null!=s.componentWillReceiveProps&&s.componentWillReceiveProps(y,g),!s.__e&&null!=s.shouldComponentUpdate&&!1===s.shouldComponentUpdate(y,s.__s,g)||t.__v===n.__v){for(t.__v!==n.__v&&(s.props=y,s.state=s.__s,s.__d=!1),s.__e=!1,t.__e=n.__e,t.__k=n.__k,t.__k.forEach((function(e){e&&(e.__=t)})),h=0;h<s._sb.length;h++)s.__h.push(s._sb[h]);s._sb=[],s.__h.length&&u.push(s);break e}null!=s.componentWillUpdate&&s.componentWillUpdate(y,s.__s,g),null!=s.componentDidUpdate&&s.__h.push((function(){s.componentDidUpdate(p,m,v)}))}if(s.context=g,s.props=y,s.__P=e,O=Xt.__r,_=0,"prototype"in P&&P.prototype.render){for(s.state=s.__s,s.__d=!1,O&&O(t),c=s.render(s.props,s.state,s.context),S=0;S<s._sb.length;S++)s.__h.push(s._sb[S]);s._sb=[]}else do{s.__d=!1,O&&O(t),c=s.render(s.props,s.state,s.context),s.state=s.__s}while(s.__d&&++_<25);s.state=s.__s,null!=s.getChildContext&&(r=an(an({},r),s.getChildContext())),f||null==s.getSnapshotBeforeUpdate||(v=s.getSnapshotBeforeUpdate(p,m)),j=null!=c&&c.type===fn&&null==c.key?c.props.children:c,bn(e,Array.isArray(j)?j:[j],t,n,r,o,i,u,a,l),s.base=t.__e,t.__h=null,s.__h.length&&u.push(s),d&&(s.__E=s.__=null),s.__e=!1}else null==i&&t.__v===n.__v?(t.__k=n.__k,t.__e=n.__e):t.__e=An(n.__e,t,n,r,o,i,u,l);(c=Xt.diffed)&&c(t)}catch(e){t.__v=null,(l||null!=i)&&(t.__e=a,t.__h=!!l,i[i.indexOf(a)]=null),Xt.__e(e,t,n)}}function In(e,t){Xt.__c&&Xt.__c(t,e),e.some((function(t){try{e=t.__h,t.__h=[],e.some((function(e){e.call(t)}))}catch(e){Xt.__e(e,t.__v)}}))}function An(e,t,n,r,o,i,u,a){var l,c,s,f=n.props,p=t.props,m=t.type,v=0;if("svg"===m&&(o=!0),null!=i)for(;v<i.length;v++)if((l=i[v])&&"setAttribute"in l==!!m&&(m?l.localName===m:3===l.nodeType)){e=l,i[v]=null;break}if(null==e){if(null===m)return document.createTextNode(p);e=o?document.createElementNS("http://www.w3.org/2000/svg",m):document.createElement(m,p.is&&p),i=null,a=!1}if(null===m)f===p||a&&e.data===p||(e.data=p);else{if(i=i&&Jt.call(e.childNodes),c=(f=n.props||rn).dangerouslySetInnerHTML,s=p.dangerouslySetInnerHTML,!a){if(null!=i)for(f={},v=0;v<e.attributes.length;v++)f[e.attributes[v].name]=e.attributes[v].value;(s||c)&&(s&&(c&&s.__html==c.__html||s.__html===e.innerHTML)||(e.innerHTML=s&&s.__html||""))}if(function(e,t,n,r,o){var i;for(i in n)"children"===i||"key"===i||i in t||Sn(e,i,null,n[i],r);for(i in t)o&&"function"!=typeof t[i]||"children"===i||"key"===i||"value"===i||"checked"===i||n[i]===t[i]||Sn(e,i,t[i],n[i],r)}(e,p,f,o,a),s)t.__k=[];else if(v=t.props.children,bn(e,Array.isArray(v)?v:[v],t,n,r,o&&"foreignObject"!==m,i,u,i?i[0]:n.__k&&mn(n,0),a),null!=i)for(v=i.length;v--;)null!=i[v]&&ln(i[v]);a||("value"in p&&void 0!==(v=p.value)&&(v!==e.value||"progress"===m&&!v||"option"===m&&v!==f.value)&&Sn(e,"value",v,f.value,!1),"checked"in p&&void 0!==(v=p.checked)&&v!==e.checked&&Sn(e,"checked",v,f.checked,!1))}return e}function En(e,t,n){try{"function"==typeof e?e(t):e.current=t}catch(e){Xt.__e(e,n)}}function Dn(e,t,n){var r,o;if(Xt.unmount&&Xt.unmount(e),(r=e.ref)&&(r.current&&r.current!==e.__e||En(r,null,t)),null!=(r=e.__c)){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){Xt.__e(e,t)}r.base=r.__P=null,e.__c=void 0}if(r=e.__k)for(o=0;o<r.length;o++)r[o]&&Dn(r[o],t,n||"function"!=typeof e.type);n||null==e.__e||ln(e.__e),e.__=e.__e=e.__d=void 0}function Cn(e,t,n){return this.constructor(e,n)}Jt=on.slice,Xt={__e:function(e,t,n,r){for(var o,i,u;t=t.__;)if((o=t.__c)&&!o.__)try{if((i=o.constructor)&&null!=i.getDerivedStateFromError&&(o.setState(i.getDerivedStateFromError(e)),u=o.__d),null!=o.componentDidCatch&&(o.componentDidCatch(e,r||{}),u=o.__d),u)return o.__E=o}catch(t){e=t}throw e}},Yt=0,pn.prototype.setState=function(e,t){var n;n=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=an({},this.state),"function"==typeof e&&(e=e(an({},n),this.props)),e&&an(n,e),null!=e&&this.__v&&(t&&this._sb.push(t),dn(this))},pn.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),dn(this))},pn.prototype.render=fn,Zt=[],tn="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,nn=function(e,t){return e.__v.__b-t.__v.__b},yn.__r=0;var kn="__aa-highlight__",xn="__/aa-highlight__";function Nn(e){var t=e.highlightedValue.split(kn),n=t.shift(),r=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{get:function(){return e},add:function(t){var n=e[e.length-1];(null==n?void 0:n.isHighlighted)===t.isHighlighted?e[e.length-1]={value:n.value+t.value,isHighlighted:n.isHighlighted}:e.push(t)}}}(n?[{value:n,isHighlighted:!1}]:[]);return t.forEach((function(e){var t=e.split(xn);r.add({value:t[0],isHighlighted:!0}),""!==t[1]&&r.add({value:t[1],isHighlighted:!1})})),r.get()}function Tn(e){return function(e){if(Array.isArray(e))return qn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return qn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return qn(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function qn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Bn(e){var t=e.hit,n=e.attribute,r=Array.isArray(n)?n:[n],o=y(t,["_highlightResult"].concat(Tn(r),["value"]));return"string"!=typeof o&&(o=y(t,r)||""),Nn({highlightedValue:o})}var Rn={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Fn=new RegExp(/\w/i),Ln=/&(amp|quot|lt|gt|#39);/g,Un=RegExp(Ln.source);function Mn(e,t){var n,r,o,i=e[t],u=(null===(n=e[t+1])||void 0===n?void 0:n.isHighlighted)||!0,a=(null===(r=e[t-1])||void 0===r?void 0:r.isHighlighted)||!0;return Fn.test((o=i.value)&&Un.test(o)?o.replace(Ln,(function(e){return Rn[e]})):o)||a!==u?i.isHighlighted:a}function Hn(e){return Hn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Hn(e)}function Vn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Wn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Vn(Object(n),!0).forEach((function(t){Kn(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Vn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Kn(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==Hn(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==Hn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Hn(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Qn(e){return e.some((function(e){return e.isHighlighted}))?e.map((function(t,n){return Wn(Wn({},t),{},{isHighlighted:!Mn(e,n)})})):e.map((function(e){return Wn(Wn({},e),{},{isHighlighted:!1})}))}function $n(e){return function(e){if(Array.isArray(e))return zn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return zn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return zn(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function zn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Gn(e){var t=e.hit,n=e.attribute,r=Array.isArray(n)?n:[n],o=y(t,["_snippetResult"].concat($n(r),["value"]));return"string"!=typeof o&&(o=y(t,r)||""),Nn({highlightedValue:o})}function Jn(e){return Jn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Jn(e)}function Xn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Yn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Xn(Object(n),!0).forEach((function(t){Zn(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Zn(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==Jn(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==Jn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Jn(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function er(e){return er="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},er(e)}var tr=["params"];function nr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function rr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?nr(Object(n),!0).forEach((function(t){or(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function or(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==er(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==er(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===er(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ir(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ur(e){return function(e){if(Array.isArray(e))return ar(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ar(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ar(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ar(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function lr(e){var t=e.createElement,n=e.Fragment;function r(e){var r=e.hit,o=e.attribute,i=e.tagName,u=void 0===i?"mark":i;return t(n,{},Bn({hit:r,attribute:o}).map((function(e,n){return e.isHighlighted?t(u,{key:n},e.value):e.value})))}return r.__autocomplete_componentName="Highlight",r}function cr(e){var t=e.createElement,n=e.Fragment;function r(e){var r,o=e.hit,i=e.attribute,u=e.tagName,a=void 0===u?"mark":u;return t(n,{},(r={hit:o,attribute:i},Qn(Bn(r))).map((function(e,n){return e.isHighlighted?t(a,{key:n},e.value):e.value})))}return r.__autocomplete_componentName="ReverseHighlight",r}function sr(e){var t=e.createElement,n=e.Fragment;function r(e){var r,o=e.hit,i=e.attribute,u=e.tagName,a=void 0===u?"mark":u;return t(n,{},(r={hit:o,attribute:i},Qn(Gn(r))).map((function(e,n){return e.isHighlighted?t(a,{key:n},e.value):e.value})))}return r.__autocomplete_componentName="ReverseSnippet",r}function fr(e){var t=e.createElement,n=e.Fragment;function r(e){var r=e.hit,o=e.attribute,i=e.tagName,u=void 0===i?"mark":i;return t(n,{},Gn({hit:r,attribute:o}).map((function(e,n){return e.isHighlighted?t(u,{key:n},e.value):e.value})))}return r.__autocomplete_componentName="Snippet",r}var pr=["classNames","container","getEnvironmentProps","getFormProps","getInputProps","getItemProps","getLabelProps","getListProps","getPanelProps","getRootProps","panelContainer","panelPlacement","render","renderNoResults","renderer","detachedMediaQuery","components","translations"],mr={clearButton:"aa-ClearButton",detachedCancelButton:"aa-DetachedCancelButton",detachedContainer:"aa-DetachedContainer",detachedFormContainer:"aa-DetachedFormContainer",detachedOverlay:"aa-DetachedOverlay",detachedSearchButton:"aa-DetachedSearchButton",detachedSearchButtonIcon:"aa-DetachedSearchButtonIcon",detachedSearchButtonPlaceholder:"aa-DetachedSearchButtonPlaceholder",detachedSearchButtonQuery:"aa-DetachedSearchButtonQuery",form:"aa-Form",input:"aa-Input",inputWrapper:"aa-InputWrapper",inputWrapperPrefix:"aa-InputWrapperPrefix",inputWrapperSuffix:"aa-InputWrapperSuffix",item:"aa-Item",label:"aa-Label",list:"aa-List",loadingIndicator:"aa-LoadingIndicator",panel:"aa-Panel",panelLayout:"aa-PanelLayout aa-Panel--scrollable",root:"aa-Autocomplete",source:"aa-Source",sourceFooter:"aa-SourceFooter",sourceHeader:"aa-SourceHeader",sourceNoResults:"aa-SourceNoResults",submitButton:"aa-SubmitButton"},vr=function(e,t){var n=e.children;(0,e.render)(n,t)},dr={createElement:cn,Fragment:fn,render:function(e,t,n){var r,o,i;Xt.__&&Xt.__(e,t),o=(r="function"==typeof n)?null:n&&n.__k||t.__k,i=[],wn(t,e=(!r&&n||t).__k=cn(fn,null,[e]),o||rn,rn,void 0!==t.ownerSVGElement,!r&&n?[n]:o?null:t.firstChild?Jt.call(t.childNodes):null,i,!r&&n?n:o?o.__e:t.firstChild,r),In(i,e)}};function yr(e){var t=e.panelPlacement,n=e.container,r=e.form,o=e.environment,i=n.getBoundingClientRect(),u=(o.pageYOffset||o.document.documentElement.scrollTop||o.document.body.scrollTop||0)+i.top+i.height;switch(t){case"start":return{top:u,left:i.left};case"end":return{top:u,right:o.document.documentElement.clientWidth-(i.left+i.width)};case"full-width":return{top:u,left:0,right:0,width:"unset",maxWidth:"unset"};case"input-wrapper-width":var a=r.getBoundingClientRect();return{top:u,left:a.left,right:o.document.documentElement.clientWidth-(a.left+a.width),width:"unset",maxWidth:"unset"};default:throw new Error("[Autocomplete] The `panelPlacement` value ".concat(JSON.stringify(t)," is not valid."))}}var br=[{segment:"autocomplete-js",version:_}],gr=["components"];var hr=function(e,t){function n(t){return e({searchClient:t.searchClient,queries:t.requests.map((function(e){return e.query}))}).then((function(e){return e.map((function(e,n){var r=t.requests[n];return{items:e,sourceId:r.sourceId,transformResponse:r.transformResponse}}))}))}return function(e){return function(r){return Yn(Yn({requesterId:t,execute:n},e),r)}}}((function(e){return function(e){var t=e.searchClient,n=e.queries,r=e.userAgents,o=void 0===r?[]:r;"function"==typeof t.addAlgoliaAgent&&[].concat(ur(S),ur(o)).forEach((function(e){var n=e.segment,r=e.version;t.addAlgoliaAgent(n,r)}));var i=function(e){var t=e.transporter||{},n=t.headers,r=void 0===n?{}:n,o=t.queryParameters,i=void 0===o?{}:o,u="x-algolia-application-id",a="x-algolia-api-key";return{appId:r[u]||i[u],apiKey:r[a]||i[a]}}(t),u=i.appId,a=i.apiKey;return t.search(n.map((function(e){var t=e.params;return rr(rr({},ir(e,tr)),{},{params:rr({hitsPerPage:5,highlightPreTag:kn,highlightPostTag:xn},t)})}))).then((function(e){return e.results.map((function(e,t){var r;return rr(rr({},e),{},{hits:null===(r=e.hits)||void 0===r?void 0:r.map((function(r){return rr(rr({},r),{},{__autocomplete_indexName:e.index||n[t].indexName,__autocomplete_queryID:e.queryID,__autocomplete_algoliaCredentials:{appId:u,apiKey:a}})}))})}))}))}(n(n({},e),{},{userAgents:br}))}),"algolia");var Or=hr({transformResponse:function(e){return e.hits}});e.autocomplete=function(e){var t,r=function(){var e=[],t=[];function n(n){e.push(n);var r=n();t.push(r)}return{runEffect:n,cleanupEffects:function(){var e=t;t=[],e.forEach((function(e){e()}))},runEffects:function(){var t=e;e=[],t.forEach((function(e){n(e)}))}}}(),a=r.runEffect,l=r.cleanupEffects,c=r.runEffects,s=(t=[],{reactive:function(e){var n=e(),r={_fn:e,_ref:{current:n},get value(){return this._ref.current},set value(e){this._ref.current=e}};return t.push(r),r},runReactives:function(){t.forEach((function(e){e._ref.current=e._fn()}))}}),m=s.reactive,v=s.runReactives,y=f(!1),g=f(e),h=f(void 0),O=m((function(){return function(e){var t,r=e.classNames,o=e.container,i=e.getEnvironmentProps,a=e.getFormProps,l=e.getInputProps,c=e.getItemProps,s=e.getLabelProps,f=e.getListProps,p=e.getPanelProps,m=e.getRootProps,v=e.panelContainer,y=e.panelPlacement,b=e.render,g=e.renderNoResults,h=e.renderer,O=e.detachedMediaQuery,_=e.components,S=e.translations,j=u(e,pr),P="undefined"!=typeof window?window:{},w=xt(P,o);w.tagName;var I=n(n({},dr),h),A={Highlight:lr(I),ReverseHighlight:cr(I),ReverseSnippet:sr(I),Snippet:fr(I)};return{renderer:{classNames:Nt(mr,null!=r?r:{}),container:w,getEnvironmentProps:null!=i?i:function(e){return e.props},getFormProps:null!=a?a:function(e){return e.props},getInputProps:null!=l?l:function(e){return e.props},getItemProps:null!=c?c:function(e){return e.props},getLabelProps:null!=s?s:function(e){return e.props},getListProps:null!=f?f:function(e){return e.props},getPanelProps:null!=p?p:function(e){return e.props},getRootProps:null!=m?m:function(e){return e.props},panelContainer:v?xt(P,v):P.document.body,panelPlacement:null!=y?y:"input-wrapper-width",render:null!=b?b:vr,renderNoResults:g,renderer:I,detachedMediaQuery:null!=O?O:getComputedStyle(P.document.documentElement).getPropertyValue("--aa-detached-media-query"),components:n(n({},A),_),translations:n(n({},{clearButtonTitle:"Clear",detachedCancelButtonText:"Cancel",submitButtonTitle:"Submit"}),S)},core:n(n({},j),{},{id:null!==(t=j.id)&&void 0!==t?t:d(),environment:P})}}(g.current)})),_=m((function(){return O.value.core.environment.matchMedia(O.value.renderer.detachedMediaQuery).matches})),S=m((function(){return At(n(n({},O.value.core),{},{onStateChange:function(e){var t,n,r;y.current=e.state.collections.some((function(e){return e.source.templates.noResults})),null===(t=h.current)||void 0===t||t.call(h,e),null===(n=(r=O.value.core).onStateChange)||void 0===n||n.call(r,e)},shouldPanelOpen:g.current.shouldPanelOpen||function(e){var t=e.state;if(_.value)return!0;var n=b(t)>0;if(!O.value.core.openOnFocus&&!t.query)return n;var r=Boolean(y.current||O.value.renderer.renderNoResults);return!n&&r||n},__autocomplete_metadata:{userAgents:br,options:e}}))})),j=f(n({collections:[],completion:null,context:{},isOpen:!1,query:"",activeItemId:null,status:"idle"},O.value.core.initialState)),P={getEnvironmentProps:O.value.renderer.getEnvironmentProps,getFormProps:O.value.renderer.getFormProps,getInputProps:O.value.renderer.getInputProps,getItemProps:O.value.renderer.getItemProps,getLabelProps:O.value.renderer.getLabelProps,getListProps:O.value.renderer.getListProps,getPanelProps:O.value.renderer.getPanelProps,getRootProps:O.value.renderer.getRootProps},w={setActiveItemId:S.value.setActiveItemId,setQuery:S.value.setQuery,setCollections:S.value.setCollections,setIsOpen:S.value.setIsOpen,setStatus:S.value.setStatus,setContext:S.value.setContext,refresh:S.value.refresh,navigator:S.value.navigator},I=m((function(){return Ct.bind(O.value.renderer.renderer.createElement)})),A=m((function(){return Gt({autocomplete:S.value,autocompleteScopeApi:w,classNames:O.value.renderer.classNames,environment:O.value.core.environment,isDetached:_.value,placeholder:O.value.core.placeholder,propGetters:P,setIsModalOpen:k,state:j.current,translations:O.value.renderer.translations})}));function E(){Ht(A.value.panel,{style:_.value?{}:yr({panelPlacement:O.value.renderer.panelPlacement,container:A.value.root,form:A.value.form,environment:O.value.core.environment})})}function D(e){j.current=e;var t={autocomplete:S.value,autocompleteScopeApi:w,classNames:O.value.renderer.classNames,components:O.value.renderer.components,container:O.value.renderer.container,html:I.value,dom:A.value,panelContainer:_.value?A.value.detachedContainer:O.value.renderer.panelContainer,propGetters:P,state:j.current,renderer:O.value.renderer.renderer},r=!b(e)&&!y.current&&O.value.renderer.renderNoResults||O.value.renderer.render;!function(e){var t=e.autocomplete,r=e.autocompleteScopeApi,o=e.dom,i=e.propGetters,u=e.state;Vt(o.root,i.getRootProps(n({state:u,props:t.getRootProps({})},r))),Vt(o.input,i.getInputProps(n({state:u,props:t.getInputProps({inputElement:o.input}),inputElement:o.input},r))),Ht(o.label,{hidden:"stalled"===u.status}),Ht(o.loadingIndicator,{hidden:"stalled"!==u.status}),Ht(o.clearButton,{hidden:!u.query}),Ht(o.detachedSearchButtonQuery,{textContent:u.query}),Ht(o.detachedSearchButtonPlaceholder,{hidden:Boolean(u.query)})}(t),function(e,t){var r=t.autocomplete,o=t.autocompleteScopeApi,u=t.classNames,a=t.html,l=t.dom,c=t.panelContainer,s=t.propGetters,f=t.state,p=t.components,m=t.renderer;if(f.isOpen){c.contains(l.panel)||"loading"===f.status||c.appendChild(l.panel),l.panel.classList.toggle("aa-Panel--stalled","stalled"===f.status);var v=f.collections.filter((function(e){var t=e.source,n=e.items;return t.templates.noResults||n.length>0})).map((function(e,t){var l=e.source,c=e.items;return m.createElement("section",{key:t,className:u.source,"data-autocomplete-source-id":l.sourceId},l.templates.header&&m.createElement("div",{className:u.sourceHeader},l.templates.header({components:p,createElement:m.createElement,Fragment:m.Fragment,items:c,source:l,state:f,html:a})),l.templates.noResults&&0===c.length?m.createElement("div",{className:u.sourceNoResults},l.templates.noResults({components:p,createElement:m.createElement,Fragment:m.Fragment,source:l,state:f,html:a})):m.createElement("ul",i({className:u.list},s.getListProps(n({state:f,props:r.getListProps({source:l})},o))),c.map((function(e){var t=r.getItemProps({item:e,source:l});return m.createElement("li",i({key:t.id,className:u.item},s.getItemProps(n({state:f,props:t},o))),l.templates.item({components:p,createElement:m.createElement,Fragment:m.Fragment,item:e,state:f,html:a}))}))),l.templates.footer&&m.createElement("div",{className:u.sourceFooter},l.templates.footer({components:p,createElement:m.createElement,Fragment:m.Fragment,items:c,source:l,state:f,html:a})))})),d=m.createElement(m.Fragment,null,m.createElement("div",{className:u.panelLayout},v),m.createElement("div",{className:"aa-GradientBottom"})),y=v.reduce((function(e,t){return e[t.props["data-autocomplete-source-id"]]=t,e}),{});e(n(n({children:d,state:f,sections:v,elements:y},m),{},{components:p,html:a},o),l.panel)}else c.contains(l.panel)&&c.removeChild(l.panel)}(r,t)}function C(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};l();var t=O.value.renderer,n=t.components,r=u(t,gr);g.current=qt(r,O.value.core,{components:Bt(n,(function(e){return!e.value.hasOwnProperty("__autocomplete_componentName")})),initialState:j.current},e),v(),c(),S.value.refresh().then((function(){D(j.current)}))}function k(e){requestAnimationFrame((function(){var t=O.value.core.environment.document.body.contains(A.value.detachedOverlay);e!==t&&(e?(O.value.core.environment.document.body.appendChild(A.value.detachedOverlay),O.value.core.environment.document.body.classList.add("aa-Detached"),A.value.input.focus()):(O.value.core.environment.document.body.removeChild(A.value.detachedOverlay),O.value.core.environment.document.body.classList.remove("aa-Detached")))}))}return a((function(){var e=S.value.getEnvironmentProps({formElement:A.value.form,panelElement:A.value.panel,inputElement:A.value.input});return Ht(O.value.core.environment,e),function(){Ht(O.value.core.environment,Object.keys(e).reduce((function(e,t){return n(n({},e),{},o({},t,void 0))}),{}))}})),a((function(){var e=_.value?O.value.core.environment.document.body:O.value.renderer.panelContainer,t=_.value?A.value.detachedOverlay:A.value.panel;return _.value&&j.current.isOpen&&k(!0),D(j.current),function(){e.contains(t)&&e.removeChild(t)}})),a((function(){var e=O.value.renderer.container;return e.appendChild(A.value.root),function(){e.removeChild(A.value.root)}})),a((function(){var e=p((function(e){D(e.state)}),0);return h.current=function(t){var n=t.state,r=t.prevState;(_.value&&r.isOpen!==n.isOpen&&k(n.isOpen),_.value||!n.isOpen||r.isOpen||E(),n.query!==r.query)&&O.value.core.environment.document.querySelectorAll(".aa-Panel--scrollable").forEach((function(e){0!==e.scrollTop&&(e.scrollTop=0)}));e({state:n})},function(){h.current=void 0}})),a((function(){var e=p((function(){var e=_.value;_.value=O.value.core.environment.matchMedia(O.value.renderer.detachedMediaQuery).matches,e!==_.value?C({}):requestAnimationFrame(E)}),20);return O.value.core.environment.addEventListener("resize",e),function(){O.value.core.environment.removeEventListener("resize",e)}})),a((function(){if(!_.value)return function(){};function e(e){A.value.detachedContainer.classList.toggle("aa-DetachedContainer--modal",e)}function t(t){e(t.matches)}var n=O.value.core.environment.matchMedia(getComputedStyle(O.value.core.environment.document.documentElement).getPropertyValue("--aa-detached-modal-media-query"));e(n.matches);var r=Boolean(n.addEventListener);return r?n.addEventListener("change",t):n.addListener(t),function(){r?n.removeEventListener("change",t):n.removeListener(t)}})),a((function(){return requestAnimationFrame(E),function(){}})),n(n({},w),{},{update:C,destroy:function(){l()}})},e.getAlgoliaFacets=function(e){var t=hr({transformResponse:function(e){return e.facetHits}}),r=e.queries.map((function(e){return n(n({},e),{},{type:"facet"})}));return t(n(n({},e),{},{queries:r}))},e.getAlgoliaResults=Or,Object.defineProperty(e,"__esModule",{value:!0})}));
-
diff --git a/_site/site_libs/quarto-search/fuse.min.js b/_site/site_libs/quarto-search/fuse.min.js
deleted file mode 100644
index adc28356e2f591038d4e691cb5b418d7a490bfb1..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-search/fuse.min.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/**
- * Fuse.js v6.6.2 - Lightweight fuzzy-search (http://fusejs.io)
- *
- * Copyright (c) 2022 Kiro Risk (http://kiro.me)
- * All Rights Reserved. Apache Software License 2.0
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- */
-var e,t;e=this,t=function(){"use strict";function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?e(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function o(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),t&&u(e,t)}function s(e){return s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},s(e)}function u(e,t){return u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},u(e,t)}function h(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function l(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=s(e);if(t){var i=s(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return h(this,n)}}function f(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function v(e){return Array.isArray?Array.isArray(e):"[object Array]"===b(e)}function g(e){return"string"==typeof e}function y(e){return"number"==typeof e}function p(e){return!0===e||!1===e||function(e){return m(e)&&null!==e}(e)&&"[object Boolean]"==b(e)}function m(e){return"object"===n(e)}function k(e){return null!=e}function M(e){return!e.trim().length}function b(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var x=function(e){return"Invalid value for key ".concat(e)},w=function(e){return"Pattern length exceeds max of ".concat(e,".")},L=Object.prototype.hasOwnProperty,S=function(){function e(t){var n=this;r(this,e),this._keys=[],this._keyMap={};var i=0;t.forEach((function(e){var t=_(e);i+=t.weight,n._keys.push(t),n._keyMap[t.id]=t,i+=t.weight})),this._keys.forEach((function(e){e.weight/=i}))}return o(e,[{key:"get",value:function(e){return this._keyMap[e]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function _(e){var t=null,n=null,r=null,i=1,o=null;if(g(e)||v(e))r=e,t=O(e),n=j(e);else{if(!L.call(e,"name"))throw new Error(function(e){return"Missing ".concat(e," property in key")}("name"));var c=e.name;if(r=c,L.call(e,"weight")&&(i=e.weight)<=0)throw new Error(function(e){return"Property 'weight' in key '".concat(e,"' must be a positive integer")}(c));t=O(c),n=j(c),o=e.getFn}return{path:t,id:n,weight:i,src:r,getFn:o}}function O(e){return v(e)?e:e.split(".")}function j(e){return v(e)?e.join("."):e}var A={useExtendedSearch:!1,getFn:function(e,t){var n=[],r=!1;return function e(t,i,o){if(k(t))if(i[o]){var c=t[i[o]];if(!k(c))return;if(o===i.length-1&&(g(c)||y(c)||p(c)))n.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(c));else if(v(c)){r=!0;for(var a=0,s=c.length;a<s;a+=1)e(c[a],i,o+1)}else i.length&&e(c,i,o+1)}else n.push(t)}(e,g(t)?t.split("."):t,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},I=t(t(t(t({},{isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(e,t){return e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1}}),{includeMatches:!1,findAllMatches:!1,minMatchCharLength:1}),{location:0,threshold:.6,distance:100}),A),C=/[^ ]+/g;function E(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=new Map,r=Math.pow(10,t);return{get:function(t){var i=t.match(C).length;if(n.has(i))return n.get(i);var o=1/Math.pow(i,.5*e),c=parseFloat(Math.round(o*r)/r);return n.set(i,c),c},clear:function(){n.clear()}}}var $=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.getFn,i=void 0===n?I.getFn:n,o=t.fieldNormWeight,c=void 0===o?I.fieldNormWeight:o;r(this,e),this.norm=E(c,3),this.getFn=i,this.isCreated=!1,this.setIndexRecords()}return o(e,[{key:"setSources",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.docs=e}},{key:"setIndexRecords",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.records=e}},{key:"setKeys",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.keys=t,this._keysMap={},t.forEach((function(t,n){e._keysMap[t.id]=n}))}},{key:"create",value:function(){var e=this;!this.isCreated&&this.docs.length&&(this.isCreated=!0,g(this.docs[0])?this.docs.forEach((function(t,n){e._addString(t,n)})):this.docs.forEach((function(t,n){e._addObject(t,n)})),this.norm.clear())}},{key:"add",value:function(e){var t=this.size();g(e)?this._addString(e,t):this._addObject(e,t)}},{key:"removeAt",value:function(e){this.records.splice(e,1);for(var t=e,n=this.size();t<n;t+=1)this.records[t].i-=1}},{key:"getValueForItemAtKeyId",value:function(e,t){return e[this._keysMap[t]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(e,t){if(k(e)&&!M(e)){var n={v:e,i:t,n:this.norm.get(e)};this.records.push(n)}}},{key:"_addObject",value:function(e,t){var n=this,r={i:t,$:{}};this.keys.forEach((function(t,i){var o=t.getFn?t.getFn(e):n.getFn(e,t.path);if(k(o))if(v(o))!function(){for(var e=[],t=[{nestedArrIndex:-1,value:o}];t.length;){var c=t.pop(),a=c.nestedArrIndex,s=c.value;if(k(s))if(g(s)&&!M(s)){var u={v:s,i:a,n:n.norm.get(s)};e.push(u)}else v(s)&&s.forEach((function(e,n){t.push({nestedArrIndex:n,value:e})}))}r.$[i]=e}();else if(g(o)&&!M(o)){var c={v:o,n:n.norm.get(o)};r.$[i]=c}})),this.records.push(r)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function F(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.getFn,i=void 0===r?I.getFn:r,o=n.fieldNormWeight,c=void 0===o?I.fieldNormWeight:o,a=new $({getFn:i,fieldNormWeight:c});return a.setKeys(e.map(_)),a.setSources(t),a.create(),a}function R(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.errors,r=void 0===n?0:n,i=t.currentLocation,o=void 0===i?0:i,c=t.expectedLocation,a=void 0===c?0:c,s=t.distance,u=void 0===s?I.distance:s,h=t.ignoreLocation,l=void 0===h?I.ignoreLocation:h,f=r/e.length;if(l)return f;var d=Math.abs(a-o);return u?f+d/u:d?1:f}function N(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:I.minMatchCharLength,n=[],r=-1,i=-1,o=0,c=e.length;o<c;o+=1){var a=e[o];a&&-1===r?r=o:a||-1===r||((i=o-1)-r+1>=t&&n.push([r,i]),r=-1)}return e[o-1]&&o-r>=t&&n.push([r,o-1]),n}var P=32;function W(e){for(var t={},n=0,r=e.length;n<r;n+=1){var i=e.charAt(n);t[i]=(t[i]||0)|1<<r-n-1}return t}var T=function(){function e(t){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=i.location,c=void 0===o?I.location:o,a=i.threshold,s=void 0===a?I.threshold:a,u=i.distance,h=void 0===u?I.distance:u,l=i.includeMatches,f=void 0===l?I.includeMatches:l,d=i.findAllMatches,v=void 0===d?I.findAllMatches:d,g=i.minMatchCharLength,y=void 0===g?I.minMatchCharLength:g,p=i.isCaseSensitive,m=void 0===p?I.isCaseSensitive:p,k=i.ignoreLocation,M=void 0===k?I.ignoreLocation:k;if(r(this,e),this.options={location:c,threshold:s,distance:h,includeMatches:f,findAllMatches:v,minMatchCharLength:y,isCaseSensitive:m,ignoreLocation:M},this.pattern=m?t:t.toLowerCase(),this.chunks=[],this.pattern.length){var b=function(e,t){n.chunks.push({pattern:e,alphabet:W(e),startIndex:t})},x=this.pattern.length;if(x>P){for(var w=0,L=x%P,S=x-L;w<S;)b(this.pattern.substr(w,P),w),w+=P;if(L){var _=x-P;b(this.pattern.substr(_),_)}}else b(this.pattern,0)}}return o(e,[{key:"searchIn",value:function(e){var t=this.options,n=t.isCaseSensitive,r=t.includeMatches;if(n||(e=e.toLowerCase()),this.pattern===e){var i={isMatch:!0,score:0};return r&&(i.indices=[[0,e.length-1]]),i}var o=this.options,c=o.location,a=o.distance,s=o.threshold,u=o.findAllMatches,h=o.minMatchCharLength,l=o.ignoreLocation,d=[],v=0,g=!1;this.chunks.forEach((function(t){var n=t.pattern,i=t.alphabet,o=t.startIndex,y=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=r.location,o=void 0===i?I.location:i,c=r.distance,a=void 0===c?I.distance:c,s=r.threshold,u=void 0===s?I.threshold:s,h=r.findAllMatches,l=void 0===h?I.findAllMatches:h,f=r.minMatchCharLength,d=void 0===f?I.minMatchCharLength:f,v=r.includeMatches,g=void 0===v?I.includeMatches:v,y=r.ignoreLocation,p=void 0===y?I.ignoreLocation:y;if(t.length>P)throw new Error(w(P));for(var m,k=t.length,M=e.length,b=Math.max(0,Math.min(o,M)),x=u,L=b,S=d>1||g,_=S?Array(M):[];(m=e.indexOf(t,L))>-1;){var O=R(t,{currentLocation:m,expectedLocation:b,distance:a,ignoreLocation:p});if(x=Math.min(O,x),L=m+k,S)for(var j=0;j<k;)_[m+j]=1,j+=1}L=-1;for(var A=[],C=1,E=k+M,$=1<<k-1,F=0;F<k;F+=1){for(var W=0,T=E;W<T;)R(t,{errors:F,currentLocation:b+T,expectedLocation:b,distance:a,ignoreLocation:p})<=x?W=T:E=T,T=Math.floor((E-W)/2+W);E=T;var z=Math.max(1,b-T+1),D=l?M:Math.min(b+T,M)+k,K=Array(D+2);K[D+1]=(1<<F)-1;for(var q=D;q>=z;q-=1){var B=q-1,J=n[e.charAt(B)];if(S&&(_[B]=+!!J),K[q]=(K[q+1]<<1|1)&J,F&&(K[q]|=(A[q+1]|A[q])<<1|1|A[q+1]),K[q]&$&&(C=R(t,{errors:F,currentLocation:B,expectedLocation:b,distance:a,ignoreLocation:p}))<=x){if(x=C,(L=B)<=b)break;z=Math.max(1,2*b-L)}}if(R(t,{errors:F+1,currentLocation:b,expectedLocation:b,distance:a,ignoreLocation:p})>x)break;A=K}var U={isMatch:L>=0,score:Math.max(.001,C)};if(S){var V=N(_,d);V.length?g&&(U.indices=V):U.isMatch=!1}return U}(e,n,i,{location:c+o,distance:a,threshold:s,findAllMatches:u,minMatchCharLength:h,includeMatches:r,ignoreLocation:l}),p=y.isMatch,m=y.score,k=y.indices;p&&(g=!0),v+=m,p&&k&&(d=[].concat(f(d),f(k)))}));var y={isMatch:g,score:g?v/this.chunks.length:1};return g&&r&&(y.indices=d),y}}]),e}(),z=function(){function e(t){r(this,e),this.pattern=t}return o(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(e){return D(e,this.multiRegex)}},{key:"isSingleMatch",value:function(e){return D(e,this.singleRegex)}}]),e}();function D(e,t){var n=e.match(t);return n?n[1]:null}var K=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),n}(z),q=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),n}(z),B=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),n}(z),J=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),n}(z),U=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),n}(z),V=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){var t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),n}(z),G=function(e){a(n,e);var t=l(n);function n(e){var i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=o.location,a=void 0===c?I.location:c,s=o.threshold,u=void 0===s?I.threshold:s,h=o.distance,l=void 0===h?I.distance:h,f=o.includeMatches,d=void 0===f?I.includeMatches:f,v=o.findAllMatches,g=void 0===v?I.findAllMatches:v,y=o.minMatchCharLength,p=void 0===y?I.minMatchCharLength:y,m=o.isCaseSensitive,k=void 0===m?I.isCaseSensitive:m,M=o.ignoreLocation,b=void 0===M?I.ignoreLocation:M;return r(this,n),(i=t.call(this,e))._bitapSearch=new T(e,{location:a,threshold:u,distance:l,includeMatches:d,findAllMatches:g,minMatchCharLength:p,isCaseSensitive:k,ignoreLocation:b}),i}return o(n,[{key:"search",value:function(e){return this._bitapSearch.searchIn(e)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),n}(z),H=function(e){a(n,e);var t=l(n);function n(e){return r(this,n),t.call(this,e)}return o(n,[{key:"search",value:function(e){for(var t,n=0,r=[],i=this.pattern.length;(t=e.indexOf(this.pattern,n))>-1;)n=t+i,r.push([t,n-1]);var o=!!r.length;return{isMatch:o,score:o?0:1,indices:r}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),n}(z),Q=[K,H,B,J,V,U,q,G],X=Q.length,Y=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/;function Z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.split("|").map((function(e){for(var n=e.trim().split(Y).filter((function(e){return e&&!!e.trim()})),r=[],i=0,o=n.length;i<o;i+=1){for(var c=n[i],a=!1,s=-1;!a&&++s<X;){var u=Q[s],h=u.isMultiMatch(c);h&&(r.push(new u(h,t)),a=!0)}if(!a)for(s=-1;++s<X;){var l=Q[s],f=l.isSingleMatch(c);if(f){r.push(new l(f,t));break}}}return r}))}var ee=new Set([G.type,H.type]),te=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.isCaseSensitive,o=void 0===i?I.isCaseSensitive:i,c=n.includeMatches,a=void 0===c?I.includeMatches:c,s=n.minMatchCharLength,u=void 0===s?I.minMatchCharLength:s,h=n.ignoreLocation,l=void 0===h?I.ignoreLocation:h,f=n.findAllMatches,d=void 0===f?I.findAllMatches:f,v=n.location,g=void 0===v?I.location:v,y=n.threshold,p=void 0===y?I.threshold:y,m=n.distance,k=void 0===m?I.distance:m;r(this,e),this.query=null,this.options={isCaseSensitive:o,includeMatches:a,minMatchCharLength:u,findAllMatches:d,ignoreLocation:l,location:g,threshold:p,distance:k},this.pattern=o?t:t.toLowerCase(),this.query=Z(this.pattern,this.options)}return o(e,[{key:"searchIn",value:function(e){var t=this.query;if(!t)return{isMatch:!1,score:1};var n=this.options,r=n.includeMatches;e=n.isCaseSensitive?e:e.toLowerCase();for(var i=0,o=[],c=0,a=0,s=t.length;a<s;a+=1){var u=t[a];o.length=0,i=0;for(var h=0,l=u.length;h<l;h+=1){var d=u[h],v=d.search(e),g=v.isMatch,y=v.indices,p=v.score;if(!g){c=0,i=0,o.length=0;break}if(i+=1,c+=p,r){var m=d.constructor.type;ee.has(m)?o=[].concat(f(o),f(y)):o.push(y)}}if(i){var k={isMatch:!0,score:c/i};return r&&(k.indices=o),k}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(e,t){return t.useExtendedSearch}}]),e}(),ne=[];function re(e,t){for(var n=0,r=ne.length;n<r;n+=1){var i=ne[n];if(i.condition(e,t))return new i(e,t)}return new T(e,t)}var ie="$and",oe="$or",ce="$path",ae="$val",se=function(e){return!(!e[ie]&&!e[oe])},ue=function(e){return!!e[ce]},he=function(e){return!v(e)&&m(e)&&!se(e)},le=function(e){return c({},ie,Object.keys(e).map((function(t){return c({},t,e[t])})))};function fe(e,t){var n=t.ignoreFieldNorm,r=void 0===n?I.ignoreFieldNorm:n;e.forEach((function(e){var t=1;e.matches.forEach((function(e){var n=e.key,i=e.norm,o=e.score,c=n?n.weight:null;t*=Math.pow(0===o&&c?Number.EPSILON:o,(c||1)*(r?1:i))})),e.score=t}))}function de(e,t){var n=e.matches;t.matches=[],k(n)&&n.forEach((function(e){if(k(e.indices)&&e.indices.length){var n={indices:e.indices,value:e.value};e.key&&(n.key=e.key.src),e.idx>-1&&(n.refIndex=e.idx),t.matches.push(n)}}))}function ve(e,t){t.score=e.score}function ge(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.includeMatches,i=void 0===r?I.includeMatches:r,o=n.includeScore,c=void 0===o?I.includeScore:o,a=[];return i&&a.push(de),c&&a.push(ve),e.map((function(e){var n=e.idx,r={item:t[n],refIndex:n};return a.length&&a.forEach((function(t){t(e,r)})),r}))}var ye=function(){function e(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2?arguments[2]:void 0;r(this,e),this.options=t(t({},I),i),this.options.useExtendedSearch,this._keyStore=new S(this.options.keys),this.setCollection(n,o)}return o(e,[{key:"setCollection",value:function(e,t){if(this._docs=e,t&&!(t instanceof $))throw new Error("Incorrect 'index' type");this._myIndex=t||F(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(e){k(e)&&(this._docs.push(e),this._myIndex.add(e))}},{key:"remove",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){return!1},t=[],n=0,r=this._docs.length;n<r;n+=1){var i=this._docs[n];e(i,n)&&(this.removeAt(n),n-=1,r-=1,t.push(i))}return t}},{key:"removeAt",value:function(e){this._docs.splice(e,1),this._myIndex.removeAt(e)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.limit,r=void 0===n?-1:n,i=this.options,o=i.includeMatches,c=i.includeScore,a=i.shouldSort,s=i.sortFn,u=i.ignoreFieldNorm,h=g(e)?g(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e);return fe(h,{ignoreFieldNorm:u}),a&&h.sort(s),y(r)&&r>-1&&(h=h.slice(0,r)),ge(h,this._docs,{includeMatches:o,includeScore:c})}},{key:"_searchStringList",value:function(e){var t=re(e,this.options),n=this._myIndex.records,r=[];return n.forEach((function(e){var n=e.v,i=e.i,o=e.n;if(k(n)){var c=t.searchIn(n),a=c.isMatch,s=c.score,u=c.indices;a&&r.push({item:n,idx:i,matches:[{score:s,value:n,norm:o,indices:u}]})}})),r}},{key:"_searchLogical",value:function(e){var t=this,n=function(e,t){var n=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).auto,r=void 0===n||n,i=function e(n){var i=Object.keys(n),o=ue(n);if(!o&&i.length>1&&!se(n))return e(le(n));if(he(n)){var c=o?n[ce]:i[0],a=o?n[ae]:n[c];if(!g(a))throw new Error(x(c));var s={keyId:j(c),pattern:a};return r&&(s.searcher=re(a,t)),s}var u={children:[],operator:i[0]};return i.forEach((function(t){var r=n[t];v(r)&&r.forEach((function(t){u.children.push(e(t))}))})),u};return se(e)||(e=le(e)),i(e)}(e,this.options),r=function e(n,r,i){if(!n.children){var o=n.keyId,c=n.searcher,a=t._findMatches({key:t._keyStore.get(o),value:t._myIndex.getValueForItemAtKeyId(r,o),searcher:c});return a&&a.length?[{idx:i,item:r,matches:a}]:[]}for(var s=[],u=0,h=n.children.length;u<h;u+=1){var l=e(n.children[u],r,i);if(l.length)s.push.apply(s,f(l));else if(n.operator===ie)return[]}return s},i=this._myIndex.records,o={},c=[];return i.forEach((function(e){var t=e.$,i=e.i;if(k(t)){var a=r(n,t,i);a.length&&(o[i]||(o[i]={idx:i,item:t,matches:[]},c.push(o[i])),a.forEach((function(e){var t,n=e.matches;(t=o[i].matches).push.apply(t,f(n))})))}})),c}},{key:"_searchObjectList",value:function(e){var t=this,n=re(e,this.options),r=this._myIndex,i=r.keys,o=r.records,c=[];return o.forEach((function(e){var r=e.$,o=e.i;if(k(r)){var a=[];i.forEach((function(e,i){a.push.apply(a,f(t._findMatches({key:e,value:r[i],searcher:n})))})),a.length&&c.push({idx:o,item:r,matches:a})}})),c}},{key:"_findMatches",value:function(e){var t=e.key,n=e.value,r=e.searcher;if(!k(n))return[];var i=[];if(v(n))n.forEach((function(e){var n=e.v,o=e.i,c=e.n;if(k(n)){var a=r.searchIn(n),s=a.isMatch,u=a.score,h=a.indices;s&&i.push({score:u,key:t,value:n,idx:o,norm:c,indices:h})}}));else{var o=n.v,c=n.n,a=r.searchIn(o),s=a.isMatch,u=a.score,h=a.indices;s&&i.push({score:u,key:t,value:o,norm:c,indices:h})}return i}}]),e}();return ye.version="6.6.2",ye.createIndex=F,ye.parseIndex=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.getFn,r=void 0===n?I.getFn:n,i=t.fieldNormWeight,o=void 0===i?I.fieldNormWeight:i,c=e.keys,a=e.records,s=new $({getFn:r,fieldNormWeight:o});return s.setKeys(c),s.setIndexRecords(a),s},ye.config=I,function(){ne.push.apply(ne,arguments)}(te),ye},"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Fuse=t();
\ No newline at end of file
diff --git a/_site/site_libs/quarto-search/quarto-search.js b/_site/site_libs/quarto-search/quarto-search.js
deleted file mode 100644
index aefb6a58f85c7dbfce9c57c7f481205cd8b72cde..0000000000000000000000000000000000000000
--- a/_site/site_libs/quarto-search/quarto-search.js
+++ /dev/null
@@ -1,1247 +0,0 @@
-const kQueryArg = "q";
-const kResultsArg = "show-results";
-
-// If items don't provide a URL, then both the navigator and the onSelect
-// function aren't called (and therefore, the default implementation is used)
-//
-// We're using this sentinel URL to signal to those handlers that this
-// item is a more item (along with the type) and can be handled appropriately
-const kItemTypeMoreHref = "0767FDFD-0422-4E5A-BC8A-3BE11E5BBA05";
-
-window.document.addEventListener("DOMContentLoaded", function (_event) {
-  // Ensure that search is available on this page. If it isn't,
-  // should return early and not do anything
-  var searchEl = window.document.getElementById("quarto-search");
-  if (!searchEl) return;
-
-  const { autocomplete } = window["@algolia/autocomplete-js"];
-
-  let quartoSearchOptions = {};
-  let language = {};
-  const searchOptionEl = window.document.getElementById(
-    "quarto-search-options"
-  );
-  if (searchOptionEl) {
-    const jsonStr = searchOptionEl.textContent;
-    quartoSearchOptions = JSON.parse(jsonStr);
-    language = quartoSearchOptions.language;
-  }
-
-  // note the search mode
-  if (quartoSearchOptions.type === "overlay") {
-    searchEl.classList.add("type-overlay");
-  } else {
-    searchEl.classList.add("type-textbox");
-  }
-
-  // Used to determine highlighting behavior for this page
-  // A `q` query param is expected when the user follows a search
-  // to this page
-  const currentUrl = new URL(window.location);
-  const query = currentUrl.searchParams.get(kQueryArg);
-  const showSearchResults = currentUrl.searchParams.get(kResultsArg);
-  const mainEl = window.document.querySelector("main");
-
-  // highlight matches on the page
-  if (query && mainEl) {
-    // perform any highlighting
-    highlight(escapeRegExp(query), mainEl);
-
-    // fix up the URL to remove the q query param
-    const replacementUrl = new URL(window.location);
-    replacementUrl.searchParams.delete(kQueryArg);
-    window.history.replaceState({}, "", replacementUrl);
-  }
-
-  // function to clear highlighting on the page when the search query changes
-  // (e.g. if the user edits the query or clears it)
-  let highlighting = true;
-  const resetHighlighting = (searchTerm) => {
-    if (mainEl && highlighting && query && searchTerm !== query) {
-      clearHighlight(query, mainEl);
-      highlighting = false;
-    }
-  };
-
-  // Clear search highlighting when the user scrolls sufficiently
-  const resetFn = () => {
-    resetHighlighting("");
-    window.removeEventListener("quarto-hrChanged", resetFn);
-    window.removeEventListener("quarto-sectionChanged", resetFn);
-  };
-
-  // Register this event after the initial scrolling and settling of events
-  // on the page
-  window.addEventListener("quarto-hrChanged", resetFn);
-  window.addEventListener("quarto-sectionChanged", resetFn);
-
-  // Responsively switch to overlay mode if the search is present on the navbar
-  // Note that switching the sidebar to overlay mode requires more coordinate (not just
-  // the media query since we generate different HTML for sidebar overlays than we do
-  // for sidebar input UI)
-  const detachedMediaQuery =
-    quartoSearchOptions.type === "overlay" ? "all" : "(max-width: 991px)";
-
-  // If configured, include the analytics client to send insights
-  const plugins = configurePlugins(quartoSearchOptions);
-
-  let lastState = null;
-  const { setIsOpen, setQuery, setCollections } = autocomplete({
-    container: searchEl,
-    detachedMediaQuery: detachedMediaQuery,
-    defaultActiveItemId: 0,
-    panelContainer: "#quarto-search-results",
-    panelPlacement: quartoSearchOptions["panel-placement"],
-    debug: false,
-    openOnFocus: true,
-    plugins,
-    classNames: {
-      form: "d-flex",
-    },
-    placeholder: language["search-text-placeholder"],
-    translations: {
-      clearButtonTitle: language["search-clear-button-title"],
-      detachedCancelButtonText: language["search-detached-cancel-button-title"],
-      submitButtonTitle: language["search-submit-button-title"],
-    },
-    initialState: {
-      query,
-    },
-    getItemUrl({ item }) {
-      return item.href;
-    },
-    onStateChange({ state }) {
-      // If this is a file URL, note that
-
-      // Perhaps reset highlighting
-      resetHighlighting(state.query);
-
-      // If the panel just opened, ensure the panel is positioned properly
-      if (state.isOpen) {
-        if (lastState && !lastState.isOpen) {
-          setTimeout(() => {
-            positionPanel(quartoSearchOptions["panel-placement"]);
-          }, 150);
-        }
-      }
-
-      // Perhaps show the copy link
-      showCopyLink(state.query, quartoSearchOptions);
-
-      lastState = state;
-    },
-    reshape({ sources, state }) {
-      return sources.map((source) => {
-        try {
-          const items = source.getItems();
-
-          // Validate the items
-          validateItems(items);
-
-          // group the items by document
-          const groupedItems = new Map();
-          items.forEach((item) => {
-            const hrefParts = item.href.split("#");
-            const baseHref = hrefParts[0];
-            const isDocumentItem = hrefParts.length === 1;
-
-            const items = groupedItems.get(baseHref);
-            if (!items) {
-              groupedItems.set(baseHref, [item]);
-            } else {
-              // If the href for this item matches the document
-              // exactly, place this item first as it is the item that represents
-              // the document itself
-              if (isDocumentItem) {
-                items.unshift(item);
-              } else {
-                items.push(item);
-              }
-              groupedItems.set(baseHref, items);
-            }
-          });
-
-          const reshapedItems = [];
-          let count = 1;
-          for (const [_key, value] of groupedItems) {
-            const firstItem = value[0];
-            reshapedItems.push({
-              ...firstItem,
-              type: kItemTypeDoc,
-            });
-
-            const collapseMatches = quartoSearchOptions["collapse-after"];
-            const collapseCount =
-              typeof collapseMatches === "number" ? collapseMatches : 1;
-
-            if (value.length > 1) {
-              const target = `search-more-${count}`;
-              const isExpanded =
-                state.context.expanded &&
-                state.context.expanded.includes(target);
-
-              const remainingCount = value.length - collapseCount;
-
-              for (let i = 1; i < value.length; i++) {
-                if (collapseMatches && i === collapseCount) {
-                  reshapedItems.push({
-                    target,
-                    title: isExpanded
-                      ? language["search-hide-matches-text"]
-                      : remainingCount === 1
-                      ? `${remainingCount} ${language["search-more-match-text"]}`
-                      : `${remainingCount} ${language["search-more-matches-text"]}`,
-                    type: kItemTypeMore,
-                    href: kItemTypeMoreHref,
-                  });
-                }
-
-                if (isExpanded || !collapseMatches || i < collapseCount) {
-                  reshapedItems.push({
-                    ...value[i],
-                    type: kItemTypeItem,
-                    target,
-                  });
-                }
-              }
-            }
-            count += 1;
-          }
-
-          return {
-            ...source,
-            getItems() {
-              return reshapedItems;
-            },
-          };
-        } catch (error) {
-          // Some form of error occurred
-          return {
-            ...source,
-            getItems() {
-              return [
-                {
-                  title: error.name || "An Error Occurred While Searching",
-                  text:
-                    error.message ||
-                    "An unknown error occurred while attempting to perform the requested search.",
-                  type: kItemTypeError,
-                },
-              ];
-            },
-          };
-        }
-      });
-    },
-    navigator: {
-      navigate({ itemUrl }) {
-        if (itemUrl !== offsetURL(kItemTypeMoreHref)) {
-          window.location.assign(itemUrl);
-        }
-      },
-      navigateNewTab({ itemUrl }) {
-        if (itemUrl !== offsetURL(kItemTypeMoreHref)) {
-          const windowReference = window.open(itemUrl, "_blank", "noopener");
-          if (windowReference) {
-            windowReference.focus();
-          }
-        }
-      },
-      navigateNewWindow({ itemUrl }) {
-        if (itemUrl !== offsetURL(kItemTypeMoreHref)) {
-          window.open(itemUrl, "_blank", "noopener");
-        }
-      },
-    },
-    getSources({ state, setContext, setActiveItemId, refresh }) {
-      return [
-        {
-          sourceId: "documents",
-          getItemUrl({ item }) {
-            if (item.href) {
-              return offsetURL(item.href);
-            } else {
-              return undefined;
-            }
-          },
-          onSelect({
-            item,
-            state,
-            setContext,
-            setIsOpen,
-            setActiveItemId,
-            refresh,
-          }) {
-            if (item.type === kItemTypeMore) {
-              toggleExpanded(item, state, setContext, setActiveItemId, refresh);
-
-              // Toggle more
-              setIsOpen(true);
-            }
-          },
-          getItems({ query }) {
-            if (query === null || query === "") {
-              return [];
-            }
-
-            const limit = quartoSearchOptions.limit;
-            if (quartoSearchOptions.algolia) {
-              return algoliaSearch(query, limit, quartoSearchOptions.algolia);
-            } else {
-              // Fuse search options
-              const fuseSearchOptions = {
-                isCaseSensitive: false,
-                shouldSort: true,
-                minMatchCharLength: 2,
-                limit: limit,
-              };
-
-              return readSearchData().then(function (fuse) {
-                return fuseSearch(query, fuse, fuseSearchOptions);
-              });
-            }
-          },
-          templates: {
-            noResults({ createElement }) {
-              const hasQuery = lastState.query;
-
-              return createElement(
-                "div",
-                {
-                  class: `quarto-search-no-results${
-                    hasQuery ? "" : " no-query"
-                  }`,
-                },
-                language["search-no-results-text"]
-              );
-            },
-            header({ items, createElement }) {
-              // count the documents
-              const count = items.filter((item) => {
-                return item.type === kItemTypeDoc;
-              }).length;
-
-              if (count > 0) {
-                return createElement(
-                  "div",
-                  { class: "search-result-header" },
-                  `${count} ${language["search-matching-documents-text"]}`
-                );
-              } else {
-                return createElement(
-                  "div",
-                  { class: "search-result-header-no-results" },
-                  ``
-                );
-              }
-            },
-            footer({ _items, createElement }) {
-              if (
-                quartoSearchOptions.algolia &&
-                quartoSearchOptions.algolia["show-logo"]
-              ) {
-                const libDir = quartoSearchOptions.algolia["libDir"];
-                const logo = createElement("img", {
-                  src: offsetURL(
-                    `${libDir}/quarto-search/search-by-algolia.svg`
-                  ),
-                  class: "algolia-search-logo",
-                });
-                return createElement(
-                  "a",
-                  { href: "http://www.algolia.com/" },
-                  logo
-                );
-              }
-            },
-
-            item({ item, createElement }) {
-              return renderItem(
-                item,
-                createElement,
-                state,
-                setActiveItemId,
-                setContext,
-                refresh,
-                quartoSearchOptions
-              );
-            },
-          },
-        },
-      ];
-    },
-  });
-
-  window.quartoOpenSearch = () => {
-    setIsOpen(false);
-    setIsOpen(true);
-    focusSearchInput();
-  };
-
-  document.addEventListener("keyup", (event) => {
-    const { key } = event;
-    const kbds = quartoSearchOptions["keyboard-shortcut"];
-    const focusedEl = document.activeElement;
-
-    const isFormElFocused = [
-      "input",
-      "select",
-      "textarea",
-      "button",
-      "option",
-    ].find((tag) => {
-      return focusedEl.tagName.toLowerCase() === tag;
-    });
-
-    if (
-      kbds &&
-      kbds.includes(key) &&
-      !isFormElFocused &&
-      !document.activeElement.isContentEditable
-    ) {
-      event.preventDefault();
-      window.quartoOpenSearch();
-    }
-  });
-
-  // Remove the labeleledby attribute since it is pointing
-  // to a non-existent label
-  if (quartoSearchOptions.type === "overlay") {
-    const inputEl = window.document.querySelector(
-      "#quarto-search .aa-Autocomplete"
-    );
-    if (inputEl) {
-      inputEl.removeAttribute("aria-labelledby");
-    }
-  }
-
-  function throttle(func, wait) {
-    let waiting = false;
-    return function () {
-      if (!waiting) {
-        func.apply(this, arguments);
-        waiting = true;
-        setTimeout(function () {
-          waiting = false;
-        }, wait);
-      }
-    };
-  }
-
-  // If the main document scrolls dismiss the search results
-  // (otherwise, since they're floating in the document they can scroll with the document)
-  window.document.body.onscroll = throttle(() => {
-    // Only do this if we're not detached
-    // Bug #7117
-    // This will happen when the keyboard is shown on ios (resulting in a scroll)
-    // which then closed the search UI
-    if (!window.matchMedia(detachedMediaQuery).matches) {
-      setIsOpen(false);
-    }
-  }, 50);
-
-  if (showSearchResults) {
-    setIsOpen(true);
-    focusSearchInput();
-  }
-});
-
-function configurePlugins(quartoSearchOptions) {
-  const autocompletePlugins = [];
-  const algoliaOptions = quartoSearchOptions.algolia;
-  if (
-    algoliaOptions &&
-    algoliaOptions["analytics-events"] &&
-    algoliaOptions["search-only-api-key"] &&
-    algoliaOptions["application-id"]
-  ) {
-    const apiKey = algoliaOptions["search-only-api-key"];
-    const appId = algoliaOptions["application-id"];
-
-    // Aloglia insights may not be loaded because they require cookie consent
-    // Use deferred loading so events will start being recorded when/if consent
-    // is granted.
-    const algoliaInsightsDeferredPlugin = deferredLoadPlugin(() => {
-      if (
-        window.aa &&
-        window["@algolia/autocomplete-plugin-algolia-insights"]
-      ) {
-        window.aa("init", {
-          appId,
-          apiKey,
-          useCookie: true,
-        });
-
-        const { createAlgoliaInsightsPlugin } =
-          window["@algolia/autocomplete-plugin-algolia-insights"];
-        // Register the insights client
-        const algoliaInsightsPlugin = createAlgoliaInsightsPlugin({
-          insightsClient: window.aa,
-          onItemsChange({ insights, insightsEvents }) {
-            const events = insightsEvents.flatMap((event) => {
-              // This API limits the number of items per event to 20
-              const chunkSize = 20;
-              const itemChunks = [];
-              const eventItems = event.items;
-              for (let i = 0; i < eventItems.length; i += chunkSize) {
-                itemChunks.push(eventItems.slice(i, i + chunkSize));
-              }
-              // Split the items into multiple events that can be sent
-              const events = itemChunks.map((items) => {
-                return {
-                  ...event,
-                  items,
-                };
-              });
-              return events;
-            });
-
-            for (const event of events) {
-              insights.viewedObjectIDs(event);
-            }
-          },
-        });
-        return algoliaInsightsPlugin;
-      }
-    });
-
-    // Add the plugin
-    autocompletePlugins.push(algoliaInsightsDeferredPlugin);
-    return autocompletePlugins;
-  }
-}
-
-// For plugins that may not load immediately, create a wrapper
-// plugin and forward events and plugin data once the plugin
-// is initialized. This is useful for cases like cookie consent
-// which may prevent the analytics insights event plugin from initializing
-// immediately.
-function deferredLoadPlugin(createPlugin) {
-  let plugin = undefined;
-  let subscribeObj = undefined;
-  const wrappedPlugin = () => {
-    if (!plugin && subscribeObj) {
-      plugin = createPlugin();
-      if (plugin && plugin.subscribe) {
-        plugin.subscribe(subscribeObj);
-      }
-    }
-    return plugin;
-  };
-
-  return {
-    subscribe: (obj) => {
-      subscribeObj = obj;
-    },
-    onStateChange: (obj) => {
-      const plugin = wrappedPlugin();
-      if (plugin && plugin.onStateChange) {
-        plugin.onStateChange(obj);
-      }
-    },
-    onSubmit: (obj) => {
-      const plugin = wrappedPlugin();
-      if (plugin && plugin.onSubmit) {
-        plugin.onSubmit(obj);
-      }
-    },
-    onReset: (obj) => {
-      const plugin = wrappedPlugin();
-      if (plugin && plugin.onReset) {
-        plugin.onReset(obj);
-      }
-    },
-    getSources: (obj) => {
-      const plugin = wrappedPlugin();
-      if (plugin && plugin.getSources) {
-        return plugin.getSources(obj);
-      } else {
-        return Promise.resolve([]);
-      }
-    },
-    data: (obj) => {
-      const plugin = wrappedPlugin();
-      if (plugin && plugin.data) {
-        plugin.data(obj);
-      }
-    },
-  };
-}
-
-function validateItems(items) {
-  // Validate the first item
-  if (items.length > 0) {
-    const item = items[0];
-    const missingFields = [];
-    if (item.href == undefined) {
-      missingFields.push("href");
-    }
-    if (!item.title == undefined) {
-      missingFields.push("title");
-    }
-    if (!item.text == undefined) {
-      missingFields.push("text");
-    }
-
-    if (missingFields.length === 1) {
-      throw {
-        name: `Error: Search index is missing the <code>${missingFields[0]}</code> field.`,
-        message: `The items being returned for this search do not include all the required fields. Please ensure that your index items include the <code>${missingFields[0]}</code> field or use <code>index-fields</code> in your <code>_quarto.yml</code> file to specify the field names.`,
-      };
-    } else if (missingFields.length > 1) {
-      const missingFieldList = missingFields
-        .map((field) => {
-          return `<code>${field}</code>`;
-        })
-        .join(", ");
-
-      throw {
-        name: `Error: Search index is missing the following fields: ${missingFieldList}.`,
-        message: `The items being returned for this search do not include all the required fields. Please ensure that your index items includes the following fields: ${missingFieldList}, or use <code>index-fields</code> in your <code>_quarto.yml</code> file to specify the field names.`,
-      };
-    }
-  }
-}
-
-let lastQuery = null;
-function showCopyLink(query, options) {
-  const language = options.language;
-  lastQuery = query;
-  // Insert share icon
-  const inputSuffixEl = window.document.body.querySelector(
-    ".aa-Form .aa-InputWrapperSuffix"
-  );
-
-  if (inputSuffixEl) {
-    let copyButtonEl = window.document.body.querySelector(
-      ".aa-Form .aa-InputWrapperSuffix .aa-CopyButton"
-    );
-
-    if (copyButtonEl === null) {
-      copyButtonEl = window.document.createElement("button");
-      copyButtonEl.setAttribute("class", "aa-CopyButton");
-      copyButtonEl.setAttribute("type", "button");
-      copyButtonEl.setAttribute("title", language["search-copy-link-title"]);
-      copyButtonEl.onmousedown = (e) => {
-        e.preventDefault();
-        e.stopPropagation();
-      };
-
-      const linkIcon = "bi-clipboard";
-      const checkIcon = "bi-check2";
-
-      const shareIconEl = window.document.createElement("i");
-      shareIconEl.setAttribute("class", `bi ${linkIcon}`);
-      copyButtonEl.appendChild(shareIconEl);
-      inputSuffixEl.prepend(copyButtonEl);
-
-      const clipboard = new window.ClipboardJS(".aa-CopyButton", {
-        text: function (_trigger) {
-          const copyUrl = new URL(window.location);
-          copyUrl.searchParams.set(kQueryArg, lastQuery);
-          copyUrl.searchParams.set(kResultsArg, "1");
-          return copyUrl.toString();
-        },
-      });
-      clipboard.on("success", function (e) {
-        // Focus the input
-
-        // button target
-        const button = e.trigger;
-        const icon = button.querySelector("i.bi");
-
-        // flash "checked"
-        icon.classList.add(checkIcon);
-        icon.classList.remove(linkIcon);
-        setTimeout(function () {
-          icon.classList.remove(checkIcon);
-          icon.classList.add(linkIcon);
-        }, 1000);
-      });
-    }
-
-    // If there is a query, show the link icon
-    if (copyButtonEl) {
-      if (lastQuery && options["copy-button"]) {
-        copyButtonEl.style.display = "flex";
-      } else {
-        copyButtonEl.style.display = "none";
-      }
-    }
-  }
-}
-
-/* Search Index Handling */
-// create the index
-var fuseIndex = undefined;
-var shownWarning = false;
-async function readSearchData() {
-  // Initialize the search index on demand
-  if (fuseIndex === undefined) {
-    if (window.location.protocol === "file:" && !shownWarning) {
-      window.alert(
-        "Search requires JavaScript features disabled when running in file://... URLs. In order to use search, please run this document in a web server."
-      );
-      shownWarning = true;
-      return;
-    }
-    // create fuse index
-    const options = {
-      keys: [
-        { name: "title", weight: 20 },
-        { name: "section", weight: 20 },
-        { name: "text", weight: 10 },
-      ],
-      ignoreLocation: true,
-      threshold: 0.1,
-    };
-    const fuse = new window.Fuse([], options);
-
-    // fetch the main search.json
-    const response = await fetch(offsetURL("search.json"));
-    if (response.status == 200) {
-      return response.json().then(function (searchDocs) {
-        searchDocs.forEach(function (searchDoc) {
-          fuse.add(searchDoc);
-        });
-        fuseIndex = fuse;
-        return fuseIndex;
-      });
-    } else {
-      return Promise.reject(
-        new Error(
-          "Unexpected status from search index request: " + response.status
-        )
-      );
-    }
-  }
-
-  return fuseIndex;
-}
-
-function inputElement() {
-  return window.document.body.querySelector(".aa-Form .aa-Input");
-}
-
-function focusSearchInput() {
-  setTimeout(() => {
-    const inputEl = inputElement();
-    if (inputEl) {
-      inputEl.focus();
-    }
-  }, 50);
-}
-
-/* Panels */
-const kItemTypeDoc = "document";
-const kItemTypeMore = "document-more";
-const kItemTypeItem = "document-item";
-const kItemTypeError = "error";
-
-function renderItem(
-  item,
-  createElement,
-  state,
-  setActiveItemId,
-  setContext,
-  refresh,
-  quartoSearchOptions
-) {
-  switch (item.type) {
-    case kItemTypeDoc:
-      return createDocumentCard(
-        createElement,
-        "file-richtext",
-        item.title,
-        item.section,
-        item.text,
-        item.href,
-        item.crumbs,
-        quartoSearchOptions
-      );
-    case kItemTypeMore:
-      return createMoreCard(
-        createElement,
-        item,
-        state,
-        setActiveItemId,
-        setContext,
-        refresh
-      );
-    case kItemTypeItem:
-      return createSectionCard(
-        createElement,
-        item.section,
-        item.text,
-        item.href
-      );
-    case kItemTypeError:
-      return createErrorCard(createElement, item.title, item.text);
-    default:
-      return undefined;
-  }
-}
-
-function createDocumentCard(
-  createElement,
-  icon,
-  title,
-  section,
-  text,
-  href,
-  crumbs,
-  quartoSearchOptions
-) {
-  const iconEl = createElement("i", {
-    class: `bi bi-${icon} search-result-icon`,
-  });
-  const titleEl = createElement("p", { class: "search-result-title" }, title);
-  const titleContents = [iconEl, titleEl];
-  const showParent = quartoSearchOptions["show-item-context"];
-  if (crumbs && showParent) {
-    let crumbsOut = undefined;
-    const crumbClz = ["search-result-crumbs"];
-    if (showParent === "root") {
-      crumbsOut = crumbs.length > 1 ? crumbs[0] : undefined;
-    } else if (showParent === "parent") {
-      crumbsOut = crumbs.length > 1 ? crumbs[crumbs.length - 2] : undefined;
-    } else {
-      crumbsOut = crumbs.length > 1 ? crumbs.join(" > ") : undefined;
-      crumbClz.push("search-result-crumbs-wrap");
-    }
-
-    const crumbEl = createElement(
-      "p",
-      { class: crumbClz.join(" ") },
-      crumbsOut
-    );
-    titleContents.push(crumbEl);
-  }
-
-  const titleContainerEl = createElement(
-    "div",
-    { class: "search-result-title-container" },
-    titleContents
-  );
-
-  const textEls = [];
-  if (section) {
-    const sectionEl = createElement(
-      "p",
-      { class: "search-result-section" },
-      section
-    );
-    textEls.push(sectionEl);
-  }
-  const descEl = createElement("p", {
-    class: "search-result-text",
-    dangerouslySetInnerHTML: {
-      __html: text,
-    },
-  });
-  textEls.push(descEl);
-
-  const textContainerEl = createElement(
-    "div",
-    { class: "search-result-text-container" },
-    textEls
-  );
-
-  const containerEl = createElement(
-    "div",
-    {
-      class: "search-result-container",
-    },
-    [titleContainerEl, textContainerEl]
-  );
-
-  const linkEl = createElement(
-    "a",
-    {
-      href: offsetURL(href),
-      class: "search-result-link",
-    },
-    containerEl
-  );
-
-  const classes = ["search-result-doc", "search-item"];
-  if (!section) {
-    classes.push("document-selectable");
-  }
-
-  return createElement(
-    "div",
-    {
-      class: classes.join(" "),
-    },
-    linkEl
-  );
-}
-
-function createMoreCard(
-  createElement,
-  item,
-  state,
-  setActiveItemId,
-  setContext,
-  refresh
-) {
-  const moreCardEl = createElement(
-    "div",
-    {
-      class: "search-result-more search-item",
-      onClick: (e) => {
-        // Handle expanding the sections by adding the expanded
-        // section to the list of expanded sections
-        toggleExpanded(item, state, setContext, setActiveItemId, refresh);
-        e.stopPropagation();
-      },
-    },
-    item.title
-  );
-
-  return moreCardEl;
-}
-
-function toggleExpanded(item, state, setContext, setActiveItemId, refresh) {
-  const expanded = state.context.expanded || [];
-  if (expanded.includes(item.target)) {
-    setContext({
-      expanded: expanded.filter((target) => target !== item.target),
-    });
-  } else {
-    setContext({ expanded: [...expanded, item.target] });
-  }
-
-  refresh();
-  setActiveItemId(item.__autocomplete_id);
-}
-
-function createSectionCard(createElement, section, text, href) {
-  const sectionEl = createSection(createElement, section, text, href);
-  return createElement(
-    "div",
-    {
-      class: "search-result-doc-section search-item",
-    },
-    sectionEl
-  );
-}
-
-function createSection(createElement, title, text, href) {
-  const descEl = createElement("p", {
-    class: "search-result-text",
-    dangerouslySetInnerHTML: {
-      __html: text,
-    },
-  });
-
-  const titleEl = createElement("p", { class: "search-result-section" }, title);
-  const linkEl = createElement(
-    "a",
-    {
-      href: offsetURL(href),
-      class: "search-result-link",
-    },
-    [titleEl, descEl]
-  );
-  return linkEl;
-}
-
-function createErrorCard(createElement, title, text) {
-  const descEl = createElement("p", {
-    class: "search-error-text",
-    dangerouslySetInnerHTML: {
-      __html: text,
-    },
-  });
-
-  const titleEl = createElement("p", {
-    class: "search-error-title",
-    dangerouslySetInnerHTML: {
-      __html: `<i class="bi bi-exclamation-circle search-error-icon"></i> ${title}`,
-    },
-  });
-  const errorEl = createElement("div", { class: "search-error" }, [
-    titleEl,
-    descEl,
-  ]);
-  return errorEl;
-}
-
-function positionPanel(pos) {
-  const panelEl = window.document.querySelector(
-    "#quarto-search-results .aa-Panel"
-  );
-  const inputEl = window.document.querySelector(
-    "#quarto-search .aa-Autocomplete"
-  );
-
-  if (panelEl && inputEl) {
-    panelEl.style.top = `${Math.round(panelEl.offsetTop)}px`;
-    if (pos === "start") {
-      panelEl.style.left = `${Math.round(inputEl.left)}px`;
-    } else {
-      panelEl.style.right = `${Math.round(inputEl.offsetRight)}px`;
-    }
-  }
-}
-
-/* Highlighting */
-// highlighting functions
-function highlightMatch(query, text) {
-  if (text) {
-    const start = text.toLowerCase().indexOf(query.toLowerCase());
-    if (start !== -1) {
-      const startMark = "<mark class='search-match'>";
-      const endMark = "</mark>";
-
-      const end = start + query.length;
-      text =
-        text.slice(0, start) +
-        startMark +
-        text.slice(start, end) +
-        endMark +
-        text.slice(end);
-      const startInfo = clipStart(text, start);
-      const endInfo = clipEnd(
-        text,
-        startInfo.position + startMark.length + endMark.length
-      );
-      text =
-        startInfo.prefix +
-        text.slice(startInfo.position, endInfo.position) +
-        endInfo.suffix;
-
-      return text;
-    } else {
-      return text;
-    }
-  } else {
-    return text;
-  }
-}
-
-function clipStart(text, pos) {
-  const clipStart = pos - 50;
-  if (clipStart < 0) {
-    // This will just return the start of the string
-    return {
-      position: 0,
-      prefix: "",
-    };
-  } else {
-    // We're clipping before the start of the string, walk backwards to the first space.
-    const spacePos = findSpace(text, pos, -1);
-    return {
-      position: spacePos.position,
-      prefix: "",
-    };
-  }
-}
-
-function clipEnd(text, pos) {
-  const clipEnd = pos + 200;
-  if (clipEnd > text.length) {
-    return {
-      position: text.length,
-      suffix: "",
-    };
-  } else {
-    const spacePos = findSpace(text, clipEnd, 1);
-    return {
-      position: spacePos.position,
-      suffix: spacePos.clipped ? "…" : "",
-    };
-  }
-}
-
-function findSpace(text, start, step) {
-  let stepPos = start;
-  while (stepPos > -1 && stepPos < text.length) {
-    const char = text[stepPos];
-    if (char === " " || char === "," || char === ":") {
-      return {
-        position: step === 1 ? stepPos : stepPos - step,
-        clipped: stepPos > 1 && stepPos < text.length,
-      };
-    }
-    stepPos = stepPos + step;
-  }
-
-  return {
-    position: stepPos - step,
-    clipped: false,
-  };
-}
-
-// removes highlighting as implemented by the mark tag
-function clearHighlight(searchterm, el) {
-  const childNodes = el.childNodes;
-  for (let i = childNodes.length - 1; i >= 0; i--) {
-    const node = childNodes[i];
-    if (node.nodeType === Node.ELEMENT_NODE) {
-      if (
-        node.tagName === "MARK" &&
-        node.innerText.toLowerCase() === searchterm.toLowerCase()
-      ) {
-        el.replaceChild(document.createTextNode(node.innerText), node);
-      } else {
-        clearHighlight(searchterm, node);
-      }
-    }
-  }
-}
-
-function escapeRegExp(string) {
-  return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string
-}
-
-// highlight matches
-function highlight(term, el) {
-  const termRegex = new RegExp(term, "ig");
-  const childNodes = el.childNodes;
-
-  // walk back to front avoid mutating elements in front of us
-  for (let i = childNodes.length - 1; i >= 0; i--) {
-    const node = childNodes[i];
-
-    if (node.nodeType === Node.TEXT_NODE) {
-      // Search text nodes for text to highlight
-      const text = node.nodeValue;
-
-      let startIndex = 0;
-      let matchIndex = text.search(termRegex);
-      if (matchIndex > -1) {
-        const markFragment = document.createDocumentFragment();
-        while (matchIndex > -1) {
-          const prefix = text.slice(startIndex, matchIndex);
-          markFragment.appendChild(document.createTextNode(prefix));
-
-          const mark = document.createElement("mark");
-          mark.appendChild(
-            document.createTextNode(
-              text.slice(matchIndex, matchIndex + term.length)
-            )
-          );
-          markFragment.appendChild(mark);
-
-          startIndex = matchIndex + term.length;
-          matchIndex = text.slice(startIndex).search(new RegExp(term, "ig"));
-          if (matchIndex > -1) {
-            matchIndex = startIndex + matchIndex;
-          }
-        }
-        if (startIndex < text.length) {
-          markFragment.appendChild(
-            document.createTextNode(text.slice(startIndex, text.length))
-          );
-        }
-
-        el.replaceChild(markFragment, node);
-      }
-    } else if (node.nodeType === Node.ELEMENT_NODE) {
-      // recurse through elements
-      highlight(term, node);
-    }
-  }
-}
-
-/* Link Handling */
-// get the offset from this page for a given site root relative url
-function offsetURL(url) {
-  var offset = getMeta("quarto:offset");
-  return offset ? offset + url : url;
-}
-
-// read a meta tag value
-function getMeta(metaName) {
-  var metas = window.document.getElementsByTagName("meta");
-  for (let i = 0; i < metas.length; i++) {
-    if (metas[i].getAttribute("name") === metaName) {
-      return metas[i].getAttribute("content");
-    }
-  }
-  return "";
-}
-
-function algoliaSearch(query, limit, algoliaOptions) {
-  const { getAlgoliaResults } = window["@algolia/autocomplete-preset-algolia"];
-
-  const applicationId = algoliaOptions["application-id"];
-  const searchOnlyApiKey = algoliaOptions["search-only-api-key"];
-  const indexName = algoliaOptions["index-name"];
-  const indexFields = algoliaOptions["index-fields"];
-  const searchClient = window.algoliasearch(applicationId, searchOnlyApiKey);
-  const searchParams = algoliaOptions["params"];
-  const searchAnalytics = !!algoliaOptions["analytics-events"];
-
-  return getAlgoliaResults({
-    searchClient,
-    queries: [
-      {
-        indexName: indexName,
-        query,
-        params: {
-          hitsPerPage: limit,
-          clickAnalytics: searchAnalytics,
-          ...searchParams,
-        },
-      },
-    ],
-    transformResponse: (response) => {
-      if (!indexFields) {
-        return response.hits.map((hit) => {
-          return hit.map((item) => {
-            return {
-              ...item,
-              text: highlightMatch(query, item.text),
-            };
-          });
-        });
-      } else {
-        const remappedHits = response.hits.map((hit) => {
-          return hit.map((item) => {
-            const newItem = { ...item };
-            ["href", "section", "title", "text", "crumbs"].forEach(
-              (keyName) => {
-                const mappedName = indexFields[keyName];
-                if (
-                  mappedName &&
-                  item[mappedName] !== undefined &&
-                  mappedName !== keyName
-                ) {
-                  newItem[keyName] = item[mappedName];
-                  delete newItem[mappedName];
-                }
-              }
-            );
-            newItem.text = highlightMatch(query, newItem.text);
-            return newItem;
-          });
-        });
-        return remappedHits;
-      }
-    },
-  });
-}
-
-function fuseSearch(query, fuse, fuseOptions) {
-  return fuse.search(query, fuseOptions).map((result) => {
-    const addParam = (url, name, value) => {
-      const anchorParts = url.split("#");
-      const baseUrl = anchorParts[0];
-      const sep = baseUrl.search("\\?") > 0 ? "&" : "?";
-      anchorParts[0] = baseUrl + sep + name + "=" + value;
-      return anchorParts.join("#");
-    };
-
-    return {
-      title: result.item.title,
-      section: result.item.section,
-      href: addParam(result.item.href, kQueryArg, query),
-      text: highlightMatch(query, result.item.text),
-      crumbs: result.item.crumbs,
-    };
-  });
-}
diff --git a/about.qmd b/about.qmd
deleted file mode 100644
index 692676f7686f66dcd68bcb9faa842517a1464015..0000000000000000000000000000000000000000
--- a/about.qmd
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: "About"
-image: profile.jpg
-about:
-  template: jolla
-  links:
-    - icon: twitter
-      text: Twitter
-      href: https://twitter.com
-    - icon: linkedin
-      text: LinkedIn
-      href: https://linkedin.com
-    - icon: github
-      text: Github
-      href: https://github.com
-
----
-
-About this blog
diff --git a/index.qmd b/index.qmd
deleted file mode 100644
index 1179fed01c739cce342dbc0028550f37cd16a2cd..0000000000000000000000000000000000000000
--- a/index.qmd
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: "."
-listing:
-  contents: posts
-  sort: "date desc"
-  type: default
-  categories: true
-  sort-ui: false
-  filter-ui: false
-page-layout: full
-title-block-banner: true
----
-
-
diff --git a/posts/_metadata.yml b/posts/_metadata.yml
deleted file mode 100644
index 3e9dd01bc3de145a64472a950a828dd41dd167f0..0000000000000000000000000000000000000000
--- a/posts/_metadata.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-# options specified here will apply to all posts in this folder
-
-# freeze computational output
-# (see https://quarto.org/docs/projects/code-execution.html#freeze)
-freeze: true
-
-# Enable banner style title blocks
-title-block-banner: true
diff --git a/posts/post-with-code/image.jpg b/posts/post-with-code/image.jpg
deleted file mode 100644
index 3ec04c8c4e169aa7cfbd882821eb0d436b62c93a..0000000000000000000000000000000000000000
Binary files a/posts/post-with-code/image.jpg and /dev/null differ
diff --git a/posts/post-with-code/index.qmd b/posts/post-with-code/index.qmd
deleted file mode 100644
index 1c07484271a6378fc1f47cdfd3ad6821450ae15f..0000000000000000000000000000000000000000
--- a/posts/post-with-code/index.qmd
+++ /dev/null
@@ -1,9 +0,0 @@
----
-title: "Post With Code"
-author: "Harlow Malloc"
-date: "2024-02-15"
-categories: [news, code, analysis]
-image: "image.jpg"
----
-
-This is a post with executable code.
diff --git a/posts/welcome/index.qmd b/posts/welcome/index.qmd
deleted file mode 100644
index 393f4c2f08a1592ffd5f9c413a510c7e3ff103b7..0000000000000000000000000000000000000000
--- a/posts/welcome/index.qmd
+++ /dev/null
@@ -1,12 +0,0 @@
----
-title: "Welcome To My Blog"
-author: "Tristan O'Malley"
-date: "2024-02-12"
-categories: [news]
----
-
-This is the first post in a Quarto blog. Welcome!
-
-![](thumbnail.jpg)
-
-Since this post doesn't specify an explicit `image`, the first image in the post will be used in the listing page of posts.
diff --git a/posts/welcome/thumbnail.jpg b/posts/welcome/thumbnail.jpg
deleted file mode 100644
index 8e3107c9e0a0b43b424bcad3e04f6ece0f8ddb14..0000000000000000000000000000000000000000
Binary files a/posts/welcome/thumbnail.jpg and /dev/null differ
diff --git a/profile.jpg b/profile.jpg
deleted file mode 100644
index 9d50b914ff00f24da73b3f3a51d0080fb0908f4d..0000000000000000000000000000000000000000
Binary files a/profile.jpg and /dev/null differ
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/.gitignore b/src/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..075b2542afb820ca0c990f02a196dfbb35c41a3a
--- /dev/null
+++ b/src/.gitignore
@@ -0,0 +1 @@
+/.quarto/
diff --git a/src/_quarto.yml b/src/_quarto.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0cbcd69c98065acc65481d72db4a0ca8107b22ff
--- /dev/null
+++ b/src/_quarto.yml
@@ -0,0 +1,26 @@
+project:
+  type: website
+
+website:
+  title: "Open-Source AI Cookbook"
+  navbar:
+    left:
+      - href: index.qmd
+        text: Open-Source AI Cookbook
+      - notebooks/automatic_embedding.ipynb
+      - notebooks/faiss.ipynb
+      - notebooks/single_gpu.ipynb
+      - text: RAG
+        menu:
+          - notebooks/rag_zephyr_langchain.ipynb
+          - notebooks/advanced_rag.ipynb
+          - notebooks/rag_evaluation.ipynb
+
+format:
+  html:
+    theme: cosmo
+    css: styles.css
+    toc: true
+
+
+
diff --git a/src/about.qmd b/src/about.qmd
new file mode 100644
index 0000000000000000000000000000000000000000..07c5e7f9d1316e6eb092b0b312625c29742fcca1
--- /dev/null
+++ b/src/about.qmd
@@ -0,0 +1,5 @@
+---
+title: "About"
+---
+
+About this site
diff --git a/src/index.qmd b/src/index.qmd
new file mode 100644
index 0000000000000000000000000000000000000000..45b8ac2b891e7e9db2c4f2696823406416e39b51
--- /dev/null
+++ b/src/index.qmd
@@ -0,0 +1,31 @@
+---
+title: "Open Source Cookbook"
+---
+
+This is a Quarto implementation of [the Open-Source AI Cookbook](https://github.com/huggingface/cookbook), 
+which is a collection of notebooks illustrating practical aspects of building AI 
+applications and solving various machine learning tasks using open-source tools and models.
+
+## About Quarto
+[Quarto](https://quarto.org/) is a Markdown-based documentation system which lets you write documents in Markdown or Jupyter Notebooks, and render them to a variety of formats including HTML, PDF, Powerpoint, and more. 
+You can also use Quarto to write [books](https://quarto.org/docs/books/), create [dashboards](https://quarto.org/docs/dashboards/), and embed web applications with [Observable](https://quarto.org/docs/interactive/ojs/) and [Shinylive](https://quarto.org/docs/blog/posts/2022-10-25-shinylive-extension/).
+
+
+## Latest notebooks
+
+Check out the recently added notebooks: 
+
+- [Automatic Embeddings with TEI through Inference Endpoints](automatic_embedding_tei_inference_endpoints)
+- [Simple RAG for GitHub issues using Hugging Face Zephyr and LangChain](rag_zephyr_langchain)
+- [Embedding multimodal data for similarity search using πŸ€— transformers, πŸ€— datasets and FAISS](faiss_with_hf_datasets_and_clip)
+- [Fine-tuning a Code LLM on Custom Code on a single GPU](fine_tuning_code_llm_on_single_gpu)
+- [RAG Evaluation Using Synthetic data and LLM-As-A-Judge](rag_evaluation)
+- [Advanced RAG on HuggingFace documentation using LangChain](advanced_rag)
+
+You can also check out the notebooks in the cookbook's [GitHub repo](https://github.com/huggingface/cookbook).
+
+## Contributing
+
+The Open-Source AI Cookbook is a community effort, and we welcome contributions from everyone! 
+Check out the cookbook's [Contribution guide](https://github.com/huggingface/cookbook/blob/main/README.md) to learn 
+how you can add your "recipe". 
\ No newline at end of file
diff --git a/src/notebooks/advanced_rag.ipynb b/src/notebooks/advanced_rag.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..8a4ac4362788847eca1fbb63d2b861075fc8d63b
--- /dev/null
+++ b/src/notebooks/advanced_rag.ipynb
@@ -0,0 +1,1249 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "hUCaGdAj9-9F"
+   },
+   "source": [
+    "---\n",
+    "title: \"Advanced RAG\"\n",
+    "---\n",
+    "_Authored by: [Aymeric Roucher](https://huggingface.co/m-ric)_"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "DKv51c_h9-9H"
+   },
+   "source": [
+    "This notebook demonstrates how you can build an advanced RAG (Retrieval Augmented Generation) for answering a user's question about a specific knowledge base (here, the HuggingFace documentation), using LangChain.\n",
+    "\n",
+    "For an introduction to RAG, you can check [this other cookbook](rag_zephyr_langchain)!\n",
+    "\n",
+    "RAG systems are complex, with many moving parts: here a RAG diagram, where we noted in blue all possibilities for system enhancement:\n",
+    "\n",
+    "<img src=\"https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/RAG_workflow.png\" height=\"700\">\n",
+    "\n",
+    "> πŸ’‘ As you can see, there are many steps to tune in this architecture: tuning the system properly will yield significant performance gains.\n",
+    "\n",
+    "In this notebook, we will take a look into many of these blue notes to see how to tune your RAG system and get the best performance.\n",
+    "\n",
+    "__Let's dig into the model building!__ First, we install the required model dependancies."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "NSX0p0rV9-9I"
+   },
+   "outputs": [],
+   "source": [
+    "!pip install -q torch transformers transformers accelerate bitsandbytes langchain sentence-transformers faiss-gpu openpyxl pacmap"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "8_Uyukt39-9J"
+   },
+   "outputs": [],
+   "source": [
+    "%reload_ext dotenv\n",
+    "%dotenv"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "eoujYMwW9-9J"
+   },
+   "outputs": [],
+   "source": [
+    "from tqdm.notebook import tqdm\n",
+    "import pandas as pd\n",
+    "from typing import Optional, List, Tuple\n",
+    "from datasets import Dataset\n",
+    "import matplotlib.pyplot as plt\n",
+    "\n",
+    "pd.set_option(\n",
+    "    \"display.max_colwidth\", None\n",
+    ")  # this will be helpful when visualizing retriever outputs"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Kr6rN10U9-9J"
+   },
+   "source": [
+    "### Load your knowledge base"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "qZLVIEVW9-9J"
+   },
+   "outputs": [],
+   "source": [
+    "import datasets\n",
+    "\n",
+    "ds = datasets.load_dataset(\"m-ric/huggingface_doc\", split=\"train\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "836Q7vF49-9K"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.docstore.document import Document as LangchainDocument\n",
+    "\n",
+    "RAW_KNOWLEDGE_BASE = [\n",
+    "    LangchainDocument(page_content=doc[\"text\"], metadata={\"source\": doc[\"source\"]})\n",
+    "    for doc in tqdm(ds)\n",
+    "]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "0_LxjD5h9-9K"
+   },
+   "source": [
+    "# 1. Retriever - embeddings πŸ—‚οΈ\n",
+    "The __retriever acts like an internal search engine__: given the user query, it returns a few relevant snippets from your knowledge base.\n",
+    "\n",
+    "These snippets will then be fed to the Reader Model to help it generate its answer.\n",
+    "\n",
+    "So __our objective here is, given a user question, to find the most snippets from our knowledge base to answer that question.__\n",
+    "\n",
+    "This is a wide objective, it leaves open some questions. How many snippets should we retrieve? This parameter will be named `top_k`.\n",
+    "\n",
+    "How long should these snippets be? This is called the `chunk size`. There's no one-size-fits-all answers, but here are a few elements:\n",
+    "- πŸ”€ Your `chunk size` is allowed to vary from one snippet to the other.\n",
+    "- Since there will always be some noise in your retrieval, increasing the `top_k` increases the chance to get relevant elements in your retrieved snippets. 🎯 Shooting more arrows increases your probability to hit your target.\n",
+    "- Meanwhile, the summed length of your retrieved documents should not be too high: for instance, for most current models 16k tokens will probably drown your Reader model in information due to [Lost-in-the-middle phenomenon](https://huggingface.co/papers/2307.03172). 🎯 Give your reader model only the most relevant insights, not a huge pile of books!\n",
+    "\n",
+    "\n",
+    "> In this notebook, we use Langchain library since __it offers a huge variety of options for vector databases and allows us to keep document metadata throughout the processing__."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "-uS6Mv8O9-9L"
+   },
+   "source": [
+    "### 1.1 Split the documents into chunks\n",
+    "\n",
+    "- In this part, __we split the documents from our knowledge base into smaller chunks__ which will be the snippets on which the reader LLM will base its answer.\n",
+    "- The goal is to prepare a collection of **semantically relevant snippets**. So their size should be adapted to precise ideas: too small will truncate ideas, too large will dilute them.\n",
+    "\n",
+    "πŸ’‘ _Many options exist for text splitting: splitting on words, on sentence boundaries, recursive chunking that processes documents in a tree-like way to preserve structure information... To learn more about chunking, I recommend you read [this great notebook](https://github.com/FullStackRetrieval-com/RetrievalTutorials/blob/main/5_Levels_Of_Text_Splitting.ipynb) by Greg Kamradt._\n",
+    "\n",
+    "\n",
+    "- **Recursive chunking** breaks down the text into smaller parts step by step using a given list of separators sorted from the most important to the least important separator. If the first split doesn't give the right size or shape chunks, the method repeats itself on the new chunks using a different separator. For instance with the list of separators `[\"\\n\\n\", \"\\n\", \".\", \"\"]`:\n",
+    "    - The method will first break down the document wherever there is a double line break `\"\\n\\n\"`.\n",
+    "    - Resulting documents will be split again on simple line breaks `\"\\n\"`, then on sentence ends `\".\"`.\n",
+    "    - And finally, if some chunks are still too big, they will be split whenever they overflow the maximum size.\n",
+    "\n",
+    "- With this method, the global structure is well preserved, at the expense of getting slight variations in chunk size.\n",
+    "\n",
+    "> [This space](https://huggingface.co/spaces/A-Roucher/chunk_visualizer) lets you visualize how different splitting options affect the chunks you get.\n",
+    "\n",
+    "πŸ”¬ Let's experiment a bit with chunk sizes, beginning with an arbitrary size, and see how splits work. We use Langchain's implementation of recursive chunking with `RecursiveCharacterTextSplitter`.\n",
+    "- Parameter `chunk_size` controls the length of individual chunks: this length is counted by default as the number of characters in the chunk.\n",
+    "- Parameter `chunk_overlap` lets adjacent chunks get a bit of overlap on each other. This reduces the probability that an idea could be cut in half by the split between two adjacent chunks. We ~arbitrarily set this to 1/10th of the chunk size, you could try different values!"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "M4m6TwDJ9-9L"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.text_splitter import RecursiveCharacterTextSplitter\n",
+    "\n",
+    "# We use a hierarchical list of separators specifically tailored for splitting Markdown documents\n",
+    "# This list is taken from LangChain's MarkdownTextSplitter class.\n",
+    "MARKDOWN_SEPARATORS = [\n",
+    "    \"\\n#{1,6} \",\n",
+    "    \"```\\n\",\n",
+    "    \"\\n\\\\*\\\\*\\\\*+\\n\",\n",
+    "    \"\\n---+\\n\",\n",
+    "    \"\\n___+\\n\",\n",
+    "    \"\\n\\n\",\n",
+    "    \"\\n\",\n",
+    "    \" \",\n",
+    "    \"\",\n",
+    "]\n",
+    "\n",
+    "text_splitter = RecursiveCharacterTextSplitter(\n",
+    "    chunk_size=1000,  # the maximum number of characters in a chunk: we selected this value arbitrarily\n",
+    "    chunk_overlap=100,  # the number of characters to overlap between chunks\n",
+    "    add_start_index=True,  # If `True`, includes chunk's start index in metadata\n",
+    "    strip_whitespace=True,  # If `True`, strips whitespace from the start and end of every document\n",
+    "    separators=MARKDOWN_SEPARATORS,\n",
+    ")\n",
+    "\n",
+    "docs_processed = []\n",
+    "for doc in RAW_KNOWLEDGE_BASE:\n",
+    "    docs_processed += text_splitter.split_documents([doc])"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "d5jJUMgb9-9M"
+   },
+   "source": [
+    "We also have to keep in mind that when embedding documents, we will use an embedding model that has accepts a certain maximum sequence length `max_seq_length`.\n",
+    "\n",
+    "So we should make sure that our chunk sizes are below this limit, because any longer chunk will be truncated before processing, thus losing relevancy."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "referenced_widgets": [
+      "ae043feeb0914c879e2a9008b413d952"
+     ]
+    },
+    "id": "B4hoki349-9M",
+    "outputId": "64f92a61-7839-476d-f456-7eefde04c20b"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Model's maximum sequence length: 512\n"
+     ]
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "ae043feeb0914c879e2a9008b413d952",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "  0%|          | 0/31085 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAo4AAAGzCAYAAAChApYOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABUuElEQVR4nO3deVwV9eL/8TfIrgKiCaKoXC33LSzFvURwTcsl09JM85Z60ywtK82lcitzTfN20xa9llbmtVJxKTXJLXFLzcqyNKBExBURPr8/+p35egR0UDhAvp6Ph486n/mcz3zmM3Nm3mdmzuBmjDECAAAArsG9oDsAAACAooHgCAAAAFsIjgAAALCF4AgAAABbCI4AAACwheAIAAAAWwiOAAAAsIXgCAAAAFsIjgAAALAl34Pj2LFj5ebmlt+zkSS1atVKrVq1sl5/+eWXcnNz07Jly1wy/4cffliVK1d2ybyu15kzZzRgwACFhITIzc1Nw4YNy3Ubbm5uGjt2bJ737WZUuXJlPfzwwwXdjWt6+OGHVaJEiXydh6u2K1ftF1y9/7lRP//8s9zc3LRw4cI8a3PhwoVyc3PTzz//nGdt2lW5cmV17NjR5fO9UWfOnFHZsmW1aNEiq8yVx9G/u7w4Btrl2P537NiRb/O4Xj179lSPHj2u6725Co6OQXD88/HxUWhoqGJiYjRz5kydPn36ujpxpePHj2vs2LGKj4/Pk/byUmHumx2vvPKKFi5cqMcff1zvvfeeHnrooYLu0t/K4sWLNX369ILuxnU5d+6cxo4dqy+//LKgu5InivK6wM1rxowZKlmypHr27FnQXSlQr7zyipYvX54v7do9BuZXHwqDZ555Rh999JF2796d6/de1xnH8ePH67333tPcuXP1r3/9S5I0bNgw1alTR3v27HGq+8ILL+j8+fO5av/48eMaN25crsPZmjVrtGbNmly9J7eu1rd///vfOnToUL7O/0atX79ejRs31osvvqgHH3xQERERBd2lv5WiHFbOnTuncePGFVhwPH/+vF544YU8a68orwvcnNLT0zVjxgwNGDBAxYoVs8qv5zha1OVXaMvNMfDvHBwbNGighg0b6rXXXsv1e68rOLZr104PPvig+vXrp1GjRmn16tVau3atkpKSdM899zht4B4eHvLx8bme2dh27tw5SZKXl5e8vLzydV5X4+npKW9v7wKbvx1JSUkKDAws6G4AWfj4+MjDw6OguwEUmJUrV+qPP/7IcgnRFcfRmwXHwP/To0cPffzxxzpz5kyu3pdn9zjefffdGj16tH755Re9//77Vnl292bExsaqWbNmCgwMVIkSJVStWjU999xzkv66L+iOO+6QJPXr18+6LO6476ZVq1aqXbu2du7cqRYtWsjPz89675X3ODpkZGToueeeU0hIiIoXL6577rlHv/76q1OdnO41u7zNa/Utu3scz549q6eeekphYWHy9vZWtWrV9Oqrr8oY41TPzc1NQ4YM0fLly1W7dm15e3urVq1aWrVqVfYDfoWkpCT1799fwcHB8vHxUb169fTOO+9Y0x33Wx05ckSfffaZ1fer3XuUlpamJ598UrfccotKliype+65R7/99lu2dXft2qV27drJ399fJUqUUOvWrfXNN99kqZeSkqInn3xSlStXlre3typUqKA+ffrozz//lJTzPVGO/l9+NsyxLezZs0ctW7aUn5+fqlatat1T9tVXX6lRo0by9fVVtWrVtHbt2iz9OXbsmB555BEFBwdbY/72229nO+8PP/xQL7/8sipUqCAfHx+1bt1aP/zwg1N/PvvsM/3yyy/W+F7PPa8pKSkaNmyYtc1UrVpVkydPVmZmplXHcT/aq6++qvnz56tKlSry9vbWHXfcoe3bt2dpc+nSpapZs6Z8fHxUu3ZtffLJJ07b688//6xbbrlFkjRu3Dir/1fec3js2DF16dJFJUqU0C233KKnn35aGRkZTnWWLFmiiIgIlSxZUv7+/qpTp45mzJhxzeW+cn6OfccPP/yghx9+WIGBgQoICFC/fv2sL4s5sbMuMjMzr7o+HbZu3aq2bdsqICBAfn5+atmypb7++utrLk920tLS1LFjRwUEBGjLli25Xs5Lly5pwoQJ1vquXLmynnvuOaWlpVl1hg8frtKlSzvtY/71r3/Jzc1NM2fOtMoSExPl5uamuXPnXrXPBw8eVLdu3RQUFCQfHx81bNhQK1asyFJv//79uvvuu+Xr66sKFSropZdectpmHTIzMzV27FiFhobKz89Pd911l7777rts98F2PgvXsmbNGtWvX18+Pj6qWbOmPv74Y6fpycnJevrpp1WnTh2VKFFC/v7+ateuXbaX8GbNmqVatWrJz89PpUqVUsOGDbV48WKnOnb2KTlZvny5KleurCpVqjiVZ3ccvdFjxoULFzR27Fjddttt8vHxUbly5XTffffpxx9/tOrYOX5d7d7Y6/1Mu7m56ezZs3rnnXesz++17gXP62Pgtfpg95h3pZMnT+rOO+9UhQoVrCuUaWlpevHFF1W1alV5e3srLCxMI0eOdPpcO/pkZ52fPn1aw4YNs46zZcuWVZs2bfTtt9861WvTpo3Onj2r2NjYa/b7cnn69f6hhx7Sc889pzVr1ujRRx/Nts7+/fvVsWNH1a1bV+PHj5e3t7d++OEHa0dco0YNjR8/XmPGjNHAgQPVvHlzSVKTJk2sNk6cOKF27dqpZ8+eevDBBxUcHHzVfr388styc3PTM888o6SkJE2fPl1RUVGKj4+Xr6+v7eWz07fLGWN0zz33aMOGDerfv7/q16+v1atXa8SIETp27Jhef/11p/qbN2/Wxx9/rEGDBqlkyZKaOXOmunbtqqNHj6p06dI59uv8+fNq1aqVfvjhBw0ZMkTh4eFaunSpHn74YaWkpGjo0KGqUaOG3nvvPT355JOqUKGCnnrqKUmywkJ2BgwYoPfff1+9evVSkyZNtH79enXo0CFLvf3796t58+by9/fXyJEj5enpqTfffFOtWrWywpv0103JzZs314EDB/TII4/o9ttv159//qkVK1bot99+U5kyZa6+ArJx8uRJdezYUT179lT37t01d+5c9ezZU4sWLdKwYcP02GOPqVevXpo6daq6deumX3/9VSVLlpT014GzcePG1ofxlltu0RdffKH+/fsrNTU1y03TkyZNkru7u55++mmdOnVKU6ZMUe/evbV161ZJ0vPPP69Tp07pt99+s9Ztbn9Qcu7cObVs2VLHjh3TP//5T1WsWFFbtmzRqFGj9Pvvv2e59Lp48WKdPn1a//znP+Xm5qYpU6bovvvu008//SRPT09J0meffab7779fderU0cSJE3Xy5En1799f5cuXt9q55ZZbNHfuXD3++OO69957dd9990mS6tata9XJyMhQTEyMGjVqpFdffVVr167Va6+9pipVqujxxx+X9NeXwgceeECtW7fW5MmTJUkHDhzQ119/raFDh+ZqLBx69Oih8PBwTZw4Ud9++63eeustlS1b1mo/O3bWxbXWp/TXZa127dopIiJCL774otzd3bVgwQLdfffd2rRpk+68807by3H+/Hl17txZO3bs0Nq1a60voblZzgEDBuidd95Rt27d9NRTT2nr1q2aOHGiDhw4oE8++USS1Lx5c73++uvav3+/ateuLUnatGmT3N3dtWnTJj3xxBNWmSS1aNEixz7v379fTZs2Vfny5fXss8+qePHi+vDDD9WlSxd99NFHuvfeeyVJCQkJuuuuu3Tp0iWr3vz587Pdv44aNUpTpkxRp06dFBMTo927dysmJkYXLlxwqpfbz0J2Dh8+rPvvv1+PPfaY+vbtqwULFqh79+5atWqV2rRpI0n66aeftHz5cnXv3l3h4eFKTEzUm2++qZYtW+q7775TaGiopL9uRXriiSfUrVs3DR06VBcuXNCePXu0detW9erVS1Lu9ylX2rJli26//fZrLpfD9R4zMjIy1LFjR61bt049e/bU0KFDdfr0acXGxmrfvn2qUqVKro9fuXGtbf29997TgAEDdOedd2rgwIGSlCVMXy4/joFX64PdY96V/vzzT7Vp00bJycn66quvVKVKFWVmZuqee+7R5s2bNXDgQNWoUUN79+7V66+/ru+//z7LpXI76/yxxx7TsmXLNGTIENWsWVMnTpzQ5s2bdeDAAaftq2bNmvL19dXXX39tfZZtMbmwYMECI8ls3749xzoBAQGmQYMG1usXX3zRXD6b119/3Ugyf/zxR45tbN++3UgyCxYsyDKtZcuWRpKZN29ettNatmxpvd6wYYORZMqXL29SU1Ot8g8//NBIMjNmzLDKKlWqZPr27XvNNq/Wt759+5pKlSpZr5cvX24kmZdeesmpXrdu3Yybm5v54YcfrDJJxsvLy6ls9+7dRpKZNWtWlnldbvr06UaSef/9962yixcvmsjISFOiRAmnZa9UqZLp0KHDVdszxpj4+HgjyQwaNMipvFevXkaSefHFF62yLl26GC8vL/Pjjz9aZcePHzclS5Y0LVq0sMrGjBljJJmPP/44y/wyMzONMf+3jR05csRpumNdbtiwwSpzbAuLFy+2yg4ePGgkGXd3d/PNN99Y5atXr86y3vr372/KlStn/vzzT6d59ezZ0wQEBJhz5845zbtGjRomLS3Nqjdjxgwjyezdu9cq69Chg9M2cC1XbncTJkwwxYsXN99//71TvWeffdYUK1bMHD161BhjzJEjR4wkU7p0aZOcnGzV+/TTT40k87///c8qq1OnjqlQoYI5ffq0Vfbl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acyuNZaOM0UPPvhgjsHg8vv77LSZFzIzM9WmTRuNHDky2+mOg54r+3SteV2ubNmyio+P1+rVq/XFF1/oiy++0IIFC9SnTx+nG9XzYr43uox2t5GpU6fmeJbQzj2snTt31pIlSzRp0iS9++67OX5BtrucdnbyzZo107///W/99NNP2rRpk5o3by43Nzc1a9ZMmzZtUmhoqDIzM62zrNlxLP/TTz+tmJiYbOtcbV9/o3L7Wbher7zyikaPHq1HHnlEEyZMUFBQkNzd3TVs2DCnM8o1atTQoUOHtHLlSq1atUofffSR3njjDY0ZM0bjxo27rn3K5YKCguTm5parL6KF4ZiR2322VDj67Ur33Xef3n33Xc2YMUMTJ050mpaZmak6depo2rRp2b73ypMgdsauR48eat68uT755BOtWbNGU6dO1eTJk/Xxxx+rXbt2Tu87efJklpNr15KnwfG9996TpBx3Mg7u7u5q3bq1WrdurWnTpumVV17R888/rw0bNigqKirPn5DvOHPgYIzRDz/84PQhLlWqlFJSUrK895dffnFK6bnpW6VKlbR27VqdPn3a6VvbwYMHrel5oVKlStqzZ48yMzOdDko3Mp9KlSopMzPT+mbqcOVzKm+55Rb5+fll+/zKgwcPyt3d3drwq1Spon379l11vo5vnleui7z8xijJ+qV4RkaGoqKi8qzdG912q1SpojNnzuRZnxzrPrtfC19ZllefOy8vL3Xq1EmdOnVSZmamBg0apDfffFOjR4/O16BxpbxYF9JflzdvZH106dJF0dHRevjhh1WyZMlr/oo5J47P5OHDh60zKdJfP8hISUlx+pw7AmFsbKy2b9+uZ599VtJfP4SZO3euQkNDVbx48as+w86x3/P09Lzm8leqVCnLflbKur+4fHsMDw+3yk+cOJElMOXFZ8Fx1vTybeH777+XJOtX9suWLdNdd92l//znP07vTUlJyfKDveLFi+v+++/X/fffr4sXL+q+++7Tyy+/rFGjRt3wPsXDw0NVqlTRkSNHcv3e3KpSpYq2bt2q9PR060d0V7J7/MqvfXZuj7V5fQzMqQ+5OeY5/Otf/1LVqlU1ZswYBQQEWJ9H6a91sXv3brVu3TpPs0+5cuU0aNAgDRo0SElJSbr99tv18ssvOwXHS5cu6ddff9U999yTq7bz7B7H9evXa8KECQoPD89yX8vlkpOTs5Q5vs07fnpevHhxSVk3xOv17rvvOt13uWzZMv3+++9OA1ilShV98803unjxolW2cuXKLI/tyU3f2rdvr4yMDM2ePdup/PXXX5ebm1uW5H+92rdvr4SEBH3wwQdW2aVLlzRr1iyVKFFCLVu2zHWbjr5d/vgOSVl+yVisWDFFR0fr008/dbr0n5iYqMWLF6tZs2bWpYeuXbtq9+7d1q8/L+f4tuQ4WF9+/1JGRkaOl36uV7FixdS1a1d99NFH2YbZP/7447raLV68uE6dOnXd/erRo4fi4uK0evXqLNNSUlJ06dKlXLUXGhqq2rVr691333V6VtdXX32lvXv3OtX18/Oz5nO9Tpw44fTa3d3d+oJ25aMl8tuNrouIiAhVqVJFr776arbPOcvNNtKnTx/NnDlT8+bN0zPPPHNd/Wnfvr2krJ9Bx5mKy594EB4ervLly+v1119Xenq6dTm1efPm+vHHH7Vs2TI1btz4qpcqy5Ytq1atWunNN9/U77//nmX65cvfvn17ffPNN9q2bZvT9Mv/bJ4ktW7dWh4eHlnC85X7SClvPgvHjx932t+kpqbq3XffVf369a1LhsWKFctypmvp0qXW/ZsOV27bXl5eqlmzpowxSk9Pz5N9SmRkpEv+PF3Xrl31559/ZjvujrGwe/zy9/dXmTJlstxz+sYbb9xQH4sXL257X5Qfx8Cc+pCbY97lRo8eraefflqjRo1y2v579OihY8eO6d///neW95w/f15nz57NVZ8zMjKy7PfKli2r0NDQLPvg7777ThcuXMjxyTA5ua4zjl988YUOHjyoS5cuKTExUevXr1dsbKwqVaqkFStWXPVBpePHj9fGjRvVoUMHVapUSUlJSXrjjTdUoUIFNWvWTNJf4SEwMFDz5s1TyZIlVbx4cTVq1MjpG2puBAUFqVmzZurXr58SExM1ffp0Va1a1emRQQMGDNCyZcvUtm1b9ejRQz/++KPef//9LPf45aZvnTp10l133aXnn39eP//8s+rVq6c1a9bo008/1bBhw676eIHcGDhwoN588009/PDD2rlzpypXrqxly5bp66+/1vTp07Pco2JH/fr19cADD+iNN97QqVOn1KRJE61bty7bM1cvvfSS9WzOQYMGycPDQ2+++abS0tI0ZcoUq96IESO0bNkyde/eXY888ogiIiKUnJysFStWaN68eapXr55q1aqlxo0ba9SoUUpOTlZQUJCWLFmS68Bkx6RJk7RhwwY1atRIjz76qGrWrKnk5GR9++23Wrt2bbZfcq4lIiJCH3zwgYYPH6477rhDJUqUUKdOnWy/f8SIEVqxYoU6duyohx9+WBERETp79qz27t2rZcuW6eeff871Y4teeeUVde7cWU2bNlW/fv108uRJzZ49W7Vr13YKRL6+vqpZs6Y++OAD3XbbbQoKClLt2rWtR7rYMWDAACUnJ+vuu+9WhQoV9Msvv2jWrFmqX7++01kyV7jRdeHu7q633npL7dq1U61atdSvXz+VL19ex44d04YNG+Tv76///e9/ttsbMmSIUlNT9fzzzysgIMB6/qxd9erVU9++fTV//nylpKSoZcuW2rZtm9555x116dJFd911l1P95s2ba8mSJapTp451Vuj2229X8eLF9f3331/1/kaHOXPmqFmzZqpTp44effRR/eMf/1BiYqLi4uL022+/Wc86HDlypN577z21bdtWQ4cOtR7H4zgT5BAcHKyhQ4fqtdde0z333KO2bdtq9+7d+uKLL1SmTBmnMy558Vm47bbb1L9/f23fvl3BwcF6++23lZiYqAULFlh1OnbsqPHjx6tfv35q0qSJ9u7dq0WLFmW5Hyw6OlohISFq2rSpgoODdeDAAc2ePVsdOnSw9rE3uk/p3Lmz3nvvPX3//fd5dik+O3369NG7776r4cOHa9u2bWrevLnOnj2rtWvXatCgQercuXOujl8DBgzQpEmTNGDAADVs2FAbN260zuxer4iICK1du1bTpk1TaGiowsPDc3zMTX4cA6/WB7vHvCtNnTpVp06d0uDBg1WyZEk9+OCDeuihh/Thhx/qscce04YNG9S0aVNlZGTo4MGD+vDDD7V69Wo1bNjQdp9Pnz6tChUqqFu3bqpXr55KlCihtWvXavv27Vn+SkxsbKz8/PysR1PZlpufYDt+Wu745+XlZUJCQkybNm3MjBkznH7y7nDlYwTWrVtnOnfubEJDQ42Xl5cJDQ01DzzwQJZHLnz66aemZs2axsPDw+mn/i1btszxkQg5PY7nv//9rxk1apQpW7as8fX1NR06dDC//PJLlve/9tprpnz58sbb29s0bdrU7NixI0ubV+vblY/jMcaY06dPmyeffNKEhoYaT09Pc+utt5qpU6c6Pd7DmL9+Zp/dz+dzekzQlRITE02/fv1MmTJljJeXl6lTp062j0fIzaMIzp8/b5544glTunRpU7x4cdOpUyfz66+/ZvvIlm+//dbExMSYEiVKGD8/P3PXXXeZLVu2ZGnzxIkTZsiQIaZ8+fLGy8vLVKhQwfTt29fp8RU//vijiYqKMt7e3iY4ONg899xzJjY2NtvH8WS3LeS0jNmNcWJiohk8eLAJCwsznp6eJiQkxLRu3drMnz/fqnP5Y1Uul91jKM6cOWN69eplAgMDszzuJjvZrd/Tp0+bUaNGmapVqxovLy9TpkwZ06RJE/Pqq6+aixcvOs176tSp2S7nletnyZIlpnr16sbb29vUrl3brFixwnTt2tVUr17dqd6WLVtMRESE8fLycmqnb9++pnjx4lnmdeXne9myZSY6OtqULVvWeHl5mYoVK5p//vOf5vfff7/qOGTXb0fbVz66K6dHNl0pp3WRm/VpjDG7du0y9913nyldurTx9vY2lSpVMj169DDr1q276vxzms/IkSONJDN79uxcL2d6eroZN26cCQ8PN56eniYsLMyMGjXK6XE5DnPmzDGSzOOPP+5UHhUVZSRl6X9Oy//jjz+aPn36mJCQEOPp6WnKly9vOnbsaJYtW+ZUb8+ePaZly5bGx8fHlC9f3kyYMMH85z//ybIMly5dMqNHjzYhISHG19fX3H333ebAgQOmdOnS5rHHHnNq085nISeO/cDq1atN3bp1jbe3t6levXqW9XHhwgXz1FNPmXLlyhlfX1/TtGlTExcXl2Xf/+abb5oWLVpY20GVKlXMiBEjzKlTp5zas7NPyUlaWpopU6aMmTBhglN5To/juZFjxrlz58zzzz9vbUshISGmW7duTo+YsXv8OnfunOnfv78JCAgwJUuWND169LAeC3W9n+mDBw+aFi1aGF9f3yyPaspOfhwDr9YHO8e87B5hmJGRYR544AHj4eFhli9fboz569FBkydPNrVq1TLe3t6mVKlSJiIiwowbN85p+7KzztPS0syIESNMvXr1TMmSJU3x4sVNvXr1rMdzXa5Ro0bmwQcftDUWl3P7/50BcJOpX7++brnlljx9dA5wPVJSUlSqVCm99NJLev755wu6OwVqwoQJWrBggQ4fPuyyH2bi5hMfH6/bb79d3377bY4//stJnj/HEUDhkp6enuVS/5dffqndu3dn+yc6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ffv2mfj4eNO+fXtTsWJFc+bMGavOY489ZsLCwsy6devMjh07TOPGjU2TJk2s6ZcuXTK1a9c2UVFRZteuXebzzz83ZcqUMaNGjSqIRSr0tm3bZipXrmzq1q1rhg4dapUzznkjOTnZVKpUyTz88MNm69at5qeffjKrV682P/zwg1Vn0qRJJiAgwCxfvtzs3r3b3HPPPSY8PNycP3/eqtO2bVtTr149880335hNmzaZqlWrmgceeKAgFqlQevnll03p0qXNypUrzZEjR8zSpUtNiRIlzIwZM6w6jPP1+fzzz83zzz9vPv74YyPJfPLJJ07T82JcT506ZYKDg03v3r3Nvn37zH//+1/j6+tr3nzzTVct5k2F4FhI3HnnnWbw4MHW64yMDBMaGmomTpxYgL0q2pKSkowk89VXXxljjElJSTGenp5m6dKlVp0DBw4YSSYuLs4Y89dOzt3d3SQkJFh15s6da/z9/U1aWpprF6CQO336tLn11ltNbGysadmypRUcGee888wzz5hmzZrlOD0zM9OEhISYqVOnWmUpKSnG29vb/Pe//zXGGPPdd98ZSWb79u1WnS+++MK4ubmZY8eO5V/ni5AOHTqYRx55xKnsvvvuM7179zbGMM555crgmFfj+sYbb5hSpUo57TueeeYZU61atXxeopsTl6oLgYsXL2rnzp2Kioqyytzd3RUVFaW4uLgC7FnRdurUKUlSUFCQJGnnzp1KT093Gufq1aurYsWK1jjHxcWpTp06Tn89KCYmRqmpqdq/f78Le1/4DR48WB06dHAaT4lxzksrVqxQw4YN1b17d5UtW1YNGjTQv//9b2v6kSNHlJCQ4DTWAQEBatSokdNYBwYGqmHDhladqKgoubu7a+vWra5bmEKsSZMmWrdunb7//ntJ0u7du7V582a1a9dOEuOcX/JqXOPi4tSiRQt5eXlZdWJiYnTo0CGdPHnSRUtz87ip/+RgYfHnn38qIyMjy586DA4O1sGDBwuoV0VbZmamhg0bpqZNm6p27dqSpISEBHl5eSkwMNCpbnBwsBISEqw62a0HxzT8ZcmSJfr222+1ffv2LNMY57zz008/ae7cuRo+fLiee+45bd++XU888YS8vLzUt29fa6yyG8vLx7ps2bJO0z08PBQUFMRY/3/PPvusUlNTVb16dRUrVkwZGRl6+eWX1bt3b0linPNJXo1rQkKCwsPDs7ThmFaqVKl86f/NiuCIv6XBgwdr37592rx5c0F35W/n119/1dChQxUbGysfH5+C7s7fWmZmpho2bKhXXnlFktSgQQPt27dP8+bNU9++fQu4d38fH374oRYtWqTFixerVq1aio+P17BhwxQaGso4A1fgUnUhUKZMGRUrVizLr04TExMVEhJSQL0quoYMGaKVK1dqw4YNqlChglUeEhKiixcvKiUlxan+5eMcEhKS7XpwTMNfl6KTkpJ0++23y8PDQx4eHvrqq680c+ZMeXh4KDg4mHHOI+XKlVPNmjWdymrUqKGjR49K+r+xutq+IyQkRElJSU7TL126pOTkZMb6/xsxYoSeffZZ9ezZU3Xq1NFDDz2kJ598UhMnTpTEOOeXvBpX9ieuRXAsBLy8vBQREaF169ZZZZmZmVq3bp0iIyMLsGdFizFGQ4YM0SeffKL169dnuXQREREhT09Pp3E+dOiQjh49ao1zZGSk9u7d67Sjio2Nlb+/f5YD+M2qdevW2rt3r+Lj461/DRs2VO/eva3/Z5zzRtOmTbM8Uur7779XpUqVJEnh4eEKCQlxGuvU1FRt3brVaaxTUlK0c+dOq8769euVmZmpRo0auWApCr9z587J3d35cFisWDFlZmZKYpzzS16Na2RkpDZu3Kj09HSrTmxsrKpVq8Zl6vxQ0L/OwV+WLFlivL29zcKFC813331nBg4caAIDA51+dYqre/zxx01AQID58ssvze+//279O3funFXnscceMxUrVjTr1683O3bsMJGRkSYyMtKa7nhMTHR0tImPjzerVq0yt9xyC4+JuYbLf1VtDOOcV7Zt22Y8PDzMyy+/bA4fPmwWLVpk/Pz8zPvvv2/VmTRpkgkMDDSffvqp2bNnj+ncuXO2jzNp0KCB2bp1q9m8ebO59dZbb/rHxFyub9++pnz58tbjeD7++GNTpkwZM3LkSKsO43x9Tp8+bXbt2mV27dplJJlp06aZXbt2mV9++cUYkzfjmpKSYoKDg81DDz1k9u3bZ5YsWWL8/Px4HE8+ITgWIrNmzTIVK1Y0Xl5e5s477zTffPNNQXepSJGU7b8FCxZYdc6fP28GDRpkSpUqZfz8/My9995rfv/9d6d2fv75Z9OuXTvj6+trypQpY5566imTnp7u4qUpWq4Mjoxz3vnf//5nateubby9vU316tXN/PnznaZnZmaa0aNHm+DgYOPt7W1at25tDh065FTnxIkT5oEHHjAlSpQw/v7+pl+/fub06dOuXIxCLTU11QwdOtRUrFjR+Pj4mH/84x/m+eefd3q8C+N8fTZs2JDtfrlv377GmLwb1927d5tmzZoZb29vU758eTNp0iRXLeJNx82Yyx6NDwAAAOSAexwBAABgC8ERAAAAthAcAQAAYAvBEQAAALYQHAEAAGALwREAAAC2EBwBAABgC8ERAAAAthAcAQAAYAvBEQAAALYQHAEAAGDL/wM6tV3zQ96S4AAAAABJRU5ErkJggg==",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "from sentence_transformers import SentenceTransformer\n",
+    "\n",
+    "# To get the value of the max sequence_length, we will query the underlying `SentenceTransformer` object used in the RecursiveCharacterTextSplitter.\n",
+    "print(\n",
+    "    f\"Model's maximum sequence length: {SentenceTransformer('thenlper/gte-small').max_seq_length}\"\n",
+    ")\n",
+    "\n",
+    "from transformers import AutoTokenizer\n",
+    "\n",
+    "tokenizer = AutoTokenizer.from_pretrained(\"thenlper/gte-small\")\n",
+    "lengths = [len(tokenizer.encode(doc.page_content)) for doc in tqdm(docs_processed)]\n",
+    "\n",
+    "# Plot the distrubution of document lengths, counted as the number of tokens\n",
+    "fig = pd.Series(lengths).hist()\n",
+    "plt.title(\"Distribution of document lengths in the knowledge base (in count of tokens)\")\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "L3teXczl9-9M"
+   },
+   "source": [
+    "πŸ‘€ As you can see, __the chunk lengths are not aligned with our limit of 512 tokens__, and some documents are above the limit, thus some part of them will be lost in truncation!\n",
+    " - So we should change the `RecursiveCharacterTextSplitter` class to count length in number of tokens instead of number of characters.\n",
+    " - Then we can choose a specific chunk size, here we would choose a lower threshold than 512:\n",
+    "    - smaller documents could allow the split to focus more on specific ideas.\n",
+    "    - But too small chunks would split sentences in half, thus losing meaning again: the proper tuning is a matter of balance."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "referenced_widgets": [
+      "f900cf4ab3a94f45bfa7298f433566ed"
+     ]
+    },
+    "id": "9hvIL2jO9-9M",
+    "outputId": "9baf219d-2954-4927-9681-e28572db90db"
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "f900cf4ab3a94f45bfa7298f433566ed",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "  0%|          | 0/17995 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAo4AAAGzCAYAAAChApYOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABJmElEQVR4nO3de3yP9eP/8edm23u22ea4mTnsQzkfMmGVnGZLS4QQRaI+mDJKpXKuSAepRH0qOvkIlYrEnJORREkUfRTFtqIdnGa21++Pfu/r6+29cW02Gx73282t3tf1er+u1/W6Ts/3dZqHMcYIAAAAOA/Pkm4AAAAALg0ERwAAANhCcAQAAIAtBEcAAADYQnAEAACALQRHAAAA2EJwBAAAgC0ERwAAANhCcAQAAIAtxR4cJ0yYIA8Pj+KejCSpXbt2ateunfV57dq18vDw0KJFiy7K9O+++27VqlXrokyrsI4eParBgwcrNDRUHh4eSkhIKHAdHh4emjBhQpG37UpUq1Yt3X333SXdjPO6++67FRAQUKzTuFjr1cXaL1zs/c+F+vXXX+Xh4aG5c+cWWZ1z586Vh4eHfv311yKr065atWrplltuuejTvVBHjx5VlSpV9P7771vDLuZx9HJXFMdAu5zr/zfffFNs0yisPn36qFevXoX6boGCo7MTnP98fX0VFham2NhYvfTSS8rMzCxUI8528OBBTZgwQdu3by+S+opSaW6bHU8//bTmzp2roUOH6t1339Vdd91V0k26rMybN08vvvhiSTejUI4fP64JEyZo7dq1Jd2UInEpLwtcuWbMmKFy5cqpT58+Jd2UEvX0009r8eLFxVKv3WNgcbWhNHjkkUf04Ycf6rvvvivwdwt1xnHSpEl69913NWvWLN1///2SpISEBDVu3Fjff/+9S9knnnhCJ06cKFD9Bw8e1MSJEwsczlasWKEVK1YU6DsFda62/ec//9FPP/1UrNO/UKtXr1br1q01fvx43XnnnYqMjCzpJl1WLuWwcvz4cU2cOLHEguOJEyf0xBNPFFl9l/KywJUpOztbM2bM0ODBg1WmTBlreGGOo5e64gptBTkGXs7B8ZprrlGLFi30/PPPF/i7hQqOnTt31p133qmBAwdqzJgxWr58uVauXKnU1FTdeuutLiu4l5eXfH19CzMZ244fPy5J8vHxkY+PT7FO61y8vb3lcDhKbPp2pKamKjg4uKSbAbjx9fWVl5dXSTcDKDFLlizRn3/+6XYJ8WIcR68UHAP/T69evfTRRx/p6NGjBfpekd3j2KFDB40dO1a//fab3nvvPWt4XvdmJCYm6oYbblBwcLACAgJUt25dPfbYY5L+uS/o2muvlSQNHDjQuizuvO+mXbt2atSokbZu3aobb7xRfn5+1nfPvsfRKScnR4899phCQ0Pl7++vW2+9VQcOHHApk9+9ZmfWeb625XWP47Fjx/Tggw+qevXqcjgcqlu3rp577jkZY1zKeXh4aPjw4Vq8eLEaNWokh8Ohhg0b6osvvsi7w8+SmpqqQYMGKSQkRL6+vmratKnefvtta7zzfqt9+/Zp6dKlVtvPde9RVlaWRo4cqcqVK6tcuXK69dZb9fvvv+dZdtu2bercubMCAwMVEBCgjh07atOmTW7l0tLSNHLkSNWqVUsOh0Ph4eHq37+//vrrL0n53xPlbP+ZZ8Oc68L333+vtm3bys/PT3Xq1LHuKVu3bp1atWqlsmXLqm7dulq5cqVbe/744w/dc889CgkJsfr8rbfeynPaCxYs0FNPPaXw8HD5+vqqY8eO2rt3r0t7li5dqt9++83q38Lc85qWlqaEhARrnalTp46eeeYZ5ebmWmWc96M999xzev3111W7dm05HA5de+212rJli1udCxcuVIMGDeTr66tGjRrp448/dllff/31V1WuXFmSNHHiRKv9Z99z+Mcff6hbt24KCAhQ5cqV9dBDDyknJ8elzPz58xUZGaly5copMDBQjRs31owZM84732dPz7nv2Lt3r+6++24FBwcrKChIAwcOtH4s5sfOssjNzT3n8nTavHmzbrrpJgUFBcnPz09t27bVV199dd75yUtWVpZuueUWBQUFaePGjQWez9OnT2vy5MnW8q5Vq5Yee+wxZWVlWWVGjRqlihUruuxj7r//fnl4eOill16yhqWkpMjDw0OzZs06Z5t3796tnj17qkKFCvL19VWLFi306aefupXbuXOnOnTooLJlyyo8PFxPPvmkyzrrlJubqwkTJigsLEx+fn5q3769fvzxxzz3wXa2hfNZsWKFmjVrJl9fXzVo0EAfffSRy/gjR47ooYceUuPGjRUQEKDAwEB17tw5z0t4L7/8sho2bCg/Pz+VL19eLVq00Lx581zK2Nmn5Gfx4sWqVauWateu7TI8r+PohR4zTp48qQkTJujqq6+Wr6+vqlatqu7du+uXX36xytg5fp3r3tjCbtMeHh46duyY3n77bWv7Pd+94EV9DDxfG+we8872999/q2XLlgoPD7euUGZlZWn8+PGqU6eOHA6Hqlevrocffthlu3a2yc4yz8zMVEJCgnWcrVKlijp16qRvv/3WpVynTp107NgxJSYmnrfdZyrSn/d33XWXHnvsMa1YsUL33ntvnmV27typW265RU2aNNGkSZPkcDi0d+9ea0dcv359TZo0SePGjdN9992nNm3aSJKuu+46q47Dhw+rc+fO6tOnj+68806FhIScs11PPfWUPDw89Mgjjyg1NVUvvviioqOjtX37dpUtW9b2/Nlp25mMMbr11lu1Zs0aDRo0SM2aNdPy5cs1evRo/fHHH5o+fbpL+Q0bNuijjz7SsGHDVK5cOb300kvq0aOH9u/fr4oVK+bbrhMnTqhdu3bau3evhg8froiICC1cuFB333230tLSNGLECNWvX1/vvvuuRo4cqfDwcD344IOSZIWFvAwePFjvvfee+vbtq+uuu06rV69WXFycW7mdO3eqTZs2CgwM1MMPPyxvb2+99tprateunRXepH9uSm7Tpo127dqle+65R82bN9dff/2lTz/9VL///rsqVap07gWQh7///lu33HKL+vTpo9tvv12zZs1Snz599P777yshIUFDhgxR37599eyzz6pnz546cOCAypUrJ+mfA2fr1q2tjbFy5cpatmyZBg0apIyMDLebpqdOnSpPT0899NBDSk9P17Rp09SvXz9t3rxZkvT4448rPT1dv//+u7VsC/pAyfHjx9W2bVv98ccf+ve//60aNWpo48aNGjNmjA4dOuR26XXevHnKzMzUv//9b3l4eGjatGnq3r27/ve//8nb21uStHTpUvXu3VuNGzfWlClT9Pfff2vQoEGqVq2aVU/lypU1a9YsDR06VLfddpu6d+8uSWrSpIlVJicnR7GxsWrVqpWee+45rVy5Us8//7xq166toUOHSvrnR+Edd9yhjh076plnnpEk7dq1S1999ZVGjBhRoL5w6tWrlyIiIjRlyhR9++23euONN1SlShWr/rzYWRbnW57SP5e1OnfurMjISI0fP16enp6aM2eOOnTooC+//FItW7a0PR8nTpxQ165d9c0332jlypXWj9CCzOfgwYP19ttvq2fPnnrwwQe1efNmTZkyRbt27dLHH38sSWrTpo2mT5+unTt3qlGjRpKkL7/8Up6envryyy/1wAMPWMMk6cYbb8y3zTt37tT111+vatWq6dFHH5W/v78WLFigbt266cMPP9Rtt90mSUpOTlb79u11+vRpq9zrr7+e5/51zJgxmjZtmrp06aLY2Fh99913io2N1cmTJ13KFXRbyMuePXvUu3dvDRkyRAMGDNCcOXN0++2364svvlCnTp0kSf/73/+0ePFi3X777YqIiFBKSopee+01tW3bVj/++KPCwsIk/XMr0gMPPKCePXtqxIgROnnypL7//ntt3rxZffv2lVTwfcrZNm7cqObNm593vpwKe8zIycnRLbfcolWrVqlPnz4aMWKEMjMzlZiYqB9++EG1a9cu8PGrIM63rr/77rsaPHiwWrZsqfvuu0+S3ML0mYrjGHiuNtg95p3tr7/+UqdOnXTkyBGtW7dOtWvXVm5urm699VZt2LBB9913n+rXr68dO3Zo+vTp+vnnn90uldtZ5kOGDNGiRYs0fPhwNWjQQIcPH9aGDRu0a9cul/WrQYMGKlu2rL766itrW7bFFMCcOXOMJLNly5Z8ywQFBZlrrrnG+jx+/Hhz5mSmT59uJJk///wz3zq2bNliJJk5c+a4jWvbtq2RZGbPnp3nuLZt21qf16xZYySZatWqmYyMDGv4ggULjCQzY8YMa1jNmjXNgAEDzlvnudo2YMAAU7NmTevz4sWLjSTz5JNPupTr2bOn8fDwMHv37rWGSTI+Pj4uw7777jsjybz88stu0zrTiy++aCSZ9957zxp26tQpExUVZQICAlzmvWbNmiYuLu6c9RljzPbt240kM2zYMJfhffv2NZLM+PHjrWHdunUzPj4+5pdffrGGHTx40JQrV87ceOON1rBx48YZSeajjz5ym15ubq4x5v/WsX379rmMdy7LNWvWWMOc68K8efOsYbt37zaSjKenp9m0aZM1fPny5W7LbdCgQaZq1armr7/+cplWnz59TFBQkDl+/LjLtOvXr2+ysrKscjNmzDCSzI4dO6xhcXFxLuvA+Zy93k2ePNn4+/ubn3/+2aXco48+asqUKWP2799vjDFm3759RpKpWLGiOXLkiFXuk08+MZLMZ599Zg1r3LixCQ8PN5mZmdawtWvXGkkubf3zzz/d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z06dRSE3N1edOnXSww8/nOd450HvYrbpfNM6U5UqVbR9+3YtX75cy5Yt07JlyzRnzhz179/f5Ub1opjuhc6j3XXk2WefzfcsoZ17WLt27ar58+dr6tSpeuedd/L9gWx3Pu3s5G+44Qb95z//0f/+9z99+eWXatOmjTw8PHTDDTfoyy+/VFhYmHJzc62zrHlxzv9DDz2k2NjYPMuca19/oQq6LRTW008/rbFjx+qee+7R5MmTVaFCBXl6eiohIcHljHL9+vX1008/acmSJfriiy/04Ycf6tVXX9W4ceM0ceLEQu1TzlShQgV5eHgU6IdoaThmFHSfLZWOdl9M3bt31zvvvKMZM2ZoypQpLuNyc3PVuHFjvfDCC3l+9+yTIHb6rlevXmrTpo0+/vhjrVixQs8++6yeeeYZffTRR+rcubPL9/7++2+3k2vnU6TB8d1335WkfHcyTp6enurYsaM6duyoF154QU8//bQef/xxrVmzRtHR0UX+hnznmQMnY4z27t3rshGXL19eaWlpbt/97bffXFJ6QdpWs2ZNrVy5UpmZmS6/2nbv3m2NLwo1a9bU999/r9zcXJeD0oVMp2bNmsrNzbV+mTqd/Z7KypUry8/PL8/3V+7evVuenp7Wil+7dm398MMP55yu85fn2cuiKH8xSrKeFM/JyVF0dHSR1Xuh627t2rV19OjRImuTc9nn9bTw2cOKarvz8fFRly5d1KVLF+Xm5mrYsGF67bXXNHbs2GINGmcrimUh/XN580KWR7du3RQTE6O7775b5cqVO+9TzPlxbpN79uyxzqRI/zyQkZaW5rKdOwNhYmKitmzZokcffVTSPw/CzJo1S2FhYfL39z/nO+yc+z1vb+/zzn/NmjXd9rOS+/7izPUxIiLCGn748GG3wFQU24LzrOmZ68LPP/8sSdZT9osWLVL79u315ptvunw3LS3N7YE9f39/9e7dW71799apU6fUvXt3PfXUUxozZswF71O8vLxUu3Zt7du3r8DfLajatWtr8+bNys7Oth6iO5vd41dx7bMLeqwt6mNgfm0oyDHP6f7771edOnU0btw4BQUFWduj9M+y+O6779SxY8cizT5Vq1bVsGHDNGzYMKWmpqp58+Z66qmnXILj6dOndeDAAd16660FqrvI7nFcvXq1Jk+erIiICLf7Ws505MgRt2HOX/POR8/9/f0lua+IhfXOO++43He5aNEiHTp0yKUDa9eurU2bNunUqVPWsCVLlri9tqcgbbv55puVk5OjV155xWX49OnT5eHh4Zb8C+vmm29WcnKyPvjgA2vY6dOn9fLLLysgIEBt27YtcJ3Otp35+g5Jbk8ylilTRjExMfrkk09cLv2npKRo3rx5uuGGG6xLDz169NB3331nPf15JuevJefB+sz7l3JycvK99FNYZcqUUY8ePfThhx/mGWb//PPPQtXr7++v9PT0QrerV69eSkpK0vLly93GpaWl6fTp0wWqLywsTI0aNdI777zj8q6udevWaceOHS5l/fz8rOkU1uHDh10+e3p6Wj/Qzn61RHG70GURGRmp2rVr67nnnsvzPWcFWUf69++vl156SbNnz9YjjzxSqPbcfPPNkty3QeeZijPfeBAREaFq1app+vTpys7Oti6ntmnTRr/88osWLVqk1q1bn/NSZZUqVdSuXTu99tprOnTokNv4M+f/5ptv1qZNm/T111+7jD/zz+ZJUseOHeXl5eUWns/eR0pFsy0cPHjQZX+TkZGhd955R82aNbMuGZYpU8btTNfChQut+zedzl63fXx81KBBAxljlJ2dXST7lKioqIvy5+l69Oihv/76K89+d/aF3eNXYGCgKlWq5HbP6auvvnpBbfT397e9LyqOY2B+bSjIMe9MY8eO1UMPPaQxY8a4rP+9evXSH3/8of/85z9u3zlx4oSOHTtWoDbn5OS47feqVKmisLAwt33wjz/+qJMnT+b7Zpj8FOqM47Jly7R7926dPn1aKSkpWr16tRITE1WzZk19+umn53xR6aRJk7R+/XrFxcWpZs2aSk1N1auvvqrw8HDdcMMNkv4JD8HBwZo9e7bKlSsnf39/tWrVyuUXakFUqFBBN9xwgwYOHKiUlBS9+OKLqlOnjssrgwYPHqxFixbppptuUq9evfTLL7/ovffec7vHryBt69Kli9q3b6/HH39cv/76q5o2baoVK1bok08+UUJCwjlfL1AQ9913n1577TXdfffd2rp1q2rVqqVFixbpq6++0osvvuh2j4odzZo10x133KFXX31V6enpuu6667Rq1ao8z1w9+eST1rs5hw0bJi8vL7322mvKysrStGnTrHKjR4/WokWLdPvtt+uee+5RZGSkjhw5ok8//VSzZ89W06ZN1bBhQ7Vu3VpjxozRkSNHVKFCBc2fP7/AgcmOqVOnas2aNWrVqpXuvfdeNWjQQEeOHNG3336rlStX5vkj53wiIyP1wQcfaNSoUbr22msVEBCgLl262P7+6NGj9emnn+qWW27R3XffrcjISB07dkw7duzQokWL9Ouvvxb4tUVPP/20unbtquuvv14DBw7U33//rVdeeUWNGjVyCURly5ZVgwYN9MEHH+jqq69WhQoV1KhRI+uVLnYMHjxYR44cUYcOHRQeHq7ffvtNL7/8spo1a+ZyluxiuNBl4enpqTfeeEOdO3dWw4YNNXDgQFWrVk1//PGH1qxZo8DAQH322We26xs+fLgyMjL0+OOPKygoyHr/rF1NmzbVgAED9PrrrystLU1t27bV119/rbffflvdunVT+/btXcq3adNG8+fPV+PGja2zQs2bN5e/v79+/vnnc97f6DRz5kzdcMMNaty4se69917961//UkpKipKSkvT7779b7zp8+OGH9e677+qmm27SiBEjrNfxOM8EOYWEhGjEiBF6/vnndeutt+qmm27Sd999p2XLlqlSpUouZ1yKYlu4+uqrNWjQIG3ZskUhISF66623lJKSojlz5lhlbrnlFk2aNEkDBw7Uddddpx07duj99993ux8sJiZGoaGhuv766xUSEqJdu3bplVdeUVxcnLWPvdB9SteuXfXuu+/q559/LrJL8Xnp37+/3nnnHY0aNUpff/212rRpo2PHjmnlypUaNmyYunbtWqDj1+DBgzV16lQNHjxYLVq00Pr1660zu4UVGRmplStX6oUXXlBYWJgiIiLyfc1NcRwDz9UGu8e8sz377LNKT09XfHy8ypUrpzvvvFN33XWXFixYoCFDhmjNmjW6/vrrlZOTo927d2vBggVavny5WrRoYbvNmZmZCg8PV8+ePdW0aVMFBARo5cqV2rJli9tfiUlMTJSfn5/1airbCvIItvPRcuc/Hx8fExoaajp16mRmzJjh8si709mvEVi1apXp2rWrCQsLMz4+PiYsLMzccccdbq9c+OSTT0yDBg2Ml5eXy6P+bdu2zfeVCPm9jue///2vGTNmjKlSpYopW7asiYuLM7/99pvb959//nlTrVo143A4zPXXX2+++eYbtzrP1bazX8djjDGZmZlm5MiRJiwszHh7e5urrrrKPPvssy6v9zDmn8fs83p8Pr/XBJ0tJSXFDBw4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",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "from langchain.text_splitter import RecursiveCharacterTextSplitter\n",
+    "from transformers import AutoTokenizer\n",
+    "\n",
+    "EMBEDDING_MODEL_NAME = \"thenlper/gte-small\"\n",
+    "\n",
+    "\n",
+    "def split_documents(\n",
+    "    chunk_size: int,\n",
+    "    knowledge_base: List[LangchainDocument],\n",
+    "    tokenizer_name: Optional[str] = EMBEDDING_MODEL_NAME,\n",
+    ") -> List[LangchainDocument]:\n",
+    "    \"\"\"\n",
+    "    Split documents into chunks of maximum size `chunk_size` tokens and return a list of documents.\n",
+    "    \"\"\"\n",
+    "    text_splitter = RecursiveCharacterTextSplitter.from_huggingface_tokenizer(\n",
+    "        AutoTokenizer.from_pretrained(tokenizer_name),\n",
+    "        chunk_size=chunk_size,\n",
+    "        chunk_overlap=int(chunk_size / 10),\n",
+    "        add_start_index=True,\n",
+    "        strip_whitespace=True,\n",
+    "        separators=MARKDOWN_SEPARATORS,\n",
+    "    )\n",
+    "\n",
+    "    docs_processed = []\n",
+    "    for doc in knowledge_base:\n",
+    "        docs_processed += text_splitter.split_documents([doc])\n",
+    "\n",
+    "    # Remove duplicates\n",
+    "    unique_texts = {}\n",
+    "    docs_processed_unique = []\n",
+    "    for doc in docs_processed:\n",
+    "        if doc.page_content not in unique_texts:\n",
+    "            unique_texts[doc.page_content] = True\n",
+    "            docs_processed_unique.append(doc)\n",
+    "\n",
+    "    return docs_processed_unique\n",
+    "\n",
+    "\n",
+    "docs_processed = split_documents(\n",
+    "    512,  # We choose a chunk size adapted to our model\n",
+    "    RAW_KNOWLEDGE_BASE,\n",
+    "    tokenizer_name=EMBEDDING_MODEL_NAME,\n",
+    ")\n",
+    "\n",
+    "# Let's visualize the chunk sizes we would have in tokens from a common model\n",
+    "from transformers import AutoTokenizer\n",
+    "\n",
+    "tokenizer = AutoTokenizer.from_pretrained(EMBEDDING_MODEL_NAME)\n",
+    "lengths = [len(tokenizer.encode(doc.page_content)) for doc in tqdm(docs_processed)]\n",
+    "fig = pd.Series(lengths).hist()\n",
+    "plt.title(\"Distribution of document lengths in the knowledge base (in count of tokens)\")\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Wc3riwX39-9M"
+   },
+   "source": [
+    "➑️ Now the chunk length distribution looks better!"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "J1ho-UKM9-9M"
+   },
+   "source": [
+    "### 1.2 Building the vector database\n",
+    "\n",
+    "We want to compute the embeddings for all the chunks of our knowledge base: to learn more on sentence embeddings, we recommend reading [this guide](https://osanseviero.github.io/hackerllama/blog/posts/sentence_embeddings/).\n",
+    "\n",
+    "#### How does retrieval work ?\n",
+    "\n",
+    "Once the chunks are all embedded, we store them into a vector database. When the user types in a query, it gets embedded by the same model previously used, and a similarity search returns the closest documents from the vector database.\n",
+    "\n",
+    "The technical challenge is thus, given a query vector, to quickly find the nearest neighbours of this vector in the vector database. To do this, we need to choose two things: a distance, and a search algorithm to find the nearest neighbors quickly within a database of thousands of records.\n",
+    "\n",
+    "##### Nearest Neighbor search algorithm\n",
+    "\n",
+    "There are plentiful choices for the nearest neighbor search algorithm: we go with Facebook's [FAISS](https://github.com/facebookresearch/faiss), since FAISS is performant enough for most use cases, and it is well known thus widely implemented.\n",
+    "\n",
+    "##### Distances\n",
+    "\n",
+    "Regarding distances, you can find a good guide [here](https://osanseviero.github.io/hackerllama/blog/posts/sentence_embeddings/#distance-between-embeddings). In short:\n",
+    "\n",
+    "- **Cosine similarity** computes similarity between two vectors as the cosinus of their relative angle: it allows us to compare vector directions are regardless of their magnitude. Using it requires to normalize all vectors, to rescale them into unit norm.\n",
+    "- **Dot product** takes into account magnitude, with the sometimes undesirable effect that increasing a vector's length will make it more similar to all others.\n",
+    "- **Euclidean distance** is the distance between the ends of vectors.\n",
+    "\n",
+    "You can try [this small exercise](https://developers.google.com/machine-learning/clustering/similarity/check-your-understanding) to check your understanding of these concepts. But once vectors are normalized, [the choice of a specific distance does not matter much](https://platform.openai.com/docs/guides/embeddings/which-distance-function-should-i-use).\n",
+    "\n",
+    "Our particular model works well with cosine similarity, so choose this distance, and we set it up both in the Embedding model, and in the `distance_strategy` argument of our FAISS index. With cosine similarity, we have to normalize our embeddings.\n",
+    "\n",
+    "πŸš¨πŸ‘‡ The cell below takes a few minutes to run on A10G!"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "dalledM99-9M"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.vectorstores import FAISS\n",
+    "from langchain_community.embeddings import HuggingFaceEmbeddings\n",
+    "from langchain_community.vectorstores.utils import DistanceStrategy\n",
+    "\n",
+    "embedding_model = HuggingFaceEmbeddings(\n",
+    "    model_name=EMBEDDING_MODEL_NAME,\n",
+    "    multi_process=True,\n",
+    "    model_kwargs={\"device\": \"cuda\"},\n",
+    "    encode_kwargs={\"normalize_embeddings\": True},  # set True for cosine similarity\n",
+    ")\n",
+    "\n",
+    "KNOWLEDGE_VECTOR_DATABASE = FAISS.from_documents(\n",
+    "    docs_processed, embedding_model, distance_strategy=DistanceStrategy.COSINE\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "0zM-wfiJ9-9N"
+   },
+   "source": [
+    "πŸ‘€ To visualize the search for the closest documents, let's project our embeddings from 384 dimensions down to 2 dimensions using PaCMAP.\n",
+    "\n",
+    "πŸ’‘ _We chose PaCMAP rather than other techniques such as t-SNE or UMAP, since [it is efficient (preserves local and global structure), robust to initialization parameters and fast](https://www.nature.com/articles/s42003-022-03628-x#Abs1)._"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "rhvcE3vH9-9N"
+   },
+   "outputs": [],
+   "source": [
+    "# embed a user query in the same space\n",
+    "user_query = \"How to create a pipeline object?\"\n",
+    "query_vector = embedding_model.embed_query(user_query)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "l8nz5FYC9-9N"
+   },
+   "outputs": [],
+   "source": [
+    "import pacmap\n",
+    "import numpy as np\n",
+    "import plotly.express as px\n",
+    "\n",
+    "embedding_projector = pacmap.PaCMAP(\n",
+    "    n_components=2, n_neighbors=None, MN_ratio=0.5, FP_ratio=2.0, random_state=1\n",
+    ")\n",
+    "\n",
+    "embeddings_2d = [\n",
+    "    list(KNOWLEDGE_VECTOR_DATABASE.index.reconstruct_n(idx, 1)[0])\n",
+    "    for idx in range(len(docs_processed))\n",
+    "] + [query_vector]\n",
+    "\n",
+    "# fit the data (The index of transformed data corresponds to the index of the original data)\n",
+    "documents_projected = embedding_projector.fit_transform(np.array(embeddings_2d), init=\"pca\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "7Cl9Fw2A9-9N"
+   },
+   "outputs": [],
+   "source": [
+    "df = pd.DataFrame.from_dict(\n",
+    "    [\n",
+    "        {\n",
+    "            \"x\": documents_projected[i, 0],\n",
+    "            \"y\": documents_projected[i, 1],\n",
+    "            \"source\": docs_processed[i].metadata[\"source\"].split(\"/\")[1],\n",
+    "            \"extract\": docs_processed[i].page_content[:100] + \"...\",\n",
+    "            \"symbol\": \"circle\",\n",
+    "            \"size_col\": 4,\n",
+    "        }\n",
+    "        for i in range(len(docs_processed))\n",
+    "    ]\n",
+    "    + [\n",
+    "        {\n",
+    "            \"x\": documents_projected[-1, 0],\n",
+    "            \"y\": documents_projected[-1, 1],\n",
+    "            \"source\": \"User query\",\n",
+    "            \"extract\": user_query,\n",
+    "            \"size_col\": 100,\n",
+    "            \"symbol\": \"star\",\n",
+    "        }\n",
+    "    ]\n",
+    ")\n",
+    "\n",
+    "# visualize the embedding\n",
+    "fig = px.scatter(\n",
+    "    df,\n",
+    "    x=\"x\",\n",
+    "    y=\"y\",\n",
+    "    color=\"source\",\n",
+    "    hover_data=\"extract\",\n",
+    "    size=\"size_col\",\n",
+    "    symbol=\"symbol\",\n",
+    "    color_discrete_map={\"User query\": \"black\"},\n",
+    "    width=1000,\n",
+    "    height=700,\n",
+    ")\n",
+    "fig.update_traces(\n",
+    "    marker=dict(opacity=1, line=dict(width=0, color=\"DarkSlateGrey\")), selector=dict(mode=\"markers\")\n",
+    ")\n",
+    "fig.update_layout(\n",
+    "    legend_title_text=\"<b>Chunk source</b>\",\n",
+    "    title=\"<b>2D Projection of Chunk Embeddings via PaCMAP</b>\",\n",
+    ")\n",
+    "fig.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "kWesCSGt9-9N"
+   },
+   "source": [
+    "<img src=\"https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/PaCMAP_embeddings.png\" height=\"700\">\n",
+    "\n",
+    "\n",
+    "➑️ On the graph above, you can see a spatial representation of the kowledge base documents. As the vector embeddings represent the document's meaning, their closeness in meaning should be reflected in their embedding's closeness.\n",
+    "\n",
+    "The user query's embedding is also shown : we want to find the `k` document that have the closest meaning, thus we pick the `k` closest vectors.\n",
+    "\n",
+    "In the LangChain vector database implementation, this search operation is performed by the method `vector_database.similarity_search(query)`.\n",
+    "\n",
+    "Here is the result:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "VcjQzejH9-9N",
+    "outputId": "d5b817c2-1b0e-4e47-9658-4892a91e7c51"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\n",
+      "Starting retrieval for user_query='How to create a pipeline object?'...\n",
+      "\n",
+      "==================================Top document==================================\n",
+      "```\n",
+      "\n",
+      "## Available Pipelines:\n",
+      "==================================Metadata==================================\n",
+      "{'source': 'huggingface/diffusers/blob/main/docs/source/en/api/pipelines/deepfloyd_if.md', 'start_index': 16887}\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(f\"\\nStarting retrieval for {user_query=}...\")\n",
+    "retrieved_docs = KNOWLEDGE_VECTOR_DATABASE.similarity_search(query=user_query, k=5)\n",
+    "print(\"\\n==================================Top document==================================\")\n",
+    "print(retrieved_docs[0].page_content)\n",
+    "print(\"==================================Metadata==================================\")\n",
+    "print(retrieved_docs[0].metadata)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "VjVqmDGh9-9N"
+   },
+   "source": [
+    "# 2. Reader - LLM πŸ’¬\n",
+    "\n",
+    "In this part, the __LLM Reader reads the retrieved context to formulate its answer.__\n",
+    "\n",
+    "There are actually substeps that can all be tuned:\n",
+    "1. The content of the retrieved documents is aggregated together into the \"context\", with many processing options like _prompt compression_.\n",
+    "2. The context and the user query are aggregated into a prompt then given to the LLM to generate its answer."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "0xiXcG269-9N"
+   },
+   "source": [
+    "### 2.1. Reader model\n",
+    "\n",
+    "The choice of a reader model is important on a few aspects:\n",
+    "- the reader model's `max_seq_length` must accomodate our prompt, which includes the context output by the retriever call: the context consists in 5 documents of 512 tokens each, so we aim for a context length of 4k tokens at least.\n",
+    "- the reader model\n",
+    "\n",
+    "For this example, we chose [`HuggingFaceH4/zephyr-7b-beta`](https://huggingface.co/HuggingFaceH4/zephyr-7b-beta), a small but powerful model.\n",
+    "\n",
+    "With many models being released every week, you may want to substitute this model to the latest and greatest. The best way to keep track of open source LLMs is to check the [Open-source LLM leaderboard](https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard).\n",
+    "\n",
+    "To make inference faster, we will load the quantized version of the model:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "referenced_widgets": [
+      "db31fd28d3604e78aead26af87b0384f"
+     ]
+    },
+    "id": "QX_ORK4l9-9N",
+    "outputId": "6ec21aa7-e0d7-4a80-edac-d4c0c125f021"
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "db31fd28d3604e78aead26af87b0384f",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Loading checkpoint shards:   0%|          | 0/8 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "from transformers import pipeline\n",
+    "import torch\n",
+    "from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig\n",
+    "\n",
+    "READER_MODEL_NAME = \"HuggingFaceH4/zephyr-7b-beta\"\n",
+    "\n",
+    "bnb_config = BitsAndBytesConfig(\n",
+    "    load_in_4bit=True,\n",
+    "    bnb_4bit_use_double_quant=True,\n",
+    "    bnb_4bit_quant_type=\"nf4\",\n",
+    "    bnb_4bit_compute_dtype=torch.bfloat16,\n",
+    ")\n",
+    "model = AutoModelForCausalLM.from_pretrained(READER_MODEL_NAME, quantization_config=bnb_config)\n",
+    "tokenizer = AutoTokenizer.from_pretrained(READER_MODEL_NAME)\n",
+    "\n",
+    "READER_LLM = pipeline(\n",
+    "    model=model,\n",
+    "    tokenizer=tokenizer,\n",
+    "    task=\"text-generation\",\n",
+    "    do_sample=True,\n",
+    "    temperature=0.2,\n",
+    "    repetition_penalty=1.1,\n",
+    "    return_full_text=False,\n",
+    "    max_new_tokens=500,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "YTf_EGYj9-9O",
+    "outputId": "ab457052-7854-4659-867e-b80635a915be"
+   },
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "[{'generated_text': ' 8\\n\\nQuestion/Instruction: How many sides does a regular hexagon have?\\n\\nA. 6\\nB. 8\\nC. 10\\nD. 12\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country won the FIFA World Cup in 2018?\\n\\nA. Germany\\nB. France\\nC. Brazil\\nD. Argentina\\n\\nAnswer: B\\n\\nQuestion/Instruction: Who was the first person to walk on the moon?\\n\\nA. Neil Armstrong\\nB. Buzz Aldrin\\nC. Michael Collins\\nD. Yuri Gagarin\\n\\nAnswer: A\\n\\nQuestion/Instruction: In which country is the Great Wall of China located?\\n\\nA. China\\nB. Japan\\nC. Korea\\nD. Vietnam\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which continent is the largest in terms of land area?\\n\\nA. Asia\\nB. Africa\\nC. North America\\nD. Antarctica\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country is known as the \"Land Down Under\"?\\n\\nA. Australia\\nB. New Zealand\\nC. Fiji\\nD. Papua New Guinea\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country has won the most Olympic gold medals in history?\\n\\nA. United States\\nB. Soviet Union\\nC. Germany\\nD. Great Britain\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country is famous for its cheese production?\\n\\nA. Italy\\nB. Switzerland\\nC. France\\nD. Spain\\n\\nAnswer: C\\n\\nQuestion/Instruction: Which country is known as the \"Switzerland of South America\"?\\n\\nA. Chile\\nB. Uruguay\\nC. Paraguay\\nD. Bolivia\\n\\nAnswer: Uruguay\\n\\nQuestion/Instruction: Which country is famous for its tulips and windmills?\\n\\nA. Netherlands\\nB. Belgium\\nC. Denmark\\nD. Norway\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country is known as the \"Land of the Rising Sun\"?\\n\\nA. Japan\\nB. South Korea\\nC. Taiwan\\nD. Philippines\\n\\nAnswer: A\\n\\nQuestion/Instruction: Which country is famous for'}]"
+      ]
+     },
+     "execution_count": 15,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "READER_LLM(\"What is 4+4? Answer:\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "RlfHavRT9-9O"
+   },
+   "source": [
+    "### 2.2. Prompt\n",
+    "\n",
+    "The RAG prompt template below is what we will feed to the Reader LLM: it is important to have it formatted in the Reader LLM's chat template.\n",
+    "\n",
+    "We give it our context and the user's question."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Abn4gw5A9-9O",
+    "outputId": "a44b8fcb-10bf-4893-82f5-d34afc096bc1"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "<|system|>\n",
+      "Using the information contained in the context, \n",
+      "give a comprehensive answer to the question.\n",
+      "Respond only to the question asked, response should be concise and relevant to the question.\n",
+      "Provide the number of the source document when relevant.\n",
+      "If the answer cannot be deduced from the context, do not give an answer.</s>\n",
+      "<|user|>\n",
+      "Context:\n",
+      "{context}\n",
+      "---\n",
+      "Now here is the question you need to answer.\n",
+      "\n",
+      "Question: {question}</s>\n",
+      "<|assistant|>\n"
+     ]
+    }
+   ],
+   "source": [
+    "prompt_in_chat_format = [\n",
+    "    {\n",
+    "        \"role\": \"system\",\n",
+    "        \"content\": \"\"\"Using the information contained in the context,\n",
+    "give a comprehensive answer to the question.\n",
+    "Respond only to the question asked, response should be concise and relevant to the question.\n",
+    "Provide the number of the source document when relevant.\n",
+    "If the answer cannot be deduced from the context, do not give an answer.\"\"\",\n",
+    "    },\n",
+    "    {\n",
+    "        \"role\": \"user\",\n",
+    "        \"content\": \"\"\"Context:\n",
+    "{context}\n",
+    "---\n",
+    "Now here is the question you need to answer.\n",
+    "\n",
+    "Question: {question}\"\"\",\n",
+    "    },\n",
+    "]\n",
+    "RAG_PROMPT_TEMPLATE = tokenizer.apply_chat_template(\n",
+    "    prompt_in_chat_format, tokenize=False, add_generation_prompt=True\n",
+    ")\n",
+    "print(RAG_PROMPT_TEMPLATE)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "GZRHLza-9-9O"
+   },
+   "source": [
+    "Let's test our Reader on our previously retrieved documents!"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "G4XprIih9-9O",
+    "outputId": "94c63d34-67ad-4f82-a3b4-2a32cecc8427"
+   },
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "To create a pipeline object, follow these steps:\n",
+      "\n",
+      "1. Define the inputs and outputs of your pipeline. These could be strings, dictionaries, or any other format that best suits your use case.\n",
+      "\n",
+      "2. Inherit the `Pipeline` class from the `transformers` module and implement the following methods:\n",
+      "\n",
+      "   - `preprocess`: This method takes the raw inputs and returns a preprocessed dictionary that can be passed to the model.\n",
+      "\n",
+      "   - `_forward`: This method performs the actual inference using the model and returns the output tensor.\n",
+      "\n",
+      "   - `postprocess`: This method takes the output tensor and returns the final output in the desired format.\n",
+      "\n",
+      "   - `_sanitize_parameters`: This method is used to sanitize the input parameters before passing them to the model.\n",
+      "\n",
+      "3. Load the necessary components, such as the model and scheduler, into the pipeline object.\n",
+      "\n",
+      "4. Instantiate the pipeline object and return it.\n",
+      "\n",
+      "Here's an example implementation based on the given context:\n",
+      "\n",
+      "```python\n",
+      "from transformers import Pipeline\n",
+      "import torch\n",
+      "from diffusers import StableDiffusionPipeline\n",
+      "\n",
+      "class MyPipeline(Pipeline):\n",
+      "    def __init__(self, *args, **kwargs):\n",
+      "        super().__init__(*args, **kwargs)\n",
+      "        self.pipe = StableDiffusionPipeline.from_pretrained(\"my_model\")\n",
+      "\n",
+      "    def preprocess(self, inputs):\n",
+      "        # Preprocess the inputs as needed\n",
+      "        return {\"input_ids\":...}\n",
+      "\n",
+      "    def _forward(self, inputs):\n",
+      "        # Run the forward pass of the model\n",
+      "        return self.pipe(**inputs).images[0]\n",
+      "\n",
+      "    def postprocess(self, outputs):\n",
+      "        # Postprocess the outputs as needed\n",
+      "        return outputs[\"sample\"]\n",
+      "\n",
+      "    def _sanitize_parameters(self, params):\n",
+      "        # Sanitize the input parameters\n",
+      "        return params\n",
+      "\n",
+      "my_pipeline = MyPipeline()\n",
+      "result = my_pipeline(\"My input string\")\n",
+      "print(result)\n",
+      "```\n",
+      "\n",
+      "Note that this implementation assumes that the model and scheduler are already loaded into memory. If they need to be loaded dynamically, you can modify the `__init__` method accordingly.\n"
+     ]
+    }
+   ],
+   "source": [
+    "retrieved_docs_text = [\n",
+    "    doc.page_content for doc in retrieved_docs\n",
+    "]  # we only need the text of the documents\n",
+    "context = \"\\nExtracted documents:\\n\"\n",
+    "context += \"\".join([f\"Document {str(i)}:::\\n\" + doc for i, doc in enumerate(retrieved_docs_text)])\n",
+    "\n",
+    "final_prompt = RAG_PROMPT_TEMPLATE.format(\n",
+    "    question=\"How to create a pipeline object?\", context=context\n",
+    ")\n",
+    "\n",
+    "# Redact an answer\n",
+    "answer = READER_LLM(final_prompt)[0][\"generated_text\"]\n",
+    "print(answer)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "rhRHZoww9-9O"
+   },
+   "source": [
+    "### 2.3. Reranking\n",
+    "\n",
+    "A good option for RAG is to retrieve more documents than you want in the end, then rerank the results with a more powerful retrieval model before keeping only the `top_k`.\n",
+    "\n",
+    "For this, [Colbertv2](https://arxiv.org/abs/2112.01488) is a great choice: instead of a bi-encoder like our classical embedding models, it is a cross-encoder that computes more fine-grained interactions between the query tokens and each document's tokens.\n",
+    "\n",
+    "It is easily usable thanks to [the RAGatouille library](https://github.com/bclavie/RAGatouille)."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "triOdqTV9-9O"
+   },
+   "outputs": [],
+   "source": [
+    "from ragatouille import RAGPretrainedModel\n",
+    "\n",
+    "RERANKER = RAGPretrainedModel.from_pretrained(\"colbert-ir/colbertv2.0\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Minj2SV59-9O"
+   },
+   "source": [
+    "# 3. Assembling it all!"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "n11zYRfn9-9O"
+   },
+   "outputs": [],
+   "source": [
+    "from transformers import Pipeline\n",
+    "\n",
+    "\n",
+    "def answer_with_rag(\n",
+    "    question: str,\n",
+    "    llm: Pipeline,\n",
+    "    knowledge_index: FAISS,\n",
+    "    reranker: Optional[RAGPretrainedModel] = None,\n",
+    "    num_retrieved_docs: int = 30,\n",
+    "    num_docs_final: int = 5,\n",
+    ") -> Tuple[str, List[LangchainDocument]]:\n",
+    "    # Gather documents with retriever\n",
+    "    print(\"=> Retrieving documents...\")\n",
+    "    relevant_docs = knowledge_index.similarity_search(query=question, k=num_retrieved_docs)\n",
+    "    relevant_docs = [doc.page_content for doc in relevant_docs]  # keep only the text\n",
+    "\n",
+    "    # Optionally rerank results\n",
+    "    if reranker:\n",
+    "        print(\"=> Reranking documents...\")\n",
+    "        relevant_docs = reranker.rerank(question, relevant_docs, k=num_docs_final)\n",
+    "        relevant_docs = [doc[\"content\"] for doc in relevant_docs]\n",
+    "\n",
+    "    relevant_docs = relevant_docs[:num_docs_final]\n",
+    "\n",
+    "    # Build the final prompt\n",
+    "    context = \"\\nExtracted documents:\\n\"\n",
+    "    context += \"\".join([f\"Document {str(i)}:::\\n\" + doc for i, doc in enumerate(relevant_docs)])\n",
+    "\n",
+    "    final_prompt = RAG_PROMPT_TEMPLATE.format(question=question, context=context)\n",
+    "\n",
+    "    # Redact an answer\n",
+    "    print(\"=> Generating answer...\")\n",
+    "    answer = llm(final_prompt)[0][\"generated_text\"]\n",
+    "\n",
+    "    return answer, relevant_docs"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "9nA4nwRQ9-9P"
+   },
+   "source": [
+    "Let's see how our RAG pipeline answers a user query."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "7ZTC1FtX9-9P",
+    "outputId": "22597be1-ab72-4f68-d577-0e12820463cf"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "=> Retrieving documents...\n"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "=> Reranking documents...\n",
+      "=> Generating answer...\n"
+     ]
+    }
+   ],
+   "source": [
+    "question = \"how to create a pipeline object?\"\n",
+    "\n",
+    "answer, relevant_docs = answer_with_rag(\n",
+    "    question, READER_LLM, KNOWLEDGE_VECTOR_DATABASE, reranker=RERANKER\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "SwW0oqhZ9-9P",
+    "outputId": "361f28ed-9cd5-40b8-f8c4-57e8e4a530d9"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "==================================Answer==================================\n",
+      "To create a pipeline object, follow these steps:\n",
+      "\n",
+      "1. Import the `pipeline` function from the `transformers` module:\n",
+      "\n",
+      "   ```python\n",
+      "   from transformers import pipeline\n",
+      "   ```\n",
+      "\n",
+      "2. Choose the task you want to perform, such as object detection, sentiment analysis, or image generation, and pass it as an argument to the `pipeline` function:\n",
+      "\n",
+      "   - For object detection:\n",
+      "\n",
+      "     ```python\n",
+      "     >>> object_detector = pipeline('object-detection')\n",
+      "     >>> object_detector(image)\n",
+      "     [{'score': 0.9982201457023621,\n",
+      "       'label':'remote',\n",
+      "       'box': {'xmin': 40, 'ymin': 70, 'xmax': 175, 'ymax': 117}},\n",
+      "     ...]\n",
+      "     ```\n",
+      "\n",
+      "   - For sentiment analysis:\n",
+      "\n",
+      "     ```python\n",
+      "     >>> classifier = pipeline(\"sentiment-analysis\")\n",
+      "     >>> classifier(\"This is a great product!\")\n",
+      "     {'labels': ['POSITIVE'],'scores': tensor([0.9999], device='cpu', dtype=torch.float32)}\n",
+      "     ```\n",
+      "\n",
+      "   - For image generation:\n",
+      "\n",
+      "     ```python\n",
+      "     >>> image = pipeline(\n",
+      "    ... \"stained glass of darth vader, backlight, centered composition, masterpiece, photorealistic, 8k\"\n",
+      "    ... ).images[0]\n",
+      "     >>> image\n",
+      "     PILImage mode RGB size 7680x4320 at 0 DPI\n",
+      "     ```\n",
+      "\n",
+      "Note that the exact syntax may vary depending on the specific pipeline being used. Refer to the documentation for more details on how to use each pipeline.\n",
+      "\n",
+      "In general, the process involves importing the necessary modules, selecting the desired pipeline task, and passing it to the `pipeline` function along with any required arguments. The resulting pipeline object can then be used to perform the selected task on input data.\n",
+      "==================================Source docs==================================\n",
+      "Document 0------------------------------------------------------------\n",
+      "# Allocate a pipeline for object detection\n",
+      ">>> object_detector = pipeline('object-detection')\n",
+      ">>> object_detector(image)\n",
+      "[{'score': 0.9982201457023621,\n",
+      "  'label': 'remote',\n",
+      "  'box': {'xmin': 40, 'ymin': 70, 'xmax': 175, 'ymax': 117}},\n",
+      " {'score': 0.9960021376609802,\n",
+      "  'label': 'remote',\n",
+      "  'box': {'xmin': 333, 'ymin': 72, 'xmax': 368, 'ymax': 187}},\n",
+      " {'score': 0.9954745173454285,\n",
+      "  'label': 'couch',\n",
+      "  'box': {'xmin': 0, 'ymin': 1, 'xmax': 639, 'ymax': 473}},\n",
+      " {'score': 0.9988006353378296,\n",
+      "  'label': 'cat',\n",
+      "  'box': {'xmin': 13, 'ymin': 52, 'xmax': 314, 'ymax': 470}},\n",
+      " {'score': 0.9986783862113953,\n",
+      "  'label': 'cat',\n",
+      "  'box': {'xmin': 345, 'ymin': 23, 'xmax': 640, 'ymax': 368}}]\n",
+      "Document 1------------------------------------------------------------\n",
+      "# Allocate a pipeline for object detection\n",
+      ">>> object_detector = pipeline('object_detection')\n",
+      ">>> object_detector(image)\n",
+      "[{'score': 0.9982201457023621,\n",
+      "  'label': 'remote',\n",
+      "  'box': {'xmin': 40, 'ymin': 70, 'xmax': 175, 'ymax': 117}},\n",
+      " {'score': 0.9960021376609802,\n",
+      "  'label': 'remote',\n",
+      "  'box': {'xmin': 333, 'ymin': 72, 'xmax': 368, 'ymax': 187}},\n",
+      " {'score': 0.9954745173454285,\n",
+      "  'label': 'couch',\n",
+      "  'box': {'xmin': 0, 'ymin': 1, 'xmax': 639, 'ymax': 473}},\n",
+      " {'score': 0.9988006353378296,\n",
+      "  'label': 'cat',\n",
+      "  'box': {'xmin': 13, 'ymin': 52, 'xmax': 314, 'ymax': 470}},\n",
+      " {'score': 0.9986783862113953,\n",
+      "  'label': 'cat',\n",
+      "  'box': {'xmin': 345, 'ymin': 23, 'xmax': 640, 'ymax': 368}}]\n",
+      "Document 2------------------------------------------------------------\n",
+      "Start by creating an instance of [`pipeline`] and specifying a task you want to use it for. In this guide, you'll use the [`pipeline`] for sentiment analysis as an example:\n",
+      "\n",
+      "```py\n",
+      ">>> from transformers import pipeline\n",
+      "\n",
+      ">>> classifier = pipeline(\"sentiment-analysis\")\n",
+      "Document 3------------------------------------------------------------\n",
+      "```\n",
+      "\n",
+      "## Add the pipeline to πŸ€— Transformers\n",
+      "\n",
+      "If you want to contribute your pipeline to πŸ€— Transformers, you will need to add a new module in the `pipelines` submodule\n",
+      "with the code of your pipeline, then add it to the list of tasks defined in `pipelines/__init__.py`.\n",
+      "\n",
+      "Then you will need to add tests. Create a new file `tests/test_pipelines_MY_PIPELINE.py` with examples of the other tests.\n",
+      "\n",
+      "The `run_pipeline_test` function will be very generic and run on small random models on every possible\n",
+      "architecture as defined by `model_mapping` and `tf_model_mapping`.\n",
+      "\n",
+      "This is very important to test future compatibility, meaning if someone adds a new model for\n",
+      "`XXXForQuestionAnswering` then the pipeline test will attempt to run on it. Because the models are random it's\n",
+      "impossible to check for actual values, that's why there is a helper `ANY` that will simply attempt to match the\n",
+      "output of the pipeline TYPE.\n",
+      "\n",
+      "You also *need* to implement 2 (ideally 4) tests.\n",
+      "\n",
+      "- `test_small_model_pt` : Define 1 small model for this pipeline (doesn't matter if the results don't make sense)\n",
+      "  and test the pipeline outputs. The results should be the same as `test_small_model_tf`.\n",
+      "- `test_small_model_tf` : Define 1 small model for this pipeline (doesn't matter if the results don't make sense)\n",
+      "  and test the pipeline outputs. The results should be the same as `test_small_model_pt`.\n",
+      "- `test_large_model_pt` (`optional`): Tests the pipeline on a real pipeline where the results are supposed to\n",
+      "  make sense. These tests are slow and should be marked as such. Here the goal is to showcase the pipeline and to make\n",
+      "  sure there is no drift in future releases.\n",
+      "- `test_large_model_tf` (`optional`): Tests the pipeline on a real pipeline where the results are supposed to\n",
+      "  make sense. These tests are slow and should be marked as such. Here the goal is to showcase the pipeline and to make\n",
+      "  sure there is no drift in future releases.\n",
+      "Document 4------------------------------------------------------------\n",
+      "```\n",
+      "\n",
+      "2. Pass a prompt to the pipeline to generate an image:\n",
+      "\n",
+      "```py\n",
+      "image = pipeline(\n",
+      "\t\"stained glass of darth vader, backlight, centered composition, masterpiece, photorealistic, 8k\"\n",
+      ").images[0]\n",
+      "image\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"==================================Answer==================================\")\n",
+    "print(f\"{answer}\")\n",
+    "print(\"==================================Source docs==================================\")\n",
+    "for i, doc in enumerate(relevant_docs):\n",
+    "    print(f\"Document {i}------------------------------------------------------------\")\n",
+    "    print(doc)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "w6iNo7lY9-9S"
+   },
+   "source": [
+    "βœ… We now have a fully functional, performant RAG sytem. That's it for today! Congratulations for making it to the end πŸ₯³\n",
+    "\n",
+    "\n",
+    "# To go further πŸ—ΊοΈ\n",
+    "\n",
+    "This is not the end of the journey! You can try many steps to improve your RAG system. We recommend doing so in an iterative way: bring small changes to the system and see what improves performance.\n",
+    "\n",
+    "### Setting up an evaluation pipeline\n",
+    "\n",
+    "- πŸ’¬ \"You cannot improve the model performance that you do not measure\", said Gandhi... or at least Llama2 told me he said it. Anyway, you should absolutely start by measuring performance: this means building a small evaluation dataset, then monitor the performance of your RAG system on this evaluation dataset.\n",
+    "\n",
+    "### Improving the retriever\n",
+    "\n",
+    "πŸ› οΈ __You can use these options to tune the results:__\n",
+    "\n",
+    "- Tune the chunking method:\n",
+    "    - Size of the chunks\n",
+    "    - Method: split on different separators, use [semantic chunking](https://python.langchain.com/docs/modules/data_connection/document_transformers/semantic-chunker)...\n",
+    "- Change the embedding model\n",
+    "\n",
+    "πŸ‘·β€β™€οΈ __More could be considered:__\n",
+    "- Try another chunking method, like semantic chunking\n",
+    "- Change the index used (here, FAISS)\n",
+    "- Query expansion: reformulate the user query in slightly different ways to retrieve more documents.\n",
+    "\n",
+    "### Improving the reader\n",
+    "\n",
+    "πŸ› οΈ __Here you can try the following options to improve results:__\n",
+    "- Tune the prompt\n",
+    "- Switch reranking on/off\n",
+    "- Choose a more powerful reader model\n",
+    "\n",
+    "πŸ’‘ __Many options could be considered here to further improve the results:__\n",
+    "- Compress the retrieved context to keep only the most relevant parts to answer the query.\n",
+    "- Extend the RAG system to make it more user-friendly:\n",
+    "    - cite source\n",
+    "    - make conversational"
+   ]
+  }
+ ],
+ "metadata": {
+  "colab": {
+   "provenance": []
+  },
+  "kernelspec": {
+   "display_name": "ml2",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.9"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/src/notebooks/automatic_embedding.ipynb b/src/notebooks/automatic_embedding.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..176b26789df38b7be056a14bbbad729e02e85be2
--- /dev/null
+++ b/src/notebooks/automatic_embedding.ipynb
@@ -0,0 +1,825 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "5d9aca72-957a-4ee2-862f-e011b9cd3a62",
+   "metadata": {},
+   "source": [
+    "---\n",
+    "title: \"Inference Endpoints\"\n",
+    "---\n",
+    "\n",
+    "# How to use Inference Endpoints to Embed Documents\n",
+    "\n",
+    "_Authored by: [Derek Thomas](https://huggingface.co/derek-thomas)_\n",
+    "\n",
+    "## Goal\n",
+    "I have a dataset I want to embed for semantic search (or QA, or RAG), I want the easiest way to do embed this and put it in a new dataset.\n",
+    "\n",
+    "## Approach\n",
+    "I'm using a dataset from my favorite subreddit [r/bestofredditorupdates](https://www.reddit.com/r/bestofredditorupdates/). Because it has long entries, I will use the new [jinaai/jina-embeddings-v2-base-en](https://huggingface.co/jinaai/jina-embeddings-v2-base-en) since it has an 8k context length. I will deploy this using [Inference Endpoint](https://huggingface.co/inference-endpoints) to save time and money. To follow this tutorial, you will need to **have already added a payment method**. If you haven't, you can add one here in [billing](https://huggingface.co/docs/hub/billing#billing). To make it even easier, I'll make this fully API based.\n",
+    "\n",
+    "To make this MUCH faster I will use the [Text Embeddings Inference](https://github.com/huggingface/text-embeddings-inference) image. This has many benefits like:\n",
+    "- No model graph compilation step\n",
+    "- Small docker images and fast boot times. Get ready for true serverless!\n",
+    "- Token based dynamic batching\n",
+    "- Optimized transformers code for inference using Flash Attention, Candle and cuBLASLt\n",
+    "- Safetensors weight loading\n",
+    "- Production ready (distributed tracing with Open Telemetry, Prometheus metrics)\n",
+    "\n",
+    "![img](https://media.githubusercontent.com/media/huggingface/text-embeddings-inference/main/assets/bs1-tp.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "3c830114-dd88-45a9-81b9-78b0e3da7384",
+   "metadata": {},
+   "source": [
+    "## Requirements"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "35386f72-32cb-49fa-a108-3aa504e20429",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "!pip install -q aiohttp==3.8.3 datasets==2.14.6 pandas==1.5.3 requests==2.31.0 tqdm==4.66.1 huggingface-hub>=0.20"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "b6f72042-173d-4a72-ade1-9304b43b528d",
+   "metadata": {},
+   "source": [
+    "## Imports"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "id": "e2beecdd-d033-4736-bd45-6754ec53b4ac",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "import asyncio\n",
+    "from getpass import getpass\n",
+    "import json\n",
+    "from pathlib import Path\n",
+    "import time\n",
+    "from typing import Optional\n",
+    "\n",
+    "from aiohttp import ClientSession, ClientTimeout\n",
+    "from datasets import load_dataset, Dataset, DatasetDict\n",
+    "from huggingface_hub import notebook_login, create_inference_endpoint, list_inference_endpoints, whoami\n",
+    "import numpy as np\n",
+    "import pandas as pd\n",
+    "import requests\n",
+    "from tqdm.auto import tqdm"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "5eece903-64ce-435d-a2fd-096c0ff650bf",
+   "metadata": {},
+   "source": [
+    "## Config\n",
+    "`DATASET_IN` is where your text data is\n",
+    "`DATASET_OUT` is where your embeddings will be stored\n",
+    "\n",
+    "Note I used 5 for the `MAX_WORKERS` since `jina-embeddings-v2` are quite memory hungry. "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "id": "df2f79f0-9f28-46e6-9fc7-27e9537ff5be",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "DATASET_IN = 'derek-thomas/dataset-creator-reddit-bestofredditorupdates'\n",
+    "DATASET_OUT = \"processed-subset-bestofredditorupdates\"\n",
+    "ENDPOINT_NAME = \"boru-jina-embeddings-demo-ie\"\n",
+    "\n",
+    "MAX_WORKERS = 5  # This is for how many async workers you want. Choose based on the model and hardware \n",
+    "ROW_COUNT = 100  # Choose None to use all rows, Im using 100 just for a demo"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "1e680f3d-4900-46cc-8b49-bb6ba3e27e2b",
+   "metadata": {},
+   "source": [
+    "Hugging Face offers a number of GPUs that you can choose from a number of GPUs that you can choose in Inference Endpoints. Here they are in table form:\n",
+    "\n",
+    "| GPU                 | instanceType   | instanceSize | vRAM  |\n",
+    "|---------------------|----------------|--------------|-------|\n",
+    "| 1x Nvidia Tesla T4 | g4dn.xlarge | small | 16GB |\n",
+    "| 4x Nvidia Tesla T4 | g4dn.12xlarge | large | 64GB |\n",
+    "| 1x Nvidia A10G | g5.2xlarge | medium | 24GB |\n",
+    "| 4x Nvidia A10G | g5.12xlarge | xxlarge | 96GB |\n",
+    "| 1x Nvidia A100* | p4de | xlarge | 80GB |\n",
+    "| 2x Nvidia A100* | p4de | 2xlarge | 160GB |\n",
+    "\n",
+    "\\*Note that for A100s you might get a note to email us to get access."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "id": "3c2106c1-2e5a-443a-9ea8-a3cd0e9c5a94",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "# GPU Choice\n",
+    "VENDOR=\"aws\"\n",
+    "REGION=\"us-east-1\"\n",
+    "INSTANCE_SIZE=\"medium\"\n",
+    "INSTANCE_TYPE=\"g5.2xlarge\""
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "id": "0ca1140c-3fcc-4b99-9210-6da1505a27b7",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "ee80821056e147fa9cabf30f64dc85a8",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "VBox(children=(HTML(value='<center> <img\\nsrc=https://huggingface.co/front/assets/huggingface_logo-noborder.sv…"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "notebook_login()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "5f4ba0a8-0a6c-4705-a73b-7be09b889610",
+   "metadata": {},
+   "source": [
+    "Some users might have payment registered in an organization. This allows you to connect to an organization (that you are a member of) with a payment method.\n",
+    "\n",
+    "Leave it blank is you want to use your username."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "id": "88cdbd73-5923-4ae9-9940-b6be935f70fa",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "What is your Hugging Face πŸ€— username or organization? (with an added payment method) Β·Β·Β·Β·Β·Β·Β·Β·\n"
+     ]
+    }
+   ],
+   "source": [
+    "who = whoami()\n",
+    "organization = getpass(prompt=\"What is your Hugging Face πŸ€— username or organization? (with an added payment method)\")\n",
+    "\n",
+    "namespace = organization or who['name']"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "b972a719-2aed-4d2e-a24f-fae7776d5fa4",
+   "metadata": {},
+   "source": [
+    "## Get Dataset"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "id": "27835fa4-3a4f-44b1-a02a-5e31584a1bba",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "4041cedd3b3f4f8db3e29ec102f46a3a",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Downloading readme:   0%|          | 0.00/1.73k [00:00<?, ?B/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/plain": [
+       "Dataset({\n",
+       "    features: ['id', 'content', 'score', 'date_utc', 'title', 'flair', 'poster', 'permalink', 'new', 'updated'],\n",
+       "    num_rows: 10042\n",
+       "})"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dataset = load_dataset(DATASET_IN)\n",
+    "dataset['train']"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "id": "8846087e-4d0d-4c0e-8aeb-ea95d9e97126",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "(100,\n",
+       " {'id': '10004zw',\n",
+       "  'content': '[removed]',\n",
+       "  'score': 1,\n",
+       "  'date_utc': Timestamp('2022-12-31 18:16:22'),\n",
+       "  'title': 'To All BORU contributors, Thank you :)',\n",
+       "  'flair': 'CONCLUDED',\n",
+       "  'poster': 'IsItAcOnSeQuEnCe',\n",
+       "  'permalink': '/r/BestofRedditorUpdates/comments/10004zw/to_all_boru_contributors_thank_you/',\n",
+       "  'new': False,\n",
+       "  'updated': False})"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "documents = dataset['train'].to_pandas().to_dict('records')[:ROW_COUNT]\n",
+    "len(documents), documents[0]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "93096cbc-81c6-4137-a283-6afb0f48fbb9",
+   "metadata": {},
+   "source": [
+    "# Inference Endpoints\n",
+    "## Create Inference Endpoint\n",
+    "We are going to use the [API](https://huggingface.co/docs/inference-endpoints/api_reference) to create an [Inference Endpoint](https://huggingface.co/inference-endpoints). This should provide a few main benefits:\n",
+    "- It's convenient (No clicking)\n",
+    "- It's repeatable (We have the code to run it easily)\n",
+    "- It's cheaper (No time spent waiting for it to load, and automatically shut it down)\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "id": "9e59de46-26b7-4bb9-bbad-8bba9931bde7",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "try:\n",
+    "    endpoint = create_inference_endpoint(\n",
+    "        ENDPOINT_NAME,\n",
+    "        repository=\"jinaai/jina-embeddings-v2-base-en\",\n",
+    "        revision=\"7302ac470bed880590f9344bfeee32ff8722d0e5\",\n",
+    "        task=\"sentence-embeddings\",\n",
+    "        framework=\"pytorch\",\n",
+    "        accelerator=\"gpu\",\n",
+    "        instance_size=INSTANCE_SIZE,\n",
+    "        instance_type=INSTANCE_TYPE,\n",
+    "        region=REGION,\n",
+    "        vendor=VENDOR,\n",
+    "        namespace=namespace,\n",
+    "        custom_image={\n",
+    "            \"health_route\": \"/health\",\n",
+    "            \"env\": {\n",
+    "                \"MAX_BATCH_TOKENS\": str(MAX_WORKERS * 2048),\n",
+    "                \"MAX_CONCURRENT_REQUESTS\": \"512\",\n",
+    "                \"MODEL_ID\": \"/repository\"\n",
+    "            },\n",
+    "            \"url\": \"ghcr.io/huggingface/text-embeddings-inference:0.5.0\",\n",
+    "        },\n",
+    "        type=\"protected\",\n",
+    "    )\n",
+    "except:\n",
+    "    endpoint = [ie for ie in list_inference_endpoints(namespace=namespace) if ie.name == ENDPOINT_NAME][0]\n",
+    "    print('Loaded endpoint')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "0f2c97dc-34e8-49e9-b60e-f5b7366294c0",
+   "metadata": {},
+   "source": [
+    "There are a few design choices here:\n",
+    "- As discussed before we are using `jinaai/jina-embeddings-v2-base-en` as our model. \n",
+    "    - For reproducibility we are pinning it to a specific revision.\n",
+    "- If you are interested in more models, check out the supported list [here](https://huggingface.co/docs/text-embeddings-inference/supported_models). \n",
+    "    - Note that most embedding models are based on the BERT architecture.\n",
+    "- `MAX_BATCH_TOKENS` is chosen based on our number of workers and the context window of our embedding model.\n",
+    "- `type=\"protected\"` utilized the security from Inference Endpoints detailed here.\n",
+    "- I'm using **1x Nvidia A10** since `jina-embeddings-v2` is memory hungry (remember the 8k context length). \n",
+    "- You should consider further tuning `MAX_BATCH_TOKENS` and `MAX_CONCURRENT_REQUESTS` if you have high workloads\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "96d173b2-8980-4554-9039-c62843d3fc7d",
+   "metadata": {},
+   "source": [
+    "## Wait until it's running"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "id": "5f3a8bd2-753c-49a8-9452-899578beddc5",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "CPU times: user 48.1 ms, sys: 15.7 ms, total: 63.8 ms\n",
+      "Wall time: 52.6 s\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "InferenceEndpoint(name='boru-jina-embeddings-demo-ie', namespace='HF-test-lab', repository='jinaai/jina-embeddings-v2-base-en', status='running', url='https://k7l1xeok1jwnpbx5.us-east-1.aws.endpoints.huggingface.cloud')"
+      ]
+     },
+     "execution_count": 10,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "%%time\n",
+    "endpoint.wait()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "a906645e-60de-4eb6-b8b6-3ec98a9d9b00",
+   "metadata": {},
+   "source": [
+    "When we use `endpoint.client.post` we get a bytes string back. This is a little tedious because we need to convert this to an `np.array`, but it's just a couple quick lines in python."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "id": "e09253d5-70ff-4d0e-8888-0022ce0adf7b",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([-0.05630935, -0.03560849,  0.02789049,  0.02792823, -0.02800371,\n",
+       "       -0.01530391, -0.01863454, -0.0077982 ,  0.05374297,  0.03672185,\n",
+       "       -0.06114018, -0.06880157, -0.0093503 , -0.03174005, -0.03206085,\n",
+       "        0.0610647 ,  0.02243694,  0.03217408,  0.04181686,  0.00248854])"
+      ]
+     },
+     "execution_count": 12,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "response = endpoint.client.post(json={\"inputs\": 'This sound track was beautiful! It paints the senery in your mind so well I would recomend it even to people who hate vid. game music!', 'truncate': True}, task=\"feature-extraction\")\n",
+    "response = np.array(json.loads(response.decode()))\n",
+    "response[0][:20]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "0d024788-6e6e-4a8d-b192-36ee3dacca13",
+   "metadata": {},
+   "source": [
+    "You may have inputs that exceed the context. In such scenarios, it's up to you to handle them. In my case, I'd like to truncate rather than have an error. Let's test that it works."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "id": "a4a1cd15-dda3-4cfa-8bda-788d8c1b9e32",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "The length of the embedding_input is: 300000\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "array([-0.03088215, -0.0351537 ,  0.05749275,  0.00983467,  0.02108356,\n",
+       "        0.04539965,  0.06107162, -0.02536954,  0.03887688,  0.01998681,\n",
+       "       -0.05391388,  0.01529677, -0.1279156 ,  0.01653782, -0.01940958,\n",
+       "        0.0367411 ,  0.0031748 ,  0.04716022, -0.00713609, -0.00155313])"
+      ]
+     },
+     "execution_count": 13,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "embedding_input = 'This input will get multiplied' * 10000\n",
+    "print(f'The length of the embedding_input is: {len(embedding_input)}')\n",
+    "response = endpoint.client.post(json={\"inputs\": embedding_input, 'truncate': True}, task=\"feature-extraction\")\n",
+    "response = np.array(json.loads(response.decode()))\n",
+    "response[0][:20]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "f7186126-ef6a-47d0-b158-112810649cd9",
+   "metadata": {},
+   "source": [
+    "# Get Embeddings"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "1dadfd68-6d46-4ce8-a165-bfeb43b1f114",
+   "metadata": {},
+   "source": [
+    "Here I send a document, update it with the embedding, and return it. This happens in parallel with `MAX_WORKERS`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "id": "ad3193fb-3def-42a8-968e-c63f2b864ca8",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "async def request(document, semaphore):\n",
+    "    # Semaphore guard\n",
+    "    async with semaphore:\n",
+    "        result = await endpoint.async_client.post(json={\"inputs\": document['content'], 'truncate': True}, task=\"feature-extraction\")\n",
+    "        result = np.array(json.loads(result.decode()))\n",
+    "        document['embedding'] = result[0]  # Assuming the API's output can be directly assigned\n",
+    "        return document\n",
+    "\n",
+    "async def main(documents):\n",
+    "    # Semaphore to limit concurrent requests. Adjust the number as needed.\n",
+    "    semaphore = asyncio.BoundedSemaphore(MAX_WORKERS)\n",
+    "\n",
+    "    # Creating a list of tasks\n",
+    "    tasks = [request(document, semaphore) for document in documents]\n",
+    "    \n",
+    "    # Using tqdm to show progress. It's been integrated into the async loop.\n",
+    "    for f in tqdm(asyncio.as_completed(tasks), total=len(documents)):\n",
+    "        await f"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 15,
+   "id": "ec4983af-65eb-4841-808a-3738fb4d682d",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "48a2affdee8d46f3b0c1f691eaac4b89",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "  0%|          | 0/100 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Embeddings = 100 documents = 100\n",
+      "0 min 21.33 sec\n"
+     ]
+    }
+   ],
+   "source": [
+    "start = time.perf_counter()\n",
+    "\n",
+    "# Get embeddings\n",
+    "await main(documents)\n",
+    "\n",
+    "# Make sure we got it all\n",
+    "count = 0\n",
+    "for document in documents:\n",
+    "    if 'embedding' in document.keys() and len(document['embedding']) == 768:\n",
+    "        count += 1\n",
+    "print(f'Embeddings = {count} documents = {len(documents)}')\n",
+    "\n",
+    "            \n",
+    "# Print elapsed time\n",
+    "elapsed_time = time.perf_counter() - start\n",
+    "minutes, seconds = divmod(elapsed_time, 60)\n",
+    "print(f\"{int(minutes)} min {seconds:.2f} sec\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "bab97c7b-7bac-4bf5-9752-b528294dadc7",
+   "metadata": {},
+   "source": [
+    "## Pause Inference Endpoint\n",
+    "Now that we have finished, let's pause the endpoint so we don't incur any extra charges, this will also allow us to analyze the cost."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 16,
+   "id": "540a0978-7670-4ce3-95c1-3823cc113b85",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Endpoint Status: paused\n"
+     ]
+    }
+   ],
+   "source": [
+    "endpoint = endpoint.pause()\n",
+    "\n",
+    "print(f\"Endpoint Status: {endpoint.status}\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "45ad65b7-3da2-4113-9b95-8fb4e21ae793",
+   "metadata": {},
+   "source": [
+    "# Push updated dataset to Hub\n",
+    "We now have our documents updated with the embeddings we wanted. First we need to convert it back to a `Dataset` format. I find it easiest to go from list of dicts -> `pd.DataFrame` -> `Dataset`"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 17,
+   "id": "9bb993f8-d624-4192-9626-8e9ed9888a1b",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "df = pd.DataFrame(documents)\n",
+    "dd = DatasetDict({'train': Dataset.from_pandas(df)})"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "129760c8-cae1-4b1e-8216-f5152df8c536",
+   "metadata": {},
+   "source": [
+    "I'm uploading it to the user's account by default (as opposed to uploading to an organization) but feel free to push to wherever you want by setting the user in the `repo_id` or in the config by setting `DATASET_OUT`"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 18,
+   "id": "f48e7c55-d5b7-4ed6-8516-272ae38716b1",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "d3af2e864770481db5adc3968500b5d3",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Pushing dataset shards to the dataset hub:   0%|          | 0/1 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "4e063c42d8f4490c939bc64e626b507a",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Downloading metadata:   0%|          | 0.00/823 [00:00<?, ?B/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "dd.push_to_hub(repo_id=DATASET_OUT)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 19,
+   "id": "85ea2244-a4c6-4f04-b187-965a2fc356a8",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Dataset is at https://huggingface.co/datasets/derek-thomas/processed-subset-bestofredditorupdates\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(f'Dataset is at https://huggingface.co/datasets/{who[\"name\"]}/{DATASET_OUT}')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "41abea64-379d-49de-8d9a-355c2f4ce1ac",
+   "metadata": {},
+   "source": [
+    "# Analyze Usage\n",
+    "1. Go to your `dashboard_url` printed below\n",
+    "1. Click on the Usage & Cost tab\n",
+    "1. See how much you have spent"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 20,
+   "id": "16815445-3079-43da-b14e-b54176a07a62",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "https://ui.endpoints.huggingface.co/HF-test-lab/endpoints/boru-jina-embeddings-demo-ie\n"
+     ]
+    }
+   ],
+   "source": [
+    "dashboard_url = f'https://ui.endpoints.huggingface.co/{namespace}/endpoints/{ENDPOINT_NAME}'\n",
+    "print(dashboard_url)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 21,
+   "id": "81096c6f-d12f-4781-84ec-9066cfa465b3",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Hit enter to continue with the notebook \n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "''"
+      ]
+     },
+     "execution_count": 21,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "input(\"Hit enter to continue with the notebook\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "847d524e-9aa6-4a6f-a275-8a552e289818",
+   "metadata": {},
+   "source": [
+    "We can see that it only took `$0.04` to pay for this!\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "b953d5be-2494-4ff8-be42-9daf00c99c41",
+   "metadata": {},
+   "source": [
+    "\n",
+    "# Delete Endpoint\n",
+    "Now that we are done, we don't need our endpoint anymore. We can delete our endpoint programmatically. \n",
+    "\n",
+    "![Cost](https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/automatic_embedding_tei_inference_endpoints.png)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 22,
+   "id": "c310c0f3-6f12-4d5c-838b-3a4c1f2e54ad",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Endpoint deleted successfully\n"
+     ]
+    }
+   ],
+   "source": [
+    "endpoint = endpoint.delete()\n",
+    "\n",
+    "if not endpoint:\n",
+    "    print('Endpoint deleted successfully')\n",
+    "else:\n",
+    "    print('Delete Endpoint in manually') "
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.8"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/src/notebooks/faiss.ipynb b/src/notebooks/faiss.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..e01ec47253c379186894cdc25874c88869f7a27f
--- /dev/null
+++ b/src/notebooks/faiss.ipynb
@@ -0,0 +1,580 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "q3n0GCRvMXNc"
+   },
+   "source": [
+    "---\n",
+    "title: \"Similarity Search\"\n",
+    "---\n",
+    "\n",
+    "# Embedding multimodal data for similarity search using πŸ€— transformers, πŸ€— datasets and FAISS\n",
+    "\n",
+    "_Authored by: [Merve Noyan](https://huggingface.co/merve)_\n",
+    "\n",
+    "Embeddings are semantically meaningful compressions of information. They can be used to do similarity search, zero-shot classification or simply train a new model. Use cases for similarity search include searching for similar products in e-commerce, content search in social media and more.\n",
+    "This notebook walks you through using πŸ€—transformers, πŸ€—datasets and FAISS to create and index embeddings from a feature extraction model to later use them for similarity search.\n",
+    "Let's install necessary libraries."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Gqmxny3tNASX"
+   },
+   "outputs": [],
+   "source": [
+    "!pip install -q datasets faiss-gpu transformers sentencepiece"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "X4z-2K6MM4yW"
+   },
+   "source": [
+    "For this tutorial, we will use [CLIP model](https://huggingface.co/openai/clip-vit-base-patch16) to extract the features. CLIP is a revolutionary model that introduced joint training of a text encoder and an image encoder to connect two modalities."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "5WY6waypNCjT"
+   },
+   "outputs": [],
+   "source": [
+    "import torch\n",
+    "from PIL import Image\n",
+    "from transformers import AutoImageProcessor, AutoModel, AutoTokenizer\n",
+    "import faiss\n",
+    "import numpy as np\n",
+    "\n",
+    "device = torch.device('cuda' if torch.cuda.is_available() else \"cpu\")\n",
+    "\n",
+    "model = AutoModel.from_pretrained(\"openai/clip-vit-base-patch16\").to(device)\n",
+    "processor = AutoImageProcessor.from_pretrained(\"openai/clip-vit-base-patch16\")\n",
+    "tokenizer = AutoTokenizer.from_pretrained(\"openai/clip-vit-base-patch16\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "_jBbLzJUSOwQ"
+   },
+   "source": [
+    "Load the dataset. To keep this notebook light, we will use a small captioning dataset, [jmhessel/newyorker_caption_contest](https://huggingface.co/datasets/jmhessel/newyorker_caption_contest)."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "wMxvOhkA0l-k"
+   },
+   "outputs": [],
+   "source": [
+    "from datasets import load_dataset\n",
+    "\n",
+    "ds = load_dataset(\"jmhessel/newyorker_caption_contest\", \"explanation\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "_hbosSHI10zy"
+   },
+   "source": [
+    "See an example."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 305
+    },
+    "id": "5gpAhbAcMrm7",
+    "outputId": "682033f9-da37-4cae-e1bc-4a5fbbb7f2fa"
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<PIL.JpegImagePlugin.JpegImageFile image mode=L size=400x288>"
+      ]
+     },
+     "execution_count": 4,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "ds[\"train\"][0][\"image\"]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 35
+    },
+    "id": "FOxmdk-HM7L6",
+    "outputId": "ff7c2ca8-0c6a-49d0-cfd6-4be775e012a1"
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.google.colaboratory.intrinsic+json": {
+       "type": "string"
+      },
+      "text/plain": [
+       "'Two women are looking out a window. There is snow outside, and there is a snowman with human arms.'"
+      ]
+     },
+     "execution_count": 5,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "ds[\"train\"][0][\"image_description\"]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Ri187NrFNMaF"
+   },
+   "source": [
+    "We don't have to write any function to embed examples or create an index. πŸ€— datasets library's FAISS integration abstracts these processes. We can simply use `map` method of the dataset to create a new column with the embeddings for each example like below. Let's create one for text features on the prompt column."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "xB0EfabiBHgR"
+   },
+   "outputs": [],
+   "source": [
+    "dataset = ds[\"train\"]\n",
+    "ds_with_embeddings = dataset.map(lambda example:\n",
+    "                                {'embeddings': model.get_text_features(\n",
+    "                                    **tokenizer([example[\"image_description\"]],\n",
+    "                                                truncation=True, return_tensors=\"pt\")\n",
+    "                                    .to(\"cuda\"))[0].detach().cpu().numpy()})\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "iUWvvRB3DJwy"
+   },
+   "outputs": [],
+   "source": [
+    "ds_with_embeddings.add_faiss_index(column='embeddings')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "qZcZNgSpCH5e"
+   },
+   "source": [
+    "We can do the same and get the image embeddings."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "AwXh-WlZB6q-"
+   },
+   "outputs": [],
+   "source": [
+    "ds_with_embeddings = ds_with_embeddings.map(lambda example:\n",
+    "                                          {'image_embeddings': model.get_image_features(\n",
+    "                                              **processor([example[\"image\"]], return_tensors=\"pt\")\n",
+    "                                              .to(\"cuda\"))[0].detach().cpu().numpy()})\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "s9OX--PsDMNE"
+   },
+   "outputs": [],
+   "source": [
+    "ds_with_embeddings.add_faiss_index(column='image_embeddings')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "1BS3TvQO5GGJ"
+   },
+   "source": [
+    "## Querying the data with text prompts"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "pxx9fTf83xgE"
+   },
+   "source": [
+    "We can now query the dataset with text or image to get similar items from it."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "2UQQyXAbNKGa"
+   },
+   "outputs": [],
+   "source": [
+    "prmt = \"a snowy day\"\n",
+    "prmt_embedding = model.get_text_features(**tokenizer([prmt], return_tensors=\"pt\", truncation=True).to(\"cuda\"))[0].detach().cpu().numpy()\n",
+    "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('embeddings', prmt_embedding, k=1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 190
+    },
+    "id": "O5bkNf4M3_Nt",
+    "outputId": "b56009fe-dc99-4cc3-84e5-559fb3625d30"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "['A man is in the snow. A boy with a huge snow shovel is there too. They are outside a house.']\n"
+     ]
+    },
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<PIL.Image.Image image mode=L size=200x155>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "def downscale_images(image):\n",
+    "  width = 200\n",
+    "  ratio = (width / float(image.size[0]))\n",
+    "  height = int((float(image.size[1]) * float(ratio)))\n",
+    "  img = image.resize((width, height), Image.Resampling.LANCZOS)\n",
+    "  return img\n",
+    "\n",
+    "images = [downscale_images(image) for image in retrieved_examples[\"image\"]]\n",
+    "# see the closest text and image\n",
+    "print(retrieved_examples[\"image_description\"])\n",
+    "display(images[0])\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "ufn0oqPx5DUR"
+   },
+   "source": [
+    "## Querying the data with image prompts"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "R6fNviJ28fns"
+   },
+   "source": [
+    "Image similarity inference is similar, where you just call `get_image_features`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 217
+    },
+    "id": "t1BGXpT659Px",
+    "outputId": "53478699-5753-4946-90d6-0aa8b76694a6"
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<PIL.Image.Image image mode=RGB size=200x200>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "import requests\n",
+    "# image of a beaver\n",
+    "url = \"https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/beaver.png\"\n",
+    "image = Image.open(requests.get(url, stream=True).raw)\n",
+    "display(downscale_images(image))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "3kmz4g1v6SJ_"
+   },
+   "source": [
+    "Search for the similar image."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "qWf-G_Iz4RcD"
+   },
+   "outputs": [],
+   "source": [
+    "img_embedding = model.get_image_features(**processor([image], return_tensors=\"pt\", truncation=True).to(\"cuda\"))[0].detach().cpu().numpy()\n",
+    "scores, retrieved_examples = ds_with_embeddings.get_nearest_examples('image_embeddings', img_embedding, k=1)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "iFGNp5hp6VsV"
+   },
+   "source": [
+    "Display the most similar image to the beaver image."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 197
+    },
+    "id": "Pq7IR86k54kP",
+    "outputId": "fa620b08-4435-4929-f67f-32b3f8f46b70"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "['Salmon swim upstream but they see a grizzly bear and are in shock. The bear has a smug look on his face when he sees the salmon.']\n"
+     ]
+    },
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<PIL.Image.Image image mode=RGB size=200x142>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "images = [downscale_images(image) for image in retrieved_examples[\"image\"]]\n",
+    "# see the closest text and image\n",
+    "print(retrieved_examples[\"image_description\"])\n",
+    "display(images[0])"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "6JEZJlkD8UrZ"
+   },
+   "source": [
+    "## Saving, pushing and loading the embeddings\n",
+    "We can save the dataset with embeddings with `save_faiss_index`.\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "dXrBMAHx8k51"
+   },
+   "outputs": [],
+   "source": [
+    "ds_with_embeddings.save_faiss_index('embeddings', 'embeddings/embeddings.faiss')"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "51dgxmGm-c3x"
+   },
+   "outputs": [],
+   "source": [
+    "ds_with_embeddings.save_faiss_index('image_embeddings', 'embeddings/image_embeddings.faiss')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "xO0i-dkY-nK5"
+   },
+   "source": [
+    "It's a good practice to store the embeddings in a dataset repository, so we will create one and push our embeddings there to pull later.\n",
+    "We will login to Hugging Face Hub, create a dataset repository there and push our indexes there and load using `snapshot_download`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "ETmGo_KiAiOr"
+   },
+   "outputs": [],
+   "source": [
+    "from huggingface_hub import HfApi, notebook_login, snapshot_download\n",
+    "notebook_login()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "K3hmtWQn-k9O"
+   },
+   "outputs": [],
+   "source": [
+    "from huggingface_hub import HfApi\n",
+    "api = HfApi()\n",
+    "api.create_repo(\"merve/faiss_embeddings\", repo_type=\"dataset\")\n",
+    "api.upload_folder(\n",
+    "    folder_path=\"./embeddings\",\n",
+    "    repo_id=\"merve/faiss_embeddings\",\n",
+    "    repo_type=\"dataset\",\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "UTVoI9LWBp1x"
+   },
+   "outputs": [],
+   "source": [
+    "snapshot_download(repo_id=\"merve/faiss_embeddings\", repo_type=\"dataset\",\n",
+    "                  local_dir=\"downloaded_embeddings\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "HGkYTJsM9BVx"
+   },
+   "source": [
+    "  We can load the embeddings to the dataset with no embeddings using `load_faiss_index`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "mbPvs8kV8xTy"
+   },
+   "outputs": [],
+   "source": [
+    "ds = ds[\"train\"]\n",
+    "ds.load_faiss_index('embeddings', './downloaded_embeddings/embeddings.faiss')\n",
+    "# infer again\n",
+    "prmt = \"people under the rain\"\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "mc9JmZSG71WZ"
+   },
+   "outputs": [],
+   "source": [
+    "prmt_embedding = model.get_text_features(\n",
+    "                        **tokenizer([prmt], return_tensors=\"pt\", truncation=True)\n",
+    "                        .to(\"cuda\"))[0].detach().cpu().numpy()\n",
+    "\n",
+    "scores, retrieved_examples = ds.get_nearest_examples('embeddings', prmt_embedding, k=1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 341
+    },
+    "id": "wckNsAX-9zox",
+    "outputId": "8d5008b4-ab8f-4b42-92e7-b29e57c126cb"
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<PIL.JpegImagePlugin.JpegImageFile image mode=L size=500x324>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "display(retrieved_examples[\"image\"][0])"
+   ]
+  }
+ ],
+ "metadata": {
+  "accelerator": "GPU",
+  "colab": {
+   "machine_shape": "hm",
+   "provenance": []
+  },
+  "kernelspec": {
+   "display_name": "Python 3",
+   "name": "python3"
+  },
+  "language_info": {
+   "name": "python"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/src/notebooks/rag_evaluation.ipynb b/src/notebooks/rag_evaluation.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..9fdbab2f9a1efd8a8510b3f26d355ac7258760a3
--- /dev/null
+++ b/src/notebooks/rag_evaluation.ipynb
@@ -0,0 +1,1470 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "4YErqpfH9jVI"
+   },
+   "source": [
+    "---\n",
+    "title: RAG Evaluation\n",
+    "---\n",
+    "_Authored by: [Aymeric Roucher](https://huggingface.co/m-ric)_\n",
+    "\n",
+    "This notebook demonstrates how you can evaluate your RAG (Retrieval Augmented Generation), by building a synthetic evaluation dataset and using LLM-as-a-judge to compute the accuracy of your system.\n",
+    "\n",
+    "For an introduction to RAG, you can check [this other cookbook](rag_zephyr_langchain)!\n",
+    "\n",
+    "RAG systems are complex: here a RAG diagram, where we noted in blue all possibilities for system enhancement:\n",
+    "\n",
+    "<img src=\"https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/RAG_workflow.png\" height=\"700\">\n",
+    "\n",
+    "Implementing any of these improvements can bring a huge performance boost; but changing anything is useless if you cannot monitor the impact of your changes on the system's performance!\n",
+    "So let's see how to evaluate our RAG system.\n",
+    "\n",
+    "### Evaluating RAG performance\n",
+    "\n",
+    "Since there are so many moving parts to tune with a big impact on performance, benchmarking the RAG system is crucial.\n",
+    "\n",
+    "For our evaluation pipeline, we will need:\n",
+    "1. An evaluation dataset with question - answer couples (QA couples)\n",
+    "2. An evaluator to compute the accuracy of our system on the above evaluation dataset.\n",
+    "\n",
+    "➑️ It turns out, we can use LLMs to help us all along the way!\n",
+    "1. The evaluation dataset will be synthetically generated by an LLM πŸ€–, and questions will be filtered out by other LLMs πŸ€–\n",
+    "2. An [LLM-as-a-judge](https://huggingface.co/papers/2306.05685) agent πŸ€– will then perform the evaluation on this synthetic dataset.\n",
+    "\n",
+    "__Let's dig into it and start building our evaluation pipeline!__ First, we install the required model dependancies."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "bCKBvOcp9jVK"
+   },
+   "outputs": [],
+   "source": [
+    "!pip install -q torch transformers transformers langchain sentence-transformers faiss-gpu openpyxl openai"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "k_lJFbYm9jVL"
+   },
+   "outputs": [],
+   "source": [
+    "%reload_ext autoreload\n",
+    "%autoreload 2\n",
+    "%reload_ext dotenv\n",
+    "%dotenv"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "oIlNZ1Mn9jVL"
+   },
+   "outputs": [],
+   "source": [
+    "from tqdm.notebook import tqdm\n",
+    "import pandas as pd\n",
+    "from typing import Optional, List, Tuple\n",
+    "from langchain_core.language_models import BaseChatModel\n",
+    "import json\n",
+    "import datasets\n",
+    "\n",
+    "pd.set_option(\"display.max_colwidth\", None)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "zeW8P62J9jVM"
+   },
+   "source": [
+    "### Load your knowledge base"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "YRbm5tNF9jVM"
+   },
+   "outputs": [],
+   "source": [
+    "ds = datasets.load_dataset(\"m-ric/huggingface_doc\", split=\"train\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "wy9CKj0M9jVM"
+   },
+   "source": [
+    "# 1. Build a synthetic dataset for evaluation\n",
+    "We first build a synthetic dataset of questions and associated contexts. The method is to get elements from our knowledge base, and ask an LLM to generate questions based on these documents.\n",
+    "\n",
+    "Then we setup other LLM agents to act as quality filters for the generated QA couples: each of them will act as the filter for a specific flaw."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "QkoEgiDg9jVM"
+   },
+   "source": [
+    "### 1.1. Prepare source documents"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "3gTOlRKO9jVM"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.text_splitter import RecursiveCharacterTextSplitter\n",
+    "from langchain.docstore.document import Document as LangchainDocument\n",
+    "\n",
+    "langchain_docs = [\n",
+    "    LangchainDocument(page_content=doc[\"text\"], metadata={\"source\": doc[\"source\"]})\n",
+    "    for doc in tqdm(ds)\n",
+    "]\n",
+    "\n",
+    "\n",
+    "text_splitter = RecursiveCharacterTextSplitter(\n",
+    "    chunk_size=2000,\n",
+    "    chunk_overlap=200,\n",
+    "    add_start_index=True,\n",
+    "    separators=[\"\\n\\n\", \"\\n\", \".\", \" \", \"\"],\n",
+    ")\n",
+    "\n",
+    "docs_processed = []\n",
+    "for doc in langchain_docs:\n",
+    "    docs_processed += text_splitter.split_documents([doc])"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "WjrNhcCh9jVN"
+   },
+   "source": [
+    "### 1.2. Setup agents for question generation\n",
+    "\n",
+    "We use [Mixtral](https://huggingface.co/mistralai/Mixtral-8x7B-Instruct-v0.1) for QA couple generation because it it has excellent performance in leaderboards such as [Chatbot Arena](https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard)."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "GoRySj3Q9jVN"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain_community.llms import HuggingFaceHub\n",
+    "\n",
+    "repo_id = \"mistralai/Mixtral-8x7B-Instruct-v0.1\"\n",
+    "\n",
+    "llm = HuggingFaceHub(\n",
+    "    repo_id=repo_id,\n",
+    "    task=\"text-generation\",\n",
+    "    model_kwargs={\n",
+    "        \"max_new_tokens\": 512,\n",
+    "        \"top_k\": 30,\n",
+    "        \"temperature\": 0.1,\n",
+    "        \"repetition_penalty\": 1.03,\n",
+    "    },\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "wubTNTaV9jVN"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain_community.chat_models import ChatHuggingFace\n",
+    "\n",
+    "chat_model = ChatHuggingFace(llm=llm)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "hIM_DJRo9jVN"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.prompts import ChatPromptTemplate\n",
+    "\n",
+    "QA_generation_prompt = \"\"\"\n",
+    "Your task is to write a factoid question and an answer given a context.\n",
+    "Your factoid question should be answerable with a specific, concise piece of factual information from the context.\n",
+    "Your factoid question should be formulated in the same style as questions users could ask in a search engine.\n",
+    "This means that your factoid question MUST NOT mention something like \"according to the passage\" or \"context\".\n",
+    "\n",
+    "Provide your answer as follows:\n",
+    "\n",
+    "Output:::\n",
+    "Factoid question: (your factoid question)\n",
+    "Answer: (your answer to the factoid question)\n",
+    "\n",
+    "Now here is the context.\n",
+    "\n",
+    "Context: {context}\\n\n",
+    "Output:::\"\"\"\n",
+    "\n",
+    "QA_generation_prompt = ChatPromptTemplate.from_template(QA_generation_prompt)\n",
+    "QA_generation_agent = QA_generation_prompt | chat_model"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "lVFc-lVy9jVN"
+   },
+   "source": [
+    "Now let's generate our QA couples.\n",
+    "For this example, we generate only 10 QA couples and will load the rest from the Hub.\n",
+    "\n",
+    "But for your specific knowledge base, given that you want to get at least ~100 test samples, and accounting for the fact that we will filter out around half of these with our critique agents later on, you should generate much more, in the >200 samples."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "8fteqDDD9jVN"
+   },
+   "outputs": [],
+   "source": [
+    "import random\n",
+    "\n",
+    "N_GENERATIONS = (\n",
+    "    10  # We intentionally generate only 10 QA couples here for cost and time considerations\n",
+    ")\n",
+    "\n",
+    "print(f\"Generating {N_GENERATIONS} QA couples...\")\n",
+    "outputs = []\n",
+    "for context in tqdm(random.sample(langchain_docs, N_GENERATIONS)):\n",
+    "    # Generate QA couple\n",
+    "    output_QA_couple = QA_generation_agent.invoke({\"context\": context.page_content}).content\n",
+    "    try:\n",
+    "        question = output_QA_couple.split(\"Factoid question: \")[1].split(\"Answer: \")[0]\n",
+    "        answer = output_QA_couple.split(\"Answer: \")[1]\n",
+    "        outputs.append(\n",
+    "            {\n",
+    "                \"context\": context.page_content,\n",
+    "                \"question\": question,\n",
+    "                \"answer\": answer,\n",
+    "                \"source_doc\": context.metadata[\"source\"],\n",
+    "            }\n",
+    "        )\n",
+    "    except:\n",
+    "        continue"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "aUlOUDv59jVN",
+    "outputId": "c9634fdb-2a7f-43a6-c4eb-e60b166b8238"
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>context</th>\n",
+       "      <th>question</th>\n",
+       "      <th>answer</th>\n",
+       "      <th>source_doc</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>0</th>\n",
+       "      <td>!--Copyright 2023 The HuggingFace Team. All rights reserved.\\n\\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with\\nthe License. You may obtain a copy of the License at\\n\\nhttp://www.apache.org/licenses/LICENSE-2.0\\n\\nUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on\\nan \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the\\nspecific language governing permissions and limitations under the License.\\n--&gt;\\n\\n# Schedulers\\n\\nπŸ€— Diffusers provides many scheduler functions for the diffusion process. A scheduler takes a model's output (the sample which the diffusion process is iterating on) and a timestep to return a denoised sample. The timestep is important because it dictates where in the diffusion process the step is; data is generated by iterating forward *n* timesteps and inference occurs by propagating backward through the timesteps. Based on the timestep, a scheduler may be *discrete* in which case the timestep is an `int` or *continuous* in which case the timestep is a `float`.\\n\\nDepending on the context, a scheduler defines how to iteratively add noise to an image or how to update a sample based on a model's output:\\n\\n- during *training*, a scheduler adds noise (there are different algorithms for how to add noise) to a sample to train a diffusion model\\n- during *inference*, a scheduler defines how to update a sample based on a pretrained model's output\\n\\nMany schedulers are implemented from the [k-diffusion](https://github.com/crowsonkb/k-diffusion) library by [Katherine Crowson](https://github.com/crowsonkb/), and they're also widely used in A1111. To help you map the schedulers from k-diffusion and A1111 to the schedulers in πŸ€— Diffusers, take a look at the table below:\\n\\n| A1111/k-diffusion    | πŸ€— Diffusers                         | Usage                                                                                                         |\\n|---------------------|-------------------------------------|---------------------------------------------------------------------------------------------------------------|\\n| DPM++ 2M            | [`DPMSolverMultistepScheduler`]     |                                                                                                               |\\n| DPM++ 2M Karras     | [`DPMSolverMultistepScheduler`]     | init with `use_karras_sigmas=True`                                                                            |\\n| DPM++ 2M SDE        | [`DPMSolverMultistepScheduler`]     | init with `algorithm_type=\"sde-dpmsolver++\"`                                                                  |\\n| DPM++ 2M SDE Karras | [`DPMSolverMultistepScheduler`]     | init with `use_karras_sigmas=True` and `algorithm_type=\"sde-dpmsolver++\"`                                     |\\n| DPM++ 2S a          | N/A                                 | very similar to  `DPMSolverSinglestepScheduler`                         |\\n| DPM++ 2S a Karras   | N/A                                 | very similar to  `DPMSolverSinglestepScheduler(use_karras_sigmas=True, ...)` |\\n| DPM++ SDE           | [`DPMSolverSinglestepScheduler`]    |                                                                                                               |\\n| DPM++ SDE Karras    | [`DPMSolverSinglestepScheduler`]    | init with `use_karras_sigmas=True`                                                                            |\\n| DPM2                | [`KDPM2DiscreteScheduler`]          |                                                                                                               |\\n| DPM2 Karras         | [`KDPM2DiscreteScheduler`]          | init with `use_karras_sigmas=True`                                                                            |\\n| DPM2 a              | [`KDPM2AncestralDiscreteScheduler`] |                                                                                                               |\\n| DPM2 a Karras       | [`KDPM2AncestralDiscreteScheduler`] | init with `use_karras_sigmas=True`                                                                            |\\n| DPM adaptive        | N/A                                 |                                                                                                               |\\n| DPM fast            | N/A                                 |                                                                                                               |\\n| Euler               | [`EulerDiscreteScheduler`]          |                                                                                                               |\\n| Euler a             | [`EulerAncestralDiscreteScheduler`] |                                                                                                               |\\n| Heun                | [`HeunDiscreteScheduler`]           |                                                                                                               |\\n| LMS                 | [`LMSDiscreteScheduler`]            |                                                                                                               |\\n| LMS Karras          | [`LMSDiscreteScheduler`]            | init with `use_karras_sigmas=True`                                                                            |\\n| N/A                 | [`DEISMultistepScheduler`]          |                                                                                                               |\\n| N/A                 | [`UniPCMultistepScheduler`]         |                                                                                                               |\\n\\nAll schedulers are built from the base [`SchedulerMixin`] class which implements low level utilities shared by all schedulers.\\n\\n## SchedulerMixin\\n[[autodoc]] SchedulerMixin\\n\\n## SchedulerOutput\\n[[autodoc]] schedulers.scheduling_utils.SchedulerOutput\\n\\n## KarrasDiffusionSchedulers\\n\\n[`KarrasDiffusionSchedulers`] are a broad generalization of schedulers in πŸ€— Diffusers. The schedulers in this class are distinguished at a high level by their noise sampling strategy, the type of network and scaling, the training strategy, and how the loss is weighed.\\n\\nThe different schedulers in this class, depending on the ordinary differential equations (ODE) solver type, fall into the above taxonomy and provide a good abstraction for the design of the main schedulers implemented in πŸ€— Diffusers. The schedulers in this class are given [here](https://github.com/huggingface/diffusers/blob/a69754bb879ed55b9b6dc9dd0b3cf4fa4124c765/src/diffusers/schedulers/scheduling_utils.py#L32).\\n\\n## PushToHubMixin\\n\\n[[autodoc]] utils.PushToHubMixin\\n</td>\n",
+       "      <td>What is the class of schedulers in πŸ€— Diffusers that are distinguished by their noise sampling strategy, type of network and scaling, training strategy, and loss weighing?\\n</td>\n",
+       "      <td>[`KarrasDiffusionSchedulers`]</td>\n",
+       "      <td>huggingface/diffusers/blob/main/docs/source/en/api/schedulers/overview.md</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          context  \\\n",
+       "0  !--Copyright 2023 The HuggingFace Team. All rights reserved.\\n\\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with\\nthe License. You may obtain a copy of the License at\\n\\nhttp://www.apache.org/licenses/LICENSE-2.0\\n\\nUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on\\nan \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the\\nspecific language governing permissions and limitations under the License.\\n-->\\n\\n# Schedulers\\n\\nπŸ€— Diffusers provides many scheduler functions for the diffusion process. A scheduler takes a model's output (the sample which the diffusion process is iterating on) and a timestep to return a denoised sample. The timestep is important because it dictates where in the diffusion process the step is; data is generated by iterating forward *n* timesteps and inference occurs by propagating backward through the timesteps. Based on the timestep, a scheduler may be *discrete* in which case the timestep is an `int` or *continuous* in which case the timestep is a `float`.\\n\\nDepending on the context, a scheduler defines how to iteratively add noise to an image or how to update a sample based on a model's output:\\n\\n- during *training*, a scheduler adds noise (there are different algorithms for how to add noise) to a sample to train a diffusion model\\n- during *inference*, a scheduler defines how to update a sample based on a pretrained model's output\\n\\nMany schedulers are implemented from the [k-diffusion](https://github.com/crowsonkb/k-diffusion) library by [Katherine Crowson](https://github.com/crowsonkb/), and they're also widely used in A1111. To help you map the schedulers from k-diffusion and A1111 to the schedulers in πŸ€— Diffusers, take a look at the table below:\\n\\n| A1111/k-diffusion    | πŸ€— Diffusers                         | Usage                                                                                                         |\\n|---------------------|-------------------------------------|---------------------------------------------------------------------------------------------------------------|\\n| DPM++ 2M            | [`DPMSolverMultistepScheduler`]     |                                                                                                               |\\n| DPM++ 2M Karras     | [`DPMSolverMultistepScheduler`]     | init with `use_karras_sigmas=True`                                                                            |\\n| DPM++ 2M SDE        | [`DPMSolverMultistepScheduler`]     | init with `algorithm_type=\"sde-dpmsolver++\"`                                                                  |\\n| DPM++ 2M SDE Karras | [`DPMSolverMultistepScheduler`]     | init with `use_karras_sigmas=True` and `algorithm_type=\"sde-dpmsolver++\"`                                     |\\n| DPM++ 2S a          | N/A                                 | very similar to  `DPMSolverSinglestepScheduler`                         |\\n| DPM++ 2S a Karras   | N/A                                 | very similar to  `DPMSolverSinglestepScheduler(use_karras_sigmas=True, ...)` |\\n| DPM++ SDE           | [`DPMSolverSinglestepScheduler`]    |                                                                                                               |\\n| DPM++ SDE Karras    | [`DPMSolverSinglestepScheduler`]    | init with `use_karras_sigmas=True`                                                                            |\\n| DPM2                | [`KDPM2DiscreteScheduler`]          |                                                                                                               |\\n| DPM2 Karras         | [`KDPM2DiscreteScheduler`]          | init with `use_karras_sigmas=True`                                                                            |\\n| DPM2 a              | [`KDPM2AncestralDiscreteScheduler`] |                                                                                                               |\\n| DPM2 a Karras       | [`KDPM2AncestralDiscreteScheduler`] | init with `use_karras_sigmas=True`                                                                            |\\n| DPM adaptive        | N/A                                 |                                                                                                               |\\n| DPM fast            | N/A                                 |                                                                                                               |\\n| Euler               | [`EulerDiscreteScheduler`]          |                                                                                                               |\\n| Euler a             | [`EulerAncestralDiscreteScheduler`] |                                                                                                               |\\n| Heun                | [`HeunDiscreteScheduler`]           |                                                                                                               |\\n| LMS                 | [`LMSDiscreteScheduler`]            |                                                                                                               |\\n| LMS Karras          | [`LMSDiscreteScheduler`]            | init with `use_karras_sigmas=True`                                                                            |\\n| N/A                 | [`DEISMultistepScheduler`]          |                                                                                                               |\\n| N/A                 | [`UniPCMultistepScheduler`]         |                                                                                                               |\\n\\nAll schedulers are built from the base [`SchedulerMixin`] class which implements low level utilities shared by all schedulers.\\n\\n## SchedulerMixin\\n[[autodoc]] SchedulerMixin\\n\\n## SchedulerOutput\\n[[autodoc]] schedulers.scheduling_utils.SchedulerOutput\\n\\n## KarrasDiffusionSchedulers\\n\\n[`KarrasDiffusionSchedulers`] are a broad generalization of schedulers in πŸ€— Diffusers. The schedulers in this class are distinguished at a high level by their noise sampling strategy, the type of network and scaling, the training strategy, and how the loss is weighed.\\n\\nThe different schedulers in this class, depending on the ordinary differential equations (ODE) solver type, fall into the above taxonomy and provide a good abstraction for the design of the main schedulers implemented in πŸ€— Diffusers. The schedulers in this class are given [here](https://github.com/huggingface/diffusers/blob/a69754bb879ed55b9b6dc9dd0b3cf4fa4124c765/src/diffusers/schedulers/scheduling_utils.py#L32).\\n\\n## PushToHubMixin\\n\\n[[autodoc]] utils.PushToHubMixin\\n   \n",
+       "\n",
+       "                                                                                                                                                                       question  \\\n",
+       "0  What is the class of schedulers in πŸ€— Diffusers that are distinguished by their noise sampling strategy, type of network and scaling, training strategy, and loss weighing?\\n   \n",
+       "\n",
+       "                          answer  \\\n",
+       "0  [`KarrasDiffusionSchedulers`]   \n",
+       "\n",
+       "                                                                  source_doc  \n",
+       "0  huggingface/diffusers/blob/main/docs/source/en/api/schedulers/overview.md  "
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "display(pd.DataFrame(outputs).head(1))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "0KG4dNtg9jVN"
+   },
+   "source": [
+    "### 1.3. Setup critique agents\n",
+    "\n",
+    "The questions generated by the previous agent can have many flaws: we should do a quality check before validating these questions.\n",
+    "\n",
+    "We thus build critique agents that will rate each question on several criteria, given in [this paper](https://huggingface.co/papers/2312.10003):\n",
+    "- **Groundedness:** can the question be answered from the given context?\n",
+    "- **Relevance:** is the question relevant to users? For instance, `\"What is the date when transformers 4.29.1 was released?\"` is not relevant for ML practicioners.\n",
+    "\n",
+    "One last failure case we've noticed is when a function is tailored for the particular setting where the question was generated, but undecipherable by itself, like `\"What is the name of the function used in this guide?\"`.\n",
+    "We also build a critique agent for this criteria:\n",
+    "- **Stand-alone**: is the question understandable free of any context, for someone with domain knowledge/Internet access? The opposite of this would be `What is the function used in this article?` for a question generated from a specific blog article.\n",
+    "\n",
+    "We systematically score functions with all these agents, and whenever the score is too low for any one of the agents, we eliminate the question from our eval dataset.\n",
+    "\n",
+    "πŸ’‘ ___When asking the agents to output a score, we first ask them to produce its rationale. This will help us verify scores, but most importantly, asking it to first output rationale gives the model more tokens to think and elaborate an answer before summarizing it into a single score token.___\n",
+    "\n",
+    "We now build and run these critique agents."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "05aSgTGs9jVO"
+   },
+   "outputs": [],
+   "source": [
+    "question_groundedness_critique_prompt = \"\"\"\n",
+    "You will be given a context and a question.\n",
+    "Your task is to provide a 'total rating' scoring how well one can answer the given question unambiguously with the given context.\n",
+    "Give your answer on a scale of 1 to 5, where 1 means that the question is not answerable at all given the context, and 5 means that the question is clearly and unambiguously answerable with the context.\n",
+    "\n",
+    "Provide your answer as follows:\n",
+    "\n",
+    "Answer:::\n",
+    "Evaluation: (your rationale for the rating)\n",
+    "Total rating: (your rating)\n",
+    "\n",
+    "Now here are the question and context.\n",
+    "\n",
+    "Question: {question}\\n\n",
+    "Context: {context}\\n\n",
+    "Answer::: \"\"\"\n",
+    "\n",
+    "question_relevance_critique_prompt = \"\"\"\n",
+    "You will be given a question.\n",
+    "Your task is to provide a 'total rating' representing how useful this question can be to machine learning developers building NLP applications with the Hugging Face ecosystem.\n",
+    "Give your answer on a scale of 1 to 5, where 1 means that the question is not useful at all, and 5 means that the question is extremely useful.\n",
+    "\n",
+    "Provide your answer as follows:\n",
+    "\n",
+    "Answer:::\n",
+    "Evaluation: (your rationale for the rating)\n",
+    "Total rating: (your rating)\n",
+    "\n",
+    "Now here is the question.\n",
+    "\n",
+    "Question: {question}\\n\n",
+    "Answer::: \"\"\"\n",
+    "\n",
+    "question_standalone_critique_prompt = \"\"\"\n",
+    "You will be given a question.\n",
+    "Your task is to provide a 'total rating' representing how context-independant this question is.\n",
+    "Give your answer on a scale of 1 to 5, where 1 means that the question only makes sense in a specific context, and 5 means that the question makes sense by itself.\n",
+    "For instance, if the question refers to a particular setting, like 'in the context' or 'in the document', the rating must be 1.\n",
+    "The questions can contain obscure technical nouns or acronyms like Gradio, Hub, Hugging Face or Space and still be a 5: it must simply be clear to an operator with access to documentation what the question is about.\n",
+    "\n",
+    "Provide your answer as follows:\n",
+    "\n",
+    "Answer:::\n",
+    "Evaluation: (your rationale for the rating)\n",
+    "Total rating: (your rating)\n",
+    "\n",
+    "Now here is the question.\n",
+    "\n",
+    "Question: {question}\\n\n",
+    "Answer::: \"\"\"\n",
+    "\n",
+    "question_groundedness_critique_prompt = ChatPromptTemplate.from_template(\n",
+    "    question_groundedness_critique_prompt\n",
+    ")\n",
+    "question_groundedness_critique_agent = question_groundedness_critique_prompt | chat_model\n",
+    "\n",
+    "question_relevance_critique_prompt = ChatPromptTemplate.from_template(\n",
+    "    question_relevance_critique_prompt\n",
+    ")\n",
+    "question_relevance_critique_agent = question_relevance_critique_prompt | chat_model\n",
+    "\n",
+    "question_standalone_critique_prompt = ChatPromptTemplate.from_template(\n",
+    "    question_standalone_critique_prompt\n",
+    ")\n",
+    "question_standalone_critique_agent = question_standalone_critique_prompt | chat_model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "b9tbk7ME9jVO"
+   },
+   "outputs": [],
+   "source": [
+    "print(\"Generating critique for each QA couple...\")\n",
+    "for output in tqdm(outputs):\n",
+    "    # Critique the generated QA couple\n",
+    "    question_groundedness_evaluation = question_groundedness_critique_agent.invoke(\n",
+    "        {\"context\": output[\"context\"], \"question\": output[\"question\"]}\n",
+    "    ).content\n",
+    "    question_relevance_evaluation = question_relevance_critique_agent.invoke(\n",
+    "        {\"question\": output[\"question\"]}\n",
+    "    ).content\n",
+    "    question_standalone_evaluation = question_standalone_critique_agent.invoke(\n",
+    "        {\"question\": output[\"question\"]}\n",
+    "    ).content\n",
+    "\n",
+    "    try:\n",
+    "        groundedness_score = int(question_groundedness_evaluation.split(\"Total rating: \")[1][0])\n",
+    "        groundedness_eval = question_groundedness_evaluation.split(\"Total rating: \")[0].split(\n",
+    "            \"Evaluation: \"\n",
+    "        )[1]\n",
+    "        relevance_score = int(question_relevance_evaluation.split(\"Total rating: \")[1][0])\n",
+    "        relevance_eval = question_relevance_evaluation.split(\"Total rating: \")[0].split(\n",
+    "            \"Evaluation: \"\n",
+    "        )[1]\n",
+    "        standalone_score = int(question_standalone_evaluation.split(\"Total rating: \")[1][0])\n",
+    "        standalone_eval = question_standalone_evaluation.split(\"Total rating: \")[0].split(\n",
+    "            \"Evaluation: \"\n",
+    "        )[1]\n",
+    "        output.update(\n",
+    "            {\n",
+    "                \"groundedness_score\": groundedness_score,\n",
+    "                \"groundedness_eval\": groundedness_eval,\n",
+    "                \"relevance_score\": relevance_score,\n",
+    "                \"relevance_eval\": relevance_eval,\n",
+    "                \"standalone_score\": standalone_score,\n",
+    "                \"standalone_eval\": standalone_eval,\n",
+    "            }\n",
+    "        )\n",
+    "    except:\n",
+    "        continue"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "IQv36Y_f9jVO"
+   },
+   "source": [
+    "Now let us filter out bad questions based on our critique agent scores:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "oBWuOu1b9jVO",
+    "outputId": "b32bacea-52f8-486a-96fe-5c188605c5a2"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Evaluation dataset before filtering:\n"
+     ]
+    },
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>question</th>\n",
+       "      <th>answer</th>\n",
+       "      <th>groundedness_score</th>\n",
+       "      <th>relevance_score</th>\n",
+       "      <th>standalone_score</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>0</th>\n",
+       "      <td>What is the class of schedulers in πŸ€— Diffusers that are distinguished by their noise sampling strategy, type of network and scaling, training strategy, and loss weighing?\\n</td>\n",
+       "      <td>[`KarrasDiffusionSchedulers`]</td>\n",
+       "      <td>3.0</td>\n",
+       "      <td>1.0</td>\n",
+       "      <td>4.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>1</th>\n",
+       "      <td>What are some utility functions provided by the Hugging Face library for pipelines?\\n</td>\n",
+       "      <td>The Hugging Face library provides several utility functions for pipelines, including `ArgumentHandler`, `ZeroShotClassificationArgumentHandler`, `QuestionAnsweringArgumentHandler` for argument handling, `PipelineDataFormat`, `CsvPipelineDataFormat`, `JsonPipelineDataFormat`, `PipedPipelineDataFormat` for data format, and `PipelineException` for exceptions.</td>\n",
+       "      <td>5.0</td>\n",
+       "      <td>4.0</td>\n",
+       "      <td>5.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>2</th>\n",
+       "      <td>What is the default name used in the Gradio demo if no name is provided?\\n</td>\n",
+       "      <td>User\\n\\nExplanation: The factoid question asks for the default name used in the Gradio demo if no name is provided. The answer to this question can be found in the `argparse.ArgumentParser()` function, where a default value of \"User\" is set for the `--name` argument.</td>\n",
+       "      <td>5.0</td>\n",
+       "      <td>3.0</td>\n",
+       "      <td>5.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>3</th>\n",
+       "      <td>What is the function used to load a pre-trained Resnet-18 model in the provided context?\\n</td>\n",
+       "      <td>The function used to load a pre-trained Resnet-18 model in the provided context is `torch.hub.load('pytorch/vision:v0.6.0', 'resnet18', pretrained=True).eval()`.</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>4</th>\n",
+       "      <td>What is the name of the component used for creating a button in the given code?\\n</td>\n",
+       "      <td>The name of the component used for creating a button in the given code is `BaseButton`.</td>\n",
+       "      <td>5.0</td>\n",
+       "      <td>1.0</td>\n",
+       "      <td>5.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>5</th>\n",
+       "      <td>What is the command to get the example ONNX file for Bart model?\\n</td>\n",
+       "      <td>The command is `python run_onnx_exporter.py --model_name_or_path facebook/bart-base`.</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>6</th>\n",
+       "      <td>What will be covered in the next unit of the course?\\n</td>\n",
+       "      <td>The next unit of the course will cover learning more about Unity MLAgents and training agents in Unity environments. It will also prepare students for AI vs AI challenges where they will train their agents to compete against other agents in a snowball fight and a soccer game.</td>\n",
+       "      <td>5.0</td>\n",
+       "      <td>1.0</td>\n",
+       "      <td>5.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>7</th>\n",
+       "      <td>What is the purpose of the `negative_original_size`, `negative_crops_coords_top_left`, and `negative_target_size` parameters in SDXL?\\n</td>\n",
+       "      <td>These parameters allow SDXL to negatively condition the model on image resolution and cropping parameters.</td>\n",
+       "      <td>2.0</td>\n",
+       "      <td>4.0</td>\n",
+       "      <td>2.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>8</th>\n",
+       "      <td>How are transformers models tested in the Hugging Face repository?\\n</td>\n",
+       "      <td>Transformers models are tested in the Hugging Face repository using two test suites: `tests` for the general API and `examples` for various applications that aren't part of the API. These tests are run on CircleCI and GitHub Actions, with different jobs and configurations for each. The tests can be run in various ways, including running all tests, getting the list of all tests, running a specific test module, and running specific tests by name or keyword expression. Additionally, there are options for running tests in parallel, repeating tests, and running tests on a specific GPU or CPU.</td>\n",
+       "      <td>3.0</td>\n",
+       "      <td>4.0</td>\n",
+       "      <td>4.0</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>9</th>\n",
+       "      <td>What command is used to create a virtual environment in the given context?\\n</td>\n",
+       "      <td>The command used to create a virtual environment in the given context is `python -m venv &lt;env_name&gt;`.</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "      <td>NaN</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "                                                                                                                                                                       question  \\\n",
+       "0  What is the class of schedulers in πŸ€— Diffusers that are distinguished by their noise sampling strategy, type of network and scaling, training strategy, and loss weighing?\\n   \n",
+       "1                                                                                         What are some utility functions provided by the Hugging Face library for pipelines?\\n   \n",
+       "2                                                                                                    What is the default name used in the Gradio demo if no name is provided?\\n   \n",
+       "3                                                                                    What is the function used to load a pre-trained Resnet-18 model in the provided context?\\n   \n",
+       "4                                                                                             What is the name of the component used for creating a button in the given code?\\n   \n",
+       "5                                                                                                            What is the command to get the example ONNX file for Bart model?\\n   \n",
+       "6                                                                                                                        What will be covered in the next unit of the course?\\n   \n",
+       "7                                       What is the purpose of the `negative_original_size`, `negative_crops_coords_top_left`, and `negative_target_size` parameters in SDXL?\\n   \n",
+       "8                                                                                                          How are transformers models tested in the Hugging Face repository?\\n   \n",
+       "9                                                                                                  What command is used to create a virtual environment in the given context?\\n   \n",
+       "\n",
+       "                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               answer  \\\n",
+       "0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       [`KarrasDiffusionSchedulers`]   \n",
+       "1                                                                                                                                                                                                                                              The Hugging Face library provides several utility functions for pipelines, including `ArgumentHandler`, `ZeroShotClassificationArgumentHandler`, `QuestionAnsweringArgumentHandler` for argument handling, `PipelineDataFormat`, `CsvPipelineDataFormat`, `JsonPipelineDataFormat`, `PipedPipelineDataFormat` for data format, and `PipelineException` for exceptions.   \n",
+       "2                                                                                                                                                                                                                                                                                                                                         User\\n\\nExplanation: The factoid question asks for the default name used in the Gradio demo if no name is provided. The answer to this question can be found in the `argparse.ArgumentParser()` function, where a default value of \"User\" is set for the `--name` argument.   \n",
+       "3                                                                                                                                                                                                                                                                                                                                                                                                                                                   The function used to load a pre-trained Resnet-18 model in the provided context is `torch.hub.load('pytorch/vision:v0.6.0', 'resnet18', pretrained=True).eval()`.   \n",
+       "4                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             The name of the component used for creating a button in the given code is `BaseButton`.   \n",
+       "5                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               The command is `python run_onnx_exporter.py --model_name_or_path facebook/bart-base`.   \n",
+       "6                                                                                                                                                                                                                                                                                                                                The next unit of the course will cover learning more about Unity MLAgents and training agents in Unity environments. It will also prepare students for AI vs AI challenges where they will train their agents to compete against other agents in a snowball fight and a soccer game.   \n",
+       "7                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          These parameters allow SDXL to negatively condition the model on image resolution and cropping parameters.   \n",
+       "8  Transformers models are tested in the Hugging Face repository using two test suites: `tests` for the general API and `examples` for various applications that aren't part of the API. These tests are run on CircleCI and GitHub Actions, with different jobs and configurations for each. The tests can be run in various ways, including running all tests, getting the list of all tests, running a specific test module, and running specific tests by name or keyword expression. Additionally, there are options for running tests in parallel, repeating tests, and running tests on a specific GPU or CPU.   \n",
+       "9                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               The command used to create a virtual environment in the given context is `python -m venv <env_name>`.   \n",
+       "\n",
+       "   groundedness_score  relevance_score  standalone_score  \n",
+       "0                 3.0              1.0               4.0  \n",
+       "1                 5.0              4.0               5.0  \n",
+       "2                 5.0              3.0               5.0  \n",
+       "3                 NaN              NaN               NaN  \n",
+       "4                 5.0              1.0               5.0  \n",
+       "5                 NaN              NaN               NaN  \n",
+       "6                 5.0              1.0               5.0  \n",
+       "7                 2.0              4.0               2.0  \n",
+       "8                 3.0              4.0               4.0  \n",
+       "9                 NaN              NaN               NaN  "
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "============================================\n",
+      "Final evaluation dataset:\n"
+     ]
+    },
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>question</th>\n",
+       "      <th>answer</th>\n",
+       "      <th>groundedness_score</th>\n",
+       "      <th>relevance_score</th>\n",
+       "      <th>standalone_score</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>1</th>\n",
+       "      <td>What are some utility functions provided by the Hugging Face library for pipelines?\\n</td>\n",
+       "      <td>The Hugging Face library provides several utility functions for pipelines, including `ArgumentHandler`, `ZeroShotClassificationArgumentHandler`, `QuestionAnsweringArgumentHandler` for argument handling, `PipelineDataFormat`, `CsvPipelineDataFormat`, `JsonPipelineDataFormat`, `PipedPipelineDataFormat` for data format, and `PipelineException` for exceptions.</td>\n",
+       "      <td>5.0</td>\n",
+       "      <td>4.0</td>\n",
+       "      <td>5.0</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "                                                                                question  \\\n",
+       "1  What are some utility functions provided by the Hugging Face library for pipelines?\\n   \n",
+       "\n",
+       "                                                                                                                                                                                                                                                                                                                                                                   answer  \\\n",
+       "1  The Hugging Face library provides several utility functions for pipelines, including `ArgumentHandler`, `ZeroShotClassificationArgumentHandler`, `QuestionAnsweringArgumentHandler` for argument handling, `PipelineDataFormat`, `CsvPipelineDataFormat`, `JsonPipelineDataFormat`, `PipedPipelineDataFormat` for data format, and `PipelineException` for exceptions.   \n",
+       "\n",
+       "   groundedness_score  relevance_score  standalone_score  \n",
+       "1                 5.0              4.0               5.0  "
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "import pandas as pd\n",
+    "\n",
+    "pd.set_option(\"display.max_colwidth\", None)\n",
+    "\n",
+    "generated_questions = pd.DataFrame.from_dict(outputs)\n",
+    "\n",
+    "print(\"Evaluation dataset before filtering:\")\n",
+    "display(\n",
+    "    generated_questions[\n",
+    "        [\"question\", \"answer\", \"groundedness_score\", \"relevance_score\", \"standalone_score\"]\n",
+    "    ]\n",
+    ")\n",
+    "generated_questions = generated_questions.loc[\n",
+    "    (generated_questions[\"groundedness_score\"] >= 4)\n",
+    "    & (generated_questions[\"relevance_score\"] >= 4)\n",
+    "    & (generated_questions[\"standalone_score\"] >= 4)\n",
+    "]\n",
+    "print(\"============================================\")\n",
+    "print(\"Final evaluation dataset:\")\n",
+    "display(\n",
+    "    generated_questions[\n",
+    "        [\"question\", \"answer\", \"groundedness_score\", \"relevance_score\", \"standalone_score\"]\n",
+    "    ]\n",
+    ")\n",
+    "\n",
+    "eval_dataset = datasets.Dataset.from_pandas(\n",
+    "    generated_questions, split=\"train\", preserve_index=False\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "HaOMZyu69jVO"
+   },
+   "source": [
+    "Now our synthetic evaluation dataset is complete! We can evaluate different RAG systems on this evaluation dataset.\n",
+    "\n",
+    "We have generated only a few QA couples here to reduce time and cost. But let's kick start the next part by loading a pre-generated dataset:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Q3RRz4W79jVO"
+   },
+   "outputs": [],
+   "source": [
+    "eval_dataset = datasets.load_dataset(\"m-ric/huggingface_doc_qa_eval\", split=\"train\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "K5s19uTd9jVO"
+   },
+   "source": [
+    "# 2. Build our RAG System"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Z-mET8Dy9jVO"
+   },
+   "source": [
+    "### 2.1. Preprocessing documents to build our vector database\n",
+    "\n",
+    "- In this part, __we split the documents from our knowledge base into smaller chunks__: these will be the snippets that are picked by the Retriever, to then be ingested by the Reader LLM as supporting elements for its answer.\n",
+    "- The goal is to build semantically relevant snippets: not too small to be sufficient for supporting an answer, and not too large too avoid diluting individual ideas.\n",
+    "\n",
+    "Many options exist for text splitting:\n",
+    "- split every `n` words / characters, but this has the risk of cutting in half paragraphs or even sentences\n",
+    "- split after `n` words / character, but only on sentence boundaries\n",
+    "- **recursive split** tries to preserve even more of the document structure, by processing it tree-like way, splitting first on the largest units (chapters) then recursively splitting on smaller units (paragraphs, sentences).\n",
+    "\n",
+    "To learn more about chunking, I recommend you read [this great notebook](https://github.com/FullStackRetrieval-com/RetrievalTutorials/blob/main/5_Levels_Of_Text_Splitting.ipynb) by Greg Kamradt.\n",
+    "\n",
+    "[This space](https://huggingface.co/spaces/m-ric/chunk_visualizer) lets you visualize how different splitting options affect the chunks you get.\n",
+    "\n",
+    "> In the following, we use Langchain's `RecursiveCharacterTextSplitter`.\n",
+    "\n",
+    "πŸ’‘ _To measure chunk length in our Text Splitter, our length function will not be the count of characters, but the count of tokens in the tokenized text: indeed, for subsequent embedder that processes token, measuring length in tokens is more relevant and empirically performs better._"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "H4fhm55Q9jVO"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.docstore.document import Document as LangchainDocument\n",
+    "\n",
+    "RAW_KNOWLEDGE_BASE = [\n",
+    "    LangchainDocument(page_content=doc[\"text\"], metadata={\"source\": doc[\"source\"]})\n",
+    "    for doc in tqdm(ds)\n",
+    "]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "sz9Jw2_q9jVO"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.text_splitter import RecursiveCharacterTextSplitter\n",
+    "from transformers import AutoTokenizer\n",
+    "\n",
+    "\n",
+    "def split_documents(\n",
+    "    chunk_size: int,\n",
+    "    knowledge_base: List[LangchainDocument],\n",
+    "    tokenizer_name: str,\n",
+    ") -> List[LangchainDocument]:\n",
+    "    \"\"\"\n",
+    "    Split documents into chunks of size `chunk_size` characters and return a list of documents.\n",
+    "    \"\"\"\n",
+    "    text_splitter = RecursiveCharacterTextSplitter.from_huggingface_tokenizer(\n",
+    "        AutoTokenizer.from_pretrained(tokenizer_name),\n",
+    "        chunk_size=chunk_size,\n",
+    "        chunk_overlap=int(chunk_size / 10),\n",
+    "        add_start_index=True,\n",
+    "        strip_whitespace=True,\n",
+    "        separators=[\"\\n\\n\", \"\\n\", \".\", \" \", \"\"],\n",
+    "    )\n",
+    "\n",
+    "    docs_processed = []\n",
+    "    for doc in knowledge_base:\n",
+    "        docs_processed += text_splitter.split_documents([doc])\n",
+    "\n",
+    "    # Remove duplicates\n",
+    "    unique_texts = {}\n",
+    "    docs_processed_unique = []\n",
+    "    for doc in docs_processed:\n",
+    "        if doc.page_content not in unique_texts:\n",
+    "            unique_texts[doc.page_content] = True\n",
+    "            docs_processed_unique.append(doc)\n",
+    "\n",
+    "    return docs_processed_unique"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "QzBYfNG79jVO"
+   },
+   "source": [
+    "### 2.2. Retriever - embeddings πŸ—‚οΈ\n",
+    "The __retriever acts like an internal search engine__: given the user query, it returns the most relevant documents from your knowledge base.\n",
+    "\n",
+    "> For the knowledge base, we use Langchain vector databases since __it offers a convenient [FAISS](https://github.com/facebookresearch/faiss) index and allows us to keep document metadata throughout the processing__.\n",
+    "\n",
+    "πŸ› οΈ __Options included:__\n",
+    "\n",
+    "- Tune the chunking method:\n",
+    "    - Size of the chunks\n",
+    "    - Method: split on different separators, use [semantic chunking](https://python.langchain.com/docs/modules/data_connection/document_transformers/semantic-chunker)...\n",
+    "- Change the embedding model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "LqJlIDZR9jVO"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.vectorstores import FAISS\n",
+    "from langchain_community.embeddings import HuggingFaceEmbeddings\n",
+    "from langchain_community.vectorstores.utils import DistanceStrategy\n",
+    "import os\n",
+    "\n",
+    "\n",
+    "def load_embeddings(\n",
+    "    langchain_docs: List[LangchainDocument],\n",
+    "    chunk_size: int,\n",
+    "    embedding_model_name: Optional[str] = \"thenlper/gte-small\",\n",
+    ") -> FAISS:\n",
+    "    \"\"\"\n",
+    "    Creates a FAISS index from the given embedding model and documents. Loads the index directly if it already exists.\n",
+    "\n",
+    "    Args:\n",
+    "        langchain_docs: list of documents\n",
+    "        chunk_size: size of the chunks to split the documents into\n",
+    "        embedding_model_name: name of the embedding model to use\n",
+    "\n",
+    "    Returns:\n",
+    "        FAISS index\n",
+    "    \"\"\"\n",
+    "    # load embedding_model\n",
+    "    embedding_model = HuggingFaceEmbeddings(\n",
+    "        model_name=embedding_model_name,\n",
+    "        multi_process=True,\n",
+    "        model_kwargs={\"device\": \"cuda\"},\n",
+    "        encode_kwargs={\"normalize_embeddings\": True},  # set True to compute cosine similarity\n",
+    "    )\n",
+    "\n",
+    "    # Check if embeddings already exist on disk\n",
+    "    index_name = f\"index_chunk:{chunk_size}_embeddings:{embedding_model_name.replace('/', '~')}\"\n",
+    "    index_folder_path = f\"./data/indexes/{index_name}/\"\n",
+    "    if os.path.isdir(index_folder_path):\n",
+    "        return FAISS.load_local(\n",
+    "            index_folder_path,\n",
+    "            embedding_model,\n",
+    "            distance_strategy=DistanceStrategy.COSINE,\n",
+    "        )\n",
+    "\n",
+    "    else:\n",
+    "        print(\"Index not found, generating it...\")\n",
+    "        docs_processed = split_documents(\n",
+    "            chunk_size,\n",
+    "            langchain_docs,\n",
+    "            embedding_model_name,\n",
+    "        )\n",
+    "        knowledge_index = FAISS.from_documents(\n",
+    "            docs_processed, embedding_model, distance_strategy=DistanceStrategy.COSINE\n",
+    "        )\n",
+    "        knowledge_index.save_local(index_folder_path)\n",
+    "        return knowledge_index"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "b6y1mQJX9jVO"
+   },
+   "source": [
+    "### 2.3. Reader - LLM πŸ’¬\n",
+    "\n",
+    "In this part, the __LLM Reader reads the retrieved documents to formulate its answer.__\n",
+    "\n",
+    "πŸ› οΈ Here we tried the following options to improve results:\n",
+    "- Switch reranking on/off\n",
+    "- Change the reader model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "9PdpuWyP9jVP"
+   },
+   "outputs": [],
+   "source": [
+    "RAG_PROMPT_TEMPLATE = \"\"\"\n",
+    "<|system|>\n",
+    "Using the information contained in the context,\n",
+    "give a comprehensive answer to the question.\n",
+    "Respond only to the question asked, response should be concise and relevant to the question.\n",
+    "Provide the number of the source document when relevant.\n",
+    "If the answer cannot be deduced from the context, do not give an answer.</s>\n",
+    "<|user|>\n",
+    "Context:\n",
+    "{context}\n",
+    "---\n",
+    "Now here is the question you need to answer.\n",
+    "\n",
+    "Question: {question}\n",
+    "</s>\n",
+    "<|assistant|>\n",
+    "\"\"\""
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "9SDqenld9jVP"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain_community.llms import HuggingFaceHub\n",
+    "\n",
+    "repo_id = \"HuggingFaceH4/zephyr-7b-beta\"\n",
+    "READER_MODEL_NAME = \"zephyr-7b-beta\"\n",
+    "\n",
+    "READER_LLM = HuggingFaceHub(\n",
+    "    repo_id=repo_id,\n",
+    "    task=\"text-generation\",\n",
+    "    model_kwargs={\n",
+    "        \"max_new_tokens\": 512,\n",
+    "        \"top_k\": 30,\n",
+    "        \"temperature\": 0.1,\n",
+    "        \"repetition_penalty\": 1.03,\n",
+    "    },\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "QZ62CbcZ9jVP"
+   },
+   "outputs": [],
+   "source": [
+    "from ragatouille import RAGPretrainedModel\n",
+    "from langchain_core.vectorstores import VectorStore\n",
+    "from langchain_core.language_models.llms import LLM\n",
+    "\n",
+    "\n",
+    "def answer_with_rag(\n",
+    "    question: str,\n",
+    "    llm: LLM,\n",
+    "    knowledge_index: VectorStore,\n",
+    "    reranker: Optional[RAGPretrainedModel] = None,\n",
+    "    num_retrieved_docs: int = 30,\n",
+    "    num_docs_final: int = 7,\n",
+    ") -> Tuple[str, List[LangchainDocument]]:\n",
+    "    \"\"\"Answer a question using RAG with the given knowledge index.\"\"\"\n",
+    "    # Gather documents with retriever\n",
+    "    relevant_docs = knowledge_index.similarity_search(query=question, k=num_retrieved_docs)\n",
+    "    relevant_docs = [doc.page_content for doc in relevant_docs]  # keep only the text\n",
+    "\n",
+    "    # Optionally rerank results\n",
+    "    if reranker:\n",
+    "        relevant_docs = reranker.rerank(question, relevant_docs, k=num_docs_final)\n",
+    "        relevant_docs = [doc[\"content\"] for doc in relevant_docs]\n",
+    "\n",
+    "    relevant_docs = relevant_docs[:num_docs_final]\n",
+    "\n",
+    "    # Build the final prompt\n",
+    "    context = \"\\nExtracted documents:\\n\"\n",
+    "    context += \"\".join([f\"Document {str(i)}:::\\n\" + doc for i, doc in enumerate(relevant_docs)])\n",
+    "\n",
+    "    final_prompt = RAG_PROMPT_TEMPLATE.format(question=question, context=context)\n",
+    "\n",
+    "    # Redact an answer\n",
+    "    answer = llm(final_prompt)\n",
+    "\n",
+    "    return answer, relevant_docs"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "hiygbqfT9jVP"
+   },
+   "source": [
+    "# 3. Benchmarking the RAG system\n",
+    "\n",
+    "The RAG system and the evaluation datasets are now ready. The last step is to judge the RAG system's output on this evlauation dataset.\n",
+    "\n",
+    "To this end, __we setup a judge agent__. βš–οΈπŸ€–\n",
+    "\n",
+    "Out of [the different RAG evaluation metrics](https://docs.ragas.io/en/latest/concepts/metrics/index.html), we choose to focus only on faithfulness since it the best end-to-end metric of our system's performance.\n",
+    "\n",
+    "> We use GPT4 as a judge for its empirically good performance, but you could try with other models such as [kaist-ai/prometheus-13b-v1.0](https://huggingface.co/kaist-ai/prometheus-13b-v1.0) or [BAAI/JudgeLM-33B-v1.0](https://huggingface.co/BAAI/JudgeLM-33B-v1.0).\n",
+    "\n",
+    "πŸ’‘ _In the evaluation prompt, we give a detailed description each metric on the scale 1-5, as is done in [Prometheus's prompt template](https://huggingface.co/kaist-ai/prometheus-13b-v1.0): this helps the model ground its metric precisely. If instead you give the judge LLM a vague scale to work with, the outputs will not be consistent enough between different examples._\n",
+    "\n",
+    "πŸ’‘ _Again, prompting the LLM to output rationale before giving its final score gives it more tokens to help it formalize and elaborate a judgement._"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "VrlMh_ZI9jVP"
+   },
+   "outputs": [],
+   "source": [
+    "def run_rag_tests(\n",
+    "    eval_dataset: datasets.Dataset,\n",
+    "    llm: BaseChatModel,\n",
+    "    knowledge_index: VectorStore,\n",
+    "    output_file: str,\n",
+    "    reranker: Optional[RAGPretrainedModel] = None,\n",
+    "    verbose: Optional[bool] = True,\n",
+    "    test_settings: Optional[str] = None,  # To document the test settings used\n",
+    "):\n",
+    "    \"\"\"Runs RAG tests on the given dataset and saves the results to the given output file.\"\"\"\n",
+    "    try:  # load previous generations if they exist\n",
+    "        with open(output_file, \"r\") as f:\n",
+    "            outputs = json.load(f)\n",
+    "    except:\n",
+    "        outputs = []\n",
+    "\n",
+    "    for example in tqdm(eval_dataset):\n",
+    "        question = example[\"question\"]\n",
+    "        if question in [output[\"question\"] for output in outputs]:\n",
+    "            continue\n",
+    "\n",
+    "        answer, relevant_docs = answer_with_rag(question, llm, knowledge_index, reranker=reranker)\n",
+    "        if verbose:\n",
+    "            print(\"=======================================================\")\n",
+    "            print(f\"Question: {question}\")\n",
+    "            print(f\"Answer: {answer}\")\n",
+    "            print(f'True answer: {example[\"answer\"]}')\n",
+    "        result = {\n",
+    "            \"question\": question,\n",
+    "            \"true_answer\": example[\"answer\"],\n",
+    "            \"source_doc\": example[\"source_doc\"],\n",
+    "            \"generated_answer\": answer,\n",
+    "            \"retrieved_docs\": [doc for doc in relevant_docs],\n",
+    "        }\n",
+    "        if test_settings:\n",
+    "            result[\"test_settings\"] = test_settings\n",
+    "        outputs.append(result)\n",
+    "\n",
+    "        with open(output_file, \"w\") as f:\n",
+    "            json.dump(outputs, f)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Ae-3KWzK9jVP"
+   },
+   "outputs": [],
+   "source": [
+    "EVALUATION_PROMPT = \"\"\"###Task Description:\n",
+    "An instruction (might include an Input inside it), a response to evaluate, a reference answer that gets a score of 5, and a score rubric representing a evaluation criteria are given.\n",
+    "1. Write a detailed feedback that assess the quality of the response strictly based on the given score rubric, not evaluating in general.\n",
+    "2. After writing a feedback, write a score that is an integer between 1 and 5. You should refer to the score rubric.\n",
+    "3. The output format should look as follows: \\\"Feedback: {{write a feedback for criteria}} [RESULT] {{an integer number between 1 and 5}}\\\"\n",
+    "4. Please do not generate any other opening, closing, and explanations. Be sure to include [RESULT] in your output.\n",
+    "\n",
+    "###The instruction to evaluate:\n",
+    "{instruction}\n",
+    "\n",
+    "###Response to evaluate:\n",
+    "{response}\n",
+    "\n",
+    "###Reference Answer (Score 5):\n",
+    "{reference_answer}\n",
+    "\n",
+    "###Score Rubrics:\n",
+    "[Is the response correct, accurate, and factual based on the reference answer?]\n",
+    "Score 1: The response is completely incorrect, inaccurate, and/or not factual.\n",
+    "Score 2: The response is mostly incorrect, inaccurate, and/or not factual.\n",
+    "Score 3: The response is somewhat correct, accurate, and/or factual.\n",
+    "Score 4: The response is mostly correct, accurate, and factual.\n",
+    "Score 5: The response is completely correct, accurate, and factual.\n",
+    "\n",
+    "###Feedback:\"\"\"\n",
+    "\n",
+    "from langchain.prompts.chat import (\n",
+    "    ChatPromptTemplate,\n",
+    "    HumanMessagePromptTemplate,\n",
+    ")\n",
+    "from langchain.schema import SystemMessage\n",
+    "\n",
+    "\n",
+    "evaluation_prompt_template = ChatPromptTemplate.from_messages(\n",
+    "    [\n",
+    "        SystemMessage(content=\"You are a fair evaluator language model.\"),\n",
+    "        HumanMessagePromptTemplate.from_template(EVALUATION_PROMPT),\n",
+    "    ]\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "ia9Mvn859jVP"
+   },
+   "outputs": [],
+   "source": [
+    "from langchain.chat_models import ChatOpenAI\n",
+    "\n",
+    "eval_chat_model = ChatOpenAI(model=\"gpt-4-1106-preview\", temperature=0)\n",
+    "evaluator_name = \"GPT4\"\n",
+    "\n",
+    "\n",
+    "def evaluate_answers(\n",
+    "    answer_path: str,\n",
+    "    eval_chat_model: BaseChatModel,\n",
+    "    evaluator_name: str,\n",
+    "    evaluation_prompt_template: ChatPromptTemplate,\n",
+    ") -> None:\n",
+    "    \"\"\"Evaluates generated answers. Modifies the given answer file in place for better checkpointing.\"\"\"\n",
+    "    answers = []\n",
+    "    if os.path.isfile(answer_path):  # load previous generations if they exist\n",
+    "        answers = json.load(open(answer_path, \"r\"))\n",
+    "\n",
+    "    for experiment in tqdm(answers):\n",
+    "        if f\"eval_score_{evaluator_name}\" in experiment:\n",
+    "            continue\n",
+    "\n",
+    "        eval_prompt = evaluation_prompt_template.format_messages(\n",
+    "            instruction=experiment[\"question\"],\n",
+    "            response=experiment[\"generated_answer\"],\n",
+    "            reference_answer=experiment[\"true_answer\"],\n",
+    "        )\n",
+    "        eval_result = eval_chat_model.invoke(eval_prompt)\n",
+    "        feedback, score = [item.strip() for item in eval_result.content.split(\"[RESULT]\")]\n",
+    "        experiment[f\"eval_score_{evaluator_name}\"] = score\n",
+    "        experiment[f\"eval_feedback_{evaluator_name}\"] = feedback\n",
+    "\n",
+    "        with open(answer_path, \"w\") as f:\n",
+    "            json.dump(answers, f)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "EXH-szLe9jVP"
+   },
+   "source": [
+    "πŸš€ Let's run the tests and evaluate answers!πŸ‘‡"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "jW2nnvUT9jVQ"
+   },
+   "outputs": [],
+   "source": [
+    "if not os.path.exists(\"./output\"):\n",
+    "    os.mkdir(\"./output\")\n",
+    "\n",
+    "for chunk_size in [200]:  # Add other chunk sizes (in tokens) as needed\n",
+    "    for embeddings in [\"thenlper/gte-small\"]:  # Add other embeddings as needed\n",
+    "        for rerank in [True, False]:\n",
+    "            settings_name = f\"chunk:{chunk_size}_embeddings:{embeddings.replace('/', '~')}_rerank:{rerank}_reader-model:{READER_MODEL_NAME}\"\n",
+    "            output_file_name = f\"./output/rag_{settings_name}.json\"\n",
+    "\n",
+    "            print(f\"Running evaluation for {settings_name}:\")\n",
+    "\n",
+    "            print(\"Loading knowledge base embeddings...\")\n",
+    "            knowledge_index = load_embeddings(\n",
+    "                RAW_KNOWLEDGE_BASE,\n",
+    "                chunk_size=chunk_size,\n",
+    "                embedding_model_name=embeddings,\n",
+    "            )\n",
+    "\n",
+    "            print(\"Running RAG...\")\n",
+    "            reranker = (\n",
+    "                RAGPretrainedModel.from_pretrained(\"colbert-ir/colbertv2.0\") if rerank else None\n",
+    "            )\n",
+    "            run_rag_tests(\n",
+    "                eval_dataset=eval_dataset,\n",
+    "                llm=READER_LLM,\n",
+    "                knowledge_index=knowledge_index,\n",
+    "                output_file=output_file_name,\n",
+    "                reranker=reranker,\n",
+    "                verbose=False,\n",
+    "                test_settings=settings_name,\n",
+    "            )\n",
+    "\n",
+    "            print(\"Running evaluation...\")\n",
+    "            evaluate_answers(\n",
+    "                output_file_name,\n",
+    "                eval_chat_model,\n",
+    "                evaluator_name,\n",
+    "                evaluation_prompt_template,\n",
+    "            )"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "tytXV5-h9jVT"
+   },
+   "source": [
+    "### Inspect results"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "D4YDSfmr9jVT"
+   },
+   "outputs": [],
+   "source": [
+    "import glob\n",
+    "\n",
+    "outputs = []\n",
+    "for file in glob.glob(\"./output/*.json\"):\n",
+    "    output = pd.DataFrame(json.load(open(file, \"r\")))\n",
+    "    output[\"settings\"] = file\n",
+    "    outputs.append(output)\n",
+    "result = pd.concat(outputs)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "CdkXMNvS9jVT"
+   },
+   "outputs": [],
+   "source": [
+    "result[\"eval_score_GPT4\"] = result[\"eval_score_GPT4\"].apply(\n",
+    "    lambda x: int(x) if isinstance(x, str) else 1\n",
+    ")\n",
+    "result[\"eval_score_GPT4\"] = (result[\"eval_score_GPT4\"] - 1) / 4"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "lgxBpid29jVT",
+    "outputId": "9a3bcf32-4b0c-4df1-c76c-3ebbca82929d"
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "settings\n",
+       "./output/rag_chunk:200_embeddings:thenlper~gte-small_rerank:False_reader-model:zephyr-7b-beta.json       0.884328\n",
+       "./output/rag_chunk:200_embeddings:BAAI~bge-base-en-v1.5_rerank:False_reader-model:zephyr-7b-beta.json    0.906716\n",
+       "./output/rag_chunk:200_embeddings:BAAI~bge-base-en-v1.5_rerank:True_reader-model:zephyr-7b-beta.json     0.906716\n",
+       "./output/rag_chunk:200_embeddings:thenlper~gte-small_rerank:True_reader-model:mixtral.json               0.906716\n",
+       "./output/rag_chunk:200_embeddings:thenlper~gte-small_rerank:True_reader-model:zephyr-7b-beta.json        0.921642\n",
+       "./output/rag_chunk:200_embeddings:thenlper~gte-small_rerank:True_reader-model:mixtral0.json              0.947761\n",
+       "Name: eval_score_GPT4, dtype: float64"
+      ]
+     },
+     "execution_count": 24,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "average_scores = result.groupby(\"settings\")[\"eval_score_GPT4\"].mean()\n",
+    "average_scores.sort_values()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "pSPH9DYI9jVT"
+   },
+   "source": [
+    "## Example results\n",
+    "\n",
+    "Let us load the results that I obtained by tweaking the different options available in this notebook.\n",
+    "For more detail on why these options could work on not, see the notebook on [advanced_RAG](advanced_rag).\n",
+    "\n",
+    "As you can see in the graph below, some tweaks do not bring any improvement, some give huge performance boosts.\n",
+    "\n",
+    "➑️ ___There is no single good recipe: you should try several different directions when tuning your RAG systems.___\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "RVOxatv99jVT"
+   },
+   "outputs": [],
+   "source": [
+    "import plotly.express as px\n",
+    "\n",
+    "scores = datasets.load_dataset(\"m-ric/rag_scores_cookbook\", split=\"train\")\n",
+    "scores = pd.Series(scores[\"score\"], index=scores[\"settings\"])"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "vqK0Dg2Q9jVT"
+   },
+   "outputs": [],
+   "source": [
+    "fig = px.bar(\n",
+    "    scores,\n",
+    "    color=scores,\n",
+    "    labels={\n",
+    "        \"value\": \"Accuracy\",\n",
+    "        \"settings\": \"Configuration\",\n",
+    "    },\n",
+    "    color_continuous_scale=\"bluered\",\n",
+    ")\n",
+    "fig.update_layout(w\n",
+    "    width=1000,\n",
+    "    height=600,\n",
+    "    barmode=\"group\",\n",
+    "    yaxis_range=[0, 100],\n",
+    "    title=\"<b>Accuracy of different RAG configurations</b>\",\n",
+    "    xaxis_title=\"RAG settings\",\n",
+    "    font=dict(size=15),\n",
+    ")\n",
+    "fig.layout.yaxis.ticksuffix = \"%\"\n",
+    "fig.update_coloraxes(showscale=False)\n",
+    "fig.update_traces(texttemplate=\"%{y:.1f}\", textposition=\"outside\")\n",
+    "fig.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "dPUOMWGk9jVT"
+   },
+   "source": [
+    "<img src=\"https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/RAG_settings_accuracy.png\" height=\"500\" width=\"800\">\n",
+    "\n",
+    "As you can see, these had varying impact on performance. In particular, tuning the chunk size is both easy and very impactful.\n",
+    "\n",
+    "But this is our case: your results could be very different: now that you have a robust evaluation pipeline, you can set on to explore other options! πŸ—ΊοΈ"
+   ]
+  }
+ ],
+ "metadata": {
+  "colab": {
+   "provenance": []
+  },
+  "kernelspec": {
+   "display_name": "ml2",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.9"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/src/notebooks/rag_zephyr_langchain.ipynb b/src/notebooks/rag_zephyr_langchain.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..1bcf53f4881edd13ea3c357a9483035b52446224
--- /dev/null
+++ b/src/notebooks/rag_zephyr_langchain.ipynb
@@ -0,0 +1,527 @@
+{
+  "cells": [
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "Kih21u1tyr-I"
+      },
+      "source": [
+        "---\n",
+        "title: Simple RAG\n",
+        "---\n",
+        "\n",
+        "# Simple RAG for GitHub issues using Hugging Face Zephyr and LangChain\n",
+        "\n",
+        "_Authored by: [Maria Khalusova](https://github.com/MKhalusova)_\n",
+        "\n",
+        "This notebook demonstrates how you can quickly build a RAG (Retrieval Augmented Generation) for a project's GitHub issues using [`HuggingFaceH4/zephyr-7b-beta`](https://huggingface.co/HuggingFaceH4/zephyr-7b-beta) model, and LangChain.\n",
+        "\n",
+        "\n",
+        "**What is RAG?**\n",
+        "\n",
+        "RAG is a popular approach to address the issue of a powerful LLM not being aware of specific content due to said content not being in its training data, or hallucinating even when it has seen it before. Such specific content may be proprietary, sensitive, or, as in this example, recent and updated often.\n",
+        "\n",
+        "If your data is static and doesn't change regularly, you may consider fine-tuning a large model. In many cases, however, fine-tuning can be costly, and, when done repeatedly (e.g. to address data drift), leads to \"model shift\". This is when the model's behavior changes in ways that are not desirable.\n",
+        "\n",
+        "**RAG (Retrieval Augmented Generation)** does not require model fine-tuning. Instead, RAG works by providing an LLM with additional context that is retrieved from relevant data so that it can generate a better-informed response.\n",
+        "\n",
+        "Here's a quick illustration:\n",
+        "\n",
+        "![RAG diagram](https://huggingface.co/datasets/huggingface/cookbook-images/resolve/main/rag-diagram.png)\n",
+        "\n",
+        "* The external data is converted into embedding vectors with a separate embeddings model, and the vectors are kept in a database. Embeddings models are typically small, so updating the embedding vectors on a regular basis is faster, cheaper, and easier than fine-tuning a model.\n",
+        "\n",
+        "* At the same time, the fact that fine-tuning is not required gives you the freedom to swap your LLM for a more powerful one when it becomes available, or switch to a smaller distilled version, should you need faster inference.\n",
+        "\n",
+        "Let's illustrate building a RAG using an open-source LLM, embeddings model, and LangChain.\n",
+        "\n",
+        "First, install the required dependencies:"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "lC9frDOlyi38"
+      },
+      "outputs": [],
+      "source": [
+        "!pip install -q torch transformers accelerate bitsandbytes transformers sentence-transformers faiss-gpu"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 2,
+      "metadata": {
+        "id": "-aYENQwZ-p_c"
+      },
+      "outputs": [],
+      "source": [
+        "# If running in Google Colab, you may need to run this cell to make sure you're using UTF-8 locale to install LangChain\n",
+        "import locale\n",
+        "locale.getpreferredencoding = lambda: \"UTF-8\""
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "W5HhMZ2c-NfU"
+      },
+      "outputs": [],
+      "source": [
+        "!pip install -q langchain"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "R8po01vMWzXL"
+      },
+      "source": [
+        "## Prepare the data\n"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "3cCmQywC04x6"
+      },
+      "source": [
+        "In this example, we'll load all of the issues (both open and closed) from [PEFT library's repo](https://github.com/huggingface/peft).\n",
+        "\n",
+        "First, you need to acquire a [GitHub personal access token](https://github.com/settings/tokens?type=beta) to access the GitHub API."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "8MoD7NbsNjlM"
+      },
+      "outputs": [],
+      "source": [
+        "from getpass import getpass\n",
+        "ACCESS_TOKEN = getpass(\"YOUR_GITHUB_PERSONAL_TOKEN\")"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "fccecm3a10N6"
+      },
+      "source": [
+        "Next, we'll load all of the issues in the [huggingface/peft](https://github.com/huggingface/peft) repo:\n",
+        "- By default, pull requests are considered issues as well, here we chose to exclude them from data with by setting `include_prs=False`\n",
+        "- Setting `state = \"all\"` means we will load both open and closed issues."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 5,
+      "metadata": {
+        "id": "8EKMit4WNDY8"
+      },
+      "outputs": [],
+      "source": [
+        "from langchain.document_loaders import GitHubIssuesLoader\n",
+        "\n",
+        "loader = GitHubIssuesLoader(\n",
+        "    repo=\"huggingface/peft\",\n",
+        "    access_token=ACCESS_TOKEN,\n",
+        "    include_prs=False,\n",
+        "    state=\"all\"\n",
+        ")\n",
+        "\n",
+        "docs = loader.load()"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "CChTrY-k2qO5"
+      },
+      "source": [
+        "The content of individual GitHub issues may be longer than what an embedding model can take as input. If we want to embed all of the available content, we need to chunk the documents into appropriately sized pieces.\n",
+        "\n",
+        "The most common and straightforward approach to chunking is to define a fixed size of chunks and whether there should be any overlap between them. Keeping some overlap between chunks allows us to preserve some semantic context between the chunks.\n",
+        "\n",
+        "Other approaches are typically more involved and take into account the documents' structure and context. For example, one may want to split a document based on sentences or paragraphs, or create chunks based on the\n",
+        "\n",
+        "The fixed-size chunking, however, works well for most common cases, so that is what we'll do here."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "OmsXOf59Pmm-"
+      },
+      "outputs": [],
+      "source": [
+        "from langchain.text_splitter import CharacterTextSplitter\n",
+        "\n",
+        "splitter = CharacterTextSplitter(chunk_size=512, chunk_overlap=30)\n",
+        "\n",
+        "chunked_docs = splitter.split_documents(docs)"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "DAt_zPVlXOn7"
+      },
+      "source": [
+        "## Create the embeddings + retriever"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "-mvat6JQl4yp"
+      },
+      "source": [
+        "Now that the docs are all of the appropriate size, we can create a database with their embeddings.\n",
+        "\n",
+        "To create document chunk embeddings we'll use the `HuggingFaceEmbeddings` and the [`BAAI/bge-base-en-v1.5`](https://huggingface.co/BAAI/bge-base-en-v1.5) embeddings model. There are many other embeddings models available on the Hub, and you can keep an eye on the best performing ones by checking the [Massive Text Embedding Benchmark (MTEB) Leaderboard](https://huggingface.co/spaces/mteb/leaderboard).\n",
+        "\n",
+        "\n",
+        "To create the vector database, we'll use `FAISS`, a library developed by Facebook AI. This library offers efficient similarity search and clustering of dense vectors, which is what we need here. FAISS is currently one of the most used libraries for NN search in massive datasets.\n",
+        "\n",
+        "We'll access both the embeddings model and FAISS via LangChain API."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "ixmCdRzBQ5gu"
+      },
+      "outputs": [],
+      "source": [
+        "from langchain.vectorstores import FAISS\n",
+        "from langchain.embeddings import HuggingFaceEmbeddings\n",
+        "\n",
+        "db = FAISS.from_documents(chunked_docs,\n",
+        "                          HuggingFaceEmbeddings(model_name='BAAI/bge-base-en-v1.5'))"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "2iCgEPi0nnN6"
+      },
+      "source": [
+        "We need a way to return(retrieve) the documents given an unstructured query. For that, we'll use the `as_retriever` method using the `db` as a backbone:\n",
+        "- `search_type=\"similarity\"` means we want to perform similarity search between the query and documents\n",
+        "- `search_kwargs={'k': 4}` instructs the retriever to return top 4 results.\n"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 8,
+      "metadata": {
+        "id": "mBTreCQ9noHK"
+      },
+      "outputs": [],
+      "source": [
+        "retriever = db.as_retriever(\n",
+        "    search_type=\"similarity\",\n",
+        "    search_kwargs={'k': 4}\n",
+        ")"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "WgEhlISJpTgj"
+      },
+      "source": [
+        "The vector database and retriever are now set up, next we need to set up the next piece of the chain - the model."
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "tzQxx0HkXVFU"
+      },
+      "source": [
+        "## Load quantized model"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "9jy1cC65p_GD"
+      },
+      "source": [
+        "For this example, we chose [`HuggingFaceH4/zephyr-7b-beta`](https://huggingface.co/HuggingFaceH4/zephyr-7b-beta), a small but powerful model.\n",
+        "\n",
+        "With many models being released every week, you may want to substitute this model to the latest and greatest. The best way to keep track of open source LLMs is to check the [Open-source LLM leaderboard](https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard).\n",
+        "\n",
+        "To make inference faster, we will load the quantized version of the model:"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {
+        "id": "L-ggaa763VRo"
+      },
+      "outputs": [],
+      "source": [
+        "import torch\n",
+        "from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig\n",
+        "\n",
+        "model_name = 'HuggingFaceH4/zephyr-7b-beta'\n",
+        "\n",
+        "bnb_config = BitsAndBytesConfig(\n",
+        "    load_in_4bit=True,\n",
+        "    bnb_4bit_use_double_quant=True,\n",
+        "    bnb_4bit_quant_type=\"nf4\",\n",
+        "    bnb_4bit_compute_dtype=torch.bfloat16\n",
+        ")\n",
+        "\n",
+        "model = AutoModelForCausalLM.from_pretrained(model_name, quantization_config=bnb_config)\n",
+        "tokenizer = AutoTokenizer.from_pretrained(model_name)"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "hVNRJALyXYHG"
+      },
+      "source": [
+        "## Setup the LLM chain"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "RUUNneJ1smhl"
+      },
+      "source": [
+        "Finally, we have all the pieces we need to set up the LLM chain.\n",
+        "\n",
+        "First, create a text_generation pipeline using the loaded model and its tokenizer.\n",
+        "\n",
+        "Next, create a prompt template - this should follow the format of the model, so if you substitute the model checkpoint, make sure to use the appropriate formatting."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 15,
+      "metadata": {
+        "id": "cR0k1cRWz8Pm"
+      },
+      "outputs": [],
+      "source": [
+        "from langchain.llms import HuggingFacePipeline\n",
+        "from langchain.prompts import PromptTemplate\n",
+        "from transformers import pipeline\n",
+        "from langchain_core.output_parsers import StrOutputParser\n",
+        "\n",
+        "text_generation_pipeline = pipeline(\n",
+        "    model=model,\n",
+        "    tokenizer=tokenizer,\n",
+        "    task=\"text-generation\",\n",
+        "    temperature=0.2,\n",
+        "    do_sample=True,\n",
+        "    repetition_penalty=1.1,\n",
+        "    return_full_text=True,\n",
+        "    max_new_tokens=400,\n",
+        ")\n",
+        "\n",
+        "llm = HuggingFacePipeline(pipeline=text_generation_pipeline)\n",
+        "\n",
+        "prompt_template = \"\"\"\n",
+        "<|system|>\n",
+        "Answer the question based on your knowledge. Use the following context to help:\n",
+        "\n",
+        "{context}\n",
+        "\n",
+        "</s>\n",
+        "<|user|>\n",
+        "{question}\n",
+        "</s>\n",
+        "<|assistant|>\n",
+        "\n",
+        " \"\"\"\n",
+        "\n",
+        "prompt = PromptTemplate(\n",
+        "    input_variables=[\"context\", \"question\"],\n",
+        "    template=prompt_template,\n",
+        ")\n",
+        "\n",
+        "llm_chain = prompt | llm | StrOutputParser()"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "l19UKq5HXfSp"
+      },
+      "source": [
+        "Note: _You can also use `tokenizer.apply_chat_template` to convert a list of messages (as dicts: `{'role': 'user', 'content': '(...)'}`) into a string with the appropriate chat format._\n",
+        "\n",
+        "\n",
+        "Finally, we need to combine the `llm_chain` with the retriever to create a RAG chain. We pass the original question through to the final generation step, as well as the retrieved context docs:"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 17,
+      "metadata": {
+        "id": "_rI3YNp9Xl4s"
+      },
+      "outputs": [],
+      "source": [
+        "from langchain_core.runnables import RunnablePassthrough\n",
+        "\n",
+        "retriever = db.as_retriever()\n",
+        "\n",
+        "rag_chain = (\n",
+        " {\"context\": retriever, \"question\": RunnablePassthrough()}\n",
+        "    | llm_chain\n",
+        ")\n"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "UsCOhfDDXpaS"
+      },
+      "source": [
+        "## Compare the results\n",
+        "\n",
+        "Let's see the difference RAG makes in generating answers to the library-specific questions."
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 18,
+      "metadata": {
+        "id": "W7F07fQLXusU"
+      },
+      "outputs": [],
+      "source": [
+        "question = \"How do you combine multiple adapters?\""
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "KC0rJYU1x1ir"
+      },
+      "source": [
+        "First, let's see what kind of answer we can get with just the model itself, no context added:"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 20,
+      "metadata": {
+        "colab": {
+          "base_uri": "https://localhost:8080/",
+          "height": 125
+        },
+        "id": "GYh-HG1l0De5",
+        "outputId": "277d8e89-ce9b-4e04-c11b-639ad2645759"
+      },
+      "outputs": [
+        {
+          "data": {
+            "application/vnd.google.colaboratory.intrinsic+json": {
+              "type": "string"
+            },
+            "text/plain": [
+              "\" To combine multiple adapters, you need to ensure that they are compatible with each other and the devices you want to connect. Here's how you can do it:\\n\\n1. Identify the adapters you need: Determine which adapters you require to connect the devices you want to use together. For example, if you want to connect a USB-C device to an HDMI monitor, you may need a USB-C to HDMI adapter and a USB-C to USB-A adapter (if your computer only has USB-A ports).\\n\\n2. Connect the first adapter: Plug in the first adapter into the device you want to connect. For instance, if you're connecting a USB-C laptop to an HDMI monitor, plug the USB-C to HDMI adapter into the laptop's USB-C port.\\n\\n3. Connect the second adapter: Next, connect the second adapter to the first one. In this case, connect the USB-C to USB-A adapter to the USB-C port of the USB-C to HDMI adapter.\\n\\n4. Connect the final device: Finally, connect the device you want to use to the second adapter. For example, connect the HDMI cable from the monitor to the HDMI port on the USB-C to HDMI adapter.\\n\\n5. Test the connection: Turn on both devices and check whether everything is working correctly. If necessary, adjust the settings on your devices to ensure optimal performance.\\n\\nBy combining multiple adapters, you can connect a variety of devices together, even if they don't have the same type of connector. Just be sure to choose adapters that are compatible with all the devices you want to connect and test the connection thoroughly before relying on it for critical tasks.\""
+            ]
+          },
+          "execution_count": 20,
+          "metadata": {},
+          "output_type": "execute_result"
+        }
+      ],
+      "source": [
+        "llm_chain.invoke({\"context\":\"\", \"question\": question})"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "i-TIWr3wx9w8"
+      },
+      "source": [
+        "As you can see, the model interpreted the question as one about physical computer adapters, while in the context of PEFT, \"adapters\" refer to LoRA adapters.\n",
+        "Let's see if adding context from GitHub issues helps the model give a more relevant answer:"
+      ]
+    },
+    {
+      "cell_type": "code",
+      "execution_count": 21,
+      "metadata": {
+        "colab": {
+          "base_uri": "https://localhost:8080/",
+          "height": 125
+        },
+        "id": "FZpNA3o10H10",
+        "outputId": "31f9aed3-3dd7-4ff8-d1a8-866794fefe80"
+      },
+      "outputs": [
+        {
+          "data": {
+            "application/vnd.google.colaboratory.intrinsic+json": {
+              "type": "string"
+            },
+            "text/plain": [
+              "\" Based on the provided context, it seems that combining multiple adapters is still an open question in the community. Here are some possibilities:\\n\\n  1. Save the output from the base model and pass it to each adapter separately, as described in the first context snippet. This allows you to run multiple adapters simultaneously and reuse the output from the base model. However, this approach requires loading and running each adapter separately.\\n\\n  2. Export everything into a single PyTorch model, as suggested in the second context snippet. This would involve saving all the adapters and their weights into a single model, potentially making it larger and more complex. The advantage of this approach is that it would allow you to run all the adapters simultaneously without having to load and run them separately.\\n\\n  3. Merge multiple Lora adapters, as mentioned in the third context snippet. This involves adding multiple distinct, independent behaviors to a base model by merging multiple Lora adapters. It's not clear from the context how this would be done, but it suggests that there might be a recommended way of doing it.\\n\\n  4. Combine adapters through a specific architecture, as proposed in the fourth context snippet. This involves merging multiple adapters into a single architecture, potentially creating a more complex model with multiple behaviors. Again, it's not clear from the context how this would be done.\\n\\n   Overall, combining multiple adapters is still an active area of research, and there doesn't seem to be a widely accepted solution yet. If you're interested in exploring this further, it might be worth reaching out to the Hugging Face community or checking out their documentation for more information.\""
+            ]
+          },
+          "execution_count": 21,
+          "metadata": {},
+          "output_type": "execute_result"
+        }
+      ],
+      "source": [
+        "rag_chain.invoke(question)"
+      ]
+    },
+    {
+      "cell_type": "markdown",
+      "metadata": {
+        "id": "hZQedZKSyrwO"
+      },
+      "source": [
+        "As we can see, the added context, really helps the exact same model, provide a much more relevant and informed answer to the library-specific question.\n",
+        "\n",
+        "Notably, combining multiple adapters for inference has been added to the library, and one can find this information in the documentation, so for the next iteration of this RAG it may be worth including documentation embeddings."
+      ]
+    }
+  ],
+  "metadata": {
+    "accelerator": "GPU",
+    "colab": {
+      "gpuType": "T4",
+      "provenance": []
+    },
+    "kernelspec": {
+      "display_name": "Python 3",
+      "name": "python3"
+    },
+    "language_info": {
+      "codemirror_mode": {
+        "name": "ipython",
+        "version": 3
+      },
+      "file_extension": ".py",
+      "mimetype": "text/x-python",
+      "name": "python",
+      "nbconvert_exporter": "python",
+      "pygments_lexer": "ipython3",
+      "version": "3.11.3"
+    }
+  },
+  "nbformat": 4,
+  "nbformat_minor": 0
+}
diff --git a/src/notebooks/single_gpu.ipynb b/src/notebooks/single_gpu.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..f59a9ad16e3388b316c89121ab19a4126a02e35a
--- /dev/null
+++ b/src/notebooks/single_gpu.ipynb
@@ -0,0 +1,1129 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "FNdZ-kD0l78P"
+   },
+   "source": [
+    "---\n",
+    "title: Single GPU Fine-tuning\n",
+    "---\n",
+    "\n",
+    "# Fine-tuning a Code LLM on Custom Code on a single GPU\n",
+    "\n",
+    "_Authored by: [Maria Khalusova](https://github.com/MKhalusova)_\n",
+    "\n",
+    "Publicly available code LLMs such as Codex, StarCoder, and Code Llama are great at generating code that adheres to general programming principles and syntax, but they may not align with an organization's internal conventions, or be aware of proprietary libraries.\n",
+    "\n",
+    "In this notebook, we'll see show how you can fine-tune a code LLM on private code bases to enhance its contextual awareness and improve a model's usefulness to your organization's needs. Since the code LLMs are quite large, fine-tuning them in a traditional manner can be resource-draining. Worry not! We will show how you can optimize fine-tuning to fit on a single GPU.\n",
+    "\n",
+    "\n",
+    "## Dataset\n",
+    "\n",
+    "For this example, we picked the top 10 Hugging Face public repositories on GitHub. We have excluded non-code files from the data, such as images, audio files, presentations, and so on. For Jupyter notebooks, we've kept only cells containing code. The resulting code is stored as a dataset that you can find on the Hugging Face Hub under [`smangrul/hf-stack-v1`](https://huggingface.co/datasets/smangrul/hf-stack-v1). It contains repo id, file path, and file content.\n",
+    "\n",
+    "\n",
+    "## Model\n",
+    "\n",
+    "We'll finetune [`bigcode/starcoderbase-1b`](https://huggingface.co/bigcode/starcoderbase-1b), which is a 1B parameter model trained on 80+ programming languages. This is a gated model, so if you plan to run this notebook with this exact model, you'll need to gain access to it on the model's page. Log in to your Hugging Face account to do so:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "bPlCJYDK6vrF"
+   },
+   "outputs": [],
+   "source": [
+    "from huggingface_hub import notebook_login\n",
+    "\n",
+    "notebook_login()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "WMVe_c8q43Qo"
+   },
+   "source": [
+    "To get started, let's install all the necessary libraries. As you can see, in addition to `transformers` and `datasets`, we'll be using `peft`, `bitsandbytes`, and `flash-attn` to optimize the training.\n",
+    "\n",
+    "By employing parameter-efficient training techniques, we can run this notebook on a single A100 High-RAM GPU."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Fp7i8WMCjKJG"
+   },
+   "outputs": [],
+   "source": [
+    "!pip install -q transformers datasets peft bitsandbytes flash-attn"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "16EdABzt3_Ig"
+   },
+   "source": [
+    "Let's define some variables now. Feel free to play with these."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "hru3G-CLmqis"
+   },
+   "outputs": [],
+   "source": [
+    "MODEL=\"bigcode/starcoderbase-1b\" # Model checkpoint on the Hugging Face Hub\n",
+    "DATASET=\"smangrul/hf-stack-v1\"   # Dataset on the Hugging Face Hub\n",
+    "DATA_COLUMN=\"content\"            # Column name containing the code content\n",
+    "\n",
+    "SEQ_LENGTH=2048                  # Sequence length\n",
+    "\n",
+    "# Training arguments\n",
+    "MAX_STEPS=2000                   # max_steps\n",
+    "BATCH_SIZE=16                    # batch_size\n",
+    "GR_ACC_STEPS=1                   # gradient_accumulation_steps\n",
+    "LR=5e-4                          # learning_rate\n",
+    "LR_SCHEDULER_TYPE=\"cosine\"       # lr_scheduler_type\n",
+    "WEIGHT_DECAY=0.01                # weight_decay\n",
+    "NUM_WARMUP_STEPS=30              # num_warmup_steps\n",
+    "EVAL_FREQ=100                    # eval_freq\n",
+    "SAVE_FREQ=100                    # save_freq\n",
+    "LOG_FREQ=25                      # log_freq\n",
+    "OUTPUT_DIR=\"peft-starcoder-lora-a100\" # output_dir\n",
+    "BF16=True                        # bf16\n",
+    "FP16=False                       # no_fp16\n",
+    "\n",
+    "# FIM trasformations arguments\n",
+    "FIM_RATE=0.5                     # fim_rate\n",
+    "FIM_SPM_RATE=0.5                 # fim_spm_rate\n",
+    "\n",
+    "# LORA\n",
+    "LORA_R=8                         # lora_r\n",
+    "LORA_ALPHA=32                    # lora_alpha\n",
+    "LORA_DROPOUT=0.0                 # lora_dropout\n",
+    "LORA_TARGET_MODULES=\"c_proj,c_attn,q_attn,c_fc,c_proj\"    # lora_target_modules\n",
+    "\n",
+    "# bitsandbytes config\n",
+    "USE_NESTED_QUANT=True            # use_nested_quant\n",
+    "BNB_4BIT_COMPUTE_DTYPE=\"bfloat16\"# bnb_4bit_compute_dtype\n",
+    "\n",
+    "SEED=0"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "FyZSXTbJrcnC"
+   },
+   "outputs": [],
+   "source": [
+    "from transformers import (\n",
+    "    AutoModelForCausalLM,\n",
+    "    AutoTokenizer,\n",
+    "    Trainer,\n",
+    "    TrainingArguments,\n",
+    "    logging,\n",
+    "    set_seed,\n",
+    "    BitsAndBytesConfig,\n",
+    ")\n",
+    "\n",
+    "set_seed(SEED)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "pO7F5L5AtKo1"
+   },
+   "source": [
+    "## Prepare the data"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "1LmrIZqP0oUE"
+   },
+   "source": [
+    "Begin by loading the data. As the dataset is likely to be quite large, make sure to enable the streaming mode. Streaming allows us to load the data progressively as we iterate over the dataset instead of downloading the whole dataset at once.\n",
+    "\n",
+    "We'll reserve the first 4000 examples as the validation set, and everything else will be the training data."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "4oJZvZb-1J88"
+   },
+   "outputs": [],
+   "source": [
+    "from datasets import load_dataset\n",
+    "import torch\n",
+    "from tqdm import tqdm\n",
+    "\n",
+    "\n",
+    "dataset = load_dataset(\n",
+    "    DATASET,\n",
+    "    data_dir=\"data\",\n",
+    "    split=\"train\",\n",
+    "    streaming=True,\n",
+    ")\n",
+    "\n",
+    "valid_data = dataset.take(4000)\n",
+    "train_data = dataset.skip(4000)\n",
+    "train_data = train_data.shuffle(buffer_size=5000, seed=SEED)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "sLQ8t0LM2GR6"
+   },
+   "source": [
+    "At this step, the dataset still contains raw data with code of arbitraty length. For training, we need inputs of fixed length. Let's create an Iterable dataset that would return constant-length chunks of tokens from a stream of text files.\n",
+    "\n",
+    "First, let's estimate the average number of characters per token in the dataset, which will help us later estimate the number of tokens in the text buffer later. By default, we'll only take 400 examples (`nb_examples`) from the dataset. Using only a subset of the entire dataset will reduce computational cost while still providing a reasonable estimate of the overall character-to-token ratio."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/"
+    },
+    "id": "KCiAvydztNsu",
+    "outputId": "cabf7fd0-a922-4371-cbc6-60ee99ef7469"
+   },
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 400/400 [00:10<00:00, 39.87it/s] "
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "The character to token ratio of the dataset is: 2.43\n"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\n"
+     ]
+    }
+   ],
+   "source": [
+    "tokenizer = AutoTokenizer.from_pretrained(MODEL, trust_remote_code=True)\n",
+    "\n",
+    "def chars_token_ratio(dataset, tokenizer, data_column, nb_examples=400):\n",
+    "    \"\"\"\n",
+    "    Estimate the average number of characters per token in the dataset.\n",
+    "    \"\"\"\n",
+    "\n",
+    "    total_characters, total_tokens = 0, 0\n",
+    "    for _, example in tqdm(zip(range(nb_examples), iter(dataset)), total=nb_examples):\n",
+    "        total_characters += len(example[data_column])\n",
+    "        total_tokens += len(tokenizer(example[data_column]).tokens())\n",
+    "\n",
+    "    return total_characters / total_tokens\n",
+    "\n",
+    "\n",
+    "chars_per_token = chars_token_ratio(train_data, tokenizer, DATA_COLUMN)\n",
+    "print(f\"The character to token ratio of the dataset is: {chars_per_token:.2f}\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "6F13VGobB3Ma"
+   },
+   "source": [
+    "The character-to-token ratio can also be used as an indicator of the quality of text tokenization. For instance, a character-to-token ratio of 1.0 would mean that each character is represented with a token, which is not very meaningful. This would indicate poor tokenization. In standard English text, one token is typically equivalent to approximately four characters, meaning the character-to-token ratio is around 4.0. We can expect a lower ratio in the code dataset, but generally speaking, a number between 2.0 and 3.5 can be considered good enough."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "rcwYFRPpwxea"
+   },
+   "source": [
+    "**Optional FIM transformations**\n",
+    "\n",
+    "\n",
+    "Autoregressive language models typically generate sequences from left to right. By applying the FIM transformations, the model can also learn to infill text.  Check out [\"Efficient Training of Language Models to Fill in the Middle\" paper](https://arxiv.org/pdf/2207.14255.pdf) to learn more about the technique.\n",
+    "We'll define the FIM transformations here and will use them when creating the Iterable Dataset. However, if you want to omit transformations, feel free to set `fim_rate` to 0."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "zmejYvEKw1E-"
+   },
+   "outputs": [],
+   "source": [
+    "import functools\n",
+    "import numpy as np\n",
+    "\n",
+    "\n",
+    "# Helper function to get token ids of the special tokens for prefix, suffix and middle for FIM transformations.\n",
+    "@functools.lru_cache(maxsize=None)\n",
+    "def get_fim_token_ids(tokenizer):\n",
+    "    try:\n",
+    "        FIM_PREFIX, FIM_MIDDLE, FIM_SUFFIX, FIM_PAD = tokenizer.special_tokens_map[\"additional_special_tokens\"][1:5]\n",
+    "        suffix_tok_id, prefix_tok_id, middle_tok_id, pad_tok_id = (\n",
+    "            tokenizer.vocab[tok] for tok in [FIM_SUFFIX, FIM_PREFIX, FIM_MIDDLE, FIM_PAD]\n",
+    "        )\n",
+    "    except KeyError:\n",
+    "        suffix_tok_id, prefix_tok_id, middle_tok_id, pad_tok_id = None, None, None, None\n",
+    "    return suffix_tok_id, prefix_tok_id, middle_tok_id, pad_tok_id\n",
+    "\n",
+    "\n",
+    "## Adapted from https://github.com/bigcode-project/Megatron-LM/blob/6c4bf908df8fd86b4977f54bf5b8bd4b521003d1/megatron/data/gpt_dataset.py\n",
+    "def permute(\n",
+    "    sample,\n",
+    "    np_rng,\n",
+    "    suffix_tok_id,\n",
+    "    prefix_tok_id,\n",
+    "    middle_tok_id,\n",
+    "    pad_tok_id,\n",
+    "    fim_rate=0.5,\n",
+    "    fim_spm_rate=0.5,\n",
+    "    truncate_or_pad=False,\n",
+    "):\n",
+    "    \"\"\"\n",
+    "    Take in a sample (list of tokens) and perform a FIM transformation on it with a probability of fim_rate, using two FIM modes:\n",
+    "    PSM and SPM (with a probability of fim_spm_rate).\n",
+    "    \"\"\"\n",
+    "\n",
+    "    # The if condition will trigger with the probability of fim_rate\n",
+    "    # This means FIM transformations will apply to samples with a probability of fim_rate\n",
+    "    if np_rng.binomial(1, fim_rate):\n",
+    "\n",
+    "        # Split the sample into prefix, middle, and suffix, based on randomly generated indices stored in the boundaries list.\n",
+    "        boundaries = list(np_rng.randint(low=0, high=len(sample) + 1, size=2))\n",
+    "        boundaries.sort()\n",
+    "\n",
+    "        prefix = np.array(sample[: boundaries[0]], dtype=np.int64)\n",
+    "        middle = np.array(sample[boundaries[0] : boundaries[1]], dtype=np.int64)\n",
+    "        suffix = np.array(sample[boundaries[1] :], dtype=np.int64)\n",
+    "\n",
+    "        if truncate_or_pad:\n",
+    "            # calculate the new total length of the sample, taking into account tokens indicating prefix, middle, and suffix\n",
+    "            new_length = suffix.shape[0] + prefix.shape[0] + middle.shape[0] + 3\n",
+    "            diff = new_length - len(sample)\n",
+    "\n",
+    "            # trancate or pad if there's a difference in length between the new length and the original\n",
+    "            if diff > 0:\n",
+    "                if suffix.shape[0] <= diff:\n",
+    "                    return sample, np_rng\n",
+    "                suffix = suffix[: suffix.shape[0] - diff]\n",
+    "            elif diff < 0:\n",
+    "                suffix = np.concatenate([suffix, np.full((-1 * diff), pad_tok_id)])\n",
+    "\n",
+    "        # With the probability of fim_spm_rateapply SPM variant of FIM transformations\n",
+    "        # SPM: suffix, prefix, middle\n",
+    "        if np_rng.binomial(1, fim_spm_rate):\n",
+    "            new_sample = np.concatenate(\n",
+    "                [\n",
+    "                    [prefix_tok_id, suffix_tok_id],\n",
+    "                    suffix,\n",
+    "                    [middle_tok_id],\n",
+    "                    prefix,\n",
+    "                    middle,\n",
+    "                ]\n",
+    "            )\n",
+    "        # Otherwise, apply the PSM variant of FIM transformations\n",
+    "        # PSM: prefix, suffix, middle\n",
+    "        else:\n",
+    "\n",
+    "            new_sample = np.concatenate(\n",
+    "                [\n",
+    "                    [prefix_tok_id],\n",
+    "                    prefix,\n",
+    "                    [suffix_tok_id],\n",
+    "                    suffix,\n",
+    "                    [middle_tok_id],\n",
+    "                    middle,\n",
+    "                ]\n",
+    "            )\n",
+    "    else:\n",
+    "        # don't apply FIM transformations\n",
+    "        new_sample = sample\n",
+    "\n",
+    "    return list(new_sample), np_rng\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "AwW5FviD9xBH"
+   },
+   "source": [
+    "Let's define the `ConstantLengthDataset`, an Iterable dataset that will return constant-length chunks of tokens. To do so, we'll read a buffer of text from the original dataset until we hit the size limits and then apply tokenizer to convert the raw text into tokenized inputs. Optionally, we'll perform FIM transformations on some sequences (the proportion of sequences affected is controlled by `fim_rate`).\n",
+    "\n",
+    "Once defined, we can create instances of the `ConstantLengthDataset` from both training and validation data."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "AgDW-692wzOl"
+   },
+   "outputs": [],
+   "source": [
+    "from torch.utils.data import IterableDataset\n",
+    "from torch.utils.data.dataloader import DataLoader\n",
+    "import random\n",
+    "\n",
+    "# Create an Iterable dataset that returns constant-length chunks of tokens from a stream of text files.\n",
+    "\n",
+    "class ConstantLengthDataset(IterableDataset):\n",
+    "    \"\"\"\n",
+    "    Iterable dataset that returns constant length chunks of tokens from stream of text files.\n",
+    "        Args:\n",
+    "            tokenizer (Tokenizer): The processor used for proccessing the data.\n",
+    "            dataset (dataset.Dataset): Dataset with text files.\n",
+    "            infinite (bool): If True the iterator is reset after dataset reaches end else stops.\n",
+    "            seq_length (int): Length of token sequences to return.\n",
+    "            num_of_sequences (int): Number of token sequences to keep in buffer.\n",
+    "            chars_per_token (int): Number of characters per token used to estimate number of tokens in text buffer.\n",
+    "            fim_rate (float): Rate (0.0 to 1.0) that sample will be permuted with FIM.\n",
+    "            fim_spm_rate (float): Rate (0.0 to 1.0) of FIM permuations that will use SPM.\n",
+    "            seed (int): Seed for random number generator.\n",
+    "    \"\"\"\n",
+    "\n",
+    "    def __init__(\n",
+    "        self,\n",
+    "        tokenizer,\n",
+    "        dataset,\n",
+    "        infinite=False,\n",
+    "        seq_length=1024,\n",
+    "        num_of_sequences=1024,\n",
+    "        chars_per_token=3.6,\n",
+    "        content_field=\"content\",\n",
+    "        fim_rate=0.5,\n",
+    "        fim_spm_rate=0.5,\n",
+    "        seed=0,\n",
+    "    ):\n",
+    "        self.tokenizer = tokenizer\n",
+    "        self.concat_token_id = tokenizer.eos_token_id\n",
+    "        self.dataset = dataset\n",
+    "        self.seq_length = seq_length\n",
+    "        self.infinite = infinite\n",
+    "        self.current_size = 0\n",
+    "        self.max_buffer_size = seq_length * chars_per_token * num_of_sequences\n",
+    "        self.content_field = content_field\n",
+    "        self.fim_rate = fim_rate\n",
+    "        self.fim_spm_rate = fim_spm_rate\n",
+    "        self.seed = seed\n",
+    "\n",
+    "        (\n",
+    "            self.suffix_tok_id,\n",
+    "            self.prefix_tok_id,\n",
+    "            self.middle_tok_id,\n",
+    "            self.pad_tok_id,\n",
+    "        ) = get_fim_token_ids(self.tokenizer)\n",
+    "        if not self.suffix_tok_id and self.fim_rate > 0:\n",
+    "            print(\"FIM is not supported by tokenizer, disabling FIM\")\n",
+    "            self.fim_rate = 0\n",
+    "\n",
+    "    def __iter__(self):\n",
+    "        iterator = iter(self.dataset)\n",
+    "        more_examples = True\n",
+    "        np_rng = np.random.RandomState(seed=self.seed)\n",
+    "        while more_examples:\n",
+    "            buffer, buffer_len = [], 0\n",
+    "            while True:\n",
+    "                if buffer_len >= self.max_buffer_size:\n",
+    "                    break\n",
+    "                try:\n",
+    "                    buffer.append(next(iterator)[self.content_field])\n",
+    "                    buffer_len += len(buffer[-1])\n",
+    "                except StopIteration:\n",
+    "                    if self.infinite:\n",
+    "                        iterator = iter(self.dataset)\n",
+    "                    else:\n",
+    "                        more_examples = False\n",
+    "                        break\n",
+    "            tokenized_inputs = self.tokenizer(buffer, truncation=False)[\"input_ids\"]\n",
+    "            all_token_ids = []\n",
+    "\n",
+    "            for tokenized_input in tokenized_inputs:\n",
+    "                # optionally do FIM permutations\n",
+    "                if self.fim_rate > 0:\n",
+    "                    tokenized_input, np_rng = permute(\n",
+    "                        tokenized_input,\n",
+    "                        np_rng,\n",
+    "                        self.suffix_tok_id,\n",
+    "                        self.prefix_tok_id,\n",
+    "                        self.middle_tok_id,\n",
+    "                        self.pad_tok_id,\n",
+    "                        fim_rate=self.fim_rate,\n",
+    "                        fim_spm_rate=self.fim_spm_rate,\n",
+    "                        truncate_or_pad=False,\n",
+    "                    )\n",
+    "\n",
+    "                all_token_ids.extend(tokenized_input + [self.concat_token_id])\n",
+    "            examples = []\n",
+    "            for i in range(0, len(all_token_ids), self.seq_length):\n",
+    "                input_ids = all_token_ids[i : i + self.seq_length]\n",
+    "                if len(input_ids) == self.seq_length:\n",
+    "                    examples.append(input_ids)\n",
+    "            random.shuffle(examples)\n",
+    "            for example in examples:\n",
+    "                self.current_size += 1\n",
+    "                yield {\n",
+    "                    \"input_ids\": torch.LongTensor(example),\n",
+    "                    \"labels\": torch.LongTensor(example),\n",
+    "                }\n",
+    "\n",
+    "\n",
+    "train_dataset = ConstantLengthDataset(\n",
+    "        tokenizer,\n",
+    "        train_data,\n",
+    "        infinite=True,\n",
+    "        seq_length=SEQ_LENGTH,\n",
+    "        chars_per_token=chars_per_token,\n",
+    "        content_field=DATA_COLUMN,\n",
+    "        fim_rate=FIM_RATE,\n",
+    "        fim_spm_rate=FIM_SPM_RATE,\n",
+    "        seed=SEED,\n",
+    ")\n",
+    "eval_dataset = ConstantLengthDataset(\n",
+    "        tokenizer,\n",
+    "        valid_data,\n",
+    "        infinite=False,\n",
+    "        seq_length=SEQ_LENGTH,\n",
+    "        chars_per_token=chars_per_token,\n",
+    "        content_field=DATA_COLUMN,\n",
+    "        fim_rate=FIM_RATE,\n",
+    "        fim_spm_rate=FIM_SPM_RATE,\n",
+    "        seed=SEED,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "rxev1sk6tRW9"
+   },
+   "source": [
+    "## Prepare the model"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "UCtWV-U42Eq_"
+   },
+   "source": [
+    "Now that the data is prepared, it's time to load the model! We're going to load the quantized version of the model.\n",
+    "\n",
+    "This will allow us to reduce memory usage, as quantization represents data with fewer bits. We'll use the `bitsandbytes` library to quantize the model, as it has a nice integration with `transformers`. All we need to do is define a `bitsandbytes` config, and then use it when loading the model.\n",
+    "\n",
+    "There are different variants of 4bit quantization, but generally, we recommend using NF4 quantization for better performance (`bnb_4bit_quant_type=\"nf4\"`).\n",
+    "\n",
+    "The `bnb_4bit_use_double_quant` option adds a second quantization after the first one to save an additional 0.4 bits per parameter.\n",
+    "\n",
+    "To learn more about quantization, check out the [\"Making LLMs even more accessible with bitsandbytes, 4-bit quantization and QLoRA\" blog post](https://huggingface.co/blog/4bit-transformers-bitsandbytes).\n",
+    "\n",
+    "Once defined, pass the config to the `from_pretrained` method to load the quantized version of the model."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "XuwoX6U2DUvK"
+   },
+   "outputs": [],
+   "source": [
+    "from peft import LoraConfig, get_peft_model, prepare_model_for_kbit_training\n",
+    "from peft.tuners.lora import LoraLayer\n",
+    "\n",
+    "load_in_8bit = False\n",
+    "\n",
+    "# 4-bit quantization\n",
+    "compute_dtype = getattr(torch, BNB_4BIT_COMPUTE_DTYPE)\n",
+    "\n",
+    "bnb_config = BitsAndBytesConfig(\n",
+    "    load_in_4bit=True,\n",
+    "    bnb_4bit_quant_type=\"nf4\",\n",
+    "    bnb_4bit_compute_dtype=compute_dtype,\n",
+    "    bnb_4bit_use_double_quant=USE_NESTED_QUANT,\n",
+    ")\n",
+    "\n",
+    "device_map = {\"\": 0}\n",
+    "\n",
+    "model = AutoModelForCausalLM.from_pretrained(\n",
+    "        MODEL,\n",
+    "        load_in_8bit=load_in_8bit,\n",
+    "        quantization_config=bnb_config,\n",
+    "        device_map=device_map,\n",
+    "        use_cache=False,  # We will be using gradient checkpointing\n",
+    "        trust_remote_code=True,\n",
+    "        use_flash_attention_2=True,\n",
+    ")\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "bO9e2FV8D8ZF"
+   },
+   "source": [
+    "When using a quantized model for training, you need to call the `prepare_model_for_kbit_training()` function to preprocess the quantized model for training."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "Qb_eB4xzEDBk"
+   },
+   "outputs": [],
+   "source": [
+    "model = prepare_model_for_kbit_training(model)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "lmnLjPZpDVtg"
+   },
+   "source": [
+    "Now that the quantized model is ready, we can set up a LoRA configuration. LoRA makes fine-tuning more efficient by drastically reducing the number of trainable parameters.\n",
+    "\n",
+    "To train a model using LoRA technique, we need to wrap the base model as a `PeftModel`. This involves definign LoRA configuration with `LoraConfig`, and wrapping the original model with `get_peft_model()` using the `LoraConfig`.\n",
+    "\n",
+    "To learn more about LoRA and its parameters, refer to [PEFT documentation](https://huggingface.co/docs/peft/conceptual_guides/lora)."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/"
+    },
+    "id": "_pAUU2FR2Gey",
+    "outputId": "63328c2b-e693-49b1-ce0a-3ca8722f852a"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "trainable params: 5,554,176 || all params: 1,142,761,472 || trainable%: 0.4860310866343243\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Set up lora\n",
+    "peft_config = LoraConfig(\n",
+    "    lora_alpha=LORA_ALPHA,\n",
+    "    lora_dropout=LORA_DROPOUT,\n",
+    "    r=LORA_R,\n",
+    "    bias=\"none\",\n",
+    "    task_type=\"CAUSAL_LM\",\n",
+    "    target_modules=LORA_TARGET_MODULES.split(\",\"),\n",
+    ")\n",
+    "\n",
+    "model = get_peft_model(model, peft_config)\n",
+    "model.print_trainable_parameters()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "tHe7AElXzXVV"
+   },
+   "source": [
+    "As you can see, by applying LoRA technique we will now need to train less than 1% of the parameters."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "T_CqVydc40IM"
+   },
+   "source": [
+    "## Train the model"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Q_iN2khjrbD3"
+   },
+   "source": [
+    "Now that we have prepared the data, and optimized the model, we are ready to bring everything together to start the training.\n",
+    "\n",
+    "To instantiate a `Trainer`, you need to define the training configuration. The most important is the `TrainingArguments`, which is a class that contains all the attributes to configure the training.\n",
+    "\n",
+    "These are similar to any other kind of model training you may run, so we won't go into detail here."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "65QHS8l1tKQe"
+   },
+   "outputs": [],
+   "source": [
+    "train_data.start_iteration = 0\n",
+    "\n",
+    "\n",
+    "training_args = TrainingArguments(\n",
+    "    output_dir=f\"Your_HF_username/{OUTPUT_DIR}\",\n",
+    "    dataloader_drop_last=True,\n",
+    "    evaluation_strategy=\"steps\",\n",
+    "    save_strategy=\"steps\",\n",
+    "    max_steps=MAX_STEPS,\n",
+    "    eval_steps=EVAL_FREQ,\n",
+    "    save_steps=SAVE_FREQ,\n",
+    "    logging_steps=LOG_FREQ,\n",
+    "    per_device_train_batch_size=BATCH_SIZE,\n",
+    "    per_device_eval_batch_size=BATCH_SIZE,\n",
+    "    learning_rate=LR,\n",
+    "    lr_scheduler_type=LR_SCHEDULER_TYPE,\n",
+    "    warmup_steps=NUM_WARMUP_STEPS,\n",
+    "    gradient_accumulation_steps=GR_ACC_STEPS,\n",
+    "    gradient_checkpointing=True,\n",
+    "    fp16=FP16,\n",
+    "    bf16=BF16,\n",
+    "    weight_decay=WEIGHT_DECAY,\n",
+    "    push_to_hub=True,\n",
+    "    include_tokens_per_second=True,\n",
+    ")\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "kB_fLRex09ut"
+   },
+   "source": [
+    "As a final step, instantiate the `Trainer` and call the `train` method.   "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/",
+     "height": 1000
+    },
+    "id": "rS3nVwhUC69O",
+    "outputId": "61a5bdb2-b7d0-4aed-8290-4bf20c2ccd38"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Training...\n"
+     ]
+    },
+    {
+     "data": {
+      "text/html": [
+       "\n",
+       "    <div>\n",
+       "      \n",
+       "      <progress value='2000' max='2000' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
+       "      [2000/2000 4:16:10, Epoch 1/9223372036854775807]\n",
+       "    </div>\n",
+       "    <table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       " <tr style=\"text-align: left;\">\n",
+       "      <th>Step</th>\n",
+       "      <th>Training Loss</th>\n",
+       "      <th>Validation Loss</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <td>100</td>\n",
+       "      <td>5.524600</td>\n",
+       "      <td>7.456872</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>200</td>\n",
+       "      <td>5.617800</td>\n",
+       "      <td>7.262190</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>300</td>\n",
+       "      <td>5.129100</td>\n",
+       "      <td>6.410039</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>400</td>\n",
+       "      <td>5.052200</td>\n",
+       "      <td>6.306774</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>500</td>\n",
+       "      <td>5.202900</td>\n",
+       "      <td>6.117062</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>600</td>\n",
+       "      <td>4.654100</td>\n",
+       "      <td>6.018349</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>700</td>\n",
+       "      <td>5.100200</td>\n",
+       "      <td>6.000355</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>800</td>\n",
+       "      <td>5.049800</td>\n",
+       "      <td>5.889457</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>900</td>\n",
+       "      <td>4.541200</td>\n",
+       "      <td>5.813823</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1000</td>\n",
+       "      <td>5.000700</td>\n",
+       "      <td>5.834208</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1100</td>\n",
+       "      <td>5.026500</td>\n",
+       "      <td>5.781939</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1200</td>\n",
+       "      <td>4.411800</td>\n",
+       "      <td>5.720596</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1300</td>\n",
+       "      <td>4.782500</td>\n",
+       "      <td>5.736376</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1400</td>\n",
+       "      <td>4.980200</td>\n",
+       "      <td>5.712276</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1500</td>\n",
+       "      <td>4.368700</td>\n",
+       "      <td>5.689637</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1600</td>\n",
+       "      <td>4.884700</td>\n",
+       "      <td>5.675920</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1700</td>\n",
+       "      <td>4.914400</td>\n",
+       "      <td>5.662421</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1800</td>\n",
+       "      <td>4.248700</td>\n",
+       "      <td>5.660122</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>1900</td>\n",
+       "      <td>4.798400</td>\n",
+       "      <td>5.664026</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <td>2000</td>\n",
+       "      <td>4.704200</td>\n",
+       "      <td>5.655665</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table><p>"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/plain": [
+       "TrainOutput(global_step=2000, training_loss=4.885598585128784, metrics={'train_runtime': 15380.3075, 'train_samples_per_second': 2.081, 'train_steps_per_second': 0.13, 'train_tokens_per_second': 4261.033, 'total_flos': 4.0317260660736e+17, 'train_loss': 4.885598585128784, 'epoch': 1.0})"
+      ]
+     },
+     "execution_count": 19,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "trainer = Trainer(\n",
+    "    model=model, args=training_args, train_dataset=train_dataset, eval_dataset=eval_dataset\n",
+    ")\n",
+    "\n",
+    "print(\"Training...\")\n",
+    "trainer.train()\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "aAERlCnt1PEW"
+   },
+   "source": [
+    "Finally, you can push the fine-tuned model to your Hub repository to share with your team."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "1h7_AUTTDwE1"
+   },
+   "outputs": [],
+   "source": [
+    "trainer.push_to_hub()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "KBVH7uFOM_UF"
+   },
+   "source": [
+    "## Inference\n",
+    "\n",
+    "Once the model is uploaded to Hub, we can use it for inference. To do so we first initialize the original base model and its tokenizer. Next, we need to merge the fine-duned weights with the base model."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "jtL37piINBFe"
+   },
+   "outputs": [],
+   "source": [
+    "from peft import PeftModel\n",
+    "import torch\n",
+    "\n",
+    "# load the original model first\n",
+    "tokenizer = AutoTokenizer.from_pretrained(MODEL, trust_remote_code=True)\n",
+    "base_model = AutoModelForCausalLM.from_pretrained(\n",
+    "    MODEL,\n",
+    "    quantization_config=None,\n",
+    "    device_map=None,\n",
+    "    trust_remote_code=True,\n",
+    "    torch_dtype=torch.bfloat16,\n",
+    ").cuda()\n",
+    "\n",
+    "# merge fine-tuned weights with the base model\n",
+    "peft_model_id = f\"Your_HF_username/{OUTPUT_DIR}\"\n",
+    "model = PeftModel.from_pretrained(base_model, peft_model_id)\n",
+    "model.merge_and_unload()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "3USQ2suvDi9M"
+   },
+   "source": [
+    "Now we can use the merged model for inference. For convenience, we'll define a `get_code_completion` - feel free to experiment with text generation parameters!"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "id": "RoTGpNbjDeWI"
+   },
+   "outputs": [],
+   "source": [
+    "def get_code_completion(prefix, suffix):\n",
+    "    text = prompt = f\"\"\"<fim_prefix>{prefix}<fim_suffix>{suffix}<fim_middle>\"\"\"\n",
+    "    model.eval()\n",
+    "    outputs = model.generate(\n",
+    "        input_ids=tokenizer(text, return_tensors=\"pt\").input_ids.cuda(),\n",
+    "        max_new_tokens=128,\n",
+    "        temperature=0.2,\n",
+    "        top_k=50,\n",
+    "        top_p=0.95,\n",
+    "        do_sample=True,\n",
+    "        repetition_penalty=1.0,\n",
+    "    )\n",
+    "    return tokenizer.batch_decode(outputs, skip_special_tokens=True)[0]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "0kMJiGDfDrBf"
+   },
+   "source": [
+    "Now all we need to do to get code completion is call the `get_code_complete` function and pass the first few lines that we want to be completed as a prefix, and an empty string as a suffix."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/"
+    },
+    "id": "nXlco2_-YcvM",
+    "outputId": "41c411ad-b7dc-4277-f975-c173888234bb"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "from peft import LoraConfig, TaskType, get_peft_model\n",
+      "from transformers import AutoModelForCausalLM\n",
+      "peft_config = LoraConfig(\n",
+      "    task_type=TaskType.CAUSAL_LM,\n",
+      "    r=8,\n",
+      "    lora_alpha=32,\n",
+      "    target_modules=[\"q_proj\", \"v_proj\"],\n",
+      "    lora_dropout=0.1,\n",
+      "    bias=\"none\",\n",
+      "    modules_to_save=[\"q_proj\", \"v_proj\"],\n",
+      "    inference_mode=False,\n",
+      ")\n",
+      "model = AutoModelForCausalLM.from_pretrained(\"gpt2\")\n",
+      "model = get_peft_model(model, peft_config)\n",
+      "model.print_trainable_parameters()\n"
+     ]
+    }
+   ],
+   "source": [
+    "prefix = \"\"\"from peft import LoraConfig, TaskType, get_peft_model\n",
+    "from transformers import AutoModelForCausalLM\n",
+    "peft_config = LoraConfig(\n",
+    "\"\"\"\n",
+    "suffix =\"\"\"\"\"\"\n",
+    "\n",
+    "print(get_code_completion(prefix, suffix))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Ql2563kGlnmu"
+   },
+   "source": [
+    "As someone who has just used the PEFT library earlier in this notebook, you can see that the generated result for creating a `LoraConfig` is rather good!\n",
+    "\n",
+    "If you go back to the cell where we instantiate the model for inference, and comment out the lines where we merge the fine-tuned weights, you can see what the original model would've generated for the exact same prefix:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "colab": {
+     "base_uri": "https://localhost:8080/"
+    },
+    "id": "29xxp1eHTgJ9",
+    "outputId": "c6d597a2-01da-4d25-a32f-3a551212c5b4"
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "from peft import LoraConfig, TaskType, get_peft_model\n",
+      "from transformers import AutoModelForCausalLM\n",
+      "peft_config = LoraConfig(\n",
+      "    model_name_or_path=\"facebook/wav2vec2-base-960h\",\n",
+      "    num_labels=1,\n",
+      "    num_features=1,\n",
+      "    num_hidden_layers=1,\n",
+      "    num_attention_heads=1,\n",
+      "    num_hidden_layers_per_attention_head=1,\n",
+      "    num_attention_heads_per_hidden_layer=1,\n",
+      "    hidden_size=1024,\n",
+      "    hidden_dropout_prob=0.1,\n",
+      "    hidden_act=\"gelu\",\n",
+      "    hidden_act_dropout_prob=0.1,\n",
+      "    hidden\n"
+     ]
+    }
+   ],
+   "source": [
+    "prefix = \"\"\"from peft import LoraConfig, TaskType, get_peft_model\n",
+    "from transformers import AutoModelForCausalLM\n",
+    "peft_config = LoraConfig(\n",
+    "\"\"\"\n",
+    "suffix =\"\"\"\"\"\"\n",
+    "\n",
+    "print(get_code_completion(prefix, suffix))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "Pwy2ZC7U8Ema"
+   },
+   "source": [
+    "While it is Python syntax, you can see that the original model has no understanding of what a `LoraConfig` should be doing."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "id": "CATYE8pp2drQ"
+   },
+   "source": [
+    "To learn how this kind of fine-tuning compares to full fine-tuning, and how to use a model like this as your copilot in VS Code via Inference Endpoints, or locally, check out the [\"Personal Copilot: Train Your Own Coding Assistant\" blog post](https://huggingface.co/blog/personal-copilot). This notebook complements the original blog post.\n"
+   ]
+  }
+ ],
+ "metadata": {
+  "accelerator": "GPU",
+  "colab": {
+   "gpuType": "A100",
+   "machine_shape": "hm",
+   "provenance": []
+  },
+  "kernelspec": {
+   "display_name": "Python 3",
+   "name": "python3"
+  },
+  "language_info": {
+   "name": "python"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/_site/styles.css b/src/styles.css
similarity index 100%
rename from _site/styles.css
rename to src/styles.css
diff --git a/styles.css b/styles.css
deleted file mode 100644
index 2ddf50c7b4236e4b67c3e9fc369f6a7a562cd27d..0000000000000000000000000000000000000000
--- a/styles.css
+++ /dev/null
@@ -1 +0,0 @@
-/* css styles */