<commit_before><!DOCTYPE html>
<html lang="en">
<head>
  <title>Kontra.js – {{ sections.[0].name }}</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <base href="https://straker.github.io/kontra/">

  <script>
  // adjust path based on location (github pages required kontra url)
  if (['localhost', '127.0.0.1'].includes(window.location.hostname)) {
    let base = document.querySelector('base');
    base.setAttribute('href', '/');
  }
  </script>

  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/themes/prism.min.css">
  <link rel="stylesheet" href="assets/styles.css">
  <script src="assets/js/kontra.js"></script>
</head>
<body>
  <div class="content">
    <header class="main-nav">
      <div id="kontra-heading" class="nav-heading">Kontra</div>
      <a href="#main">Skip navigation</a>

      <nav>
        <button class="menu-button" aria-expanded="false" aria-controls="menu"><span aria-hidden="true">☰</span> Menu</button>

        <!-- add role=list back to list so screen readers still read it as list when
             css list-style: none is set
             @see https://web-a11y.slack.com/archives/C042TSFGN/p1501699529181172 -->
        <ul id="menu" role="list">
          <li><a href="." {{#if nav-index}}aria-current="page"{{/if}}>Introduction</a></li>
          <li><a href="getting-started" {{#if nav-getting-started}}aria-current="page"{{/if}}>Getting Started</a></li>
          <li><a href="download" {{#if nav-download}}aria-current="page"{{/if}}>Download</a></li>
          <li><a href="custom-builds" {{#if nav-custom-builds}}aria-current="page"{{/if}}>Custom Builds</a></li>
          <li><a href="tutorials" {{#if nav-tutorials}}aria-current="page"{{/if}}>Tutorials</a></li>
          <li><a href="made-with-kontra" {{#if nav-made-with-kontra}}aria-current="page"{{/if}}>Made With Kontra</a></li>

          <li>
            <span id="api" class="nav-api-heading">API</span>
            <ul aria-labelledby="api">
              {{#each navbar}}
              <li><a href="api/{{ url }}" {{#if selected}}aria-current="page"{{/if}}>{{ name }}</a></li>
              {{/each}}
            </ul>
          </li>
        </ul>
      </nav>
      <div class="scroll-indicator" aria-hidden="true"><span>^</span></div>
    </header>

    <script>
      // restore scroll position on page load (do it here so there is no flash
      // of unscrolled content)
      let nav = document.querySelector('.main-nav');
      if (sessionStorage.getItem('kontra-nav-scroll')) {
        nav.scrollTop = parseInt(sessionStorage.getItem('kontra-nav-scroll'));
<commit_msg>docs: update nav<commit_after><!DOCTYPE html>
<html lang="en">
<head>
  <title>Kontra.js – {{ sections.[0].name }}</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <base href="https://straker.github.io/kontra/">

  <script>
  // adjust path based on location (github pages required kontra url)
  if (['localhost', '127.0.0.1'].includes(window.location.hostname)) {
    let base = document.querySelector('base');
    base.setAttribute('href', '/');
  }
  </script>

  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/themes/prism.min.css">
  <link rel="stylesheet" href="assets/styles.css">
  <script src="assets/js/kontra.js"></script>
</head>
<body>
  <div class="content">
    <header class="main-nav">
      <div id="kontra-heading" class="nav-heading">Kontra</div>
      <a href="#main">Skip navigation</a>

      <nav>
        <button class="menu-button" aria-expanded="false" aria-controls="menu"><span aria-hidden="true">☰</span> Menu</button>

        <!-- add role=list back to list so screen readers still read it as list when
             css list-style: none is set
             @see https://web-a11y.slack.com/archives/C042TSFGN/p1501699529181172 -->
        <ul id="menu" role="list">
          <li><a href="." {{#if nav-index}}aria-current="page"{{/if}}>Introduction</a></li>
          <li><a href="getting-started" {{#if nav-getting-started}}aria-current="page"{{/if}}>Getting Started</a></li>
          <li><a href="download" {{#if nav-download}}aria-current="page"{{/if}}>Download</a></li>
          <li><a href="reducing-file-size" {{#if nav-reducing-file-size}}aria-current="page"{{/if}}>Reducing File Size</a></li>
          <li><a href="tutorials" {{#if nav-tutorials}}aria-current="page"{{/if}}>Tutorials</a></li>
          <li><a href="made-with-kontra" {{#if nav-made-with-kontra}}aria-current="page"{{/if}}>Made With Kontra</a></li>

          <li>
            <span id="api" class="nav-api-heading">API</span>
            <ul aria-labelledby="api">
              {{#each navbar}}
              <li><a href="api/{{ url }}" {{#if selected}}aria-current="page"{{/if}}>{{ name }}</a></li>
              {{/each}}
            </ul>
          </li>
        </ul>
      </nav>
      <div class="scroll-indicator" aria-hidden="true"><span>^</span></div>
    </header>

    <script>
      // restore scroll position on page load (do it here so there is no flash
      // of unscrolled content)
      let nav = document.querySelector('.main-nav');
      if (sessionStorage.getItem('kontra-nav-scroll')) {
        nav.scrollTop = parseInt(sessionStorage.getItem('kontra-nav-scroll'));

{'fraction_non_alphanumeric': 0.20936794582392776, 'fraction_numerical': 0.012791572610985704, 'mean_word_length': 3.096302003081664, 'pattern_counts': {'":': 0, '<': 143, '<?xml version=': 0, '>': 143, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 6, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5364786', 'n_tokens_mistral': 1842, 'n_tokens_neox': 1790, 'n_words': 327}