blob: 0f2e39cccbf6d71e93284e971823268ff12e01c2 [file] [log] [blame]
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>pyarrow.parquet.ParquetWriter &mdash; Apache Arrow v2.0.0</title>
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
<!--[if lt IE 9]>
<script src="../../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
<script src="../../_static/jquery.js"></script>
<script src="../../_static/underscore.js"></script>
<script src="../../_static/doctools.js"></script>
<script src="../../_static/language_data.js"></script>
<script type="text/javascript" src="../../_static/js/theme.js"></script>
<link rel="canonical" href="https://arrow.apache.org/docs/python/generated/pyarrow.parquet.ParquetWriter.html" />
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="pyarrow.parquet.read_table" href="pyarrow.parquet.read_table.html" />
<link rel="prev" title="pyarrow.parquet.ParquetFile" href="pyarrow.parquet.ParquetFile.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(["setDoNotTrack", true]);
_paq.push(["disableCookies"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.apache.org/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '20']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home" alt="Documentation Home"> Apache Arrow
</a>
<div class="version">
2.0.0
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">Specifications and Protocols</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../format/Versioning.html">Format Versioning and Stability</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/Columnar.html">Arrow Columnar Format</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/Flight.html">Arrow Flight RPC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/Integration.html">Integration Testing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/CDataInterface.html">The Arrow C data interface</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/CStreamInterface.html">The Arrow C stream interface</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../format/Other.html">Other Data Structures</a></li>
</ul>
<p class="caption"><span class="caption-text">Libraries</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../status.html">Implementation Status</a></li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/docs/c_glib/">C/GLib</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../cpp/index.html">C++</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/apache/arrow/blob/master/csharp/README.md">C#</a></li>
<li class="toctree-l1"><a class="reference external" href="https://godoc.org/github.com/apache/arrow/go/arrow">Go</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../java/index.html">Java</a></li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/docs/js/">JavaScript</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/apache/arrow/blob/master/matlab/README.md">MATLAB</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">Python</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../install.html">Installing PyArrow</a></li>
<li class="toctree-l2"><a class="reference internal" href="../memory.html">Memory and IO Interfaces</a></li>
<li class="toctree-l2"><a class="reference internal" href="../data.html">Data Types and In-Memory Data Model</a></li>
<li class="toctree-l2"><a class="reference internal" href="../compute.html">Compute Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="../ipc.html">Streaming, Serialization, and IPC</a></li>
<li class="toctree-l2"><a class="reference internal" href="../filesystems.html">Filesystem Interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="../filesystems_deprecated.html">Filesystem Interface (legacy)</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plasma.html">The Plasma In-Memory Object Store</a></li>
<li class="toctree-l2"><a class="reference internal" href="../numpy.html">NumPy Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../pandas.html">Pandas Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../timestamps.html">Timestamps</a></li>
<li class="toctree-l2"><a class="reference internal" href="../csv.html">Reading CSV files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../feather.html">Feather File Format</a></li>
<li class="toctree-l2"><a class="reference internal" href="../json.html">Reading JSON files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../parquet.html">Reading and Writing the Apache Parquet Format</a></li>
<li class="toctree-l2"><a class="reference internal" href="../dataset.html">Tabular Datasets</a></li>
<li class="toctree-l2"><a class="reference internal" href="../cuda.html">CUDA Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../extending_types.html">Extending pyarrow</a></li>
<li class="toctree-l2"><a class="reference internal" href="../extending.html">Using pyarrow from C++ and Cython Code</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../api.html">API Reference</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="../api/datatypes.html">Data Types and Schemas</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/arrays.html">Arrays and Scalars</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/memory.html">Buffers and Memory</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/compute.html">Compute Functions</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/files.html">Streams and File Access</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/tables.html">Tables and Tensors</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/ipc.html">Serialization and IPC</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/flight.html">Arrow Flight</a></li>
<li class="toctree-l3 current"><a class="reference internal" href="../api/formats.html">Tabular File Formats</a><ul class="current">
<li class="toctree-l4"><a class="reference internal" href="../api/formats.html#csv-files">CSV Files</a></li>
<li class="toctree-l4"><a class="reference internal" href="../api/formats.html#feather-files">Feather Files</a></li>
<li class="toctree-l4"><a class="reference internal" href="../api/formats.html#json-files">JSON Files</a></li>
<li class="toctree-l4 current"><a class="reference internal" href="../api/formats.html#parquet-files">Parquet Files</a></li>
<li class="toctree-l4"><a class="reference internal" href="../api/formats.html#orc-files">ORC Files</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../api/filesystems.html">Filesystems</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/dataset.html">Dataset</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/plasma.html">Plasma In-Memory Object Store</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/cuda.html">CUDA Integration</a></li>
<li class="toctree-l3"><a class="reference internal" href="../api/misc.html">Miscellaneous</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../getting_involved.html">Getting Involved</a></li>
<li class="toctree-l2"><a class="reference internal" href="../benchmarks.html">Benchmarks</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/docs/r/">R</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/apache/arrow/blob/master/ruby/README.md">Ruby</a></li>
<li class="toctree-l1"><a class="reference external" href="https://docs.rs/crate/arrow/">Rust</a></li>
</ul>
<p class="caption"><span class="caption-text">Development</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../developers/contributing.html">Contributing to Apache Arrow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/cpp/index.html">C++ Development</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/python.html">Python Development</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/archery.html">Daily Development using Archery</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/crossbow.html">Packaging and Testing with Crossbow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/docker.html">Running Docker Builds</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/benchmarks.html">Benchmarks</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/documentation.html">Building the Documentation</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">Apache Arrow</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="../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="../index.html">Python bindings</a> &raquo;</li>
<li><a href="../api.html">API Reference</a> &raquo;</li>
<li><a href="../api/formats.html">Tabular File Formats</a> &raquo;</li>
<li>pyarrow.parquet.ParquetWriter</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/python/generated/pyarrow.parquet.ParquetWriter.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="pyarrow-parquet-parquetwriter">
<h1>pyarrow.parquet.ParquetWriter<a class="headerlink" href="#pyarrow-parquet-parquetwriter" title="Permalink to this headline"></a></h1>
<dl class="py class">
<dt id="pyarrow.parquet.ParquetWriter">
<em class="property">class </em><code class="sig-prename descclassname">pyarrow.parquet.</code><code class="sig-name descname">ParquetWriter</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">where</span></em>, <em class="sig-param"><span class="n">schema</span></em>, <em class="sig-param"><span class="n">filesystem</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">flavor</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">version</span><span class="o">=</span><span class="default_value">'1.0'</span></em>, <em class="sig-param"><span class="n">use_dictionary</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">compression</span><span class="o">=</span><span class="default_value">'snappy'</span></em>, <em class="sig-param"><span class="n">write_statistics</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">use_deprecated_int96_timestamps</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">compression_level</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">use_byte_stream_split</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">writer_engine_version</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">data_page_version</span><span class="o">=</span><span class="default_value">'1.0'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">options</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/pyarrow/parquet.html#ParquetWriter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyarrow.parquet.ParquetWriter" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Class for incrementally building a Parquet file for Arrow tables.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>where</strong> (<em>path</em><em> or </em><em>file-like object</em>) – </p></li>
<li><p><strong>schema</strong> (<em>arrow Schema</em>) – </p></li>
<li><p><strong>version</strong> (<em>{&quot;1.0&quot;</em><em>, </em><em>&quot;2.0&quot;}</em><em>, </em><em>default &quot;1.0&quot;</em>) – Determine which Parquet logical types are available for use, whether the
reduced set from the Parquet 1.x.x format or the expanded logical types
added in format version 2.0.0 and after. Note that files written with
version=’2.0’ may not be readable in all Parquet implementations, so
version=’1.0’ is likely the choice that maximizes file compatibility. Some
features, such as lossless storage of nanosecond timestamps as INT64
physical storage, are only available with version=’2.0’. The Parquet 2.0.0
format version also introduced a new serialized data page format; this can
be enabled separately using the data_page_version option.</p></li>
<li><p><strong>use_dictionary</strong> (<em>bool</em><em> or </em><em>list</em>) – Specify if we should use dictionary encoding in general or only for
some columns.</p></li>
<li><p><strong>use_deprecated_int96_timestamps</strong> (<em>bool</em><em>, </em><em>default None</em>) – Write timestamps to INT96 Parquet format. Defaults to False unless enabled
by flavor argument. This take priority over the coerce_timestamps option.</p></li>
<li><p><strong>coerce_timestamps</strong> (<em>str</em><em>, </em><em>default None</em>) – Cast timestamps a particular resolution. The defaults depends on <cite>version</cite>.
For <code class="docutils literal notranslate"><span class="pre">version='1.0'</span></code> (the default), nanoseconds will be cast to
microseconds (‘us’), and seconds to milliseconds (‘ms’) by default. For
<code class="docutils literal notranslate"><span class="pre">version='2.0'</span></code>, the original resolution is preserved and no casting
is done by default. The casting might result in loss of data, in which
case <code class="docutils literal notranslate"><span class="pre">allow_truncated_timestamps=True</span></code> can be used to suppress the
raised exception.
Valid values: {None, ‘ms’, ‘us’}</p></li>
<li><p><strong>data_page_size</strong> (<em>int</em><em>, </em><em>default None</em>) – Set a target threshold for the approximate encoded size of data
pages within a column chunk (in bytes). If None, use the default data page
size of 1MByte.</p></li>
<li><p><strong>allow_truncated_timestamps</strong> (<em>bool</em><em>, </em><em>default False</em>) – Allow loss of data when coercing timestamps to a particular
resolution. E.g. if microsecond or nanosecond data is lost when coercing to
‘ms’, do not raise an exception.</p></li>
<li><p><strong>compression</strong> (<em>str</em><em> or </em><em>dict</em>) – Specify the compression codec, either on a general basis or per-column.
Valid values: {‘NONE’, ‘SNAPPY’, ‘GZIP’, ‘LZO’, ‘BROTLI’, ‘LZ4’, ‘ZSTD’}.</p></li>
<li><p><strong>write_statistics</strong> (<em>bool</em><em> or </em><em>list</em>) – Specify if we should write statistics in general (default is True) or only
for some columns.</p></li>
<li><p><strong>flavor</strong> (<em>{'spark'}</em><em>, </em><em>default None</em>) – Sanitize schema or set other compatibility options to work with
various target systems.</p></li>
<li><p><strong>filesystem</strong> (<a class="reference internal" href="pyarrow.fs.FileSystem.html#pyarrow.fs.FileSystem" title="pyarrow.fs.FileSystem"><em>FileSystem</em></a><em>, </em><em>default None</em>) – If nothing passed, will be inferred from <cite>where</cite> if path-like, else
<cite>where</cite> is already a file-like object so no filesystem is needed.</p></li>
<li><p><strong>compression_level</strong> (<em>int</em><em> or </em><em>dict</em><em>, </em><em>default None</em>) – Specify the compression level for a codec, either on a general basis or
per-column. If None is passed, arrow selects the compression level for
the compression codec in use. The compression level has a different
meaning for each codec, so you have to read the documentation of the
codec you are using.
An exception is thrown if the compression codec does not allow specifying
a compression level.</p></li>
<li><p><strong>use_byte_stream_split</strong> (<em>bool</em><em> or </em><em>list</em><em>, </em><em>default False</em>) – Specify if the byte_stream_split encoding should be used in general or
only for some columns. If both dictionary and byte_stream_stream are
enabled, then dictionary is preferred.
The byte_stream_split encoding is valid only for floating-point data types
and should be combined with a compression codec.</p></li>
<li><p><strong>data_page_version</strong> (<em>{&quot;1.0&quot;</em><em>, </em><em>&quot;2.0&quot;}</em><em>, </em><em>default &quot;1.0&quot;</em>) – The serialized Parquet data page format version to write, defaults to
1.0. This does not impact the file schema logical types and Arrow to
Parquet type casting behavior; for that use the “version” option.</p></li>
<li><p><strong>**options</strong> (<em>dict</em>) – If options contains a key <cite>metadata_collector</cite> then the
corresponding value is assumed to be a list (or any object with
<cite>.append</cite> method) that will be filled with the file metadata instance
of the written file.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt id="pyarrow.parquet.ParquetWriter.__init__">
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">where</span></em>, <em class="sig-param"><span class="n">schema</span></em>, <em class="sig-param"><span class="n">filesystem</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">flavor</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">version</span><span class="o">=</span><span class="default_value">'1.0'</span></em>, <em class="sig-param"><span class="n">use_dictionary</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">compression</span><span class="o">=</span><span class="default_value">'snappy'</span></em>, <em class="sig-param"><span class="n">write_statistics</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">use_deprecated_int96_timestamps</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">compression_level</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">use_byte_stream_split</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">writer_engine_version</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">data_page_version</span><span class="o">=</span><span class="default_value">'1.0'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">options</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/pyarrow/parquet.html#ParquetWriter.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyarrow.parquet.ParquetWriter.__init__" title="Permalink to this definition"></a></dt>
<dd><p>Initialize self. See help(type(self)) for accurate signature.</p>
</dd></dl>
<p class="rubric">Methods</p>
<table class="longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.parquet.ParquetWriter.__init__" title="pyarrow.parquet.ParquetWriter.__init__"><code class="xref py py-obj docutils literal notranslate"><span class="pre">__init__</span></code></a>(where, schema[, filesystem, …])</p></td>
<td><p>Initialize self.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.parquet.ParquetWriter.close" title="pyarrow.parquet.ParquetWriter.close"><code class="xref py py-obj docutils literal notranslate"><span class="pre">close</span></code></a>()</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.parquet.ParquetWriter.write_table" title="pyarrow.parquet.ParquetWriter.write_table"><code class="xref py py-obj docutils literal notranslate"><span class="pre">write_table</span></code></a>(table[, row_group_size])</p></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<dl class="py method">
<dt id="pyarrow.parquet.ParquetWriter.close">
<code class="sig-name descname">close</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/pyarrow/parquet.html#ParquetWriter.close"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyarrow.parquet.ParquetWriter.close" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt id="pyarrow.parquet.ParquetWriter.write_table">
<code class="sig-name descname">write_table</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">table</span></em>, <em class="sig-param"><span class="n">row_group_size</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/pyarrow/parquet.html#ParquetWriter.write_table"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyarrow.parquet.ParquetWriter.write_table" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="pyarrow.parquet.read_table.html" class="btn btn-neutral float-right" title="pyarrow.parquet.read_table" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="pyarrow.parquet.ParquetFile.html" class="btn btn-neutral float-left" title="pyarrow.parquet.ParquetFile" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2016-2019 Apache Software Foundation
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<script type="text/javascript" src="/docs/_static/versionwarning.js"></script></body>
</html>