Files
2024-03-05 21:06:01 +01:00

393 lines
26 KiB
HTML

<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="description" content="A complete library to interact with classroom (protocol v1)" /><link rel="canonical" href="http://byron.github.io/google-apis-rs/google-classroom1-cli/" />
<link rel="shortcut icon" href="img/favicon.ico" />
<title>classroom v5.0.4+20240227</title>
<link rel="stylesheet" href="css/theme.css" />
<link rel="stylesheet" href="css/theme_extra.css" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/styles/github.min.css" />
<script>
// Current page data
var mkdocs_page_name = "Home";
var mkdocs_page_input_path = "index.md";
var mkdocs_page_url = "/google-apis-rs/google-classroom1-cli/";
</script>
<script src="js/jquery-3.6.0.min.js" defer></script>
<!--[if lt IE 9]>
<script src="js/html5shiv.min.js"></script>
<![endif]-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.5.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="." class="icon icon-home"> classroom v5.0.4+20240227
</a><div role="search">
<form id ="rtd-search-form" class="wy-form" action="./search.html" method="get">
<input type="text" name="q" placeholder="Search docs" title="Type search term here" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal current" href=".">Home</a>
<ul class="current">
</ul>
</li>
</ul>
<p class="caption"><span class="caption-text">Courses</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="courses_aliases-create/">Aliases Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_aliases-delete/">Aliases Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_aliases-list/">Aliases List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-create/">Announcements Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-delete/">Announcements Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-get/">Announcements Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-list/">Announcements List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-modify-assignees/">Announcements Modify Assignees</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_announcements-patch/">Announcements Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-create/">Course Work Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-delete/">Course Work Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-get/">Course Work Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-list/">Course Work List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-modify-assignees/">Course Work Modify Assignees</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-patch/">Course Work Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-get/">Course Work Student Submissions Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-list/">Course Work Student Submissions List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-modify-attachments/">Course Work Student Submissions Modify Attachments</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-patch/">Course Work Student Submissions Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-reclaim/">Course Work Student Submissions Reclaim</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-return/">Course Work Student Submissions Return</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-student-submissions-turn-in/">Course Work Student Submissions Turn In</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-materials-create/">Course Work Materials Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-materials-delete/">Course Work Materials Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-materials-get/">Course Work Materials Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-materials-list/">Course Work Materials List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_course-work-materials-patch/">Course Work Materials Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_create/">Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_delete/">Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_get/">Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_list/">List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_patch/">Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_students-create/">Students Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_students-delete/">Students Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_students-get/">Students Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_students-list/">Students List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_teachers-create/">Teachers Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_teachers-delete/">Teachers Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_teachers-get/">Teachers Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_teachers-list/">Teachers List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_topics-create/">Topics Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_topics-delete/">Topics Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_topics-get/">Topics Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_topics-list/">Topics List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_topics-patch/">Topics Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="courses_update/">Update</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Invitations</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="invitations_accept/">Accept</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="invitations_create/">Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="invitations_delete/">Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="invitations_get/">Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="invitations_list/">List</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Registrations</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="registrations_create/">Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="registrations_delete/">Delete</a>
</li>
</ul>
<p class="caption"><span class="caption-text">User Profiles</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_get/">Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardian-invitations-create/">Guardian Invitations Create</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardian-invitations-get/">Guardian Invitations Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardian-invitations-list/">Guardian Invitations List</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardian-invitations-patch/">Guardian Invitations Patch</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardians-delete/">Guardians Delete</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardians-get/">Guardians Get</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="user-profiles_guardians-list/">Guardians List</a>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="Mobile navigation menu">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href=".">classroom v5.0.4+20240227</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content"><div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="." class="icon icon-home" alt="Docs"></a> &raquo;</li>
<li>Home</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/Byron/google-apis-rs/tree/main/gen/classroom1-cli/edit/master/docs/index.md"
class="icon icon-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div class="section" itemprop="articleBody">
<!---
DO NOT EDIT !
This file was generated automatically from 'src/generator/templates/cli/README.md.mako'
DO NOT EDIT !
-->
<p>The <code>classroom1</code> command-line interface <em>(CLI)</em> allows to use most features of the <em>Google classroom</em> service from the comfort of your terminal.</p>
<p>By default all output is printed to standard out, but flags can be set to direct it into a file independent of your shell's
capabilities. Errors will be printed to standard error, and cause the program's exit code to be non-zero.</p>
<p>If data-structures are requested, these will be returned as pretty-printed JSON, to be useful as input to other tools.</p>
<p>Everything else about the <em>classroom</em> API can be found at the
<a href="https://developers.google.com/classroom/">official documentation site</a>.</p>
<h1 id="installation-and-source-code">Installation and Source Code</h1>
<p>Install the command-line interface with cargo using:</p>
<pre><code class="language-bash">cargo install google-classroom1-cli
</code></pre>
<p>Find the source code <a href="https://github.com/Byron/google-apis-rs/tree/main/gen/classroom1-cli">on github</a>.</p>
<h1 id="usage">Usage</h1>
<p>This documentation was generated from the <em>classroom</em> API at revision <em>20240227</em>. The CLI is at version <em>5.0.4</em>.</p>
<pre><code class="language-bash">classroom1 [options]
courses
aliases-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
aliases-delete &lt;course-id&gt; &lt;alias&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
aliases-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-delete &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-get &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-modify-assignees &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
announcements-patch &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-delete &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-get &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-modify-assignees &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-patch &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-get &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-list &lt;course-id&gt; &lt;course-work-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-modify-attachments &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-patch &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-reclaim &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-return &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-student-submissions-turn-in &lt;course-id&gt; &lt;course-work-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-materials-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-materials-delete &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-materials-get &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-materials-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
course-work-materials-patch &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
create (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
delete &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
get &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
list [-p &lt;v&gt;]... [-o &lt;out&gt;]
patch &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
students-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
students-delete &lt;course-id&gt; &lt;user-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
students-get &lt;course-id&gt; &lt;user-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
students-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
teachers-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
teachers-delete &lt;course-id&gt; &lt;user-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
teachers-get &lt;course-id&gt; &lt;user-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
teachers-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
topics-create &lt;course-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
topics-delete &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
topics-get &lt;course-id&gt; &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
topics-list &lt;course-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
topics-patch &lt;course-id&gt; &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
update &lt;id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
invitations
accept &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
create (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
delete &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
get &lt;id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
list [-p &lt;v&gt;]... [-o &lt;out&gt;]
registrations
create (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
delete &lt;registration-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
user-profiles
get &lt;user-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardian-invitations-create &lt;student-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardian-invitations-get &lt;student-id&gt; &lt;invitation-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardian-invitations-list &lt;student-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardian-invitations-patch &lt;student-id&gt; &lt;invitation-id&gt; (-r &lt;kv&gt;)... [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardians-delete &lt;student-id&gt; &lt;guardian-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardians-get &lt;student-id&gt; &lt;guardian-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
guardians-list &lt;student-id&gt; [-p &lt;v&gt;]... [-o &lt;out&gt;]
classroom1 --help
Configuration:
[--scope &lt;url&gt;]...
Specify the authentication a method should be executed in. Each scope
requires the user to grant this application permission to use it.
If unset, it defaults to the shortest scope url for a particular method.
--config-dir &lt;folder&gt;
A directory into which we will store our persistent data. Defaults to
a user-writable directory that we will create during the first invocation.
[default: ~/.google-service-cli]
</code></pre>
<h1 id="configuration">Configuration</h1>
<p>The program will store all persistent data in the <code>~/.google-service-cli</code> directory in <em>JSON</em> files prefixed with <code>classroom1-</code>. You can change the directory used to store configuration with the <code>--config-dir</code> flag on a per-invocation basis.</p>
<p>More information about the various kinds of persistent data are given in the following paragraphs.</p>
<h1 id="authentication">Authentication</h1>
<p>Most APIs require a user to authenticate any request. If this is the case, the <a href="https://developers.google.com/+/api/oauth#scopes">scope</a> determines the
set of permissions granted. The granularity of these is usually no more than <em>read-only</em> or <em>full-access</em>.</p>
<p>If not set, the system will automatically select the smallest feasible scope, e.g. when invoking a
method that is read-only, it will ask only for a read-only scope.
You may use the <code>--scope</code> flag to specify a scope directly.
All applicable scopes are documented in the respective method's CLI documentation.</p>
<p>The first time a scope is used, the user is asked for permission. Follow the instructions given
by the CLI to grant permissions, or to decline.</p>
<p>If a scope was authenticated by the user, the respective information will be stored as <em>JSON</em> in the configuration
directory, e.g. <code>~/.google-service-cli/classroom1-token-&lt;scope-hash&gt;.json</code>. No manual management of these tokens
is necessary.</p>
<p>To revoke granted authentication, please refer to the <a href="http://webapps.stackexchange.com/a/30849">official documentation</a>.</p>
<h1 id="application-secrets">Application Secrets</h1>
<p>In order to allow any application to use Google services, it will need to be registered using the
<a href="https://console.developers.google.com/">Google Developer Console</a>. APIs the application may use are then enabled for it
one by one. Most APIs can be used for free and have a daily quota.</p>
<p>To allow more comfortable usage of the CLI without forcing anyone to register an own application, the CLI
comes with a default application secret that is configured accordingly. This also means that heavy usage
all around the world may deplete the daily quota.</p>
<p>You can workaround this limitation by putting your own secrets file at this location:
<code>~/.google-service-cli/classroom1-secret.json</code>, assuming that the required <em>classroom</em> API
was enabled for it. Such a secret file can be downloaded in the <em>Google Developer Console</em> at
<em>APIs &amp; auth -&gt; Credentials -&gt; Download JSON</em> and used as is.</p>
<p>Learn more about how to setup Google projects and enable APIs using the <a href="https://developers.google.com/console/help/new/">official documentation</a>.</p>
<h1 id="debugging">Debugging</h1>
<p>Even though the CLI does its best to provide usable error messages, sometimes it might be desirable to know
what exactly led to a particular issue. This is done by allowing all client-server communication to be
output to standard error <em>as-is</em>.</p>
<p>The <code>--debug</code> flag will print errors using the <code>Debug</code> representation to standard error.</p>
<p>You may consider redirecting standard error into a file for ease of use, e.g. <code>classroom1 --debug &lt;resource&gt; &lt;method&gt; [options] 2&gt;debug.txt</code>.</p>
</div>
</div><footer>
<div class="rst-footer-buttons" role="navigation" aria-label="Footer Navigation">
<a href="courses_aliases-create/" class="btn btn-neutral float-right" title="Aliases Create">Next <span class="icon icon-circle-arrow-right"></span></a>
</div>
<hr/>
<div role="contentinfo">
<!-- Copyright etc -->
<p>Copyright &copy; 2015-2020, `Sebastian Thiel`</p>
</div>
Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<div class="rst-versions" role="note" aria-label="Versions">
<span class="rst-current-version" data-toggle="rst-current-version">
<span>
<a href="https://github.com/Byron/google-apis-rs/tree/main/gen/classroom1-cli" class="fa fa-github" style="color: #fcfcfc"> GitHub</a>
</span>
<span><a href="courses_aliases-create/" style="color: #fcfcfc">Next &raquo;</a></span>
</span>
</div>
<script>var base_url = '.';</script>
<script src="js/theme_extra.js" defer></script>
<script src="js/theme.js" defer></script>
<script src="search/main.js" defer></script>
<script defer>
window.onload = function () {
SphinxRtdTheme.Navigation.enable(true);
};
</script>
</body>
</html>
<!--
MkDocs version : 1.3.1
Build Date UTC : 2024-03-05 20:03:45.142668+00:00
-->