ÿØÿà JFIF ÿþ >CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality
ÿÛ C
Server IP : 172.67.171.101 / Your IP : 216.73.216.123 Web Server : Apache System : Linux server1.morocco-tours.com 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64 User : zagoradraa ( 1005) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/python-docs-2.7.5/html/library/ |
Upload File : |
| Current File : /usr/share/doc/python-docs-2.7.5/html/library/json.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>18.2. json — JSON encoder and decoder — Python 2.7.5 documentation</title>
<link rel="stylesheet" href="../_static/default.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
VERSION: '2.7.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script type="text/javascript" src="../_static/sidebar.js"></script>
<link rel="search" type="application/opensearchdescription+xml"
title="Search within Python 2.7.5 documentation"
href="../_static/opensearch.xml"/>
<link rel="author" title="About these documents" href="../about.html" />
<link rel="copyright" title="Copyright" href="../copyright.html" />
<link rel="top" title="Python 2.7.5 documentation" href="../index.html" />
<link rel="up" title="18. Internet Data Handling" href="netdata.html" />
<link rel="next" title="18.3. mailcap — Mailcap file handling" href="mailcap.html" />
<link rel="prev" title="18.1.11. email: Examples" href="email-examples.html" />
<link rel="shortcut icon" type="image/png" href="../_static/py.png" />
<script type="text/javascript" src="../_static/copybutton.js"></script>
</head>
<body>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="mailcap.html" title="18.3. mailcap — Mailcap file handling"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="email-examples.html" title="18.1.11. email: Examples"
accesskey="P">previous</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="http://www.python.org/">Python</a> »</li>
<li>
<a href="../index.html">Python 2.7.5 documentation</a> »
</li>
<li><a href="index.html" >The Python Standard Library</a> »</li>
<li><a href="netdata.html" accesskey="U">18. Internet Data Handling</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body">
<div class="section" id="module-json">
<span id="json-json-encoder-and-decoder"></span><h1>18.2. <a class="reference internal" href="#module-json" title="json: Encode and decode the JSON format."><tt class="xref py py-mod docutils literal"><span class="pre">json</span></tt></a> — JSON encoder and decoder<a class="headerlink" href="#module-json" title="Permalink to this headline">¶</a></h1>
<p class="versionadded">
<span class="versionmodified">New in version 2.6.</span></p>
<p><a class="reference external" href="http://json.org">JSON (JavaScript Object Notation)</a>, specified by
<span class="target" id="index-0"></span><a class="rfc reference external" href="http://tools.ietf.org/html/rfc4627.html"><strong>RFC 4627</strong></a>, is a lightweight data interchange format based on a subset of
<a class="reference external" href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a> syntax (<a class="reference external" href="http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf">ECMA-262 3rd
edition</a>).</p>
<p><a class="reference internal" href="#module-json" title="json: Encode and decode the JSON format."><tt class="xref py py-mod docutils literal"><span class="pre">json</span></tt></a> exposes an API familiar to users of the standard library
<a class="reference internal" href="marshal.html#module-marshal" title="marshal: Convert Python objects to streams of bytes and back (with different constraints)."><tt class="xref py py-mod docutils literal"><span class="pre">marshal</span></tt></a> and <a class="reference internal" href="pickle.html#module-pickle" title="pickle: Convert Python objects to streams of bytes and back."><tt class="xref py py-mod docutils literal"><span class="pre">pickle</span></tt></a> modules.</p>
<p>Encoding basic Python object hierarchies:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">([</span><span class="s">'foo'</span><span class="p">,</span> <span class="p">{</span><span class="s">'bar'</span><span class="p">:</span> <span class="p">(</span><span class="s">'baz'</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mi">2</span><span class="p">)}])</span>
<span class="go">'["foo", {"bar": ["baz", null, 1.0, 2]}]'</span>
<span class="gp">>>> </span><span class="k">print</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="s">"</span><span class="se">\"</span><span class="s">foo</span><span class="se">\b</span><span class="s">ar"</span><span class="p">)</span>
<span class="go">"\"foo\bar"</span>
<span class="gp">>>> </span><span class="k">print</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="s">u'</span><span class="se">\u1234</span><span class="s">'</span><span class="p">)</span>
<span class="go">"\u1234"</span>
<span class="gp">>>> </span><span class="k">print</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="s">'</span><span class="se">\\</span><span class="s">'</span><span class="p">)</span>
<span class="go">"\\"</span>
<span class="gp">>>> </span><span class="k">print</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">({</span><span class="s">"c"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span> <span class="s">"b"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span> <span class="s">"a"</span><span class="p">:</span> <span class="mi">0</span><span class="p">},</span> <span class="n">sort_keys</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
<span class="go">{"a": 0, "b": 0, "c": 0}</span>
<span class="gp">>>> </span><span class="kn">from</span> <span class="nn">StringIO</span> <span class="kn">import</span> <span class="n">StringIO</span>
<span class="gp">>>> </span><span class="n">io</span> <span class="o">=</span> <span class="n">StringIO</span><span class="p">()</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dump</span><span class="p">([</span><span class="s">'streaming API'</span><span class="p">],</span> <span class="n">io</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">io</span><span class="o">.</span><span class="n">getvalue</span><span class="p">()</span>
<span class="go">'["streaming API"]'</span>
</pre></div>
</div>
<p>Compact encoding:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,{</span><span class="s">'4'</span><span class="p">:</span> <span class="mi">5</span><span class="p">,</span> <span class="s">'6'</span><span class="p">:</span> <span class="mi">7</span><span class="p">}],</span> <span class="n">separators</span><span class="o">=</span><span class="p">(</span><span class="s">','</span><span class="p">,</span><span class="s">':'</span><span class="p">))</span>
<span class="go">'[1,2,3,{"4":5,"6":7}]'</span>
</pre></div>
</div>
<p>Pretty printing:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="k">print</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">({</span><span class="s">'4'</span><span class="p">:</span> <span class="mi">5</span><span class="p">,</span> <span class="s">'6'</span><span class="p">:</span> <span class="mi">7</span><span class="p">},</span> <span class="n">sort_keys</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span>
<span class="gp">... </span> <span class="n">indent</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">separators</span><span class="o">=</span><span class="p">(</span><span class="s">','</span><span class="p">,</span> <span class="s">': '</span><span class="p">))</span>
<span class="go">{</span>
<span class="go"> "4": 5,</span>
<span class="go"> "6": 7</span>
<span class="go">}</span>
</pre></div>
</div>
<p>Decoding JSON:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'["foo", {"bar":["baz", null, 1.0, 2]}]'</span><span class="p">)</span>
<span class="go">[u'foo', {u'bar': [u'baz', None, 1.0, 2]}]</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'"</span><span class="se">\\</span><span class="s">"foo</span><span class="se">\\</span><span class="s">bar"'</span><span class="p">)</span>
<span class="go">u'"foo\x08ar'</span>
<span class="gp">>>> </span><span class="kn">from</span> <span class="nn">StringIO</span> <span class="kn">import</span> <span class="n">StringIO</span>
<span class="gp">>>> </span><span class="n">io</span> <span class="o">=</span> <span class="n">StringIO</span><span class="p">(</span><span class="s">'["streaming API"]'</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">io</span><span class="p">)</span>
<span class="go">[u'streaming API']</span>
</pre></div>
</div>
<p>Specializing JSON object decoding:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="k">def</span> <span class="nf">as_complex</span><span class="p">(</span><span class="n">dct</span><span class="p">):</span>
<span class="gp">... </span> <span class="k">if</span> <span class="s">'__complex__'</span> <span class="ow">in</span> <span class="n">dct</span><span class="p">:</span>
<span class="gp">... </span> <span class="k">return</span> <span class="nb">complex</span><span class="p">(</span><span class="n">dct</span><span class="p">[</span><span class="s">'real'</span><span class="p">],</span> <span class="n">dct</span><span class="p">[</span><span class="s">'imag'</span><span class="p">])</span>
<span class="gp">... </span> <span class="k">return</span> <span class="n">dct</span>
<span class="gp">...</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'{"__complex__": true, "real": 1, "imag": 2}'</span><span class="p">,</span>
<span class="gp">... </span> <span class="n">object_hook</span><span class="o">=</span><span class="n">as_complex</span><span class="p">)</span>
<span class="go">(1+2j)</span>
<span class="gp">>>> </span><span class="kn">import</span> <span class="nn">decimal</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'1.1'</span><span class="p">,</span> <span class="n">parse_float</span><span class="o">=</span><span class="n">decimal</span><span class="o">.</span><span class="n">Decimal</span><span class="p">)</span>
<span class="go">Decimal('1.1')</span>
</pre></div>
</div>
<p>Extending <a class="reference internal" href="#json.JSONEncoder" title="json.JSONEncoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONEncoder</span></tt></a>:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">import</span> <span class="nn">json</span>
<span class="gp">>>> </span><span class="k">class</span> <span class="nc">ComplexEncoder</span><span class="p">(</span><span class="n">json</span><span class="o">.</span><span class="n">JSONEncoder</span><span class="p">):</span>
<span class="gp">... </span> <span class="k">def</span> <span class="nf">default</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">obj</span><span class="p">):</span>
<span class="gp">... </span> <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">obj</span><span class="p">,</span> <span class="nb">complex</span><span class="p">):</span>
<span class="gp">... </span> <span class="k">return</span> <span class="p">[</span><span class="n">obj</span><span class="o">.</span><span class="n">real</span><span class="p">,</span> <span class="n">obj</span><span class="o">.</span><span class="n">imag</span><span class="p">]</span>
<span class="gp">... </span> <span class="c"># Let the base class default method raise the TypeError</span>
<span class="gp">... </span> <span class="k">return</span> <span class="n">json</span><span class="o">.</span><span class="n">JSONEncoder</span><span class="o">.</span><span class="n">default</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">obj</span><span class="p">)</span>
<span class="gp">...</span>
<span class="gp">>>> </span><span class="n">dumps</span><span class="p">(</span><span class="mi">2</span> <span class="o">+</span> <span class="mi">1</span><span class="n">j</span><span class="p">,</span> <span class="n">cls</span><span class="o">=</span><span class="n">ComplexEncoder</span><span class="p">)</span>
<span class="go">'[2.0, 1.0]'</span>
<span class="gp">>>> </span><span class="n">ComplexEncoder</span><span class="p">()</span><span class="o">.</span><span class="n">encode</span><span class="p">(</span><span class="mi">2</span> <span class="o">+</span> <span class="mi">1</span><span class="n">j</span><span class="p">)</span>
<span class="go">'[2.0, 1.0]'</span>
<span class="gp">>>> </span><span class="nb">list</span><span class="p">(</span><span class="n">ComplexEncoder</span><span class="p">()</span><span class="o">.</span><span class="n">iterencode</span><span class="p">(</span><span class="mi">2</span> <span class="o">+</span> <span class="mi">1</span><span class="n">j</span><span class="p">))</span>
<span class="go">['[', '2.0', ', ', '1.0', ']']</span>
</pre></div>
</div>
<p>Using json.tool from the shell to validate and pretty-print:</p>
<div class="highlight-none"><div class="highlight"><pre>$ echo '{"json":"obj"}' | python -mjson.tool
{
"json": "obj"
}
$ echo '{1.2:3.4}' | python -mjson.tool
Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
</pre></div>
</div>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">JSON is a subset of <a class="reference external" href="http://yaml.org/">YAML</a> 1.2. The JSON produced by
this module’s default settings (in particular, the default <em>separators</em>
value) is also a subset of YAML 1.0 and 1.1. This module can thus also be
used as a YAML serializer.</p>
</div>
<div class="section" id="basic-usage">
<h2>18.2.1. Basic Usage<a class="headerlink" href="#basic-usage" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="json.dump">
<tt class="descclassname">json.</tt><tt class="descname">dump</tt><big>(</big><em>obj</em>, <em>fp</em>, <em>skipkeys=False</em>, <em>ensure_ascii=True</em>, <em>check_circular=True</em>, <em>allow_nan=True</em>, <em>cls=None</em>, <em>indent=None</em>, <em>separators=None</em>, <em>encoding="utf-8"</em>, <em>default=None</em>, <em>sort_keys=False</em>, <em>**kw</em><big>)</big><a class="headerlink" href="#json.dump" title="Permalink to this definition">¶</a></dt>
<dd><p>Serialize <em>obj</em> as a JSON formatted stream to <em>fp</em> (a <tt class="docutils literal"><span class="pre">.write()</span></tt>-supporting
<a class="reference internal" href="../glossary.html#term-file-like-object"><em class="xref std std-term">file-like object</em></a>) using this <a class="reference internal" href="#py-to-json-table"><em>conversion table</em></a>.</p>
<p>If <em>skipkeys</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (default: <tt class="docutils literal"><span class="pre">False</span></tt>), then dict keys that are not
of a basic type (<a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a>, <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a>, <a class="reference internal" href="functions.html#int" title="int"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a>, <a class="reference internal" href="functions.html#long" title="long"><tt class="xref py py-class docutils literal"><span class="pre">long</span></tt></a>,
<a class="reference internal" href="functions.html#float" title="float"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>, <a class="reference internal" href="functions.html#bool" title="bool"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a>, <tt class="docutils literal"><span class="pre">None</span></tt>) will be skipped instead of raising a
<a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>.</p>
<p>If <em>ensure_ascii</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (the default), all non-ASCII characters in the
output are escaped with <tt class="docutils literal"><span class="pre">\uXXXX</span></tt> sequences, and the result is a
<a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> instance consisting of ASCII characters only. If
<em>ensure_ascii</em> is <tt class="docutils literal"><span class="pre">False</span></tt>, some chunks written to <em>fp</em> may be
<a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> instances. This usually happens because the input contains
unicode strings or the <em>encoding</em> parameter is used. Unless <tt class="docutils literal"><span class="pre">fp.write()</span></tt>
explicitly understands <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> (as in <a class="reference internal" href="codecs.html#codecs.getwriter" title="codecs.getwriter"><tt class="xref py py-func docutils literal"><span class="pre">codecs.getwriter()</span></tt></a>)
this is likely to cause an error.</p>
<p>If <em>check_circular</em> is <tt class="docutils literal"><span class="pre">False</span></tt> (default: <tt class="docutils literal"><span class="pre">True</span></tt>), then the circular
reference check for container types will be skipped and a circular reference
will result in an <a class="reference internal" href="exceptions.html#exceptions.OverflowError" title="exceptions.OverflowError"><tt class="xref py py-exc docutils literal"><span class="pre">OverflowError</span></tt></a> (or worse).</p>
<p>If <em>allow_nan</em> is <tt class="docutils literal"><span class="pre">False</span></tt> (default: <tt class="docutils literal"><span class="pre">True</span></tt>), then it will be a
<a class="reference internal" href="exceptions.html#exceptions.ValueError" title="exceptions.ValueError"><tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt></a> to serialize out of range <a class="reference internal" href="functions.html#float" title="float"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a> values (<tt class="docutils literal"><span class="pre">nan</span></tt>,
<tt class="docutils literal"><span class="pre">inf</span></tt>, <tt class="docutils literal"><span class="pre">-inf</span></tt>) in strict compliance of the JSON specification, instead of
using the JavaScript equivalents (<tt class="docutils literal"><span class="pre">NaN</span></tt>, <tt class="docutils literal"><span class="pre">Infinity</span></tt>, <tt class="docutils literal"><span class="pre">-Infinity</span></tt>).</p>
<p>If <em>indent</em> is a non-negative integer, then JSON array elements and object
members will be pretty-printed with that indent level. An indent level of 0,
or negative, will only insert newlines. <tt class="docutils literal"><span class="pre">None</span></tt> (the default) selects the
most compact representation.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Since the default item separator is <tt class="docutils literal"><span class="pre">',</span> <span class="pre">'</span></tt>, the output might include
trailing whitespace when <em>indent</em> is specified. You can use
<tt class="docutils literal"><span class="pre">separators=(',',</span> <span class="pre">':</span> <span class="pre">')</span></tt> to avoid this.</p>
</div>
<p>If <em>separators</em> is an <tt class="docutils literal"><span class="pre">(item_separator,</span> <span class="pre">dict_separator)</span></tt> tuple, then it
will be used instead of the default <tt class="docutils literal"><span class="pre">(',</span> <span class="pre">',</span> <span class="pre">':</span> <span class="pre">')</span></tt> separators. <tt class="docutils literal"><span class="pre">(',',</span>
<span class="pre">':')</span></tt> is the most compact JSON representation.</p>
<p><em>encoding</em> is the character encoding for str instances, default is UTF-8.</p>
<p><em>default(obj)</em> is a function that should return a serializable version of
<em>obj</em> or raise <a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>. The default simply raises <a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>.</p>
<p>If <em>sort_keys</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (default: <tt class="docutils literal"><span class="pre">False</span></tt>), then the output of
dictionaries will be sorted by key.</p>
<p>To use a custom <a class="reference internal" href="#json.JSONEncoder" title="json.JSONEncoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONEncoder</span></tt></a> subclass (e.g. one that overrides the
<tt class="xref py py-meth docutils literal"><span class="pre">default()</span></tt> method to serialize additional types), specify it with the
<em>cls</em> kwarg; otherwise <a class="reference internal" href="#json.JSONEncoder" title="json.JSONEncoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONEncoder</span></tt></a> is used.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Unlike <a class="reference internal" href="pickle.html#module-pickle" title="pickle: Convert Python objects to streams of bytes and back."><tt class="xref py py-mod docutils literal"><span class="pre">pickle</span></tt></a> and <a class="reference internal" href="marshal.html#module-marshal" title="marshal: Convert Python objects to streams of bytes and back (with different constraints)."><tt class="xref py py-mod docutils literal"><span class="pre">marshal</span></tt></a>, JSON is not a framed protocol so
trying to serialize more objects with repeated calls to <a class="reference internal" href="#json.dump" title="json.dump"><tt class="xref py py-func docutils literal"><span class="pre">dump()</span></tt></a> and
the same <em>fp</em> will result in an invalid JSON file.</p>
</div>
</dd></dl>
<dl class="function">
<dt id="json.dumps">
<tt class="descclassname">json.</tt><tt class="descname">dumps</tt><big>(</big><em>obj</em>, <em>skipkeys=False</em>, <em>ensure_ascii=True</em>, <em>check_circular=True</em>, <em>allow_nan=True</em>, <em>cls=None</em>, <em>indent=None</em>, <em>separators=None</em>, <em>encoding="utf-8"</em>, <em>default=None</em>, <em>sort_keys=False</em>, <em>**kw</em><big>)</big><a class="headerlink" href="#json.dumps" title="Permalink to this definition">¶</a></dt>
<dd><p>Serialize <em>obj</em> to a JSON formatted <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> using this <a class="reference internal" href="#py-to-json-table"><em>conversion
table</em></a>. If <em>ensure_ascii</em> is <tt class="docutils literal"><span class="pre">False</span></tt>, the result may
contain non-ASCII characters and the return value may be a <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a>
instance.</p>
<p>The arguments have the same meaning as in <a class="reference internal" href="#json.dump" title="json.dump"><tt class="xref py py-func docutils literal"><span class="pre">dump()</span></tt></a>.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Keys in key/value pairs of JSON are always of the type <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a>. When
a dictionary is converted into JSON, all the keys of the dictionary are
coerced to strings. As a result of this, if a dictionary is converted
into JSON and then back into a dictionary, the dictionary may not equal
the original one. That is, <tt class="docutils literal"><span class="pre">loads(dumps(x))</span> <span class="pre">!=</span> <span class="pre">x</span></tt> if x has non-string
keys.</p>
</div>
</dd></dl>
<dl class="function">
<dt id="json.load">
<tt class="descclassname">json.</tt><tt class="descname">load</tt><big>(</big><em>fp</em><span class="optional">[</span>, <em>encoding</em><span class="optional">[</span>, <em>cls</em><span class="optional">[</span>, <em>object_hook</em><span class="optional">[</span>, <em>parse_float</em><span class="optional">[</span>, <em>parse_int</em><span class="optional">[</span>, <em>parse_constant</em><span class="optional">[</span>, <em>object_pairs_hook</em><span class="optional">[</span>, <em>**kw</em><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><big>)</big><a class="headerlink" href="#json.load" title="Permalink to this definition">¶</a></dt>
<dd><p>Deserialize <em>fp</em> (a <tt class="docutils literal"><span class="pre">.read()</span></tt>-supporting <a class="reference internal" href="../glossary.html#term-file-like-object"><em class="xref std std-term">file-like object</em></a>
containing a JSON document) to a Python object using this <a class="reference internal" href="#json-to-py-table"><em>conversion
table</em></a>.</p>
<p>If the contents of <em>fp</em> are encoded with an ASCII based encoding other than
UTF-8 (e.g. latin-1), then an appropriate <em>encoding</em> name must be specified.
Encodings that are not ASCII based (such as UCS-2) are not allowed, and
should be wrapped with <tt class="docutils literal"><span class="pre">codecs.getreader(encoding)(fp)</span></tt>, or simply decoded
to a <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> object and passed to <a class="reference internal" href="#json.loads" title="json.loads"><tt class="xref py py-func docutils literal"><span class="pre">loads()</span></tt></a>.</p>
<p><em>object_hook</em> is an optional function that will be called with the result of
any object literal decoded (a <a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>). The return value of
<em>object_hook</em> will be used instead of the <a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>. This feature can be used
to implement custom decoders (e.g. <a class="reference external" href="http://www.jsonrpc.org">JSON-RPC</a>
class hinting).</p>
<p><em>object_pairs_hook</em> is an optional function that will be called with the
result of any object literal decoded with an ordered list of pairs. The
return value of <em>object_pairs_hook</em> will be used instead of the
<a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>. This feature can be used to implement custom decoders that
rely on the order that the key and value pairs are decoded (for example,
<a class="reference internal" href="collections.html#collections.OrderedDict" title="collections.OrderedDict"><tt class="xref py py-func docutils literal"><span class="pre">collections.OrderedDict()</span></tt></a> will remember the order of insertion). If
<em>object_hook</em> is also defined, the <em>object_pairs_hook</em> takes priority.</p>
<p class="versionchanged">
<span class="versionmodified">Changed in version 2.7: </span>Added support for <em>object_pairs_hook</em>.</p>
<p><em>parse_float</em>, if specified, will be called with the string of every JSON
float to be decoded. By default, this is equivalent to <tt class="docutils literal"><span class="pre">float(num_str)</span></tt>.
This can be used to use another datatype or parser for JSON floats
(e.g. <a class="reference internal" href="decimal.html#decimal.Decimal" title="decimal.Decimal"><tt class="xref py py-class docutils literal"><span class="pre">decimal.Decimal</span></tt></a>).</p>
<p><em>parse_int</em>, if specified, will be called with the string of every JSON int
to be decoded. By default, this is equivalent to <tt class="docutils literal"><span class="pre">int(num_str)</span></tt>. This can
be used to use another datatype or parser for JSON integers
(e.g. <a class="reference internal" href="functions.html#float" title="float"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>).</p>
<p><em>parse_constant</em>, if specified, will be called with one of the following
strings: <tt class="docutils literal"><span class="pre">'-Infinity'</span></tt>, <tt class="docutils literal"><span class="pre">'Infinity'</span></tt>, <tt class="docutils literal"><span class="pre">'NaN'</span></tt>.
This can be used to raise an exception if invalid JSON numbers
are encountered.</p>
<p class="versionchanged">
<span class="versionmodified">Changed in version 2.7: </span><em>parse_constant</em> doesn’t get called on ‘null’, ‘true’, ‘false’ anymore.</p>
<p>To use a custom <a class="reference internal" href="#json.JSONDecoder" title="json.JSONDecoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONDecoder</span></tt></a> subclass, specify it with the <tt class="docutils literal"><span class="pre">cls</span></tt>
kwarg; otherwise <a class="reference internal" href="#json.JSONDecoder" title="json.JSONDecoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONDecoder</span></tt></a> is used. Additional keyword arguments
will be passed to the constructor of the class.</p>
</dd></dl>
<dl class="function">
<dt id="json.loads">
<tt class="descclassname">json.</tt><tt class="descname">loads</tt><big>(</big><em>s</em><span class="optional">[</span>, <em>encoding</em><span class="optional">[</span>, <em>cls</em><span class="optional">[</span>, <em>object_hook</em><span class="optional">[</span>, <em>parse_float</em><span class="optional">[</span>, <em>parse_int</em><span class="optional">[</span>, <em>parse_constant</em><span class="optional">[</span>, <em>object_pairs_hook</em><span class="optional">[</span>, <em>**kw</em><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><big>)</big><a class="headerlink" href="#json.loads" title="Permalink to this definition">¶</a></dt>
<dd><p>Deserialize <em>s</em> (a <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> or <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> instance containing a JSON
document) to a Python object using this <a class="reference internal" href="#json-to-py-table"><em>conversion table</em></a>.</p>
<p>If <em>s</em> is a <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> instance and is encoded with an ASCII based encoding
other than UTF-8 (e.g. latin-1), then an appropriate <em>encoding</em> name must be
specified. Encodings that are not ASCII based (such as UCS-2) are not
allowed and should be decoded to <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> first.</p>
<p>The other arguments have the same meaning as in <a class="reference internal" href="#json.load" title="json.load"><tt class="xref py py-func docutils literal"><span class="pre">load()</span></tt></a>.</p>
</dd></dl>
</div>
<div class="section" id="encoders-and-decoders">
<h2>18.2.2. Encoders and Decoders<a class="headerlink" href="#encoders-and-decoders" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="json.JSONDecoder">
<em class="property">class </em><tt class="descclassname">json.</tt><tt class="descname">JSONDecoder</tt><big>(</big><span class="optional">[</span><em>encoding</em><span class="optional">[</span>, <em>object_hook</em><span class="optional">[</span>, <em>parse_float</em><span class="optional">[</span>, <em>parse_int</em><span class="optional">[</span>, <em>parse_constant</em><span class="optional">[</span>, <em>strict</em><span class="optional">[</span>, <em>object_pairs_hook</em><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><big>)</big><a class="headerlink" href="#json.JSONDecoder" title="Permalink to this definition">¶</a></dt>
<dd><p>Simple JSON decoder.</p>
<p>Performs the following translations in decoding by default:</p>
<table border="1" class="docutils" id="json-to-py-table">
<colgroup>
<col width="44%" />
<col width="56%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">JSON</th>
<th class="head">Python</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>object</td>
<td>dict</td>
</tr>
<tr class="row-odd"><td>array</td>
<td>list</td>
</tr>
<tr class="row-even"><td>string</td>
<td>unicode</td>
</tr>
<tr class="row-odd"><td>number (int)</td>
<td>int, long</td>
</tr>
<tr class="row-even"><td>number (real)</td>
<td>float</td>
</tr>
<tr class="row-odd"><td>true</td>
<td>True</td>
</tr>
<tr class="row-even"><td>false</td>
<td>False</td>
</tr>
<tr class="row-odd"><td>null</td>
<td>None</td>
</tr>
</tbody>
</table>
<p>It also understands <tt class="docutils literal"><span class="pre">NaN</span></tt>, <tt class="docutils literal"><span class="pre">Infinity</span></tt>, and <tt class="docutils literal"><span class="pre">-Infinity</span></tt> as their
corresponding <tt class="docutils literal"><span class="pre">float</span></tt> values, which is outside the JSON spec.</p>
<p><em>encoding</em> determines the encoding used to interpret any <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> objects
decoded by this instance (UTF-8 by default). It has no effect when decoding
<a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> objects.</p>
<p>Note that currently only encodings that are a superset of ASCII work, strings
of other encodings should be passed in as <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a>.</p>
<p><em>object_hook</em>, if specified, will be called with the result of every JSON
object decoded and its return value will be used in place of the given
<a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>. This can be used to provide custom deserializations (e.g. to
support JSON-RPC class hinting).</p>
<p><em>object_pairs_hook</em>, if specified will be called with the result of every
JSON object decoded with an ordered list of pairs. The return value of
<em>object_pairs_hook</em> will be used instead of the <a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>. This
feature can be used to implement custom decoders that rely on the order
that the key and value pairs are decoded (for example,
<a class="reference internal" href="collections.html#collections.OrderedDict" title="collections.OrderedDict"><tt class="xref py py-func docutils literal"><span class="pre">collections.OrderedDict()</span></tt></a> will remember the order of insertion). If
<em>object_hook</em> is also defined, the <em>object_pairs_hook</em> takes priority.</p>
<p class="versionchanged">
<span class="versionmodified">Changed in version 2.7: </span>Added support for <em>object_pairs_hook</em>.</p>
<p><em>parse_float</em>, if specified, will be called with the string of every JSON
float to be decoded. By default, this is equivalent to <tt class="docutils literal"><span class="pre">float(num_str)</span></tt>.
This can be used to use another datatype or parser for JSON floats
(e.g. <a class="reference internal" href="decimal.html#decimal.Decimal" title="decimal.Decimal"><tt class="xref py py-class docutils literal"><span class="pre">decimal.Decimal</span></tt></a>).</p>
<p><em>parse_int</em>, if specified, will be called with the string of every JSON int
to be decoded. By default, this is equivalent to <tt class="docutils literal"><span class="pre">int(num_str)</span></tt>. This can
be used to use another datatype or parser for JSON integers
(e.g. <a class="reference internal" href="functions.html#float" title="float"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>).</p>
<p><em>parse_constant</em>, if specified, will be called with one of the following
strings: <tt class="docutils literal"><span class="pre">'-Infinity'</span></tt>, <tt class="docutils literal"><span class="pre">'Infinity'</span></tt>, <tt class="docutils literal"><span class="pre">'NaN'</span></tt>, <tt class="docutils literal"><span class="pre">'null'</span></tt>, <tt class="docutils literal"><span class="pre">'true'</span></tt>,
<tt class="docutils literal"><span class="pre">'false'</span></tt>. This can be used to raise an exception if invalid JSON numbers
are encountered.</p>
<p>If <em>strict</em> is <tt class="docutils literal"><span class="pre">False</span></tt> (<tt class="docutils literal"><span class="pre">True</span></tt> is the default), then control characters
will be allowed inside strings. Control characters in this context are
those with character codes in the 0-31 range, including <tt class="docutils literal"><span class="pre">'\t'</span></tt> (tab),
<tt class="docutils literal"><span class="pre">'\n'</span></tt>, <tt class="docutils literal"><span class="pre">'\r'</span></tt> and <tt class="docutils literal"><span class="pre">'\0'</span></tt>.</p>
<dl class="method">
<dt id="json.JSONDecoder.decode">
<tt class="descname">decode</tt><big>(</big><em>s</em><big>)</big><a class="headerlink" href="#json.JSONDecoder.decode" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the Python representation of <em>s</em> (a <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> or
<a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a> instance containing a JSON document)</p>
</dd></dl>
<dl class="method">
<dt id="json.JSONDecoder.raw_decode">
<tt class="descname">raw_decode</tt><big>(</big><em>s</em><big>)</big><a class="headerlink" href="#json.JSONDecoder.raw_decode" title="Permalink to this definition">¶</a></dt>
<dd><p>Decode a JSON document from <em>s</em> (a <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> or <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a>
beginning with a JSON document) and return a 2-tuple of the Python
representation and the index in <em>s</em> where the document ended.</p>
<p>This can be used to decode a JSON document from a string that may have
extraneous data at the end.</p>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="json.JSONEncoder">
<em class="property">class </em><tt class="descclassname">json.</tt><tt class="descname">JSONEncoder</tt><big>(</big><span class="optional">[</span><em>skipkeys</em><span class="optional">[</span>, <em>ensure_ascii</em><span class="optional">[</span>, <em>check_circular</em><span class="optional">[</span>, <em>allow_nan</em><span class="optional">[</span>, <em>sort_keys</em><span class="optional">[</span>, <em>indent</em><span class="optional">[</span>, <em>separators</em><span class="optional">[</span>, <em>encoding</em><span class="optional">[</span>, <em>default</em><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><span class="optional">]</span><big>)</big><a class="headerlink" href="#json.JSONEncoder" title="Permalink to this definition">¶</a></dt>
<dd><p>Extensible JSON encoder for Python data structures.</p>
<p>Supports the following objects and types by default:</p>
<table border="1" class="docutils" id="py-to-json-table">
<colgroup>
<col width="56%" />
<col width="44%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Python</th>
<th class="head">JSON</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>dict</td>
<td>object</td>
</tr>
<tr class="row-odd"><td>list, tuple</td>
<td>array</td>
</tr>
<tr class="row-even"><td>str, unicode</td>
<td>string</td>
</tr>
<tr class="row-odd"><td>int, long, float</td>
<td>number</td>
</tr>
<tr class="row-even"><td>True</td>
<td>true</td>
</tr>
<tr class="row-odd"><td>False</td>
<td>false</td>
</tr>
<tr class="row-even"><td>None</td>
<td>null</td>
</tr>
</tbody>
</table>
<p>To extend this to recognize other objects, subclass and implement a
<a class="reference internal" href="#json.JSONEncoder.default" title="json.JSONEncoder.default"><tt class="xref py py-meth docutils literal"><span class="pre">default()</span></tt></a> method with another method that returns a serializable object
for <tt class="docutils literal"><span class="pre">o</span></tt> if possible, otherwise it should call the superclass implementation
(to raise <a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>).</p>
<p>If <em>skipkeys</em> is <tt class="docutils literal"><span class="pre">False</span></tt> (the default), then it is a <a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a> to
attempt encoding of keys that are not str, int, long, float or None. If
<em>skipkeys</em> is <tt class="docutils literal"><span class="pre">True</span></tt>, such items are simply skipped.</p>
<p>If <em>ensure_ascii</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (the default), all non-ASCII characters in the
output are escaped with <tt class="docutils literal"><span class="pre">\uXXXX</span></tt> sequences, and the results are
<a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a> instances consisting of ASCII characters only. If
<em>ensure_ascii</em> is <tt class="docutils literal"><span class="pre">False</span></tt>, a result may be a <a class="reference internal" href="functions.html#unicode" title="unicode"><tt class="xref py py-class docutils literal"><span class="pre">unicode</span></tt></a>
instance. This usually happens if the input contains unicode strings or the
<em>encoding</em> parameter is used.</p>
<p>If <em>check_circular</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (the default), then lists, dicts, and custom
encoded objects will be checked for circular references during encoding to
prevent an infinite recursion (which would cause an <a class="reference internal" href="exceptions.html#exceptions.OverflowError" title="exceptions.OverflowError"><tt class="xref py py-exc docutils literal"><span class="pre">OverflowError</span></tt></a>).
Otherwise, no such check takes place.</p>
<p>If <em>allow_nan</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (the default), then <tt class="docutils literal"><span class="pre">NaN</span></tt>, <tt class="docutils literal"><span class="pre">Infinity</span></tt>, and
<tt class="docutils literal"><span class="pre">-Infinity</span></tt> will be encoded as such. This behavior is not JSON
specification compliant, but is consistent with most JavaScript based
encoders and decoders. Otherwise, it will be a <a class="reference internal" href="exceptions.html#exceptions.ValueError" title="exceptions.ValueError"><tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt></a> to encode
such floats.</p>
<p>If <em>sort_keys</em> is <tt class="docutils literal"><span class="pre">True</span></tt> (default <tt class="docutils literal"><span class="pre">False</span></tt>), then the output of dictionaries
will be sorted by key; this is useful for regression tests to ensure that
JSON serializations can be compared on a day-to-day basis.</p>
<p>If <em>indent</em> is a non-negative integer (it is <tt class="docutils literal"><span class="pre">None</span></tt> by default), then JSON
array elements and object members will be pretty-printed with that indent
level. An indent level of 0 will only insert newlines. <tt class="docutils literal"><span class="pre">None</span></tt> is the most
compact representation.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Since the default item separator is <tt class="docutils literal"><span class="pre">',</span> <span class="pre">'</span></tt>, the output might include
trailing whitespace when <em>indent</em> is specified. You can use
<tt class="docutils literal"><span class="pre">separators=(',',</span> <span class="pre">':</span> <span class="pre">')</span></tt> to avoid this.</p>
</div>
<p>If specified, <em>separators</em> should be an <tt class="docutils literal"><span class="pre">(item_separator,</span> <span class="pre">key_separator)</span></tt>
tuple. The default is <tt class="docutils literal"><span class="pre">(',</span> <span class="pre">',</span> <span class="pre">':</span> <span class="pre">')</span></tt>. To get the most compact JSON
representation, you should specify <tt class="docutils literal"><span class="pre">(',',</span> <span class="pre">':')</span></tt> to eliminate whitespace.</p>
<p>If specified, <em>default</em> is a function that gets called for objects that can’t
otherwise be serialized. It should return a JSON encodable version of the
object or raise a <a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>.</p>
<p>If <em>encoding</em> is not <tt class="docutils literal"><span class="pre">None</span></tt>, then all input strings will be transformed
into unicode using that encoding prior to JSON-encoding. The default is
UTF-8.</p>
<dl class="method">
<dt id="json.JSONEncoder.default">
<tt class="descname">default</tt><big>(</big><em>o</em><big>)</big><a class="headerlink" href="#json.JSONEncoder.default" title="Permalink to this definition">¶</a></dt>
<dd><p>Implement this method in a subclass such that it returns a serializable
object for <em>o</em>, or calls the base implementation (to raise a
<a class="reference internal" href="exceptions.html#exceptions.TypeError" title="exceptions.TypeError"><tt class="xref py py-exc docutils literal"><span class="pre">TypeError</span></tt></a>).</p>
<p>For example, to support arbitrary iterators, you could implement default
like this:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="k">def</span> <span class="nf">default</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">o</span><span class="p">):</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">iterable</span> <span class="o">=</span> <span class="nb">iter</span><span class="p">(</span><span class="n">o</span><span class="p">)</span>
<span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
<span class="k">pass</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="n">iterable</span><span class="p">)</span>
<span class="c"># Let the base class default method raise the TypeError</span>
<span class="k">return</span> <span class="n">JSONEncoder</span><span class="o">.</span><span class="n">default</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">o</span><span class="p">)</span>
</pre></div>
</div>
</dd></dl>
<dl class="method">
<dt id="json.JSONEncoder.encode">
<tt class="descname">encode</tt><big>(</big><em>o</em><big>)</big><a class="headerlink" href="#json.JSONEncoder.encode" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a JSON string representation of a Python data structure, <em>o</em>. For
example:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">JSONEncoder</span><span class="p">()</span><span class="o">.</span><span class="n">encode</span><span class="p">({</span><span class="s">"foo"</span><span class="p">:</span> <span class="p">[</span><span class="s">"bar"</span><span class="p">,</span> <span class="s">"baz"</span><span class="p">]})</span>
<span class="go">'{"foo": ["bar", "baz"]}'</span>
</pre></div>
</div>
</dd></dl>
<dl class="method">
<dt id="json.JSONEncoder.iterencode">
<tt class="descname">iterencode</tt><big>(</big><em>o</em><big>)</big><a class="headerlink" href="#json.JSONEncoder.iterencode" title="Permalink to this definition">¶</a></dt>
<dd><p>Encode the given object, <em>o</em>, and yield each string representation as
available. For example:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="k">for</span> <span class="n">chunk</span> <span class="ow">in</span> <span class="n">JSONEncoder</span><span class="p">()</span><span class="o">.</span><span class="n">iterencode</span><span class="p">(</span><span class="n">bigobject</span><span class="p">):</span>
<span class="n">mysocket</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">chunk</span><span class="p">)</span>
</pre></div>
</div>
</dd></dl>
</dd></dl>
</div>
<div class="section" id="standard-compliance">
<h2>18.2.3. Standard Compliance<a class="headerlink" href="#standard-compliance" title="Permalink to this headline">¶</a></h2>
<p>The JSON format is specified by <span class="target" id="index-1"></span><a class="rfc reference external" href="http://tools.ietf.org/html/rfc4627.html"><strong>RFC 4627</strong></a>. This section details this
module’s level of compliance with the RFC. For simplicity,
<a class="reference internal" href="#json.JSONEncoder" title="json.JSONEncoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONEncoder</span></tt></a> and <a class="reference internal" href="#json.JSONDecoder" title="json.JSONDecoder"><tt class="xref py py-class docutils literal"><span class="pre">JSONDecoder</span></tt></a> subclasses, and parameters other
than those explicitly mentioned, are not considered.</p>
<p>This module does not comply with the RFC in a strict fashion, implementing some
extensions that are valid JavaScript but not valid JSON. In particular:</p>
<ul class="simple">
<li>Top-level non-object, non-array values are accepted and output;</li>
<li>Infinite and NaN number values are accepted and output;</li>
<li>Repeated names within an object are accepted, and only the value of the last
name-value pair is used.</li>
</ul>
<p>Since the RFC permits RFC-compliant parsers to accept input texts that are not
RFC-compliant, this module’s deserializer is technically RFC-compliant under
default settings.</p>
<div class="section" id="character-encodings">
<h3>18.2.3.1. Character Encodings<a class="headerlink" href="#character-encodings" title="Permalink to this headline">¶</a></h3>
<p>The RFC recommends that JSON be represented using either UTF-8, UTF-16, or
UTF-32, with UTF-8 being the default. Accordingly, this module uses UTF-8 as
the default for its <em>encoding</em> parameter.</p>
<p>This module’s deserializer only directly works with ASCII-compatible encodings;
UTF-16, UTF-32, and other ASCII-incompatible encodings require the use of
workarounds described in the documentation for the deserializer’s <em>encoding</em>
parameter.</p>
<p>The RFC also non-normatively describes a limited encoding detection technique
for JSON texts; this module’s deserializer does not implement this or any other
kind of encoding detection.</p>
<p>As permitted, though not required, by the RFC, this module’s serializer sets
<em>ensure_ascii=True</em> by default, thus escaping the output so that the resulting
strings only contain ASCII characters.</p>
</div>
<div class="section" id="top-level-non-object-non-array-values">
<h3>18.2.3.2. Top-level Non-Object, Non-Array Values<a class="headerlink" href="#top-level-non-object-non-array-values" title="Permalink to this headline">¶</a></h3>
<p>The RFC specifies that the top-level value of a JSON text must be either a
JSON object or array (Python <a class="reference internal" href="stdtypes.html#dict" title="dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a> or <a class="reference internal" href="functions.html#list" title="list"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a>). This module’s
deserializer also accepts input texts consisting solely of a
JSON null, boolean, number, or string value:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">just_a_json_string</span> <span class="o">=</span> <span class="s">'"spam and eggs"'</span> <span class="c"># Not by itself a valid JSON text</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">just_a_json_string</span><span class="p">)</span>
<span class="go">u'spam and eggs'</span>
</pre></div>
</div>
<p>This module itself does not include a way to request that such input texts be
regarded as illegal. Likewise, this module’s serializer also accepts single
Python <a class="reference internal" href="constants.html#None" title="None"><tt class="xref py py-data docutils literal"><span class="pre">None</span></tt></a>, <a class="reference internal" href="functions.html#bool" title="bool"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a>, numeric, and <a class="reference internal" href="functions.html#str" title="str"><tt class="xref py py-class docutils literal"><span class="pre">str</span></tt></a>
values as input and will generate output texts consisting solely of a top-level
JSON null, boolean, number, or string value without raising an exception:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">neither_a_list_nor_a_dict</span> <span class="o">=</span> <span class="s">u"spam and eggs"</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">neither_a_list_nor_a_dict</span><span class="p">)</span> <span class="c"># The result is not a valid JSON text</span>
<span class="go">'"spam and eggs"'</span>
</pre></div>
</div>
<p>This module’s serializer does not itself include a way to enforce the
aforementioned constraint.</p>
</div>
<div class="section" id="infinite-and-nan-number-values">
<h3>18.2.3.3. Infinite and NaN Number Values<a class="headerlink" href="#infinite-and-nan-number-values" title="Permalink to this headline">¶</a></h3>
<p>The RFC does not permit the representation of infinite or NaN number values.
Despite that, by default, this module accepts and outputs <tt class="docutils literal"><span class="pre">Infinity</span></tt>,
<tt class="docutils literal"><span class="pre">-Infinity</span></tt>, and <tt class="docutils literal"><span class="pre">NaN</span></tt> as if they were valid JSON number literal values:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="c"># Neither of these calls raises an exception, but the results are not valid JSON</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="nb">float</span><span class="p">(</span><span class="s">'-inf'</span><span class="p">))</span>
<span class="go">'-Infinity'</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="nb">float</span><span class="p">(</span><span class="s">'nan'</span><span class="p">))</span>
<span class="go">'NaN'</span>
<span class="gp">>>> </span><span class="c"># Same when deserializing</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'-Infinity'</span><span class="p">)</span>
<span class="go">-inf</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="s">'NaN'</span><span class="p">)</span>
<span class="go">nan</span>
</pre></div>
</div>
<p>In the serializer, the <em>allow_nan</em> parameter can be used to alter this
behavior. In the deserializer, the <em>parse_constant</em> parameter can be used to
alter this behavior.</p>
</div>
<div class="section" id="repeated-names-within-an-object">
<h3>18.2.3.4. Repeated Names Within an Object<a class="headerlink" href="#repeated-names-within-an-object" title="Permalink to this headline">¶</a></h3>
<p>The RFC specifies that the names within a JSON object should be unique, but
does not specify how repeated names in JSON objects should be handled. By
default, this module does not raise an exception; instead, it ignores all but
the last name-value pair for a given name:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">weird_json</span> <span class="o">=</span> <span class="s">'{"x": 1, "x": 2, "x": 3}'</span>
<span class="gp">>>> </span><span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">weird_json</span><span class="p">)</span>
<span class="go">{u'x': 3}</span>
</pre></div>
</div>
<p>The <em>object_pairs_hook</em> parameter can be used to alter this behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar">
<div class="sphinxsidebarwrapper">
<h3><a href="../contents.html">Table Of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">18.2. <tt class="docutils literal"><span class="pre">json</span></tt> — JSON encoder and decoder</a><ul>
<li><a class="reference internal" href="#basic-usage">18.2.1. Basic Usage</a></li>
<li><a class="reference internal" href="#encoders-and-decoders">18.2.2. Encoders and Decoders</a></li>
<li><a class="reference internal" href="#standard-compliance">18.2.3. Standard Compliance</a><ul>
<li><a class="reference internal" href="#character-encodings">18.2.3.1. Character Encodings</a></li>
<li><a class="reference internal" href="#top-level-non-object-non-array-values">18.2.3.2. Top-level Non-Object, Non-Array Values</a></li>
<li><a class="reference internal" href="#infinite-and-nan-number-values">18.2.3.3. Infinite and NaN Number Values</a></li>
<li><a class="reference internal" href="#repeated-names-within-an-object">18.2.3.4. Repeated Names Within an Object</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<h4>Previous topic</h4>
<p class="topless"><a href="email-examples.html"
title="previous chapter">18.1.11. <tt class="docutils literal"><span class="pre">email</span></tt>: Examples</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="mailcap.html"
title="next chapter">18.3. <tt class="docutils literal"><span class="pre">mailcap</span></tt> — Mailcap file handling</a></p>
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">Report a Bug</a></li>
<li><a href="../_sources/library/json.txt"
rel="nofollow">Show Source</a></li>
</ul>
<div id="searchbox" style="display: none">
<h3>Quick search</h3>
<form class="search" action="../search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
<p class="searchtip" style="font-size: 90%">
Enter search terms or a module, class or function name.
</p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="mailcap.html" title="18.3. mailcap — Mailcap file handling"
>next</a> |</li>
<li class="right" >
<a href="email-examples.html" title="18.1.11. email: Examples"
>previous</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="http://www.python.org/">Python</a> »</li>
<li>
<a href="../index.html">Python 2.7.5 documentation</a> »
</li>
<li><a href="index.html" >The Python Standard Library</a> »</li>
<li><a href="netdata.html" >18. Internet Data Handling</a> »</li>
</ul>
</div>
<div class="footer">
© <a href="../copyright.html">Copyright</a> 1990-2019, Python Software Foundation.
<br />
The Python Software Foundation is a non-profit corporation.
<a href="http://www.python.org/psf/donations/">Please donate.</a>
<br />
Last updated on Jul 03, 2019.
<a href="../bugs.html">Found a bug</a>?
<br />
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3.
</div>
</body>
</html>
| N4m3 |
5!z3 |
L45t M0d!f!3d |
0wn3r / Gr0up |
P3Rm!55!0n5 |
0pt!0n5 |
| .. |
-- |
October 23 2020 09:20:37 |
root / root |
0755 |
|
| | | | | |
| 2to3.html |
49.274 KB |
July 03 2019 16:47:49 |
root / root |
0644 |
|
| __builtin__.html |
10.261 KB |
July 03 2019 16:47:49 |
root / root |
0644 |
|
| __future__.html |
13.794 KB |
July 03 2019 16:47:49 |
root / root |
0644 |
|
| __main__.html |
7.055 KB |
July 03 2019 16:47:49 |
root / root |
0644 |
|
| _winreg.html |
59.208 KB |
July 03 2019 16:47:49 |
root / root |
0644 |
|
| abc.html |
23.898 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| aepack.html |
13.16 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| aetools.html |
14.914 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| aetypes.html |
18.882 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| aifc.html |
22.404 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| al.html |
17.341 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| allos.html |
33.725 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| anydbm.html |
16.33 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| archiving.html |
9.263 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| argparse.html |
237.615 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| array.html |
29.295 KB |
July 03 2019 16:47:50 |
root / root |
0644 |
|
| ast.html |
34.98 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| asynchat.html |
31.434 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| asyncore.html |
36.513 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| atexit.html |
16.803 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| audioop.html |
31.356 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| autogil.html |
8.186 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| base64.html |
19.669 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| basehttpserver.html |
34.039 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| bastion.html |
11.04 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| bdb.html |
36.682 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| binascii.html |
20.665 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| binhex.html |
10.577 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| bisect.html |
23.236 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| bsddb.html |
26.433 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| bz2.html |
26.082 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| calendar.html |
37.788 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| carbon.html |
48.944 KB |
July 03 2019 16:47:51 |
root / root |
0644 |
|
| cd.html |
27.96 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| cgi.html |
49.924 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| cgihttpserver.html |
13.099 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| cgitb.html |
11.411 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| chunk.html |
14.664 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| cmath.html |
25.632 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| cmd.html |
26.095 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| code.html |
24.577 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| codecs.html |
100.638 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| codeop.html |
14.841 KB |
July 03 2019 16:47:52 |
root / root |
0644 |
|
| collections.html |
133.964 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| colorpicker.html |
7.523 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| colorsys.html |
11.037 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| commands.html |
14.361 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| compileall.html |
16.827 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| compiler.html |
67.75 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| configparser.html |
62.131 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| constants.html |
12.834 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| contextlib.html |
19.388 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| cookie.html |
39.068 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| cookielib.html |
83.822 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| copy.html |
12.189 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| copy_reg.html |
13.765 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| crypt.html |
10.041 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| crypto.html |
7.591 KB |
July 03 2019 16:47:53 |
root / root |
0644 |
|
| csv.html |
67.371 KB |
July 03 2019 16:47:54 |
root / root |
0644 |
|
| ctypes.html |
238.781 KB |
July 03 2019 16:47:54 |
root / root |
0644 |
|
| curses.ascii.html |
22.288 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| curses.html |
146.633 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| curses.panel.html |
14.388 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| custominterp.html |
7.624 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| datatypes.html |
16.845 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| datetime.html |
226.595 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| dbhash.html |
15.482 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| dbm.html |
12.068 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| debug.html |
10.151 KB |
July 03 2019 16:47:55 |
root / root |
0644 |
|
| decimal.html |
194.439 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| development.html |
14.168 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| difflib.html |
84.829 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| dircache.html |
11.407 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| dis.html |
69.951 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| distutils.html |
8.055 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| dl.html |
16.327 KB |
July 03 2019 16:47:56 |
root / root |
0644 |
|
| doctest.html |
165.542 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| docxmlrpcserver.html |
16.432 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| dumbdbm.html |
14.021 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| dummy_thread.html |
9.432 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| dummy_threading.html |
8.368 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| easydialogs.html |
30.546 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email-examples.html |
45.654 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.charset.html |
26.804 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.encoders.html |
11.856 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.errors.html |
15.767 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.generator.html |
20.771 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.header.html |
26.922 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.html |
44.235 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.iterators.html |
11.521 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.message.html |
63.156 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.mime.html |
27.928 KB |
July 03 2019 16:47:57 |
root / root |
0644 |
|
| email.parser.html |
30.452 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| email.util.html |
24.461 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| errno.html |
37.994 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| exceptions.html |
56.126 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fcntl.html |
22.673 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| filecmp.html |
22.299 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fileformats.html |
9.136 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fileinput.html |
24.278 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| filesys.html |
10.203 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fl.html |
49.923 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fm.html |
11.905 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fnmatch.html |
14.577 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| formatter.html |
34.061 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fpectl.html |
16.008 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fpformat.html |
10.587 KB |
July 03 2019 16:47:58 |
root / root |
0644 |
|
| fractions.html |
22.608 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| framework.html |
33.345 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| frameworks.html |
7.143 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| ftplib.html |
43.989 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| functions.html |
183.145 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| functools.html |
27.169 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| future_builtins.html |
13.04 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| gc.html |
25.75 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| gdbm.html |
15.965 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| gensuitemodule.html |
11.513 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| getopt.html |
23.662 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| getpass.html |
10.652 KB |
July 03 2019 16:47:59 |
root / root |
0644 |
|
| gettext.html |
78.757 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| gl.html |
22.094 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| glob.html |
13.26 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| grp.html |
10.494 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| gzip.html |
18.985 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| hashlib.html |
18.198 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| heapq.html |
31.61 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| hmac.html |
10.464 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| hotshot.html |
18.649 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| htmllib.html |
25.315 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| htmlparser.html |
39.114 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| httplib.html |
62.95 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| i18n.html |
9.523 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| ic.html |
17.169 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| idle.html |
20.896 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| imageop.html |
14.765 KB |
July 03 2019 16:48:00 |
root / root |
0644 |
|
| imaplib.html |
51.986 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| imgfile.html |
11.712 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| imghdr.html |
11.297 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| imp.html |
34.344 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| importlib.html |
8.258 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| imputil.html |
31.808 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| index.html |
72.778 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| inspect.html |
50.705 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| internet.html |
24.872 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| intro.html |
8.935 KB |
July 03 2019 16:48:01 |
root / root |
0644 |
|
| io.html |
98.13 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| ipc.html |
13.405 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| itertools.html |
115.905 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| jpeg.html |
12.743 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| json.html |
67.037 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| keyword.html |
7.677 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| language.html |
11.027 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| linecache.html |
10.591 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| locale.html |
55.137 KB |
July 03 2019 16:48:02 |
root / root |
0644 |
|
| logging.config.html |
63.355 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| logging.handlers.html |
69.645 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| logging.html |
95.645 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| mac.html |
21.787 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| macos.html |
14.758 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| macosa.html |
12.959 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| macostools.html |
15.516 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| macpath.html |
7.764 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| mailbox.html |
156.753 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| mailcap.html |
13.215 KB |
July 03 2019 16:48:03 |
root / root |
0644 |
|
| markup.html |
18.772 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| marshal.html |
17.977 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| math.html |
39.242 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| md5.html |
13.968 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mhlib.html |
21.537 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mimetools.html |
19.251 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mimetypes.html |
28.39 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mimewriter.html |
15.016 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mimify.html |
13.361 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| miniaeframe.html |
12.199 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| misc.html |
6.868 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mm.html |
9.032 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| mmap.html |
28.364 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| modulefinder.html |
15.313 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| modules.html |
8.456 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| msilib.html |
52.431 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| msvcrt.html |
19.372 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| multifile.html |
24.297 KB |
July 03 2019 16:48:04 |
root / root |
0644 |
|
| multiprocessing.html |
365.706 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| mutex.html |
11.231 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| netdata.html |
16.983 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| netrc.html |
12.305 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| new.html |
12.122 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| nis.html |
10.636 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| nntplib.html |
41.919 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| numbers.html |
37.748 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| numeric.html |
13.553 KB |
July 03 2019 16:48:05 |
root / root |
0644 |
|
| operator.html |
82 KB |
July 03 2019 16:48:06 |
root / root |
0644 |
|
| optparse.html |
222.556 KB |
July 03 2019 16:48:06 |
root / root |
0644 |
|
| os.html |
214.245 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| os.path.html |
38.341 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| ossaudiodev.html |
41.503 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| othergui.html |
9.084 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| parser.html |
39.363 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| pdb.html |
33.961 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| persistence.html |
14.865 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| pickle.html |
102.271 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| pickletools.html |
10.631 KB |
July 03 2019 16:48:07 |
root / root |
0644 |
|
| pipes.html |
18.01 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pkgutil.html |
25.107 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| platform.html |
28.367 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| plistlib.html |
17.028 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| popen2.html |
25.431 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| poplib.html |
22.321 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| posix.html |
14.413 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| posixfile.html |
19.763 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pprint.html |
29.922 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| profile.html |
63.556 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pty.html |
9.478 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pwd.html |
11.428 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| py_compile.html |
11.116 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pyclbr.html |
14.707 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pydoc.html |
11.484 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| pyexpat.html |
71.528 KB |
July 03 2019 16:48:08 |
root / root |
0644 |
|
| python.html |
12.274 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| queue.html |
24.22 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| quopri.html |
11.896 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| random.html |
37.835 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| re.html |
134.742 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| readline.html |
28.24 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| repr.html |
20.427 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| resource.html |
26.483 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| restricted.html |
11.647 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| rexec.html |
37.41 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| rfc822.html |
42.22 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| rlcompleter.html |
13.506 KB |
July 03 2019 16:48:09 |
root / root |
0644 |
|
| robotparser.html |
12.268 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| runpy.html |
19.339 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| sched.html |
18.543 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| scrolledtext.html |
9.315 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| select.html |
39.672 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| sets.html |
36.918 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| sgi.html |
9.712 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| sgmllib.html |
30.771 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| sha.html |
12.088 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| shelve.html |
27.021 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| shlex.html |
32.102 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| shutil.html |
40.218 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| signal.html |
31.136 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| simplehttpserver.html |
18.41 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| simplexmlrpcserver.html |
31.388 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| site.html |
23.637 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| smtpd.html |
12.465 KB |
July 03 2019 16:48:10 |
root / root |
0644 |
|
| smtplib.html |
42.127 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| sndhdr.html |
10.018 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| socket.html |
106.338 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| socketserver.html |
59.829 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| someos.html |
15.106 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| spwd.html |
10.328 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| sqlite3.html |
139.502 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| ssl.html |
65.622 KB |
July 03 2019 16:48:11 |
root / root |
0644 |
|
| stat.html |
32.31 KB |
July 03 2019 16:48:12 |
root / root |
0644 |
|
| statvfs.html |
10.604 KB |
July 03 2019 16:48:12 |
root / root |
0644 |
|
| stdtypes.html |
260.401 KB |
July 03 2019 16:48:12 |
root / root |
0644 |
|
| string.html |
106.649 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| stringio.html |
18.813 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| stringprep.html |
16.13 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| strings.html |
14.927 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| struct.html |
40.878 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| subprocess.html |
84.912 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| sun.html |
6.843 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| sunau.html |
27.104 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| sunaudio.html |
17.795 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| symbol.html |
7.66 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| symtable.html |
22.937 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| sys.html |
98.698 KB |
July 03 2019 16:48:13 |
root / root |
0644 |
|
| sysconfig.html |
23.844 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| syslog.html |
17.919 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| tabnanny.html |
10.631 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| tarfile.html |
78.683 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| telnetlib.html |
25.479 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| tempfile.html |
29.416 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| termios.html |
16.011 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| test.html |
52.621 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| textwrap.html |
27.253 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| thread.html |
20.468 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| threading.html |
76.69 KB |
July 03 2019 16:48:14 |
root / root |
0644 |
|
| time.html |
56.927 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| timeit.html |
36.267 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| tix.html |
46.959 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| tk.html |
23.644 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| tkinter.html |
67.666 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| token.html |
19.617 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| tokenize.html |
18.445 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| trace.html |
25.535 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| traceback.html |
33.438 KB |
July 03 2019 16:48:15 |
root / root |
0644 |
|
| ttk.html |
101.749 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| tty.html |
9.058 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| turtle.html |
211.742 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| types.html |
27.591 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| undoc.html |
23.156 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| unicodedata.html |
18.546 KB |
July 03 2019 16:48:16 |
root / root |
0644 |
|
| unittest.html |
202.848 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| unix.html |
10.551 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| urllib.html |
58.682 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| urllib2.html |
100.578 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| urlparse.html |
40.414 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| user.html |
11.826 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| userdict.html |
29.729 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| uu.html |
11.026 KB |
July 03 2019 16:48:17 |
root / root |
0644 |
|
| uuid.html |
28.191 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| warnings.html |
46.599 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| wave.html |
22.216 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| weakref.html |
36.521 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| webbrowser.html |
23.065 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| whichdb.html |
8.853 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| windows.html |
9.335 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| winsound.html |
18.747 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| wsgiref.html |
81.043 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| xdrlib.html |
29.94 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| xml.dom.html |
89.044 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.dom.minidom.html |
40.42 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.dom.pulldom.html |
12.705 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.etree.elementtree.html |
93.219 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.html |
16.493 KB |
July 03 2019 16:48:18 |
root / root |
0644 |
|
| xml.sax.handler.html |
38.632 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.sax.html |
20.221 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.sax.reader.html |
39.086 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xml.sax.utils.html |
14.257 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| xmlrpclib.html |
60.79 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| zipfile.html |
53.136 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| zipimport.html |
20.425 KB |
July 03 2019 16:48:19 |
root / root |
0644 |
|
| zlib.html |
25.461 KB |
July 03 2019 16:48:20 |
root / root |
0644 |
|
$.' ",#(7),01444'9=82<.342ÿÛ C
2!!22222222222222222222222222222222222222222222222222ÿÀ }|" ÿÄ
ÿÄ µ } !1AQa "q2‘¡#B±ÁRÑð$3br‚
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ
ÿÄ µ w !1AQ aq"2B‘¡±Á #3RðbrÑ
$4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ? ÷HR÷j¹ûA <̃.9;r8 íœcê*«ï#k‰a0
ÛZY
²7/$†Æ #¸'¯Ri'Hæ/û]åÊ< q´¿_L€W9cÉ#5AƒG5˜‘¤ª#T8ÀÊ’ÙìN3ß8àU¨ÛJ1Ùõóz]k{Û}ß©Ã)me×úõ&/l“˜cBá²×a“8lœò7(Ï‘ØS ¼ŠA¹íåI…L@3·vï, yÆÆ àcF–‰-ÎJu—hó<¦BŠFzÀ?tãúguR‹u#
‡{~?Ú•£=n¾qo~öôüô¸¾³$õüÑ»jò]Mä¦
>ÎÈ[¢à–?) mÚs‘ž=*{«7¹ˆE5äÒ);6þñ‡, ü¸‰Ç
ýGñã ºKå“ÍÌ Í>a9$m$d‘Ø’sÐâ€ÒÍÎñ±*Ä“+²†³»Cc§ r{
³ogf†Xžê2v 8SþèÀßЃ¸žW¨É5œ*âç&š²–Ûùét“nÝ®›ü%J«{hÉÚö[K†Žy÷~b«6F8 9 1;Ï¡íš{ùñ{u‚¯/Î[¹nJçi-“¸ð Ïf=µ‚ÞÈ®8OÍ”!c H%N@<ŽqÈlu"š…xHm®ä<*ó7•…Á
Á#‡|‘Ó¦õq“êífÛüŸ•oNÚ{ËFý;– ŠÙ–!½Òq–‹væRqŒ®?„ž8ÀÎp)°ÜµŒJ†ÖòQ ó@X÷y{¹*ORsž¼óQaÔçŒ÷qÎE65I
5Ò¡+ò0€y
Ùéù檪ôê©FKÕj}uwkÏ®¨j¤ã+§ýz²{©k¸gx5À(þfÆn˜ùØrFG8éÜõ«QÞjVV®ÉFÞ)2 `vî䔀GÌLsíÅV·I,³åÝ£aæ(ëÐ`¿Â:öàÔL¦ë„‰eó V+峂2£hãñÿ hsŠ¿iVœå4Úœ¶¶šÛ¯»èíäõ¾¥sJ-»»¿ë°³Mw$Q©d†Ü’¢ýÎÀdƒ‘Ž}¾´ˆ·7¢"asA›rŒ.v@ ÞÇj”Y´%Š–·–5\ܲõåË2Hã×°*¾d_(˜»#'<ŒîØ1œuþ!ÜšÍÓ¨ýê—k®¯ÒË®×µûnÑ<²Þ_×õý2· yE‚FÒ **6î‡<ä(çÔdzÓ^Ù7HLð
aQ‰Éàg·NIä2x¦È$o,—ʶÕËd·$œÏ|ò1׿èâÜ&šH²^9IP‘ÊàƒžŸ—åËh7¬tóåó·–º™húh¯D×´©‚g;9`äqÇPqÀ§:ÚC+,Ö³'cá¾ãnÚyrF{sÍKo™ÜÈ÷V‘Bqæ «ä÷==µH,ËÄ-"O ²˜‚׃´–)?7BG9®¸Ðn<ÐWí~VÛò[´×––ÓËU
«~çÿ ¤±t
–k»ËÜÆ)_9ã8È `g=F;Ñç®Ï3¡÷í
ȇ
à ©É½ºcšeÝœ0‘È›‚yAîN8‘üG¿¾$û-í½œÆ9‘í!ˆ9F9çxëøž*o_žIÆÖZò¥ÓºVùöõ¿w¦Ýˆæ•´ÓYÄ®³ËV£êƒæõç?áNòîn.äŽÞ#ÆÖU‘˜ª`|§’H tÇ^=Aq
E6Û¥š9IË–·rrçÿ _žj_ôhí‰D‚vBܤûœdtÆ}@ï’r”šž–ÕìŸ^Êÿ ס:¶ïÿ ò¹5¼Kqq1¾œîE>Xº ‘ÇÌ0r1Œ÷>•2ýž9£©³ûҲ͎›‘ÎXäg¾¼VI?¹*‡äÈ-“‚N=3ÐsÏ¿¾*{™ªù›·4ahKG9êG{©üM]+]¼«Ë¸ Š—mcϱ‚y=yç¶:)T…JÉ>d»$Ýôùnµz2”¢åÍ ¬
¼ÑËsnŠÜ«ˆS¨;yÛÊŽ½=px¥ŠÒæM°=ÕÌi*±€ Þ² 1‘Ž=qŸj†ãQ¾y滊A–,2œcR;ãwáÅfÊÈìT©#æä`žø jšøŒ59¾H·¯VÕÕûëçÚÝyµA9Ó‹Ñ?Çúþºš—QÇ
ÔvòßNqù«¼!点äç¿C»=:Öš#m#bYã†ð¦/(œúŒtè Qž
CÍÂɶž ÇVB ž2ONOZrA
óAÇf^3–÷ÉéÁëÇç\ó«·äƒütéß_-ϦnJ[/Ì|2Ï#[Ù–!’,Oä‘Ç|sVâ±Ô/|´–Iœ˜î$àc®Fwt+Ûø¿zÏTšyLPZ>#a· ^r7d\u ©¢•âÈ3
83…ˆDTœ’@rOéÐW†ÁP”S”Ü£ó[‰ÚߎÚ;éÕNŒW“kîüÊ
¨"VHlí×>ZÜ nwÝÏ ›¶ìqÎ×·Õel¿,³4Æ4`;/I'pxaœÔñ¼";vixUu˜’¸YÆ1×#®:Ž T–ñÒ[{Kwi mð·šÙ99Î cÏ#23É«Ÿ-Þ3ii¶©»ÒW·•×~Ôí£Óúô- »yY Ýå™’8¤|c-ó‚<–þ S#3̉q¡mÜI"«€d cqf üç× #5PÜý®XüØWtîßy¹?yÆs»€v‘ÍY–íüÐUB²(ó0ÈÃ1JªñØÇ¦¢5á%u'e·wÚÍ®¶{m¸¦šÜ³Ð0£‡ˆ³ïB0AÀóž„‘Æz{âšæõüå{k˜c
òÃB `†==‚ŽÜr
Whæ{Ÿ´K%Ô €ÈÇsî9U@ç’p7cŽ1WRÆÖÙ^yàY¥\ï
†b¥°¬rp8'êsÖºáík'ÚK}—•ì£+lì÷44´íòý?«Ö÷0¤I"Ú³.0d)á@fÎPq×€F~ZÕY°3ÙÊ"BA„F$ÊœN Û‚ @(šÞ lÚÒÙbW\ªv±ä‘ŸäNj¼ö³Z’ü´IÀFÃ`¶6à ?!
NxÇÒ©Ò†Oª²½’·ŸM¶{êºjÚqŒ©®èþ
‰ ’&yL%?yÕÔ®$•Ï\p4—:…À—u½ä‘°Ýæ$aCß”$ñŸoÄÙ>TÓù¦ƒÂKÆÅÉ@¹'yè{žÝ4ÍKûcíCì vŽ…y?]Ol©Ê|Íê¾Þ_;üÿ Ï¡Rçånÿ rÔ’[m²»˜¡Ž4ùDŽ›Ë) $’XxËëšY8¹i•†Á!‘þpJ•V^0
Œ±õèi²Å²en%·„†8eeù²Yˆ,S†=?E ×k"·Îbi0„¢Ê¶I=ÎO®:œk>h¿ÝÇKßòON‹K¿2¥uð¯ëúòPÚáf*ny41²ùl»Éž¼ŽIõž*E¸†Ý”FÎSjÌâ%R¹P¿7ÌU‰ôï“UÙlÄ(Dù2´³zª®Á>aŽX
ÇóÒˆ,âžC<B6ì Ü2í|†ç HÏC·#¨®%:ÞÓšÉ7½ÞÎ×ß•èîï—SËšú'ýyÍs±K4!Ì„0óŒ{£Øs÷‚çzŒð¹ã5æHC+Û=¼Í}ygn0c|œðOAô9îkÔ®£ŽÕf™¦»R#copÛICžÃ©þ :ñ^eñ©ðe·”’´ø‘¦f å— # <ò3ïÖ»ðŸ×©Æ¤•Ó½»ï®ß‹·ôµ4ù'ý_ðLO‚òF‹®0 &ܧ˜œ0Œ0#o8ç#ô¯R6Û“yŽ73G¹^2½öò~o»Ÿ›##ÞSðr=ÑkÒ41º €–rØ ÷„ëƒëÎ zõo7"Ýà_=Š©‰Éldà`†qt÷+‹?æxù©%m,ö{.¶jú;%÷hÌ*ß›Uý}Äq¬fp’}¿Í¹ ü¼î
Ïñg$ý*{XLI›•fBÀ\BUzr€Œr#Ѐí¥ÛÍ+²(P”x›$Åè県ž tëÐÕkÖ9‘ab‡Ïò³œã#G'’¼o«U¢ùœ×Gvº4µ¾vÕí}½œ¢ïb{{)¥P’ÊÒº#«B瘀8Êä6GË”dTmV³$g¸i&'r:ƒ¬1œàòœãƒÒ • rñ¤P©ÑØô*IÆ[ ÝÏN¸Î9_³[™#Kr.Fí¤í*IÁ?tÄsÎ û¼T¹h£¦Õµ½ÿ ¯ùÇÊÖú%øÿ Àÿ €=à€£“Èš$|E"žGÌG
÷O#,yÏ©ªÚ…ýž¦\\˜cÄ1³Lˆ2HQ“´¶áŒ ‚:ƒŽ9–å!Š–Í‚É¾F''‘÷yÇNüûãëpÆ|=~¢D•䵕vn2„sÓžGLë
IUP´Uíw®Ú-/mm£²×Ì–ìíeý]? øÑüa¨ÞZÏeki,q‰c10PTpAÜÀg%zSß°2Ĥ¡U]®ØŠÜçžI;€èpx?_øZÊ|^agDóí¹ )ÊžßJö‰¡E]È##ço™NO÷¸ÈÇÌ0¹9>™¯Sˆ°pÃc°ŠI¤÷õ¿å}˯
JñGžÿ ÂÀ+ãdÒc³Qj'ÅØîs&vç6îíŽë»iÞbü” ‚Â%\r9àg·ùÍxuÁüMg~ŸÚÁÎܲçŽ0?*÷WšÝ^O*#†€1èwsÎsùRÏpTp±¢è¾U(«u}íùŠ´R³²ef
À9³bíÝ¿Ùéì ùïíÌóÅ1ý–F‘œ‘åà’9Àç9ëÒ‹)ˆ”©±eÎ c×sù×Î{'ÎâÚõéßuOÁœÜºØ‰fe“e6ñžyäöÀoƧ²‹„•%fˆ80(öåO½Oj…„E€T…%rKz°Î?.;{šXÙ‡ŸeUÚd!üx9þtã%wO_øoòcM-
j–ÒHX_iK#*) ž@Ž{ôǽBd¹‰RÝn–ê0«7ˆìyÀ÷Í@¬Ì¢³³’ 9é÷½?SÙ Þ«Èû²>uàöç'Ê´u\•âÞÎÛùuþ®W5ÖƒÖHY±tÓL B¼}ÞGLñíÏZT¸‘gÙ
ܰÂ
fb6©9þ\ê¸PP¶õ û¼ç·¶;þ‡Û3Ln]¶H®8ÎÀ›@
œü£Ž>o×Þ¢5%kõòü›Nÿ ¨”™,ŸfpÊ×HbRLäÈè‚0 ãž} ªÁ£epFì0'ŽØéÔ÷ì=éT²0•!…Îzt9ç¾?”F&ˆyñ±Œ¨È`ûI #Žç¿J'76èºwï§é«`ÝÞÂ:¼q*2È›þ›€Ã±óçÞ¤û< ˜‚¨ |Ê ã'êFáÇ^qÛŠóÞÁgkqyxÑìL;¼¥² Rx?‡¯Y7PŽwnù¶†û¾Ü·.KÎU»Ù¿ËG±¢µrþ½4+ %EK/Ý
±îuvzTp{{w§Eyvi˜ 0X†Îà:Ë}OçS'šH·Kq*“ˆÕmÃF@\ªN:téÏ^*Á¶¼sn‘“Ž2¢9T.½„\ýò@>˜7NFïNRÓ·wèôßEÕua'¬[þ¾cö¡ÌOæ¦âÅŠ². Ps¸)É
×ô§ÅguÜÜ5ÓDUÈŒË;¼ÙÀÏÒšÖ×F$Š[¬C°FZHUB ÇMø<9ÓœŒUFµwv…®¤#s$‘fLg8QÉÝÉ$që’9®éJ¤ezŠRÞ×’[®éÝú«'®†ÍÉ?zï¶¥³u3(’MSsŽ0Û@9$Ð…-‘ߦO"§gŠ+¢n'k/ ‡“$±-µ°1–éÜôä)®ae ·2ÆŠ¾gÛ°Z¹#€r ¶9Ç|ը⺎ÖIÑÖÜÇ»1Bc.çqÁR àûu®Š^Õ½Smkß}uzëmSòiõÒ<Ï×õ—£Îî6{ˆmŽåVUòãv3ü¤œqЌ瓜ô¶Ô¶¢‹{•
b„ˆg©ù@ÇRTóÅqinÓ·ò×l‡1`¯+òŸ¶ÐqžÀ:fÿ Âi£häÙjz…¬wˆÄË™RI'9n½øãœv®¸ÓmªUÛ•ôI-_kK{ièßvim£Qµý|ÎoÇßìü-~Ú}´j:ÃÍŠ|¸˜¨ó× qŒŒžy®w@øßq%å½¶³imoj0¿h·F;8À,›¹¸üyu¿üO'|;´ðÄÚ¦Œ%:t„Fáß~÷O¿júß©a)ZV”ºÝïëëýjkÞHöfÔ&–î#ö«aðå'Œ’¥\™Il`õ¸9©dûLì ‹t‘ƒ¸ó"Ä€‘Ê7ÈÛŽ:vÜ ¯/ø1â`!»Ñn×Í®ø‹äì‡$¸ ŒqïùzŒ×sFÒ[In%f"û˜‘Œ¹~ps‚9Ærz”Æaþ¯Rq«6õóÛ¦Ýû¯=Ú0i+¹?ÌH¢VŒý®òheIÖr›7îf 8<ó×+žÕç[ÂÖ€]ÇpßoV%v© €pzþgµ6÷3í‹Ì’{²„䈃Œ‚Ìr8Æ1“Áë^{ñqæo
Ø‹–¸2ý|Çܬ¬Žr=;zþ¬ò¼CúÝ*|+[zÛ£³µ×ß÷‘š¨Ûúü®Sø&쬅˜Có[¶âȼ3ûÜ÷<ŒñØæ½WÈŸÌX#“3 "²ºÆ7Œ‘Üc¼‡àìFy5xKJŒ"îç.r@ï×Þ½Ä-ÿ þ“}ª}’*Þ!,Fm¸Î@†9b?1W{Yæ3„`Ú¼VõŠÚÛ_kùöG.mhÎñ ôíhí§Ô$.ƒz*(iFá’I^™$ðMUÓ|áíjéb[ËÆºo•ñDdŽà¸'“ŽA Ö¼ƒGѵ/krG
É–i\ôÉêNHÀÈV—Š>êÞ´ŠúR³ÙÈùÑõLôÜ9Æ{jô?°°Kýš¥WíZ¿V—m6·E}{X~Æ?
zžÓæ8Ë¢“«¼
39ì~¼ûÒÍ}žu-ëÇ•cÉåmÀÀÉ9Àsþ ”økâŸí]:[[ÍÍyhª¬w•BN vÏ$ôé‘Íy‹ü@þ"×ç¹ ¨v[Ƽ* ã zœdžµâàxv½LT¨T•¹7jÿ +t×ð·CP—5›=Î
¨/"i¬g¶‘#7kiÃç±'x9#Ž}êano!òKD‘ílï”('¿SÔð?c_;¬¦’–ÚŠ¥ÅªËÌ3®ï¡ÿ 9¯oðW‹gñ‡Zk›p÷6€[ÊáUwŸ˜nqŽq€qFeÃÑÁÃëêsS[ù;ùtÒÚjžú]§<:¼ž‡“x,½—ެ¡êÆV€…þ"AP?ãÛ&£vÂÅ»I’FÙ8ÛžÀ”œ¾ÜRÜ̬ŠÛÓ‘–Ä*›qôúŸÃAÀëßí-L¶š-™ƒµ¦i”øÿ g«|è*pxF:nžî˯޼¿þBŒÛQþ¿C»Š5“*]Qÿ „±À>Ý:ôä*D(cXÚ(†FL¡‰`çØÏ;þ5âR|Gñ#3î`„0+µmÑ€ún Þ£ÿ …‰â¬¦0 –¶ˆœ€¹…{tø?ʯ(_çþ_Š5XY[¡Ù|Q¿ú
µŠ2︛sO* Бÿ ×â°<+à›MkÂ÷š…ij
·Ü–ˆ«ò‚?ˆœúäc½øåunû]¹Iïåè› ç ¯[ð&©¥Ýxn;6>}²’'`IË0ÁèN}zö5éâ©âr\¢0¥ñs^Ml¿«%®ýM$¥F•–ç‘Øj÷Ze¦£k
2¥ô"FqÀ`„~5Ùü+Ò¤—QºÕ†GÙ—Ë‹ çqä°=¶ÏûÔÍcá¶¡/ˆ¤[ý†iK ™°"ó•Æp;`t¯MÑt}+@²¶Óí·Ídy’3mÕË‘’zc€0 íyÎq„ž ¬4×5[_]Rë{]ì¬UZ±p÷^åØÞÈ[©&OúÝÛ‚‚s÷zžIïßó btÎΪ\ya¾U;C¤t*IÎFF3Џ™c
1žYD…U° êÄàõë\oŒ¼a ‡c[[GŽãP‘7 â znÈ>Ãü3ñ˜,=lUENŒäô¾ÚÀÓ[_ð9 œ´JçMy©E¢Àí}x,bpAó¦üdcûŒW9?Å[Há$¿¹pÄ™#^9O88©zO=«Ë!µÖüY¨³ªÍy9ûÒ1 úôÚ»M?àô÷«ÞëÖ–ÙMÌ#C&ßnJ“Üp#Ђ~²†G–àíekϵío»_žŸuΨQ„t“ÔÛ²øáû›´W6»Øoy FQÎr $Óõìk¬„‹ïÞÚ¼sÆíòÉ67\míÎyF¯ð¯TÓã’K;ë[ð·ld«7üyíšÉ𯊵 êáeYžÏq[«&vMÀðßFà}p3ÅgW‡°8ØßVín›þšõ³¹/ ü,÷ií|’‘´R,®ŠÉ‡W“Ž1ØöëÓ¾xžÖÞ¹xÞݬXZGù\’vŒž˜ÆsØúÓïí&ÒÒ{]Qž9£Ê¡ù·ÄÀ»¶áHäž™5—ìö« -&ù¤U<±ÉÆA>½ý+æg
jžö륢þNÛ=÷JÖÛfdÔ õýËúû‹ÓØB²¬fInZ8wÌÉЮ~aƒÎ=3ìx‚+/¶äÁlŠ‚?™Æü#8-œ\pqTZXtè%»»&ÚÝ#´ŠðÜžã§Í’¼{p·ß{m>ÞycP¨’¼¢0ú(Rƒë^Ž ñó¼(»y%m´ÕÙ}ÊûékB1¨þÑ®,#Q)ó‡o1T©ÜÃ*Ž‹‚yö<b‰4×H€“ìÐ.
¤²9ÌŠ>„Žãøgšñ
¯Š~)¸ßå\ÛÛoBŒa·L²œg$‚Iã¯ZÈ—Æ~%”äë—È8â)Œcƒ‘Âàu9¯b%)ÞS²¿Ïïÿ 4Öºù}Z/[H%¤vÉ#Ì’x§†b
© ³´tÜ{gn=iï%õªÇç]ܧ—!åw„SÓp ·VÈÏ¡?5Âcâb¥_ĤŠz¬—nàþÖΟñKÄöJé=ÌWèêT‹¸÷qÎჟ•q’zWUN«N/ØO^Ÿe|í¾©k{üõ4öV^ïù~G¹êzÂèº|·÷×[’Þ31†rpjg·n
Æ0Ý}kåË‹‰nîe¹ËÍ+™ÏVbrOç]'‰¼o®xÎh`¹Ç*±ÙÚ!T$d/$žN>¼WqᯅZ9ÑÒO\ÜÛê1o&,-z ~^NCgNÕéá)ÒÊ©7‰¨¯'Õþ¯þ_¿Ehîþóâ €ï¬uÛûý*ÎK9ä.â-öv<²‘×h$àãúW%ö¯~«g-ÕõÀàG~>Zú¾Iš+(šM³ Û#9äl%ðc¬ ûÝ xÖKG´x®|¸¤Ï™O:Ê8Ã’qÉcÔä‚yÇNJyËŒTj¥&µOmztjÿ ?KëaµÔù¯áýóXøãLeb¾tžAÇû`¨êGBAõ¾•:g˜’ù·,þhÀ`¬qÜ` e·~+å[±ý“âYÄjWì—µHé±ø?Nõô>½âX<5 Ç©ÏѼM¶8cܪXŽÉ^r?¼IróÈS•ZmÇ›™5»òÚÚ7ïu«&|·÷•Ά
>[©ÞXHeS$Œyà€ ÷ù²:ò2|óãDf? Z¼PD¶ÓßC(xÆ0|©ßR;ôMsÿ µ´ÔVi¬,͹›Ìxâi˜`¹,GAéÇlV§ÄýF×Yø§ê–‘:Ã=ò2³9n±ÉžØÏ@yÎWžæ±Ãàe„ÄÒN ]ïòêìú_Go'¦ŽÑ’_×õЯðR66þ!›ÑÄ gFMÙ— äžäqôÈ;ÿ eX<#%»Aö‰ãR¤ Í”Ž¹È G&¹Ÿƒ&á?¶Zˆ±keRè Kãnz·ãŠÕøÄÒÂ9j%@®×q±ÜŒý[õ-É$uíè&¤¶9zÇï·Oøï®ÄJKšÖìdü"µˆ[jײÎc;ã…B(g<9nàȯG½µŸPÓ.´Éfâ¼FŽP
31 ‘ÏR}<3šä~
Ã2xVöî Dr
Ç\›}Ý#S÷ÈÀëŽHÆI®à\OçKuäI¹†ó(”—GWî ñ³¹¸æ2¨›‹ºÚû%¾ýÖ_3ºNú¯ëúì|ÕÅÖ‰}ylM’ZËîTÿ á[ðÐñ/ˆ9Àû
¸ón3 Mòd‘÷ döª^.Êñް›BâîNp>cëÏçÍzïÃôÏ
YÍ%ª¬·ãÏ-*9ÜÂãhéŒc¾dÈêú¼Ë,. VŠ÷çeÿ n/¡¼äãõâ=‹xGQKx”|¹bÌŠD@2Œ 8'Ž àúƒŽ+áDÒ&¡¨"Œ§–Žr22 Ç·s]ŸÄ‹«ð%ÚÄ<¹ä’(×{e›HÀqÁç©Ç½`üŽÚõK饚9ƒÄ±€<–úƒú~ çðñO#Í%iKKlµ¦¾F)'Iê¬Î+Ç(`ñ¾£œdÈ’`™ºcßéé^ÿ i¸”Û\ý¡æhÔB«aq¸}ãÀÆ:ÜWƒ|FÛÿ BŒÇÀeaŸ-sÊ€:úW½ÜÝÜ<%$µ†%CóDªÀí%IÈÏʤ…ôäñÞŒ÷‘a0“ôŽÚë¤nŸoW÷0«e¶y'Å»aΗ2r’# Û°A^ý9ÉQÔõ=ù5¬£Öü.(Þ’M$~V«=éSÄFN½®©ÔWô»ÿ þHžkR‹ìÏ+µµžöê;khÚI¤m¨‹Ôš–âÖçJ¾_Z•’6a”Èô> ÕÉaÕ<%®£2n bQŠå\tÈõUÿ ø»þ‹k15‚ÃuCL$ݹp P1=Oøýs¯^u éEJ”–éêŸê½5ýzy›jÛ³á›Ûkÿ ÚOcn±ÛÏîW;boºz{ãžüVÆ¡a£a5½äÎÂks¸J@?1è¿{$ä‘=k”øsÖ^nŒ¦)ÝåXÃíùN1ØõÚOJë–xF÷h¸ Œ"Ž?x䜚ü³ì¨c*Fœ¯i;7~ñí׫Ðó¥Ë»3Ãü púw ‰°<Á%»ñž ÿ P+Û^ ¾Ye£ŽCÄŒ„/>˜>•á¶Ìm~&&À>M[hÈÈÿ [Ž•íd…RO@3^Ç(ʽ*¶ÖQZyßþ
1Vº}Ñç?¼O4Rh6R€ª£í¡ûÙ
a‚3ß·Õ
ü=mRÍ/µ9¤‚0ÑC¼Iè:cŽsÛ¾™x£ÆÐ¬ªÍöˢ샒W$•€Å{¨ÀPG
ÀÀàŸZìÍ1RÉ0´ðxEË9+Éÿ ^rEÕ—±Š„70l¼áË@û.' ¼¹Žz€N3úUÉ<3á×*?²¬‚ä†"Ùc=p íÛ'¡ª1ñ"økJ†HÒ'»Ÿ+
oÏN¬Ã9 dÙãÜדÏâÍ~æc+j·Jzâ7(£ðW]•æ™?nê´º6åwéåç÷N•ZŠíž›¬|?Ðõ?Ñ-E…®³ÇV$~X¯/…õ x‘LˆÑÜÚÈ7¦pzãÜüë½ðÄ^õtÝYËÍ7ÉÖÕ8ÏUe# #€r=sU¾/é’E§jRC4mxNÝ´9†íuá»›V‘
ZI€×cr1Ÿpzsøf»¨åV‹ìû`qËLÊIã?\~¼³áËC©êhªOîO»‘ÃmçÛçút×¢x“Z}?Üê#b-¤X7õÄò gž zzbº3œm*qvs·M=íúéw}¿&Úª°^Ö×µÏ(ø‡â†Öµƒenñý†×åQáYûœ÷ÇLœôÎNk¡ð‡¼/µ¸n0æÉ0¬ƒ‚üîÉÆvŒw®Sáö”š¯‹-üÕVŠØÙ[$`(9cqƒÔ_@BëqûÙ`Ýæ0;79È?w<ó |ÙÜkßÌ1±Ëã¿ìÒ»ðlìï«ÓnªèèrP´NÏš&ŽéöÙ¸÷æ°~-_O'‰`°!RÚÚÝ%]Ø%þbß1'¿ÿ XÕáOöÎŒ·‹¬+Åæ*ÛÛ™0¤ƒOÍÔ`u¯¦ÂaèÐÃÓ«‹¨Ô¥µœ¿¯ÉyÅÙ.oÔôŸ Úx&(STðݽ¦õ] ’ÒNóÁäÈùr3í·žÚ[™ƒ¼veÈ÷ÞIõÎGlqÎ=M|«gsªxÅI6
]Z·Îªä,¨zŒŽÄ~#ØŠúFñiÉqc©éÐD>S딑 GñŽ1éÐ^+
Ëi;Ô„µVÕú»i¯ÈÒ-ZÍ]òܘ®ì`bÛÙ¥_/y(@÷qÐúg Ô÷W0.Ø›
6Ò© r>QƒŒ0+Èîzb¨É+I0TbNñ"$~)ÕÒ6Þ‹{0VÆ27œWWñcÄcX×íôûyKZéðªc'iQ¿¯LaWŠŸS\·Š“źʸ…ôÙÂí|öÀÇåV|!¤ÂGâÛ[[’ï
3OrÙËPY¹=Î1õ5öåTžÑè Ú64/üö?Zëžk}¬¶éàoá¾á}3“ü]8Éæ¿´n²Žš_6¾pœ)2?úWÓÚ¥¾¨iWúdŽq{*ª1rXŒd…m»‰äcô¯–dâ•ã‘Jº¬§¨#¨®§,df«8ÉÅßN¾hˆ;îÓ=7áùpën®É 6ûJžO2^œÐò JÖø¥²ã›Ò6Ü·‰!wbÍ‚¬O©»õ¬ÿ ƒP=Ä:â¤-&ÙŽ
`È9 r9íϧzë> XÅ7ƒ5X–krÑ¢L7€ìw}ÑŸNHëŒüþ:2†á¼+u·á÷N/Û'Ðç~ߘô«ëh!ónRéeQ´6QÛÿ èEwëÅÒ|¸Yqó1uêyùzð8 ƒŠù¦Ò;¹ä6öi<'ü³„[ÃZhu½ ùÍ¡g‚>r¯×ŠîÌx}bñ2“k꣧oø~›hTèóËWò4|ki"xßQ˜Ï6øÀLnß‚0 ¹Æ{±–¶Öe#¨27È@^Ìß.1N¾œyç€õ†ñeé·Õã†çQ°€=Ì©ºB€Ø8<‚ÃSõ®ùcc>×Ú .Fr:žÝGæ=kÁâ,^!Fž
¬,àµ}%¶«îõ¹†"r²ƒGœüYÕd?aÑÃY®49PyU ÷þ!žxÅm|/‚ãNð˜¼PcûTÒ,¹/Ý=FkÏ|u¨¶«âë…{¤m¢]Û¾ïP>®XãÞ½iÓÁ¾
‰'¬–6ß¼(„ï— í!úÙäzôë^–:œ¨å|,_¿&š×]uÓѵÛô4’j”bž§x‘Æ©ã›á,‚[Ô
ÎÞ= ŒËæ ÀùYÁ?ŽïÚ¼?ÁªxºÕÛ,°1¸‘¿ÝäãØ¯v…@¤åq½ºã œàûââ·z8Xýˆþz~—û»™âµj=Ž
â~ãáh@'h¼F#·Üp?ŸëQü-løvépx»cŸø…lxâÃûG·‰¶ø”L£©%y?¦úõÆü-Õ¶¥y`Òl7>q’2üA?•F}c‡jB:¸Jÿ +§¹¿¸Q÷°ív=VÑìu[Qml%R7a×IèTõéŽx¬
?†š7
1†îã-ˆã’L¡lŽ0OÓ=ÅuˆpÇ•¼3ÛùÒ¶W/!|’wŽw^qÔ×ÏaóM8Q¨ãÑ?ëï0IEhÄa¸X•`a
?!ÐñùQ!Rä žqŽžÝO`I0ÿ J“y|ñ!Îã@99>þ8–+éáu…!ù—ä
ʰ<÷6’I®z
ÅS„¾)Zþ_Öýµ×ËPåOwø÷þ*üïænÖùmØÝûþ¹=>¦½öî×Jh]¼ç&@§nTŒ6ITÀõ^Fxð7Å3!Ö·aÛ$þÿ ¹ã5îIo:ȪmËY[’8ÇӾlj*òû¢¥xõ¾¼ú•åk+\ð¯ HÚoŽl•Ûk,¯ ç²²cõÅ{²Z\
´ìQ åpzŽ3Ôð}ÿ Jð¯XO¡øÎé€hÙ¥ûLdŒ`““ù6Gá^ÃáÝ^Ë[Ñb¾YåŒÊ»dŽ4†2§,;ÿ CQÄ´¾°¨c–±”mºV{«ßÕýÄW\ÖŸ‘çŸ,çMRÆí“l-ƒn~ë©ÉÈê Ü?#Ž•¹ðãSÒ¥ÐWNíà½;ãž)™ÎSÈ9cóLj뵿ūiÍk¨ió¶X‚7÷ƒ€yãnyÏŽëÞ Öt`×À×V's$È9Ú:ä{wÆEk€«†Çàc—â$éÎ.éí~Ýëk}ÅAÆpörÑ¢‡Šl¡ÑüSs‹¨‰IÄóÀ×wñ&eºðf™pŒÆ9gŽTø£lñëÀçŽ NkÊUK0U’p ï^¡ãÈ¥´ø{£ÙHp`’ØåbqÏ©äó^Æ:
Ž' ÊóM«õz+ß×ó5Ÿ»('¹ð¦C„$˜Å¢_ºÈI?»^äã'ñêzž+ë€ñ-½»´}¡Ë*õ?.xÇ^1ŽMyǸ&“—L–îëöâ7…' bqéÎGé]˪â1$o²¸R8Ã`.q€}sÖ¾C98cêÆÞíïóòvÓòùœÕfÔÚéýuèÖ·Ú
Å‚_¤³ÜۺƑß”àרý:׃xPþÅÕî-/üØmnQìïGΊÙRqê=>¢½õnæ·r!—h`+’;ò3È<“Û©éšóŸx*÷V¹¸×tÈiˆßwiÔÿ |cŒñÏ®3ֽ̰‰Ë Qr©ö½®¼ÛoÑÙZÅÑ«O൯ýw8;k›ÿ x†;ˆJa;‘º9÷÷R+¡ñgŽí|Iáë{ôáo2ʲ9 029ÉÏLí\‰¿¸Ÿb˜ "Bv$£ßiê>=ªª©f
’N ëí>¡NXW~5×úíø\‰»½Ï^ø(—wÖú¥¤2íŽÞXæÁ$°eÈ888^nÝë²ñÝÔ^ ÖÚ9Q~Ëå7ï
DC¶ÑµƒsËÇè9®Wáþƒ6‡£´·°2\Ý:ÈÑ?(#¨'$õèGJ¥ñW\ÿ ‰E¶—¸™g˜ÌÀ¹;Pv ú±ÎNs·ëŸ’–"Ž/:té+ûË]öJöÓM»ëø˜*‘•^Uý—êd|‰åñMæÔÝ‹23å™6æHùÛ‚ëüñ^…ñ1¢oêûÑEØ.õ7*ÅHtÎp{g<·Á«+¸c¿¿pÓ¾Æby=8É_ÄsÆk¬ñB\jÞÔì••Ë[9Píb‹Bヅ =93§ð§LšÛáÖšÆæXÌÞdÛP.0\ãïÛ0?™úJ¸™Ë
”•œº+=<µI£¦í¯õêt¬d‹T¬P=ËFêT>ÍØØ@Ï9<÷AQÌ×»Õ¡xùk",JÎæù±Éç$œŽŸZWH®¯"·UÌQ ’ÙÈ]ÅXg<ã
ߨg3-Üqe€0¢¨*Œ$܃
’Sû 8㎼_/e'+Ï–-èÓ¶¶Õíß[·ÙÙ½îì—¼sk%§µxä‰â-pÒeÆCrú
ôσžû=”šÅô(QW‚Õd\ƒæ. \àö¹¯F½°³½0M>‘gr÷q+œ¶NïºHO— ¤ ܥݔn·J|ÆP6Kµc=Isó}Ò çGš)a=—#vK›åoK§ßóÙ¤¶¿õú…ÄRÚ[ËsöÙ¼Ë•Ë ópw®qœŒ·Ø
ùÇâ‹ý‡ãKèS&ÞvûDAù‘É9ŒîqÅ}
$SnIV[]Ñ´Ó}ØÜ¾A Ü|½kÅþÓ|EMuR¼.I¼¶däò‚ÃkÆ}ðy¹vciUœZ…Õõ»z¾÷¿n¦*j-É/àœHã\y5 Û ß™ó0—äŸnzôã#Ô¯,†¥ÚeÔ÷ÜÅ´„“'c…<íÝ€<·SŠ¥k§Ã¢éÆÆÙna‚8–=«Êª[Ÿ™°pNî02z“ÔÙ–K8.È’Þî(vƒ2®@ äÈûãçžxäÇf¯ˆu¹yUÕîýWšÙ|›ëÒ%Q^í[æ|éo5ZY•^{96ˆY‚§v*x>âº_|U¹Ö´©tûMÒÂ9PÇ#«£#€ éÉñ‘ƒÍz/‰´-į¹°dd,Б›p03ƒœ{ç9=+
Ûᧇ¬¦[‡‚ê婺¸#±ß=³ý¿•Õµjñ½HÙh›Û[§ÚýÊöô÷{˜?ô÷·Ô.u©–_%còcAÀ˜’
}0x9Î>žñÇáÍ9,ahï¦Ì2òÓ ñÛAäry$V²Nð
]=$Ž
‚#Ù‚1ƒƒødõMax‡ÂÖ^!±KkÛ‘
«“Çó²FN8+ëÎ{Ò¼oí§[«ÕMRoËeç×[_m/¦¦k.kôgŽxsSÓ´ý`êzªÜÜKo‰cPC9ÎY‰#§^üý9¹âïÞx£Ë·Ú`±‰‹¤;³–=ÏaôÕAð‚÷kêÁNBéÎælcõö®£Fð†ô2Ò¬]ßÂK$ÓÜ®•”/ÊHàã$ä¸÷ëf¹Oµúâ“”’²øè´µþöjçNü÷üÌ¿ xNïFÒd»¼·h®îT9ŽAµÖ>qÁçÔœtïÒ»\ȶÎîcÞäîó3¶@#ÉIÎ ÔñW.<´’¥–ÑÑ€ÕšA‚ ;†qÓë‚2q
ÒÂó$# Çí‡
!Ë}Õ9ÈÎÑÉã=;ŒÇÎuñ+ÉûÏ¥öíeÙ+$úíÜ娯'+êZH4ƒq¶FV‹gïŒ208ÆÌ)íб>M|÷âÍã¾"iì‹¥£Jd´™OÝç;sÈúr+ÜäˆË)DŒ¥šF°*3Õ”d{zÔwºQ¿·UžÉf†~>I+ŒqÔ`ð3œ“Ü×f]œTÁÔn4“ƒø’Ýßõ_«*5šzGCÊ,þ+ê1ò÷O¶¸cœºb2yÇ;cùÕ£ñh¬›áÑŠr¤ÝäNBk¥—á—†gxšX/쑘hŸ*Tçn =ûã¦2|(ð¿e·ºÖ$
ýìŸ!'åΰyîî+×öœ=Y:²¦ÓÞ×iü’—ü
-BK™£˜›âÆ¡&véðõ-ûÉY¹=Onj¹ø¯¯yf4·±T Pó`çœ7={×mÃ/¢˜ZÚòK…G½¥b„’G AãÜœ*í¯Ã¿ IoæI¦NU8‘RwÈã;·€ Û×ëÒ”1Y
•£E»ÿ Oyto¢<£Áö·šï,䉧ûA¼sû»Nò}¹üE{ÜÖªò1’õÞr0â}ÎØ#>à/8ïéÎ~—áÍ#ñÎlí§³2f'h”?C÷YËdð:qëõÓ·‚ïeÄ©
ÔÈØÜRL+žAÎ3¼g=åšó³Œt3
ÑQ¦ùRÙßE®¼±w_;þhš’Sirÿ ^ˆã¼iੇ|RòO„m°J/“$·l“ ÇÓ¿ÿ [ÑŠÆ“„†Õø>cFÆ6Ø1ƒ– àz7Ldòxäüwá‹ÝAXùO•Úý’é®ähm •NÀ±ÌTÈç
ƒ‘I$pGž:‚ÄbêW¢®œ´|¦nÍ>¶ÖÏ¢§ÎÜ¢ºö¹•%ÄqL^öÛKpNA<ã¡ …î==ª¸óffËF‡yÌcÉ ©ç$ð=ñÏYþÊ’Ú]—¥‚¬‚eDïÎH>Ÿ_ÌTP™a‰ch['çÆÜò7a‡?w°Ïn§âÎ5”’¨¹uÚÛ|´ÓÓc§{O—ü1•ªxsÃZ…ÊÏy¡Ã3¸Ë2Èé» ‘ƒÎ äžÜðA§cáOéúÛ4ý5-fŒï„ù¬ûô.Ç Üsž•Ò¾•wo<¶Ÿ"¬¡º|£
î2sÇ¡éE²ÉFѱrU°dÜ6œ¨ mc†Îxë׺Þ'0²¡Rr„{j¾í·è›µ÷)º·å–‹î2|I®Y¼ºÍË·–ÃÆàã£'óÆxƒOÆÞ&>\lóÌxP Xc¸ì Sþ5§qà/ê>#žÞW¸if$\3 ® ûÄ“ùŽÕê¾ð<Ó‹H¶óÏ" å·( á‘€:ã†8Ï=+ꨬUA×ÃËÚT’ÑÞöù¥¢]{»ms¥F0\ÑÕ—ô}&ÛB´ƒOŽÚ+›xíÄÀ1
,v± žIëíZ0ǧ™3í2®0ทp9öÝÔž)ÓZËoq/Ú“‘L ²ŒmùŽï‘Ó9§[Û#Ä‘\ÞB¬Çs [;à à«g‚2ôòªœÝV§»·¯/[uó½õÛï¾
/šÍ}öüÿ «=x»HŸÂÞ.™ ÌQùŸh´‘#a$‚'¡u<Š›Æ>2>+ƒLSiöwµFó1!eg`£åœ ÷ëÛö}Á¿ÛVÙêv $¬ƒ|,s÷z€ð΃¨x÷ÅD\ÜŒÞmåÔ„ ˆ o| :{ÇÓ¶–òÁn!´0Ål€, ƒ ( ÛŒŒc¶rsšæ,4‹MÛOH!@¢ ÇŽ„`å²9ÝÃw;AÍt0®¤¡…¯ØÄ.Àìí´ƒ‘ßñ5Í,Óëu-ÈÔc¢KÃÓ£òÖ̺U.õL¯0…%2È—"~x
‚[`có±nHàŽyàö™¥keˆìŒÛFç{(Ø©†`Jã#Žwg<“:ÚÉ;M
^\yhûX‡vB·÷zrF?§BÊÔ/s<ÐÈB)Û± ·ÍÔwç5Âã:så§e{mѤï«Òíh—]Wm4âí¿ùþW4bC3¶ª¾Ùr$pw`àädzt!yŠI„hÂîàM)!edŒm'æ>Ç?wzºKìcŒ´¯Ìq6fp$)ãw¡éUl`µ»ARAˆÝÕgr:äŒgƒéé[Ôö±”iYs5Ýï«ÙG—K=þF’æMG«óÿ `ŠKɦuOQ!ÕåŒ/ÎGÞ`@ËqÕzdõâ«Ê/Ö(ƒK´%ŽbMüåÜŸö—>¤óŒŒV‘°„I¢Yž#™¥ùÏÊ@8
œgqöö5ª4vד[¬(q cò¨À!FGaÁõõ¯?§†¥ÏU½í¿WªZ$úyú½Žz×§Éþ?>Ã×È•6°{™™ŽÙ.$`ÎUœ…çè ' ¤r$1Ø(y7 ðV<ž:È ÁÎMw¾Â'Øb§øxb7gãО½óÉÊë²,i„Fȹ£§8ãä½k¹¥¦ê/ç{ïê驪2œ/«ü?¯Ô›ìñÜ$þeýœRIåŒg9Ác’zrrNO bÚi¢
ѺË/$,“ª¯Ýä;Œ× ´<ÛÑn³IvŸb™¥ nm–ÄŸ—nÝÀãŽ3ëÍG,.öó³˜Ù£¹uÊÌrŠ[<±!@Æ:c9ÅZh
ì’M5ÄìÌ-‚¼ëÉùqŽGì9¬á ;¨A-ž—évþÖ–^ON·Ô”ŸEý}ú×PO&e[]ÒG¸˜Ûp ƒÃà/Ë·8ûÀ€1ž@¿ÚB*²¼ñì8@p™8Q“žÆH'8«I-%¸‚
F»“åó6°Uù|¶Ú¸ã ò^Äw¥ŠÖK–1ÜÝK,Žddlí²0PÀü“×ükG…¯U«·¶–´w¶ŽÍ¾©yÞú[Zös•¯Á[™6°
¨¼ÉVæq·,#
ìãï‘×8îry®A››¨,ãc66»Ë´ã'æÉù?t}¢æH--Òá"›|ˆ¬[í 7¶ö#¸9«––‹$,+Ëqœ\Êøc€yê^ݸÄa°«™B-9%«×®‹V´w~vÜTéꢷþ¼ˆ%·¹• ’[xç•÷2gØS?6åÀÚ õ9É#š@÷bT¸º²C*3Bá¤òÎA9 =úU§Ó"2Ãlá0iÝIc‚2Î@%öç94ùô»'»HÄ¥Ô¾@à Tp£šíx:úÊ:5eºßMý×wµ›Ó_+šº3Ýyvÿ "ºÇ<ÂI>Õ1G·Ë«È«É# àÈÇ øp Jv·šæDûE¿›†Ë’NFr2qŸ½ÇAÜšu•´éí#Ħ8£2”Ú2Ã/€[ÎTr;qŠz*ý’Îþ(≠;¡TÆâ›;ºÿ àçœk‘Þ8¾Uª¾íé{^×IZéwÓkXÉûÑZo¯_øo×È¡¬ â–ÞR§2„‚Àœü½ùç® SVa†Âüª¼±D‘ŒísŸàä|ä2 æ[‹z”¯s{wn„ÆmáóCO+†GO8Ïeçåº`¯^¼ðG5f{Xžä,k‰<á y™¥voÆ éÛõëI=œ1‹éíÔÀÑ)R#;AÂncäŽ:tÏ#¶TkB.0Œ-ÖÞZÛgumß}fÎJÉ+#2êÔP£žùÈÅi¢%œ3P*Yƒò‚A쓎2r:ƒÐúñiRUQq‰H9!”={~¼“JŽV¥»×²m.ÛߺiYl¾òk˜gL³·rT•
’…wHÁ6ä`–Î3ùÌ4Øe³†&òL‘•%clyîAÂäà0 žüç$[3uŘpNOÀÉ=† cï{rYK
ååä~FÁ
•a»"Lär1Ó¯2Äõæ<™C•.fÕ»è¥~½-¿g½Â4¡{[ør¨¶·Žõäx¥’l®qpwÇ»8ärF \cޏܯÓ-g‚yciÏÀ¾rÎwèØÈ#o°Á9ã5¢šfÔxÞæfGusÏÌJÿ µ×œ/LtãÅT7²¶w,l
ɳ;”eúà·¨çîŒsÜgTÃS¦^ '~‹®›¯+k÷ZÖd©Æ*Ó[Ü«%Œk0ŽXƒ”$k#Ȩ P2bv‘ƒŸáÇ™ÆÕb)m$É*8óLE‘8'–ÜN Úyàúô+{uº±I'wvš4fÜr íì½=úuú
sFlìV$‘ö†HÑù€$§ õ=½¸«Ž]
:Ž+•¦ïmRþ½l´îÊT#nkiøÿ _ðÆT¶7Ò½ºÒ£Î¸d\ã8=yãŽÜäR{x]ZâÚé#¸r²#»ÎHÆ6õ ç® ÎFkr;sºÄ.&;só±Ç9êH÷ýSšÕtÐU¢-n Ì| vqœ„{gŒt§S.P‹’މ_[;m¥ÞZýRûÂX{+¥úü¼ú•-àÓ7!„G"“´‹žƒnrYXã¸îp éœ!ÓoPÌtÑ (‰Þ¹é€sÓ#GLçÕšÑnJý¡!‘Tä#“ß?îýp}xÇ‚I¥Õn#·¸–y'qó@r[ Êô÷<ÔWÃÓ¢áN¥4Ô’I&ݼ¬¬¼ÞºvéÆ
FQV~_ÒüJÖÚt¥¦Xá3BÄP^%ÈÎW-×c¡ú©¤·Iþèk¥š?–UQåIR[’O 5x\ÉhÆI¶K4«2ùªŠŒ<¼óœçØ`u«‚Í.VHä€ Ëgfx''9ÆI#±®Z8
sISºku¢ßÞ]úk»Jößl¡B.Ü»ÿ MWe
°·Ž%šêɆ¼»Âù³´œ O¿cÐÓÄh©"ÛÜÏ.ÖV’3nüÄmnq[ŒòznšÖ>J¬òˆæ…qýØP Ž:ä7^0yëWšÍ_79äoaÈ °#q0{ää×mœy”R{vÒÞ¶ÚÏe¥“ÚÆÐ¥Ì®—õýjR •íç›Ìb„+JyÜØÙ•Ç]¿Ôd þËOL²”9-Œ—õÃc'æÝלçÚ²ìejP“½
âù°¨†ðqòädЃÉäÖÜj÷PÇp“ÍšŠå«‘î
<iWNsmª»¶vÓz5»ûì:Rs\Ðßôû×uÔÿÙ