From e82c0d577b6c3d04551bfa0c46e1e8e5127e939b Mon Sep 17 00:00:00 2001 From: HalcyonChimera Date: Thu, 21 Jul 2016 15:40:15 +0000 Subject: [PATCH 1/5] mailman3 docker --- mailman3 | 1 + 1 file changed, 1 insertion(+) create mode 160000 mailman3 diff --git a/mailman3 b/mailman3 new file mode 160000 index 0000000..7f27d06 --- /dev/null +++ b/mailman3 @@ -0,0 +1 @@ +Subproject commit 7f27d069d95417c3d4a4e8d9737ea9e81e9c88fa From b970eb95edda5a1b3fb737917707c685988288f0 Mon Sep 17 00:00:00 2001 From: HalcyonChimera Date: Thu, 21 Jul 2016 15:53:08 +0000 Subject: [PATCH 2/5] dfgdgf --- cas/Dockerfile | 2 +- cas/docker-compose.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cas/Dockerfile b/cas/Dockerfile index 82539d7..2eacfec 100644 --- a/cas/Dockerfile +++ b/cas/Dockerfile @@ -28,7 +28,7 @@ RUN usermod -d /home www-data \ && chown www-data:www-data /home ENV SOURCE_BRANCH=master -ENV SOURCE_REPO=https://github.com/CenterForOpenScience/cas-overlay.git +ENV SOURCE_REPO=https://github.com/HalcyonChimera/cas-overlay.git # perform an initial build to cache maven dependencies RUN mkdir /cas-overlay \ diff --git a/cas/docker-compose.yml b/cas/docker-compose.yml index b4fb26e..2ec3c4b 100644 --- a/cas/docker-compose.yml +++ b/cas/docker-compose.yml @@ -15,7 +15,7 @@ cas: net: host environment: - SOURCE_BRANCH=develop - - SOURCE_REPO=https://github.com/CenterForOpenScience/cas-overlay + - SOURCE_REPO=https://github.com/HalcyonChimera/cas-overlay - CAS_DB_PORT_5432_TCP_ADDR=127.0.0.1 - CAS_DB_PORT_5432_TCP_PORT=5432 - OSF_DB_PORT_27017_TCP_ADDR=127.0.0.1 From 054a39c0f89c92686ce22d8b7ec6d71ac8afebcd Mon Sep 17 00:00:00 2001 From: HalcyonChimera Date: Thu, 21 Jul 2016 15:56:46 +0000 Subject: [PATCH 3/5] merging container --- mailman3 | 1 - 1 file changed, 1 deletion(-) delete mode 160000 mailman3 diff --git a/mailman3 b/mailman3 deleted file mode 160000 index 7f27d06..0000000 --- a/mailman3 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7f27d069d95417c3d4a4e8d9737ea9e81e9c88fa From 03c7e66287e8a0231118ff8afc3d76693f616128 Mon Sep 17 00:00:00 2001 From: HalcyonChimera Date: Thu, 21 Jul 2016 15:58:18 +0000 Subject: [PATCH 4/5] merging repo --- mailman3/Dockerfile | 40 + mailman3/README.md | 28 + .../config/etc/nginx/sites-enabled/default | 14 + mailman3/config/etc/postfix/dynamicmaps.cf | 7 + mailman3/config/etc/postfix/main.cf | 200 + mailman3/config/etc/postfix/master.cf | 119 + mailman3/config/etc/postfix/post-install | 869 ++ mailman3/config/etc/postfix/postfix-files | 442 + mailman3/config/etc/postfix/postfix-script | 380 + mailman3/config/etc/postfix/sasl/smtpd.conf | 2 + mailman3/config/etc/postfix/vhosts | 1 + mailman3/config/etc/postfix/vmaps | 1 + .../mailman3/mailman-bundler/buildout.cfg | 88 + .../mailman-bundler/mailman_web/production.py | 402 + .../site-packages/mailman/config/schema.cfg | 843 ++ .../var/log/mailman-web/mailman-web.log | 0 mailman3/docker-compose.yml | 8 + mailman3/mailman-bundler | 1 + mailman3/scripts/run | 60 + mailman3/venv/bin/activate | 78 + mailman3/venv/bin/activate.csh | 36 + mailman3/venv/bin/activate.fish | 76 + mailman3/venv/bin/activate_this.py | 34 + mailman3/venv/bin/buildout | 11 + mailman3/venv/bin/easy_install | 11 + mailman3/venv/bin/easy_install-2.7 | 11 + mailman3/venv/bin/pip | 11 + mailman3/venv/bin/pip2 | 11 + mailman3/venv/bin/pip2.7 | 11 + mailman3/venv/bin/python | Bin 0 -> 3802248 bytes mailman3/venv/bin/python-config | 78 + mailman3/venv/bin/python2 | 1 + mailman3/venv/bin/python2.7 | 1 + mailman3/venv/bin/wheel | 11 + mailman3/venv/include/python2.7 | 1 + mailman3/venv/lib/python2.7/UserDict.py | 1 + mailman3/venv/lib/python2.7/UserDict.pyc | Bin 0 -> 9360 bytes mailman3/venv/lib/python2.7/UserDict.pyo | Bin 0 -> 9360 bytes mailman3/venv/lib/python2.7/_abcoll.py | 1 + mailman3/venv/lib/python2.7/_abcoll.pyc | Bin 0 -> 26798 bytes mailman3/venv/lib/python2.7/_abcoll.pyo | Bin 0 -> 26798 bytes mailman3/venv/lib/python2.7/_weakrefset.py | 1 + mailman3/venv/lib/python2.7/_weakrefset.pyc | Bin 0 -> 10254 bytes mailman3/venv/lib/python2.7/_weakrefset.pyo | Bin 0 -> 10254 bytes mailman3/venv/lib/python2.7/abc.py | 1 + mailman3/venv/lib/python2.7/abc.pyc | Bin 0 -> 6275 bytes mailman3/venv/lib/python2.7/abc.pyo | Bin 0 -> 6219 bytes mailman3/venv/lib/python2.7/codecs.py | 1 + mailman3/venv/lib/python2.7/codecs.pyc | Bin 0 -> 37837 bytes mailman3/venv/lib/python2.7/codecs.pyo | Bin 0 -> 37837 bytes mailman3/venv/lib/python2.7/copy_reg.py | 1 + mailman3/venv/lib/python2.7/copy_reg.pyc | Bin 0 -> 5245 bytes mailman3/venv/lib/python2.7/copy_reg.pyo | Bin 0 -> 5201 bytes .../venv/lib/python2.7/distutils/__init__.py | 101 + .../venv/lib/python2.7/distutils/__init__.pyc | Bin 0 -> 3701 bytes .../lib/python2.7/distutils/distutils.cfg | 6 + mailman3/venv/lib/python2.7/encodings | 1 + mailman3/venv/lib/python2.7/fnmatch.py | 1 + mailman3/venv/lib/python2.7/fnmatch.pyc | Bin 0 -> 3686 bytes mailman3/venv/lib/python2.7/genericpath.py | 1 + mailman3/venv/lib/python2.7/genericpath.pyc | Bin 0 -> 3649 bytes mailman3/venv/lib/python2.7/genericpath.pyo | Bin 0 -> 3649 bytes mailman3/venv/lib/python2.7/lib-dynload | 1 + mailman3/venv/lib/python2.7/linecache.py | 1 + mailman3/venv/lib/python2.7/linecache.pyc | Bin 0 -> 3344 bytes mailman3/venv/lib/python2.7/linecache.pyo | Bin 0 -> 3344 bytes mailman3/venv/lib/python2.7/locale.py | 1 + mailman3/venv/lib/python2.7/locale.pyc | Bin 0 -> 55454 bytes .../lib/python2.7/no-global-site-packages.txt | 0 mailman3/venv/lib/python2.7/ntpath.py | 1 + mailman3/venv/lib/python2.7/orig-prefix.txt | 1 + mailman3/venv/lib/python2.7/os.py | 1 + mailman3/venv/lib/python2.7/os.pyc | Bin 0 -> 26335 bytes mailman3/venv/lib/python2.7/os.pyo | Bin 0 -> 26335 bytes mailman3/venv/lib/python2.7/posixpath.py | 1 + mailman3/venv/lib/python2.7/posixpath.pyc | Bin 0 -> 11696 bytes mailman3/venv/lib/python2.7/posixpath.pyo | Bin 0 -> 11696 bytes mailman3/venv/lib/python2.7/re.py | 1 + mailman3/venv/lib/python2.7/re.pyc | Bin 0 -> 13665 bytes .../python2.7/site-packages/easy_install.py | 5 + .../python2.7/site-packages/easy_install.pyc | Bin 0 -> 315 bytes .../pip-8.1.2.dist-info/DESCRIPTION.rst | 36 + .../pip-8.1.2.dist-info/INSTALLER | 1 + .../pip-8.1.2.dist-info/METADATA | 65 + .../site-packages/pip-8.1.2.dist-info/RECORD | 483 + .../site-packages/pip-8.1.2.dist-info/WHEEL | 6 + .../pip-8.1.2.dist-info/entry_points.txt | 5 + .../pip-8.1.2.dist-info/metadata.json | 1 + .../pip-8.1.2.dist-info/top_level.txt | 1 + .../python2.7/site-packages/pip/__init__.py | 319 + .../python2.7/site-packages/pip/__init__.pyc | Bin 0 -> 9086 bytes .../python2.7/site-packages/pip/__main__.py | 19 + .../python2.7/site-packages/pip/__main__.pyc | Bin 0 -> 477 bytes .../site-packages/pip/_vendor/__init__.py | 106 + .../site-packages/pip/_vendor/__init__.pyc | Bin 0 -> 3171 bytes .../pip/_vendor/cachecontrol/__init__.py | 11 + .../pip/_vendor/cachecontrol/__init__.pyc | Bin 0 -> 576 bytes .../pip/_vendor/cachecontrol/_cmd.py | 60 + .../pip/_vendor/cachecontrol/_cmd.pyc | Bin 0 -> 2024 bytes .../pip/_vendor/cachecontrol/adapter.py | 117 + .../pip/_vendor/cachecontrol/adapter.pyc | Bin 0 -> 3071 bytes .../pip/_vendor/cachecontrol/cache.py | 39 + .../pip/_vendor/cachecontrol/cache.pyc | Bin 0 -> 2324 bytes .../_vendor/cachecontrol/caches/__init__.py | 18 + .../_vendor/cachecontrol/caches/__init__.pyc | Bin 0 -> 607 bytes .../_vendor/cachecontrol/caches/file_cache.py | 116 + .../cachecontrol/caches/file_cache.pyc | Bin 0 -> 3769 bytes .../cachecontrol/caches/redis_cache.py | 41 + .../cachecontrol/caches/redis_cache.pyc | Bin 0 -> 2330 bytes .../pip/_vendor/cachecontrol/compat.py | 20 + .../pip/_vendor/cachecontrol/compat.pyc | Bin 0 -> 647 bytes .../pip/_vendor/cachecontrol/controller.py | 353 + .../pip/_vendor/cachecontrol/controller.pyc | Bin 0 -> 8978 bytes .../pip/_vendor/cachecontrol/filewrapper.py | 63 + .../pip/_vendor/cachecontrol/filewrapper.pyc | Bin 0 -> 2106 bytes .../pip/_vendor/cachecontrol/heuristics.py | 138 + .../pip/_vendor/cachecontrol/heuristics.pyc | Bin 0 -> 5825 bytes .../pip/_vendor/cachecontrol/serialize.py | 190 + .../pip/_vendor/cachecontrol/serialize.pyc | Bin 0 -> 5833 bytes .../pip/_vendor/cachecontrol/wrapper.py | 21 + .../pip/_vendor/cachecontrol/wrapper.pyc | Bin 0 -> 682 bytes .../pip/_vendor/colorama/__init__.py | 7 + .../pip/_vendor/colorama/__init__.pyc | Bin 0 -> 476 bytes .../pip/_vendor/colorama/ansi.py | 102 + .../pip/_vendor/colorama/ansi.pyc | Bin 0 -> 4320 bytes .../pip/_vendor/colorama/ansitowin32.py | 236 + .../pip/_vendor/colorama/ansitowin32.pyc | Bin 0 -> 9206 bytes .../pip/_vendor/colorama/initialise.py | 82 + .../pip/_vendor/colorama/initialise.pyc | Bin 0 -> 2305 bytes .../pip/_vendor/colorama/win32.py | 154 + .../pip/_vendor/colorama/win32.pyc | Bin 0 -> 4774 bytes .../pip/_vendor/colorama/winterm.py | 162 + .../pip/_vendor/colorama/winterm.pyc | Bin 0 -> 5930 bytes .../pip/_vendor/distlib/__init__.py | 23 + .../pip/_vendor/distlib/__init__.pyc | Bin 0 -> 1299 bytes .../pip/_vendor/distlib/_backport/__init__.py | 6 + .../_vendor/distlib/_backport/__init__.pyc | Bin 0 -> 444 bytes .../pip/_vendor/distlib/_backport/misc.py | 41 + .../pip/_vendor/distlib/_backport/misc.pyc | Bin 0 -> 1400 bytes .../pip/_vendor/distlib/_backport/shutil.py | 761 ++ .../pip/_vendor/distlib/_backport/shutil.pyc | Bin 0 -> 26216 bytes .../_vendor/distlib/_backport/sysconfig.cfg | 84 + .../_vendor/distlib/_backport/sysconfig.py | 788 ++ .../_vendor/distlib/_backport/sysconfig.pyc | Bin 0 -> 20844 bytes .../pip/_vendor/distlib/_backport/tarfile.py | 2607 +++++ .../pip/_vendor/distlib/_backport/tarfile.pyc | Bin 0 -> 78795 bytes .../pip/_vendor/distlib/compat.py | 1102 +++ .../pip/_vendor/distlib/compat.pyc | Bin 0 -> 38948 bytes .../pip/_vendor/distlib/database.py | 1312 +++ .../pip/_vendor/distlib/database.pyc | Bin 0 -> 48796 bytes .../pip/_vendor/distlib/index.py | 513 + .../pip/_vendor/distlib/index.pyc | Bin 0 -> 19931 bytes .../pip/_vendor/distlib/locators.py | 1264 +++ .../pip/_vendor/distlib/locators.pyc | Bin 0 -> 44763 bytes .../pip/_vendor/distlib/manifest.py | 367 + .../pip/_vendor/distlib/manifest.pyc | Bin 0 -> 11476 bytes .../pip/_vendor/distlib/markers.py | 190 + .../pip/_vendor/distlib/markers.pyc | Bin 0 -> 8007 bytes .../pip/_vendor/distlib/metadata.py | 1066 ++ .../pip/_vendor/distlib/metadata.pyc | Bin 0 -> 34663 bytes .../pip/_vendor/distlib/resources.py | 350 + .../pip/_vendor/distlib/resources.pyc | Bin 0 -> 13596 bytes .../pip/_vendor/distlib/scripts.py | 384 + .../pip/_vendor/distlib/scripts.pyc | Bin 0 -> 12337 bytes .../site-packages/pip/_vendor/distlib/t32.exe | Bin 0 -> 89088 bytes .../site-packages/pip/_vendor/distlib/t64.exe | Bin 0 -> 97792 bytes .../site-packages/pip/_vendor/distlib/util.py | 1597 +++ .../pip/_vendor/distlib/util.pyc | Bin 0 -> 55476 bytes .../pip/_vendor/distlib/version.py | 742 ++ .../pip/_vendor/distlib/version.pyc | Bin 0 -> 25886 bytes .../site-packages/pip/_vendor/distlib/w32.exe | Bin 0 -> 85504 bytes .../site-packages/pip/_vendor/distlib/w64.exe | Bin 0 -> 94208 bytes .../pip/_vendor/distlib/wheel.py | 978 ++ .../pip/_vendor/distlib/wheel.pyc | Bin 0 -> 30884 bytes .../pip/_vendor/html5lib/__init__.py | 25 + .../pip/_vendor/html5lib/__init__.pyc | Bin 0 -> 1090 bytes .../pip/_vendor/html5lib/constants.py | 3102 ++++++ .../pip/_vendor/html5lib/constants.pyc | Bin 0 -> 85321 bytes .../pip/_vendor/html5lib/filters/__init__.py | 0 .../pip/_vendor/html5lib/filters/__init__.pyc | Bin 0 -> 153 bytes .../pip/_vendor/html5lib/filters/_base.py | 12 + .../pip/_vendor/html5lib/filters/_base.pyc | Bin 0 -> 1076 bytes .../filters/alphabeticalattributes.py | 20 + .../filters/alphabeticalattributes.pyc | Bin 0 -> 1367 bytes .../html5lib/filters/inject_meta_charset.py | 65 + .../html5lib/filters/inject_meta_charset.pyc | Bin 0 -> 2226 bytes .../pip/_vendor/html5lib/filters/lint.py | 90 + .../pip/_vendor/html5lib/filters/lint.pyc | Bin 0 -> 3519 bytes .../_vendor/html5lib/filters/optionaltags.py | 205 + .../_vendor/html5lib/filters/optionaltags.pyc | Bin 0 -> 4346 bytes .../pip/_vendor/html5lib/filters/sanitizer.py | 12 + .../_vendor/html5lib/filters/sanitizer.pyc | Bin 0 -> 890 bytes .../_vendor/html5lib/filters/whitespace.py | 38 + .../_vendor/html5lib/filters/whitespace.pyc | Bin 0 -> 1636 bytes .../pip/_vendor/html5lib/html5parser.py | 2724 +++++ .../pip/_vendor/html5lib/html5parser.pyc | Bin 0 -> 119689 bytes .../pip/_vendor/html5lib/ihatexml.py | 285 + .../pip/_vendor/html5lib/ihatexml.pyc | Bin 0 -> 15303 bytes .../pip/_vendor/html5lib/inputstream.py | 903 ++ .../pip/_vendor/html5lib/inputstream.pyc | Bin 0 -> 27365 bytes .../pip/_vendor/html5lib/sanitizer.py | 300 + .../pip/_vendor/html5lib/sanitizer.pyc | Bin 0 -> 15295 bytes .../_vendor/html5lib/serializer/__init__.py | 16 + .../_vendor/html5lib/serializer/__init__.pyc | Bin 0 -> 852 bytes .../html5lib/serializer/htmlserializer.py | 317 + .../html5lib/serializer/htmlserializer.pyc | Bin 0 -> 11111 bytes .../pip/_vendor/html5lib/tokenizer.py | 1731 ++++ .../pip/_vendor/html5lib/tokenizer.pyc | Bin 0 -> 53453 bytes .../_vendor/html5lib/treeadapters/__init__.py | 0 .../html5lib/treeadapters/__init__.pyc | Bin 0 -> 158 bytes .../pip/_vendor/html5lib/treeadapters/sax.py | 44 + .../pip/_vendor/html5lib/treeadapters/sax.pyc | Bin 0 -> 1747 bytes .../_vendor/html5lib/treebuilders/__init__.py | 76 + .../html5lib/treebuilders/__init__.pyc | Bin 0 -> 3367 bytes .../_vendor/html5lib/treebuilders/_base.py | 377 + .../_vendor/html5lib/treebuilders/_base.pyc | Bin 0 -> 13953 bytes .../pip/_vendor/html5lib/treebuilders/dom.py | 227 + .../pip/_vendor/html5lib/treebuilders/dom.pyc | Bin 0 -> 11284 bytes .../_vendor/html5lib/treebuilders/etree.py | 337 + .../_vendor/html5lib/treebuilders/etree.pyc | Bin 0 -> 14471 bytes .../html5lib/treebuilders/etree_lxml.py | 369 + .../html5lib/treebuilders/etree_lxml.pyc | Bin 0 -> 15004 bytes .../_vendor/html5lib/treewalkers/__init__.py | 147 + .../_vendor/html5lib/treewalkers/__init__.pyc | Bin 0 -> 4934 bytes .../pip/_vendor/html5lib/treewalkers/_base.py | 200 + .../_vendor/html5lib/treewalkers/_base.pyc | Bin 0 -> 8600 bytes .../pip/_vendor/html5lib/treewalkers/dom.py | 43 + .../pip/_vendor/html5lib/treewalkers/dom.pyc | Bin 0 -> 2194 bytes .../pip/_vendor/html5lib/treewalkers/etree.py | 136 + .../_vendor/html5lib/treewalkers/etree.pyc | Bin 0 -> 4469 bytes .../html5lib/treewalkers/genshistream.py | 69 + .../html5lib/treewalkers/genshistream.pyc | Bin 0 -> 2421 bytes .../_vendor/html5lib/treewalkers/lxmletree.py | 201 + .../html5lib/treewalkers/lxmletree.pyc | Bin 0 -> 8859 bytes .../_vendor/html5lib/treewalkers/pulldom.py | 63 + .../_vendor/html5lib/treewalkers/pulldom.pyc | Bin 0 -> 2340 bytes .../pip/_vendor/html5lib/trie/__init__.py | 12 + .../pip/_vendor/html5lib/trie/__init__.pyc | Bin 0 -> 434 bytes .../pip/_vendor/html5lib/trie/_base.py | 37 + .../pip/_vendor/html5lib/trie/_base.pyc | Bin 0 -> 1703 bytes .../pip/_vendor/html5lib/trie/datrie.py | 44 + .../pip/_vendor/html5lib/trie/datrie.pyc | Bin 0 -> 2691 bytes .../pip/_vendor/html5lib/trie/py.py | 67 + .../pip/_vendor/html5lib/trie/py.pyc | Bin 0 -> 2939 bytes .../pip/_vendor/html5lib/utils.py | 103 + .../pip/_vendor/html5lib/utils.pyc | Bin 0 -> 3540 bytes .../site-packages/pip/_vendor/ipaddress.py | 2417 +++++ .../site-packages/pip/_vendor/ipaddress.pyc | Bin 0 -> 76350 bytes .../pip/_vendor/lockfile/__init__.py | 347 + .../pip/_vendor/lockfile/__init__.pyc | Bin 0 -> 11909 bytes .../pip/_vendor/lockfile/linklockfile.py | 73 + .../pip/_vendor/lockfile/linklockfile.pyc | Bin 0 -> 2860 bytes .../pip/_vendor/lockfile/mkdirlockfile.py | 84 + .../pip/_vendor/lockfile/mkdirlockfile.pyc | Bin 0 -> 3370 bytes .../pip/_vendor/lockfile/pidlockfile.py | 190 + .../pip/_vendor/lockfile/pidlockfile.pyc | Bin 0 -> 5825 bytes .../pip/_vendor/lockfile/sqlitelockfile.py | 156 + .../pip/_vendor/lockfile/sqlitelockfile.pyc | Bin 0 -> 4640 bytes .../pip/_vendor/lockfile/symlinklockfile.py | 70 + .../pip/_vendor/lockfile/symlinklockfile.pyc | Bin 0 -> 2769 bytes .../pip/_vendor/packaging/__about__.py | 21 + .../pip/_vendor/packaging/__about__.pyc | Bin 0 -> 775 bytes .../pip/_vendor/packaging/__init__.py | 14 + .../pip/_vendor/packaging/__init__.pyc | Bin 0 -> 597 bytes .../pip/_vendor/packaging/_compat.py | 30 + .../pip/_vendor/packaging/_compat.pyc | Bin 0 -> 1188 bytes .../pip/_vendor/packaging/_structures.py | 68 + .../pip/_vendor/packaging/_structures.pyc | Bin 0 -> 3879 bytes .../pip/_vendor/packaging/markers.py | 289 + .../pip/_vendor/packaging/markers.pyc | Bin 0 -> 10390 bytes .../pip/_vendor/packaging/requirements.py | 129 + .../pip/_vendor/packaging/requirements.pyc | Bin 0 -> 5026 bytes .../pip/_vendor/packaging/specifiers.py | 774 ++ .../pip/_vendor/packaging/specifiers.pyc | Bin 0 -> 24333 bytes .../pip/_vendor/packaging/utils.py | 14 + .../pip/_vendor/packaging/utils.pyc | Bin 0 -> 566 bytes .../pip/_vendor/packaging/version.py | 393 + .../pip/_vendor/packaging/version.pyc | Bin 0 -> 13769 bytes .../pip/_vendor/pkg_resources/__init__.py | 2956 ++++++ .../pip/_vendor/pkg_resources/__init__.pyc | Bin 0 -> 114840 bytes .../pip/_vendor/progress/__init__.py | 123 + .../pip/_vendor/progress/__init__.pyc | Bin 0 -> 5146 bytes .../site-packages/pip/_vendor/progress/bar.py | 83 + .../pip/_vendor/progress/bar.pyc | Bin 0 -> 3106 bytes .../pip/_vendor/progress/counter.py | 47 + .../pip/_vendor/progress/counter.pyc | Bin 0 -> 2079 bytes .../pip/_vendor/progress/helpers.py | 91 + .../pip/_vendor/progress/helpers.pyc | Bin 0 -> 3778 bytes .../pip/_vendor/progress/spinner.py | 40 + .../pip/_vendor/progress/spinner.pyc | Bin 0 -> 1556 bytes .../site-packages/pip/_vendor/pyparsing.py | 3837 +++++++ .../site-packages/pip/_vendor/pyparsing.pyc | Bin 0 -> 163001 bytes .../site-packages/pip/_vendor/re-vendor.py | 34 + .../site-packages/pip/_vendor/re-vendor.pyc | Bin 0 -> 1420 bytes .../pip/_vendor/requests/__init__.py | 89 + .../pip/_vendor/requests/__init__.pyc | Bin 0 -> 2844 bytes .../pip/_vendor/requests/adapters.py | 483 + .../pip/_vendor/requests/adapters.pyc | Bin 0 -> 17036 bytes .../site-packages/pip/_vendor/requests/api.py | 149 + .../pip/_vendor/requests/api.pyc | Bin 0 -> 6561 bytes .../pip/_vendor/requests/auth.py | 242 + .../pip/_vendor/requests/auth.pyc | Bin 0 -> 8893 bytes .../pip/_vendor/requests/cacert.pem | 5616 +++++++++++ .../pip/_vendor/requests/certs.py | 25 + .../pip/_vendor/requests/certs.pyc | Bin 0 -> 881 bytes .../pip/_vendor/requests/compat.py | 62 + .../pip/_vendor/requests/compat.pyc | Bin 0 -> 1690 bytes .../pip/_vendor/requests/cookies.py | 493 + .../pip/_vendor/requests/cookies.pyc | Bin 0 -> 21285 bytes .../pip/_vendor/requests/exceptions.py | 114 + .../pip/_vendor/requests/exceptions.pyc | Bin 0 -> 5953 bytes .../pip/_vendor/requests/hooks.py | 34 + .../pip/_vendor/requests/hooks.pyc | Bin 0 -> 1208 bytes .../pip/_vendor/requests/models.py | 855 ++ .../pip/_vendor/requests/models.pyc | Bin 0 -> 26024 bytes .../pip/_vendor/requests/packages/__init__.py | 36 + .../_vendor/requests/packages/__init__.pyc | Bin 0 -> 1632 bytes .../requests/packages/chardet/__init__.py | 32 + .../requests/packages/chardet/__init__.pyc | Bin 0 -> 843 bytes .../requests/packages/chardet/big5freq.py | 925 ++ .../requests/packages/chardet/big5freq.pyc | Bin 0 -> 113803 bytes .../requests/packages/chardet/big5prober.py | 42 + .../requests/packages/chardet/big5prober.pyc | Bin 0 -> 1184 bytes .../requests/packages/chardet/chardetect.py | 80 + .../requests/packages/chardet/chardetect.pyc | Bin 0 -> 3040 bytes .../packages/chardet/chardistribution.py | 231 + .../packages/chardet/chardistribution.pyc | Bin 0 -> 8123 bytes .../packages/chardet/charsetgroupprober.py | 106 + .../packages/chardet/charsetgroupprober.pyc | Bin 0 -> 2701 bytes .../packages/chardet/charsetprober.py | 62 + .../packages/chardet/charsetprober.pyc | Bin 0 -> 2380 bytes .../packages/chardet/codingstatemachine.py | 61 + .../packages/chardet/codingstatemachine.pyc | Bin 0 -> 1946 bytes .../requests/packages/chardet/compat.py | 34 + .../requests/packages/chardet/compat.pyc | Bin 0 -> 605 bytes .../requests/packages/chardet/constants.py | 39 + .../requests/packages/chardet/constants.pyc | Bin 0 -> 355 bytes .../requests/packages/chardet/cp949prober.py | 44 + .../requests/packages/chardet/cp949prober.pyc | Bin 0 -> 1192 bytes .../requests/packages/chardet/escprober.py | 86 + .../requests/packages/chardet/escprober.pyc | Bin 0 -> 2530 bytes .../requests/packages/chardet/escsm.py | 242 + .../requests/packages/chardet/escsm.pyc | Bin 0 -> 7327 bytes .../requests/packages/chardet/eucjpprober.py | 90 + .../requests/packages/chardet/eucjpprober.pyc | Bin 0 -> 2939 bytes .../requests/packages/chardet/euckrfreq.py | 596 ++ .../requests/packages/chardet/euckrfreq.pyc | Bin 0 -> 88794 bytes .../requests/packages/chardet/euckrprober.py | 42 + .../requests/packages/chardet/euckrprober.pyc | Bin 0 -> 1193 bytes .../requests/packages/chardet/euctwfreq.py | 428 + .../requests/packages/chardet/euctwfreq.pyc | Bin 0 -> 61192 bytes .../requests/packages/chardet/euctwprober.py | 41 + .../requests/packages/chardet/euctwprober.pyc | Bin 0 -> 1193 bytes .../requests/packages/chardet/gb2312freq.py | 472 + .../requests/packages/chardet/gb2312freq.pyc | Bin 0 -> 68810 bytes .../requests/packages/chardet/gb2312prober.py | 41 + .../packages/chardet/gb2312prober.pyc | Bin 0 -> 1200 bytes .../requests/packages/chardet/hebrewprober.py | 283 + .../packages/chardet/hebrewprober.pyc | Bin 0 -> 3634 bytes .../requests/packages/chardet/jisfreq.py | 569 ++ .../requests/packages/chardet/jisfreq.pyc | Bin 0 -> 84026 bytes .../requests/packages/chardet/jpcntx.py | 227 + .../requests/packages/chardet/jpcntx.pyc | Bin 0 -> 25377 bytes .../packages/chardet/langbulgarianmodel.py | 229 + .../packages/chardet/langbulgarianmodel.pyc | Bin 0 -> 24908 bytes .../packages/chardet/langcyrillicmodel.py | 329 + .../packages/chardet/langcyrillicmodel.pyc | Bin 0 -> 30590 bytes .../packages/chardet/langgreekmodel.py | 225 + .../packages/chardet/langgreekmodel.pyc | Bin 0 -> 24595 bytes .../packages/chardet/langhebrewmodel.py | 201 + .../packages/chardet/langhebrewmodel.pyc | Bin 0 -> 23415 bytes .../packages/chardet/langhungarianmodel.py | 225 + .../packages/chardet/langhungarianmodel.pyc | Bin 0 -> 24892 bytes .../packages/chardet/langthaimodel.py | 200 + .../packages/chardet/langthaimodel.pyc | Bin 0 -> 23401 bytes .../requests/packages/chardet/latin1prober.py | 139 + .../packages/chardet/latin1prober.pyc | Bin 0 -> 3611 bytes .../packages/chardet/mbcharsetprober.py | 86 + .../packages/chardet/mbcharsetprober.pyc | Bin 0 -> 2573 bytes .../packages/chardet/mbcsgroupprober.py | 54 + .../packages/chardet/mbcsgroupprober.pyc | Bin 0 -> 1315 bytes .../requests/packages/chardet/mbcssm.py | 572 ++ .../requests/packages/chardet/mbcssm.pyc | Bin 0 -> 17684 bytes .../packages/chardet/sbcharsetprober.py | 120 + .../packages/chardet/sbcharsetprober.pyc | Bin 0 -> 3458 bytes .../packages/chardet/sbcsgroupprober.py | 69 + .../packages/chardet/sbcsgroupprober.pyc | Bin 0 -> 2000 bytes .../requests/packages/chardet/sjisprober.py | 91 + .../requests/packages/chardet/sjisprober.pyc | Bin 0 -> 2966 bytes .../packages/chardet/universaldetector.py | 170 + .../packages/chardet/universaldetector.pyc | Bin 0 -> 4268 bytes .../requests/packages/chardet/utf8prober.py | 76 + .../requests/packages/chardet/utf8prober.pyc | Bin 0 -> 2356 bytes .../requests/packages/urllib3/__init__.py | 96 + .../requests/packages/urllib3/__init__.pyc | Bin 0 -> 3349 bytes .../requests/packages/urllib3/_collections.py | 324 + .../packages/urllib3/_collections.pyc | Bin 0 -> 13663 bytes .../requests/packages/urllib3/connection.py | 330 + .../requests/packages/urllib3/connection.pyc | Bin 0 -> 10551 bytes .../packages/urllib3/connectionpool.py | 849 ++ .../packages/urllib3/connectionpool.pyc | Bin 0 -> 26159 bytes .../packages/urllib3/contrib/__init__.py | 0 .../packages/urllib3/contrib/__init__.pyc | Bin 0 -> 170 bytes .../packages/urllib3/contrib/appengine.py | 231 + .../packages/urllib3/contrib/appengine.pyc | Bin 0 -> 8420 bytes .../packages/urllib3/contrib/ntlmpool.py | 115 + .../packages/urllib3/contrib/ntlmpool.pyc | Bin 0 -> 4055 bytes .../packages/urllib3/contrib/pyopenssl.py | 358 + .../packages/urllib3/contrib/pyopenssl.pyc | Bin 0 -> 12762 bytes .../packages/urllib3/contrib/socks.py | 172 + .../packages/urllib3/contrib/socks.pyc | Bin 0 -> 5469 bytes .../requests/packages/urllib3/exceptions.py | 209 + .../requests/packages/urllib3/exceptions.pyc | Bin 0 -> 11904 bytes .../requests/packages/urllib3/fields.py | 178 + .../requests/packages/urllib3/fields.pyc | Bin 0 -> 6938 bytes .../requests/packages/urllib3/filepost.py | 94 + .../requests/packages/urllib3/filepost.pyc | Bin 0 -> 3403 bytes .../packages/urllib3/packages/__init__.py | 5 + .../packages/urllib3/packages/__init__.pyc | Bin 0 -> 351 bytes .../packages/urllib3/packages/ordered_dict.py | 259 + .../urllib3/packages/ordered_dict.pyc | Bin 0 -> 10570 bytes .../requests/packages/urllib3/packages/six.py | 385 + .../packages/urllib3/packages/six.pyc | Bin 0 -> 14414 bytes .../packages/ssl_match_hostname/__init__.py | 13 + .../packages/ssl_match_hostname/__init__.pyc | Bin 0 -> 533 bytes .../ssl_match_hostname/_implementation.py | 105 + .../ssl_match_hostname/_implementation.pyc | Bin 0 -> 3003 bytes .../requests/packages/urllib3/poolmanager.py | 284 + .../requests/packages/urllib3/poolmanager.pyc | Bin 0 -> 10370 bytes .../requests/packages/urllib3/request.py | 151 + .../requests/packages/urllib3/request.pyc | Bin 0 -> 6229 bytes .../requests/packages/urllib3/response.py | 526 + .../requests/packages/urllib3/response.pyc | Bin 0 -> 17101 bytes .../packages/urllib3/util/__init__.py | 46 + .../packages/urllib3/util/__init__.pyc | Bin 0 -> 1331 bytes .../packages/urllib3/util/connection.py | 101 + .../packages/urllib3/util/connection.pyc | Bin 0 -> 3171 bytes .../requests/packages/urllib3/util/request.py | 72 + .../packages/urllib3/util/request.pyc | Bin 0 -> 2249 bytes .../packages/urllib3/util/response.py | 74 + .../packages/urllib3/util/response.pyc | Bin 0 -> 2286 bytes .../requests/packages/urllib3/util/retry.py | 294 + .../requests/packages/urllib3/util/retry.pyc | Bin 0 -> 10396 bytes .../requests/packages/urllib3/util/ssl_.py | 320 + .../requests/packages/urllib3/util/ssl_.pyc | Bin 0 -> 10460 bytes .../requests/packages/urllib3/util/timeout.py | 242 + .../packages/urllib3/util/timeout.pyc | Bin 0 -> 9884 bytes .../requests/packages/urllib3/util/url.py | 217 + .../requests/packages/urllib3/util/url.pyc | Bin 0 -> 6198 bytes .../pip/_vendor/requests/sessions.py | 689 ++ .../pip/_vendor/requests/sessions.pyc | Bin 0 -> 20308 bytes .../pip/_vendor/requests/status_codes.py | 91 + .../pip/_vendor/requests/status_codes.pyc | Bin 0 -> 6208 bytes .../pip/_vendor/requests/structures.py | 106 + .../pip/_vendor/requests/structures.pyc | Bin 0 -> 5293 bytes .../pip/_vendor/requests/utils.py | 728 ++ .../pip/_vendor/requests/utils.pyc | Bin 0 -> 21387 bytes .../site-packages/pip/_vendor/retrying.py | 267 + .../site-packages/pip/_vendor/retrying.pyc | Bin 0 -> 9988 bytes .../site-packages/pip/_vendor/six.py | 868 ++ .../site-packages/pip/_vendor/six.pyc | Bin 0 -> 30493 bytes .../site-packages/pip/basecommand.py | 331 + .../site-packages/pip/basecommand.pyc | Bin 0 -> 8738 bytes .../python2.7/site-packages/pip/baseparser.py | 292 + .../site-packages/pip/baseparser.pyc | Bin 0 -> 10597 bytes .../python2.7/site-packages/pip/cmdoptions.py | 618 ++ .../site-packages/pip/cmdoptions.pyc | Bin 0 -> 15024 bytes .../site-packages/pip/commands/__init__.py | 83 + .../site-packages/pip/commands/__init__.pyc | Bin 0 -> 2516 bytes .../site-packages/pip/commands/completion.py | 67 + .../site-packages/pip/commands/completion.pyc | Bin 0 -> 2457 bytes .../site-packages/pip/commands/download.py | 136 + .../site-packages/pip/commands/download.pyc | Bin 0 -> 4229 bytes .../site-packages/pip/commands/freeze.py | 86 + .../site-packages/pip/commands/freeze.pyc | Bin 0 -> 3160 bytes .../site-packages/pip/commands/hash.py | 57 + .../site-packages/pip/commands/hash.pyc | Bin 0 -> 2368 bytes .../site-packages/pip/commands/help.py | 35 + .../site-packages/pip/commands/help.pyc | Bin 0 -> 1331 bytes .../site-packages/pip/commands/install.py | 386 + .../site-packages/pip/commands/install.pyc | Bin 0 -> 10004 bytes .../site-packages/pip/commands/list.py | 209 + .../site-packages/pip/commands/list.pyc | Bin 0 -> 6914 bytes .../site-packages/pip/commands/search.py | 145 + .../site-packages/pip/commands/search.pyc | Bin 0 -> 5124 bytes .../site-packages/pip/commands/show.py | 154 + .../site-packages/pip/commands/show.pyc | Bin 0 -> 5526 bytes .../site-packages/pip/commands/uninstall.py | 76 + .../site-packages/pip/commands/uninstall.pyc | Bin 0 -> 3011 bytes .../site-packages/pip/commands/wheel.py | 204 + .../site-packages/pip/commands/wheel.pyc | Bin 0 -> 6235 bytes .../site-packages/pip/compat/__init__.py | 164 + .../site-packages/pip/compat/__init__.pyc | Bin 0 -> 5150 bytes .../site-packages/pip/compat/dictconfig.py | 565 ++ .../site-packages/pip/compat/dictconfig.pyc | Bin 0 -> 16440 bytes .../site-packages/pip/compat/ordereddict.py | 129 + .../site-packages/pip/compat/ordereddict.pyc | Bin 0 -> 4436 bytes .../python2.7/site-packages/pip/download.py | 895 ++ .../python2.7/site-packages/pip/download.pyc | Bin 0 -> 24614 bytes .../python2.7/site-packages/pip/exceptions.py | 239 + .../site-packages/pip/exceptions.pyc | Bin 0 -> 11902 bytes .../lib/python2.7/site-packages/pip/index.py | 1048 ++ .../lib/python2.7/site-packages/pip/index.pyc | Bin 0 -> 32365 bytes .../python2.7/site-packages/pip/locations.py | 182 + .../python2.7/site-packages/pip/locations.pyc | Bin 0 -> 4734 bytes .../site-packages/pip/models/__init__.py | 4 + .../site-packages/pip/models/__init__.pyc | Bin 0 -> 253 bytes .../site-packages/pip/models/index.py | 16 + .../site-packages/pip/models/index.pyc | Bin 0 -> 1041 bytes .../site-packages/pip/operations/__init__.py | 0 .../site-packages/pip/operations/__init__.pyc | Bin 0 -> 139 bytes .../site-packages/pip/operations/freeze.py | 114 + .../site-packages/pip/operations/freeze.pyc | Bin 0 -> 3206 bytes .../python2.7/site-packages/pip/pep425tags.py | 349 + .../site-packages/pip/pep425tags.pyc | Bin 0 -> 9727 bytes .../site-packages/pip/req/__init__.py | 10 + .../site-packages/pip/req/__init__.pyc | Bin 0 -> 475 bytes .../site-packages/pip/req/req_file.py | 342 + .../site-packages/pip/req/req_file.pyc | Bin 0 -> 10057 bytes .../site-packages/pip/req/req_install.py | 1183 +++ .../site-packages/pip/req/req_install.pyc | Bin 0 -> 35134 bytes .../site-packages/pip/req/req_set.py | 756 ++ .../site-packages/pip/req/req_set.pyc | Bin 0 -> 22557 bytes .../site-packages/pip/req/req_uninstall.py | 195 + .../site-packages/pip/req/req_uninstall.pyc | Bin 0 -> 7557 bytes .../site-packages/pip/status_codes.py | 8 + .../site-packages/pip/status_codes.pyc | Bin 0 -> 386 bytes .../site-packages/pip/utils/__init__.py | 860 ++ .../site-packages/pip/utils/__init__.pyc | Bin 0 -> 27705 bytes .../site-packages/pip/utils/appdirs.py | 224 + .../site-packages/pip/utils/appdirs.pyc | Bin 0 -> 7667 bytes .../site-packages/pip/utils/build.py | 42 + .../site-packages/pip/utils/build.pyc | Bin 0 -> 1670 bytes .../site-packages/pip/utils/deprecation.py | 76 + .../site-packages/pip/utils/deprecation.pyc | Bin 0 -> 2262 bytes .../site-packages/pip/utils/encoding.py | 31 + .../site-packages/pip/utils/encoding.pyc | Bin 0 -> 1268 bytes .../site-packages/pip/utils/filesystem.py | 28 + .../site-packages/pip/utils/filesystem.pyc | Bin 0 -> 766 bytes .../site-packages/pip/utils/hashes.py | 92 + .../site-packages/pip/utils/hashes.pyc | Bin 0 -> 3877 bytes .../site-packages/pip/utils/logging.py | 130 + .../site-packages/pip/utils/logging.pyc | Bin 0 -> 4730 bytes .../site-packages/pip/utils/outdated.py | 162 + .../site-packages/pip/utils/outdated.pyc | Bin 0 -> 4999 bytes .../pip/utils/setuptools_build.py | 6 + .../pip/utils/setuptools_build.pyc | Bin 0 -> 316 bytes .../python2.7/site-packages/pip/utils/ui.py | 344 + .../python2.7/site-packages/pip/utils/ui.pyc | Bin 0 -> 11431 bytes .../site-packages/pip/vcs/__init__.py | 363 + .../site-packages/pip/vcs/__init__.pyc | Bin 0 -> 12964 bytes .../python2.7/site-packages/pip/vcs/bazaar.py | 116 + .../site-packages/pip/vcs/bazaar.pyc | Bin 0 -> 4685 bytes .../python2.7/site-packages/pip/vcs/git.py | 277 + .../python2.7/site-packages/pip/vcs/git.pyc | Bin 0 -> 10236 bytes .../site-packages/pip/vcs/mercurial.py | 103 + .../site-packages/pip/vcs/mercurial.pyc | Bin 0 -> 4531 bytes .../site-packages/pip/vcs/subversion.py | 249 + .../site-packages/pip/vcs/subversion.pyc | Bin 0 -> 8094 bytes .../lib/python2.7/site-packages/pip/wheel.py | 857 ++ .../lib/python2.7/site-packages/pip/wheel.pyc | Bin 0 -> 25170 bytes .../site-packages/pkg_resources/__init__.py | 2956 ++++++ .../site-packages/pkg_resources/__init__.pyc | Bin 0 -> 113459 bytes .../pkg_resources/_vendor/__init__.py | 0 .../pkg_resources/_vendor/__init__.pyc | Bin 0 -> 153 bytes .../_vendor/packaging/__about__.py | 21 + .../_vendor/packaging/__about__.pyc | Bin 0 -> 792 bytes .../_vendor/packaging/__init__.py | 14 + .../_vendor/packaging/__init__.pyc | Bin 0 -> 614 bytes .../_vendor/packaging/_compat.py | 30 + .../_vendor/packaging/_compat.pyc | Bin 0 -> 1256 bytes .../_vendor/packaging/_structures.py | 68 + .../_vendor/packaging/_structures.pyc | Bin 0 -> 4236 bytes .../_vendor/packaging/markers.py | 287 + .../_vendor/packaging/markers.pyc | Bin 0 -> 10892 bytes .../_vendor/packaging/requirements.py | 127 + .../_vendor/packaging/requirements.pyc | Bin 0 -> 5197 bytes .../_vendor/packaging/specifiers.py | 774 ++ .../_vendor/packaging/specifiers.pyc | Bin 0 -> 25540 bytes .../pkg_resources/_vendor/packaging/utils.py | 14 + .../pkg_resources/_vendor/packaging/utils.pyc | Bin 0 -> 600 bytes .../_vendor/packaging/version.py | 393 + .../_vendor/packaging/version.pyc | Bin 0 -> 14602 bytes .../pkg_resources/_vendor/pyparsing.py | 3805 +++++++ .../pkg_resources/_vendor/pyparsing.pyc | Bin 0 -> 167717 bytes .../pkg_resources/_vendor/six.py | 868 ++ .../pkg_resources/_vendor/six.pyc | Bin 0 -> 31836 bytes .../pkg_resources/extern/__init__.py | 71 + .../pkg_resources/extern/__init__.pyc | Bin 0 -> 2945 bytes .../DESCRIPTION.rst | 239 + .../setuptools-23.1.0.dist-info/INSTALLER | 1 + .../setuptools-23.1.0.dist-info/METADATA | 268 + .../setuptools-23.1.0.dist-info/RECORD | 135 + .../setuptools-23.1.0.dist-info/WHEEL | 6 + .../dependency_links.txt | 2 + .../entry_points.txt | 62 + .../setuptools-23.1.0.dist-info/metadata.json | 1 + .../setuptools-23.1.0.dist-info/top_level.txt | 3 + .../setuptools-23.1.0.dist-info/zip-safe | 1 + .../site-packages/setuptools/__init__.py | 169 + .../site-packages/setuptools/__init__.pyc | Bin 0 -> 7750 bytes .../site-packages/setuptools/archive_util.py | 170 + .../site-packages/setuptools/archive_util.pyc | Bin 0 -> 6165 bytes .../site-packages/setuptools/cli-32.exe | Bin 0 -> 65536 bytes .../site-packages/setuptools/cli-64.exe | Bin 0 -> 74752 bytes .../site-packages/setuptools/cli.exe | Bin 0 -> 65536 bytes .../setuptools/command/__init__.py | 18 + .../setuptools/command/__init__.pyc | Bin 0 -> 845 bytes .../site-packages/setuptools/command/alias.py | 80 + .../setuptools/command/alias.pyc | Bin 0 -> 3104 bytes .../setuptools/command/bdist_egg.py | 471 + .../setuptools/command/bdist_egg.pyc | Bin 0 -> 17564 bytes .../setuptools/command/bdist_rpm.py | 43 + .../setuptools/command/bdist_rpm.pyc | Bin 0 -> 1914 bytes .../setuptools/command/bdist_wininst.py | 21 + .../setuptools/command/bdist_wininst.pyc | Bin 0 -> 1209 bytes .../setuptools/command/build_ext.py | 300 + .../setuptools/command/build_ext.pyc | Bin 0 -> 11257 bytes .../setuptools/command/build_py.py | 269 + .../setuptools/command/build_py.pyc | Bin 0 -> 10667 bytes .../setuptools/command/develop.py | 196 + .../setuptools/command/develop.pyc | Bin 0 -> 7282 bytes .../setuptools/command/easy_install.py | 2313 +++++ .../setuptools/command/easy_install.pyc | Bin 0 -> 79758 bytes .../setuptools/command/egg_info.py | 495 + .../setuptools/command/egg_info.pyc | Bin 0 -> 20696 bytes .../setuptools/command/install.py | 125 + .../setuptools/command/install.pyc | Bin 0 -> 4953 bytes .../setuptools/command/install_egg_info.py | 118 + .../setuptools/command/install_egg_info.pyc | Bin 0 -> 5515 bytes .../setuptools/command/install_lib.py | 120 + .../setuptools/command/install_lib.pyc | Bin 0 -> 4870 bytes .../setuptools/command/install_scripts.py | 60 + .../setuptools/command/install_scripts.pyc | Bin 0 -> 2828 bytes .../setuptools/command/launcher manifest.xml | 15 + .../setuptools/command/register.py | 10 + .../setuptools/command/register.pyc | Bin 0 -> 710 bytes .../setuptools/command/rotate.py | 66 + .../setuptools/command/rotate.pyc | Bin 0 -> 3052 bytes .../setuptools/command/saveopts.py | 22 + .../setuptools/command/saveopts.pyc | Bin 0 -> 1129 bytes .../site-packages/setuptools/command/sdist.py | 196 + .../setuptools/command/sdist.pyc | Bin 0 -> 6801 bytes .../setuptools/command/setopt.py | 150 + .../setuptools/command/setopt.pyc | Bin 0 -> 6056 bytes .../site-packages/setuptools/command/test.py | 207 + .../site-packages/setuptools/command/test.pyc | Bin 0 -> 8069 bytes .../setuptools/command/upload.py | 38 + .../setuptools/command/upload.pyc | Bin 0 -> 1586 bytes .../setuptools/command/upload_docs.py | 201 + .../setuptools/command/upload_docs.pyc | Bin 0 -> 7618 bytes .../site-packages/setuptools/depends.py | 217 + .../site-packages/setuptools/depends.pyc | Bin 0 -> 7222 bytes .../site-packages/setuptools/dist.py | 872 ++ .../site-packages/setuptools/dist.pyc | Bin 0 -> 34865 bytes .../site-packages/setuptools/extension.py | 57 + .../site-packages/setuptools/extension.pyc | Bin 0 -> 2414 bytes .../setuptools/extern/__init__.py | 5 + .../setuptools/extern/__init__.pyc | Bin 0 -> 338 bytes .../site-packages/setuptools/gui-32.exe | Bin 0 -> 65536 bytes .../site-packages/setuptools/gui-64.exe | Bin 0 -> 75264 bytes .../site-packages/setuptools/gui.exe | Bin 0 -> 65536 bytes .../site-packages/setuptools/launch.py | 35 + .../site-packages/setuptools/launch.pyc | Bin 0 -> 1000 bytes .../site-packages/setuptools/lib2to3_ex.py | 58 + .../site-packages/setuptools/lib2to3_ex.pyc | Bin 0 -> 3004 bytes .../site-packages/setuptools/msvc9_support.py | 63 + .../setuptools/msvc9_support.pyc | Bin 0 -> 2101 bytes .../site-packages/setuptools/package_index.py | 1072 ++ .../setuptools/package_index.pyc | Bin 0 -> 39693 bytes .../site-packages/setuptools/py26compat.py | 22 + .../site-packages/setuptools/py26compat.pyc | Bin 0 -> 996 bytes .../site-packages/setuptools/py27compat.py | 15 + .../site-packages/setuptools/py27compat.pyc | Bin 0 -> 749 bytes .../site-packages/setuptools/py31compat.py | 52 + .../site-packages/setuptools/py31compat.pyc | Bin 0 -> 2389 bytes .../site-packages/setuptools/sandbox.py | 496 + .../site-packages/setuptools/sandbox.pyc | Bin 0 -> 18679 bytes .../setuptools/script (dev).tmpl | 5 + .../site-packages/setuptools/script.tmpl | 3 + .../site-packages/setuptools/site-patch.py | 76 + .../site-packages/setuptools/site-patch.pyc | Bin 0 -> 1739 bytes .../site-packages/setuptools/ssl_support.py | 243 + .../site-packages/setuptools/ssl_support.pyc | Bin 0 -> 7868 bytes .../site-packages/setuptools/unicode_utils.py | 43 + .../setuptools/unicode_utils.pyc | Bin 0 -> 1472 bytes .../site-packages/setuptools/utils.py | 11 + .../site-packages/setuptools/utils.pyc | Bin 0 -> 543 bytes .../site-packages/setuptools/version.py | 6 + .../site-packages/setuptools/version.pyc | Bin 0 -> 322 bytes .../setuptools/windows_support.py | 29 + .../setuptools/windows_support.pyc | Bin 0 -> 1274 bytes .../wheel-0.29.0.dist-info/DESCRIPTION.rst | 325 + .../wheel-0.29.0.dist-info/INSTALLER | 1 + .../wheel-0.29.0.dist-info/LICENSE.txt | 22 + .../wheel-0.29.0.dist-info/METADATA | 357 + .../wheel-0.29.0.dist-info/RECORD | 82 + .../wheel-0.29.0.dist-info/WHEEL | 6 + .../wheel-0.29.0.dist-info/entry_points.txt | 5 + .../wheel-0.29.0.dist-info/metadata.json | 1 + .../wheel-0.29.0.dist-info/top_level.txt | 1 + .../python2.7/site-packages/wheel/__init__.py | 2 + .../site-packages/wheel/__init__.pyc | Bin 0 -> 165 bytes .../python2.7/site-packages/wheel/__main__.py | 17 + .../site-packages/wheel/__main__.pyc | Bin 0 -> 705 bytes .../python2.7/site-packages/wheel/archive.py | 80 + .../python2.7/site-packages/wheel/archive.pyc | Bin 0 -> 2574 bytes .../site-packages/wheel/bdist_wheel.py | 453 + .../site-packages/wheel/bdist_wheel.pyc | Bin 0 -> 15760 bytes .../site-packages/wheel/decorator.py | 19 + .../site-packages/wheel/decorator.pyc | Bin 0 -> 1021 bytes .../site-packages/wheel/egg2wheel.py | 73 + .../site-packages/wheel/egg2wheel.pyc | Bin 0 -> 2979 bytes .../site-packages/wheel/eggnames.txt | 87 + .../python2.7/site-packages/wheel/install.py | 480 + .../python2.7/site-packages/wheel/install.pyc | Bin 0 -> 17294 bytes .../python2.7/site-packages/wheel/metadata.py | 317 + .../site-packages/wheel/metadata.pyc | Bin 0 -> 9942 bytes .../python2.7/site-packages/wheel/paths.py | 41 + .../python2.7/site-packages/wheel/paths.pyc | Bin 0 -> 1334 bytes .../site-packages/wheel/pep425tags.py | 169 + .../site-packages/wheel/pep425tags.pyc | Bin 0 -> 5590 bytes .../python2.7/site-packages/wheel/pkginfo.py | 44 + .../python2.7/site-packages/wheel/pkginfo.pyc | Bin 0 -> 1981 bytes .../wheel/signatures/__init__.py | 106 + .../wheel/signatures/__init__.pyc | Bin 0 -> 3686 bytes .../site-packages/wheel/signatures/djbec.py | 270 + .../site-packages/wheel/signatures/djbec.pyc | Bin 0 -> 11215 bytes .../wheel/signatures/ed25519py.py | 52 + .../wheel/signatures/ed25519py.pyc | Bin 0 -> 2111 bytes .../site-packages/wheel/signatures/keys.py | 99 + .../site-packages/wheel/signatures/keys.pyc | Bin 0 -> 4541 bytes .../site-packages/wheel/test/__init__.py | 1 + .../site-packages/wheel/test/__init__.pyc | Bin 0 -> 137 bytes .../test/complex-dist/complexdist/__init__.py | 2 + .../complex-dist/complexdist/__init__.pyc | Bin 0 -> 328 bytes .../wheel/test/complex-dist/setup.py | 30 + .../wheel/test/complex-dist/setup.pyc | Bin 0 -> 1325 bytes .../wheel/test/headers.dist/header.h | 0 .../wheel/test/headers.dist/headersdist.py | 0 .../wheel/test/headers.dist/headersdist.pyc | Bin 0 -> 153 bytes .../wheel/test/headers.dist/setup.py | 16 + .../wheel/test/headers.dist/setup.pyc | Bin 0 -> 829 bytes .../wheel/test/pydist-schema.json | 362 + .../wheel/test/simple.dist/setup.py | 17 + .../wheel/test/simple.dist/setup.pyc | Bin 0 -> 898 bytes .../test/simple.dist/simpledist/__init__.py | 0 .../test/simple.dist/simpledist/__init__.pyc | Bin 0 -> 160 bytes .../test/test-1.0-py2.py3-none-win32.whl | Bin 0 -> 5226 bytes .../site-packages/wheel/test/test_basic.py | 176 + .../site-packages/wheel/test/test_basic.pyc | Bin 0 -> 8709 bytes .../site-packages/wheel/test/test_install.py | 55 + .../site-packages/wheel/test/test_install.pyc | Bin 0 -> 2290 bytes .../site-packages/wheel/test/test_keys.py | 98 + .../site-packages/wheel/test/test_keys.pyc | Bin 0 -> 3405 bytes .../site-packages/wheel/test/test_paths.py | 6 + .../site-packages/wheel/test/test_paths.pyc | Bin 0 -> 536 bytes .../site-packages/wheel/test/test_ranking.py | 43 + .../site-packages/wheel/test/test_ranking.pyc | Bin 0 -> 1804 bytes .../wheel/test/test_signatures.py | 47 + .../wheel/test/test_signatures.pyc | Bin 0 -> 1474 bytes .../site-packages/wheel/test/test_tagopt.py | 176 + .../site-packages/wheel/test/test_tagopt.pyc | Bin 0 -> 8103 bytes .../site-packages/wheel/test/test_tool.py | 25 + .../site-packages/wheel/test/test_tool.pyc | Bin 0 -> 1864 bytes .../wheel/test/test_wheelfile.py | 142 + .../wheel/test/test_wheelfile.pyc | Bin 0 -> 4683 bytes .../site-packages/wheel/tool/__init__.py | 360 + .../site-packages/wheel/tool/__init__.pyc | Bin 0 -> 13903 bytes .../lib/python2.7/site-packages/wheel/util.py | 167 + .../python2.7/site-packages/wheel/util.pyc | Bin 0 -> 7353 bytes .../site-packages/wheel/wininst2wheel.py | 187 + .../site-packages/wheel/wininst2wheel.pyc | Bin 0 -> 5894 bytes .../zc.buildout-2.5.2-py2.7-nspkg.pth | 1 + .../DESCRIPTION.rst | 8778 ++++++++++++++++ .../zc.buildout-2.5.2.dist-info/INSTALLER | 1 + .../zc.buildout-2.5.2.dist-info/METADATA | 8805 +++++++++++++++++ .../zc.buildout-2.5.2.dist-info/RECORD | 48 + .../zc.buildout-2.5.2.dist-info/WHEEL | 6 + .../entry_points.txt | 7 + .../zc.buildout-2.5.2.dist-info/metadata.json | 1 + .../namespace_packages.txt | 1 + .../zc.buildout-2.5.2.dist-info/top_level.txt | 1 + .../site-packages/zc/buildout/__init__.py | 22 + .../site-packages/zc/buildout/__init__.pyc | Bin 0 -> 668 bytes .../site-packages/zc/buildout/allowhosts.txt | 124 + .../site-packages/zc/buildout/bootstrap.txt | 174 + .../zc/buildout/bootstrap_cl_settings.test | 61 + .../site-packages/zc/buildout/buildout.py | 2040 ++++ .../site-packages/zc/buildout/buildout.pyc | Bin 0 -> 59683 bytes .../site-packages/zc/buildout/buildout.txt | 3199 ++++++ .../site-packages/zc/buildout/configparser.py | 244 + .../zc/buildout/configparser.pyc | Bin 0 -> 6032 bytes .../zc/buildout/configparser.test | 348 + .../site-packages/zc/buildout/debugging.txt | 97 + .../zc/buildout/dependencylinks.txt | 192 + .../site-packages/zc/buildout/download.py | 291 + .../site-packages/zc/buildout/download.pyc | Bin 0 -> 9674 bytes .../site-packages/zc/buildout/download.txt | 582 ++ .../zc/buildout/downloadcache.txt | 244 + .../site-packages/zc/buildout/easy_install.py | 1566 +++ .../zc/buildout/easy_install.pyc | Bin 0 -> 41643 bytes .../zc/buildout/easy_install.txt | 1443 +++ .../zc/buildout/extends-cache.txt | 540 + .../zc/buildout/meta-recipes.txt | 232 + .../site-packages/zc/buildout/repeatable.txt | 470 + .../site-packages/zc/buildout/rmtree.py | 67 + .../site-packages/zc/buildout/rmtree.pyc | Bin 0 -> 1597 bytes .../site-packages/zc/buildout/runsetup.txt | 43 + .../site-packages/zc/buildout/setup.txt | 52 + .../site-packages/zc/buildout/testing.py | 534 + .../site-packages/zc/buildout/testing.pyc | Bin 0 -> 19641 bytes .../site-packages/zc/buildout/testing.txt | 172 + .../zc/buildout/testing_bugfix.txt | 39 + .../site-packages/zc/buildout/testrecipes.py | 17 + .../site-packages/zc/buildout/testrecipes.pyc | Bin 0 -> 1006 bytes .../site-packages/zc/buildout/tests.py | 3607 +++++++ .../site-packages/zc/buildout/tests.pyc | Bin 0 -> 103506 bytes .../site-packages/zc/buildout/update.txt | 301 + .../site-packages/zc/buildout/windows.txt | 68 + mailman3/venv/lib/python2.7/site.py | 758 ++ mailman3/venv/lib/python2.7/site.pyc | Bin 0 -> 24358 bytes mailman3/venv/lib/python2.7/site.pyo | Bin 0 -> 24358 bytes mailman3/venv/lib/python2.7/sre.py | 1 + mailman3/venv/lib/python2.7/sre_compile.py | 1 + mailman3/venv/lib/python2.7/sre_compile.pyc | Bin 0 -> 12739 bytes mailman3/venv/lib/python2.7/sre_constants.py | 1 + mailman3/venv/lib/python2.7/sre_constants.pyc | Bin 0 -> 6255 bytes mailman3/venv/lib/python2.7/sre_parse.py | 1 + mailman3/venv/lib/python2.7/sre_parse.pyc | Bin 0 -> 20449 bytes mailman3/venv/lib/python2.7/stat.py | 1 + mailman3/venv/lib/python2.7/stat.pyc | Bin 0 -> 2871 bytes mailman3/venv/lib/python2.7/stat.pyo | Bin 0 -> 2871 bytes mailman3/venv/lib/python2.7/types.py | 1 + mailman3/venv/lib/python2.7/types.pyc | Bin 0 -> 2809 bytes mailman3/venv/lib/python2.7/types.pyo | Bin 0 -> 2809 bytes mailman3/venv/lib/python2.7/warnings.py | 1 + mailman3/venv/lib/python2.7/warnings.pyc | Bin 0 -> 13454 bytes mailman3/venv/lib/python2.7/warnings.pyo | Bin 0 -> 12613 bytes mailman3/venv/local/bin | 1 + mailman3/venv/local/include | 1 + mailman3/venv/local/lib | 1 + mailman3/venv/pip-selfcheck.json | 1 + 843 files changed, 143039 insertions(+) create mode 100644 mailman3/Dockerfile create mode 100644 mailman3/README.md create mode 100644 mailman3/config/etc/nginx/sites-enabled/default create mode 100644 mailman3/config/etc/postfix/dynamicmaps.cf create mode 100644 mailman3/config/etc/postfix/main.cf create mode 100644 mailman3/config/etc/postfix/master.cf create mode 100755 mailman3/config/etc/postfix/post-install create mode 100644 mailman3/config/etc/postfix/postfix-files create mode 100755 mailman3/config/etc/postfix/postfix-script create mode 100644 mailman3/config/etc/postfix/sasl/smtpd.conf create mode 100644 mailman3/config/etc/postfix/vhosts create mode 100644 mailman3/config/etc/postfix/vmaps create mode 100644 mailman3/config/mailman3/mailman-bundler/buildout.cfg create mode 100644 mailman3/config/mailman3/mailman-bundler/mailman_web/production.py create mode 100644 mailman3/config/mailman3/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/config/schema.cfg create mode 100644 mailman3/config/var/log/mailman-web/mailman-web.log create mode 100644 mailman3/docker-compose.yml create mode 160000 mailman3/mailman-bundler create mode 100755 mailman3/scripts/run create mode 100644 mailman3/venv/bin/activate create mode 100644 mailman3/venv/bin/activate.csh create mode 100644 mailman3/venv/bin/activate.fish create mode 100644 mailman3/venv/bin/activate_this.py create mode 100755 mailman3/venv/bin/buildout create mode 100755 mailman3/venv/bin/easy_install create mode 100755 mailman3/venv/bin/easy_install-2.7 create mode 100755 mailman3/venv/bin/pip create mode 100755 mailman3/venv/bin/pip2 create mode 100755 mailman3/venv/bin/pip2.7 create mode 100755 mailman3/venv/bin/python create mode 100755 mailman3/venv/bin/python-config create mode 120000 mailman3/venv/bin/python2 create mode 120000 mailman3/venv/bin/python2.7 create mode 100755 mailman3/venv/bin/wheel create mode 120000 mailman3/venv/include/python2.7 create mode 120000 mailman3/venv/lib/python2.7/UserDict.py create mode 100644 mailman3/venv/lib/python2.7/UserDict.pyc create mode 100644 mailman3/venv/lib/python2.7/UserDict.pyo create mode 120000 mailman3/venv/lib/python2.7/_abcoll.py create mode 100644 mailman3/venv/lib/python2.7/_abcoll.pyc create mode 100644 mailman3/venv/lib/python2.7/_abcoll.pyo create mode 120000 mailman3/venv/lib/python2.7/_weakrefset.py create mode 100644 mailman3/venv/lib/python2.7/_weakrefset.pyc create mode 100644 mailman3/venv/lib/python2.7/_weakrefset.pyo create mode 120000 mailman3/venv/lib/python2.7/abc.py create mode 100644 mailman3/venv/lib/python2.7/abc.pyc create mode 100644 mailman3/venv/lib/python2.7/abc.pyo create mode 120000 mailman3/venv/lib/python2.7/codecs.py create mode 100644 mailman3/venv/lib/python2.7/codecs.pyc create mode 100644 mailman3/venv/lib/python2.7/codecs.pyo create mode 120000 mailman3/venv/lib/python2.7/copy_reg.py create mode 100644 mailman3/venv/lib/python2.7/copy_reg.pyc create mode 100644 mailman3/venv/lib/python2.7/copy_reg.pyo create mode 100644 mailman3/venv/lib/python2.7/distutils/__init__.py create mode 100644 mailman3/venv/lib/python2.7/distutils/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/distutils/distutils.cfg create mode 120000 mailman3/venv/lib/python2.7/encodings create mode 120000 mailman3/venv/lib/python2.7/fnmatch.py create mode 100644 mailman3/venv/lib/python2.7/fnmatch.pyc create mode 120000 mailman3/venv/lib/python2.7/genericpath.py create mode 100644 mailman3/venv/lib/python2.7/genericpath.pyc create mode 100644 mailman3/venv/lib/python2.7/genericpath.pyo create mode 120000 mailman3/venv/lib/python2.7/lib-dynload create mode 120000 mailman3/venv/lib/python2.7/linecache.py create mode 100644 mailman3/venv/lib/python2.7/linecache.pyc create mode 100644 mailman3/venv/lib/python2.7/linecache.pyo create mode 120000 mailman3/venv/lib/python2.7/locale.py create mode 100644 mailman3/venv/lib/python2.7/locale.pyc create mode 100644 mailman3/venv/lib/python2.7/no-global-site-packages.txt create mode 120000 mailman3/venv/lib/python2.7/ntpath.py create mode 100644 mailman3/venv/lib/python2.7/orig-prefix.txt create mode 120000 mailman3/venv/lib/python2.7/os.py create mode 100644 mailman3/venv/lib/python2.7/os.pyc create mode 100644 mailman3/venv/lib/python2.7/os.pyo create mode 120000 mailman3/venv/lib/python2.7/posixpath.py create mode 100644 mailman3/venv/lib/python2.7/posixpath.pyc create mode 100644 mailman3/venv/lib/python2.7/posixpath.pyo create mode 120000 mailman3/venv/lib/python2.7/re.py create mode 100644 mailman3/venv/lib/python2.7/re.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/easy_install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/easy_install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/DESCRIPTION.rst create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/INSTALLER create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/METADATA create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/RECORD create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/WHEEL create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/entry_points.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/metadata.json create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/top_level.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/__main__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/__main__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/cache.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/cache.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/filewrapper.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/filewrapper.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/heuristics.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/heuristics.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansitowin32.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansitowin32.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/initialise.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/initialise.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/winterm.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/winterm.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/sysconfig.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/sysconfig.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/tarfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/tarfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/manifest.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/manifest.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/markers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/markers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/scripts.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/scripts.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/t32.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/t64.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/version.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w32.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w64.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/constants.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/constants.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/lint.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/lint.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/optionaltags.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/optionaltags.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/html5parser.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/html5parser.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/ihatexml.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/ihatexml.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/inputstream.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/inputstream.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/sanitizer.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/sanitizer.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/serializer/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/serializer/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/serializer/htmlserializer.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/serializer/htmlserializer.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/tokenizer.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/tokenizer.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treeadapters/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treeadapters/sax.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treeadapters/sax.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/_base.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/_base.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/dom.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/dom.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/etree.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/etree.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/_base.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/_base.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/dom.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/dom.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/etree.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/etree.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/genshistream.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/genshistream.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/lxmletree.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/lxmletree.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/pulldom.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/treewalkers/pulldom.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/_base.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/_base.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/datrie.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/datrie.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/py.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/trie/py.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/ipaddress.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/ipaddress.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/linklockfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/linklockfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/mkdirlockfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/mkdirlockfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/pidlockfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/pidlockfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/sqlitelockfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/sqlitelockfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/symlinklockfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/lockfile/symlinklockfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/__about__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/__about__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/_compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/_compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/_structures.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/_structures.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/markers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/markers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/requirements.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/requirements.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/specifiers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/specifiers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/version.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/packaging/version.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/pkg_resources/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/pkg_resources/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/bar.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/bar.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/counter.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/counter.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/helpers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/helpers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/spinner.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/progress/spinner.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/pyparsing.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/pyparsing.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/re-vendor.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/re-vendor.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/adapters.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/api.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/api.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/auth.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/auth.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/cacert.pem create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/certs.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/certs.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/cookies.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/cookies.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/exceptions.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/exceptions.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/hooks.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/hooks.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/models.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/models.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/big5freq.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/big5freq.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/big5prober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/big5prober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/chardetect.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/chardetect.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/chardistribution.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/chardistribution.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/constants.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/constants.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/cp949prober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/cp949prober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/escprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/escprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/escsm.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/escsm.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euckrprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euckrprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euctwfreq.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euctwfreq.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euctwprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/euctwprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/gb2312freq.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/gb2312freq.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/gb2312prober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/gb2312prober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/hebrewprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/hebrewprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/jisfreq.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/jisfreq.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/jpcntx.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/jpcntx.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langbulgarianmodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langbulgarianmodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langcyrillicmodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langcyrillicmodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langgreekmodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langgreekmodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langhebrewmodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langhebrewmodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langhungarianmodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langhungarianmodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langthaimodel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/langthaimodel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/latin1prober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/latin1prober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcsgroupprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcsgroupprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sbcsgroupprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sbcsgroupprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/utf8prober.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/chardet/utf8prober.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/_collections.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/_collections.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/connection.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/connection.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/appengine.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/appengine.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/socks.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/socks.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/fields.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/fields.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/filepost.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/filepost.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ordered_dict.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ordered_dict.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/request.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/request.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/response.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/response.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/request.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/response.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/response.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/retry.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/retry.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/timeout.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/timeout.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/url.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/url.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/sessions.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/status_codes.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/status_codes.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/structures.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/structures.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/requests/utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/retrying.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/retrying.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/six.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/_vendor/six.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/basecommand.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/basecommand.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/baseparser.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/baseparser.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/cmdoptions.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/cmdoptions.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/completion.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/completion.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/download.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/download.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/freeze.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/freeze.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/hash.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/hash.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/help.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/help.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/list.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/list.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/search.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/search.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/show.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/show.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/uninstall.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/uninstall.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/commands/wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/dictconfig.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/dictconfig.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/ordereddict.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/compat/ordereddict.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/download.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/download.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/exceptions.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/exceptions.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/index.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/index.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/locations.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/locations.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/models/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/models/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/models/index.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/models/index.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/operations/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/operations/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/operations/freeze.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/operations/freeze.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/pep425tags.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/pep425tags.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_file.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_file.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_set.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_set.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_uninstall.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/req/req_uninstall.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/status_codes.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/status_codes.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/appdirs.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/appdirs.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/build.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/build.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/deprecation.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/deprecation.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/encoding.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/encoding.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/filesystem.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/filesystem.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/hashes.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/hashes.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/logging.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/logging.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/outdated.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/outdated.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/setuptools_build.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/setuptools_build.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/ui.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/utils/ui.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/bazaar.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/bazaar.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/git.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/git.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/mercurial.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/mercurial.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/subversion.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/vcs/subversion.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pip/wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/__about__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/__about__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/_compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/_compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/_structures.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/_structures.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/markers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/markers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/requirements.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/requirements.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/specifiers.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/specifiers.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/version.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/version.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/pyparsing.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/pyparsing.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/six.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/_vendor/six.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/extern/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/pkg_resources/extern/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/DESCRIPTION.rst create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/INSTALLER create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/METADATA create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/RECORD create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/WHEEL create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/dependency_links.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/entry_points.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/metadata.json create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/top_level.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools-23.1.0.dist-info/zip-safe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/archive_util.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/archive_util.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/cli-32.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/cli-64.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/cli.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/alias.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/alias.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_egg.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_rpm.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_rpm.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_wininst.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/bdist_wininst.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/build_ext.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/build_ext.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/build_py.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/build_py.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/develop.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/develop.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/easy_install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/easy_install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/egg_info.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/egg_info.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_egg_info.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_egg_info.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_lib.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_lib.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_scripts.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/install_scripts.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/launcher manifest.xml create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/register.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/register.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/rotate.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/rotate.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/saveopts.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/saveopts.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/sdist.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/sdist.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/setopt.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/setopt.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/test.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/test.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/upload.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/upload.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/upload_docs.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/command/upload_docs.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/depends.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/depends.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/dist.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/dist.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/extension.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/extension.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/extern/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/extern/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/gui-32.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/gui-64.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/gui.exe create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/launch.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/launch.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/lib2to3_ex.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/lib2to3_ex.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/msvc9_support.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/msvc9_support.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/package_index.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/package_index.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py26compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py26compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py27compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py27compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py31compat.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/py31compat.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/sandbox.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/sandbox.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/script (dev).tmpl create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/script.tmpl create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/site-patch.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/site-patch.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/ssl_support.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/ssl_support.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/unicode_utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/unicode_utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/utils.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/utils.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/version.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/version.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/windows_support.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/setuptools/windows_support.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/DESCRIPTION.rst create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/INSTALLER create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/LICENSE.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/METADATA create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/RECORD create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/WHEEL create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/entry_points.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/metadata.json create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel-0.29.0.dist-info/top_level.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/__main__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/__main__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/archive.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/archive.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/bdist_wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/bdist_wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/decorator.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/decorator.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/egg2wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/egg2wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/eggnames.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/metadata.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/metadata.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/paths.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/paths.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/pep425tags.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/pep425tags.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/pkginfo.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/pkginfo.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/djbec.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/djbec.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/ed25519py.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/ed25519py.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/keys.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/signatures/keys.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/complex-dist/complexdist/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/complex-dist/complexdist/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/complex-dist/setup.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/complex-dist/setup.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/headers.dist/header.h create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/headers.dist/headersdist.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/headers.dist/headersdist.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/headers.dist/setup.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/headers.dist/setup.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/pydist-schema.json create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/simple.dist/setup.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/simple.dist/setup.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/simple.dist/simpledist/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/simple.dist/simpledist/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test-1.0-py2.py3-none-win32.whl create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_basic.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_basic.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_keys.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_keys.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_paths.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_paths.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_ranking.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_ranking.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_signatures.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_signatures.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_tagopt.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_tagopt.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_tool.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_tool.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_wheelfile.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/test/test_wheelfile.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/tool/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/tool/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/util.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/util.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/wininst2wheel.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/wheel/wininst2wheel.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2-py2.7-nspkg.pth create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/DESCRIPTION.rst create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/INSTALLER create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/METADATA create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/RECORD create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/WHEEL create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/entry_points.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/metadata.json create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/namespace_packages.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc.buildout-2.5.2.dist-info/top_level.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/__init__.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/__init__.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/allowhosts.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/bootstrap.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/bootstrap_cl_settings.test create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/buildout.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/buildout.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/buildout.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/configparser.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/configparser.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/configparser.test create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/debugging.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/dependencylinks.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/download.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/download.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/download.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/downloadcache.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/easy_install.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/easy_install.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/easy_install.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/extends-cache.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/meta-recipes.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/repeatable.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/rmtree.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/rmtree.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/runsetup.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/setup.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testing.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testing.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testing.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testing_bugfix.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testrecipes.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/testrecipes.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/tests.py create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/tests.pyc create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/update.txt create mode 100644 mailman3/venv/lib/python2.7/site-packages/zc/buildout/windows.txt create mode 100644 mailman3/venv/lib/python2.7/site.py create mode 100644 mailman3/venv/lib/python2.7/site.pyc create mode 100644 mailman3/venv/lib/python2.7/site.pyo create mode 120000 mailman3/venv/lib/python2.7/sre.py create mode 120000 mailman3/venv/lib/python2.7/sre_compile.py create mode 100644 mailman3/venv/lib/python2.7/sre_compile.pyc create mode 120000 mailman3/venv/lib/python2.7/sre_constants.py create mode 100644 mailman3/venv/lib/python2.7/sre_constants.pyc create mode 120000 mailman3/venv/lib/python2.7/sre_parse.py create mode 100644 mailman3/venv/lib/python2.7/sre_parse.pyc create mode 120000 mailman3/venv/lib/python2.7/stat.py create mode 100644 mailman3/venv/lib/python2.7/stat.pyc create mode 100644 mailman3/venv/lib/python2.7/stat.pyo create mode 120000 mailman3/venv/lib/python2.7/types.py create mode 100644 mailman3/venv/lib/python2.7/types.pyc create mode 100644 mailman3/venv/lib/python2.7/types.pyo create mode 120000 mailman3/venv/lib/python2.7/warnings.py create mode 100644 mailman3/venv/lib/python2.7/warnings.pyc create mode 100644 mailman3/venv/lib/python2.7/warnings.pyo create mode 120000 mailman3/venv/local/bin create mode 120000 mailman3/venv/local/include create mode 120000 mailman3/venv/local/lib create mode 100644 mailman3/venv/pip-selfcheck.json diff --git a/mailman3/Dockerfile b/mailman3/Dockerfile new file mode 100644 index 0000000..495e433 --- /dev/null +++ b/mailman3/Dockerfile @@ -0,0 +1,40 @@ +######################################### +# Dockerfile to setup GNU Mailman Suite +######################################### + +FROM python:2.7 + +# File Author / Maintainer +MAINTAINER Joshua Bird + +RUN apt-get update +RUN apt-get install -y nginx + +RUN apt-get install -y rsync bash +RUN apt-get install -y vim +RUN apt-get install -y git python3.4-dev python-dev python-pip python-virtualenv +RUN apt-get install -y nodejs npm && \ + npm install -g less && \ + ln -s /usr/bin/nodejs /usr/bin/node +RUN apt-get install -y ruby-full rubygems +RUN gem install sass +RUN apt-get install -y postgresql +RUN DEBIAN_FRONTEND=noninteractive apt-get -y install postfix +RUN apt-get install -y libsasl2-modules + +# get mailman-bundler +WORKDIR /mailman3 +RUN git clone https://gitlab.com/mailman/mailman-bundler.git +RUN pip install zc.buildout +WORKDIR /mailman3/mailman-bundler + + +RUN buildout +RUN virtualenv venv +RUN . venv/bin/activate + +# Expose ports +EXPOSE 8000 +EXPOSE 8001 + +ENTRYPOINT /mailman3/scripts/run diff --git a/mailman3/README.md b/mailman3/README.md new file mode 100644 index 0000000..7ff30c2 --- /dev/null +++ b/mailman3/README.md @@ -0,0 +1,28 @@ +# mailman3 + +Dockerfile and configuration as applicable for the OSF. + +> #### Incomplete + +> - Move postgres to an external container +> - Consolidate configuration options for mailman3, mailman-bundler, and postfix + +## Information + +This container is configured here for production. +- Mailman is set up to use gunicorn as the WSGI server. +- The web interface, the union of HyperKitty and Postorious, listens on the container's port `8000`. `docker-compose.yml` maps that to the host's port `18000` to avoid collision with OSF services. +- The API Listens on the container's port `8001`, and requires credentials. These are configured in `config/mailman3/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/config/schema.cfg`. This will likely change in order to promote this Docker configuration's ease of use. + +Check out the Mailman Docs for more information about this application: http://pythonhosted.org/mailman/README.html, or look at the API client for ideas on how to interact with mailman: http://mailmanclient.readthedocs.io/en/latest/ + + +## Setup + +- Ensure docker and docker-compose are configured and installed correctly +- `# docker-compose up` +- To run in the background, wait until the server is running, and then `^C`, +- `# docker-compose start` + + + diff --git a/mailman3/config/etc/nginx/sites-enabled/default b/mailman3/config/etc/nginx/sites-enabled/default new file mode 100644 index 0000000..f38e583 --- /dev/null +++ b/mailman3/config/etc/nginx/sites-enabled/default @@ -0,0 +1,14 @@ +server { + listen 18000; + + server_name mailman.local; + + location /static { + autoindex on; + root /var/spool/mailman-web; + } + + location / { + proxy_pass http://localhost:8000; + } +} diff --git a/mailman3/config/etc/postfix/dynamicmaps.cf b/mailman3/config/etc/postfix/dynamicmaps.cf new file mode 100644 index 0000000..8aedda3 --- /dev/null +++ b/mailman3/config/etc/postfix/dynamicmaps.cf @@ -0,0 +1,7 @@ +# Postfix dynamic maps configuration file. +# +#type location of .so file open function (mkmap func) +#==== ================================ ============= ============ +tcp /usr/lib/postfix/dict_tcp.so dict_tcp_open +sqlite /usr/lib/postfix/dict_sqlite.so dict_sqlite_open +mysql /usr/lib/postfix/dict_mysql.so dict_mysql_open diff --git a/mailman3/config/etc/postfix/main.cf b/mailman3/config/etc/postfix/main.cf new file mode 100644 index 0000000..84386fa --- /dev/null +++ b/mailman3/config/etc/postfix/main.cf @@ -0,0 +1,200 @@ + + +### Verify these directory settings - they are critical to Postfix operation. +command_directory = /usr/sbin +daemon_directory = /usr/lib/postfix + +### Interface to listen on +inet_interfaces = all + + + +### smtp banner +mail_name = OSF Mail Daemon +smtpd_banner = $mail_name. All Spam Is Reported. ESMTP + +### Who delivers the mail (never root for security). +#mail_owner = postfix +#setgid_group = postdrop + +### Default user to deliver mail to (NEVER ENABLE) +luser_relay = + +### The myorigin parameter specifies the domain that appears in mail that is posted on/through this machine. +append_dot_mydomain = no +append_at_myorigin = yes + +### alias's +alias_maps = hash:/etc/aliases +alias_database = hash:/etc/aliases + +### Whitelist of accepted recipients. $alias_maps means only addreses in +### /etc/aliases are accepted to be locally delivered. +# local_recipient_maps = $alias_maps + +### the internet hostname of this mail system +myhostname = mechanysm +mydomain = mechanysm.com +myorigin = $myhostname + +virtual_transport = lmtp:unix:private/dovecot-lmtp +virtual_mailbox_domains = energy-foundation.org npenergyfoundation.org npenergychoice.org discourse.mechanysm.com mechanysm.com +virtual_mailbox_base = /var/mail +virtual_mailbox_maps = hash:/etc/postfix/vmaps +virtual_minimum_uid = 100 +virtual_uid_maps = static:7788 +virtual_gid_maps = static:7788 + +### The mydestination parameter specifies what domains this machine will deliver locally, instead +### of forwarding to another machine. The default is to receive mail for the machine itself. +mydestination = lists.mechanysm.com + +### External Networks to accept RELAYED mail from. +#mynetworks = 0.0.0.0/0 +mynetworks_style = host + +### Where to send mail that is delivered locally. +#mailbox_command = procmail -a "$EXTENSION" + +### How much of the message in bytes will be bounced back to the sender. +bounce_size_limit = 1000 + +### No limit on mailbox size. +mailbox_size_limit = 0 + +### Message Restrictions +# header_checks = regexp:/etc/postfix/header_checks + +### Limit sent/recieved emails to 100 Megs "(header+body+attachment)x(mime-encoding) <= 100 meg" +message_size_limit = 102400000 + +### How long do messages stay in the queue before being sent back to the sender. (in days) +### By default, postfix attempts to resend the message every (1000 secs)x(# attempts)x(days). +bounce_queue_lifetime = 4h +maximal_queue_lifetime = 4h +delay_warning_time = 1h + +### Parallel delivery force (local=2 and dest=20 are aggressive) +local_destination_concurrency_limit = 2 +default_destination_concurrency_limit = 20 + +### Max flow rate (1 sec delay per 50 emails/sec over the number of emails delivered/sec) +in_flow_delay = 1s + +### Require strict RFC 821-style envelope addresses +strict_rfc821_envelopes = yes + +### Limit the info given to outside servers +show_user_unknown_table_name = no + +### no one needs to ask our server who is on it +disable_vrfy_command = yes + +### clients must send a HELO (or EHLO) command at the beginning of an SMTP session. +#smtpd_helo_required = yes + +### Notification and delimiter +biff = no +recipient_delimiter = + + +#### user%domain != user@domain +allow_percent_hack = no + +#### user!domain != user@domain +swap_bangpath = no + +#smtpd_sasl_type = dovecot +#smtpd_sasl_path = private/auth +#smtpd_sasl_auth_enable = no + +smtpd_tls_cert_file = /etc/ssl/lists.mechanysm.com.crt +smtpd_tls_key_file = /etc/ssl/lists.mechanysm.com.key +#smtpd_tls_CAfile = /etc/ssl/cacert.pem +smtpd_tls_auth_only = yes +#smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache +#smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache +smtpd_tls_security_level = none +smtpd_tls_protocols = !SSLv2, !SSLv3 +tls_random_source = dev:/dev/urandom + +smtpd_tls_loglevel = 3 + +local_recipient_maps = proxy:unix:passwd.byname $alias_maps + +### Tarpit until RCPT TO: to reject the email for nagios compatability +#smtpd_delay_reject = yes + +### Tarpit those bots/clients/spammers who send errors or scan for accounts +#smtpd_error_sleep_time = 20 +#smtpd_soft_error_limit = 1 +#smtpd_hard_error_limit = 3 +#smtpd_junk_command_limit = 2 + +### Reject codes == 554 +#access_map_reject_code = 554 +#invalid_hostname_reject_code = 554 +#maps_rbl_reject_code = 554 +#multi_recipient_bounce_reject_code = 554 +#non_fqdn_reject_code = 554 +#plaintext_reject_code = 554 +#reject_code = 554 +#relay_domains_reject_code = 554 +#unknown_address_reject_code = 554 +#unknown_client_reject_code = 450 +#unknown_hostname_reject_code = 450 +#unknown_local_recipient_reject_code = 554 +#unknown_relay_recipient_reject_code = 554 +#unknown_virtual_alias_reject_code = 554 +#unknown_virtual_mailbox_reject_code = 554 +#unverified_recipient_reject_code = 554 +#unverified_sender_reject_code = 554 + +### SMTP Restrictions +smtpd_client_restrictions = +# permit_mynetworks, +# permit_sasl_authenticated, +# reject_invalid_hostname, +# reject_rbl_client zen.spamhaus.org, +# reject_unknown_client, + permit + +#smtpd_helo_restrictions = +# permit + +smtpd_recipient_restrictions = + #permit_sasl_authenticated, + #permit_mynetworks, + #reject_unauth_destination + permit + +#smtpd_sender_restrictions = +# permit_mynetworks, +# permit_sasl_authenticated, +# reject_non_fqdn_sender, +# reject_unknown_sender_domain, +# reject_unknown_address + +#smtpd_etrn_restrictions = +# permit_mynetworks, +# reject + +#smtpd_data_restrictions = +# reject_unauth_pipelining, +# reject_multi_recipient_bounce, +# permit + +##################### END ##################################################### +readme_directory = /usr/share/doc/postfix +html_directory = /usr/share/doc/postfix/html +smtpd_relay_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, permit + +transport_maps = hash:/mailman3/mailman-bundler/var/data/postfix_lmtp +local_recipient_maps = hash:/mailman3/mailman-bundler/var/data/postfix_lmtp +relay_domains = hash:/mailman3/mailman-bundler/var/data/postfix_domains + +smtp_sasl_auth_enable = yes +smtp_sasl_password_maps = static:halcyonchimera:8426133AWasdpiybG568 +smtp_sasl_security_options = noanonymous +smtp_tls_security_level = encrypt +header_size_limit = 4096000 +relayhost = [smtp.sendgrid.net]:587 diff --git a/mailman3/config/etc/postfix/master.cf b/mailman3/config/etc/postfix/master.cf new file mode 100644 index 0000000..55fc363 --- /dev/null +++ b/mailman3/config/etc/postfix/master.cf @@ -0,0 +1,119 @@ +# +# Postfix master process configuration file. For details on the format +# of the file, see the master(5) manual page (command: "man 5 master"). +# +# Do not forget to execute "postfix reload" after editing this file. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (yes) (never) (100) +# ========================================================================== +smtp inet n - - - - smtpd -v + -o smtpd_tls_cert_file=/etc/ssl/certs/energy-foundation.pem + -o smtpd_tls_key_file=/etc/ssl/private/energy-foundation.key +#smtp inet n - - - 1 postscreen +smtpd pass - - - - - smtpd -v + -o smtpd_tls_wrappermode=yes + -o smtpd_tls_cert_file=/etc/ssl/certs/energy-foundation.pem + -o smtpd_tls_key_file=/etc/ssl/private/energy-foundation.key +#dnsblog unix - - - - 0 dnsblog +#tlsproxy unix - - - - 0 tlsproxy +submission inet n - n - - smtpd -v +# -o syslog_name=postfix/submission +# -o smtpd_tls_security_level=encrypt +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_client_restrictions=permit_sasl_authenticated,reject +# -o smtpd_recipient_restrictions=check_relay_domain, permit_sasl_authenticated, reject +# -o milter_macro_daemon_name=ORIGINATING +# -o smtpd_tls_wrappermode=no +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_sasl_type=dovecot +# -o milter_macro_daemon_name=ORIGINATING +#628 inet n - - - - qmqpd +pickup fifo n - - 60 1 pickup +cleanup unix n - - - 0 cleanup +qmgr fifo n - n 300 1 qmgr +#qmgr fifo n - n 300 1 oqmgr +tlsmgr unix - - n 1000? 1 tlsmgr +rewrite unix - - - - - trivial-rewrite +bounce unix - - - - 0 bounce +defer unix - - - - 0 bounce +trace unix - - - - 0 bounce +verify unix - - - - 1 verify +flush unix n - - 1000? 0 flush +proxymap unix - - n - - proxymap +proxywrite unix - - n - 1 proxymap +smtp unix - - - - - smtp -v +relay unix - - - - - smtp +# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 +showq unix n - - - - showq +error unix - - - - - error +retry unix - - - - - error +discard unix - - - - - discard +local unix - n n - - local +virtual unix - n n - - virtual +lmtp unix - - - - - lmtp +anvil unix - - - - 1 anvil +scache unix - - - - 1 scache +# +# ==================================================================== +# Interfaces to non-Postfix software. Be sure to examine the manual +# pages of the non-Postfix software to find out what options it wants. +# +# Many of the following services use the Postfix pipe(8) delivery +# agent. See the pipe(8) man page for information about ${recipient} +# and other message envelope options. +# ==================================================================== +# +# maildrop. See the Postfix MAILDROP_README file for details. +# Also specify in main.cf: maildrop_destination_recipient_limit=1 +# +maildrop unix - n n - - pipe + flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} +# +# ==================================================================== +# +# Recent Cyrus versions can use the existing "lmtp" master.cf entry. +# +# Specify in cyrus.conf: +# lmtp cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4 +# +# Specify in main.cf one or more of the following: +# mailbox_transport = lmtp:inet:localhost +# virtual_transport = lmtp:inet:localhost +# +# ==================================================================== +# +# Cyrus 2.1.5 (Amos Gouaux) +# Also specify in main.cf: cyrus_destination_recipient_limit=1 +# +#cyrus unix - n n - - pipe +# user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# +# ==================================================================== +# Old example of delivery via Cyrus. +# +#old-cyrus unix - n n - - pipe +# flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +# +# ==================================================================== +# +# See the Postfix UUCP_README file for configuration details. +# +uucp unix - n n - - pipe + flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +# +# Other external delivery methods. +# +ifmail unix - n n - - pipe + flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) +bsmtp unix - n n - - pipe + flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient +scalemail-backend unix - n n - 2 pipe + flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} +mailman unix - n n - - pipe + flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py + ${nexthop} ${user} + +#dovecot unix - n n - - pipe +# flags=DRhu user=email:email argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient} -n -m ${extension} diff --git a/mailman3/config/etc/postfix/post-install b/mailman3/config/etc/postfix/post-install new file mode 100755 index 0000000..7e79c92 --- /dev/null +++ b/mailman3/config/etc/postfix/post-install @@ -0,0 +1,869 @@ +#!/bin/sh + +# To view the formatted manual page of this file, type: +# POSTFIXSOURCE/mantools/srctoman - post-install | nroff -man + +#++ +# NAME +# post-install +# SUMMARY +# Postfix post-installation script +# SYNOPSIS +# postfix post-install [name=value] command ... +# DESCRIPTION +# The post-install script performs the finishing touch of a Postfix +# installation, after the executable programs and configuration +# files are installed. Usage is one of the following: +# .IP o +# While installing Postfix from source code on the local machine, the +# script is run by the postfix-install script to update selected file +# or directory permissions and to update Postfix configuration files. +# .IP o +# While installing Postfix from a pre-built package, the script is run +# by the package management procedure to set all file or directory +# permissions and to update Postfix configuration files. +# .IP o +# The script can be used to change installation parameter settings such +# as mail_owner or setgid_group after Postfix is already installed. +# .IP o +# The script can be used to upgrade configuration files and to upgrade +# file/directory permissions of a secondary Postfix instance. +# .IP o +# At Postfix start-up time, the script is run from "postfix check" to +# create missing queue directories. +# .PP +# The post-install script is controlled by installation parameters. +# Specific parameters are described at the end of this document. +# All installation parameters must be specified ahead of time via +# one of the methods described below. +# +# Arguments +# .IP create-missing +# Create missing queue directories with ownerships and permissions +# according to the contents of $daemon_directory/postfix-files +# and optionally in $daemon_directory/postfix-files.d/*, using +# the mail_owner and setgid_group parameter settings from the +# command line, process environment or from the installed +# main.cf file. +# +# This is required at Postfix start-up time. +# .IP set-permissions +# Set all file/directory ownerships and permissions according to the +# contents of $daemon_directory/postfix-files and optionally +# in $daemon_directory/postfix-files.d/*, using the mail_owner +# and setgid_group parameter settings from the command line, +# process environment or from the installed main.cf file. +# Implies create-missing. +# +# This is required when installing Postfix from a pre-built package, +# or when changing the mail_owner or setgid_group installation parameter +# settings after Postfix is already installed. +# .IP upgrade-permissions +# Update ownership and permission of existing files/directories as +# specified in $daemon_directory/postfix-files and optionally +# in $daemon_directory/postfix-files.d/*, using the mail_owner +# and setgid_group parameter settings from the command line, +# process environment or from the installed main.cf file. +# Implies create-missing. +# +# This is required when upgrading an existing Postfix instance. +# .IP upgrade-configuration +# Edit the installed main.cf and master.cf files, in order to account +# for missing services and to fix deprecated parameter settings. +# +# This is required when upgrading an existing Postfix instance. +# .IP upgrade-source +# Short-hand for: upgrade-permissions upgrade-configuration. +# +# This is recommended when upgrading Postfix from source code. +# .IP upgrade-package +# Short-hand for: set-permissions upgrade-configuration. +# +# This is recommended when upgrading Postfix from a pre-built package. +# .IP first-install-reminder +# Remind the user that they still need to configure main.cf and the +# aliases file, and that newaliases still needs to be run. +# +# This is recommended when Postfix is installed for the first time. +# MULTIPLE POSTFIX INSTANCES +# .ad +# .fi +# Multiple Postfix instances on the same machine can share command and +# daemon program files but must have separate configuration and queue +# directories. +# +# To create a secondary Postfix installation on the same machine, +# copy the configuration files from the primary Postfix instance to +# a secondary configuration directory and execute: +# +# postfix post-install config_directory=secondary-config-directory \e +# .in +4 +# queue_directory=secondary-queue-directory \e +# .br +# create-missing +# .PP +# This creates secondary Postfix queue directories, sets their access +# permissions, and saves the specified installation parameters to the +# secondary main.cf file. +# +# Be sure to list the secondary configuration directory in the +# alternate_config_directories parameter in the primary main.cf file. +# +# To upgrade a secondary Postfix installation on the same machine, +# execute: +# +# postfix post-install config_directory=secondary-config-directory \e +# .in +4 +# upgrade-permissions upgrade-configuration +# INSTALLATION PARAMETER INPUT METHODS +# .ad +# .fi +# Parameter settings can be specified through a variety of +# mechanisms. In order of decreasing precedence these are: +# .IP "command line" +# Parameter settings can be given as name=value arguments on +# the post-install command line. These have the highest precedence. +# Settings that override the installed main.cf file are saved. +# .IP "process environment" +# Parameter settings can be given as name=value environment +# variables. +# Settings that override the installed main.cf file are saved. +# .IP "installed configuration files" +# If a parameter is not specified via the command line or via the +# process environment, post-install will attempt to extract its +# value from the already installed Postfix main.cf configuration file. +# These settings have the lowest precedence. +# INSTALLATION PARAMETER DESCRIPTION +# .ad +# .fi +# The description of installation parameters is as follows: +# .IP config_directory +# The directory for Postfix configuration files. +# .IP daemon_directory +# The directory for Postfix daemon programs. This directory +# should not be in the command search path of any users. +# .IP command_directory +# The directory for Postfix administrative commands. This +# directory should be in the command search path of adminstrative users. +# .IP queue_directory +# The directory for Postfix queues. +# .IP data_directory +# The directory for Postfix writable data files (caches, etc.). +# .IP sendmail_path +# The full pathname for the Postfix sendmail command. +# This is the Sendmail-compatible mail posting interface. +# .IP newaliases_path +# The full pathname for the Postfix newaliases command. +# This is the Sendmail-compatible command to build alias databases +# for the Postfix local delivery agent. +# .IP mailq_path +# The full pathname for the Postfix mailq command. +# This is the Sendmail-compatible command to list the mail queue. +# .IP mail_owner +# The owner of the Postfix queue. Its numerical user ID and group ID +# must not be used by any other accounts on the system. +# .IP setgid_group +# The group for mail submission and for queue management commands. +# Its numerical group ID must not be used by any other accounts on the +# system, not even by the mail_owner account. +# .IP html_directory +# The directory for the Postfix HTML files. +# .IP manpage_directory +# The directory for the Postfix on-line manual pages. +# .IP sample_directory +# The directory for the Postfix sample configuration files. +# This feature is obsolete as of Postfix 2.1. +# .IP readme_directory +# The directory for the Postfix README files. +# SEE ALSO +# postfix-install(1) Postfix primary installation script. +# FILES +# $config_directory/main.cf, Postfix installation parameters. +# $daemon_directory/postfix-files, installation control file. +# $daemon_directory/postfix-files.d/*, optional control files. +# $config_directory/install.cf, obsolete configuration file. +# LICENSE +# .ad +# .fi +# The Secure Mailer license must be distributed with this software. +# AUTHOR(S) +# Wietse Venema +# IBM T.J. Watson Research +# P.O. Box 704 +# Yorktown Heights, NY 10598, USA +#-- + +umask 022 + +PATH=/bin:/usr/bin:/usr/sbin:/usr/etc:/sbin:/etc:/usr/contrib/bin:/usr/gnu/bin:/usr/ucb:/usr/bsd +SHELL=/bin/sh +IFS=" +" +BACKUP_IFS="$IFS" +debug=: +#debug=echo +MOST_PARAMETERS="command_directory daemon_directory data_directory + html_directory mail_owner mailq_path manpage_directory + newaliases_path queue_directory readme_directory sample_directory + sendmail_path setgid_group" +NON_SHARED="config_directory queue_directory data_directory" + +USAGE="Usage: $0 [name=value] command + create-missing Create missing queue directories. + upgrade-source When installing or upgrading from source code. + upgrade-package When installing or upgrading from pre-built package. + first-install-reminder Remind of mandatory first-time configuration steps. + name=value Specify an installation parameter". + +# Process command-line options and parameter settings. Work around +# brain damaged shells. "IFS=value command" should not make the +# IFS=value setting permanent. But some broken standard allows it. + +create=; set_perms=; upgrade_perms=; upgrade_conf=; first_install_reminder= +obsolete=; keep_list=; + +for arg +do + case $arg in + *=*) IFS= eval $arg; IFS="$BACKUP_IFS";; + create-missing) create=1;; + set-perm*) create=1; set_perms=1;; + upgrade-perm*) create=1; upgrade_perms=1;; + upgrade-conf*) upgrade_conf=1;; + upgrade-source) create=1; upgrade_conf=1; upgrade_perms=1;; + upgrade-package) create=1; upgrade_conf=1; set_perms=1;; + first-install*) first_install_reminder=1;; + *) echo "$0: Error: $USAGE" 1>&2; exit 1;; + esac + shift +done + +# Sanity checks. + +test -n "$create$upgrade_conf$first_install_reminder" || { + echo "$0: Error: $USAGE" 1>&2 + exit 1 +} + +# Bootstrapping problem. + +if [ -n "$command_directory" ] +then + POSTCONF="$command_directory/postconf" +else + POSTCONF="postconf" +fi + +$POSTCONF -d mail_version >/dev/null 2>/dev/null || { + echo $0: Error: no $POSTCONF command found. 1>&2 + echo Re-run this command as $0 command_directory=/some/where. 1>&2 + exit 1 +} + +# Also used to require license etc. files only in the default instance. + +def_config_directory=`$POSTCONF -d -h config_directory` || exit 1 +test -n "$config_directory" || + config_directory="$def_config_directory" + +test -d "$config_directory" || { + echo $0: Error: $config_directory is not a directory. 1>&2 + exit 1 +} + +# If this is a secondary instance, don't touch shared files. +# XXX Solaris does not have "test -e". + +instances=`test ! -f $def_config_directory/main.cf || + $POSTCONF -c $def_config_directory -h multi_instance_directories | + sed 's/,/ /'` || exit 1 + +update_shared_files=1 +for name in $instances +do + case "$name" in + "$def_config_directory") ;; + "$config_directory") update_shared_files=; break;; + esac +done + +test -f $daemon_directory/postfix-files || { + echo $0: Error: $daemon_directory/postfix-files is not a file. 1>&2 + exit 1 +} + +# SunOS5 fmt(1) truncates lines > 1000 characters. + +fake_fmt() { + sed ' + :top + /^\( *\)\([^ ][^ ]*\) */{ + s//\1\2\ +\1/ + P + D + b top + } + ' | fmt +} + +case `uname -s` in +HP-UX*) FMT=cat;; +SunOS*) FMT=fake_fmt;; + *) FMT=fmt;; +esac + +# If a parameter is not set via the command line or environment, +# try to use settings from installed configuration files. + +# Extract parameter settings from the obsolete install.cf file, as +# a transitional aid. + +grep setgid_group $config_directory/main.cf >/dev/null 2>&1 || { + test -f $config_directory/install.cf && { + for name in sendmail_path newaliases_path mailq_path setgid manpages + do + eval junk=\$$name + case "$junk" in + "") eval unset $name;; + esac + eval : \${$name="\`. $config_directory/install.cf; echo \$$name\`"} \ + || exit 1 + done + : ${setgid_group=$setgid} + : ${manpage_directory=$manpages} + } +} + +# Extract parameter settings from the installed main.cf file. + +test -f $config_directory/main.cf && { + for name in $MOST_PARAMETERS + do + eval junk=\$$name + case "$junk" in + "") eval unset $name;; + esac + eval : \${$name=\`$POSTCONF -c $config_directory -h $name\`} || exit 1 + done +} + +# Sanity checks + +case $manpage_directory in + no) echo $0: Error: manpage_directory no longer accepts \"no\" values. 1>&2 + echo Try again with \"$0 manpage_directory=/pathname ...\". 1>&2; exit 1;; +esac + +case $setgid_group in + no) echo $0: Error: setgid_group no longer accepts \"no\" values. 1>&2 + echo Try again with \"$0 setgid_group=groupname ...\" 1>&2; exit 1;; +esac + +for path in "$daemon_directory" "$command_directory" "$queue_directory" \ + "$sendmail_path" "$newaliases_path" "$mailq_path" "$manpage_directory" +do + case "$path" in + /*) ;; + *) echo $0: Error: \"$path\" should be an absolute path name. 1>&2; exit 1;; + esac +done + +for path in "$html_directory" "$readme_directory" +do + case "$path" in + /*) ;; + no) ;; + *) echo $0: Error: \"$path\" should be \"no\" or an absolute path name. 1>&2; exit 1;; + esac +done + +# Find out what parameters were not specified via command line, +# via environment, or via installed configuration files. + +missing= +for name in $MOST_PARAMETERS +do + eval test -n \"\$$name\" || missing="$missing $name" +done + +# All parameters must be specified at this point. + +test -n "$non_interactive" -a -n "$missing" && { + cat <&2 +$0: Error: some required installation parameters are not defined. + +- Either the parameters need to be given in the $config_directory/main.cf +file from a recent Postfix installation, + +- Or the parameters need to be specified through the process +environment. + +- Or the parameters need to be specified as name=value arguments +on the $0 command line, + +The following parameters were missing: + + $missing + +EOF + exit 1 +} + +POSTCONF="$command_directory/postconf" + +# Save settings, allowing command line/environment override. + +override= +for name in $MOST_PARAMETERS +do + eval test \"\$$name\" = \"`$POSTCONF -c $config_directory -h $name`\" || { + override=1 + break + } +done + +test -n "$override" && { + $POSTCONF -c $config_directory -e \ + "daemon_directory = $daemon_directory" \ + "command_directory = $command_directory" \ + "queue_directory = $queue_directory" \ + "data_directory = $data_directory" \ + "mail_owner = $mail_owner" \ + "setgid_group = $setgid_group" \ + "sendmail_path = $sendmail_path" \ + "mailq_path = $mailq_path" \ + "newaliases_path = $newaliases_path" \ + "html_directory = $html_directory" \ + "manpage_directory = $manpage_directory" \ + "sample_directory = $sample_directory" \ + "readme_directory = $readme_directory" \ + || exit 1 +} + +# Use file/directory status information in $daemon_directory/postfix-files. + +test -n "$create" && { + postfix_files_d=$daemon_directory/postfix-files.d + for postfix_file in $daemon_directory/postfix-files \ + `test -d $postfix_files_d && { find $postfix_files_d -type f | sort; }` + do + exec <$postfix_file || exit 1 + while IFS=: read path type owner group mode flags junk + do + IFS="$BACKUP_IFS" + set_permission= + # Skip comments. Skip shared files, if updating a secondary instance. + case $path in + [$]*) case "$update_shared_files" in + 1) $debug keep non-shared or shared $path;; + *) non_shared= + for name in $NON_SHARED + do + case $path in + "\$$name"*) non_shared=1; break;; + esac + done + case "$non_shared" in + 1) $debug keep non-shared $path;; + *) $debug skip shared $path; continue;; + esac;; + esac;; + *) continue;; + esac + # Skip hard links and symbolic links. + case $type in + [hl]) continue;; + [df]) ;; + *) echo unknown type $type for $path in $postfix_file 1>&2; exit 1;; + esac + # Expand $name, and canonicalize null fields. + for name in path owner group flags + do + eval junk=\${$name} + case $junk in + [$]*) eval $name=$junk;; + -) eval $name=;; + *) ;; + esac + done + # Skip uninstalled files. + case $path in + no|no/*) continue;; + esac + # Pick up the flags. + case $flags in *u*) upgrade_flag=1;; *) upgrade_flag=;; esac + case $flags in *c*) create_flag=1;; *) create_flag=;; esac + case $flags in *r*) recursive="-R";; *) recursive=;; esac + case $flags in *o*) obsolete_flag=1;; *) obsolete_flag=;; esac + case $flags in *[1i]*) test ! -r "$path" -a "$config_directory" != \ + "$def_config_directory" && continue;; esac + # Flag obsolete objects. XXX Solaris 2..9 does not have "test -e". + if [ -n "$obsolete_flag" ] + then + test -r $path -a "$type" != "d" && obsolete="$obsolete $path" + continue; + else + keep_list="$keep_list $path" + fi + # Create missing directories with proper owner/group/mode settings. + if [ -n "$create" -a "$type" = "d" -a -n "$create_flag" -a ! -d "$path" ] + then + mkdir $path || exit 1 + set_permission=1 + # Update all owner/group/mode settings. + elif [ -n "$set_perms" ] + then + set_permission=1 + # Update obsolete owner/group/mode settings. + elif [ -n "$upgrade_perms" -a -n "$upgrade_flag" ] + then + set_permission=1 + fi + test -n "$set_permission" && { + chown $recursive $owner $path || exit 1 + test -z "$group" || chgrp $recursive $group $path || exit 1 + # Don't "chmod -R"; queue file status is encoded in mode bits. + if [ "$type" = "d" -a -n "$recursive" ] + then + find $path -type d -exec chmod $mode "{}" ";" + else + chmod $mode $path + fi || exit 1 + } + done + IFS="$BACKUP_IFS" + done +} + +# Upgrade existing Postfix configuration files if necessary. + +test -n "$upgrade_conf" && { + + # Postfix 2.0. + # Add missing relay service to master.cf. + + grep '^relay' $config_directory/master.cf >/dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for relay service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for flush service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for trace service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for verify service + cat >>$config_directory/master.cf </dev/null && { + echo Editing $config_directory/master.cf, setting verify process limit to 1 + ed $config_directory/master.cf </dev/null && { + echo Editing $config_directory/master.cf, making the pickup service unprivileged + ed $config_directory/master.cf </dev/null && { + echo Editing $config_directory/master.cf, making the $name service public + ed $config_directory/master.cf </dev/null) || missing="$missing defer" + (echo "$found" | grep deferred>/dev/null)|| missing="$missing deferred" + test -n "$missing" && { + echo fixing main.cf hash_queue_names for missing $missing + $POSTCONF -c $config_directory -e hash_queue_names="$found$missing" || + exit 1 + } + + # Turn on safety nets for new features that could bounce mail that + # would be accepted by a previous Postfix version. + + # [The "unknown_local_recipient_reject_code = 450" safety net, + # introduced with Postfix 2.0 and deleted after Postfix 2.3.] + + # Postfix 2.0. + # Add missing proxymap service to master.cf. + + grep '^proxymap.*proxymap' $config_directory/master.cf >/dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for proxymap service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for anvil service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for scache service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for discard service + cat >>$config_directory/master.cf <unix service. + + grep "^tlsmgr[ ]*fifo[ ]" \ + $config_directory/master.cf >/dev/null && { + echo Editing $config_directory/master.cf, updating the tlsmgr from fifo to unix service + ed $config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for tlsmgr service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for retry service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for proxywrite service + cat >>$config_directory/master.cf </dev/null && { + echo Editing $config_directory/master.cf, setting proxywrite process limit to 1 + ed $config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for postscreen TCP service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for smtpd unix-domain service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for dnsblog unix-domain service + cat >>$config_directory/master.cf </dev/null || { + echo Editing $config_directory/master.cf, adding missing entry for tlsproxy unix-domain service + cat >>$config_directory/master.cf <&2 + echo Do not run directly. 1>&2 + exit 1 +esac + +LOGGER="$command_directory/postlog -t $MAIL_LOGTAG/postfix-script" +INFO="$LOGGER -p info" +WARN="$LOGGER -p warn" +ERROR="$LOGGER -p error" +FATAL="$LOGGER -p fatal" +PANIC="$LOGGER -p panic" + +if [ "X${1#quiet-}" != "X${1}" ]; then + INFO=: + x=${1#quiet-} + shift + set -- $x "$@" +fi + +umask 022 +SHELL=/bin/sh + +# +# Can't do much without these in place. +# +cd $command_directory || { + $FATAL no Postfix command directory $command_directory! + exit 1 +} +cd $daemon_directory || { + $FATAL no Postfix daemon directory $daemon_directory! + exit 1 +} +test -f master || { + $FATAL no Postfix master program $daemon_directory/master! + exit 1 +} +cd $config_directory || { + $FATAL no Postfix configuration directory $config_directory! + exit 1 +} +cd $queue_directory || { + $FATAL no Postfix queue directory $queue_directory! + exit 1 +} +def_config_directory=`$command_directory/postconf -dh config_directory` || { + $FATAL cannot execute $command_directory/postconf! + exit 1 +} + +# If this is a secondary instance, don't touch shared files. + +instances=`test ! -f $def_config_directory/main.cf || + $command_directory/postconf -c $def_config_directory \ + -h multi_instance_directories | sed 's/,/ /'` || { + $FATAL cannot execute $command_directory/postconf! + exit 1 +} + +check_shared_files=1 +for name in $instances +do + case "$name" in + "$def_config_directory") ;; + "$config_directory") check_shared_files=; break;; + esac +done + +# +# Parse JCL +# +case $1 in + +start_msg) + + echo "Start postfix" + ;; + +stop_msg) + + echo "Stop postfix" + ;; + +quick-start) + + $daemon_directory/master -t 2>/dev/null || { + $FATAL the Postfix mail system is already running + exit 1 + } + $daemon_directory/postfix-script quick-check || { + $FATAL Postfix integrity check failed! + exit 1 + } + $INFO starting the Postfix mail system + $daemon_directory/master & + ;; + +start) + + $daemon_directory/master -t 2>/dev/null || { + $FATAL the Postfix mail system is already running + exit 1 + } + if [ -f $queue_directory/quick-start ] + then + rm -f $queue_directory/quick-start + else + $daemon_directory/postfix-script check-fatal || { + $FATAL Postfix integrity check failed! + exit 1 + } + # Foreground this so it can be stopped. All inodes are cached. + $daemon_directory/postfix-script check-warn + fi + $INFO starting the Postfix mail system + # NOTE: wait in foreground process to get the initialization status. + $daemon_directory/master -w || { + $FATAL "mail system startup failed" + exit 1 + } + ;; + +drain) + + $daemon_directory/master -t 2>/dev/null && { + $FATAL the Postfix mail system is not running + exit 1 + } + $INFO stopping the Postfix mail system + kill -9 `sed 1q pid/master.pid` + ;; + +quick-stop) + + $daemon_directory/postfix-script stop + touch $queue_directory/quick-start + ;; + +stop) + + $daemon_directory/master -t 2>/dev/null && { + $FATAL the Postfix mail system is not running + exit 0 + } + $INFO stopping the Postfix mail system + kill `sed 1q pid/master.pid` + for i in 5 4 3 2 1 + do + $daemon_directory/master -t && exit 0 + $INFO waiting for the Postfix mail system to terminate + sleep 1 + done + $WARN stopping the Postfix mail system with force + pid=`awk '{ print $1; exit 0 } END { exit 1 }' pid/master.pid` && + kill -9 -$pid + ;; + +abort) + + $daemon_directory/master -t 2>/dev/null && { + $FATAL the Postfix mail system is not running + exit 0 + } + $INFO aborting the Postfix mail system + kill `sed 1q pid/master.pid` + ;; + +reload) + + $daemon_directory/master -t 2>/dev/null && { + $FATAL the Postfix mail system is not running + exit 1 + } + $INFO refreshing the Postfix mail system + $command_directory/postsuper active || exit 1 + kill -HUP `sed 1q pid/master.pid` + $command_directory/postsuper & + ;; + +flush) + + cd $queue_directory || { + $FATAL no Postfix queue directory $queue_directory! + exit 1 + } + $command_directory/postqueue -f + ;; + +check) + + $daemon_directory/postfix-script check-fatal || exit 1 + $daemon_directory/postfix-script check-warn + exit 0 + ;; + +status) + + $daemon_directory/master -t 2>/dev/null && { + $INFO the Postfix mail system is not running + exit 1 + } + $INFO the Postfix mail system is running: PID: `sed 1q pid/master.pid` + exit 0 + ;; + +quick-check) + # This command is NOT part of the public interface. + + $SHELL $daemon_directory/post-install create-missing || { + $WARN unable to create missing queue directories + exit 1 + } + + # Look for incomplete installations. + + test -f $config_directory/master.cf || { + $FATAL no $config_directory/master.cf file found + exit 1 + } + exit 0 + ;; + +check-fatal) + # This command is NOT part of the public interface. + + $daemon_directory/postfix-script quick-check + + # See if all queue files are in the right place. This is slow. + # We must scan all queues for mis-named queue files before the + # mail system can run. + + $command_directory/postsuper || exit 1 + exit 0 + ;; + +check-warn) + # This command is NOT part of the public interface. + + todo="$config_directory $queue_directory $queue_directory/pid" + test -n "$check_shared_files" && todo="$daemon_directory $todo" + + for dir in $todo + do + ls -lLd $dir | (grep " root " >/dev/null || + $WARN not owned by root: $dir) + done + + # Some people break Postfix's security model. + ls -lLd $queue_directory | egrep '^.....(w|...w)' >/dev/null && \ + $WARN group or other writable: $queue_directory + + todo="$config_directory/*" + test -n "$check_shared_files" && todo="$daemon_directory/* $todo" + + find $todo ! -user root \ + -exec $WARN not owned by root: {} \; + + todo="$config_directory/." + test -n "$check_shared_files" && todo="$daemon_directory/. $todo" + + find $todo \ + \( -perm -020 -o -perm -002 \) -type f \ + -exec $WARN group or other writable: {} \; + + find $data_directory/. ! -user $mail_owner \ + -exec $WARN not owned by $mail_owner: {} \; + + ls -lLd $data_directory | egrep '^.....(w|...w)' >/dev/null && \ + $WARN group or other writable: $data_directory + + find `ls -d $queue_directory/* | \ + egrep '/(saved|incoming|active|defer|deferred|bounce|hold|trace|corrupt|public|private|flush)$'` \ + ! \( -type p -o -type s \) ! -user $mail_owner \ + -exec $WARN not owned by $mail_owner: {} \; + + todo="$queue_directory/public $queue_directory/maildrop" + test -n "$check_shared_files" && + todo="$command_directory/postqueue $command_directory/postdrop $todo" + + find $todo \ + -prune ! -group $setgid_group \ + -exec $WARN not owned by group $setgid_group: {} \; + + test -n "$check_shared_files" && + find $command_directory/postqueue $command_directory/postdrop \ + -prune ! -perm -02111 \ + -exec $WARN not set-gid or not owner+group+world executable: {} \; + + for name in `ls -d $queue_directory/* | \ + egrep '/(bin|etc|lib|usr)$'` ; \ + do \ + find $name ! -user root \ + -exec $WARN not owned by root: {} \; ; \ + done + + # WARNING: this should not descend into the maildrop directory. + # maildrop is the least trusted Postfix directory. + + find $queue_directory/maildrop/. -prune ! -user $mail_owner \ + -exec $WARN not owned by $mail_owner: $queue_directory/maildrop \; + + for dir in bin etc lib sbin usr + do + test -d $dir && find $dir -type f -print | while read path + do + test -f /$path && { + cmp -s $path /$path || + $WARN $queue_directory/$path and /$path differ + } + done + done + + find corrupt -type f -exec $WARN damaged message: {} \; + + # XXX also: look for weird stuff, weird permissions, etc. + + test -n "$check_shared_files" -a -f /usr/sbin/sendmail -a \ + -f /usr/lib/sendmail && { + cmp -s /usr/sbin/sendmail /usr/lib/sendmail || { + $WARN /usr/lib/sendmail and /usr/sbin/sendmail differ + $WARN Replace one by a symbolic link to the other + } + } + exit 0 + ;; + +set-permissions|upgrade-configuration) + $daemon_directory/post-install create-missing "$@" + ;; + +post-install) + # Currently not part of the public interface. + shift + $daemon_directory/post-install "$@" + ;; + +/*) + # Currently not part of the public interface. + "$@" + ;; + +*) + $ERROR "unknown command: '$1'" + $FATAL "usage: postfix start (or stop, reload, abort, flush, check, status, set-permissions, upgrade-configuration)" + exit 1 + ;; + +esac diff --git a/mailman3/config/etc/postfix/sasl/smtpd.conf b/mailman3/config/etc/postfix/sasl/smtpd.conf new file mode 100644 index 0000000..b445546 --- /dev/null +++ b/mailman3/config/etc/postfix/sasl/smtpd.conf @@ -0,0 +1,2 @@ +mech_list: plain login cram-md5 digest-md5 +pwcheck_method: saslauthd diff --git a/mailman3/config/etc/postfix/vhosts b/mailman3/config/etc/postfix/vhosts new file mode 100644 index 0000000..3aa2ad4 --- /dev/null +++ b/mailman3/config/etc/postfix/vhosts @@ -0,0 +1 @@ +mechanysm.com diff --git a/mailman3/config/etc/postfix/vmaps b/mailman3/config/etc/postfix/vmaps new file mode 100644 index 0000000..4e80417 --- /dev/null +++ b/mailman3/config/etc/postfix/vmaps @@ -0,0 +1 @@ +postmaster@mechanysm.com mechanysm.com/postmaster/ diff --git a/mailman3/config/mailman3/mailman-bundler/buildout.cfg b/mailman3/config/mailman3/mailman-bundler/buildout.cfg new file mode 100644 index 0000000..886e507 --- /dev/null +++ b/mailman3/config/mailman3/mailman-bundler/buildout.cfg @@ -0,0 +1,88 @@ +# +# Buildout configuration for Mailman + Postorius + HyperKitty +# + +[configuration] +# Choose 'testing' or 'production' +deployment = production + + + +# You shouldn't need to edit anything below +[buildout] +parts = + main + mailman + templates +develop = . +versions = versions + + +[versions] +mailman = 3.0.3 +mailman-hyperkitty = 1.0.0 +postorius = 1.0.3 +hyperkitty = 1.0.3 + + +[main] +recipe = zc.recipe.egg +eggs = + mailman-bundler + ${mailman-web:eggs} +dependent-scripts = true +interpreter = python +initialization = + import os + os.environ['MAILMAN_CONFIG_FILE'] = '${buildout:directory}/deployment/mailman.cfg' + os.environ['DJANGO_SETTINGS_MODULE'] = '${mailman-web:project}.${mailman-web:settings}' + + +[mailman] +recipe = collective.recipe.cmd +python3-version = 3.4 +on_install = true +venv-dir = ${buildout:directory}/venv-${mailman:python3-version} +cmds = + virtualenv -p python${mailman:python3-version} ${mailman:venv-dir} + ${mailman:venv-dir}/bin/pip install mailman==${versions:mailman} mailman-hyperkitty==${versions:mailman-hyperkitty} +uninstall_cmds = + rm -rf ${mailman:venv-dir} + + +[mailman-web] +recipe = djangorecipe +project = mailman_web +eggs = + Django < 1.9 + postorius + hyperkitty + Whoosh + mock + beautifulsoup4 +control-script = mailman-web-django-admin +wsgi = true +wsgi-script = mailman-web.wsgi +settings = ${configuration:deployment} +test = + postorius + hyperkitty + + +[templates] +recipe = z3c.recipe.filetemplate +source-directory = templates +interpreted-options = + venv-directory = sys.prefix + venv-sitelib-directory = __import__('distutils').sysconfig.get_python_lib() + + +[gunicorn] +recipe = zc.recipe.egg +eggs = + gunicorn + ${mailman-web:eggs} +dependent-scripts = true +initialization = + import os + os.environ['DJANGO_SETTINGS_MODULE'] = '${mailman-web:project}.${mailman-web:settings}' diff --git a/mailman3/config/mailman3/mailman-bundler/mailman_web/production.py b/mailman3/config/mailman3/mailman-bundler/mailman_web/production.py new file mode 100644 index 0000000..f0fcdd3 --- /dev/null +++ b/mailman3/config/mailman3/mailman-bundler/mailman_web/production.py @@ -0,0 +1,402 @@ +#-*- coding: utf-8 -*- +""" +Django settings for HyperKitty + Postorius +""" + +import os +BASE_DIR = os.path.dirname(os.path.abspath(__file__)) +VAR_DIR = "/var/spool" + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'change-that-at-install-time' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = False + +TEMPLATE_DEBUG = DEBUG + +ADMINS = ( + ('Mailman Admin', 'root@localhost'), +) + +# Hosts/domain names that are valid for this site; required if DEBUG is False +# See https://docs.djangoproject.com/en/1.5/ref/settings/#allowed-hosts +ALLOWED_HOSTS = ["localhost", "mechanysm.com", "*"] +# And for BrowserID too, see +# http://django-browserid.rtfd.org/page/user/settings.html#django.conf.settings.BROWSERID_AUDIENCES +BROWSERID_AUDIENCES = [ "http://localhost", "http://localhost:8000", "http://mechanysm.com:18000", "http://mechanysm.com:8000" ] + +# Mailman API credentials +MAILMAN_REST_API_URL = 'http://mailman.local:8001' +MAILMAN_REST_API_USER = 'apollo' +MAILMAN_REST_API_PASS = 'FPbM!!yfU!GaQpPSkYl3' +MAILMAN_ARCHIVER_KEY = 'SecretArchiverAPIKey' +MAILMAN_ARCHIVER_FROM = ('127.0.0.1', '::1', '::ffff:127.0.0.1') + +# Application definition + +INSTALLED_APPS = ( + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + #'django.contrib.sites', + 'django.contrib.messages', + 'django.contrib.staticfiles', + # Uncomment the next line to enable the admin: + 'django.contrib.admin', + # Uncomment the next line to enable admin documentation: + # 'django.contrib.admindocs', + 'hyperkitty', + 'social.apps.django_app.default', + 'rest_framework', + 'django_gravatar', + 'crispy_forms', + 'paintstore', + 'compressor', + 'django_browserid', + 'haystack', + 'django_extensions', + 'postorius', +) + + +MIDDLEWARE_CLASSES = ( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + # Uncomment the next line for simple clickjacking protection: + # 'django.middleware.clickjacking.XFrameOptionsMiddleware', + 'hyperkitty.middleware.SSLRedirect', + 'hyperkitty.middleware.TimezoneMiddleware', +) + +ROOT_URLCONF = 'mailman_web.urls' + + +# +# Postorius +# + +# CSS theme for postorius +MAILMAN_THEME = "default" + +## Email confirmation / address activation +# Add a from-address for email-confirmation: +# EMAIL_CONFIRMATION_FROM = 'postmaster@example.org' + +# These can be set to override the defaults but are not mandatory: +# EMAIL_CONFIRMATION_TEMPLATE = 'postorius/address_confirmation_message.txt' +# EMAIL_CONFIRMATION_SUBJECT = 'Confirmation needed' + + + +# Database +# https://docs.djangoproject.com/en/1.6/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.postgresql_psycopg2', # Last part is one of 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. + 'NAME': 'mailmanweb', # Example, change as needed + 'USER': 'mailmanweb', # Example, change as needed + 'PASSWORD': 'change-this-password', # Example, obviously + 'HOST': '127.0.0.1', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP. + 'PORT': '', # Set to empty string for default. + } +} + + +# If you're behind a proxy, use the X-Forwarded-Host header +# See https://docs.djangoproject.com/en/1.5/ref/settings/#use-x-forwarded-host +#USE_X_FORWARDED_HOST = True +# And if your proxy does your SSL encoding for you, set SECURE_PROXY_SSL_HEADER +# see https://docs.djangoproject.com/en/1.5/ref/settings/#secure-proxy-ssl-header +#SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https') + +# Internationalization +# https://docs.djangoproject.com/en/1.6/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'America/Chicago' + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/1.6/howto/static-files/ + +# Absolute filesystem path to the directory that will hold user-uploaded files. +# Example: "/var/www/example.com/media/" +MEDIA_ROOT = '' + +# URL that handles the media served from MEDIA_ROOT. Make sure to use a +# trailing slash. +# Examples: "http://example.com/media/", "http://media.example.com/" +MEDIA_URL = '' + +# Absolute path to the directory static files should be collected to. +# Don't put anything in this directory yourself; store your static files +# in apps' "static/" subdirectories and in STATICFILES_DIRS. +# Example: "/var/www/example.com/static/" +#STATIC_ROOT = '' +STATIC_ROOT = os.path.join(VAR_DIR, "mailman-web", "static") + +# URL prefix for static files. +# Example: "http://example.com/static/", "http://static.example.com/" +STATIC_URL = '/static/' + +# Additional locations of static files +STATICFILES_DIRS = ( + # Put strings here, like "/home/html/static" or "C:/www/django/static". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. +) + +# List of finder classes that know how to find static files in +# various locations. +STATICFILES_FINDERS = ( + 'django.contrib.staticfiles.finders.FileSystemFinder', + 'django.contrib.staticfiles.finders.AppDirectoriesFinder', +# 'django.contrib.staticfiles.finders.DefaultStorageFinder', + 'compressor.finders.CompressorFinder', +) + + +TEMPLATE_CONTEXT_PROCESSORS = ( + "django.contrib.auth.context_processors.auth", + "django.contrib.messages.context_processors.messages", + "django.core.context_processors.debug", + "django.core.context_processors.i18n", + "django.core.context_processors.media", + "django.core.context_processors.static", + "django.core.context_processors.csrf", + "django.core.context_processors.request", + "django.core.context_processors.tz", + "django.contrib.messages.context_processors.messages", + "social.apps.django_app.context_processors.backends", + "social.apps.django_app.context_processors.login_redirect", + "hyperkitty.context_processors.export_settings", + "hyperkitty.context_processors.postorius_info", + "postorius.context_processors.postorius", +) + +TEMPLATE_DIRS = ( + # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. +) + +# Django 1.6+ defaults to a JSON serializer, but it won't work with django-openid, see +# https://bugs.launchpad.net/django-openid-auth/+bug/1252826 +SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer' + + +LOGIN_URL = 'hk_user_login' +LOGOUT_URL = 'hk_user_logout' +LOGIN_REDIRECT_URL = 'hk_root' + +# Use the email username as identifier, but truncate it because +# the User.username field is only 30 chars long. +def username(email): + return email.rsplit('@', 1)[0][:30] +BROWSERID_USERNAME_ALGO = username +BROWSERID_VERIFY_CLASS = "django_browserid.views.Verify" + + + +# +# Social auth +# + +AUTHENTICATION_BACKENDS = ( + #'social.backends.open_id.OpenIdAuth', + # http://python-social-auth.readthedocs.org/en/latest/backends/google.html + 'social.backends.google.GoogleOpenId', + #'social.backends.google.GoogleOAuth2', + #'social.backends.twitter.TwitterOAuth', + 'social.backends.yahoo.YahooOpenId', + 'django_browserid.auth.BrowserIDBackend', + 'django.contrib.auth.backends.ModelBackend', +) + +# http://python-social-auth.readthedocs.org/en/latest/pipeline.html#authentication-pipeline +SOCIAL_AUTH_PIPELINE = ( + 'social.pipeline.social_auth.social_details', + 'social.pipeline.social_auth.social_uid', + 'social.pipeline.social_auth.auth_allowed', + 'social.pipeline.social_auth.social_user', + 'social.pipeline.user.get_username', + # Associates the current social details with another user account with + # a similar email address. Disabled by default, enable with care: + # http://python-social-auth.readthedocs.org/en/latest/use_cases.html#associate-users-by-email + #'social.pipeline.social_auth.associate_by_email', + 'social.pipeline.user.create_user', + 'social.pipeline.social_auth.associate_user', + 'social.pipeline.social_auth.load_extra_data', + 'social.pipeline.user.user_details', + 'hyperkitty.lib.mailman.add_user_to_mailman', +) + + + +# +# Gravatar +# https://github.com/twaddington/django-gravatar +# +# Gravatar base url. +#GRAVATAR_URL = 'http://cdn.libravatar.org/' +# Gravatar base secure https url. +#GRAVATAR_SECURE_URL = 'https://seccdn.libravatar.org/' +# Gravatar size in pixels. +#GRAVATAR_DEFAULT_SIZE = '80' +# An image url or one of the following: 'mm', 'identicon', 'monsterid', 'wavatar', 'retro'. +#GRAVATAR_DEFAULT_IMAGE = 'mm' +# One of the following: 'g', 'pg', 'r', 'x'. +#GRAVATAR_DEFAULT_RATING = 'g' +# True to use https by default, False for plain http. +#GRAVATAR_DEFAULT_SECURE = True + +# +# django-compressor +# https://pypi.python.org/pypi/django_compressor +# +COMPRESS_PRECOMPILERS = ( + ('text/x-scss', 'sass {infile} {outfile}'), + ('text/x-sass', 'sass {infile} {outfile}'), +) +COMPRESS_OFFLINE = True +# needed for debug mode +#INTERNAL_IPS = ('127.0.0.1',) + +# Django Crispy Forms +CRISPY_TEMPLATE_PACK = 'bootstrap3' +CRISPY_FAIL_SILENTLY = not DEBUG + +# Compatibility with Bootstrap 3 +from django.contrib.messages import constants as messages +MESSAGE_TAGS = { + messages.ERROR: 'danger' +} + + +# +# Full-text search engine +# +HAYSTACK_CONNECTIONS = { + 'default': { + 'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine', + 'PATH': os.path.join(VAR_DIR, "mailman-web", "fulltext_index"), + }, +} + + +# A sample logging configuration. The only tangible logging +# performed by this configuration is to send an email to +# the site admins on every HTTP 500 error when DEBUG=False. +# See http://docs.djangoproject.com/en/dev/topics/logging for +# more details on how to customize your logging configuration. +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'filters': { + 'require_debug_false': { + '()': 'django.utils.log.RequireDebugFalse' + } + }, + 'handlers': { + 'mail_admins': { + 'level': 'ERROR', + 'filters': ['require_debug_false'], + 'class': 'django.utils.log.AdminEmailHandler' + }, + 'file':{ + 'level': 'INFO', + #'class': 'logging.handlers.RotatingFileHandler', + 'class': 'logging.handlers.WatchedFileHandler', + 'filename': '/var/log/mailman-web/mailman-web.log', + 'formatter': 'verbose', + }, + }, + 'loggers': { + #'django.request': { + # 'handlers': ['mail_admins'], + # 'level': 'ERROR', + # 'propagate': True, + #}, + 'django.request': { + 'handlers': ['file'], + 'level': 'INFO', + 'propagate': True, + }, + 'django': { + 'handlers': ['file'], + 'level': 'INFO', + 'propagate': True, + }, + 'hyperkitty': { + 'handlers': ['file'], + 'level': 'INFO', + 'propagate': True, + }, + 'postorius': { + 'handlers': ['file'], + 'level': 'INFO', + 'propagate': True, + }, + }, + 'formatters': { + 'verbose': { + 'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s' + }, + 'simple': { + 'format': '%(levelname)s %(message)s' + }, + }, + 'root': { + 'handlers': ['file'], + 'level': 'INFO', + }, +} + + +## Cache: use the local memcached server +#CACHES = { +# 'default': { +# 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', +# 'LOCATION': '127.0.0.1:11211', +# } +#} + + + +# +# HyperKitty-specific +# + +APP_NAME = 'Mailing-list archives' + +# Allow authentication with the internal user database? +# By default, only a login through Persona or your email provider is allowed. +USE_INTERNAL_AUTH = True + +# Use SSL when logged in. You need to enable the SSLRedirect middleware for +# this feature to work. +USE_SSL = False + +# Only display mailing-lists from the same virtual host as the webserver +FILTER_VHOST = False + +# This is for development purposes +USE_MOCKUPS = False + + +try: + from settings_local import * +except ImportError: + pass diff --git a/mailman3/config/mailman3/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/config/schema.cfg b/mailman3/config/mailman3/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/config/schema.cfg new file mode 100644 index 0000000..d138c08 --- /dev/null +++ b/mailman3/config/mailman3/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/config/schema.cfg @@ -0,0 +1,843 @@ +# Copyright (C) 2008-2016 by the Free Software Foundation, Inc. +# +# This file is part of GNU Mailman. +# +# GNU Mailman is free software: you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free +# Software Foundation, either version 3 of the License, or (at your option) +# any later version. +# +# GNU Mailman is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +# more details. +# +# You should have received a copy of the GNU General Public License along with +# GNU Mailman. If not, see . + +# This is the GNU Mailman configuration schema. It defines the default +# configuration options for the core system and plugins. It uses ini-style +# formats under the lazr.config regime to define all system configuration +# options. See for details. + +[mailman] +# This address is the "site owner" address. Certain messages which must be +# delivered to a human, but which can't be delivered to a list owner (e.g. a +# bounce from a list owner), will be sent to this address. It should point to +# a human. +site_owner: changeme@example.com + +# This is the local-part of an email address used in the From field whenever a +# message comes from some entity to which there is no natural reply recipient. +# Mailman will append '@' and the host name of the list involved. This +# address must not bounce and it must not point to a Mailman process. +noreply_address: noreply + +# The default language for this server. +default_language: en + +# Membership tests for posting purposes are usually performed by looking at a +# set of headers, passing the test if any of their values match a member of +# the list. Headers are checked in the order given in this variable. The +# value From_ means to use the envelope sender. Field names are case +# insensitive. This is a space separate list of headers. +sender_headers: from from_ reply-to sender + +# Mail command processor will ignore mail command lines after designated max. +email_commands_max_lines: 10 + +# Default length of time a pending request is live before it is evicted from +# the pending database. +pending_request_life: 3d + +# A callable to run with no arguments early in the initialization process. +# This runs before database initialization. +pre_hook: + +# A callable to run with no arguments late in the initialization process. +# This runs after adapters are initialized. +post_hook: + +# Which paths.* file system layout to use. +layout: here + +# Can MIME filtered messages be preserved by list owners? +filtered_messages_are_preservable: no + +# How should text/html parts be converted to text/plain when the mailing list +# is set to convert HTML to plaintext? This names a command to be called, +# where the substitution variable $filename is filled in by Mailman, and +# contains the path to the temporary file that the command should read from. +# The command should print the converted text to stdout. +html_to_plain_text_command: /usr/bin/lynx -dump $filename + + +[shell] +# `mailman shell` (also `withlist`) gives you an interactive prompt that you +# can use to interact with an initialized and configured Mailman system. Use +# --help for more information. This section allows you to configure certain +# aspects of this interactive shell. + +# Customize the interpreter prompt. +prompt: >>> + +# Banner to show on startup. +banner: Welcome to the GNU Mailman shell + +# Use IPython as the shell, which must be found on the system. Valid values +# are `no`, `yes`, and `debug` where the latter is equivalent to `yes` except +# that any import errors will be displayed to stderr. +use_ipython: no + +# Set this to allow for command line history if readline is available. This +# can be as simple as $var_dir/history.py to put the file in the var directory. +history_file: + + +[paths.master] +# Important directories for Mailman operation. These are defined here so that +# different layouts can be supported. For example, a developer layout would +# be different from a FHS layout. Most paths are based off the var_dir, and +# often just setting that will do the right thing for all the other paths. +# You might also have to set spool_dir though. +# +# Substitutions are allowed, but must be of the form $var where 'var' names a +# configuration variable in the paths.* section. Substitutions are expanded +# recursively until no more $-variables are present. Beware of infinite +# expansion loops! +# +# This is the root of the directory structure that Mailman will use to store +# its run-time data. +var_dir: /var/tmp/mailman +# This is where the Mailman queue files directories will be created. +queue_dir: $var_dir/queue +# This is the directory containing the Mailman 'runner' and 'master' commands +# if set to the string '$argv', it will be taken as the directory containing +# the 'mailman' command. +bin_dir: $argv +# All list-specific data. +list_data_dir: $var_dir/lists +# Directory where log files go. +log_dir: $var_dir/logs +# Directory for system-wide locks. +lock_dir: $var_dir/locks +# Directory for system-wide data. +data_dir: $var_dir/data +# Directory for configuration files and such. +etc_dir: $var_dir/etc +# Directory containing Mailman plugins. +ext_dir: $var_dir/ext +# Directory where the default IMessageStore puts its messages. +messages_dir: $var_dir/messages +# Directory for archive backends to store their messages in. Archivers should +# create a subdirectory in here to store their files. +archive_dir: $var_dir/archives +# Root directory for site-specific template override files. +template_dir: $var_dir/templates +# There are also a number of paths to specific file locations that can be +# defined. For these, the directory containing the file must already exist, +# or be one of the directories created by Mailman as per above. +# +# This is where PID file for the master runner is stored. +pid_file: $var_dir/master.pid +# Lock file. +lock_file: $lock_dir/master.lck + + +[devmode] +# Setting enabled to true enables certain safeguards and other behavior +# changes that make developing Mailman easier. For example, it forces the +# SMTP RCPT TO recipients to be a test address so that no messages are +# accidentally sent to real addresses. +enabled: no + +# Set this to an address to force the SMTP RCPT TO recipents when devmode is +# enabled. This way messages can't be accidentally sent to real addresses. +recipient: + +# This gets set by the testing layers so that the runner subprocesses produce +# predictable dates and times. +testing: no + +# Time-outs for starting up various test subprocesses, such as the LMTP and +# REST servers. This is only used for the test suite, so if you're seeing +# test failures, try increasing the wait time. +wait: 60s + + +[passwords] +# Where can we find the passlib configuration file? The path can be either a +# file system path or a Python import path. If the value starts with python: +# then it is a Python import path, otherwise it is a file system path. File +# system paths must be absolute since no guarantees are made about the current +# working directory. Python paths should not include the trailing .cfg, which +# the file must end with. +configuration: python:mailman.config.passlib + +# When Mailman generates them, this is the default length of passwords. +password_length: 8 + + +[runner.master] +# Define which runners, and how many of them, to start. + +# The full import path to the class for this runner. +class: mailman.core.runner.Runner + +# The queue directory path that this runner scans. This is ignored for +# runners that don't manage a queue directory. +path: $QUEUE_DIR/$name + +# The number of parallel runners. This must be a power of 2. This is ignored +# for runners that don't manage a queue directory. +instances: 1 + +# Whether to start this runner or not. +start: yes + +# The maximum number of restarts for this runner. When the runner exits +# because of an error or other unexpected problem, it is automatically +# restarted, until the maximum number of restarts has been reached. +max_restarts: 10 + +# The sleep interval for the runner. It wakes up once every interval to +# process the files in its slice of the queue directory. Some runners may +# ignore this. +sleep_time: 1s + +[database] +# The class implementing the IDatabase. +class: mailman.database.sqlite.SQLiteDatabase + +# Use this to set the Storm database engine URL. You generally have one +# primary database connection for all of Mailman. List data and most rosters +# will store their data in this database, although external rosters may access +# other databases in their own way. This string supports standard +# 'configuration' substitutions. +url: sqlite:///$DATA_DIR/mailman.db +debug: no + +[logging.template] +# This defines various log settings. The options available are: +# +# - level -- Overrides the default level; this may be any of the +# standard Python logging levels, case insensitive. +# - format -- Overrides the default format string +# - datefmt -- Overrides the default date format string +# - path -- Overrides the default logger path. This may be a relative +# path name, in which case it is relative to Mailman's LOG_DIR, +# or it may be an absolute path name. You cannot change the +# handler class that will be used. +# - propagate -- Boolean specifying whether to propagate log message from this +# logger to the root "mailman" logger. You cannot override +# settings for the root logger. +# +# In this section, you can define defaults for all loggers, which will be +# prefixed by 'mailman.'. Use subsections to override settings for specific +# loggers. The names of the available loggers are: +# +# - archiver -- All archiver output +# - bounce -- All bounce processing logs go here +# - config -- Configuration issues +# - database -- Database logging (SQLAlchemy and Alembic) +# - debug -- Only used for development +# - error -- All exceptions go to this log +# - fromusenet -- Information related to the Usenet to Mailman gateway +# - http -- Internal wsgi-based web interface +# - locks -- Lock state changes +# - mischief -- Various types of hostile activity +# - runner -- Runner process start/stops +# - smtp -- Successful SMTP activity +# - smtp-failure -- Unsuccessful SMTP activity +# - subscribe -- Information about leaves/joins +# - vette -- Message vetting information +format: %(asctime)s (%(process)d) %(message)s +datefmt: %b %d %H:%M:%S %Y +propagate: no +level: info +path: mailman.log + +[logging.root] + +[logging.archiver] + +[logging.bounce] +path: bounce.log + +[logging.config] + +[logging.database] +level: warn + +[logging.debug] +path: debug.log +level: info + +[logging.error] + +[logging.fromusenet] + +[logging.http] + +[logging.locks] + +[logging.mischief] + +[logging.runner] + +[logging.smtp] +path: smtp.log + +# The smtp logger defines additional options for handling the logging of each +# attempted delivery. These format strings specify what information is logged +# for every message, every successful delivery, every refused delivery and +# every recipient failure. To disable a status message, set the value to 'no' +# (without the quotes). +# +# These template strings accept the following set of substitution +# placeholders, if available. +# +# msgid -- the Message-ID of the message in question +# listname -- the fully-qualified list name +# sender -- the sender if available +# recip -- the recipient address if available, or the number of +# recipients being delivered to +# size -- the approximate size of the message in bytes +# seconds -- the number of seconds the operation took +# refused -- the number of refused recipients +# smtpcode -- the SMTP success or failure code +# smtpmsg -- the SMTP success or failure message + +every: $msgid smtp to $listname for $recip recips, completed in $time seconds +success: $msgid post to $listname from $sender, $size bytes +refused: $msgid post to $listname from $sender, $size bytes, $refused failures +failure: $msgid delivery to $recip failed with code $smtpcode, $smtpmsg + + +[logging.subscribe] + +[logging.vette] + + +[webservice] +# The hostname at which admin web service resources are exposed. +hostname: mailman.local + +# The port at which the admin web service resources are exposed. +port: 8001 + +# Whether or not requests to the web service are secured through SSL. +use_https: no + +# Whether or not to show tracebacks in an HTTP response for a request that +# raised an exception. +show_tracebacks: yes + +# The API version number for the current (highest) API. +api_version: 3.0 + +# The administrative username. +admin_user: apollo + +# The administrative password. +admin_pass: FPbM!!yfU!GaQpPSkYl3 + +[language.master] +# Template for language definitions. The section name must be [language.xx] +# where xx is the 2-character ISO code for the language. + +# The English name for the language. +description: English (USA) +# And the default character set for the language. +charset: us-ascii +# Whether the language is enabled or not. +enabled: yes + +# Language charsets as imported from Mailman 2.1 defaults +# Ref: http://www.lingoes.net/en/translator/langcode.htm +[language.ar] +description: Arabic +charset: utf-8 +enabled: yes + +[language.ast] +description: Asturian +charset: iso-8859-1 +enabled: yes + +[language.ca] +description: Catalan +charset: utf-8 +enabled: yes + +[language.cs] +description: Czech +charset: iso-8859-2 +enabled: yes + +[language.da] +description: Danish +charset: iso-8859-1 +enabled: yes + +[language.de] +description: German +charset: iso-8859-1 +enabled: yes + +[language.el] +description: Greek +charset: iso-8859-7 +enabled: yes + +[language.es] +description: Spanish +charset: iso-8859-1 +enabled: yes + +[language.et] +description: Estonian +charset: iso-8859-15 +enabled: yes + +[language.eu] +# Basque +description: Euskara +charset: iso-8859-15 +enabled: yes + +[language.fi] +description: Finnish +charset: iso-8859-1 +enabled: yes + +[language.fr] +description: French +charset: iso-8859-1 +enabled: yes + +[language.gl] +description: Galician +charset: utf-8 +enabled: yes + +[language.he] +description: Hebrew +charset: utf-8 +enabled: yes + +[language.hr] +description: Croatian +charset: iso-8859-2 +enabled: yes + +[language.hu] +description: Hungarian +charset: iso-8859-2 +enabled: yes + +[language.ia] +description: Interlingua +charset: iso-8859-15 +enabled: yes + +[language.it] +description: Italian +charset: iso-8859-1 +enabled: yes + +[language.ja] +description: Japanese +charset: euc-jp +enabled: yes + +[language.ko] +description: Korean +charset: euc-kr +enabled: yes + +[language.lt] +description: Lithuanian +charset: iso-8859-13 +enabled: yes + +[language.nl] +description: Dutch +charset: iso-8859-1 +enabled: yes + +[language.no] +description: Norwegian +charset: iso-8859-1 +enabled: yes + +[language.pl] +description: Polish +charset: iso-8859-2 +enabled: yes + +[language.pt] +description: Protuguese +charset: iso-8859-1 +enabled: yes + +[language.pt_BR] +description: Protuguese (Brazil) +charset: iso-8859-1 +enabled: yes + +[language.ro] +description: Romanian +charset: iso-8859-2 +enabled: yes + +[language.ru] +description: Russian +charset: koi8-r +enabled: yes + +[language.sk] +description: Slovak +charset: utf-8 +enabled: yes + +[language.sl] +description: Slovenian +charset: iso-8859-2 +enabled: yes + +[language.sr] +description: Serbian +charset: utf-8 +enabled: yes + +[language.sv] +description: Swedish +charset: iso-8859-1 +enabled: yes + +[language.tr] +description: Turkish +charset: iso-8859-9 +enabled: yes + +[language.uk] +description: Ukrainian +charset: utf-8 +enabled: yes + +[language.vi] +description: Vietnamese +charset: utf-8 +enabled: yes + +[language.zh_CN] +description: Chinese +charset: utf-8 +enabled: yes + +[language.zh_TW] +description: Chinese (Taiwan) +charset: utf-8 +enabled: yes + + +[antispam] +# This section defines basic antispam detection settings. + +# This value contains lines which specify RFC 822 headers in the email to +# check for spamminess. Each line contains a `key: value` pair, where the key +# is the header to check and the value is a Python regular expression to match +# against the header's value. E.g.: +# +# X-Spam: (yes|maybe) +# +# The header value and regular expression are always matched +# case-insensitively. +header_checks: + +# The chain to jump to if any of the header patterns matches. This must be +# the name of an existing chain such as 'discard', 'reject', 'hold', or +# 'accept', otherwise 'hold' will be used. +jump_chain: hold + + +[mta] +# The class defining the interface to the incoming mail transport agent. +incoming: mailman.mta.postfix.LMTP + +# The callable implementing delivery to the outgoing mail transport agent. +# This must accept three arguments, the mailing list, the message, and the +# message metadata dictionary. +outgoing: mailman.mta.deliver.deliver + +# How to connect to the outgoing MTA. If smtp_user and smtp_pass is given, +# then Mailman will attempt to log into the MTA when making a new connection. +smtp_host: localhost +smtp_port: 25 +smtp_user: +smtp_pass: + +# Where the LMTP server listens for connections. Use 127.0.0.1 instead of +# localhost for Postfix integration, because Postfix only consults DNS +# (e.g. not /etc/hosts). +lmtp_host: 127.0.0.1 +lmtp_port: 8024 + +# Ceiling on the number of recipients that can be specified in a single SMTP +# transaction. Set to 0 to submit the entire recipient list in one +# transaction. +max_recipients: 500 + +# Ceiling on the number of SMTP sessions to perform on a single socket +# connection. Some MTAs have limits. Set this to 0 to do as many as we like +# (i.e. your MTA has no limits). Set this to some number great than 0 and +# Mailman will close the SMTP connection and re-open it after this number of +# consecutive sessions. +max_sessions_per_connection: 0 + +# Maximum number of simultaneous subthreads that will be used for SMTP +# delivery. After the recipients list is chunked according to max_recipients, +# each chunk is handed off to the SMTP server by a separate such thread. If +# your Python interpreter was not built for threads, this feature is disabled. +# You can explicitly disable it in all cases by setting max_delivery_threads +# to 0. +max_delivery_threads: 0 + +# How long should messages which have delivery failures continue to be +# retried? After this period of time, a message that has failed recipients +# will be dequeued and those recipients will never receive the message. +delivery_retry_period: 5d + +# These variables control the format and frequency of VERP-like delivery for +# better bounce detection. VERP is Variable Envelope Return Path, defined +# here: +# +# http://cr.yp.to/proto/verp.txt +# +# This involves encoding the address of the recipient as Mailman knows it into +# the envelope sender address (i.e. RFC 5321 MAIL FROM). Thus, no matter what +# kind of forwarding the recipient has in place, should it eventually bounce, +# we will receive an unambiguous notice of the bouncing address. +# +# However, we're technically only "VERP-like" because we're doing the envelope +# sender encoding in Mailman, not in the MTA. We do require cooperation from +# the MTA, so you must be sure your MTA can be configured for extended address +# semantics. +# +# The first variable describes how to encode VERP envelopes. It must contain +# these three string interpolations, which get filled in by Mailman: +# +# $bounces -- the list's -bounces robot address will be set here +# $local -- the recipient address's local mailbox part will be set here +# $domain -- the recipient address's domain name will be set here +# +# This example uses the default below. +# +# FQDN list address is: mylist@dom.ain +# Recipient is: aperson@a.nother.dom +# +# The envelope sender will be mylist-bounces+aperson=a.nother.dom@dom.ain +# +# Note that your MTA /must/ be configured to deliver such an addressed message +# to mylist-bounces! +verp_delimiter: + +verp_format: ${bounces}+${local}=${domain} + +# For nicer confirmation emails, use a VERP-like format which encodes the +# confirmation cookie in the reply address. This lets us put a more user +# friendly Subject: on the message, but requires cooperation from the MTA. +# Format is like verp_format, but with the following substitutions: +# +# $address -- the list-confirm address +# $cookie -- the confirmation cookie +verp_confirm_format: $address+$cookie + +# This regular expression unambiguously decodes VERP addresses, which will be +# placed in the To: (or other, depending on the MTA) header of the bounce +# message by the bouncing MTA. Getting this right is critical -- and tricky. +# Learn your Python regular expressions. It must define exactly three named +# groups, `bounces`, `local` and `domain`, with the same definition as above. +# It will be compiled case-insensitively. +verp_regexp: ^(?P[^+]+?)\+(?P[^=]+)=(?P[^@]+)@.*$ + +# This is analogous to verp_regexp, but for splitting apart the +# verp_confirm_format. MUAs have been observed that mung +# +# From: local_part@host +# +# into +# +# To: "local_part" +# +# when replying, so we skip everything up to '<' if any. +verp_confirm_regexp: ^(.*<)?(?P[^+]+?)\+(?P[^@]+)@.*$ + +# Set this to 'yes' to enable VERP-like (more user friendly) confirmations. +verp_confirmations: no + +# Another good opportunity is when regular delivery is personalized. Here +# again, we're already incurring the performance hit for addressing each +# individual recipient. Set this to 'yes' to enable VERPs on all personalized +# regular deliveries (personalized digests aren't supported yet). +verp_personalized_deliveries: no + +# And finally, we can VERP normal, non-personalized deliveries. However, +# because it can be a significant performance hit, we allow you to decide how +# often to VERP regular deliveries. This is the interval, in number of +# messages, to do a VERP recipient address. The same variable controls both +# regular and digest deliveries. Set to 0 to disable occasional VERPs, set to +# 1 to VERP every delivery, or to some number > 1 for only occasional VERPs. +verp_delivery_interval: 0 + +# VERP format and regexp for probe messages. +verp_probe_format: $bounces+$token@$domain +verp_probe_regexp: ^(?P[^+]+?)\+(?P[^@]+)@.*$ +# Set this 'yes' to activate VERP probe for disabling by bounce. +verp_probes: no + +# This is the maximum number of automatic responses sent to an address because +# of -request messages or posting hold messages. This limit prevents response +# loops between Mailman and misconfigured remote email robots. Mailman +# already inhibits automatic replies to any message labeled with a header +# "Precendence: bulk|list|junk". This is a fallback safety valve so it should +# be set fairly high. Set to 0 for no limit (probably useful only for +# debugging). +max_autoresponses_per_day: 10 + +# Some list posts and mail to the -owner address may contain DomainKey or +# DomainKeys Identified Mail (DKIM) signature headers . +# Various list transformations to the message such as adding a list header or +# footer or scrubbing attachments or even reply-to munging can break these +# signatures. It is generally felt that these signatures have value, even if +# broken and even if the outgoing message is resigned. However, some sites +# may wish to remove these headers by setting this to 'yes'. +remove_dkim_headers: no + +# Where can we find the mail server specific configuration file? The path can +# be either a file system path or a Python import path. If the value starts +# with python: then it is a Python import path, otherwise it is a file system +# path. File system paths must be absolute since no guarantees are made about +# the current working directory. Python paths should not include the trailing +# .cfg, which the file must end with. +configuration: python:mailman.config.postfix + + +[bounces] +# How often should the bounce runner process queued detected bounces? +register_bounces_every: 15m + + +[archiver.master] +# To add new archivers, define a new section based on this one, overriding the +# following values. + +# The class implementing the IArchiver interface. +class: + +# Set this to 'yes' to enable the archiver. +enable: no + +# Additional configuration for the archiver. The path can be either a file +# system path or a Python import path. If the value starts with python: then +# it is a Python import path, otherwise it is a file system path. File system +# paths must be absolute since no guarantees are made about the current +# working directory. Python paths should not include the trailing .cfg, which +# the file must end with. +configuration: changeme + +# When sending the message to the archiver, you have the option of +# "clobbering" the Date: header, specifically to make it more sane. Some +# archivers can't handle dates that are wildly off from reality. This does +# not change the Date: header for any other delivery vector except this +# specific archive. +# +# When the original Date header is clobbered, it will always be stored in +# X-Original-Date. The new Date header will always be set to the date at +# which the messages was received by the Mailman server, in UTC. +# +# Your options here are: +# * never -- Leaves the original Date header alone. +# * always -- Always override the Date header. +# * maybe -- Override the Date only if it is outside the clobber_skew period. +clobber_date: maybe +clobber_skew: 1d + +[archiver.mhonarc] +# This is the stock MHonArc archiver. +class: mailman.archiving.mhonarc.MHonArc +configuration: python:mailman.config.mhonarc + +[archiver.mail_archive] +# This is the stock mail-archive.com archiver. +class: mailman.archiving.mailarchive.MailArchive +configuration: python:mailman.config.mail_archive + +[archiver.prototype] +# This is a prototypical sample archiver. +class: mailman.archiving.prototype.Prototype + + +[styles] +# Python import paths inside which components are searched for which implement +# the IStyle interface. Use one path per line. +paths: + mailman.styles + +# The default style to apply if nothing else was requested. The value is the +# name of an existing style. If no such style exists, no style will be +# applied. +default: legacy-default + + +[digests] +# Headers which should be kept in both RFC 1153 (plain) and MIME digests. RFC +# 1153 also specifies these headers in this exact order, so order matters. +# These are space separated and case insensitive. +mime_digest_keep_headers: + Date From To Cc Subject Message-ID Keywords + In-Reply-To References Content-Type MIME-Version + Content-Transfer-Encoding Precedence Reply-To + Message List-Post + +plain_digest_keep_headers: + Message Date From + Subject To Cc + Message-ID Keywords + Content-Type + + +[nntp] +# Set these variables if you need to authenticate to your NNTP server for +# Usenet posting or reading. Leave these blank if no authentication is +# necessary. +user: +password: + +# Host and port of the NNTP server to connect to. Leave these blank to use +# the default localhost:119. +host: +port: + +# This controls how headers must be cleansed in order to be accepted by your +# NNTP server. Some servers like INN reject messages containing prohibited +# headers, or duplicate headers. The NNTP server may reject the message for +# other reasons, but there's little that can be programmatically done about +# that. +# +# These headers (case ignored) are removed from the original message. This is +# a whitespace separate list of headers. +remove_headers: + nntp-posting-host nntp-posting-date x-trace + x-complaints-to xref date-received posted + posting-version relay-version received + +# These headers are left alone, unless there are duplicates in the original +# message. Any second and subsequent headers are rewritten to the second +# named header (case preserved). This is a list of header pairs, one pair per +# line. +rewrite_duplicate_headers: + To X-Original-To + CC X-Original-CC + Content-Transfer-Encoding X-Original-Content-Transfer-Encoding + MIME-Version X-MIME-Version diff --git a/mailman3/config/var/log/mailman-web/mailman-web.log b/mailman3/config/var/log/mailman-web/mailman-web.log new file mode 100644 index 0000000..e69de29 diff --git a/mailman3/docker-compose.yml b/mailman3/docker-compose.yml new file mode 100644 index 0000000..30f4b7d --- /dev/null +++ b/mailman3/docker-compose.yml @@ -0,0 +1,8 @@ +mailman: + build: . + ports: + - '0.0.0.0:18000:18000' + - '0.0.0.0:8001:8001' + volumes: + - ./config/:/mailman3/config + - ./scripts/:/mailman3/scripts diff --git a/mailman3/mailman-bundler b/mailman3/mailman-bundler new file mode 160000 index 0000000..22ccd10 --- /dev/null +++ b/mailman3/mailman-bundler @@ -0,0 +1 @@ +Subproject commit 22ccd10c8fc160eb4e6a599d802cbb59928ed4e3 diff --git a/mailman3/scripts/run b/mailman3/scripts/run new file mode 100755 index 0000000..dea63ab --- /dev/null +++ b/mailman3/scripts/run @@ -0,0 +1,60 @@ +#! /bin/bash + +echo '================================================================================' +echo '' +echo 'Mailman3 Server for The Open Science Framework' +echo 'Maintained by Joshua Bird' +echo '================================================================================' +echo '' +echo 'Starting Postgresql Server' +/etc/init.d/postgresql start +echo '' +apt-get install -y sudo +sudo -u postgres createdb mailmanweb +sudo -u postgres psql -c "CREATE USER mailmanweb WITH PASSWORD 'change-this-password';" +sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE mailmanweb TO mailmanweb;" +echo '' +echo '================================================================================' +echo '' +echo 'Configuring Hostnames' +echo `awk 'END{print $1}' /etc/hosts` mailman.local >> /etc/hosts +echo '' +echo '================================================================================' + + +cd /mailman3/mailman-bundler +rsync -av /mailman3/config/ / +/etc/init.d/nginx start +pip install psycopg2 +buildout + +echo '================================================================================' +echo '' +echo 'Applying Configuration' +echo '' +buildout install gunicorn +./bin/mailman-post-update +./bin/mailman start --force + +apt-get install -y expect +expect </dev/null 2>&1 + + # reset old environment variables + # ! [ -z ${VAR+_} ] returns true if VAR is declared at all + if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then + PATH="$_OLD_VIRTUAL_PATH" + export PATH + unset _OLD_VIRTUAL_PATH + fi + if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then + PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME" + export PYTHONHOME + unset _OLD_VIRTUAL_PYTHONHOME + fi + + # This should detect bash and zsh, which have a hash command that must + # be called to get it to forget past commands. Without forgetting + # past commands the $PATH changes we made may not be respected + if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then + hash -r 2>/dev/null + fi + + if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then + PS1="$_OLD_VIRTUAL_PS1" + export PS1 + unset _OLD_VIRTUAL_PS1 + fi + + unset VIRTUAL_ENV + if [ ! "${1-}" = "nondestructive" ] ; then + # Self destruct! + unset -f deactivate + fi +} + +# unset irrelevant variables +deactivate nondestructive + +VIRTUAL_ENV="/var/mailman3/venv" +export VIRTUAL_ENV + +_OLD_VIRTUAL_PATH="$PATH" +PATH="$VIRTUAL_ENV/bin:$PATH" +export PATH + +# unset PYTHONHOME if set +if ! [ -z "${PYTHONHOME+_}" ] ; then + _OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME" + unset PYTHONHOME +fi + +if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then + _OLD_VIRTUAL_PS1="$PS1" + if [ "x" != x ] ; then + PS1="$PS1" + else + PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1" + fi + export PS1 +fi + +# Make sure to unalias pydoc if it's already there +alias pydoc 2>/dev/null >/dev/null && unalias pydoc + +pydoc () { + python -m pydoc "$@" +} + +# This should detect bash and zsh, which have a hash command that must +# be called to get it to forget past commands. Without forgetting +# past commands the $PATH changes we made may not be respected +if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then + hash -r 2>/dev/null +fi diff --git a/mailman3/venv/bin/activate.csh b/mailman3/venv/bin/activate.csh new file mode 100644 index 0000000..2bd18c5 --- /dev/null +++ b/mailman3/venv/bin/activate.csh @@ -0,0 +1,36 @@ +# This file must be used with "source bin/activate.csh" *from csh*. +# You cannot run it directly. +# Created by Davide Di Blasi . + +alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc' + +# Unset irrelevant variables. +deactivate nondestructive + +setenv VIRTUAL_ENV "/var/mailman3/venv" + +set _OLD_VIRTUAL_PATH="$PATH" +setenv PATH "$VIRTUAL_ENV/bin:$PATH" + + + +if ("" != "") then + set env_name = "" +else + set env_name = `basename "$VIRTUAL_ENV"` +endif + +# Could be in a non-interactive environment, +# in which case, $prompt is undefined and we wouldn't +# care about the prompt anyway. +if ( $?prompt ) then + set _OLD_VIRTUAL_PROMPT="$prompt" + set prompt = "[$env_name] $prompt" +endif + +unset env_name + +alias pydoc python -m pydoc + +rehash + diff --git a/mailman3/venv/bin/activate.fish b/mailman3/venv/bin/activate.fish new file mode 100644 index 0000000..77f8837 --- /dev/null +++ b/mailman3/venv/bin/activate.fish @@ -0,0 +1,76 @@ +# This file must be used using `. bin/activate.fish` *within a running fish ( http://fishshell.com ) session*. +# Do not run it directly. + +function deactivate -d 'Exit virtualenv mode and return to the normal environment.' + # reset old environment variables + if test -n "$_OLD_VIRTUAL_PATH" + set -gx PATH $_OLD_VIRTUAL_PATH + set -e _OLD_VIRTUAL_PATH + end + + if test -n "$_OLD_VIRTUAL_PYTHONHOME" + set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME + set -e _OLD_VIRTUAL_PYTHONHOME + end + + if test -n "$_OLD_FISH_PROMPT_OVERRIDE" + # Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`. + set -l fish_function_path + + # Erase virtualenv's `fish_prompt` and restore the original. + functions -e fish_prompt + functions -c _old_fish_prompt fish_prompt + functions -e _old_fish_prompt + set -e _OLD_FISH_PROMPT_OVERRIDE + end + + set -e VIRTUAL_ENV + + if test "$argv[1]" != 'nondestructive' + # Self-destruct! + functions -e pydoc + functions -e deactivate + end +end + +# Unset irrelevant variables. +deactivate nondestructive + +set -gx VIRTUAL_ENV "/var/mailman3/venv" + +set -gx _OLD_VIRTUAL_PATH $PATH +set -gx PATH "$VIRTUAL_ENV/bin" $PATH + +# Unset `$PYTHONHOME` if set. +if set -q PYTHONHOME + set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME + set -e PYTHONHOME +end + +function pydoc + python -m pydoc $argv +end + +if test -z "$VIRTUAL_ENV_DISABLE_PROMPT" + # Copy the current `fish_prompt` function as `_old_fish_prompt`. + functions -c fish_prompt _old_fish_prompt + + function fish_prompt + # Save the current $status, for fish_prompts that display it. + set -l old_status $status + + # Prompt override provided? + # If not, just prepend the environment name. + if test -n "" + printf '%s%s' "" (set_color normal) + else + printf '%s(%s) ' (set_color normal) (basename "$VIRTUAL_ENV") + end + + # Restore the original $status + echo "exit $old_status" | source + _old_fish_prompt + end + + set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV" +end diff --git a/mailman3/venv/bin/activate_this.py b/mailman3/venv/bin/activate_this.py new file mode 100644 index 0000000..f18193b --- /dev/null +++ b/mailman3/venv/bin/activate_this.py @@ -0,0 +1,34 @@ +"""By using execfile(this_file, dict(__file__=this_file)) you will +activate this virtualenv environment. + +This can be used when you must use an existing Python interpreter, not +the virtualenv bin/python +""" + +try: + __file__ +except NameError: + raise AssertionError( + "You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))") +import sys +import os + +old_os_path = os.environ.get('PATH', '') +os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path +base = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +if sys.platform == 'win32': + site_packages = os.path.join(base, 'Lib', 'site-packages') +else: + site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages') +prev_sys_path = list(sys.path) +import site +site.addsitedir(site_packages) +sys.real_prefix = sys.prefix +sys.prefix = base +# Move the added items to the front of the path: +new_sys_path = [] +for item in list(sys.path): + if item not in prev_sys_path: + new_sys_path.append(item) + sys.path.remove(item) +sys.path[:0] = new_sys_path diff --git a/mailman3/venv/bin/buildout b/mailman3/venv/bin/buildout new file mode 100755 index 0000000..ebbe177 --- /dev/null +++ b/mailman3/venv/bin/buildout @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from zc.buildout.buildout import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/easy_install b/mailman3/venv/bin/easy_install new file mode 100755 index 0000000..8775282 --- /dev/null +++ b/mailman3/venv/bin/easy_install @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from setuptools.command.easy_install import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/easy_install-2.7 b/mailman3/venv/bin/easy_install-2.7 new file mode 100755 index 0000000..8775282 --- /dev/null +++ b/mailman3/venv/bin/easy_install-2.7 @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from setuptools.command.easy_install import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/pip b/mailman3/venv/bin/pip new file mode 100755 index 0000000..aea8ca2 --- /dev/null +++ b/mailman3/venv/bin/pip @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from pip import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/pip2 b/mailman3/venv/bin/pip2 new file mode 100755 index 0000000..aea8ca2 --- /dev/null +++ b/mailman3/venv/bin/pip2 @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from pip import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/pip2.7 b/mailman3/venv/bin/pip2.7 new file mode 100755 index 0000000..aea8ca2 --- /dev/null +++ b/mailman3/venv/bin/pip2.7 @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from pip import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/bin/python b/mailman3/venv/bin/python new file mode 100755 index 0000000000000000000000000000000000000000..36878529d7f50b1cd1f930de93440c0d409190d8 GIT binary patch literal 3802248 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 z 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�#i$N>5B=Z?j_MBG(Gf;@s%vI}JNa~)Yxbt} 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

(rFH2Ev&Sf$EU+v&c@c%#c8 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

+fT9co%^U3<+$YLo~V((!v?oiW3A*6kAK`kCpx} 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

&CGD1wP^ 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

    `V%4l=tBJtyY4JY7xD1-}83`VfR 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

    $B9QH3$pXmZR0#^g<~ z9xf*5NTwX|EOb|8WOvu1Yy>Z#DgT7$o!0Pv$odo@9RfMt zMGo3cz2|cWb+|pG$zoVB%#>&a88pFu6PkLvpWvt!U#0je#aAi5P1X!GIE>V;v}R}l zj*U&-PuNGTjc2!q9*?vsdCP>JkNAZ&CA`Tnp7-7^KAt6$7ABk3P_3F^HL_VLV%5^t z$E7N()|-uYQ}fT-FKYf-?@P@;vyU>oir#YRp`fSATW%jEI$h1+&Ji(uKhzi#{K;H~ zW#lsO`&7}4lBF(B0e?eNJo(WF3Wi3XE=_fLhNkQc?;4s?DB!<4Iz!kP<7`8fvA2ra zd%mPfnF6HLbF9E~th5k9N_}kwzP3{PjgGPc0kl+A!BS5pssNgJ714bIQGEkTyC26X zfF|jRrNITL0%+n@M5mNMX>Xqb`Rgm)=2Ough+ro3sBGuo8MVdM>k`~9SHHfe3t zL4l~FltlW$ID#~yh^HX-?a&knaHz(o1K)eT+LTa@*(!|R6dWd_dMA%ql%$9%(yQQe zQ3tss_PbyjF*#dV0=%n0yDSMh24|JCNhlf@xgBL1XF>Z#OtJu)%(tS^5m#Y~#~$5d zztcS+y1CS~p}@5vIKp9fjY<5t^`qXaTR)1v;IArmjxBJGjep69#4o3&#I6*yz1Z@C zeR_(gvwP|3UGbR(?gPHrr2@_8^X7E;`OZ4NX|?(WguX1z7A#P`V7}^xXQAlsQ5n&D zV$1VA(foK}e(bfxV*iY2MJ&_vLUh*B_D&#luj}QE=-lwP6^XB#f7 zTehQQaOaCa@O2>kHsEjowhsmV2L$E;-9NH@v9xzkLAX4UTHyXoB(+qaKzkm3%Uc#$ z8hl1D&>L>d@BUGHS$^n}mKFBwwnu$eBrbQ(?b;suYp|^8mf+}?*)6Zeo=S}I{k|Y} zS;uU^I|cBJ2I4o0ZzSORtW;6~?-al@8i?O0zL5Z_uDI)#g3daix3BA#(&%n9@s*0N zRD1>EJH5-*>Md)1C(_pXPW%~gTl^XKq}FYLk>Qu~10&o13p88uZH@noR&@6T>^FOk zR(Ou`!Q`NCxbgv$8%+Mti1Sgf45E8M~-7aDOnbIji}1-igiExPKWx72kcdqpqO) zf%d5Yvn?9XG21=Rw#R*mt1$jhbdTqBse6FK8Qq)VIekh`kyCn(F!3R`%M-mj_(IR8 zu~ojgv08Ud=hG<#(TXf_#zwdPH?k$M*1ytf^E)a_?MIahOfIzs{~G8iQ0!jrzAC>` zuesLf!N``QEiZ(-d(RKKnURp2{}ZK-n>_!rM&1zkPbKqmGGoQ=;ib`8{?%@q`!n~J zXgKyz=Uwh8U3+bNPH*noo6@J*9GR;r~6m);eKiOwUGOCJp6gf#-ZUQ(Ffc& zo&LRhwC`^z@l(zlL-)szR&;LYy0jvEr}t2Fihs5Ia|*wfvNP~OscX4?RQ$Isb4pw0 zw1-3~Xqn?27yNO)b5ZxQ#IDGurn@@#*#6bIhpUnAUEjN0w0!Rtw2drn8_5%@N+eKf zd$Cd={w0cl|CWoR6_tp8S?o46gU*XqG+$5v`fmZ+Z;w{EUS8V!RCtMV%9&VrN&MuQ zSfxSqVCR`wX?Tfm5Z60{To387mBsNT)o~##jol{3EvS`>zOk+iw19agCV9@pB0*P& zpl=YFgd~f*OiYIdilxF`Dtory_QQj2h<0OejN%_s=}r8N8(kWw$uZ1^u( zl1u8KD(4j6SaJ?>G&pW^52}m}b`NsJDqS(@TqNk6;&o72QXy9PpOxKxe}T)xxGG~y zAH-JXY7W)p0PCNdC`sk2kjT}NY6jB{URRZ35DxSJ6vaawu(oV#XujBr*M4H1J|20&K zRF+1^cR!XveiVBiipx#L%IM3W=iY*{(ZTzGcpHaK+34^LrAlsT=VDgcM=7^%Hyy3p zO;1)O$+k}^n5$97b4ArSD@_+n4W`q18@iJwZOteG{v~CjpYQP`mK8Yej6R)O;3)HL z^e=NwN3OHBw8vX|3$hK`ka9z4uPgxacDkm!uJ?AjFXRiHl%3Nz_w3@Ln-ZJS^K1t9 zUVP2tUu4habcn8yTd`4AWvjm=bX~SUxJ)qk9AEndpX2L4YesgCy#quIOxp}?=6gZD zX-J7WhqniN_Q$^5>FHk(-N213&^M*p@v)(lp$t`XXbSoT)`FpnFUS_K@^#DwJcUQg zQB~1epwCOmVz4z_=kr~VEojg4PUo9{AThVgsf! z;Yr9(kk#0Kg9pM6csjfX9tFqY2jMs1E8z}!9()v@h@6kqV*eHX1^gvk3cm~I!d>uU z_;q*)?1k@v55NUTD)Jci%kTi$4&MpyhDX9N_yPDo@Gv+CSHhpb6ObPxtFWJgFN8mb zZ-KYL*TDaS?}PsVXTomyZg@X@6Z{?gFuV@_CHxgU4SpZahr8kX;eW%I!>#aa_%M7k zaxU^D_6u+td;*>VzXRvMo$w;~HFz-WfoH-E@b8fn3x5ocNBSW(*lXdR!JomC;jQph@Yiq^{C9W|?1b-v_rf>8XW$j^i*P!8621-I z4(GvPcnSPZ_%hfBSHK71F-RZeaqPdq7s1EjTj96h-@@O*3*cAaOW|gC2K)j1JLDXs z8oLh8fE(f4;T`Y@xCdSa*TX~MHh2zv1Rjf=hx{4)S-3xZ3@(P>gs+Cbf&U0^gfD?z za5=mWz7bBq55X_N7sIFEsqlO7wQvMp3jYiK4eWUQ|zY1r;E$|=U58=^>1$hK}J^U-!2Hyeigs+2p;pOlq_zE}x&xJpN$00vLR+ia6 z)nz_HvY>~hOsw%y)WuC0ByrI&E*-{|L)IznoGxpY1X;$^{g|v};%OJ_p8!@jiE5zz zQ-dd^bgyweN1?;AZcG+5r8sMh6-KbEERq;lX{MwprY3PE(#sO*)j1HtdMF+mup$bS z%Uk>-!%k|lz9~ch*~q^cG+p|}3bK?L;(&DJlaT3zGW1`PrW<87k5O3jk%4+VxAXMm zZtk&vEce;byRm<)Iiq)fUqSS4ZQaPBZljobwF$|cjLIx&3r+G3=sD)8g36pfi;lDB zCbjNI(YhZKXK>zG)l=b_lgN!89v%E+A~!L2v}3taeBfD&CAKMnI>SFH#Wzgu{|YI< zbAjeUO0d}Jp#C3GDw{Ocy}z2(W>DE^WYXB`(M;3rBUt)%`-rkhj%M47to(8`r}7*n zPmc>U>;C!K`xkb;Y2Cjtd;k2-H|OuqUbx>XY+blNTl}Oa{c4ks{F+WaU9>l!145SN z!N#h+Y&lHCgQ7VWnmJ%2hc%f4#i)bB)Tji-tOd=iMvh^rZ(%Z*C}vG(b6JzQ=8x6P zJWkZLgw}Yap?Io{7RD-dKVei(vY~jYj7W@R`%OlR$;@U^b=q%IYhkh-vm9Rm8fD`5 zqnZVh+Cp`njVRgV*%*=`%Bn<9e&^pKb$!Qjr}vJ3A;h%G5;i8)Bw3IaoW>MaGo!(& zU4zKvx=V99n&tM1Bx`t^b7i)`e1U}my8fxRfMqYPcEElpy47017rxm7)&id|8zI3O z3N41R4YJ0^ss-s%efzDtRNsE9T8>XbZoWF!ukTaD;45VPhX1Ugxs%zrbz-%D&$HY; zDO(e{!D)-L6S-Z37Uy6HVd1lu>TOiELEUS@Ckq=d4Gv?O;Bx<>AVropZA)=^+S6q@ zM9;H8OE9#TM;o$=P_r0pzv)zB*>P4FE@zd{aYg?&$zZ?9;O-}+&J_Q$L}p}H$jwPA zPrd)IFSz*s>yroP|JV0_^JQn)Z~Fh{v;P11vNQf~ELMESWicjl6)TsNQn`0kg_ZQm zEXL;n!OoRgg)6gsfh=yMFU<07j5_u9HvSPS2iA&OxRPA1QGC6ZnA5X6e?Es#)RDy_ z&@BFfQ?t4Tl1}Bi3JH}3Rr6IpDpx^w{!zIuLT6$}xqKXTc~*o*xSDw=dc$zQek(KJ zc9fwu=bj122V^_$9Ls}NtK-f%pG~=+k5}?&Gk&o?Z-wO1X=yzD*J}S-&4SbKm7adj zYC9A@nJr+=QB^Ty3w`GJXm04U(6P4Kl){zWs{+%8rbJizZw-Bw_^JD!ULU7ThWk2S zz~pv*zhL<3k%!gSHPN-+`4b*-->J>1q5*Kvzi@P^Ji2y@q8NFa&)Sivc_4z;+Xqd6 z&*f-Qhv#Sds=@*{Kk!o|D*sL6liU}^C&|F)_=Y(q`-TMrw|)4#wwRcfOi{$H?$Cgs=pKxhkKp8)uaM7vc!S23CX1za3js-k~a@)at1TW;?w zht6;)+W4JCn9&Ds7@?{lFTQ}KEQ(xDuKM9ZH;fPrck|2<_T1jH=60U3S$SkHoDDa< zwt?+Le1TFj4;QrG%DPB@3Rju~?khCGC_tJ~B1>`+#X0K9;TY#=m+G`-CCTb23%%?0 zd1eXH3D3Uh-xI4hL>~!lWlHS)_SE`(kj`&4Ko(!(kd>JBiDMa_tz+#I(BdB%1}t{G zG9xrX25zgNg|_fZkP}mybD{^SsW~TSC`&ho+9w#^+zjah6HVuW=kYmsc#baelvY-R z-V|NQf3N$R;ByAbn&=JwiIOG-10T4alcEM^r0ncfQz;`Q$6q9w?6(T$*l$g3`iB}D zj1j}TbMj7Qb8UJ98`vmD7|JymDD zV}pyyn;4HHF+Mmg!#$6cu3du+#y%lQg8a|zu30ozmP@M=oQlW2gypO_l+`vexR;F8 zbj_82gswpboAyLAP<0xH z+v@yv@LA`t;Q`Dss*ucKtYf%0Jk~u=-e9}UV6_=iwP9={6+|~u48PpjkWENZOj9|> z+m+)gb=}3O>AGIvu9VyRjzAT>D}^&%3?*5A&KwWdCFrW$wN#tD-XJVF3Q0B?TU)|b z#+INkp`lj)vZ=hYkgXIw=$ejPhulSvq3a=TzFgOF+r_;Xn%sbi8Lt#ouK}#_|4WKX zmNxqrbwBF6DaCoKW0_-iXiNB^)&uVSJdtwm=V6t5KaZ_^|42E+|4PSXbEUe~-hr6| z=>m0lbMIfmf3OC=Tgu7=DaUK4MN)Jv^Qp|o0BXw-p~9S#C-RRAumrp3!<6G~tK9j8 ztQh5DZO{m*BI+FBYv&&sAcLd#it+KD{i@)1Opd-OZaIPkjYE$UXVEM<^f-Cs{RsC( zQYQGEmf}R`g}ns@g)0M>0`l>xKwqpW&{t{%ZH)!IgHkZMx|DZaO8Gcis_)zg+8RqW zo1o~{>{8y$DV5JPj!oTjho*3+Bj4q+zFLUK`Xl7Ie? z7J#(`A9OvX!RPoMM4+^(f^S_56ia)4*p~#oi8(5LBffWfGWJSSNSy8aHQpTs!KRLxeIkZ>4y^@P~C9bTN z7als-a^}B4tP5y*73i7-^t=MtEI{M$f$p)Q-2sFi1AebK4z1@MpyO*G_;Vm|8PIkN z@IMOpeg$}@0q&~-dyBwKAbbzdDOLF;)prPRzX3Qd2V$u}a|U2LPoSSb7U1e!4>leF zQXAh=e4Bw6Un>y$hvAJ+(!|g|OeMTo5+4EF{{b8~j{<|M2$q$7{{`qg%k5qT=zOYl zo)vc%fX=5%=h5x}=ys}ho`rsBbUsx&&kw!*9MJmcJU{aBC_v}=fz4?Eo#&1E7J-=n zooBhAR7K~>cL<>KsnU63Nd@RU5u7K`Paq4B&J)KGK)NZYoyXUTWpth&_>|6zX)1Ic z>k)v?(*~Ui7Wa204WsWzrSi}ze)dhndM2fcx4HJpPcoh|UdPs-b>)|d^jF+mmy%1P5p5!IygHHJ z8+jG2X*wFf;ogb{oNMWQ8x3HkX$Km>0dqbYKrQ#60rY+|8o(mbK4<_xYjrakz{${p z1~8f{(Ev`1184x}#*JtI`J`rmRjMcxVBdTcfKz578bJH^qXD#aFB-rZ^dK6*Y4iyi zKy8nq0ZiEmG=Mpjd;mS`m-sij(z%vvCMNb_DY3xzF72(7o5ml%%cGr?HeIr&>y4t=D4fDHZ%kbV2cV zKC20kT5lNE8)|jQOk6V&lC+-p)Plrvf1wtH)w+3{{U~u|G zDwY-6!ac|NEql0cr}6|xO8bfLzmIDQQzjwn%5 zEL)DiaDl40f!_!W5g06Rv%sYSnF5yx z3=$XsIAnP+#I6FGGXQrF5Z(+#Rso}suYU#fybA;#w9kfYLx9F3Kxm_62xc_C1RM#EtH$mKVqF7ybEY3!(VlK{B^n4q7tNkX=x7}-myVp48kk2t^aW>-l*5$E! zzV$z~I9o9ii~h;?P55EoH^&7|-`~B)|4#Q~iE4XZqPlwx3qzLW__v+@Q)m-E4|8$+ zg3}N1bDoZO2^R(H+4 zi?ao+IXursR_vbpIKTh$_ziPc?Difwn*3Fm$#QKgbiC~;_g!M!(wr}^&-KgnyxT7` z`bodcma=&Qa|AZ_%k;h6FEjp&ewoha`ek<9KvKsIB=zhed3wLhR2-?;!SyJ?^{P=Q zxW2Amrh9O|OotD?lr;CHq;=Mzb=HYSc~78UX6#4(GF@Z(Wd@e^%j_+K|40yD_RF+= zOHSLjLPbju`k zrxIZ7a5vR-GBmNnr*~7BS?Ib?GruVqFA!{bQA0YRn5L;S8O(o1>t}hH9i#FxeLv32wAJTjx`KI`JZ=zoXH{fB*~r?n zhl;0D^pm_yZ);v=;#gj0;9jaFz57R`&Ckp18iN$Nv+>T(%ZyK?y7%%jW53MH^!z?A zGh`<`!VK0?%QBkrQ^P#cO3AmGK>nPUY5#`W7Lsqj!-uv;THEY;ATM)8=PtY-QY*E& zGvQQfpu?T(kOty=9wx^41=JWIo_p|}$jdzQCHXvgnXT``#Mg2^tuD>Wbj&0YhQw8q z$5BrNE#&{VagL#=bwioj<^%NkITzs9R{gKjtXJowe z^G^&q(K)2{OK4>z{koKV9}}INCKOvGopatu<)2}}JtRhMr9f|9CZp}DMHmZ*j4I<9 zlkwU}d1CU&G-HS8McYH@5+CjQ|H`a9%rst2<>yl-K^)9sU_)MJ^LWxOMqfakE695v zb^V4q8T05C+PED50qP{U_?3B_A2P4eeFXRwW5#HlW^7&Er0gWe)3h=fW?bEjh=<@k zKPHMN@m)sC)$sMSwutiIQO`-3`g#sip2M+=4hK_U<|aT7-Pa=foqvuOP|s<~4kQ0R z84yM>NKfUoLt8>FjHIr-B@ynXFtWE{>uD@5z4AoAa8U1kb%xfDz3-om*>xqzRa-$;`!Mvi3}tp4mdZ&+%hx9rCMg zid6>rE_f}H+PQa#r+g)t+BYs+xS!b|T%`Lx5~txL^Q;>7MX#|OtKsu=jiq%h{4{*D#zN_MsK&CZ z#?rX}wX}v$(KVLSZ`4>~JvA2Z$M|2tPYK^4^gifUpkG#FIZ(sLa^#*GOM3=fL)-L$ zztqMf#D=6cwxS@P)L1-!LDG@0kcp%U)IOa*tR(J7QUPg!g=p@KWy)OJ_6u@DX0%J;K|$M=XuE9VWc+Q64;e)@!dn-WAN?i7WZ8A|E62MPEWT){phFCEwO>r|46#UNqfHPbW3Mt zx@A;4d)%d4-cPsKMyFdM|4z4zN9~Vfq+2GWGx$iKbheLAXOhw_V@PR2JjhX8gcc!; z#%Q`_TzYs14Si1F*~rz%aDsahS%f@*(5Pnt!M=lRL*6AIJHeDAw;&9HZwm4UC=TEmgc<)FP> z4%N%$2)&#`wBJeRNBvIPzC<4HcQSUe-$~bH{Z5{~4_S=7jVvI~QFsyZM`Rna5UJ{S z^0R&?rHVuSPWngoJLx{B-^u7zq%6Vx0Hvtam5%(o-^u38ekXlL`knN?-tVO2DbhZ{ zKZv{!BJ)XGL)xoyCUTah%5^AJE<&kXOj6|%lFGFsRjwMTa=A#A>qM$tAX4R$kjg2a zD(8Hvob;)3)~9+VmZWz~ElF?7FG+XoFG=@2RgxaqRg&(zrzG7ywKq4u|Yt`qkxkiN=WxT z0(8y;qOD^}IK}$HS+xYQ48+)ppFus%@DE58^HU-|KrsS=ZX_ zrs9a0N_crvIcO^Gn@y$pa#M+TRq;9UrG|L|a|AXD)Cp`6*e3WifYI%v~09m&M#=F?Zy9B#XHttvZXj!=5&Z zf+GOtj-pQk%pDmj0OpS37X!>46$}EHJF4IZ9AxgOWZtMOCMLF@Fdg_&SUE%VPeJ)mhA67W0?I z{9*Ty_x&v9FN^tOE^g1NZNCHGSELnZ)kglnJO#39&vazfhA8WyY_uA=pL*`es*RPB z{~O9KCantn=kOlNRw5%P|0edPEaso~tTLvIzazrR4_y76${r#TznRjO1YbKLOQjO0QjpeGIDcbHAt-e^a zZlh>mvuI+X)$pj*w8Cn-H*!Jb>LL9H59>d8O#i{7`VSu4fAF~egE#jd9DM+~z&5z7 z|KOS}{RexW??1R|Ht{s#Q~MA0tm!}4T@J?)PwYSV?*4-h^&cD@-hXgl1^xp5L;t~4 zYM9@DaQ!FvI!Nz7cu)VqAz^0!!QnpmbNvT%8s~Qq=s$RW|G~ah&=U^Bb^Qld&=MEN za`|9~m6~j&x>>3Ft)tzo*tb^fW2^FNtLZVTsl}>$+Nyipiq>1vU##fQR@`aDtF8Dn zD?Z7J?6=~#SB28BGA67Kmik@lJtg~vKv%C|m>Y-Nk zWme(`D{-#X^0MV#Y6X9>0-st9-&%E+Rd=S9j9C7AE&n*nf1Q;aVbyMn{|5eNXnbq)j%m1n6|Jq6xTK>LP@^q^{VflMn^^I12lNG+p3QxDf_gLY}t?+m& zwB8C8TcKC1@Sm)37b|?c<+{#tjkTP+EZ^;xZ<6IpvuaY7Z>Qz^%5wcCb6LO5d7JS$ z#%3E^YwQhUn~ZHWw%gctW4nxbMi_7UxA981ad)%v#(B1XXWV;(@#;awn?lBe{ft*u z*!~~ef3*E4+kds{KeG}Ct@fbxtW|fDvCng|tkSkY6h&^=cCe9M=#eC=#PbW`nrtiUUrVxJYd z+p7K23QVMM_^=fkY(-*L=wc?mcB>V*oot0=g)X!r5i4{N+1N>SZ*u}9^}LnLvf36} zZL_Sl{rU8%b*q(FYBj{HHCFxSR;T7Jv&XITC;tE$qf8f3X@t;!SfzqaP*e=QS~Sf=YKu}s%fVwtX|#4=q^iDkN; z63cWwC6?)WN-Wd$lvt+gDY49~r^GU|o)XKnX9!tS4O8Q(~D}Pl;t_J+Ysz zr^GU|p4ea46RztC*Y$+!dcuD-&8|FbyRKvMKig%O?Y|gzH`*Sz;=h;YczU(o-|(8a z??26%&kOtrLwOaF?3(+qY~F@vyP^_O!LYbKd07#@|CvfVG--f%g-_O$c+8vdbQ0;!%$>rvVZ%Wkmh<5Q* zHyKZ_=oeKlgywLNv!xWiB0RG^=V*q+uB2#ui;GtC`>p3hXiv*`HZ$Gzer9@-+R4k{HlRlGMz{gS!%eUa{sA%gJ~O>701*gM zJ`GNRL68kIUHwQvv)z|Zg#9D*M+)BUv8Ph0%=!)V~#{@HLh{0i)| z18d4mul)u};h&VdLM9A^lgVudnp{g$Yj?v=*ahq11NaCw!Up(|rpge!2jr7%Pm)hk zH%XnOZ2uHC!)LGs-h>i(3*LdX@GdYt$&XV5}0vE%jFa#LShBF}-&H|>m;T$*{&VX#NU;y-o9Ow(D z1Iwb}FVHVDJ+u;50PPPk9wFKiqK_f^8m1j#+QFvqjij!Fac~1%5A%Q(5PA+4LXdiW z@XLVahGxRGa1~qwG$lkcLNql*vl|(PMy9iIKQJtfzeAYCpNZGQTquI4VLaRfQ(ywz z3b(;%;Mk30fpb;Rz6#=sX+WKdJ76MAhDpFVD>!Eb-K$_)Du%;Q7z0p$pwc4`v+MXL6%aG@eGz_rXRw7&P)%`-2mMS z(9OU$_ym4{-E4mZUI12jfE60Z1G*4kcmm9JU@E7&0j`Hz;6}I!Ziex|^flZLcL4h~ zTm#p_Xc!CE0arxBtuO&@gAs5QjDb;bHH?JIf#x?{33RDp7+jH=9_b5oJ3^gEHb{xwtx^ds^p(B|-uz&M2iz*vQUf`0>J6W#^; zpcKA=e`cn~>2sX^$7cik#~IW3bhrx`<2dJzbIiu$@G8I?j^drb0T;mqK)>VkH_oz& zuLI5(-$dOeppEe!cnX@KJu^MZxuT43^Z{U*M_Ja`9_K&ZH5?BV$K@o6+iN6R; zM|=gm1gqgSSOc%a5_krlhi8Fli!bG7%&>)+su1lD)qo#rp&Smv0bpuEKLXPfVv0gc zZ^#8sV6}(71EwXpNsum8({}*28P+i5W5&Q=U<>NoCT*r4h)0=K$D!TX6FK!4V@tqIKHz7bca*m zB)A3WhVypl1gvuBiI4$lKzk3fv<|mG3X;$Yw6m2dZ)G}LBTxlFVES9b5aOxtF?a|* z1g5E#A#CM5trK7o%!RGMG__p|Gl8LQ9R(wScD2&JR<^a?3>U!pFcgNsg)o@5aNffK zI0BsaFzq=^8xF@H3UOeJ4>v<2)IuGwOb`DC_3%5;hr>Rg4~M-_4UF|+mgr#*xS;|n zxwD=QjC)`JWWyPd1O35*Gl97Y41zvzD*Ofd0rM2d1?C{Y90qzrPv`~AO`scO!O6gU z1y0IL_uiJ7&QN(-!Cr>YTL{m>(#-UlC*fh(0_3Z%gb{ER+q(kO>gDuarnQ>p)=a}M zW&1fm6RT#!a5xVx=JlLu_54Ci^E`Cba~SA$)i(GNzJ~4a73_o^um}DH3|G}&_y>Fr zw7KdF*bSxd4SWhL=c>!PNa5)SG+UvXm=%7wET>rQ|#x=(F>$EW3+OR0YcsZ_@V|qEJm-+O5 z3g5v$p$4jevG9g~<9j)_mo|B6iXFH-F=-Q6F9Ap zY4tIszU$yhpbNgku$|?76lkWeCopY32XrFG@YgUUHB40vQ&PiJ)G#fvJ0K74f=Mt9 zrox>t9s0u=z>von`WRCZV~S#z1IsAJG{jB?rY^=*#QFi#5X*v-p*Qq`Q-C(rE`a&) z2rPt$;6Zp8{syCAB#eP;;cl1(1&|NJVJOhv+NdG7On@zHpX#d96v@|Vxxfb#b{gX3SbUmjD3vu1euc{ z^AkJ~GU0gm6Lf_WSUSu{AVu5>n2#Xy5=mX|z_JRoK^&N)Knrj=1sb6V81Df6 z4siYe=MT`X0Ot?TrU2~>FfRe-BXB-227!yC7XAi*<9Y)Jm+Wgik;1?el|}D**u74a~sL#$s(KEL^ik3Y+kXm`A{S~x-Ie- z{{02A1N<)_iGzq|jYtmCcpS1BqQyvTG1B&-$TdjwIK(|f+;rz8xHdPvjpM~0VB4QLM^BFVCGlMxa~tRAPF$3m9vG9G&VMmZ)i59Kr0Ngw zFPd~e&A9_OY&e_UId#ax?%&d+{WNJ>E*~$@q)s#;3wqO}ku+%)aW@W6lfBP_o93Ja zY-^2hE}9TLkut*&mF98I_-u~7hj=(mqTaCF^wcvH=jEoap;Zh{MHgDto}0dd265tK zj7AOQ0H*?D5vt}OG`uO3s$bJ6cJt)WkO9z_hV9Hvr_G6j9P~qmYD+G!ZM0zlFsyCl zVvE^!Qf@kN(wwUpr$-^m`8j@qsR*;bkAAki%2`%3Mof|SU$ljNoz!oAn)Y1Cwsgve zIp!c@x*ca=LVu$z)D2vcn?5Qxy^>Sce**8)ocH0KTs}0VIk(d-P806O?wmGM!S3wV zIE5x%N^|I#n`uvU2f7dr&?K7H%$NsX$>nj8CT-;OGF6^cT(J%@dRRx#&ZTHvJB&Jnb1D=oX6Z5fp5Mf5V_=^T>L2|Y)v zSQi0$JeK9bS%UerY#q=_mk%mw87)ZC!6cms=WvMLz+i;D9OirAbd4Ok;(eAC1MXp4 zf`LuYln8U{J50>}!S`5O%#*i?rcic{VGs%T}9-) zkO<*h#P<^+Y`s#pUP>LN#Q1N10zd|l+II=hH}0a@hm9){I|p+4kXx5T5vne zf`uHG=GQ{w6nL(PSM?$XEr`$+|NR^y&MueXXRte+3bhqEIHJ3p^aB*xBRqhvbEu>3l$Fju{9`n5 zoo5HmKdLkBj2$@tsJ+Y1*n#s8Ur#$DLDPihmsUPI)Un7|sMPpeV@3{zz@$JI`ub+HFd^+1BtJF~Tzbnh0U>P9s9NyeAPM zM3XzU%0Z0tZRw_Q@}22@Y&trWJi^y;rxGFjAV81^A*z(9QX+S!ujHHH#wq_Sg`e5- zQ`>%i0)&zsaNjsdzb>w(CHdAkcO$+Xu3sM~_@&RWoC&!vI9{icsD2TBk?g`3)A7!Z z7dw5#AEG8<2a*XlYZ>FK&QB5}`o;BM+|~MRbiTuGLd`bHH_l1nTCVcwSIEg|)Y(z{ zo?SidzoBMLOWAB%Uwfuc#!QW`YX4bFYD~ikT8XJJ0bewi@5LiT*E!#kSd3|k=oqPK zsiW0oI$B+!^`&;xV)jHB&DV$!Cbfj9wPdKHQvNhh^F2to0tt;r0&@}Hi89M5?MaBp zs)+4uJ&#yTN-PB_VNz-wiT$dcW;7(^sTTg6isd|h>Nu-Y+9b&P06^KDuf zr8-u1oNj2?tcB=h#vWITn|ks2S|v4IldW6T+D=f5U2bfqn%gAZ-L#aLV{D()OXqHArkR61V~JtP#mU5(kk(umk)rAjufA z2i!wM{)#k@Ln^u;&ha7(khEdQHrNl5ok(>bq-F~uN0-fGU=)l6IYg~&a4kogGLiUN ziCX>3t7hoYF*%^SpUBBbVhIv(BB>R!rQ#YrN5yD4PD&5LJ~W`}3T;N)%l_rwxeaR> ziHlUe0`{feGw}jz^YdG3sm|ep7me2z@xrFw^ zB67|Wh8%JzAA|uVjzcAm9VLu-2?Gw(N*tVOTZv{%F)|`^8*(F(POS0Z5$=XzswY4N`cS+XvlB`_=#D@2Hp3y<0sEn1+JNyH?G@uQs@mIL9-q;+s^XUM85bFATQyrUYel3=?N{UD z-p1|Y+m?=RSQFh98O7<<=BUnAU90+r>L%5#s=HOUtL_qYY*vjHt2G{{7F?)Svqi1C zkD7CVTHppXkDl65Z+1VVxgDzh7u5EsCJw44V`}?Vx2Z;Us#SDR^W>~(jF9Tq6z&nn!Ec-S<1l&)o2Ta)v68EzS4?Ye5ExLZ|phQy%To8cG%T( zGT)S$?E4!mfJLwb9*2iu89WR{@LbQyp)X+*Z0R}Ke;Z7PJ9|#9+TU~Xk*;tu@h?zD z{)wKG8}26FSD4{X7G|{FS(p)dx-i4Fx6m=Hke9jWKMNgW3b|nvIz|;b>dt8!Tj&Tb zirl3-)8{XAkVx$*bc`!>Y%X*hsCfzrjVxr?!68v_VIkuS8>JLmT<8egsL^BL*~B*# za?^m*q?A|!g%SmiNFC1_cvGUpK{zB^4i!3fNK+)6jDgmq3EK)C`wJblX(=?avyeF} zbkuw%)oMPI9c#7}I@Zv~8Jt(fOAq~&1fYRvyp zAu|qB7+37rT+FSxm=Q1L)?DlevL(2%m|HWPQOtMimAW zI|2)e9ft^)6gzelJN%vDgwz?mM1l`WQp|B?+i1j7 zhS1zI>n=xJlaST$I#g9?-LF*}s*4%V;;cEvS+k3?))r^IQJl4@IBRQh*6!l0?ZsKU zifi{))gy`Z2rmFAzm~TCN=Nji#^XfWK2*I%G`3iEwrJo6QFlMplSLCtR2QiZ5IrPP zvqf}`NW&wdO_^5?#e8K_a4i>gE)d;+Wu$ZTrMj(Zwe!>(F1xaO>Z_({qH{zzdFreE zS7!KIqW^I(8MwtUH+mVmNOf-Xag9aiMrG?F)w%Ie606P)-X^i?+}5oUtIlmZL1NXp z-cu!3og27RV%51V>m^p5d$)ulbKSp5s5&?BgT$(HlY=Byo$DVcvFcp^LmG?DZ7h;l zb#CZ6iB;!10}`w9!$cCR&W&`HSaoj27>QNqHl$0eI(M9eNO)G%KX6OGqeBs@@*;vT z68*-4+5RL^y>6RJRJj;w=gj@ue@0Tzh&(@V%gXSqrYg0-18UM&lHP6uw{(x5gGj!6 z%_~SlMuS7LgQFLPPY9pwh+d#p^NLzzy;^9c+78u2s%?GL++V0gA5jZlZ;~OkicV^- zbJgn2p(-b8X^g7>Ikomb)Z$mF#qLq_HK`?ICOKKHC8!oJP)qbsOHNgbUKmbj5ZPb{ zp_lET?i@P^9q) z_d#jTN1GPFe0Tr~dOlh|1MY-rFdb&WRG0$y^n5gRISlPNA$UGq(sKgeYMoH^ZO;k3 zZcpHKdxCo#?1J6!WzPw`eoyc%rOpBT8F&O1Ljla|IU(xoIU%$aKBdl2_~*cJ_#){9 z{~a)u{2}~Sm;rb7oZ!6^W|IE_z9*gr_rPq(gS)ABwC9An<9beTr9(!~39Yr@qyDdK zdkhx;>BQgS&;a%D2mB7d!4Zf-6e19Y5CkCrb>N3u@Ieh!gBPm618%5<3UGlF4#ThT z3;YLuhJV9P@FN_8gKz-K;Ro0c-$NOE2j9Xz*b95$Ur-AFgl}Ls?1HahC+vW)U^{Gs zFJUWu0snx{;WO9*pTcI?1fRgi@DXf;4`BnWhY#R=cn{u%b?^?Xg}0#u-hww_4ZH!b z!)ka9UWHDfs4YOb-+yyh>PM8kUU@A<3 z$uJ4-fIOH8x5EUu4Q_>7;AR*PH^Gf?16&W+!8jNTW8hjC4cEXZ7ztOy2)GKagyC=n z41>#IC|m}Y!VtIwE{4Hy5nKot!1?f3I1kQ+bKq<^3kHD&XF@IvgaMEP{oxGAhST9R z=m&p+zHln^f!@#ydcrA?1t-Hv&;zI3E54na~9~Lk6Tn8gv2&9QUUa zj~s;*v_lfwpcN9(0?p6_jSzgtPz4@v zLnTyz3!HEmeuZD)KkzgB8-9Wx;Sd~z15ge>z<&51%HTWr7WTnj*aQE9Qurr)1G`}t zd<{Ec2YdzFVH1`ol5um~2y0(b!C!#pT}xo|(sf&1WI$cNc*58Ms2U?$uJ zGvH2`4%1*NOo7QT3GRSAm8 z@hNJF&(s>;)om3UwdA~0&2y0{xz)~$Hmlnfd0k84PHKUCwVIdJ&h&q)Zkv0smTK=; z^KDk63(^eFY&A|?pVGGZS|&O;g&4bIy=O*NcXiBkHUG7T+L>7LIVmKcGx60LKZW{t zO5VRy^8THY_wST^@=2}#q}G2@>pv-ZcTdT?drIEjQ}XVflJ{IMdC&Ed_gpV|&-Gfr zx7P2i^?Pgm-jc6)Tk;ieOTOZ5$ydBBdH+|E_kSgM|5uXte=IE&0ULl27c?c$dV@ z`4TthYyK(CKP7RjK;l?|#J&q8_FW)xbc@8%Ehd)ZN4LoF<8jHywF zuleIOf4t;_w@N;EtK@^XNfcxK4fBT z^Fy-dy^_9HvUM9ItlJ>5vrJ-VnZ)961&(s=+U_kX;*NqfSU?(gOZ+%Hrq#= z1CF+jH`>%5ZC4&`>UvJ=RCT$IkZ*5CH1k+g-J?_DBRM2NwA>CFf3t(cCmov(+JSv2 zy(oNpk6oM2Img1`$D%;#v2f;ptID+~my+3=!0bz)d*Wt40<#x^?!zTw_8~C)5a>R* z*@wXFLtysF>ewf%V;?RoX@MuJV;{M~?2PWi$}OF7Lb&6W!ZrqR9BXr z(3-MR34ZSk$0Nra%v57hNs)!3TXEfto9zT070hAeej|Ix{l<2#bBVao z7}F!jjm8wU+Gu+wbsY^q_M+ObNWq(0~PCyQv|QC<)voybUISn}iOP zRFR<)mk|+{F4=Bsat%mXnkdfQt?@TINPJ=k(Ss5&@#f}Apf^`$-XsV#!IYZ>fhK66 zNf2m)2ATwcCg$1Yd8WA3E-p1imbIx)U=H|^ov8W9Bv_uN20_OemdY)d6X=TwZeBzP z^fdza>5Cd|vV)K8fMb}9c2({H(p7QosvT%TyDACks1( z2=Tx6sGD(?-(NT5T)$rzKTmFQ7A^zsbyCYj$8sH88L*DfzRcwcGQH8r^oPTlVbVa3 z!o9O&X5>jk$A_+%D_J^cj-k=9&Gtb^+NaP+hfpIOcoXRuai2A(W$20Qoc(ep17u!< zOe9;0SpD|Y$OF^=g!cCT?rq<}n9YvWMJNLzJK3S^Bm-}nVWML>Gjg(3PboKZvon!> z8WYJL8kvz`+1r~n(w#LjoAoAd4rGV2zue(XD>TwZ%DvlE)JPAckvS0IQZpeYl710& zbkPpw;Dq+UO(Z!IW@ibss}krrSSn^VB(OJeRGml}^^V+9VmXxD^37I_bPsvKF!eMt zEhe;w&_uGcM#nbWV@C)1OVYS<#1FX5x9mC1%pE-y0KsV7N6X;xPiXPje zZ&reIlw;XrsH;os$%~fRR|ifn8l4l}s_oG6*LoeRh+fL#FndTOz11C9107AW19|i? zDaP5ZWez4yq9GhiA_jzRXr#l`(F^-9HLq7@r~VwxsalpHFFCa<|6einrX*9Ji-zQr zpx!lai2CX@zfshc(ERJFt5X|YEnR!Z9`?OFgcWc_YDDVlK{aCsRl5dNzdES8Xi)W2 zgQ_1KRDIu|>gj{3ZyQuIW>C!)gK91uRCDH_n!gOH=`pCLbM2AF$8xS|-C+E#V}bn3 zdwbhv3FYU|lif}HRnwsXz0YbW9nkw+qi}bhS?WFvIeDwt_D@TghyI382 zSPK&?>&CX-Qa9EWsT+HdNMa=&Yr6%}E~d3^NMlCQWG>RGN2axIPGii|n1D1HpENq3 zM!(af%W3C|n2x5I-=|NzWJp?SXW6sp5G+R%mm1<+ zVd|XJA@9H)@}AF;{JVt7znfUyfoJU52N$`*0i=DE?7Of2<0H)_2s&1Y#oOY>Qh zm*+#rQpw8Q-XV`F4tZ8|$WxRGIsLGs=P$=Ar|45;L5KGOOh>3R1{ zKCxf&iT#pK?3cV}x#T^|CGS}-dCzjmJN4sar+%F5ERejjK=P??q<-ofsh|2r@~Lkm zA73o__+rV&7fU|ASn`b?$v1i=-{_Hiqet?!#geZrmV9lo%T^?f-i=|HLE8{~6DRBG$fC@OjVbQP8S zOnJOVC6@OD4!LbRM$17)Q&(PcI+pUWm>MS5#n}=5H>-=-PU||>n1idI*~2-(^=)8( zRjPoixq!bAQE zPC?e3f~?sES!)Zj-YCf0RFJi`AZvF)*7ky|T?MV13#vyJaJ?6Btru|37jWMwkjuP) z?^+BKY5zgA?R(MI^F+srG>sE&94XpREjmUd_JnE=(bq-37C9)QJJek+VePx3t3~#S zc*;aai5xyGT49O0UQ?YU>U^uQ#)C6I516mb75hz}&-J0UcduMyE$zN$xK z`9cegO_Rp*eHYH1rj6xGPBfN3x+x-!MQLoBG&W5dnqOF#JrGivNfhoQ#pe)df%d>D9oP@PRU$n_4vSoeR7h(NPUTN3@W&OV4%R<- zF_mBapUO|~-;PxMTcVqg;1H3EMFu18Z;-0*5a076&x$M&d0gaSk%b~ph%84!I}ra& zr0S4Fd5AY(isi_Wo=9t*6n{n9`XSM$5YKUl|4F3bK4ciA!pJsojX;_tGH0bz*b?;S|gii{~}yPa$Pgdqh#4=D&QEJ!+@EpVMY zq`mxy{Ut^3UP zdD{@-vJ2ANcMcPMYpm!8V?>vZ6WumSbbsQY*sF;tV!IOE#QxE;UTj74JhA1m#bU*= z1!8Zv}^`}c{x>Azp>OaDNzm9^iCeO9|h?7><+@F%s8 zNNHVdf!MSAMc4Zdi@oSuC06FUPHcm(r`WqSTg1MqnI`sz_j$3c-c!YvRm~QA&Z8&T z>zOE}5_h@SzwQ=&!hM|B3l-Ymhh07?t#N4wUUzBJw>Wj|9&zd@Z*ra@RX#kbGqd{W zX@M!?Riykv5BphTy{a|@%G!JbPS&m4M_U7y0^q`b$uhokg@6J z)H&+oL(P)BDao|VXumPef|}8OgUIzR=6OatQ$M4fQJc{|w*G4|u8JA$*NTkRBaEty zNMWSN)gmKW^*mQee5J_nxJ&Gc)ahc(_$WCCZjpP1Y#mRXe$ z>oP*Lvq(l&A2A*OG>JO74z+1h9LA1oySVXQHYAU_eiBQGw97~&lP&+2LYqjdNQ;P! zZ?Z|GF;OfgQcV_cC^ zMf!vFHrC5nPh+PT%QAMdv6GDTFxJi3pN(}jc7n0vjr~b2DMMK?Gx=M}Cx2-&a<=i7 zl__7_xi_YKm&}3Luom8cO|TVq!*$Z*8viD;2k~BmROcd1J|x%|d8Ymy z^fA>}R2vr=+oYG#>_ZVY9?7$r`0qwLi90}j%W;vgMKchHU)%Z{*d@3D}dsVL%j4NIT# zUx0fu=SXRZXw%!XH6z-3(PPbzYtFd)TIsd>TF(e$SEp9=AZl2miO}zAo=n@^jao~G z$bD_&-j2$e@MPM?BBPoolLdx1z1?Vrk{wJyMH93=VF$tQj%{L<>CTNTDuTp_#*Nys zswW%w5Geu&-jH6dUPF3$o*dGv8R|9<>GfFMCboz)E>hhn8j1|* z75OQ-3q6&3x3S-nA-z)Fq3@7h@w0~Xau1cQ&Iv<&qpEX|%3CG6T;vR-rAE#BFmd7v zr1pB*^jD;LDw6s$(suI@|FV|y4F5OA&S`jC1J7JLXe-ikTW>Yjmud~qtHpm(bN`?= zLN#eBdRP;2|U{~`@q-c)P-Sj~H(DSe`rTxyaB)at)h zYnZ3j_Iu<$6FjEo`%SI+L}P_&mCb6&WorJx?z=RoxXqN~YQEuWk-=(p*Caz4G`^%3 z&sD2>N-eGZKkBYX(lly7-Igigy^dip7TSM6lGBmKkx1)#$QY=w5a(NnXCM-LLZk;$ z`!4c2d<_R7^gI%9A)}z~awK{kvKsb*rwnmtBdKSQroBi*HR5`$jW13@-ML8XdC2Qf zc?z-`B2OSkr9$nyNc#`S*DwweKO&woq`I%jsmMNPlhh~(xDY+VK?3*bNZsW~RRuBz z#zN&uNUVoQCKB8zxn4-)NRduR)drFENbo@=h|Q#({qy;%!2r zU67_%M3y6-iO47^RU-Z+NOYML<08)^ZRa7eqex}1^H1XsS&D2D@r)2{+!Mdhk@^-% zRv__NNMg6-{)N=OjKrQp8h$|Be;`dYNJOH@MkIU-68s*C-H%ibMCwkLTwlc3h}0}b zJmV0T9Jw)p97#j!S0iIMH|yQP*pTZF}fR#u4Czw=IK$46sC#)=FRNqsLm zPNeQh)ccK8@O~pTyx&L_?>Ab<`;AocextS8e4`K{BmUh;av9eL5OQR((oT7 zB3nbU?~%?(Qv;IfA`(ODmLsk$63LNM-y^;;NMJV7+(~i=k@^ux<&{X?mm-gdyoI#? zilok!;=K~>M4DcdNZQSuOqQ^B(e<&ZA1chAg&N1$CdOj7z<-y9E^gaLy;yvx#EXH>ZbBJ zFfs>b!&-O)Ho;cd4clQ?>&5BAU@VM*aWD#Ei$yL+HbZoq$O9smiF83CJ4GH987a~g z2?vlp67)er5`~@)198w|8b@@c(q%Jw3Yq`j?h;xC+DY5F*#g5bmYRS9R z;*-@9pQ<&iQ*(vXoYPJ62{q4oCRw2t^{Pc)QwuxP0<+a>R;slhRP*mM$qj0?_o(?c zsd;}?^UM;fnK(r3k~yk+s7uyr>=~g}si&4Vj9TQe+-&8IoPUuc^&XPUN8%wQaTU_A z4sjhpocBxdDa3Q36f2Qv6B2m~2|JL$Y^3@MB()py??Y-nL~7?CKH1>?5%JvXUvvp6 z?$=0V1wxZh_P=DUe-ZDSFA4AA>2Qxc8SasX!aed(xQBJPGdM zNpKHOf_og}U^P@#AUyW%;fZh$pY$U_^@~iqu`J^v-?U51_>rD6ex#?&vAK*Zw~TAEj309-kH&qQj3@6l?wMu0=1JpGukpZayS&uizQOjD#v231 zQ+B@nfGH>X8;?)6%b(iihm3p9Gwz&bZ$I5GSJ>No+n%A$lZ14WPg>L;j{Up+uwxh; z9g3u;O4LK5XCyjFqOeFEG8URzk#SJ>Br*nKN0Cub*$atoLtM{_+$~ao#CMCV5m|(^ z%|v1g5YI%Bo=9SfNI%4VD&pUVGzO653K7{FyiY_<6ud^{1tcI%3LHkleUOI1i1R(f zCB=&O5ua?0Jc`szL!5FbZ<9pQc<(BtY8TS5uKn=QE;qVAer#v{Ggs8^NwYoj^0DBV zEAk)PS-XdfZ%Y0%zG)I-`4nsS#Qy2`%577O+ol+|O)+kpV%#>xxNVAY+tlO}YTPz8 zS)s;lQ%c-6#kg&XaoZH*wkgJKQ;gfDCO4>Y+msTwO)+kpV%#<{?w6u^4DOc_zoE)q zQwrQQ#pJH3&Rz4Lb!TXQFzF8_{lTO^nDhs81=XZKlB7SF^apctR80DVNq?~Laca^Z zO41)pIwB=Hf=SacX?oom(sWd-OVf#IIx0=ar0JM8UECcw|6@nptYN6DhtX76Q)4t` zbgX8^sn)I64Qh3>j-H?;wYpiUke1Xa{b)*Jlxj^$j8fc`#3%*Tn#OBVt!`HP&stKW z%3&?3QK~T|vAS7xA81L9ZJW(DF-p~HO$UvYo8&XbsxViNlvv%YrhjNjjZiBbB{ zl#Hboo8)#)raY#!POa`?wfd22&BtM`9%{7Z8ZD{S&5D(1NsT_-rzJIN%I>tx93|zZ zMDj#qmBzZ5Dq=LSP)lkIof%y<_H&w=Vw`A-T5^Z)gseF*8`i=bunD%pZrBdHd?&DQ zkje_g-H0^)O=J(^y#}eyMVfp_urI>8Liyww<%2;~K6w`7vp`HfdB)_EXG}hM#^g=4 z?*x8Lu%T3~_6{|7o7iLSL}^Cb%cZ=!mh$S#FLjl2_bqjd;m5v?mO4h2awjcyj4kDt zlu8}rO8KEXelx6;7hw6>uu@)t<(I?c*TLW#`GGK)Ex!>~$_p`^%CrAjN}E0!QhLb{`Telci$oIZOL^Vx zmNBeb#{9l2$yy2He$VCNYebGXL?fTX)5Jr=MQh&gmT{CFj-CKr`=&C~nrBHJ%JJWg z>0u~y9P~&hdvh$H<;W&AuPNP|cW>S(Nob`%5gp$*d05RfhjRGTyr#XHs_v!cdAeIh zDh^xW%f3x7sd@M3#cw9s44?M3t;Me;-SDZjh)vNpV-Ki#o75^#!#;)&U>Pj$t6QES zT#}zsd&T{!l=6bLbp>KRyHr&}FbDGB3K-ru(v0OmSLgzn&RiMYRAw|~JU^9LnaZzB zsraQ4nWXYfWsNdhr~glm!A_-h<1-Rqx{}pU1x|3~t1)iRQu+>Vg9$RZXuML*Ohj8t zw~V$#ep^B&QG?2f60}a&EgZe=NPe3bCuyUHiG#2YzKu@qJ3lXcnH|a?X-=lg1e{cZ z#^X8y$A9a`XWPj*=hJF&TA%^bq8@v*BX}z>%=*w|lvSlcWTzb*+Y}Dwg)i+$R@g!C z1v~IJ=gF|@zTW5UK$ebXDj&}~))1Nd1j{BN=ab&x2 zcFXvzueAKL{LcdU`2ohQxd)uY=r{b5C-XrplZu7*sMXMNO0r_HQQb0{l28vU54m`n z_Vta^C^5Y}3BrA(+&bNCt}8GuYq@D9yacqp=|;FoRuVctFS4#9c(<<|%eBEaS(KRR zlL@q2gbXR#@Qd`4z$`?9=pijff7FvwW{s1Ui55F{hR8@w$h?!Ue9YLwZhZO(4moT* z1xIOM;!qx^)3C$kRz~9J@t$FMo>dx4n@P#VCe}Gm?p;LE39+)g{Tj$cK)KCtmu2uN z%i_T7bwMPPjmc<>x$>kB5;62*9m7s+#$SR;-6q$ClvopD_v8&TL0(>!*}|N&&}A;z z-e3;cu&?6`4G-kW@UW@=Lp3wHlw&XF)o;qPyC_!?IT>-W0%P-ZJ|)pP&mI!H;r2b3 zO|rr;S%zX}K@#oIvMf9bHD)|z{ZaBZ=T(~Xc`GzgHBL<~J~oe1tz`ZvR4&SsD<^(5 zU#BoZ*xEWhF3v49-jW}0iM#W4tmKe?{J+d^WVltuxkhDm+e7QmHw6wONf~Bo#;?H5 zJ-%LV&N}S*eYx1;`P!mt)z$Q?Yks_Im=}k57s!CldRu5XrN zct9@-G4{peiooPXhsm5^(R?*&6D65-jA^a^1Xzak8~e&~!sNJ^tUD~yPfe!2o~amv z&0)FMU(+q)2%Chl49s8|yx+&Hb7?*>~14)dRPcvFy)I4(< z0*{_aF5?4zLwoZAcS#_xk_U8A9q8-l<>^3QUr*7REvnk4YCWdR?t#8?A)^~rmxxx~ zEb3v+9FVC$p!a2z2|*{x{Q>8d^*~?eSqyMz=)yGMQRXtrdXxvTXe%&V(L}x)7x}Se zAB|Fo=@N{_TBmCv1<$Nc|aUQ3R_iY_qwFVIR0w0&~>lO-IT z3R7SbOwL#9LYSG)a!z%&oynJF5KV*hiY+~`PQX-0^`$35Z{z}uwA2--^RgS^0+c(c zJnYiGVX7T3P9)~%$+FNuUPTGyc~y*&7qcH131!)dvDh$qM8V{B1(WrL*~gOSDJgZ$ zv!gXymP?Q{U6SjS$XqW3varN{lb1{r$Z8^zkrQK(#OS`5Ia}0`$BT~XlHEVKuBl+} z9Cn)$%SV#t>77X4L}0S?FkU3&WkDhy+;7Q~2ab+{+?OQYVC=&@JF<81m?Ow7lv>24Y zfw^lCFkN;PnI#f(!HBgPOKNu{!Bk<9uR9VlCnW4~Cz1ij0xQ(KFLYG&K9(oX{A`k! zlyIGCLhE$X(7FQSGD6`xd7=#qEbMSizA>t3Q8#+oz{H0upfbP1D(x5VJ!Bu&dvW+- zdFcxO4ekS$fV`!U=Xkk?g}C#|tt#|3%!FC_YEuZO%8sEMVFa+4LRZR_h00}zITwiK zn@#y7=F6f8UD-NaQ&RT|-QxktnKUlNCrjT?`fK$2zmnC zErRqkSP2Ym@I^T$Dhn(4q6|im#s#mGhl}79&>wQ_sg=N;XQnxr&4x4dnipevie>8j z5Xn`H$-P`(ONjM+XXu4YNfxD8bKZQpZ0_rqM7 zAynS;VzLt^iyvc_P@Y9lc@n`m6e=h2&uyKqhZspbs;|5RVKUR0tT+Ftx&l8N_jk+i zrC=2>zVbR+^MNcC`Ou{118D#%kGf)W)z+xW!yY+V!*fF{H zV)8_fF*K;&U#sb7brx`ZS&H6fdH(Y@=X;y~_bFWyo>%fcuh{nj?{Cx!1NTO69r%E* zc`KzEsNC_q|AAjL@k?L%bc2F?EP=^;a7ES05nT{Q2^@>HQuy!bkbBjT+Ep?|OJ1Uid%u?gKiCYg_O>AiyAzb8KitDsm1c z=Zwio7QNdink0saOb6^<;vvxQw_`o>(-nifc zpHEaUpYQTX5X2~hQoxJ{eHa(?!GHQVS?WyvczMB&A1}Re<1MwuS!y}vl--af<0M;p zd8YnVFH-m2@@<4Aoz4VWI) zK2@!J8DrOeP+o)VsAOpD-y`I}ydm;N5>ywpP!rXm$)Y97+aAqw73H6N*pV-6H1e+v z(x|s}=>*yL3#&$MtEqKOBd-N%)~iN7?Aeny2^#s3r1@P%c?Gf~i6!N2hy|VcV@?TeBx~wn%>Avdi z%b!W|ABUl+ftuq~qtUH~>h^#8^shv}47i>@!}HH4L-2P--h#7p&E*qpcCL*oT4&gs zBdQ7Qry9McYHYEpiK?KQjl5)L=d#YQH%C+x+D|olP1V?9RTEV~HP#s&<@_TOL;Fe8 zYf7}mN{p%?(JS!~ajuFRRkY5qH%C+x+D|olP1V?9RTEV~HC~DP)pI3oRDGT+JJuui zM|jud5l2*iSIF?yzV(P|Li?#kuc;batZJevsKzTaLoTo4Mn}w)KThN#YTtT9HG0mn zi64g8>!7+U8Zt}M<>@MJbVPI3)78H9i2ZQjDeGL@5>DQzdW+Nzq#IlJ?{4kCyY*Ur z*8k+oPG~Y28`yVk$EiGO#K z6@~|vr4cS{(k)w0O(P1Uok9eg&kte9QQAO*FtmdhsAV=&6j-)#dL{*pjX#_9Z zLV31|Ucu?A%KWG0_62q%w5#gyfQ(%YEI2i*>t%~l>((pWO||ttWq5^l<7(0g|GHrK z9qGw`dnnybsVAgKami|f2RXZBuEtMTg_T%=Mq&hpV;F|Q4PRpj219Zi zhym!2e&~xn_zJzz3q8>T-O&wQ(FL8+2_4Y^?a>Zx(FU#2%Gu@91Kh)1+{R7Zz%^XK z@3`dblE&j{cfdJmx4?O6oR@YToSSwPoS*gwcuv}7$n!4Z0?y+c&f*MC;}lNf1dhW8 z$8glyCABtcp(biTLv>U`Ra8M`xS|q_sE7(MpghW!q5kWk(-U&Y~*GmHygRx$jwG>HgdC(n~mIToEakWk(-U&Y~*GmHygRx$jwG>Hp#6B zSdTW=qmA`wV?Ekfk2cn$jrC|_J=*d*yI9H7N}g8ow34TlJgwwuB~L4PTFKK&o>ua- zlBbnCt>kGXPb+y^$ua-lBbnCt>kGXPb+y^$6FaaS+prZ| zuo;{1D>mX6Y`}V~!&>}|HCTK;kmBdL2Nb&sU(k<>kMHfF&C)FzVJL{ghb zY7Ln!uMhicEcOHuoF8_1(o57N-&}#D!_p9D2K8rgVHF4k|=@VD2Ada zg2E_-f+&Fe$OjiVBQNsc3*-iKAI{vHnGZAbVP-ze%!irzFf$)!=EKZK_ z%*=R*&WGaqK= z!_0h`nGZAbVP-ze%!irzFf$)!=EKZK_%*=u?3s43BO_^e!&K;$2zRV z&sc-i_zA195-YGA%diwn;DyClgoRju`EW*F`O7R-r%a*n$ApxPgou3vO9xx9 zYLZ{k1fElSf#=j-++7Zt{0R}U1ph}89@`(vM?d3hb+*k-HKuMHiu+BD_mR+7ooF)A z4^ALhHfGeNNo=N?aJg7oYeL{rLi{>)H12@C*{>S&EFOt46GAp;^rx}3SH}a-swQKA zz3I&(aqS3UI|&gJ)Y0G*^fML_%smJuT^%*)(eFZjW#7`uzF(Mr?6-uZUWDLb1XCkI zTtNc)xkY)=u?|;f$H&kQ?x^~4_k%mI7jd2t{)`Y;gOHY6Js1`x54~0Wh&a_GwBb;c zs-@IEu4cv-8ZIVH$Pz+gX+r!ubwkTWd(%NR5x?+ATzNvo2I&=$-Uang-2SK~8I$GU z0Y}IGA$u8p)uS2xOd+b{?<=R|C)nN)(qu5vhvL`L1fH|sV}feJpR2~Qo<}l96Jl-= zBI4}lyj6{DRzy4pV`U*_j3ESfv>y+oZ_-uY6hJ>MxBd7Y`sSXhA23(VRIp4}xE~?7 zlZ5uN`&4>urT2u8*p!f=5p1(mV`*i-av|FS4w?$tzLus)#z1LY;u14t2IKA#Y?lfC zpW^PQMwKUIlRVg7^^;%QXRuIKBU2DpNL@W+fV~;SA+>&k<*KGya)yx*>ux)rnyETT zz0G6Ca_@No?krlf-5bVHs68Svo1z=_J3E@Q%Y()iCW{`|vob&Iy(! zpCQXCK8}#$B)h&5B{OQOPKI13!`HDFEo(EwH(Fk48NP|l?M)NaM3hwfF)hR2B(&m4 zOv{XIe|1x;{dMfGZg5w}vETvfbW=UYzNud9ct`iIPDE36B>q=Zrv!ODv*_#{Yoe(( z`_{zh`Kn3&s4fe;|47Smx_|Mk=e1E&AWw*D zqo%+*JZ5NGb~Rpm*PelIXsfjBfyW)!Ov`SPwG-Dy%Nu2Knxj#VCZ}Z#PU@X3FO=l8=((oGj&5?SZIq)M+}E;2b^X)- zI@dq_uXFv=|2mgDWSyIMCRxUjc*Z}CCM8G4;ON7SPD~!vQHwk!hbb?6p)<1@=j8kL zedplrj*dwdV(82adB>zF;y5Fth~tcmBI=CfxI~pjf<<0JA?pYkm1Kr8Dydn_sAQE_ zO-3a(AsLm_bYxUglaWy=N*0j3r$v8|4)1C94oB1+$q{>}y=vqY7I%jMO-?5^lu%7V z*lyLNte2h8>k?~(oo`yEP;C{%&L^*>92d=B5uc{5;q8fD>RFz6)_Oz5>ndJjexJjy zS(!rV&b^t~eRPVJDKwprkQE{91U-@%9465^UB$x^L;I@um30iqr>WR6^$GossZT9K zGS+AH(l2q*hw_N6ha);3XP=%to-`x%v5Jp)*B%&CD(n!s>e&d^9b9K;P#cL!OZb3! zB>kvI(%1Q)vP+bHxZ8R;pGKaMdLZ}|v6DpmSnT%+?=IsC?=JU@9wK)McqDP1gm5>B zwkV0AJtYQzRQ-+;`M*C3@|RA)mdMj(3JsBvYO?QCk317Vel+QgdDhU#Gm~Urb+V4s z$U0IZ>qzaaBek=ROv^elE$hgnzfPK@&WiT1-%46_&XCA6_Gd{)jzm~wWPu$d+Rurc zqQ-j3{>)TbIWIkrBp=C&SSKOeO`w>qePXwbSj5zkPxk!;BV;%eMO=T(X6UcvXIFEQOKw3hTGrh7%O z5^Yx{R?cLGD~IeSn7)+W0YXd{37rWUnbLdDORu!7i;U8;E-EK;qsn1J3D!-7(CUQr zX@rKsbBV#dr3quSA)|Qf+DQQ?vNj^g!IKG|z{{sUZ!dKt&xP{hk~Z>@^nxez%82Lf z`iR7!w{k4#t=!i#DrA<5GgOq<(WsCgROGhwr>Zzb#qU+*S{(OKab}r99}ly_S4-A2 zLugWZ$;B&AOD{#7q~b>=w{mEuh!za@7BAX}Ta$?ER6nu1j3TkSWS_%&p64IJ;S5rf zPtcfDikgd;O&3{gdKXy>(L5HtOL}@cb+n!It^K5L?I-=1w1|VU_+!%I!=+8nEm7|x zF?yHkx07h<5V1dXaCm40Qw*Qy(x_%t1t96tQmM=oE>;Gr|~R#I}%; zB?G(c4=JMJ7ZOdMRJ5u1R>de4BUQAh7$GsFu!@CLEU01u74xf@Pem6MomI@MVjdN9 ztC&m0oGLo0m_wo|Ud1>SV^xe%F}h^@6&bC>FC?05D!x@QQbmizkU}aJRIz}H`BijQ zF|UewRCH1?hl<%%%qG#4sbYqT=_;nFn5trmipeS_sc2O(QN@ocCaCy9#rG<{Q!!q} zI2B`6j8QSVa>+8mJqV_ngoxuM%fya}p68mBCpq5r<0jQ4>{m_F7auosFzJhg-=xXo z?V2{g+tuop8tm;Fy~*1({kpen+_})2-ma-jyqpyj>Ihyj?@)d%K2nvh`~&;=|+1c0@0udzgpY z{uz^xOI_nEMwwWS{zV4Epu)JMbu+{8*%6S)1vhxR#+2mY+1{=}T^PI0u{+V@c~XA7 zh!5fM#*Fq8=R9O&+#w*r+ck6oBfiZD8-lVVQy$xJZ&$qvw_NV+`jNa-_u>Y(OXm5H z=yK;#3x@u+5>&8?!t7R&=GIm5CW?c0yax~*Vca`#Q;eow%=)+}BC&>%@JXxUUoUb&~VszD{yqC+_RSeVydKPTbc??&~D?b&~r! z$$g!;uYr6GlCMGXHAub&@-;}l2FceT`5MUAAo&ss6Sm?CoC$k!nG8YEu>sTw3z0=Fbp1F0HF)j+BSN!1{! z8c5YZss>5bK&l2w)gY-FBvk^plvImLt^_Hv%9bc)mV60PXq7QhN-a4Pq}VEJBITC6 z2^3s1CrHUv?nH_%*%PGfl0QKTuPQ*4(yJN})re%)RT+pf@2U_)8IhWLRSWuRL^AuT zCK8!{sR}_xBuhXFLr^19t3YbQ0U4262vQ!pYD8)+s0wjJR)eaMJ0)_LmEbO=ahC<) zE+rroCOkoRa0_>tZ+EhFmt@_^)m>6`m$`PAL@IWcuI5-JMPDlFE_19Blt@M0WscotjwM+F6;VzO4bCKW67H!6;+uNWsX(u zM44mBo*=7E1&NeD6`nPXKMq8gFRu@r}(MkI5r z>O-VJL^UEc$Err2l*m&mRo}$q@<@ zw&Dup;k)44KBVI#>G()GK9UZ>t$+{d_((cFl8%q0<3l<=l8%q0<0I+#kdBX}L*NFa z<3l<=q~k+6K9Y`)q~k+6KBVI#>G+V2kEG)x>G()G1i7WG9GNHrcP4UcBKIb;a@3R& zxjj+VvZt(NHGdLWIWmI;R*uXeft90Xkti$2Q`WLfCV{aKSvhJxi42FxcqH=f;HlQK z%xrNrwL~={wU%XeIY2##YDDV&N@kb?)I_3;NY=8jY!tA znr@;Rky^`Y#yLWbjFiYI6*5YJj8Y#XKi#sg04+7-jMag$Y}61y3O7F*imj ziIIvJDTq<(VWb>JSq?@ihEZxka3jclDTGnhgi*?1lqwi0f>CN7Y8`O5bbqxynElv}H>C`4|q zzN8T4_Uda2kpZYLDiRrjd{rSZ2>G%?U>NG_3Q-0kUswnXMSW!p?HHM&`AeB+yWQZ~% zDUSLwLzEGz`l#%(Q5y|H~K}MuL=ZTC+KIaKCU-CImkQq~-^F$eu`kW`K5lM~I=R8qnO?}Q2Wkjk* z>T{mH8j;jUea=f{*5q@ZAS03*$>%&ljYusY`JCr~j7Y5@`JAV#Mx+*z`kd#8%$oX~ zH}VBUrp;a@8nu+{bz)DZ&R!`RwVdp=Vo#>eUM*>4NvV1fWeQcrhzyXZX3<_W_GBJa z*@#j%8ktIa+qHTjXbpXBW)OUX}iCU9TL*Wi@APQIrnuj8u4b7yQIq`MOmBMB+33AP;s z|NheRB$#p&;`b8bf(fzmX!IyT{o*6i_yf;1=1Z)2x?ARoT|yqom7w!ILQc{WCTt!0w)=PlZ+rDB-vJ=xNRrnRfCQ*(TiA22-_sR z$)ow>hY=d2Mh2;oL2AS+Z3lr7((@!RLS9>Y35?JnH8Mzz3{oRr8H)*w&>%H3NR4;~ zH8Mzz=#D2aLLOd3V1&E^Ul16fff^a4Mh2;oL26`>8u9w!9#SKEj6iC{D~1tBjSNyF zgVe|%HDbLp0;!QfYGjZa8B~o7QX`(s2&6_l%m}1L2B{HGVFap12C0!j4O(hskQy1J zMh2-7uYQ?ERVAWKq^c89rczZ(`b?&(6;Y;BRf{MSs_I3QDOD9C%A~5A5oKEKRilxK zRdplE)T+u6WpY*Rh%&uWJznN&Y-)|E0&+xFnJS^Y39!yo5s9+WR2hk~)>I*hvf5NB ziL%~QF^RI`R5^)i&8dR2Bdbo8lql;?6_qF}PnET}y{^SoVT-HE7B{Hnr)pbV6_=B! zE+5-uKx73FsV8r6xb?K|Isa0!KFKwfGZ5xYAb&cxPZB#FB`l`BW z@$%tdudiCZvZu083t0A49%>28p2|cmV%bx? za#p*Nm0Hm1RLM&%X=zkuYEiSN>aLbGJNC+}g)MvbQQM2J*0vl}$0b&L#=k%Qxjre@9fGu35_Fp z`=qEf&p~-dp;7NCxs%`XE-iuoYiGhljKywj!*QI)HC)2g0zPu04=4I?q7NtfaH0<< z`f#ETC;D)r4<{PsL?b5}Inl_8Mou(xqLCAgoM_}kqnxPjP2^O$JAsqs{sc~!5fFHS zjDc{qfS+93k0jdg~jJz{S|``KH)roFYr+S{lK_SS1=`g3&=)oiry zaS^p^Jz{UUh}!2Os^uc8A~56&vvjHefy0VJ&{f8mz`oScR2Xf#q0+rC0(lEXE=%!~)F6Jj}%${0L9X z#w>VXCT3tde!w(L#T0yx$(V$Rn1JyZhq1-{2gJqz3h@Y=wVToHMT#@iZf_j3b zg>=LBN!%jgt_0J4i5(@pc_T5fy2OCZD!NJZ-zh(XoL-pj-AV>x+5^>WsgyRlQovSU zj(qZ!_(X!Gg~YoO0;~HbZ1at7l_PJSyf>v50S@lwqn@O2q;a-zBSleiciq zsGj*QUG;OQSWLydDwa?&yNbmnzDrRtO~oX2yr7DO)R7F;&#huk70aqvM&diG>N~4g zTE)UD=92i%rutvl%PR*m|LVRk^LMw@-(8o#y6-;y)qVfj6;l5`TJ-O(Q{Mau&Cv`^ z(FBdr2o2Ey^-&LXQ3thA3pGmgljs-g-i!xfcaL`7790p(E+Wl;vDQ3@qd0>x1b zMNtHWQ3wT50Qr#*E^tO(0Qln#UgH&B;syNh9MA9+Pw*Iz z;ERWNfcvA4&ngz<2UTXUhKhccw-lKVh6Tk8@6H#He(Zh#YX&s4OowLSc{*r2CMNCR$(Pp zU^$jyDVD$si?Ij`u>kWi4|6dGKf)8UF$*4;i5ZxVA21D5F$LdaGA3anCSW|qVJzG+ z2BR?w-{D()gOM14;TVRYaKqOag25Psff#`P=!d@OgRjsVz0eaq&>h{-6rp37H!ZPt!q5SMM6;y^RD#3_~ zr~m`Xqa4bj3`(OEN}>dcqZo>!2nwSR3Zek=BOhGgjJ(K$FOVC#kP}YGf$YeZH~;%g zWZ)Chk%m;HAQ?%p!HPtDL;^nGJ>KCh;t_{f#2^|`h=c_Z2uB#q&=HCdm=KI01R?+>#up8dkg`L=e?bwE`*n-X2gkP}{ zzhDE_V;$DwXRN_${Df6li4|CmWmt+O@WNs&!a^*-e9XgK%)yWF#B9uh2WDahrsD@p z!&FSc_n3@Hn1~4&k8v0acZ|VkjKX*L7T;hbMqoIGVJO`2HHKg?24Nrupg;PdFZ$ps z^hPiAL=SXFH*`f8bVet1LnmL<@Y0=4ghdXoALQgobE<`lyGxsDs+5 zg_@`V4b@Q%RZ#_%;fhKyq9Q85fbu98yV119BP7FvU#|Dym+L*6H1*(@>pl48dXJ1{ z9vNSG@XPfc{Bpg=r!O^-h*GR_u!Z7J^1B%5BcSK5585ll<>({V%h_VsdXfF zlVIyE(b_@cM_po93Gwq)EG%)WgewxBNKj9(w2*H2K8af-+?8OuFR`P9H*X{cR+kvC zSw%OA{yRPR<$4eK<$4c(x!yy5x!z-PY)udO<$4c(EuO*3FV{m|rw<(KOvGFX1OUV;pkU#^!RgOy*dmnefJ zGFbWLdJp;KdXG+wPky=HBlt|(R?`|yPt)}GnjWF){+j++({E||MNRk7^u3zCP1Cn( z`W8*!tm(gM`bJIvMbkHE`g%=Yr|D}o{bx<*3ad4Jm8P%M^c9-ET+^3n`ch3_qUm0m zzF5;2Y5D?9pReijG<~k7&(ZWBHQiIwXKVT_P503B8Ja#_(|^$PX_`J&)2C?q_nJOg z(AL`@&B>Ekqgtfsqb`WQ_gt?8pQ{X0$nR@1-H^bwjqT+@eX`cO@G)AX-3eTb$H z*7QM|K2X#9YkEIT@2ly3H2o`0@2%;*G`**$_t5n2nz@T+?yQ+RY37caxr1hIubJCv z=C+!-jb?7GnOkb+7Ml4>&D>lwH`B~bHFFcq+*mU=(##DtbA8QRPczrm%yl$#ZOvRu zGuPD2H8iuPnX7B&s+zfqX0EK6T{Uwh&1}@n6*Y4O&1}%jMK zTtYJ!*UZHB*X&r0F(Iw`zK#rhnA*1Wo^->F+fCt)|CodYq=m zYI=;OM{9bNrblYJMbpDIJxtThnyzblsHTT#x=GW6H9bhv12z4ProYzoSDOA((_d)1 zpQb<8^kRMVem`Xf#E)%1s&{y@|3Yx+G+|5MZNYWf{bzpd#vHT{OBU)S_&ntoN& zuW0%on*O_{U)J;wXi( zD31y-!WGq^p%&_(9vYw#nxGlJL`$?rTeL?fbVU#JMn4R~P<(?i7?1BU9kVePi?9r< z@G~}G6Qqc{@f!}o2d8izzvDXY-~k@t8D8KG0uh2RL?IptuptfEC{QlsMFA8=Nt8te zxS~30qdpqrOSDD@bVV=p!(a@>2z-bC3fpMLF%FY471QAXPt3&vEW#43!Uk-_7Hr2( z?8ZJEz+w2{B+lRhF5wT{!~;CT8-ySnvG{;wWFmJCYK@{Oi%O`Dx@dyd=!9Mv2seC( z@t6V+%)=5a#~N(JHtfM6oWNOJ#tr<5$9Rb#gd-XskcP!+Y& z2rbYa-OvYvF#_)R9v+yFW%wDJunPxp9Ov){Zo?NZ5QK2VAra}wnTv6tAc~!yGKeO02_Xc;g^W-~w*qPx!(Q0nibJcd#K1@<#Rr3ZMiGsERsh zjF#w#o)~~(7>!Aofw@?M)%XS5um^{50_SlBx8aKy2!t8Yc#mXc`yyMmJSc=xsDP@d zgC=N=&gg-@7>p4Zg9(^|nV1VNtipP1#U32QF`U8$T*V#u;u&5c5N1TfmD}*8jiO4{1 zXVwjhqZ}%u78;=?I-olSUGg3_pn zYN&(8Xo=3~12>GuMErocScadm3A=Cr$8ipS;1=%VDPF^bNPIvVa^&YT76nlZWl#}S zQ5%iW2HnsHgE0bQFac9A6LYW#E3qD1uoHW67$EB4?pPU8Zu;tn3*C4v!wSR^6^8OT+T z@t`nDqCBdi4jQ5b+MyfzVlakd6eeOiJh2GNu^PW%JAT7aoW>uxg$Ho7K3%}toPT~Tt z;5K~m0{$?;j7UTy7H{z$ACZhtaN>(@9^^wI6i0cuqB`oJA)2Edx}g{PVi1PmJB-8k zn2tGEf;HHHE%3$x_~0xq;wo<89vRXXp7G1fj$_3uQ3v1FbepLKvd(4mPABTQPD#)>eRiVU$KC z)WW~o>T$dwnxQQ^p%(^1w&9L;4DDph#6m2^Dy+puY{f3@!y)+KG%nx|+`wHt#8b%j zk~RP#2uC#D;v9^ zM>$kM9W+5}bVhFs#4wD)1Wbho=3+5cVFR{eHxA=8F5)Wg;xS&qgmA2G%n#f?%^q3A_!rK!3QMa6LOW~ zHH0E4i3+HOx@d|v=z`uDh~XH6$(V_`@WM*0#TM+rA)LT@T)}NT#B=yVM>IYl1=;zB zv%DyRvZw?N_0SZp(Fr}#A8z;-<1hstn1?0!2^+8#yKxXcID^Z$fxCE!r+A3~gdiNz zc#DrnK_>DTm@|}tD{A83*&1?wGqgf`bU{z_#UKpDNQ}mKe2?jvjd@s%mcSP+jyq#y%M70DI(Q3NGnfGcXCKANBv+M^44qCbXUI7VYKe!wiu z#Ud=nYW#w2*nOr-(WPxVKSz{13zLu7GoLy)wYV`>#-HPu^<1=c7*eNa0=%? zd+ufW*Krs3@f7|DLI}bUgSW6D9XTrT{)+-A3IkkG4K-00Sz818%^mx#XxpJHdSf7l z;#-Wtcuc``%)%TjfESkIC#=OU*o^J)#y%XxQJlaT{El0AgjWcG85YFgEfQcuDl(A6 zmG47vK>-v-F_c6Zlt)Flq8e(THX5KQTA?kvpbrM(YsmHu?HG*5WK6?Mcw!zFVJTK( z4K`picHuW1!AYFM72LrCJjE*n!3+yx@D^5N!l^QO!3Bj;8s%X`b<{#VG(rosM{o4Q zAh=;PCSw{ru@K9#4%@L02XPX=;})Lc4MGux_pl)oxvQ{-Py{7V9#x>BE}Ebf+MyeI zVE~5U8;r&z%)lIY;U{ds7VN-29K|VI#5LT(W4uBz!VrlVyhS3?k*z9YL_QQn8I(t5 zXsC}S_!3<(0B-me?wEvWn1w}Hf%VvqJve})IDs>`h%2~-hwy_5VTgkj>Bv!y_gEA_ zF_b|?R7EW`Ky$Q37xcnFjKFA2#1EK-xmbwh_!*nA8~bnwK9KD+?Ri|rb=<~1JjQbb zzyvcah{0PVA{iOTQJs3i83j-TB~bwj34JgK zBQX}!F%L_z9$T;*$8Z`KaUJ*Y6t579NPIvV^3>pUg373a=IDsN7=cNcjU`x*T{waZ zxQ=^xgy(pTAn33l7Vlw2Dl(C?Cf_Ad07X#>I)21LtiU>K#U32O z30%Mx+`@f4!7BtJ1mXBsTNKCR@E(asMmn<9X0DM3`A`VOPzvQx5tUILwNMX@&O8zBa)Gc|F`|W3jF`Q0y*pO*^2@wf)XeT11g~kG}J;pG(t19LVI*VH}pn-41ybm z<6DfucudAL%!DWAVG)*MCDvd)e#KVo#2)O&AsoXAoWTYBj;pwV+qef`JjDyVK@dU_ zj;t+`ek|T05y|+3>~(qnh6@U#B+A2xs;GqqXo41K1KB#!c13Rtz}FaotZfYa@tBNh zmN=6It6m z`o5p-KcoK=0Wf`bJnQ^_w&DNcoEVP1bsSHiwINOR>+{_aS(^*}f+&LGD21{xz=+DI zh8k#ymS~HP=#D-ZgkhL~X_$e3waw=Ed@Oc6zKnJy)?ghrVl)1^ZReQxXUF%^KZv6^ zj?*}g%eac0xQhpPjOTcT0GMEg1u=Mw1lS;33T?Xd8?Yvk2QDZ8*$UGZcl1lsmUr}x zv{f8^Ij_2-UyHUr8skf}#y__X9P9eo@m}=%Ven_ikLHbEi1k zf1aDQKb^;C;YZBFLU>^rR$?{QVgr7~7Hr2Z?8Cpa9pwC@IN^BS8QSx>j4QZ-+qef` zJcVp8Y2P5ov9HsHBMPy2hmS}?8ZzP3kbiT43ksqrN}?<(z!lX{6LrxLvNfS?j#g-g zPUwmrkgYduKSzHMts6$*JGdij8&7{SrojV0VgbCc0&DOKWZO!+6MG%|hiH%Clw)7c zIrmv#_W#}OBG12qoA~pyYdxa>3@`8+0SHDY!eBu(WQ%jO_Pu{UzUTRgNOoK&oi-Cr zjrdH2GxDP_iX&?)O~2e{`xWWCq8e(T4jP~dzC>%ZM`v_LZ}h_;xM2jogF7bRd;9>| zX41~aTr9*AEXOLywuW}SqyH=IR_w$c>_^sii2gC0#5r8TRouj%@I}`4oc^oN_5B%F~Sg-{eFP#Wb>0hLe{HBk?Z&&&=G+s#NsUyU_&Z0kmF0fyTBO*@cCAl{o*JC16)xJwNM|jHKlEVwvPQy zwB67f{T;{bXa2`=@c+Vj!#U?WjK!qS&i{eF2Rtzs3$PeVu>wEgXRODs*amOx$5DK~ zonrqSe#dp(#X~$p*7llypkqITHVl!7#XEdN64HgFRa8`{EF?^gM;wF8OU~t_8RWsA)eti0-+-UvPC;u z>A$1@5h=(-u9kdmpddcqivD9?9xKVQa&Scr)JHSO*2d9xrtN_~7>p4Ziytrt|6gqj zxz=+0{J(L{UwF<|cw;|~;uJ363U1*(p5P?{p(7G;NI)_&kh2x9ITS>3l!X!1P#X== z9Bt4EJ9+->8Sb?9h5nJJneK>^UIE%};hC6tOXLyAm{BsNCm<6%; z02?xpyEQqW0E(a#45*A6sDlP*f-lh;?a&cj&>g+d2mLV!Ut>7_D{kL1t}%|WP5f+( z)9BB1?0bH8e8Fe^f9B)GW6QA$>m288qTPmF*o#9rjEXq8q-#V2s2>{D2>^7^|=W+prhMa1v*59+&V3uHh!`;2s|03HZ2)Ip#!?%D-47iMq&&mVj5;)E*4=q z)?yQ6+e!NyPT?Z1;ZHolO9VnkEZ)P0Y#mwukgXW40aeietJLT!-`MNkR`RECBIXpT1MjNTXkH+%zk zd=C#S#0sp#CTz!U?8gzDz*$_vRoudTJi$u@K}RIw@BucYLH^Gfa={q|Q4FPFfGet_ zHX5KQTB02~qX+t6Alxt#qcI-eV>)JI9u{LcR%1OjVLNu?e|6i>xrgC{Q#gl9xPlwF zgZp@dXLt#J1Vcvzq7jb|up$MYki8pqKwjiWVH8Jcl!p;jprJPEqcNJJ722T_x}i7v zVK6@5hOz$*Mq?Z%VJc=|Hs)d>mS6=|V;weP3wB^Pe#0Rg!%3XQMf`#5xQ%=8#Z$b% z8w4Q~;fO*U-XjsoNJqBryk?LG`A`VOPzvQx5tUILwNMX@&$v^j*trW>JFa|B)TZu$ z?HFTbW@ct)W@ct)X2zJAnPX-&@I)dSv4}?^l97sZWFi~6$VVZHQHpX@qAE41OGBE{lD2fDD?RDUK!!4s zu}owtGnm5ymau{~Y+y6n*u_2$ag>vsPqV1g4r=i+VKrqb;z#neCRer6XPGNnZvsl#z^OB2$^c z92T&Im8@ekJJ`ozj&qg(E_0pR+~+aRc}-y6tDpEr@G}3=7WnUXwnGwz2t+12u?bB4 zKWbt%IjKqiM_b_W%(kQdpXDvPH=_*E_0pR+~+aRdChx1@r~eR^#vgbLj)odo!G=DG090ydNPxp z+~lV)#VJjBDpQ@n)K=@$nC5@91-7@g-JZ^Lr#Jl>%y33Cp2AW+ zdpXDvPH=_*E_0pR+~+aRdChx1@r~f+^aUXaLj)odo!G=DG090ydNPxp+~lV)#VJiW zDp8GE)T0s2Xhl0Z@sH`ItvCG{#BfG2mI+K{26I`!VwSOzHLPb7zp|a(?B_7YIK??G za+RCh<*#{c|0Qqv$QOc_*FS_L3_lZm z8$Id60ERG}(Try@)0o9v7P6F;tYss=vV%Pw;5UwQigR4#DmS^q1D^1LH+`Z^kgPGxyesqic^~MRHiz$sZV2?)0*~lraQgq&tQf#n(<6# z8nc+kLYA_UwQS_y$*<1e!EW|*h@+g~3>Ue^E$;G=r@Z1FpZG?Iiu#Jsgd-9$h(kh> zl8OvuAr}QGLP;u8lLj=U6`kqDK!!1f2~1%+vzgCgmb04mY-R_0Im8i8aE1$9;U;%^ z#4}#=p3emS&jA0%5Bx+#q7ajKBqAB9NJmDplA8h)r6gskNHuCvpT@MHHSOt45Be~W zp^RbzQ<%gqOVKcfJz5vbjzu!V`&T#32zW zNJl2Jk&Ap3q8MeUKox3GmxeT>747Lv5Be~Wp^Rc2lbOLB7O{*~tYZ^f*~xwmag>vs z<099%#eE+0f;W8R3&E;*W+o)zh)5J-5SK(GBNge$L^g6!fWj1~G!>{qP3qE!7PO`V zUFbm{1~7yXjA0VLFq63~Vi~Jh&la|`hXWkp1ZTOxRc>&H2Rz{gZ}`Axf>d>_{K!v) zCo<8ALjsbLl5}JuJGm)95lT{?N>ryd4QNIiI?;oE3}F=Gn8Yv4WG)L?%1YL;iEZp+ zKZiNaX#%*+4es!er@Z7XANfMiYUU*&`HApEB08~2KoU}tmP}+LH~A?-3CdEL>eQtX zEoeh0y3?Ef3}!f^nZRVGF`M};VL7W=&t|r$>u z2}u|t5QP}TApuE9K^iiUg&gFe5G5!_6>3qRrnIIbUFk_*1~Qb9jAbHInZX8>>#Xb&kl#`t00#~@fJ)ZE24}2v=4P%tBL?Rloh({ulk&1L=Ar}QGMj0wmgL*Wf zCGF@;5Bf2LQB2?$X0woGtYH(|*~1}@bC!!-<2Da?$}8UUnV>bzF+viSh(sk8@kv5T z(vg`Qg+~6*c zc+ML>@|EDV+_wo$cp?*nxFjMOsmVZAa*?0Hl%On?s7@Uk(3IA6pew!T&rn7&o+->= zE{j;s8aA?(UF_#KPH>isT;nzmc*-l@^O>NveK&+8EI$*C*d!n+sYp*2a*~h2l%On? zs7@Uk(wsJQq#L~%z)(gpo+->=E{j;s8aA?(UF_#KPH>isT;nzmc*-l@^O>M^Tnixy z%g;n3HVH^dYSNRL?Bpgtg(*&HDpH-gG^Qo(=}I34F`O|>3tChBT!mo#;j{ z1~7yXOkfJLS;%tMvYFi+;5W{2o-5qo9*=p+N4^oFp6`ROL?jCFNJ0uSk%K%Gpg85I zObr^+l$NxmD}5Ni5JoVD2~1%+vzgCgma~S9Y-J~V`9H})uRp>G&Je&AZgP*uJm)nZ z_{{%EefMI1Bn%OVLQMXh#B+Wkl97sZWF`lBDMT?!QJ%_Fr#1~}N-NsYnI80IF#k$M zIByISn8I}Cu#jb}W<8tP&TjT|nB$z`0#~@nzngnr^N44>;vJs|(m?<6BR>(I$V4YF zvDE}5{bN6sn*NXN|2X4c`!|c%WG6TIDNJ!nQ=ZCHr#AIzOmkY(p3Zcq7yTH-Fh((s zN&Lc0=CY8btYj@4*}`^qbC6@4;Ud?$%VS>ho-YJ%==U?i@H4SUOiI#|m0aYbFeNBU zMXFJo1~j21ZRtdJ`Y@28jASemnaT|2uz)43U>%#-%1-ujkQ1EaBGX8a2lfL3&&A0wE=Y?iW~9US5$7r4bE z{GhXqI-}y?2=GFtk@-s1rOCnN`mMrAv zUrj;h7NaC(sYq37QkRA_r6q0YNLPB&mjMiBIHMWQB&IT*+017#%UR7|v(Ek|wz89b z9OgJ@2;ed|xXVB0v9{;D;UixO*21$hKk^e1h)i_;F|q%lEx!H4BqufL$Ve8llZ(6* zpfJTKO+~6xm&UZ99bM=}e}*!O3H-t=7O;#pY-B6DIKWX(5x^C0ai6FBnb)>I@{PZ> z^nA*{lW@+DLTnO}g7jo14}~d3MXFPernIILJ?YOd#xj{1%x5X9*~E7CafH)cQTiD4y4s(LDT;e)+dCW`R^NApB%?m;j zj!48H9*Ia!8ZwZTT;!(+rKmtPYSVxww4^Pa=tge_FqBbDWIFR%#b$PKkkee?I)S;T zKIR1<_{!hg`MiW9GBJrq5>k?ZY~-dO#VJb_YSW13w4pP-7|005^JjjsJ%`1tWIeyK zivt|xG#B`1x#rj%9`cOWeBcYg+Ixm26#p#Y9E(JB;*gMJq$V@D$WIYUQjW^}cmCh$ zfg1X<9!+RL8#>U1Ui4!KBN)dNX0wo$tYss=vWvYO;wYy%&n0efhetf)4W9|o!T2CN zk%&PY5|NY?q$3kK$W1;9Qk0UErz$n6Lj#)9ijH)nFGCp16y~sy6|84FdpOK-&T@$x z+~Wza_{V(E_L*-4>u9avdqVOP;fP3Nq7jogBqSNBNk?XKke5P~q#Tv0L0y{AiVk$6 z4}%!Z6lOA?6>MZDhd9M0Zu5k{=B@qT`9_FNK0BcZ%g;n5Ch|j4fIm0Dx@_^^O z;|n3WT4xAPRN|1BRAeLv`6*6$s#BN7w4@{do&U2Q=%o+)GlY?hV;T!t#jot*7-zV| zP44l8SA5~`-Hbyb5`*|8CnLEjL`f=8i~2ODEnVry|4s&b-3Z1ph1o1*IcwR(4)$`G z69jODTioXvZ}?1z?$!~)5}8;eAQ@@MM0WC0lrmJJ2K8t{8#>U9J`7?6#1#XCOnjSxND{|HTZq7ajKBqBL!$wE%@QJCVCp#s&Y zOA}hsj!yKTFM}A)7$z}|IV@y3YuU_B4seXKT;>+{dBN|5=xMzs3h_umR`OGl%G9JD zO=(M4`Y@PLOk@TNS;b~{^BZTl!d;&6o*=!fnS>`g@kv2ua#NHF)T9w@=t^IPF@}lE zU@l8o$tJe5m)|(SS*~!0r@Z46!Fqc}AtEt}M-oz!fvn`CFeNBU6>3qR7IdI1y%@*{ z#xQ}&{K5=oGmnL=U^VO5%r$i`?Q7ulPiWzQ!a`h)Xikk&S#5qXM;P zL@PSci$RQH5;IxIN;a~CgPi0dw|K%kz7V3HF+oIPl897fA|IuwOdXoij;{1!2xFMS zY!p7M?${jGIGBo>KDLuPVOh*DId7L8~{HwH19Da>XutJ%z6j&qSa zyx=n-2DnBd5`%=KA~Sg?LK&)1hbFY4EBzS3BxbUZm26}O2RO!Au5gDZyx}t;2Kw1V zBnAmcK?ZVAfD%-oCXHxKXZkRdaZF=d9R zm8nY$I@6coOk@@dS-}RjvyUU3ToiBC#0lb7ODq&AId zO;`Fel0P%q_AC~$hOO-9&z!Iwz;zz-nlF4e!u1lE=zrAsf7FzJ)XZvLic*&9G^90M z>CZ?eGJ{2|VJrJN!9{NJke7TU=t$R2IHD4lq@*P)dHFL%ZI`De&FIVk#xj#-Y+xrx zxyU_U6J(TUB_b1-RAi?J6{$ySy3(I9%wQ>-*vBa@bC*|qBh+Z0n?$51Cxxj%U0Ttd zAxvZj3s}u&0<%{=!g;Q7k7vB&D?!JYe|*P}ge5xh2}~+A6L~30S*lW(rnI6xUFgFQ z#`9-p+Fr;Swy>MS1m=`_p3B_e0WbK(-^aRt5{XzOB`sOWOHs;FnVS5WI<}kB{*Sg^ z>LA84l{qY74O`eoV0Nl|Imi)CaE1UbbDi7V=P@sN&liG>^WQr78$S@5aQsYUq7$2h zBqtqN$whvOQkt?aZF_zGnvZ*mavl5Y+(=kIm{7` zae~ua;1buk#Y0~3hL3zD_;}-mkc1&TKNFQWBqS**Nk=BKk(&Y(p#)_pM`dbIhXypE z1^-#vXzxT1`ZJ8tOkfIsW~S{q%x4ixS;1=7vzhJe;ULF2#aRNl#8qx^n|nOu2`_lV zN4^r6;1hiJgyCmm@b4tP^AnMj6r?2snaM^@@{pgx6r&_%C{HD-Q;WJZpfSy8O*{T8 z)6x5Pqc?*X#dxMLo!Km4IqTTOHgBb+9HE8OG}FL}==f=sk75R&jjBOZxJ#{WrD zd3`#vl9Rj?q8OzpM+K@-gE};%DJ|(p7kbc}ehgtaqnN-HrZby)EMh4uSOP=uSU|GKR^_WFafqz&7@Bgfm>=Dz~`L6JGL;PXw84eI+E}h)hfp zkb?ANB{u~rPFX5bllnBJ4V~%5Kt?i&nJi%qTiDG(PI8f(JmR0_m1A#s&qqG0a|Gr?!LPw@kx2t#-x z6P-9DBnin$MOreDh3w=aF9j$>5sFcQ3e=!34QNVxy3(70jASCSna^UDvYNH5XCs^0 z!EO$6j8mNBB3HP<9q#d*4}2lmOy3Woi9jTx5`);pB@xL!EMx`i*~VUuaGFcpk!<874@D?W8Ol?Q+BBvaEonnXy3vz93}HB9n9MY0F`p%@ zVm-gIi~Sto3>Ue{L!R@VZ+t(`_f8~Yk(kt^Ckq8BMk+ktmL5xr72Hks#BY~G^8o5Xiqo#GJxTX zWHjTM%ztI3d;i%iVkH~c#xC}8h@+e$fGgbM0nd2DXM!&<#t26gVv&H9q$LYE$U`AY zP>w3ppbqtEOmo`tex(Y&T)~e z+~h6~dCE)P@{unDS?K%V@BBb0!VsRHi9!tGkboqlAPpJFLJsm!fMS%P5;bW+bK23B zJ`83Q6PeCDma>M;?BoE)IL!sFafgRI=PjQIvdCvA6ybZMx z)TRN=XhSEu)0e@FWE@kN$vhUbg0*aB2YWfhan5j&>)horFL}pjf-SaI5t;}@B{m62 zMjA4bjocKV7-gtPHR{li=Cq|VJ?YP2MlznM%whq{Si>f^vzLP$;RI(0;4;^_&3&Hm ziuZgb=o0--7@`oDWTYnt1t~>EYSNGvw5L1$8OB(qGKa;iViP+#z%kBojr%<313{PS zKf(~1I3y)4*~m{Z%2JK`G^ag17|005Go1yjU;{fi$Z^hbjr%<313{OWD?}hBiAhT~ z@>7C})Sv+^=s*wpGKkSkW+sbR#YT2=kmCe!oqIgzJzx25x$7npu}MrSGLxG^l%_JZ zXiOWr(vQ(hXC8}L!CE%4jolpJ2xqv=Z65Q2_k87VE3D&$Cn|ACND9)Cm7L_KD5WV+ zC8|-2hBT)wo$1MNCNhsTY+^SjIL$e(aEFIH;~ha)S_g>{vXO^E z6sHW8s6kyC(VRAPq6d8$#0bVQnd!`8F3VWKD%P@*ZR}t-hd4n1*Llc$J`;46KIKQk z6OH(!AS1cRPZ3H{fojyDK22#&SNb!Y@l0m{OIX7ec5|51T;>i>dBuA^6LhsXPAI|? znV7^TF7Zi75|WdW)TAXNS;UPH~P)T;~oCdB$r#@P%M&%r8O_j>yC$J_$)eGE$P7w4^5^naN6a za*~_8r55#RLQC4wnI80I5W^Y6M1Elw^I5`5*0G7L>|{SjILSFK zah*Fnoy4HF|IHD4lq@*STS;<9S3R0Akl%*n7sY7F0)0rOhWeB60#0+LLkHsuy zCF|J0CbqDZUF>B)zj2BST;@7=c*slM^O^6~xt|h&D8wW_iAYK+(vX2nWFZ?l$VDCs zQkbF?rzB-5PbI2ThlVtx4V~yhclt4eQA}hiftjJsVjfFa$!gZKo&6l+3>Ue^9Uk(8 z-}yqY_5bmH-~CblWA8uy4XZ6O(TPcH;**qAWFQkc$VCAPQG}9|raV=sMr|64EdvNxH^UjO!}iO@Z2f3r!$)cEMhsUSjz^su$?^|;0Px<%O!4dhetf;H6Qp& zhzwJonAmC}l986os4Yr43!_&oIU?f$7X)DJxjb7WQ$3W1Qgv zm$=GJ9uk;Wf7JKtH@@5G-pyYV*?w#ikeKA8A}jeR$)BlYyEYAJNn5(olYxw2Jkwdg zDz>nfW1QzY4|&aJ{;ZRkV~`Z1KTOl1yBSi=@} zbC^?H;;*@G|1J-B#v4BJg`5)QxNByG&w;z%)L?RZ6NKP6uk)1pg zqBx}}MnP)0JA ziA-e%b6CI>lDB;13qg0detsY{;rN-T#32c( z$Ut`TQG`-dpc=JlKvP=Lfo}9;D5Dt9H0HC64eVks2l$QSoaGXCc*X~U?ezHwOJrh^ zlnmsi7!{~RGdj_i5lmq|E7-(tjuOB%?(&4!eBrxY)@&jZi-e>gJ=w@j0g6$M8Z@8< z9q7RTMlgZt%x5_p*uepg6Tl4~@`}&=eYc-a6ylMBY!s&|&FI1)CNP)fY+^S@xym!% z@tNRz{GLfTq7ak#Bq1f~$wE%@QJ4~xrwX-cKvP=MmM-*W5F?quG#0agJ)9tb>)hor zulPuiz51Gvge3}bNJ47Tlb!q&q9~=PKn)tug%QkVJ%_l$3qtHOW(Z4E;*yk9q$LAc z$w6rZ9C)TJ@aXhSEu(}#f!V>A<(#B}DcnB}Zx16$a|K@M|-Qv`68 zdpzeIUkH9c|MC+Nh(at9kd!oJAPWU4M@<^hg7$QwC;b@A2u3lH>C9s(YuLh0_VF7h zInPyY^O)CsBKSe$ov=hAHt|V8MsiVzVw9mWwWvoETGN59^kx7<8N+0zGlwOtVJrJN z${7N<%zd8nnh$&-#3A1`;fPEel8}bXxYpu5*{iyy7E4 zj~K^B&M) z@==%)l%*2YsY64W(V7l)r56Jj%4nuAg9R*S1HZD9ef&mXPO0a)%nk1Hi08cFBVP%A z()=eh;fYKP;*yBuq#+~O$V~x?Qi}3ap(gccObgo5iSG1e5F?n#FU(~LYuUs$c5{%x z99PeCjR!pEJzx0yDRYfT#3B)?$V7JXQJ9icqz3hAPFp(Di-C+{3Nu;2Qr5GBy&U2g zrwQN+H@U}SUhtOR`9_G-`jelCKonvUkHn-PEt$wp9tu*7(o~=dHKkeOT*qy*)uMqQfF znojhfA43?$M5Z&3rL18yJ2}8H&T@r2JmC$W331l^A|g?UMFNtLiVS2UFGVO#C8|@G z|5+M4-kL7-WhkSWz*J^3kHxHDEt}ZJZVqsSlbquc*SW((p7ELwd?DC5Yc8P(Mn8YJ7DM(8ea#Mh!l%hOUs7XB<(}K2iq9^}K`u&UN{m(neOzaKZ6-g zU`DIsnanh1F^@$AW|_K*b!=iQJK0NM4ys2v#d$7sgS$NB8L#=kXM$dEUmzr5iAYpp z5uYTaBpsQ^P96$Vg0fVm77b}dM|#nZL5yG=Q<%*{ma>wyY-R_0*vBD`ae^}haG9Ij z;}Oqz%}2fx{G#7S2u(zy6NiK(BQ+VwN>1`pgwj-`DmAG?1O7Yzdp*!X-?gCwUFk)C z1~Z(|OkgTAn8N~=u#$CbW;?st&u^UIEEl;-U~Z~+dB{^<@|KT$CHN(Colt}$8nK8+ zB2to;Ok^iF`6)^%%2S1!)TJR!X-Qi;(VgD(X9y!1$0UAX7V}xkYS!~ByV%EXoa7vr zxW*kG@Pt=<;0wVno2&dtc%l%C1SBOD>B&k?@>7`Nl%+B?sZUc{(~<7wNNnQ$4l#-OCB2}qLT^iDqmb9fK-Ra99hBKP+OlBIhn8zZPv5IwUVkR&tV;f)u4B6{tcj>d}a1 zw4xmy=}J%fGLWH+WGoYz$_(bPfF-P84I9|Pc6PI$!yMxj=eWpKZgQ80Jmn>C`NTJZ zU-MlPk}yOdGSP`md=itK)TAdf*~v|Q3R9fYl&3P)sZD(v)0*~lraQgq&rn7(mWfPd z26I@z5>~K=4QydMdpXDvPH=_*E_0pR+~+aRdChx1@r~fuT{j^KLj)r8e=E`btoS4& zBe^L|8LCpB)^uku|Co{5#xR~KOk*w!S;|V*vXQOqVjqV%#%Th$!gX%(fM>ks1K;@j z4eKC35uT{TCK1U=Lq@WZn*tQ26y>QxP3qB@7PO-?-Ra8+Cb583tYaH{IK*+zaGuLt zCop$!7}q@E1+RI}?|dcbO>>&>2}u|t5Si%2CO(NtPHNJVne5~yKZPkyY06WX>eQw_ zjcGv}I?#n4^rk<97{(~ZF^Q?nU^eqv%yL$w~Tc{5{8IGAqH_sKw^@Unm?1lb`AGLhRG|iSs81uB(Ta9-;;-puzZd-tuNj!FE&Oy;tXrL1Hv8~K$T?BM{v zah%hf=MvYr#XTPJj90wnBcBO!*Er!jLK24XL?Rloh(|(_l9IG!Br7?|Lw*WVoYIu1 zGS#U~eHzo8*0iTH-RVt#1~Z(|jAt^_n8iF6v5Zx$V-s81$zBd}gcF=0fXiIxHunk4 zWA!EP`ApDz)_Ot_o+!j30m(>1CUTIEB9x#E6{tcD>d=5Dw4ejhQJp$8q#3PgPZxU9kHHLQG~=1fG-ff6MJ!_#>)6Cr zcCwGd9On!dxXLZ=^MseY;}bz1STp#MummQu8jYC5AwG#nN(xewj!a}D7x^eeF-lR6 zN>rm3^=L#hTG5V9bfXvj7{o9}F^)<6!c69}kfp3-6T3LfX)bezr@Z4MUkU!uGXkLr zPh?^cmqa8ZH5tfCF7i{D;*_R5m8ni`>eHC!w5C0s=}sR8GK|qoU@9}2$6{8nmQ8G9 zHwQV!X#%*!Rc>&bdpzU`&w0f=e&;K}9vR#G$WMeP648i7JQ9(NRHP#l*~mpc3Q>$w zl%o>Ws6{;*(TrBKqZ8feMLz~Hj8TkZGSivELYA_M^=x4WdpX20P7}aoZgQWeyyhd{ z_}gRaIN^v)OyZM>q@*A%8OTgFa*~Jq6s9<(DNkjpQ=9rUra7%?PiMN(lfDdOC?gre z1g0>Z+00`R%UH!aHu5Vw*v)BvYHvXhIv6reE0C`lR0Q;Dk7pf>erNE4dVines1Gu`M( zANn(hp^RWO*07F^Y+)O_Ily5~62LX? z@_?s2=QVG6&+mL8$TRC2f9D565spYiB?hsHM?#X2oYbTvBU#8!F7i>3A{3_#6{$vT z8qkzhw5JPw=*K{YFq~10XBsn^!vYqwjFqfoBU{+PZuW7QqnzL@7rDkw?r@(+yx=wO z_{b-|67;#}JboY)VF=I9L?I?|h)*Jtl7iHvBO_VJNnVOjno8890nKSgSNbr7F-&1L zi&@QPc5#T4T;K)|c)Hfeb!kis+R%Y6^q?Pu z7{(~3FrC>fWGSmz&t`V8kKZ`WC9ZLcdpzLg^WMYwkWTYYkS;$2p z%20tC)S(fr=tMVqF@T|rW+GFW!EENUnB}ZyJ)7CaPWEz;Bb?w20bJr5x46qgp7N5n zeB=v3U%7|y1EC4W&qO6AaY;y0Qj(U8WF;qgDM(RDQkIHTr6zT0NK;zUmX36#Cw&>n zP)0JAiA-TSvzgCgmb04mY-Ss~*vBD`a+0%L;0iam!vmi1f;W8NGeKTkJNTYZge4+T zh(R0@kc1SZAp=>+K^_WFgc6jY0#&F%9U9Pt7PO%QUFbm{1~7yXj9~&(n9gkGvzX>LQA8`Vzih-Xf&Fd+tAX~XoNYXoRK^q9&7@R<38)Ro8i3$KyD!^El7{|9t$<|M@>&kH^#J z^Zoq3zwP_}d~bh09uLp+0@Ikq9A4sO7V|o9@D^{gj(6F_hkVR7KIaR*6J?!Ue4s(p}`H`PE&#zo`#`6@H zas^jWm20WZ_0*$2jc80$?w|#&X~R8qqzm2X!9(<>KZ6*|6AWVnqZ!M1CNi0+%;ZJp zv5;4IjpeLl74NWt_t?T#K4CjM+08xmI-*Tuv3Pp*ppwLtSp7 zA-B?mX52|D?xr0b=uB6-)01BGV<3+)grN*)6k{021STgN(JrwZ3lom$kPE;rGTTWLZw?xYoW(~b^w zrYqg)NiX^_kjEIpP=+&#F^ppZlbFJEvdLjSi&(-ka>-*2>&a&`1r$=m4vN`J2?sgC zaY`xUEae28cMqTvl?fz>U}_RVC}A`poCqR`BAOUtX-_BOh$n$W`Z9ndl1U+zk))AM z2AO0roosTL&mxwvj9l_q!+P@BOaX-yv4djvQo=!waGX-gI7>MJKdYZgR3?xhf~iRe zp@h+Za3Y8#ifCepr9GX9Bc2C&m_9thqdd-&JjK&I!?Qfc^Sr<`W-*7Cc$vk#&KtbN z+pObVHt``JvyIRBf-m`sZ}^t)_<>WL;b$&TvD`g?%ea!OsYVU1;|6ZzW^Um&Zl^gd zxr?^k%YEF>13bvX^x+X6<#C?mDW2vTp5-~7=LM!Qi#fc+%Pi(~-rz0XW*zUci4Xah zZG6rbe92dQ!?%3L51ir*KXZYKzo?(fxRR@>Mh&jx25#hLZs9g=r#UUTi?-a$ecaCj zJjlcJ;SnC?ah~KUp5_^z6J?!Ue4s(p}`H`PE&#zo` zLH%6H66J?!Ue4s(p}`H`PE&#zn*P$A&YT*?((MOCh) zHrG>+`ZS_3O}T>>w5ARB(2*{5qX!SsoBj-9Fi$Xy5sYRmrxtan%S|-oR+`X^ zJ88w;w4(!^=}LEc(u;l!)YsPIHc5sBn?`xrEE9!ZlQ<7Imo0O*G_In$V0pX~o^NqXV7kN_TqF zi+&8`F@`Xd;f!Jo2?*v?LNvyTHD;wUFL$!X5<3l%Ol7hJ;S zRN)$`Q;Ry(uGLKa$zj zo5w;Hvy7FjW*zUcnXP=v=M=M#uQ|*yexQtV{7S_?RS5VCm8n8iY7jywH_?#BG^IH$ zxr?^6r!(Dni2e*_7^4`+^GstFb9jlDS%$<^mP}tS&C&O0K3FHMou&s7HMo(U_*(K?_>bhI{Bp7rN1dhv-dz1~Hf?7{&-j zGnVm8WHM8k$&1WmA+NHO6}-u6-eCjpv6%u2DdKa!;7h*Z8@}Z`e&7^m_?Zh-{EIo@ zGOpk%s&Xy0xt@B|rxA^5LL^Z{6GL0>p(9=BMh_mMH~ksJV4h$YBN)wC#xs%0Ol2l7 zGLMD4%2HPFCaYP?M&9QGKH^h8V;6ha&jAi`loOofH0St*3YDDmT*Bp4;Toz_i#pWh zCK_@pO=!lQwBl~s(Sgo%r8_<8ML!1e7(+-Qm64>8P6nA|F`aC3n9m}Xu#8;tc$;;+ z%O*bLW47@*U+^Vg@eSYd9Y1i2GyKd2Dqi9^;4-e@DyniVwYi>p)Ta@RY04e6pfzo{ zhmLfi8$Ec4-t=b>gL#5sj9@fl8P7x}GnJXV$UGMEDoa_xo2+In8+e}&C}cZd@FidI z4d3z|KX8gO{LBR^UaEF3<4UgL8iJ`oZR!xpjnwBB{%5C&pLqu@iJ=|$(Ul%NOkW0) z%u|eJ9GOgGE{j>gD%SBHAMy#i_=>}v;4Bp{s}N9$KXSQ#5H+}-n+WH2?&L1oaUb32 zNpJe|7%4o>zm;dK^DNIXkx5Kt7C9{7RbD5TRjlP*3fRsrzNCah9ODPdILEJ4tgJr% ztz2%MK(3}L*HWA7smDz;B%BCtr#UUTi?-a$ecVqsdhigv>CYer^8~{f!Dz-Zo{3Cm z3Nx6^To&*Oud$q!tl}Lu@E%*($|r1RC%f6l0StHur2*mGP89#l|DH3@%D#)`KDzM`{dkliq%xXxCNhO=UgA}j zlgB#VXDdZ~!F~>LoF6$yz*X+?T){QeX?uQ|dA$~eyj{;m8e$TgA62_%SW z)Sx!kQ;(aug$Qn^IW1{T8}6Y4o#{$xT+2U_+SaQ>U2dWQx6qg- zMADoVwBlb&jMv)HfzEWLJ3Z+|KL+v`Lm0|%MlptQOymV-Fo%UKW*Kj?nssdCZ}Xn9 z0zPF2dnn;B$N7=7{K~~u-5V$A3jc7s?chQdf=tcs47(_C|7)3hIGlgtk;uV(h zChw5X2Nd!-yD8yYN;$)?TvW||q%u{g%C*$y25zJQx6+j6v?PXDI?$PJJV+w_7|39r zB$d%T%LHCv201Kb32*T4$y?T6!+P@BOaX-yv4djvQo=!waGX-gI7>MJ!S)Z8s7xS1 z1XGg`LJ8xq)4*~#5kwM2OYSC?_S{ET9;6Tb8N_2GGn5gGCY=m2naWIZSjej^C6_$b zlFw#7;!}3;1$!vrAjddCDW^EcFI1>*zjHZN2;y3tL?Wt^p)fNLFVRH8D01QAS4LI@>{2He7JH02Ij(3&>fLkBt&#{)db!}Q@1 z2JtvglFBH?FrJCLz;tFakC%Cke`bYSiKeZsHc2(41DZr2}1ffS&YWAdfSYry0X@ zOkx_dd5Kqeot3=J1~##kZS3Sr4)86IL5@+%Pn2`fb^o&d zAMg9`(pFMiWdaEzn3{wTN*E0YCxS?#h$e1g;Yk8MmiZ}lErkg$zeW=Si&-L$zu)c$!9YK6jHekxI!K!OOSCLx3pMgzi$Ad)Dei6NHubRv#;5=f*k14ts76jB*U8tG(^Nfy(| zCWrYfVhPL0C66_%C!fs}P)HFwC}uAu9OMYcDW#0FloN1+`l&=^0tq6RnuHKa7!3#~ zf=Hr>CWctr(}_6ZNg$EF3?PYQQb=VaX{3`uCRt1;n;hn|h$So|mps<6o_sb_Kp{o! zpqRasaF8P$r<5|zQcggq`l&=^0tq6RnuHKa7!3#~f=Hr>CWctr(}_6ZNg$EF3?PYQ zQb=VaX{3`uCRt1;n;hn|h$So|mps<6o_sb_Kp{o!pqRbnlyR1F0_vIv zDp8q0f(WK2A%qe}1Hy?Qk|?5yA(r-ZB93?xNTe?VNFtdOQW;4a>12>e7SqWlhxsgG z3CqYOk2S0(pUo6dND({uBgOiADd8YTI8G^LoTZ$Adgg&jR3?xhf~iRep@h+Za3Y8# zifCepr9GX9Bc22j>B|6;NG63;Mv_K48Dx^hbh61|K8skwGIGgd4eQBgGX)e<#14wt zO9=-#!f{F|<1FO_+^BvkQJFx32&N_>gc3#r!igY~D58lWmiBZaj(8GCq%Q+VBAFCY z8OeXuq}jG{OymWoGn)ncd-JOIEGLh3ywBguR^vr{!2!PI1gAL11^yIfKXDbo)aFLQ zi6WMc#L@VyvPE6%aY&QH?*sN?{Cm<`MqDL{hU1<;0QnP6Tfir zO+FVBNHuB`N`1m>*&p@hSH&rg(d(apA#E2u^YVT2P&G_iCdo4K^yMl0TLNNGO3JV0#kXBg)HSQ*6}`DDdG#h;#+>;3>T=>NNofYLKxvR zqZRGwOm})QkRc3b3=^2ji@eP1yu~^;Q^*eXa*z}J#IOA27XMa(YFtMc;WVQavE0W4 zJVbvUV<@8-&tzut5{r3*HRSUlpR$X69O5`X5fJYC0j{Pdb!o)yw4yx^(2FFVVhj_R z#vB&0oKz9f;tNYa_aOy=<_D|nlCDPSAB*v}zOaGGEFbA;oI zYFx)ngmXJBX+uZi>BFO>Fp_ahVkYxg%p0uXJ+`u)-F(eaPI8`#P3&u~p%(RM#O<^s zmQHl17XwKqm1oExi`gt-DQ~it_xYI5*~=lm=L`W&ozGOEI@eR5+h|SkNix<+tti9)S@m8X-W&)a32rwFpuy!Dg2LSxS#PX zlbFQT?*LF9=_o?Kk@(O4%ak-s7)BRaVKr* zLIRJF%y80~%xo5s%UZVZDaCxv_nhUT=JqpH3E?Ih)0`MO5>IcE7)BZsna(_x@Fwfo z!l!(}0lwoj7q}!!E&NwcZQIz8C|VOsN8;!~BK=7sg;bvAk36eCo(W{~0#lhmHglNA z0v55Dr7S0xw^+w!w($jDafFkUQ|Zos`F(%<-apzZUaLwCuIDChp$Y#;?yz1A9f_wG zNepE)8BAp!OIbxeAG3=Rj#0+1T++gRCzx8);}&k?cA68--Q2@{bfFu+$}6Ijx6}-vn-^c#%7k>X^ow0mAq>%0WmR;H}Dd7;u z_<=Ic@hcTu+BaNIRj%VkZXuFZ+{67mNFN^MNm3cbvrOOxW-ymmc%7BJ%?38Hm2K=~ z4_|SRqkPXP&hiTtqwNc> zaGqft&ohNt%;jZX;|*4^j`#S0k11j&2ROl5Dz-L{)ZhmG$j!g^Z`0mRb6U`vHngKX zorvQBdeDBK>)kAw0z>#*)EgrjgBD7P5pD zyu}(evWcy1V<%s7fWsW)2Y%!XMjWnVO&1k`0#L|H-JU{}y=+C1hGn5fLLpl?f%rvr@%R&~jjFqfr9ri{>U-?A1LE2zi?5Te|h~c`jrXf8m{F!{z$0)O*HzevEN>6Y`H0Sa3|5k z5X*0AukAutx|2X6efdW-z`BD;VFYRXk#zluWHFN*7V;Xoyv;_oP{?ojT)T$@e9QNo zrksjxUAGCO8nvm*%`~PN(X^!laXd(G29nHEjOMqD(>~8sW;36~tY8)E*~CX|ro(i%5&(Eu*z4G^dRc$RoxtYc^Bbv5!q$>&ZVGu(|<&TWkf0hg;F_l^5uz**2 zom^J2mUsEDlFhc|V?JXyC49^GoTi+L?VQI{A(-o^M?)fLPHWoHneHU=2uY+cl4qI7 z3(RB=^I6O?R|i$~e9Li8@)JK3aF2U1mvSXR)F6Z#X~3;Cr8&{u%{|;l z9Nl?{ekAcEBS>Q$nM`3OFYzjGu$pz`Q@|&D#ux1607p2%kDQ^L3io>U;!3Jgi%@Q+ zG0ljkEgk7f0(}_75K?)D@l0Ymb6Ci0ihFdEXBNLmoXy>y{Fi9Et!QW!xR&oP-9jdIy=3t7xERJ$9R(AJi~Z0 znMO8qS;%6Rv69uSBcCmN#5Q)YoBe#l5l-+UXDFvaH*?Ho1ab}6avh=EL?a?-MoaGI zUOE%cL-b=1kCVc1M)NEgOkygt$YBAm@;bS!VlD5onXP=v=M=M#ulbhaoa85dCg1`0 z6fWgTf~ZbyZXk??H0E}qXhj?Dr4wE0!Nc@rAcJ|5R7NqD=g4FVGnvDDUSTP3kjFc0 zWD^B^!e@NJUJh`W?rn9m}Xu#7*l^7sB~?ONVtGh6wT&nadfU-K>B zQOaq~bAgK89ZOu!RaBz}A=ITlw{RPg+(~QN(w@$A<3SSX#~>c(Nm3cbSf1mzWNN4U z-v6VXnSZrBM}IzxS-~pSvx$$`PBC9`m=l!oGZ*#nd6Gb?QJcCn;5L5C9okm3r33fV zgI)||2>+`y!ZtiZIun@8G_sk?LKd@(m8@nR`E21Mwy}fV?B^SfaGaC;L^%Nu{(tMe z*z%=Z!PNv)i#pV!KDQ7-BvC{YLo6NWLN^{Hk-iLMFi(=oDE?l?{ww2uZ{7c{W6zm` ziA-kd@AENBJLmWQ-`4$-@kK0U1#hy7ci6yhc~85At-mjSqTS9;cC(KI9O5V^ILT?w z@-r8xnBeb3xRlEYB#2;Y5<)0p+{`WfZEiCbNz~tYE!x;!w4ojCxsUsKfCT=n^s-KW zk{H5MjARVs$>jepQ@lQ#1-!;e-r+sAvYp)=;3y|KM}?lQKUASQb-0OJX+|sB(V6b_ zVjx2pP8u0xF`e1W<7JkxoHu!!b>y>|t$e~~?BYvGIK(l2pp0|;O2vm<_qm*_s76id zP>-7lrwMn^k{H_2k^70KC%t)uB!)1Ir%7WR6M2E@{B>qqp2uR|U=8n4$QSJA5XU*i zc`7_?ySb98)FPCdX-qSsX-h}Cl0Y8@@kfT}KgB4XWdd2u;w2Wdf>o?%6CbgiV!q-q zCn)1*E=siT38WgesmtF>1LKW}qy;hDOBZ_3n*j`FC{Htn=a|HF=CF|0$mMM|vV}rE zXAcKB!Vmn!FI?QqGd)*Poe*xM5lx8VF7BZ-@jOg_9wUXP8OsE+n8iF^VHt0+miH)N z8@t%YLB8Wh&JobtHH9mEfBb5tgftEtAd)TRz~38MkG za2rjzgBG-=4foKIE_9;@57C?c3}P@(FpLq5W-Q~GKqgsCC!0CUV*#)58p~P9D%P-p z_xOO1*v97+vzG%L;wUFLNf~GPg@C^Q=bqyitNkxj<|?k`I_lDp+i1p}v?7+y#M6sM zNaiU-|B$7!bjcLqfC98Oc4ZOz|w(mW~Pd)0>h{oJW z8}1{XUOdJyo*{!QX7dUwc$<6**~xy6af)&(J>t2KYp6~w>QI-PXh;N+MA4RexsPrn z(3}1|#t?=woKcKn9M3b2SQ_2|v2H2lmNi}Lwhq~NE zLvACASni`64>O2lhBKB4Ol3CnS;|V*@Gc+l5k>6aE54Ugr%~v5rDMV;5iX4d3!TKk+LUKjz$| zGJyn9jhbA~&D_fE+(~O<=|~(sNMrzm8O}3|V=~#yV-ZWqWi{)0p8`H*2m3h851i&# zE*@+S38X4Dxt=f@5y2fq(}wnR<^g)rk4G88P)0F^aZF$mQ^+QVS9pzF*07#@HnW`r z9O5XY{KPL*c-%3`C0tGwf~iR(8q<_JX~o^#%YEF>gFH+h9^p}jFp_ahW(GMdW(BKQ z&n7-%JH>p>5q{tt7bV*+uA(M4P@h|gB!+wGLU$5*gdwEz3=^2iLSEx7*76<&>|!qm z`JS^};Lk%GTLe;#I^0MEkwkG9ZRton2_({&0VMGxPcfQtWHN(!Ea44Svw;u!lw!W( zD5adC!V|6=TtzS;gwcoyB8lQI?xizb=}u4jlFXBgAdPe~$RvyDWRt^u7O{jkc#C(~ zzK)(v3bmLNdb{%k#|SC6=&~wQQo0 zUF>Eb2ROu0PH>9zR2XU-xPl;RP=_$WiJ&>HX-8+`h$n$W`Z9>Yr0_Ij$>0TMGM7cX z&YQeLJ|FTaJK4)O9HW#nexbrJ*9I=(a<1lD>JY{)G$o1{Vrfq&;^@Jnj3kY8GRP#0 z>Ac7SUg34#GIkG{%$3403pxrL1HP@3MuD z+0GsgaD-F*%Eco+=MYGBLb#DzX-*qD)006AC5=pGvxqlX%NB~*%R!EFnqT?LDCap> zQ=Jg%b1Th>=5Fq#Gu`RMAcm4g23gGJKaz#sx12oI{|A1?X74GWkRorV^D2B#2;Y5<)0pG$5P^B8eiJ7-DHpC*p`FfkgT;fFzPhA(fG&kxmAg zWHFs=a+uE|mavRm@>s)q^4UxQg%q)aV)jzPL5^^oQpz|>IRVe8pGs6FkRXDoNeH2Y z(SUFwh$M<=Vu+1g;Yk8MmiZ}lErkg$zeW=Si&-L$zu)c$!9YK z6jH1g;Yk8MmiZ}lErkg$zeW=Si&-L$zu)c$!9YK6jHlh0-fD5QuT6tkBS4swL!lv2i7$_W^&ekxI!K!OOSCLx3pMgzi$Ad)De zi6NHubRv#;5=f*k14ts76jB*U8tG(^Nfy(|CWrYfVhPL0C66_%C!fs}P)HFwC}uAu z9OMYcDW#0FloRl*`l&=^0tq6RnuHKa7!3#~f=Hr>CWctr(}_6ZNg$EF3?PYQQb=Va zX{3`uCRt1;n;hn|h$So|mps<6o_sb_Kp{o!pqRasaF8P$r<5|zQcgg+`l&=^0tq6R znuHKa7!3#~f=Hr>CWctr(}_6ZNg$EF3?PYQQb=VaX{3`uCRt1;n;hn|h$So|mps<6 zo_sb_Kp{o!pqRasaF8P$r<5|zQcl1)^;3z;1QJ9rH3=b#!;(nu$ROtP3xHaW~^5ldJ`E_tkBJ^5^=fI^DcK{0zN;UGsiPAO%a zrJR8A>ZcNw2_%SMY7#;yVKg9|2qK9hniyhfPbcDtCxJxzGJqtKNg)YrnPf4Y zY;u^-B9^d>T=H1Mdh*#!0fiK?gJSkl!a(zCXgV4sYwW-gwcR- zB8Vi4Xkv(^J)MXno&*x<%K(x{CWTZ+l14fiWRk^nvdLjSi&(-ka>-*2>&a&`1r$=m z4vN`J2?sgCaY`xUEae1bsGmwyCXgV4sYwW-gwcR-B8Vi4Xkv(^J)MXno&*x<%K(x{ zCWTZ+l14fiWRk^nvdLjSi&(-ka>-*2>&a&`1r$=m4vN`J2?sgCaY`xUEae1DP(PKZ zOdvr7Q3MizA9Tc;d5)N{NC?y!xp`WdaEzn3{wTN*E0YCxS?#h$eCVWKu|FBx$6R zK_*#DCz~ARvxp@uBbPkZu%3K2Q$Qg_?4X#vlyHzE9H*2r&QeZ5ruwNwWdaEzn3{wT zN*E0YCxS?#h$eCVWKu|FBx$6RK_*#DCz~ARvxp@uBbPkZu%3K2 zQ$Qg_?4X#vlyHzE9H*2r&Qgy5I6L5CDp8q0f(WK2A%qe}1Hy?Qk|?5yA(r-ZB93?x zNTe?VNFtdOQW;4a>12>e7SqWlhxsgG3CqYOk2S0(pUo6dND(_IW-lci{280tqBvC{YLoDs-L>%!XkVsz!kVG;mq%x9!=6`$!(#+#H zCh`I^nad(xCzn;Mqlv5$g_n2Hx5Y?$oT^ev3 zk=#jZ+R~8+NTeT03}pn*kj@0Mn8iF^VJUBr$2#6;E1&W?d-#gOe8-QR;aC1N#rK+A zNf6bk%?*Unkj6A4nznSLD-Y3!0X)tyo@Oi)$YK`rc!j0BK_2h0kq;?iH(&D|W&FaQ zr}}Q5s??!Aw-7-yTF{n`bR~g43}Of)c$Ue`Vj-{dChPcsZ4`5WW1QqH7pOGNaYjw* z(uiiX;4V7SjfWY)5JobN$;@UEZ?Kjv6!8W7ImB_!5HQ`b%@tfj2shJ|R2n9dv)@;Z5JU^Abvi?2A$34Y`(7x?oG$0e7hY ziKZR*)02KY#xR~?9M3a_S-iwzUS}n%S7bBymP z<2(Vg9luoODuSs^DD?@aDN(eh4foKQ2k1#32Jkp3j3ABiWHN;r%;6)(zTWC%@9-tos8NzTzGnVm8WHM8k$&1YARhIEzC2!i6 zHEd)vA5p|E_VP7H_?|M(6EMeqq%v0#Ol?A`PdH79qBXH}B#s^=(w`)rAeGUiGm$K2 zlEXrlu!20+lFtVe@)^bK=OD)@3(2P52#oe@{198NYKq7q^z+j#rm64>8P6nA|F`aC3n9m}X zu#8;tSi^eq*-Rlt?BE|svGqzgLMdknnCF-!kYGXxBb-R0iKP?qB=R540Pjs=2*Y@q zXGmuPlbOmaa+uE|mavSKtY$46*~EtwvYlOgNeKrz%J-b&4CPdK$@PRwxso7)sYwW- z+(aW9)0F14B!+f$=9d z+(%a)q!*9yTOQRW|K9&?dFWsDN9aHESIg=88Dui$_wkw97kP=7S;BJOmC)tD}yHilBmsTMGsPLJVOM!29Af;a2m9Q1n2_Y;5_IL888fTK>kMH3*cfXwCiMjDWCl?2`Zo({tlPI zERese@pW(mEQH%&3ETtncRyYMkHHi03_J(x;WgL@Ti{*T4xhj-_zL#G5AX~80daS6 zop3ZXhnCO=&VaKZ0pza>PKKV)+pbH+10fT#ArItll(k;qpRp{DgCZyeKTLwjAb(Tw zC2%=h1#@9O+yuA6op3iShlgM#JPuF7Gw?jT46nhPum#?M58)H|9CpKZPz!&+;dhfS z;W%gsr@)!e9y&uZoC|#*4F*9LI^715zLr2Ej1Mg^@58#zP5Agb+-Isc}W;aPYI{skLh8@vxY;4}CN_ChWE4spvU+u>L^0ZxW9ARf+!Bp>~1PDSDs$n`@4s+l-xB(Wy9dI|?2M@#J@HDK0_3%1ug16yA_!Pc` zJ@6y^2CjQ)Gr-Z%99qGta3-{e&d?Rkg}yKVG9d>>!bMO76CebYFdeRdt6@Ie40piY za34GjHSi3)0I$ME*ajcMPWT$WhhM?9oOp%fpcR}7?VuBMg>#`FWWX>uA4bE)Pz)1c z5>&!;xE!vA`EWBVhI`;XSOJg06R-xJgZ1zlya`+2UHA|_hR@(j*aJVn&+t3M-ABB_ z(a;=PLK`>(+Cc(zfn?|jy&)AcAQQ47A4bE4Pyj_x2IVjbDqspshs$6#TnqEzCb$ip zzq|N+FFXhs z!d7?>K7yU_CG3G8;1{Ta!yn*Upc$M1t>H9i2MN#xlHpwF18Fb_hC&XEfD2$86hRr3 zLl`Py8e9sq;A)r$H^L&g1MY_9@DMx-t6>d12kYT=cnh|{`>+E(gRfvO)WRQd_=D78 z&>UL9sn8Y@AQ8Gl3Z%jy$bvk$01Chh6JZim!r$RCm<@B`23Q1(VJX}Xk3bEqf#=~B z*Z^DLJ=g)eU^n~#zk=%_%62#wPJol)3}_FXAsKo>KNtu@As0r$MNkN35P&F5ff+Ch zu7UZm5N?ONU^%RS$Kh#s4qk>gU^Bc6AHh!e3id)R`~iorAWoq7Qk(A7u*Mrz-m|vFTv}u8QzCa z;7iyGKZAONw1sBS3QmKw;A}{S^B@&6!1)`>=N!m~(QqLYKoOL}L);=76WjuKz(3(0xDOtJmGC$`3D3ZD@DjWVZ@^oy72bsp;bZs=zJzb!JNOBH zg*rIwG4dK54adO=a1xvXZa51Ppfe;vcjyIuAQc9}5XgdD7y)D8A{YRB&AA?fPq3e5+cph8|JANySPIMGL3jjK!4t3s*1?PL3cL;*VGFziAHWXS317f&*b6_xFYpJ% zt)}jQrqB$IhgQ%APKUP89y&oHBtuU~fqswMe!ST=v+Q8}17TQB6NQ7kQ2`SJI(qRw`g>1-!Q7{(9K_QgD1PDMFCc_k% z4l`jE%z?Qu9~QtOxE+?jQdkZT!XvN>o`5y54qk*;;C0vtTi_k|0CvDm_yTsrUicAy zfj=PbNv2dn2G+rg@Cv*R8(|B)10TQ+*a=_2ZrBSy z!Y}X##689JLsMu5$3rV<1E)hMe!ST=v+Q8}17TQB6NQ7kQ2`SJI(qRw`g>1-!Q7{(9K_QgD z1PDMFCc_k%4l`jE%z?Qu9~QtOxE+?jQdkZT!XvN>o`5y54qk*;;C0vtTi_k|0CvDm z_yTsrUicAyfj=N_E!PiCp&1+xt)LB@4sD@5bb>@khMtfD{U99%!BEJCJQxLIVH^}f z2~2@E|+_tKbP(1MA>Lcm-aEjj#pYfe&B@ z9Qyk|CkA%@|Ck5j`3Z8*=@B*xdSK)Pd6E?wCcn98x?eH<|gwNqC z_y+dE4^Rug!XMyzj_ZXZp(z{-&EW)S1t-I)a0ax6cu0V=ArZPlcQ_YPpf9At02l}~Bo`vV(C3pp1gAMQ&Y=O7oJ@^oIz^AYazJ%TIEqo6@!7uPTsOPy) z;BRmg90SL}@z4@l!zpk&oC#+^2j~P{APKrbPdE?yKz~Sw3>X5#AREqy5ilCY!o@Hi zil791;D;cDp#rL4Dolq<;c~bV=D@Wu5B>oQ;AXfL?tmq5H!Oqu;6Zp89)-u@33wXT z!gKHH((=dhHdaJd;lN8C-5130bj!&_zr%ApW!#CgSZzMSAZsPG&F-2a3Y)p zZQwL;Lpx{>9icOv1If?>dO>gK2Wc=62E$Mo4!MvIqu>I#2nwJOyif)cApnyg3Y9Pg z{to};KUdsghad5`Bbyx6^yp)bZFXGq7RR4(V#`)1wLZDcDW{%x`Wfys+qOF^zI}&; zj-Af#+$Hgxq^`-`y7%aLZm;uFdiUwuuYYP<`hbBMg9Z=D96Bs(cy>%6t!t#Vst} zDywcY>kszt?RPA`bICvNYH{~L0xZ2}*}co}yZ?a)5Ayw?)qfrX53P9kk(DhTZSmNu z$7@zU@#Ir~9(w<8pI-CK+GqD)eQ3@9&=^?v-19HI_&@a84_)@57&sIIhhpGR3>=Dq zLoskD1`fr*p%^$61BYVZPz)T3fkQEHC*XI77HOY+v#}G-J=mky*V^x$aB02F`d{sO z?+~+GXP0|SGW&P7fARx!oQQRtJx)=`gge46A7!0x!yRLno#P#6m%lAB=lMW}@x?a$ z@%H~rrKEp1zweDygZ=E#ITvvi!zQG>nt|sL=Uaqn6ceefh9P4cZ z&2f|Mau4h2HD-Uk?6PzHci8mkZPz>3|76(gr=MNF$i}liIRB*C_0IJ>>sQ+SIoI#3 zcRZlCIS*&qv2*>-vSa5uon^<)bvnzAo$GX#9Xr?QEIW3tv$b8Zw)@5AQ_y(hncXg# z_I6xq>n;OF{Ceik{ik&-?EFUQ?=PC=&->f&*P7*{tbcySe*a9J{`;`N>~uqadli1-aotDtW*>JjZ3~c@0UN)6MwYf*Y-EdJNy4~ZilHkvWdw^`tt>k*FtJ?g=Gy zRKZX|z$^b&1;Zl0UI>N@WT7-F|9S$&dMUz9AS=Df7xDXwylh=m=J5rvSyn}!K!>Qi zC>WUR4U5Y|es7gK8g%=Efl~g%x_Y^w*f&{C%SkCMkNV2JDko=JAcb8AR8`m$DD@`9 z`-?j^_}tljpcQs48~YTb-axd#AM_Nf5+Bh} z>JJur{IYGSH#*tlukfnO0QMETS>Z1BL_Mn9TOM?mS45)jLa*E7F7_2geZhbyT+N9F z0x9VgB_&>tn@6+;%T>9js-RG>Dv0=|c-_8;yVx5Fdy70#Z?TGay%XKR5_ge581WXn zOME0xP9Ttz67fcLoJ)cfd;Pwsw_LuE(=zLG&dfP8g%~gNk-XD<<}W8D><#%nMP3yj zam)Xci{0@_$;BzLe^~5Ztb8dY;b3_%TetuZRY|xmvYGxzl~0t!bbG?3 z73D;kJ6HiFZk?h;Znng?&)4Aa3Gv0Gp{AqaR6P;d!IU6pn-C#%QHn1TED4fJqa3T@ zDXPTyq@Km9m@Fh`DVvdIs6zPxDjO)YEamx^4UDUBA|wP0&0-AP!0El zRaz*FtJP3hU*T726{RZQ8&Ww%QI#E>tOk0Elq7jVM|YPl?kql$j3J%DR3NA`gP)w? zCi9bDi`_ciiYvmtK&hLA2zw;G&7GDX4TkC?h07s*&8-uQ&1^2&%@>}4+ZTv>OTFO~ zcamhE+pwogHd;UV)vw^h&gj7UvTC=ufN#cmKBkg=1Y1y=U412|Eojk2-)v=X1j*Ra&~>d@Ve+B{u*vT-tboG&<9H=o%IfwKnG6O zAZ4H@8Vv8hiO&{##gw$=9>05Jz^BXFNL20u+7o{6g8)UCWU_L1Lc5M8ZTiyrzV2Y*1a9jH+ZOpNbex+t?r3$$D;0%@ z+d0I}JW&#u8{A7J<@ZWC=cG=gA{3%Hpy-vq^vvx15qX)}gYBuh%RD5ax0Irhf<;F} zQLrKq)q(kE5EYx0Genx#Qy$wVwV$WZPsvkR<_&O{Ikjq`H(KfS1}G<~MBT}z;E3nY z13UpKLyFi7=jb8fNI+eQyUV@NvS6`0?2QEd6>{cHsn@(=cf##X(~`T zmQ?GH?1THhEX14;9Z+!#6VA@!b}8>-u)z(j2KWqJh^~=_;S-)w$+4^nk_pRyo^lykc?)Wt08U6T=06$Zl zQV}g`+=3&uP2a&M_nXd!@sS2CMW@9m?noQ<0AJB`q-#OG3Q5CTMWjI=4(VML#6Hm= zwJlO#gC=p2v@_!)@~`Ubj!y9fN`ifrZ94mW`ya2tDcFywm|LhiKGNCE$NF})vMmZZ zsf0!g5;UF`Z=Z@lAw^=bQ&7c665}KNRG<_(QgU|>8;QuNXVfPosbjI|K@be zF$*~yXi^0|s(7k!T9STmpl|#XV$QA(JD)C87dH+N2q@i^(0ljk-iH1dn3mH%#Xo`0 zjnW^(`lBf&C>l7e#DW4{j?$+xt93;ol}Lkc=(I$`6<+BG@{vMMx)_sH0bRqQC}mo? zr&?F}-0@~}YTnp)2kKer?Ly&TRds^IrF09WyFndF8-gZDNl?-;lA|J>=(|O{fnx4z zx;Yi)p2$Q@K)Nc$g}!J+I(Obskgs#5Wzu0W%>gy7*q5T$N>DYFNkI>qYnz^5nid;J6R6Nr3DxoB6u*esE3Vgvtsb({C+!vbe z>JHR>_-uEd`%>KY!;9E$oYzPNX+B}0R)OV{q*&T}Uwy2ZADw%bLg1U%&u{|(R8 zIi|-pIT{|aqP{(-y9lO>6f5`=W1sACr1+&2PN{E`I!!DFE=X@(ZW1;Yt~i=#&aJ+U z<}YdRy);zy39?tyI^gVSbI}JwrZd-Yf3fhzk>~+J#*Q1El4wGddM0~mrq;LX%+4dd zr2^M&KU0I43-s7x+)eh;S=GcO%>chwcM&8f5VSNHEU9+RQx59Rt z`sQ^9r@ZSR5iKQ0mteqOZLTWT&ZPw;jdq$TzG$_y;&l5l(G#JcqEDni4@M+9?P481 z+mrogLG>YY1wmZNtxkou-`K_hzYjC;HJRMXK!N@~(XOcKn8IL&qz$=Uf5UxBZBSGm zDkw;(>Rc^3L}!hNTVI79HGXL?BTeFgW_E;Lp4;@cxbTM6i`j}&Q%M!n zD7<7h>0ogf-A_BrtDIl7DP> zUD72|6!wMW&~h{>=*WUy8E%Q?!GPCW%vslWQzhc}-7c11++fm0lrbO1EWPv~q@C~V z^Ut=k1$v`XXtW!<6P@nP-4II)X>90Tixm9adknAEXBOS-(FJg$CI~rBYAf0ovHMK# zoPX-Sa>_q@fPIp5_GNwsxom1t8FY|grI-;EVM0aj%g6ghu&|Oea>Ge#c zcR|ZZ^@*KfgLI0e5p6&Frz^4si6OBOE6eLoR;qHRAw($~>x6c#k5AKky{!3ccA^zQwdkQJ4iN@U~-faDh+zUZ0PJK)_ANi#p-_TM;p+li;QR3frJAOXf$j$ zN)x3o1zm%dqasPPBKeN1YWgKk$}LUyPKObi4o12kefWM*V!bmsPq zM*ZF{bUuANC)N8iUljUEowfD%p=q~pdXm*lhLux~?N+vz0kdKjH1%pG_{pIKk8%qU`2ZCwnr}K zs_SIiP|}0SW&`S1_Hm%FjrYB8eb(SxGX~1=1=r&BO3`AQTdY!y0(uzNW7ON6W(S_4 z#u^3(8cwj+!71y}z(3nsUy?K&Z68xM?NjOvm}evV#F_1mQ{R>{2w$E+(^n!}m)s>X zypuw5(%+EpOMN_IOmU+|U;8WU$^D4}hYiu+4*SBCdx!kr6A!&zCZ2!U*?9j;m05po z-2a|*$g$~t^^V5paj?Wv9^40*8g|8)~5ILPyW5@T)XSv3%Bq2_Wb<7+uiYLq*{bOXmYZIL?m{?CX&rxhQdWe9zc(84_`)QlZ(5FQ z&8iYT8=@#!8qkrYSHde(r5!mL#K}RaQ_UoiE*^*>4P0 z@?xYy=D|hF66KTAl8dM=jBL8kCbyR894n!m9hOyxg3;I#dzT?vbF5IXGWNNvhq-3~ zdDJJ5`D{O0IjLbLZkcX~G$Lgbl_q3?NzrLJQ|K(pI{Jy(&eR1xA(Ewp@=cl4A((yui8Edvm+s9?8DBJ(+~L~s*m~3d8pIij*~_t)8ul_Bzc(kW*>_y zdUoy}?gY7gD#Bj-oPgm|-2x{(*KMAMGv&|6j5-Dws-;Iu2Z#Yk*_?JfPg|JGQN*C2 zGd!itB*j=BmXR4oIT^<>6Jp32^}`x^9EInWG7!kk&m9(~#~>3A^}QfBoc>CNKkZPX z%pGtRbeXnqsbgb|D{&Ib6n&IHy2LqHyShQCBU!awvYUQ&1ryHnkg_R%>=2jUp)N&C zzt3IYbz@Ldj}9kr0p*ON>N$pbj*j$4^urQ;TblThL79C|)PxIg&+s7b;K7vc8|Z`C zP$W#0DYdrqrw8R?qslxgV4PN;w{MD%sk-!LDcU)GnQlkn)!^yRL~nH^4^`{$R}+5? zw~Kw}Zbv>gCuvi4-)W3YEp1f1707%Pra8Z^Lw2U7aWa@G zA9SC**voEs+{=|vB-7cl1&Q8eiAS;}H>DKZdfdOL$Q#l#m3Y1proX3eR%f@WVR%Uw zayMgQbQ#H$PEKmLiK$R{7D0)xpJ>Y9urr6XKI?Qd)4J?vUwyZk8;1mAJ{v`>BM~x} zND51nG|rJ@aqCR5GAAE<^6_t`NB4uJ$ARL@8J=jE9A8Ql zQSz~b>+Vi)27~qwYbqig?m+dFvr8LHo|na*X4pziE}WKIDak`IW%DfcuKttbH{7q2 zt=vTn!*=GjmkBitxHy#{F=cOA+0w}w4Tg&Btzq_l@PFTZ-@F1+;dqo82YA#j-(r`e zWoG?pdrbIoc6o$#KkEeR>DC87a>H--*!M{st5oxCYwKRtO1$=(-RFLfBd>h5rsn`PuPkYG z+|&VTY}%TYAFUnWe(|x-dnf#DpnuN=p1jKJf$V3$KYP3xzNc@M#@q}Df! z=dId(g?Rgf%<>FRs=WF^^U}QfLHo{UA7C)h ztRH0f_Y^S;QmDN|Bp9<+2VE6*-eeWK+d zX}k5K-5I;XvqxrSnQj~360#sHdnqX@lS}dCw5LzX0t4`}kWvz&f5B_|YFb|L zVe(%|Z0?mWC0ZoS%hGU2b`&k5NnjRIXf#VnXuG-02rG6zN|)Dker07Og=U#~KI9E2 zva@NqX4N6#<^! zm+3CA^l{{QpFHb}Ow(Pr2v6_|P1cc*yeD!F!z?s$<;-;5#52GKA!TkdO~Y_>zhDt^ z1lfr>BV=d0z$}h{;@0A9BzNjbjuGFq%uJP;JGnbA=M+tpahg~hC)-}3B#T>~nCU6z z_91$=WVfFD=u0VMx7->jOjInRXV^*JH479oYcbM^`^EW8lFA7Y$ioTMFNL^8^y3$&vCX)LE3tOF`w&Zm`;{ilh($CFCH6 zU?eU|lpU@ylNY3sFKZd3k%Z=>FP5w_CzUAI0etlV$hkJ%8wQ}aalk#x`e?goJ9&*y zriL?|6K$6=fya+}wS2)vm>2BKnNjM<+Zaxh$=Nupw?>Wcq)BjwD7HBwK=mV72(}eigX7sY zWyYFxWaS%wgqC!vl6i@`Q7F^@%{zGVEoGSkcRQwE(*m|{h?wum#{}?HG0IeR@BqBU z5RiZjT*%DvkQ7E#X7Wj*ltM}FVy~P_WpN_8knz$2`7Gr!6F!(S9FSLAXg`~|CBblF zL?&SKvOuPOvxe~zJs(T%|M~$GPMUckiSChP(b$I62{I7C2J+q=gC){giA~a?-@*Gv zj5?S~m2)zGrd*VaAqiz>a&e=3C90(LPSLF2&t%ewylY`ziP3eN*1R#vulmPf=qdJW23vhwhiwlz})nOzt5MJCGTOjQfJDf8&6>lfXf?PShV zp}fIkrU=r-)p5{UUhvSTCIR(u4Hc&hA=^LO5YVp^{V#6M)&9q)txOZ+KR>LVk0-rK z#uXYTx|BuUDjCe+?sVo4Hi`z4f!K9kxH1utrQf4r{wXt2_>#A7Dgwbm$tb##J9qq2*hw%M8ZVU*6J2>rEkDiI+tlu{ju{g(XpBiuP`iF^U}qVG zk{lybV5M6d)K^DtWWr|sH*9EMrE+pw<3<6QN^)mqSSl(#n?+5i;9&-HS>*jKJ5#iN zhYjYr$vh{!?-1`p#fKQakj}FVaM?%mIwBi{lZ0p(t}|teyynzsn?{Y0_{3gG5$Cyo z!@b7(?am8R>?UI8wK3UMsvYXgSewI)Xi>UNj7Y+l%ebFR1!CHk6ezm!AgzHE?l4}o zb$Y8wU3&KD(XEFR3yS9tj7RS%~L3rJ`(DM|Wwgn}ZlU$4f zIVa;Z+)VaVu|@}FWza8^LCI6}DWX1kE7CRzC?HKUf?dj!l?X$xBto~?{v&Q)>|tI6 z?*-VACaDG48JB5tg&h!(w5xB2NPO7Z+rqg+iRCHQ0fAzg-*03{EZ%Db+XlkR}2KARB zOXfI#w%^!3?DS3j0 zBr%hZOrdSFovBisVW;}^pbV7JTH6AniAI6cU>r4;ZjHmyQfnMe+H~X^`Mm?#UF_jx z<4_IqLF4_=fNLDGgdT2#hn-HYc4}>DW|#}JS9Fl@yozD#d7Cjh#20mti)HYyzQodR z_1mJBSNr3qR8X%UAeB<*j%1KCL65A;LrDEszyJDj+c^{Bme?_E6WLiTGqPoac5i+B zd7Lfl&+X5{9sCGRJK7X#6g^JLckotuNfOGH4qiHh=978+B~MzGg8HOXmDQphL>|H_Z1gQvw>ufh17j}Q(N+L9|7~C|Gq6_&R_)F z)7bFWcOIPAeTY}voFR{MO(V_w&n7w#w4IaE%tU3(g13W7i&&S$HhYxQiO}&Ms+7Bk zo`AgZ=aycAG*fBe@YI%fTIAuE32)-RL2%x1_c3-+WS$mMy6cpqwQja-QD!d&^sox>DplGoEwuaNeJil{2_tcv}82 z`*CFMh#WN~!vB3LGDTkc<-DDl+Pc9ZN6>>;oLa0L<=2gP1B1b(%o&|#cbv#}l9psbt$X<12Tm3-`4|1r7#W4HQ`-RnR0sQ=ir{^Pm&WBvvCM2r47 zAkQ9rt zq{;k#5%c;HuLOwX9RSo-?mk|c)iIdzsTB zW&m1xlghTp_1o$gB)`jUJGbmoaeU@Lcmb zdqigTNCvdzQ04NA4|Yu5C{}yhF00JOYV-?TqjP0Wl>P;QsuIS$`Q(k-XPpe{@X(i% zmIyW7T$y~}qh(sntI)jJA`wk+WL|C7;~4e_#F#4NQGEizbjqQL51GQW-#`?Chg!W?5xsHt|W% zztX|wy$@FK=3F>f>2zphyf5spmX@3?(MTvgaAALn#n!7)#^fcCQ@v0fnTkppI6R|~ zN76D1WrN#x2dyVcOkFXM@=WcM9)S!cIJ>do{(3%vX?^@~V1bTsq$7#*SK*xW`;$tNSDO;M^0G0NrSy*^%SrD|n!3(2uwt9&ir?Fj zWRYr1Qdz=sExLNNGyC*a?if!1$1XCjNxx_# zM`%>KB}p90FsS|AH0omK{Tm7Z{eFqAvdvJGzMC5TSQ7i=mjGq-Cstl^&p9tDbH8vJ z=CbG)nP*Kw{n}5M@otm5?C`mwBT8`Hu8p0JGa$zm*-luo`Q3*R+^3m2qr?0P5Up9K zK+~11e!s8r_qGCV9FD@nQ_Xwc`c`RlWo|BqQEf9gV1nr2+2s`L-qwAr`&u`#UT=@HtA98B_px2xX1q3R!iDZJ z&U)W&*WY+Xs$EXA%hoF0E?cVsc6mUmNr%tvaR!?8s@gd9A>-K}+wji!8FtxP4YJGD zYOr0lRzvKvwK_cYzUA`wg+1;k)|n<;>Ltdr?R=mKyUen3<_~3?<+U@7LysG0eQm6c zvHr^JcgFc02AlZ9T&JD&y2=jAwsm*SEDk-gw3+WA`=2H#}?n^AD*d z`fq1{nK&&!+;ZRv0dyZ!mZ#9`r_?`32ays-_i~ylc{Ih8)5IeENSEpBUU|$L`;i8z z0%VpN6TEr5z`WKV^&tfk4+87gIo;lf2_geu((!E&qF81E@HCXi_Yrxb%L|w0b72L) z*~8OI-Pf|;6xfPUp7k>Wy*`Luv|Hy^^F9W%&?8Od732b*aQXuFL6Z%UJtDqX(Me9` zr?TYVj{F#EA%&=W;Gi_wPPy$e!Q2Tn7k!bkj>vFdBx4@Br%dEgcbaHq zOPPN|gVYnEJx?n_zwF5_<$unj7So(farZGly&^H+k6)!=!+v`6rpj*SPH`)FF3l`j z86lRL2)u#OU=8nb(011erKIVl>yLy&e%HibR3WWh_n=Jv3-Wr1P4*y%YO1olB~e<1 z&XC3W46RO)Hcy^ck25&APjaG;95c?=AmH%)5ortqQo$61-#87eb-U`F-` zH84XfD>p4q<;g!;`RAvrJo#rpPF7Af{|+CXrt&j}XR6$+k@;#k9n5?+DxIKd!x1hLooj)>X1S1gXd1(wpJUVn=kw5v6B%w!!okzbY>UmPx(%_ zh2E>561mbgMI|Rnt}@moi~Y%y-0FgiKyjx0HUd2o{!Ot@OwC=yNShfaSN8AV;rY2~ zhLdF;0*|vPS-g6S1B92VLb?h3bc}qEwysiy%l1|_IuGgY(s(S$G<|J(>a3p@+5KkF zD=5h0JsTz>jnI2Z(IugC{yLMh-vfm+&pgesOVw z)Sm{-tsao0^F_g6Z*(9(YGi&LK+4epU2N4UJKR5%=4?>$lJMMn?sG#kow=f2UM)&g>i>=}@k^HcqF7otCQ%;>~_Gc$RcG>riq3*R+s@}Z8{UrlS z`_{xVu4;n!vmtqPgA6L?sUPp@Y(#9C%cRne@_Um^^Re$ENRBsItv-w%gFZ*L=J$RG ze2%Z&d}u0XE+Yi;qr1g+@@nko_iRMklTR=Y-SrQM>nDj#Wrfrvx`O3LlJwvt3;yD! z&U1a1Li!*a$2^AC@AdfkK_z0Hx=~Lx*1s&OAJNMp^$%w-#mL^*E3e2ljEQzI+D$><$`kO1)nH+?~8cLqvWbOFxe=6PIn9k@Iz?smimg zsIRmlSP`4YQvbAGs!Q`z(Dk8AggM>P2KhZLVzcW3?~M9O1&Z~pyx)lstNK^V7!Z|A#9yop=wx>r*|A?u zmI=+oIKT9-|MD2Wu}wwE+_6SneG{aA|Ndm2eVRCoB5~&2+5RG3mP@Nt|JiUlRrTF) zkdXU@E2cfg9?7$OiXE@Pe&iSTYzR{&9Qb%18s_rqj}6M=fy3!GXM=!xS^s_@t;PBl zV0PN@j7H5sbD6ePSs%{+sJGLSb#6B`K=+6wY7@BiJY706?Y7q~Tt@vr=jx_$gdK~~I@UU}6xa@1)H4fxorIG^204aEy_|2doLw&MWq z^^H<@;DvYxUXOp4^?Nw)Ye`4^BwqZjQhn!g9ynjTSE<=peW%ntcszay*Wk|c_#O|z zt-mKc&czjY%nwSnxq= zEuM`#;u?GoPWYMM&cciF-FOdPk9++>eB8u!;?wXhoQJD^RqD2z*&Z*$>Nlmn!b$ii zT!m8>alSZ;bAMOridzYfyWX~`uE`%t?Zjoc@9k_~r_>nS8sC6d;Q4p5tX%4C>~^`- zH}`PexXrRnb+xz{hvHnyhZp0Q@CN(}-i5o~%XWvkR6m@HhvBt2g4N+Jbrl|hH{dGV zayjXSPr=*q0Gx1yO9k+Hy!0XV_cxciZw2A;D-W|jycah=(xuWKVLi@S$@bXu80(w3 zR0x;hd+`c<%qp(yD3^K|hwxW;JuZ2i<)$umdkyiAU&XzScB$;ue2>>Z#dRFxQZGKu zb>abQxQ=7l4u^2tXEtwkl@$wPNIBy5X!B^tk zRxb4nuEFQ;B-}~FKhDLE;AObSXT)=Bmny|ocrI>zvP*q{XJEC9@4-iX zPW+tWQj>5QUWeD>yT9OmIn||({f1?H)E>g)Gw`z0TCcF%PjrZU)f8jdYx>S3-0x$ZF z^>{T-Xh-_sdH4go3x9)$oaIvAs#2 z=DKZoCLZ6J`=iO`x`p^`thx}7M{TYv!!P63i7s_f)6I3;u^%U#<5IJ6D*hDD!{6a1 zNiKE7(VP!H9&f-e;!s!e!?By|YH$ix$u2br55ZGpJ-!Av@8(k1ETkt@jN^U@4_{Bd{38JcoO@=cVqXt+>dxRzP$D3x;^;Rli6P{mkQ!C zd+vqU9XCCN>qy}~Jd^Y9O*wQH@q(x0^>|5p_SeUyrY5jI zycw&$F0~Ek;?HsGel9g}^ya!{_&PkMKi4sa>%!A6AU;!Fs%k9D_)6S5&83#(A-Ls* zqz{hAP10Rz0UnP(!h7&8JY;}Nb-0Lh#uIUqfm{dfg|EY9_!hhizjiU}GhFJ@al|A3 z2=Bp17I0pJ$T#EJ53a>y2D{X69`-lHrSc0oF0RJwaaj@h3`cNkCf9)zhPu>7ybXVi z#|(3+!eY_|m*Ipgmn!nIJudSRzj*xw(m$L0G?DOloS%5YSK;P4F7+0!!o$niKG&u0 z!6AHRfc%0x<6h^xR5@OV7vS}{ZIF1$BOXKK1H2Be$L%L=u1m@%-SBpt9wyuf?t45B zyCS3`o{GnhWcw(`!H?rwyataM#c~DlhEJc&@kf)N@nYPol6b~Vt4RMbF12b3*N%u?d8r)DOY8Id_7Jm zajC=`xNf}cM)D1Q2#+Zx-tZp06Za}({|g9*J7Bku^S_zv#MQU6Kl~c*HNmAGyn}SW zM=s|06J6>oT!z2L8)W%Tj_ao$$K&yAycpNu*5z!!gml62|780B`3eug&*ByMC)^~+ zdECW%T!xq7hjCJfa$A;hue*sC9KdChxXz_q4}JI^t4?-OF|2 zZ9DyctLk}h}{ zZeHb57vN?1|9s*B&%;accKjwT z`v>LRM&b`|dyC~8$d8*iK0X&G+(@~J=izTRb3S;(7UF*a`D82UhEuk&J-!Sl-Q-fY z;)Qt0+g#T|+R=DC?(q)m@ws?A?uS!vcBvn62>*=LBJSG{xDLDx*Wk$?vY%VH4{#O! z0k6dqwiE7Fms){W;NBmRKk!_fbQ{-)Yw*w=q~q+6@U&0J2Y0yC4m=z0`jq|Q zzwPAua9^CXnD6moJpVJo-$}jsIoFNH;I;UuFF3CytjEjn4Y(E`_9f}~Ps(qcdY4PR z@fG3mdtVcucXQw4c{q7D;qec6{8G~M8}@@=!m0OA@9ZJI@N?gC{>$hW?B#rMm+!fs z@8$e{;Cp=9kL2U~xPS2M`(5foyd59;6Y2Q?{Tkf-L5}w`@rBRB+wp3g^pH#4_6ygE zOMWH(Z~(hkkWX+G?)w|@f=A#n57WQHYw=0H6Yde>6VJvA@HX815B9r~auTg@>=HZX<9(>M`Tk4V?r~Jk>_)R>f zhWoYYmbw-A^`p1csnuLRPQ}0D^|;+JTk2Xr;Zpy^Wq9bZTk1C89XR(%`VY;v)Gfmv zJme{t`UkGTpJDYh;hPf<&%rbBwRi=-5htyo9>%-yD|qcQ~}I z&TlK_PG`;!kMF|uVn3d}jdHC!`2eTmvbVYK@doVe!FjyH@$d{hvM1s2JJ|g$?T}ui zAMSux;B)XUoQ>V@5g&LVE;x^PdY^WGZ}x+0@Iw54AI|Fo`e}F!uET3_em}0~L)PP3 z?CMW?ZKu4#v+<`m;UkWp#&)<5UW*^cO?Hs}>6|~FK7jN8nEM&ez-JF+J#Lf1_McGi z4kEqr4m=NkkB59px(_D(adZgRv6JudTKr=s%b!v14kdo^oMGH2cs@?p#c}a6{7n}3 z*XOj0hVwmcnoYdmQ*f^@h%a1&-@xuK>38ICUHB8c2bZ7Ed3=TQIB#5u_u$=l%-6K* zMsOTFeI)6e|4bO@aZ>~7?DlWtKRS<9Zg~@Cm7pG3F;yiEy-j1)q zLk^2mr%&NJa6C>rJWln(v+*#z3wx)s{)jlW6)(fZ(}{<_#i<)`621w~#;0FGyy0n= za=ats)G0H$K70$_hU;)ulQ{ZqoEJ{Hob)~_PL0LA@KRicpTjlyCHcN-oZ5ru;l5Y0 zA3O-B9v!Dz&*psad{vy73*?a(;OCT*5VrQ*T{I z{=!-FxK8Z9f%rR)c*JG6^hWX}UWT{fcW{&Daq3rGgEubVxcKm!$cHWBR0W=gf5m(7 z)`jGY<2kRJIUhW55%G>M!euAKsoYzL2mH{Toac#g>MJ}0xBDmgw`H7Kh^z1mce5Sd zw3PF1MLge2IGl~wIMx4g_Jd!*%kc0T;t^NkUT4KAwVLno5qL3fjcf2@xOse> zN_>L#IPxUNX&MBa;tdbqO1vb;sZltD2fod9cjLassrX~O3|GC&e()pj zlV7`YT_3W)9^_v<9{;eNaCpK;#6wT=)eiC#?(i|!hqvJ-=dzzq*e`wvFT)?>=DkR- zFW3)WkC)-ixcPaMdtY*$_%b{MxA}^A!2@yYlsI)S9)nN#n)?S2z^T3CR1OZ|f8zD{ z_TA+3K5?oR55eueA)nyG_i#Vq0z9N|oND?l`^RqFq#yYlm*Ge82K*^j{fSpR1|Pnc zc)@FMLMqqy9mmCoeb4#erZ_i^{DK$aUvVuC|3LWkICTkLj354y^uzDs+yQZFJ1)b8 zKaqd%Cs+-ne5++WKL2OZ4^PMLj5y``h4{nA;)QtBZyX=LiF*yAy!@T~fM??E_-EXF zF!}!v;tQXGm*KZ?(vUcnrnc72#$|W|o`;)c#;GNE2tLZSwQd)_948Frdt8GD9kI18 zcNpc*QEZQoY`V2>d=~Y<(Oc`5;Y?hMbMWlpq~Eby>(=8paV`D^kI&|Mnr*FHi)Y{_ zIdN(+uEI<4Jp3-M#it&(wJs?)PG#UKJQUa9D{#X3za?CUd3bZRJ;riJ#lND8cBJHQ}HxB1HX#b<7--Ot#gke z|Fqg#7sCB;4PJ+9@$)!oH1Uk*;UDmN{1a|HhH~emt#xJC+nV)wE^cxG<>Sd*A6|vm z;t6e7KbCqD55bS)+4x_08=iLx=XW9b{8WyEOHSi@E~36TgYfuqJRT2s6EFDPGYNk& z@za*;!HcjONBxU?;m2_q{uwXBP1+G}1*A7l#c5}8et0CV#j|nq@uV*vgImUPez+6f zfG@)d9+#|atjC*huR`jLPFw3%;J=;Cc@$Cp<0^c2XRfyi$B5% zUh;8Q;vLuG4R}>D>q{t4yKSvoj9cL*rCe|Kt##Y+(Y-jovN&}iUXQz;$MJn}%7a6= z3NOQtB68K{0BJwL__( zYETtR3ALn_ic*5osVYG+wZ=a7w5YMC)zV^8;Vrb}vj#_|%|bKmd$_5Iv)&+>p<9Q6O>K9}f<-tkqc-YDE z&3Bo++I@VaeZe;wo#6g=nsUx&2X{>Ar`3KwUH*8*8S*jFb;%}fI?6gT!45vnDkEpg z>oxWT3%vX+d75P2=V*Ve{lo;fOY4_AvBbR@Otx>C;0U(!*U{FKjpvE;I`{bt^v?&` z!50|0UY^Hj$DP^1eOTq`Y|4q7?R=75oX+?SURN^a!GSFC8aCb7FZhHV-25W_a6d+G z>K7!L;7Wrxg*PbmhoFX z*IlMQSIQc{&HlYYf4qZvwzI^q**MiYUTHo&YrJxfV{n`2Ag0)Im33k4YUQ`P-!sX{ z6YL+}$SxKczoTE!*{YmhPPFg1h)s98&aV+CvuwP}eUcfz&JqVtk{3S3=DYjekC`8D zW|hm?nD^W=SwCEKqj}xqb>JrJ&HLDLuji#H=FewX<8sFC^ZLsqe`7mm-E1G+Z@=B5 z9e-daV{Q89led}w1O0-2x9gv~+@bx0_Qjpz;$JNBkh|phA>3)T7pqzcc!{`j3f=hdyB(-oPqFOHW!CuE|agDd_LXe!*32 z;S9F2%648iO+BtQ-TD;FpD8}YBDZ^5`84l;p0Uq({V=PA!o zY-W;4KFmC4u#20&q`#-VPiKyIGI+-Q>t*#ho<+XNUe057hW$O$IDCTfXFb=jg{!?P ze#Y6*;W_+u_XY09JO?xKocuGx+gN7g4eR~9*X1|W<0b6i#P^(MH=AFOClj*Ra=40g?I9vXCH)Ai^cg*nxcJU)-U$##_F)vPL{1vbN%y2f_`5DWs`_w#&-j6cP z0iW5YJikkxX1Xsk&Evi@-m9+vuf@rCSm4}m)O$_-%GQx5%`q-dV=q@Q@w$CD&pzO( z^UdoG_v;1Lh0n2#?F;q)ruP>t^O!~Ae#`4O3*5V6zw=Wzb;{>rdE`zkaZfh9?RkJH z&hJ*vAA9ukPQT#RCC1@Btnfib-!%_rc<55|m?b}KW5+UazUTe_a_i1_*v8-4#Z{{E z@VR>%_5Pjs`8#WT^?UJ`ea=>1!w$Bw#^r3DZQsSF^J&bqRcg!-nhVyJ@nTIm@x&6%!PFS<--{;MDt#X*=4h`k7 zzysLJag2Rw|FV^X*Di+*U%7v-Cq6#H0>5PNwfoHa`eB-_e3fO!Hqg&E){ALA%@Utu z^S9oAZ&(iVOtH!tOqT7BsQ$V2M&jYQOw4h8Z>)a~VTGTuX|C&X6Z7SCmf5~(IgHG6 ze_(=hnBuOR8J`ERX};@{d5+uM_?*3!dJELsT0LIQV4?RL%<;Kx%3+b;uwjw=-?r*= zEb|=CE>2{uVjZ@#9^8yI-nG4W7WWGpV%CAP+1M?=JD4{|vXckxXgz!E=bg-pTeHTU z2blj7`*&w?@FdnaksV7t@3NO6o0i!xyBME)?kb-g%rX6e&_xC9{S;CZ2aDH%ihN0i>$Jfi67jr;_}Dq*~tQ81)BKH{>^a2x|K{J#4z)g9bBJ;-VB`N;heSDSVGHwo znkBx>*zew#9WHPDkrmdM_`^CMshks8=5$7D+A+g7*~z_!8s|^X4@~nmcJg_){N;Tm z^W5wxasKT(Kic{+#S$m7>7RbV8-2%o=orWU%Ez(#<8W4a6C3~M^@|xk&n_-x5PE)R zf&-4TPV8VJs0+pnx2~MQA~!x>K6xx-E7b*;vXghSsb5|27~8ng2=QNJzF8G}Vt~OFRFE~~IE7t|n*~tx0(|(n@;3>wrh@IT_ zbn$b0X8cFgn^@xAZ2C`KFqduo=?wkz$kFa2tJVeQv4wZDz+T2ys|#}Hx{vWMwsV#9 zUcd^UVr>1oU>Q^Vo<(k(vp(FJi4E)vw(((>_yn6a ztP3(XxURXFos8V5zi3^Myvh7{Ba6J9v5mwzML*o1HU4q4>vQ9}V7*(Eb3c}O45ORW z1tXbd@>b{h85=gO3l4A7j>Fi=6^v|F7i=w>q~%6D1jIk$^z zi@M-ZX1VPh_6cL`w^2)#*ud^=R!7bDSj5X+ui!(zRYY@7hKBErSgv;UdpI!~z2R<`V*9fKX~g3X_F%##Z8$@*!= z+sS@po(E4iPoBrv0Q>qW^Wb4mTaTUVf(Mx37*mt~-1-`{9cb?(= zuI9xgN3p`aJH*pe7mQ|+W0~2lE;!_6dErTn46F+t={x2zuV}|>*s#0#Gr`Z<#ePNm zY>&F2g&AJVPTs=CJ?&ejcpr=G=_}vMb;368GgEyY$mHI2!8qo)ysw#*eNGzGIp-c5&P9o##PpYLR!g@=fMB^hfhJ#=Ls16OU(+-K_9u z*7)+z`aRb5!8|AZs+_Mdah&@vTe|!bx+p$|0eRnU)amz|1$oG_6u8i+TX@w z4;xOZ3#x4AUH^)YPqX1<_ly6DgJYQD>Z{HP%iNlcr_=?zvW5Gwlhan46GlhY1%ETi z^;Vw~wsSK!oa*&-4dq;Y%{gI_$Fi3f_8p&A7mV*a=0wI*^38UB#45jK)9H1=5?1&t z6KBZZT627!+zRdWA zb;19!!p2S2&v^Z0ngdwm6$~zNeKN`oH#2W;!!C|u^H}#!c5o&m7ki!C+&S z`oF~ekL^5*HU7lrarQ@FIj1y=hl?1y)awFs{Dn1cx{dKKs|#kcm#b_iU)j1~JLY-x zF6yz!)a9);R^lm4Yo}5 z`p+D@S>uE&)xSobnC0c;?LVF}L0pquH*Dr&7Wi$e^|;pa(M0`m7TZ~7l`CJPpUL86 z2VZ66y1HP4N&4a5tgwag>s=3QWr?wz{9QLEY~#__%O{`AX?KJCFw1{g;e;EsztK2s z;~NZa@|?$Ju63h$c@~2yb-{;>^Gl{Vmlbw1cC-21q?`#>`3hTZabKUJe}2s1R{Q^E z{qP93bK_fFk8SR=jPWjJ_zAl>x37Gv>w+n+cB^u}#OB-V-!|*PR#rHfjkmjxGkQl| z@F4R%e5&>0IZWN@zQg=oUdL|Jj&qpK*9EWL?t0}SR=M6C;=ZRYc$NuvF~!)O;@}I6 z-|IP)8Lo4e_S}oj_jx{KmQ&fmBBS?vKDgUH;l2zWs0)U$g~zhW^BH^4erKB3vXeJ3 z@{reyyf|23iKpEskL_N6nPlDl^2;=foWx$<$Hc?-(*w@)3D&sRgT{Zvb2{_9?;+*f zpxyi)^&HAPM>2R!zS+zvEbv)Y`7vXUyH7C5eh*t8ZpIqBA94N(=b7ceN9_*|V+ZeK z7oTG*xeOnY9;0w=JOzp%`+9@n0au%%EJJi`voV}%o*(C;+Y`;+Fu zn_1*u1@oIOzii^u%8@sjKJ z9dYwW7CDu@{D4g_Ti17u$7|WfGiHf{Czh<|D_*CV;b*M!yV=&O=>6U&;^5URFwag7 z{nYh6Q=XaNkk8cPB9=Mn3*&Q#FZKJXefy2L_&R&J(zn+AHP=0xnP8G|Rk(bwyOXxY3tkSU(VHjZW|r?Ska7lw@gP=tBb#Qq?wI0p%(I(a{Ig=b_uN+& z%R2|KjcJxRh4J_O`%jPc<5?{7A~t;B{=gJhSz`WNooywr=gY+Rq4z&*;qJ`wXm;`{ zR`>#gkNkTJ<2QrbN8#w=Z3)- z_9NSP#1?bI$d}5Q;AEEhJ9~LfqyD}UA5;8`ZQNGVv#l0xY-`&v#2h3eot|7DJz_@mwZ$__c6mY_BK8Tvc^$tT5R7l!@HQ{ z+HrZ~6!x-u0e1@MCsyvqR>F@v8lPsJw8%5c_O}>)FwfzG54%8Kytp!q|VkZnA@yA1&@)_kk99<5BG7pN#zM_4XL^;DN_l zR|dz)&o5r*hl`(Qv&;n=)4%sI z&4yF-`5SeE+u2%&{(|9sk3|fBZdwEzGc$FS5+P82i`j#~Jd+B`kBJGv(ob z_Q6^D<38tzj|VaqS|=uXCo}A3j!&em7vH6CsR_;+?LNR0&sWY1*~>k~h<~N}U>eh0 z|3dNis}BZTB(J=kHQviuU48Hvn>m9?7TLkO$BLJqFA)xSR2 z_!9e)C$q{FlPlK;?ac6$aq`AATUMzLKDboAxXNYXW_?z9q(10no_ky_UhdE2f9it^ znCDmqtJVjz*vz%AP|h9MxLSR1AY1tmi#+>E^IY9L*v5^gc~@YUwUkJ-uJSmEgt!MhWjkZrSPv%o zBHOrtom|dd{>;d>^}#Opng_?R#MFKAwq1R&^ZoL~eHd&n-^}oS<~Wn>T>60h!iOI; zFTTl!SbZ>$8UDipM?T~{N3(f{`rsPoIhUR6WtqFSJHMlS$|QGqSUKN&M7%q>-WcZ` zrrESOi+pJW@~V1Wx+;&G4bcbEF$Qs#Nb6WZ_UKKP_K z_;f)#7Fl40oqT7Sae3i%^_t}6Dc3#Mf7<@v&Hd&X<8vRj@-lYuR>lU_2ha4K=NruO zb5__nL%#SG8+NY`wtiN8JcdOc{+#~zs1HtH6Hj_xKm3SoYw~>sw9Y(- z1-`_{UiHC!FX@-BFwH6py!2(|d%IsV&Bxfv518kwuZV+_SmC3L$LoV`Cb>;f96XCP zUd`rx>Vq3uU}mQLvGG-T-q-$RBcEo9pR<(%Uz0Ds$tu5LbU)Y0>&D>}wsWO7wBNrz z_z%;Z%_@g?x-Jh;k7+JviF>^*Zcbvufv&%I^}|st@k<7S+<#`tFMnWytG#EPxDDGl zfHj`@zV&RDH#YM+CV3lkY-c;)Vv+qm(2o7ta1cxSiepPvn)`vz004xyq;3V~G1AlT0zkbJ@jg-}%GpgAG5EPYz-SPi2+oGf312SFwfP zvz33c#O=DoeYo{yo)59Y*{pGw&$TA1a?rv;Hgj;l_*{ zRUaJ6IEOOLRNr}?&nn+!FwE;B8@b`v^2|+H;$y6^oAIOFH@=ZyZvL%#@D{f7ITraj zySQ`N{%$coTX+dGoXG-v*vVby=${R9t;;dy$tGUJG#_Ip*PCZwFfre}j&+}5hNBi3 zpZBthpRtz*F4X?G`rrk&ayi@i=_2*`8ykn$2M1Tw<9F=hnv2czc=si?^8!XjcwJ>P z-(-^CFvF?c^2F&q%1^Lgme?O$mql*DF7C9{ypqbQ3%h^T$i9f7z z{T14s<7lh09puIyLKcs{1oz9L6NiV4nB0%mRB^VdS*>;1@P>i$C?x zv)RtEEb>9dQuYaxe4RP=Fmk&4@L%%BGCR5M-{L>R>k!j?pCz9EkA6nEPMBf+zw*Ux z89CE)Gn+Y$DQ@;Z`-EfI&bL_RJM883Q2n#yfmzOBkqg;)w&#vuUf9A_SDokYh@QI{ zImhc66TFHkzQrsDuI_xgKG>U$+@Cq#&UVgRV_q1H_PoOk8`gAuuIC80@@nS!*jn?# z5?5c_IOkap7CDN|=X*cF47XipURdDG>&^?y{E!V7xL>cQ9XDc*adxqd4P)$+zVlpd zedjrhyz=)w&&Z|q!3s9=ceZf##(BQi zsy^6?t&FpS!&u^(Y`V<#%{2RMsUD}Z$bnnwH|u&}irsAEau#^Nw#K>KeSz(q$0B>! z%ayhh_Z99B+iTD5*~Z;j<{&m+Ssx5x3r}Gy&t(Vmta3J+$9vu0!9L;$cJc}~T~!~v z%rxI;2ft(VYR_Fe>X*B-$gkNrp+4AiC;8@h2CenMYs@h_K-_$Z>50~nUEFw1m% zBh2tvcJgFacsCQ1JSVW7OBuPgKG=6x@$v{3cm{*X?pus<9$WZdra7WXTzr-#KF@~h z#K#n8v6aDY=EMEj%PeEpyY87{FY_EQQ2b1@F=xI^@g7#V|L)3fs1FWeoaZpf_4YD9 z?#RX)y&f>fTiI}v_I<~EmK6qj&kJijA+G-^_9fd{WiMCXM?P-0Uzp}t<~Wg6E@a~^ z`rlVO_CL`4xO208!a?lir3Z=gR{1_y-Z+~D_8%+`Zo)#F*EiO9GZRzmgP)jZ>QH&* zrL1uZ8*a0I7~{8W=1N24f#ccEc2>FnVfNeY`eB~yChRxv$`V@+H;+5K-(i~FEbz`F z#Lw55xYNEo(mL`8miQ_ocUk|T#^=>c@(yM=hdFM3lz2FbMNVXuceC;C`d|^$Y#62< z<1BLy<9V+`%y9RkmGkT2;^M&L&HoFfBgDmBPmovc&l)GP;a>Oiq&Qh(l3%fd zy^P#f9~^d)cz7$@xc15Nz(!U%hE4aoewpCBk**WwPF0`(Wr2y)>_fJ&%p!YvYRdKV zfaeD`aqrXh!v~mR-5L7hXtwbh7FcB`hmF!7Ut}*gK2zKe)(4Z>$nP2FF=yFle1&Pw zW-FI6&m+$^Z$8HoN1r3Ehpa!F_;Ol(zR5h_X9ow2R-ZFjx_zc^5&lSdFfxX=8N_lxw{@BbRKEj5g7xA(OmMeW@$f^I`4c14{QDmpdCer}IpA7(<0wX^d*9C%E@B6_oh+Z+ zoi$#@hNr9>WBl-X>%{-D!ofN9cp)2}t`9C}h8x@@ZXV3kGu~e?&!Oz#WT`{{A>;H_-qW32J8C$xXX_)m(5C$X193dS$W%QWY?f*t&mCEom$_H2H}d}ca7 zLwla^taWkhMA`BnYADNnB{=Yg-Q&%x|uf(>ukFHAAXHonXnzht`8{e&g9zF~Y0dQ-c%wP%dO znc-A+vYTaY^Oo`7ao=YXUtp5|$5wvPDGwa=wsm5O!Mol+z9XL;#3T=4hFiWX4?KV+ zPG^;|S=!Aq4x^mFCQf03FEPa)X1Vfv=E(sp@KAPg1k1dLy_~}2d+rM#7@t#_<8)T| zA>;46KeE8HO7il7f6rr<@ehr|-`T;ld@Ua+&LzZ?KC$u$P0DoA+n#bIfuM zJ2|py-?5ubUG7&a^v{F869?D&-g$1o#OKCmhL5wr9e$8EKEvo2o=X_#pdZ!au`F=w zpTxl!BVW2c*~qW{>psp+ewIg`#dZ$-MLxMVE8LGYUciR0JRdQ}H<;q*%yNxitviRX z!jZpO_piPFGRialPkg+PE&P-jb~DEXnIvB)BO`6eUZ$TJ&x>L2pS@0sC=HS^?s z?BruCa|U}^WaL}#_u0tVjPo0|u);J~u$4bC&)?a>6aSPCj$(zEvBq22Q1(9dFZtjO ze_JP>|BwFo+`sl8UuJ1&kviq-5T?K-=#b<%lT~M zC2P(P3tVL_?U`dQe`REmzc)6_4`aN5E$n8R>9w`zmn^Wx5-(V1zR!c$7wc+Y@%pfy zxS3&^>#jfF_i6ffF?KMqf%$UihUU50`(4KQ;YRbr6bEf0&rED;-FO3Q{D@86Uhg&+ z2ajTbMRsv6t2}fI>(FC;8RN%Ha4u7Pc1!VaudT$xzgXtTZN$ICeS?ksmkD05t-N#H z?W{XTvce}BS?a#PCQjI1zIZFsjKu64p36KxVF!2Iaef#qb01<8-(?HW+{wK7=>YTL zuRE)^+;i1l^23pP>z8BL$_dP~jU9ZLB|gsz-(`(ov7zd^WQ@PYjmIJT$OAL`YR?B* z;uEZ}gEfxZPrDUf&)CdKOtNu*?YTYMc^!*vIzT&)I#Ar-nLk^25!1}Fl@plf_3U69 zOT3#EPN$12c$JO(gw6bhNiJZ9%bDZ;gX{+mW+(Hk@FCV1vgrrU3C-4(>oUcInB{P` zG0g&(9VBl*dVM-rJMPIAp3DpvvA|J-jl<=P{^WW15cT+9=6La;;^7~x@ya3k`>%MI z=A^^qkE%*izBVe&z{4X;`T%3lTWdWyB=kK{^GfS z&3uDNe#s11Fvl&28J|0{$UWG_16k#X41V=@)1&pnW+r(EGaSksS81_+JdPEf!5Swr z`kVU`o4DmM=Ea?u;-1WMFxxne1?Jevn_1=~?B!F8{Ga;;WBh{6oW~@WFvDM%V{okb zaZMJvKD)RntGt%c-;Kj2-p2%|F~wJy<$Shr_;KRnY<6-1%j{+^e`e$l_ru}#Eq7s@ zgW1BvndZ@K&WLJJq^zZx(qHyLcUYIgOEjJTI}47n~+Ou94CY z8<}H?1s-y`^{D8gu>kRGx^*lYwy!aOLe4ibxvWt72sXm`$^nb2j#(BkA+Ofn| z4nEs>Jc^yXgB5XPo#mnnhiiew;bnszWs&t) zST~Mfbd~UPHiJRxJ#ta))>mOXs7;j=T zA7GM?GsA}K^}}n}$sbtdB{}h}u7Ae)(2eHB4z_X`+qvmY+VN`EIEf8w^bc~3@n$x& z$_#J6#r*j-gEjjHr`@W5R+!|TZT1!GrrJ*&$zDFk#ngl=H?5+Hs)AjVao+! z)bCpswpkEnn2aq5%gheY-tSu$m}jg>Ka37s5H|Xq%j&)hJQu3B-vZBp`Wv*sa~=~5 ze1Etg_H|Jm2^$Ic6(s%rmyYcr3E1pW}t{!6b{!GE!$8##v;V@kQz}!FI+f z_7$^?)^o9VSYR6?-3!7_CRt;e4gK}UW|sewC&ohKtgPRD3&S>6>lTJ(7U~yN|2mGxYR}{q3w>`6?@*sbR#~`nVc58yxb9vU zW?5xBYb-KRhpVc5ysEP32S`FrxnG;=JzFQ0woUFN^3{=YU3Ym98B z{F{ZoAICV~nkUO_*j)a~=Fj*X^J9MQ!Z6rE{PX3Lv0u!i@A!{}VZ2dZ{uXba|LUL7 zU{Tn#rT+UZ3UiFqE%Lqm`e9@%=j#`RX~x;g^6HDiuD;_noZnhKHZ!*NBHxdr-*p#- z(QV|FO{_A-!utAUV&g?&Y+L2bGP22{u#GuZnBLU+?exnu%WP+KvqfQ%#Vr=U#guuocE+Nx+IM`m_1R4x&JiDDY2y#HZcH&YS~-i1?ap!HXZ$k#?qNK(u*wXx zmoEy-EV6M=abGDO7TB}zE8~6U#L3ca%H!g{(>ScLmC=W^ zW0H;g=$CQknP!lVs`waZD+|oC z{6-}V4t1TpI#ygeFZTIb?O9=RH~k;ym|0f$P@nO*`os0JkMWp1U~yPwbdY+-i}N7k zvBriG<~LaUEDl{9MotjVFmbRnTsq+^jKuiuPljXDPcljE~fQym>P|Nqna|zScZg zWP!1q@lP{^-$JRlFFVvs z_#f-b1Y4Q^*LB2XDE^H3tkfNLGTE;?tg+m`+xPS9f8}nUTUCFRZl7CKFVY<*SX^B> z%WJ65*qYrww<;g&bo+jO{cP18_A(Od4wILNe`oa>-K9Hh9A|w7s>jIg-C=>%eY$=B zjW`c9F0(B59VgVkOn*mq`yL$ihpNvgI~hAlyR7<5GJlM67Eb66n=fZleMV304ol3k z@d|M>!{|xkV0@(VE0v$#?R)u+Gpaj`j(7gTZr_I^-m#9a634i1--Dz4QvI>OhO5Pq z?GDq-vcUX!q`t(*yVF?)@9w#pYfnVh8miTb-qIm_%|Y>NCcd$YV><9wTV z7@2B4Ch7l9^I-BW{W6v}?zP5YGjq(adaw0h@*#PetRLo?YuApkN6r5_`;tlKm|^X) z?y$;2q1*T2h+~?3vBVPd)5Vc<%sAsu>6Zz1^c_E~-y8J%tUNH!JR=?AVS=$6_0Lx3 zpVu$5ubA&m`Yjrd(V6nZJZp@+)*ZG@(Vm@5zNMd=#XU>^jJ&6R#@TR-{ywyBjD0EI zTOBjODq9)*N_m@OrdV5G|1q*qe)_B^pDN!hvdk)zOS{9C+r+or`ZCSP?c!XaUzYwb z{vG02sV8h@nY}FZ>j|6h6z}RiVS(v2dVJo~I2-i%e5ZEoU~a>nu;FfTF~QhY${F3d zC#|&NxMvv9secBE0 z@i|THj_(P}tg@FiM(*b+JzN9tzcpp)p2}bTQ&pz+#2|HPS zP=Alg+v7dHU&nZFX#be{?`Y5BEbH*N_}{Y*EPty06OKQZPnOupD$A^~x9|9Cd41CP zdFIJlkNFhz_mlas`m27YiQ_kUV*YpQ!o)xF|Fn5B&hr1%XL_Y2Ve}ct{g;HTEUmgE zjLlHK+LAEE^14gH8VegN2@}s6C%VMv^SIHHFz7JO#!JFDvutC0lO?_v-?*DC@xA!Q z-Ev9T%feRbJ+FM5CBBzNzuPNkb|?M5U|i-{9J0jc=6Lv$FwfeNOTr3cLzjdNFX^8# zMn|a6BD??szH&xq8gIP*m}QowtDR?Z!jiD*RsFQe8w=OV$7|}{up~^g#!kj>RG;Zv#QVB9 z+QiG+?Mr+vPWc_`GsirOEU}!Imp9Gh9_N{0E3^0Nm!;X6c_%7Ty*IBkyR(C~Hj5((XO$@_~7nQ9kBrWdAI4beD_&+aCEU=5^-^}k5<$stTlYfbaB}P8g|KHYuwP0zOV|t~fVUfB1OMSjf z9IGr1^DME%=o(9Xu1xt_OT!N4SYmmdrD5ae=C$EcpC^-lwy_Xh>homUZ=~H9#^1zw zrZ-<2mRVpgvs*g7(?n+#Pv@aWf=+dyAd6pPCO8;}T8@AN%{1_^4aY?n;B=a?|8EQn9Iov%QslZ9(ie#U*=e4>2~dwnAe?4 z!z>FdFnO2$S-aah^m)(HFtyaaykC4QK42cKJ!GECv}>1F7TL<$quMh)-TCE?pAk0` zGt7&H7mQm~pGhWOSsHdS`I>yM(C&5pvG}3-EHn7dyk|Sla+h)@ztaEr;{V2cnOI#J8V% z%M_k4OKkba@mb@t6k z@OuPTsL#@Pd1dUXW&UpO_wicggNcdD!gj_d8;{AG^w-btL`@MNqqpdfv3upK&hIKc zV17(KsGQMunq92TR&Q1PexiR? z+1uyW)^j!InPH?XUPf7FlF`-mH^=-LshEG?@sed>(;Ch%Hx45|h;vPG_Bv*ye!1`W zH-E#7IjaA4t?Rza{XIfEHmzs=2QCluEDT!i`(2EmSRS@9eWZ4b9=$wFZJ-_V zEFH5vtS~lQTpK!n;&R{HZye^CJjJ}C`e!qvBbSFsCYfdNRP$nal=6*u=JGJQvHnJj zn?-gqey;g!B2VWTpGmf}biVeCULbFqYR4Al*vcwPedS}sv6*==&O}C@SZ0;+i_Cv> zjI%aTIn&puzqNMP>W8(-=FRMN^3KQ&=CzGuwzAABb2l1)TY0!uT&%Lp+GEDq zPW(?=KNeVEvS6I;wP%LuY1WU4r_4L1|7YZrks12kLBDKenR&*ZmCwH8=jCfh<1xY5 z3-ZDIOOAJvznAsP>T8Y%IRCnSm|zFA zyv(t{cE&!J$0qTxjWrgS_(D5Izm|vH)LWn(lZ(X35*r7a=l9APV>{z4vh;)b@2)?l zSoq0xwuiWT?OR5ER*&)D^|PnA{#4HLU)HVf_+R- zc09ZqHZym8HOwXwd1iFHc{9$~Vd7_! ziEHGaNtT(rwi+f9=D`%xldEAnqu0p;vur%vxJIG0Pin_JE3C0$nDr{C&**gZnPco|^JkJZ7Fc*j{T9be zFgZgWSY;QZ&x(fyHXmc04tZeYdGQ@<95%D`qBxj-)$wu8zh?bed|f|Gzhhqx7Y8$p zzbh`L*?7EqOtQ>8v$M>HvG=Us2=Ot;{QLT2i47+h=L2yw$`o@Y^J4r%?HT*nxJmUs zu`iflI}5BZ_Nnnt)c!N`X8dz;G4h3co#dD)=Go5JxAMVSS-dC9(;VZm#?C$$Yj=uz z-Ns{u>TnU+d7;sPyZLt1^t7~gJ1m}PGJ6=8*W))vzlXf=CRj`FvTPb%(KQSo5yIs zxATm#jX8F)5SQl*<$WLHGP|$|{^A|a0ijjj> zgn8yzVeMe~8Y{lR=F2SGSzuRR`61%GSU=1#a;Wnx3^D({<0F(`V*H`jmofITaIAR7 z>F+q@ET3SUOPx>3KjSBfgH=|UKE*hfIX_Z43oNsEn)tKYGtGEP9$7d;elK^PF~&!k zA8Rc39iORRCKSnJ()eDR7fGG0A4Gk1ynv%n74 z#+k=e;=S5<{C~#I20pGaYv7Zav>i>2pvxdjP<9XmVF$6MZPMPhDTCl5hzbTpXfY^4 zsxBK91cM?d24#cp8gz+Oc2I?Oa61ueV%j9 zbDq!pF?T{R2?Mv%u5Lo!iXN!U!~dJ{QzK5$`$yz3c^7tDurr_IFaZ593Y($#ZsH6R zZ~%JR>2J57=N{S#^xTUc*@w1U$$vlb5r$|VFbNY-d5Gh!*m;b&LNAQK#N)(mF8Mnt zH}pJ-Js5fldm@MK+t33mp?4wap!zh&q4Qbf^Y9l2peIaxVGKs0`+557?ZgWj@-lXPboK4U>FAB01QL- zz1aCD?GOfH)H4jmsmJ@U1Dm1NOFkGLpnS5wigmGJ z>$Zo9*S@QD4F+ITIBvCG`UrkNAB@3f7~OBR9)aEiR_o;p*oVzfJ9M?~d6fObR`Wg$ z^c{(Q81SyvJ0GLn!U5sYt9Ae5$d5q|!_e7@{$tStwLh%ZyI=%XK0!I50)yj`!vs{H zB;VxKdKgAwH;lm;OiV@pQ?!d|tM&GU_zAnA0%I_80(zgO9h`(5YW0-=8T7$Q7=wNo zIF)$7s7gLLeg@@z7M{6U55Oo)!oWGJxxa(nM#>Gj|hq+alrsz0loC++cJr@qUrxw-GlOff{tr!#)f{ z=S$eRopjK9A9i7^1G}>S0LTA?UZ}z74cwBP8fkbFw}#euaO^W(ES z{kN0@YTt1j##R&0zfw-+l6^P;6VUSx=|-&4gD|)~au|Y1sJhnZ&3|JbhM~Fxa_B5wqgTF*o*mcl zdjlNb3B51^qfp&>jqY8_ap;HIuH=WFJ=f^v?~xt`U~n(wFaZ-Vx$hcXeV_gP*XW(l z{kt`K42EFo--*)!92Xw4M(-9LhCGUXs6h4bHT?bn@}uw*#=OWs!0yp&^bm}|0qC5J z-yfnMc0yHIqdPys4)j9L6w*TlMxlEuc9wA*Hp3XygwyaFhNrL5eIKL$M9KqIKlY(= z@*2J66UtdnoIj=h&fz#r!T}gKmw5ExKlDSTk>k)aV~supz0mm?>6@?%Js05*bYF#C z7`+;QKPTTc*nvsd4Ff^)Eyo||gP!Xs4^&_ThHk*075EK(&^?Fpz!2<)fg9KGUIFyq zM0}ujGyVu$NdE=#y9ImD4MQ*r2VepwVG@@96W&UF!DuV(L-yyc(QPsE-G+XcxSeuA zkA{8W9oUC~JMsTZ^4+yYZ-mafu_J6pKlH%TuQ(36`K{DICV@u!!4sKMY)vhH|b$B^u9}ZU<5k9 zM*mXc38OG9`~ZEc$p0bb74{G(7=S%6@fpXzA@0xv)z2wE48lgJ{S*5z21~!iuNcQ+ z>?{0+&Xv>$bi*MSiW8^r$Tz?~^n8uK3H)3|9H28nIbd)#<^LYL>+ln58;SF3{DGA) zv>81x_9MrkS~SRgCH!^{>g`Y|8RYxaq#HA++Xm6M!yxyU&<8uAw{%b+fbJa!`JOa! zg?<=?owC34pzd6UKVt{^-VOP89n^OFw zs6l5V<${43)EA6Ew@$kADL3@O7N}l8ecSlGM%V~L7t%hU_af>WMqz0Y`vKw!6HtTB zi%AF7ODI1Kz#$lhZacp_bSZvA1qNh)CjP)6Ou`T>b?`eX&BO%;XOSPqptqRcIhjp4 zq5Epe2_x5&egyu^BR%xqPWy+-oybRG7b-9bgV6m);tW+d026J4x;hF!@5W!KL8lWx zU^xsvK)GZec0$jCJ3Jqdk4~gOgn+0Pw)?VdN>Y) zu)LJx1NaY<|H6+Q(X)y;?nGQ*2nN0(JxsvLo!S4EI6)1DVFC`o(07BnXDspi9{->U z!_c`JzhM~qe#7xKS5?9U8@hl2&~)#j$NyF zLv`1+{Eh+ffz43cV=dp$p}b{l_440Rj=k3EjWE2=TE3q{ee8?=J<&IAt*$~9c0%ud z=!a40+Y9~suhrXO40c1$@5ooqap;Hc1Mv$+pmT3nfj+2Jk{*WPkjSBPAM_u#R#%_~ z!!QK9q4V&yx@}+L0evuZB;^}NKBz$FQER#Hg+4Fop?WO(_9ITP5qhdAFVvuOf65Ij ze}|rlYxNLR6!tyjgN;yw?JzNwd@wM5E#JGLTrdp7{H{zYm4i5b z##+4#2F_foC!sn6zbn{>DpW4PPpHC}@KWmGVDiHN)Mk<&#^4ZCuUO0P4j^w{s|TU? zO7g?#Rm9~`{D5BQoJIXYcM!WGhn1D=Ux!|pfITpvt>u0f_Fx2Rf5iUb#1r~p6sj-{{vAoW2T2c=hwuX? zq4y~Kd6@PB-3y2>^uQQY;1Ene@9#3GY9ETcodhr{UL+|617kWBLCvrFh zoljG)qmjdA=zfMc!US|4gP)6#!z2vL{wuWSV>u3eP<<8uVQew^p!?7G2_w*3jr?`` z3Dn+3-*J=|`k=R)d@%41{R=w(Mx6dYe4z#-Fbrcb29q!e!|$T^c!7Zsa;W0zISFaX*dvf~Av5 z4^EU%#PTFbE?s z3Y{lXzFn{bHRy*?*dp@X*6B7s<=6u~&|5}67}^uRPr}|_>-0t#ET?=YlMlAQ1nh?D z-q<~bIKf7kfFY>vL-}D0me!MRU+lubIP${;Ou*oN#P3w>97H|ADC~g=XgiH^S5Qvq zftAn;8=(T*p$fw=crfvVfkV)DI^}^XOh65WDmgCu(5YhQ2;wBHqP#Hqd*o-}uNOaI z=ns?w2FBwL48jCVK+l=@JAri2qmUmeFaf<&IDQuCVF*TH7Yt0rKGdMI0XxtOlP~}k z|2jPe)sraa+1P>2FnTg^hHe$T=TNRQk;5p|pxS_cFb19HlJ0EsLl0D-7dAo#24Mom zM1BtG8_@&(P&=1$z$CPtNBJAc55uq#D(9`^{v39oa|Y$P06ElPJ9N*ap3kS;&<8`X z5r!{Yr$?c31%5Sg94gRr75>B6EaC>8v(bA2$DvnvHF1N^Yv`9S43!JXcP;s#3J0Jw zh~A6v2L_?%2FeGcurh$28>t5vg#*xY6LGv4Ic$dN&6FD^ZlQl%f}LAwpD@}=eZk;d z%5f=nZlnA#1`|-3hyIzA^LG4%P7VFSJMsTA@<9!TVHif?08B#Lj(e;9?nYtZv7>0lU!q4zoRUyHxb<2Q`GK)V+%A|64~zeqhm&uhqG61uM= z|LdfOiBHIXJ#qOI|6sJAbT9#ZH;`|DdV=oN)XyB^00S@rBQUv!{5NuZkn}LLmh{4P z*uRP6n<)=W{D58<`H}QDBZq$I{)zNZ`7h~P*x!P`FaRSk`U~<~C=V=$f&XD2MqnpQ zzz9sj9vIfqe=F&1>-9z$g6%L|w4V3uqu;(>543XJv0m?nK^TLc;`Ms@T;e%`<4}Pu zP=gVefX>_4AB8^XcCP3B`qcMm^39{3pbEoKgU*umdYA0Oq;Sl7-G4jwwqMVC_1WKb zz3$Vnv)g(-47IZL`VfqjqvsC%*#|pN-Ix3@Fpm6pl5T&}L(lKl>+V0|7gS-?LwR5f z#$fOOj<+F)ewctQP&p94pbDcf0F%&r5dPeSe%Jy-Fa*7atk-Sx@wbxn!o$#eH+G;O zYE{GsMqy0$k6f=S?bw4FOu|kWJ!-w4fWhBm=N{xR2oql9(0MfRy_b50D%6f4AB@5X zRF1_@*@xcyNMDV8=z#&Kz!n&QA*jJF7=}^kJZ`;S*#VDdABJJ+{p|bj1A1UPRA3ke zU^moY42Izlj6&xF_zlaUb3Fb)5A;I?24DcTzz~eWDD*x^KIn(e38aG_*a8(8f&thC zH5i3qH~^zC2@|k1ME;5E`5qVTa5DL!7lxp!;MYUgg)J})Loha#I76)t`wx?TI`soR zC!ilDp!x{uPb3ad^Mi13fDB1!K_m81gfy zZ|FV~e_#~GpwfV!kCX0f^g``i{D9#`%GF7_^VW0U55H!R9y-q_?oVJ3Ho{mFc3|WJ z;_)Qqy%76Qy$Cr}0?3~tKlDS-#pr`k*abtE;QvD6a4F@6&Y9G=@G|^<8hYd# z7=)cL0wZ$#D)c{t-_Qp`v+(O#j>C57nN9h^}gM6}oC-GTC9NH)sRA3K`LHCQKyNmKb&wT0!ChsQQOW1FxKS1ps^!^F?{lpJC zAE3Tq7?yVtrw54(RA30IunPuY6b9h{j6&zj?1%72_z?DA!S2K4hk-}ff0c9#@E-;r zrF@IA3lmU%jJW-oeb@sdk5fN?p_F#h*nJayuo-GF0;ABjgz`tI52(T*48kx>z#-^; zo#TH+9}EiLAP#R~7dAroo9KfoOuzuNy^S8|h6$)b&l3EC0T_j0n1o5_>t_G2#0|RN zBK|N42Ver0zC-@ENe3ga1-jqC9@Jpv-^jm|I6=>Q|)3VEKpCUktyX0&O3mANrv7CHY|j2A1L9O3DQl z7=@lV=|3jk&<))K_zAtR9V##kH8=pnFbUoNCLW)VA1W}migLpw?1av5C?AY`M|wF9 zOFzXA=z*RD{y}Xu`Ctfk!Z3`$1nhyqwd9A9^_0Jd_(4C6!2nFc7U&!zuF$iAd{Etl zz0W8Y^uQqWK@F-f1e>AvN8$|?7=wW%arm6{uo7xefnnGPBQOY)FbthPksm5B230r& z-T$RtmLrD&sKOTL+(JI+hTYHuohv90^a_7LKMenmbWkZ8(i5^jVo3M>gZ+_1y!RaY z(D?=OQA4@{V=xF4&LQ4!PP*-ec&|BfSou%vmT(*fVFbFz3~~RGIKW1zZjT)pfVMA5 z2i;JEmC)@P(%Yd2hM~Fx>AoU8bi?3ILwXAg!7dnuQRv-yNKe8f^sZ!oH|)R!^u+P2 z41Lf8yJdebj(AL2dT?C(u_7=ub5diNXRz9sdr|BznVkNpFN^bqtOL_7w_2YoPd z@DT6KCO(JY2Mkt{{$JQR3_UOjqcC(h<@-0~IfD2=?@>eg0F1%Xud#PDa_ByW@RH77d&&p>(AhwFp&NDz&m$hI$$viaf?=3|&L-l! zhJDxqBQONDz>pq;>ZL<^`5^Y87X~gP9SmPi{lHK&|aYc z*5U6B#0#o(&=12f37t1mPwUYSn_=)K;s?VwQ?4P{GNh|830t7MmHe^~%Qvup2jzs( zHuS-8JMr9z-h1!^dSC_1BTOA^N?$p@n_ z0o_j_|A~AH$p^KkDGv<2jGzC-KJ>yE^ur_!K=&)8huRy||If(ZBrY)g7XHdU9D?fG zq~Ah17=oT|4zr6YLHaDsjWJ>MgT8nlf>A9TYgtc0G`*nu&afZjFaABCPl;sKp&IS!*k#LtP| zjmV+0iF$)7jKUyH!VoOo4u7Es#-I--VGydD$p^I`@MAQ3p$fGhkwf)A=z%flEx{i2 z!$6Wa!yp`j-k;GshWuOb4=Or#x2HU|4SE0uoE!8W=-qAu?*pXVuxAJKmu%48rTi|z zm<_!54}W18CSVLE;gB5Pegp4y#U8AL8dP8iHo`Cr!U$}KQ5c3^*9P6T6aGLqRAD6y z!xor?5jnoY2JUMjFU8-TDKCsbWk=*N3H@Wq{~P4cy~_r@^fw%bDpcJY`2HULz{*{) z4>g#C-7vfx>31a_yQ2rHP=jIEE%H4mpPO<)FHFDyRLVB!AsB&C==m+>*bV)#8G833 zPA~$?cW1wxd@usTvcC`I-vc{Pfq{LoQ-)vA2Sekq51sqrKMX_vZz(?vK==NXAF9x{ zC-yzW8+u_7DzF`@Fbp-=4P(%`7j_PyoX~yX2E7w12VnS%Ds?986qc0+#Ph z`a|#oYEXmfq3DG%*t`$vDoGE$htWP@@Nnv3U-VWH=W!f|KIlA>^iYFg7=|$zh2{H^ z4mLv7yMgx)!lTi%Kj~o*hL0icP(7Bo{|-B_5~|g-V-N9!J{W{5)Sw2P$Kfwbz|sRq z_Xmzc=kfRp6(8vigeR~M1F-xc@=sB4BJ`FuE z2AzjcPp4xKM$RTb)Xu^GLyHf$?=a$jKJ^8|FaeXW^leGT#VVi&rPMlV#MyM_9K3iKUAd0;0@Lff$%zlDAT!>}28=HeF&!XBu>1a#g; zx@ywjfnP8PL&7%n97jCvVjl+Q(@y?C`QQNb+|B;+*oR?ZJ9d2d0S90VHjc+17=(d) zNC#ukIe~KAOL`c&k9va%*fWuO=%7ApNC%@(xgS4kDL=GLLJqw!37etw0m=>CFao_W zA;+P2GIk%No?sOAzyx$F=nYXnFaSd^3J0M3A?kSwaf1OEd6@PC-H%W|Q;7o%zzFPu zQ5c0uH~_WBsGn)FbI{Cum@XU@=vtqlVKP6q331Fe+v7r5GNRYmHhSS ziI5(KU?&W`&T;5@1N*0<7dAuXP5gq+CHQ?BcA@ih(l6yWjKNN*yhr;LzK=gD>0l!a z!gi>^Fbu(N7=c4D3Y}+AURVy*4~aL7!A_Wj5$OJi_HZVCEJHsG!XQjQ+gTj{m~z7a z3_#B(fk~)A<$TJsn&VJ|-7o}WFabSH9AASR zdZ2m%{=#+`8l-(gWi5VO2-o4qMWkELK8*a2dJd4zwo&haTG2+`eKGlAB@8(>@_je< z_eFjQ_FyH9?YB`+!sz}RxzC2a-)+=`Fmxb#p!3v?x;m5cz{bmn7wm*dm=K<}QTJR< zd`{;$45%EJ{f3R)N5ju^HtNkVcrN;23?^Wp5kH#QhYCzyfE=oUjk@nj>|MN(_W;66 zHtJCrg5_6HPUwfBOE>BvsLb4`4?yqb=$VE8S8de0pay$ja29^eCf(KOfl*j_HR-NF z4ihj8lQ0I|*KX9k*Kiz$pcf866()s2>|Bd}7=y9v@GFR4*Aq9GfZBEBy8-(!3Z2)p ze7fsXpC&zw z!EUHMgFm++hXXJHE9YVFS?p-|1HCW_gU}f!KlD6DeZde6-+_J@gTd!Xe<%LGKzU&J zCH#QO%ftglVdWq3`xTDEAdEowtCY75`C{zAFpNO=pYi`L>_IQ|LO)bsCye}s`kIe_ zuW=lDx;N^jcTf!e3|c^~O}Xg^T>3_oB3Djmo_Cp}bG zU>7?7LHzHhoL^uEdj3f}6~@pHonI1{2iS)_P=U4wi3jvT?^o!90T_W%I0Uto#4m)u zP=oGX%JmTWp$}?(*nysY;_)#457540;NP_0NAT}!{DU!Ax&ZkqBxmU=jwQ z@?YZn68V2dA9QY^KA;CCVFddAgq>eF4mH>VBRc82h?9Mj9(;x4j!k+524Momp!-$y z6mQ~tR_sI1V(h{esE*vk_o%QpYLngt73ld3>7D3%kpSMZ3eMoxf7tX*R7&#yRp?U#!J|Z443rb{71xt(e7&D4jpN=XOc^Q8X{C%Z_hSz{V%$DRjr=vx$8X=79*ERttK+YMKQHp=C_YSZmELWi;BwD*OmH!nPjGqK zMvQk=&Ko)2kZ4_0iPGVAi&vM=!mf1wkE6QvM?CqEl8|lZA&rA9}^5hlB zW28SQOD?)=kPjh0ROEO!PyB9m)VRtoG`t<}avE((4(It<-s+e~?u?%+iOUQTSevxL zg{0_4f4#`i-)gt}M_cVej?0#(mo%n4RsL_#d#s3N;|!bB0bgk`ena^RiFd85)QUHL zw-(!<9Gw&CVeF97jI+c+{vz0!25qOO^VgO%rBs>aob8}I{6_OmlFr)1&o<;y? z)9!0re#glUdgZ$`{P*dX%jlRN(=$Jz5q?S?xcu2I+`eA=$S`SZx6zMtw1}q?52>S- zcQ4n2R$Yo*WK4y&<}X+3Z;SlYbUciHV!w9uyF~ka+*{^yPA-x3t4LpRuhpJwC2CS< zh%e!QJZF14TE56GyU)mO%*q1VmBEFMFU~P49 zf!P0=ekvnYq4_B@e@=Gs;z#C(;igX`mZCauoNOt|?!FvP`STX>IA1bYn<2*!jo)0~ zMPxOu(vxVkB9|>sZ+gA)C3=jikV$~eX#ad_M9)JKSM-@>UuVIy7`UyqjLMPG4D8bEXwh?iu4Of-@|XqpCw9i`s+#Q z_CBHHMq`q(!feKw0M5mJgXBAtq{N!zM*9^1wxBnL-u>k`*3TQhKFcM&)LlFJ_LTJ2 zCh{68q#HfOR-2YXB5y!`6Y1r1YBTB|dFN(+lU;<!(r$q=t z$1EaTpr4pifQ&h^<+bO=yl!HYPwH~X{N;RSHM2=s>uK<% zKd#hw$cSy?|4iggwGe%kN5*wteQfA!wX^CAj&_w!bU9NC7tteIUc0T#Uk9IsojNnA@n7;4yBJ@N zitBrc1bg5>pdBvW! zRl_#)X-D%LquW|f{IBqOLfSz+{c3mgPS0zXtI%6n9oJv9^jhbkb?J6FEq$Ih)z$3y zd*SiHToH+#CiL)v4*j=zcIxQxL4HHNO!`fx{TDjlo$BhgJA#D`P2EO6?#@5o6@R47 zwLP?)-=O4!wTV2AKhBA9{Sc9z>?%FW8s9e~U;3~$zD{(N%3;wlhEJ0IYKfE44(w0R z@h6oyDwyeLYAk=v*~1*)=g=z))VvS3b z&ssN6b@?1eP$&{|!H?uAas8*< zI2UfOEk%y@!f{ToCz_a_@4)VKv1@JOOA{x$?G17LV2P{Iu4E{Dm;sE{h!wA4%2l2} zeqDq9?CTX$j-}{tJUgy$&Milw_A-@qvSWwB>oy}WMt`CM?uDIySY;51e-%4(y##ro zaZ--gaXfZG;c--s&)mjwDMy=i+@Cv66{?TPoLMmg6j;V&wZECPzti#eICQ5rv9lRF z-TZd^yK;T3&^VRpUvmCGz3^o@W4U3>4=b=!ft~HL`i<0k1HtrM5!Wvi`BdrsQt!`8 zy~}VQ!<-RUxeoP1%FoH1R8w==^}Y~2etsifmgT8U%CQ8wg8V8uQP_4lCc7FPlVsU6 z%;iO+9I_sM9zXc$pWC+>6Cw>B(ydu&p1x_n)%K9Q&U1H@@nKe;m@uj$L^`jFI9Z3 zN8U;Ldh0wYd%T>CXIl1nnY9iQHCy?YcOCO}{5vG;JfogGOR?8}Q(V7MhanI%k>U%>|&!HKmO#?iMf}&xYl-X2q#kIG zTdg)97XjJYpYq?DYNJNBFLUWESSE&MjS7_>I&2TPHc-Wu1rRa3YhWM3!n zJ9aHR{FxOY^}3MpVQ0#Ht7StV{h-3l^@w?Kou3vl&f7EBc^zL;DmP6aJ)n!8&9uwu z=%ISjo9LO1o>DEYA1!(q6BromZ^*JhKAlLMxh9#@|4CndM_m7NT8nwUz65y`xkL1@ zzOm}P(0Iu>cJ?-_UHlru1upH*xPFT({Xuz`!p{oi{3fRucOd=f%s)@BCpw< z^N0K5`uLO(io5}NHT9p0l^hoNY~(|v_ldyTMBawnLwaLkpm1_X@-9Sf>xk=TiU2vy zr9O3nBKe9b@6Y(Pj~utQ8WEI!2j_j_9Z|m;qnMOO{R#Z zl3JID{&Af6R6Y>TxsD_9YUCc|ZG28`b$qBt-idr1=N$#-rR@Gl+xp5m{KO<}NVdFj zk#?4Q-%I?FHvAjn@U*mFYm<6kg+IQ9as4Ba(aEgqn2e8Ya-DV_*JWnzUk5B`r&CW%=<*kkVl@4>#E3!yET4s-$Jf}GR`tO z*Ob(x2QoR)6n*2EKmLKf?Ddt%%Q&%%qA$Ciq+eAb?;`ype72oZc%HNSXie`jOuf&A z|78qRAJe61X4YjCqpi+CkB0tE(Q{IkzvbuR0@kt~YqEt1Y&Ck=X5szHl?tHeK!8-7a~Hj!^Zt|I?l z1kyzZ%yJe}&Ti};CvtO?H0)HA+idO^$^TsKk*pa$;5q=WQZeR!)C;DXt$S^_^LNW#%`= zIs1&fd%mx>z3K*@h^_+kN*1k>U0+`7Sszb*o?L6F!MwAh`jkh(n%RUXMUI_@o~IR z*YhY(fy^q#xfB3m&9|$8SkVeKbjuotQEcJnOn|! z9z7E!y|qcZDyCufpvQ=%F<;F{O$SCjHkI3Kx03IeR3<3;s>v56pK<@hIwobRM?Qf3 z3#)#u`4+#d`IgJKts_r!^%Oa7W9qMDETE01d-k^KwWlcW2BP>Obx?+XJK8NLKplT^ z{P4aP*ZGM*qh7M-P3|4Ejo==_ypc8X{0+U?yu3pf!5x;+x$YR{T}8a#W1d=+F=L$X z)eyMu_v8B6(t`5pUru?R$Xl;UcJW*4Z|}#K=dA0c4m$YP^HE%Hm4rrpOm%e?U1y%p z8mn(}Op(KR<4sqQb>blUMb|axKV1@9o5(lIfn{;?JR1F1P}?FOvmfg@q7JJn-swj=Q?dma-#ZRqhL zH^;a1e26X9r8#F;R{TgG!R{Z#uC>*{703sWpE2C{l39P&aJ~Bus>h2cuink;GvcqT zhvL*buWn6mVyBvhA6pUE`AT(m`^ubuQTf*MUEGhe>jlkZ_0Ku1Q?Gg=_ddATUx*!l zEVo`nz67~aK)wRGuYi0IxwnA4n2Ea*xv_p={+>q7O8Lr=OZxs_FCXWKK1YXKVB%gv zULd!1J%1?w0kInFN?Uljlk?`0d~iHcxOzBq;lYF9%o*)Dj{oY)xL%H$)FyG;jJy%K zv4F7-hdR4&#+rT`y2I4?se}fvd%=$?#QQ# zo=iVsT%1DtHrJ=MCFi9+N-AURu#kK$*l!X6cMgl}4e9Y&`loDLjRU6G@JG7);L}^L zZ?~W~gkGj&!=H1labQKc&GruI&k?z`Nqi~}Fw^JHPc_KblU|xhY7@U2kbi~zA`u#X ziv@ENeRDV-z`lG=ZSuJT`F6y~IL{zX(jG;=2)Wc}e)^@zzr{{=da)lzu8_Wk&xO{7 zTR0x(xVe&)L}t9l9?1NR{0k9apY!ccQ)k3tdp7N-6?=p)y-AGg$fv~P1?pEG2t*NU zX2~z@>{9Zx%uH|6&f3VYlK)4M=CqG<(&L}enK&$Z>d|vFdL~PHYZLhj^py7IUMCaz zAaXzHYbC9$5`5Nr_aHO9F;8GOwcd|2KV3k2>4x}YRGq}Niu6A8Pc!8bA5N;wm9W_9 zz^^072hy9!XOd4PpP|n>BJ#P&{m5m^G5q2hxX9aRm^-6~!|APoPm2*WlYS@84`ja0 zp4W}%YBS^RWY<91&8|e*X|AENGvRpl9a?e0k=VGUND|B zt1D>7oXDmAW@6_e;$u9g!@g{W96MTRZ%)4#`CQ~vUbNOj#CkeiP3n6A@*wHo5e1ar zx?agmr1bNJmG-Ce&gZQ4gtX&jd-D&y#=7mIymVRjMT!q)y@Z`J#SZ8DtTa=nwT9oT zD9?sPxzEE%+^Wgv+_6_bM@EKi*N?=_ap7yrpkj${#lFlJ z=)GQa^1O4-Z4K-CgrsZYhDDdB*SwyP8Q1AwSEr^0#ZnqzZ($qeJ@X~t3U%7|+f=bP(@t2e9NOT4#WFI>@Up6}z=>DD|u zmK$tc$g_qu<2Qr!H74~XTi*E3c~#-- z%{NK?%Xn;UGhsa!Cd<9VPXf4Ye~j^@@VGU##4)YNr4^mZBOZP@Ub@ibA~^-gC2#@~ zsmC~RY3}0u#PUJVBy#)+SNH0B$azb~kIeX)8P_-uvNsMhtl6iyg7VzJG*@r}$=-4W zC$V>_D>&ZOY}Bu;ht^^LMloz{;#b2FtcU*4t6wTIS#Mlu&g)IAyN-Q1_j*`8N!m!S zk$$wa({10!oXYuBO#J<|`WA_u~R5c+3N|v zv+|BNC^v^uy7_;|V^eHW^(y@@&Q5Om|5eyd=Kkp_?0kWpF(k^p{L|3bn_nuFfL+mBTbhavRq+gn9k6bGUwb@+-_=S^m_JcMJX`>U;Hv zrGH$Ko?kQ9OXbTYD;d!8uH*Z&uH(yiQAK+`^;Paih< zRU@U!nule6I~%`^`O;D}8_q?~5PEL2;*!4aT-nStU_P`x)wpkCex6)%R$4w$?p(Sj z83CMFa(-Gq!I1NCpW%XC9uzk-XWcg_W8RpIKbMOy_LFmxNP8{w(mu}a)n608Xs=e> zGV}3dSMWN9LWQw-8e_7`==g446s_VL=ka1DuU?x|jYR5C>UBT-nIs9VP1?gk{3t)S zH`TrditL}HS7^humjQ8Ewv^tT(YuQ&GX8h)e+zn@jlFs#cihX2FPVNn-PJYHaYm6V zGLkFuBOBoaB=+UQ^iao;og{T6Jr|Cbq>K1ai=fF8TyL;@)P?;$zgv^I%* z^)ZakExmf9$cWX|=~^+bBQ$V4%JDVk@ltst$$IR|&|A&?eBH9#`)}2x?I2&vExr2P zx$Q19E=_XzPNSW%fJ{FfY2C&#>znb&gWl}>qY~Fa^hR#&HLqXO8|2Z*^wR+1Bb&6B zu`HB*t-0$ziE9ONFY->}@hfqi&hut_Z{xO&8CS-GS3X*9-hV@-Y)1L9(|miczK^wT z*{a{k)%qhDHFL(R%z558)2hpqC(Q7`xQRu#{JeO3XXe{X|2Cc@-eY9Jj$jO7Vy6y6I`wsL)_S)LdChTL zKYp;+ysw1L{PRa~Dz86RiayCZ{?pw1{!*3>OW)0WmUfnNKkW*JY37>LeNoY~fOfqH zdXAU$)<)57ar6Z6%ecRKR{DN|e2)77Fajqm2Df7ae=$lJWzWZdkd7obLvNiBm zEP;EhS6^WDx9saxEM=|l`QiM{Ti>kXEafFiRLOO%?0b0DEIaHv&6jr@&nU0N{Br#B z!_+2mT`2x__Udnle|guvGXC*6aE=SCx_^>bXFoJBrNn42bd=MuvrozhlsJs>u|9pW zSKlyPe`RIkxIVxBCYIPIZ&iP|ML5zGYPOG==ubYyd1~&smKoPY|E~G^`TBvoD7Ss! zYZ-rwIIrpY*!q55o<*wK7RO%V>0Z4(w>+8k%T%5QeZdS{+SRP}+CutO1Ns-EE44`- zRgGso@@%hupH+_R{^__A|E&%xchDr>)wI_rdZwh5K+!V?J;CRC_4h@dyMB~~oY{7* z>r|p=8UB2Lo`9scHjytykL~&1ocoCqpE&X&>iHx|i?&uCe&D$fql8t6ws1U#{S%7V z$&52x|1sV-;5e9~NF9V9LXb(mv-PPmo>}1;lBq@e;poD%?Dc z{pgmou(gUz%=(JYPI5y)(XqzG_uyZAs=G1yf6=X30?}?Ps%(?|o6u z5BY4f`*IRU`>n2Fe!>0&a-4Eyo(HybWzK59S^cS)diWlFG~@Ip?Qkx7y3u3Ehl#_* zc_V0)1WR+eO;7(eCA2IzPKgIX9JZRgmuo@?9wTc&^GkN0J@p za{k8FGQYghtDj=^3u`{0y<|Txc_Ne9p7fAPbL2_i#V`vj{%xVXZNg3?pHrLE`)tww zX0JZO(!W)`%NZnZxX2ko&E>e!&g6XPXY`(!QVJXRTZZ27l3smJInmj6znd)A7g+v! zX=3ou!?%%KB#W4ZH$=v|23fj+LE=jzSe2a)!&CQq;V_=ZvL73e(xy-b(st&C4w z#NUBl{W*~u{e;COmtpKYKq=*HpgoNvpPWXfHi=gi7r=f0>ec6pFehGe4FN$qT4vnm zj;Fs7ud0+1IF7$L=+V$KN92b6DXt#7y*agJ6S4RyTi*J)C;xiT2k57}r8lF#(H};? zd=~wa72mW3B@>>Z%ZL+kxE%enCH~{n!=O=fa=b<+ z_SL=S_wz56dG?Cb>ubcsy|<=Y=Sm`iWfd@7sD`eZHFMWx)lXQg0! zHtxaXT_9wvk~lYze;w^-N72f?k<_W1448R2jPkaTUR!U?pVXJklj7e(8|9nrV|vA&u?`TMY*qX%z>fO|+NlT_SF_idC(`9F%wBqB zjU!_z|7i3*Bl)aN;x&lA0Q&Y48Q-x<^@m~#)r|Z~krQ`o9%mhBZ_4k`5}#$#{?IRd z*v5qztIHcJRjK!S^mU@oSeIn{Hu{%+S#JLkzZ%dde~Tis{Np6A+&99Pi53Qn+MgTDnd)=cUJ#HCaQfk9sd3wQatQaH?vgM7Re1F9JVx8ENdYnc4XGub9 z!!=vk3H1M;d-YdDMm=tIUd(*P_eM@MXP$HyFn+Pb@|+g*G$IIGtlRe;}@6%w8Uj8`FhBAtn|ms`=Dqi=6TFP5*Dsk zq`#+0-;;dR#Pcxp8RIWQZ#knl;%kA~lChcgpm4D?(b~5XwVa5-~s$W|#Ev6lRNIU9D8G%jw#j)ca*{4tV zbvxW-onilJnC9x(x!4t&QRC{IG07F4!G-S`myz5wCT&Nyy!O>TW0>=^jre)4tb46Z z>R~PyJi1Hz^j}1lH(tn+DW2V`v&OkC)O!*0)_ImLfwZF)=xZL+r@tx!o`5Q{Ka*}r z6^J%-ymb3M^Z9eGr?koSEbBdc7pI3ObHOe8w$M)gn`(C_kbtoybwa$5<29UMi@sZA z0QAjW7s$B6ceX? zv6D<0fnui(JK7$7`eDPZ>*x&W=c)aUy25s*q{}lCJFj9Ve;u$HJB@qx<&3{l{xS8; zZ^*aL@~er@T8GJ9$%^ zwByC-@gYB3ghoGR*`F&pjh94W^&!mg`ZeC%nak=pRe{ef^d79wia7N%=a^ zZ#%S4e@X;q`DE!fvE*`>Q^tYC9B=3NSLx#?bCtqAH~UJC=#edNUh2;Oe#q6>&u;G$ zzp%tiM@WA+?Z0ls*KsT@g}2x6U`Fc2OHz)xl;armEar1+Yv4lzdYp&%>D|BH zpZ#(tY<}SmO*_2Or7=gf^W3|}qtq?WJ;gzw%leAi^lI8k_W72?tA-O7A9{@Eb@S$Lxwj)NE;V0@o;up+;piE| z=hP;8+R)=Xs?U7CL8e`?j+>EgR#vk${I91S{7AW~Qc9qFUV)w={P|Gi8GnrR;ACkj zuVt;0B@Nr~?Im}e{08=RGP9)f)ttfjh~M)>Vzd`|J5meD5r69? zzwFlWw~FJ<9M{Be;#l}RMmoS>U23hX@m!b6du`?1ck8u?_|b;tjRVWg`et7?iBH{G z%ttkS=5=gdZk4$negS3Ay& zQWZ^t@|2`~IF2kgm(xJ*TNXM?H0x(BcG|JSE8DGh&U!riJ>i-1@;x#~aq%$4 z6EjktrL4#O*c}jowN=AG>?Ei3na^VmU!IeVTMg;rmw{AIZDfb3$YjDEg1c9!!wwTYdv=Wsse@6*p1%}&NnX57iH5A1wb z*iQO7z+CLKVJDO_0xS5NgPq8keY)M6AG5D-*`wyTkUekArC-F+!*V6PNja9Hr{(Ov zoaehl9!IW|eiup2xFFXPrF@%_HoY;|h{zdG3&gaxt#)pP; zsjmxJM~INok#ozO>lxMLn@s;V&Zn%5qOXH|mE@DpsZBmFLheQGP6?sNmx>+qWX~UB zKW^DSQqmja;;eN0lm4)U;|lr?*ygxs?=RGI#qKKRSs6FZ7yZ^IcIzAYhd=v>%&^OS z0ZK04>yYEK8~JxpU-~)^w;?&|H++-&>EL)N$2UsFW$Gu>&Uuj7IuA0|O?UoE{ZvrT z_u}X4avj9lWPIAv$a?(7KJ)q%e$wT!!8fS5RxRJTlTG{?cOK^-q{}-mW8Sl#LngiD z56^uSK9|paKCOv$%bVZw+@-89txe+6hMgV1x89$3v7BF@pT3XK#_>fQS6iqrS*T~? zlIfS3{$C@{`5#(%pyaZGE=TCad1pLzC61dM-1OtY#i9nt<%A-88y|RZvFJ3&lZ?_< z*rfg|DtW(Qf_WpW91Y0pXK;P*u0H(>kr(naGk)+iWwE>wuHba#c$ild6rbhlDZUEw zh63gXsW;j3)~DUWUdLFyT>sMYS@IeEAOFhR`}8A+8%Hz#$wIEDpnF;0%UHp9^3aOubvJCo=7ZwV~ay)Aj{R%$tXwJ;@cbpW_g(1+_<+I~U&I`+ zp8;C6{M? zwiHNQH`CwVbg!`93z1G^%xj{*`U1vdU%zgb_J#hf?ne_>u3_ig#?L-~nL~c(_*}mw z4jssC$iJ}kX14>m)jM~X>!D*P@1gkn7THsqwD(o$YoE}s^V8hf{V_A1X6k$cIV&IzN4#Z9g+^W%`?Z52tsS z)+g$WaYxqkRlBXodHzPqxePnnlzzQN&RYtNJDGB_ZnisaDm-r(JzLsU*+uB{_ir^n zS0V4h{tl#(`E4q5g|vq{E4?wUW54iuhGRRHOL71y%G(DrysLvNVyg@@V+waUCHOvCUNY*PRoV; z`gbB6HjehQ^TKE}P#JIL&^`}A?=;EJ(jzC>S>yH=>^Lv#&sk?lImccs>yLh2ejg^Q z9cB7UroB$1y)G-*UbF1Tdj5O*%P8^3+N7LwuoJ$xpWgsyr%*X*uY6DXfc*9%5tR5f zF^`4Nd%UGnApWmFZ}-f8{Yf!cs2^nfH@=tpRpIr!aV1jhRAc7~?9}i%wTb`Lmk__% z{rZpyd4E@-@lPHb+v;vVcZx;tOyY7DdUu!n)+X`}^md~6C>dX@P2`J^*OFeEUuqNi zQsiA%_nX&^DDO;Kwa6FX_g1T@E+9Ymc=t$0M`t<{I$Ei%cXV!T# zPVQbfY~}--VrP)?=!IQZnBQBm>{P+o*y#!OoA2w+>6dnyiOlOLwI!!yeKyKdL%rTb zc@|r`1X2%6(KmD*^N4ijOgrLwSN8jc9N&$~>k86g#Lq>{8`3@-`JCFy_)tcG!ngFB z=No**sMTJVUXMyYtG156A(#{)PB0`uCS~)+X_uLw?V#{krkf zWtn!GiFbB8WhI&{*wM^+N$e~+#%6mKJ5#gTjl^dab_VA4>mP_5J6k=+BCEW&%-|Gy z4tNpu_z>gCvt&mzjsA@)9WfLj}ua-p7$R z%a*s^nHK2g1-=c7H5^8qT5#CPv!i6{j(A5WZDOD&VHUzzT#^CaqDYd+#tEo z&IO}MTvC|k3UQ^WlfN*3U0h6xAeScuTP&Ny_}envd#eWV_jKG!ZBkzymvevWzJ9%Y zxccHzeED)@&cZ6|dAD(lD{Ii3-`)n%>*?s%M+`SEX6i-W*5cS)xPu!F&WQJM+^@pU zV9I$Y^7(_(QZWu+4Ux}+NVTH;~-U-IYgcd&YtTT@}))|uV#%G?kW!#d_wN^^=bLRgPL$1iR zYtpc+=aNN@nM(#ciQ^c?xs8lJd+<56HSwW|1txa$j@`RA(= zS1I#-;-9P+tSt`fXR&@QV?LF3n27`PF+Vz&ii6R5teDhhy_D6Q_sPZDytd@rboyH3 zv_B=cp4Kv)*{OU;i?;t{@y*1M=bjyVWXxoq-)N#;-1gfQ z`gJ5vZB=|&g`SoV`pxe-XX`P4&(8?8c~!++ddUDJK2Gw(ZMzR#Xt<$luEXChMm3hZ2o9itzzFPp?|0eTZ3GMHbK_HKKQFfytnrEddkS{0m-N;q_KU9}KIj=OGUB5!pv~c98S)_Vreb!s zJ^su4{niaXK#$LT>4ak^;}XL#qq#Bui(hT5Yk!NsXYx64yfyAQ%xuj1$-@ny3o>{NT`#D$(%Qe=?xet%jmN>4Z z@p@TnOwB)HpTvQQTV0lwjwF69n8_SYKN&9$Sz8TUieHVN_3M*z&m;5NpM1G@!Pd(= zqnDcc7kRlZiT(pp%AwdDM+5Y)=+F7SiPS?i^7l#KCh3_!taXd={jnRl5|MtE5*u|S znMryTJqw0g7iZ#EBa6{@3l7_v^Q#rq>*v@v?(2#VY|?L6V5j}7e*O0%px503!L%ko@!q^LI-aa%D`;ir3-`neS;QO_I*qq@4BS?;`)p zx#y9Y^?!CbeGZ4!9P%#4XUf??dDdY^+F)vv_%FeZv#;O$er(>l@gk$7EE}y1;^QFc z-K4Lz{Mzb#UB2J<^(XP?HdcC*xU9fV&)5C>Qjunl_da=` zD|>b_+qc}$-;Q?BDCwLf`l630tC3gG0K;qkkF&FZud68f|INKA6dEs8iWUqS zFhIe86@pX<*p`&0ZJ=ohP#{2o00p8{3|JsSH316-C>W$_)T&jBMlBezYSbzfs{||( zv1)n9%T29VwLAu?S~&mjZ+Fkzz2~OS-~D`&bMBnonc3Ny+1Zz~=SA-m!byFS=Qq@oZw5uEnRfit^M)_S5zpdbD0M7-* z>>~7!e6PoRF(<(hg#0#Qc#lD+M|$m&>aiUjM}5mJ*T;%?V;HbZMUR_;{8?Y8&av)j~?(IRDPF4r*tL#9dyh*Jja1wot@d3 zoxx=1`|W2fyRwOYh^(1=RQQ{;m!Q#}IT#p?*{o_dX5(y$+`?lHcBy=tt?G_ear->T^Z9 zCrN&r(VO>98;HG!)=bgbkK(^340`v){Yz+n(Rn5I%iNbdj;C8GlW7(PfNo#0<~M#z zJsyXqpCq5n&|e8(54ib-0{;np-qX<+BnmvI+OhOw#4B$Y^!7*&VLuh}AKIfiC*|F8 zkcB<75xDfZ6-D~!@dE|tWwk)3?w~>Yo#v>#XQnmRU7)X(lW8OHRD;t`>IZwlGxdZ4 zdp>iBN8{^r{gIjKwViycpm$u{FNSegUb~bhJ4Q3)QoS_4@jCnvZU;$pYTL2@Lk7JE z;&hVaXZB@GO_rY-$cj$KqEzY))bEUdijALoptI_&gWl)jab*%6eedq{WHO;$?4n;9 zp*}P7=uGKgzUXa(-sX6HLb-+dph@FQwwOMHSM_Pbu73!fUq|SuP1~R|?WjTTolftf z^Pbv`d0oOfce%rn7Y8-??`VmhbmTDPcZJKVi{QJUw-b8j2q0~lXZ_n4{YO3d%LI3+ znQQr-^mj)O+V@~WyI}sI;QT=&hwF<8JpIu`gYo0XZu;+S$me9AxM=g&4gEdS2CcoD z_n00r(WkOW@A`PY=GZ~+kYf4}>bLeyUX{$Aec?dz*^3Uf;AY$#`V-F4xZL+j zroX5npUQtph0%wozH%g4dbR0&K)?`5d}w@{t8(k}DnqK_uN6FN!81<)@D%uKB-g&5 zJxMl*bCs7=&0jC&H&FghuH79U3*0%=nTa&C`a#QyU5FMxRn-3{@UujSToON}t7zZp z{~bTZ|51J^<=3f!LOTilMN|)qo*x?erOFQ0o8fbl{DMp3vj;lss|USLicZ*0nh%ue z1szD{3>kfc1b^71U2q=T$th);U!{F>HvJ~iIFUPHn!rU)D)~1HS!zAXl|pCGg$APm?^=4`qIY7;V$3Tn7WG zTKEHPkZQPV623DBy&BiQJ3klNmGN`w-{dK_;Z%5Q(WA@3`?&zCm3J?A2WtntjpE0g zdqgeW`@5OPTnoDuQ{m}D-ya9h^$~wk4}33pmdqXWUJ`y|_vX8O`TTuUA^FUOHsnp> zRmDYT41Tu|M?~c(I?eaOFLZvOjG=!_irW@qZ=H$3LZtnA!Pih1_Q&dtMZXjJ3-jo= z0nd?tCi#c<9Vf`%zg~oXnmwqR(9WBXtDBUWq`*1piIWTR|1t8PuKK%F#kK7|;+F-3 z_In(mouc{L?FzswZ`lIU!&=(wtKd07Aom`&Kf+c0`yIX`^c??!`2_JpH{}i%e6clL z+4o+T|5(98`muh$g-4b5(_h2qfeJLj_Crq!{N+6D8~ANd|ot?=4`T`QKaWfsbhy4|)e3L?-m!&0{g&Uckp(HfdyjeqfQ7q`2tRUX)5b^sWK> zoo0S3sa>Y5X8!crLGKp=gmTe5&$6IlBKoNBPJXc(Jj(A13iPTHc!7SA@Qqt_+ID?`9!#i-_6h&eE*=GHwgJ{M3-6caEj#ihe(f< z3dRq1Inu~Qy0PEM19tx3%a^y8VLdW=jCYp9aCvSf=_8s}212cyTbnxKR z*g0+RNKU&};#1*YvhkDJuNS;)ZyB`bv!O%sSbiX(a;@jlU&0UJL6Fp@yC}EiR@YzB ze(YBxu3$e1@5`CVeDbJ#qx1>7`Sq##B=&dPpm&4Q=Yn~tb7_@%_`+C)?7~P9y<6&^ zi6pw>aSe3;$<6<{~&MmSK z>yJ-+(bs>%S9IQ^8dhq$(APVeCvftJj)!2$ob0QHMbu`|NOe*@)qaQ5K6L`PBs=Z| z-=0;(AL^&0_BB(VI&*d$@jLqNr0_KQNVrPQ1K`&gNXa1C@XVQT#@Gb}M7eoxa?KezFFqk<@^u$ z-VUBE;F+N3E(!k_@J+xQoSg0Y=64F#H@n(-KM(x#{K8yY_^bXD{^Q<3uUF;y?t1e0 z^?Fu-r}6pU3O@fkmCyf9p8bqjYPzim{A1?0ou{ACfyDdWHKDWg-pqY=KTbXRcME(> z5+CeKns#O$R>1NR{qVKtzCrtaQ`)t_KIy?Si}1~P4I&qWQwm&=ulFtVH)YV34f;uP zuYMT+uzJv2FQD-wbOGtln|MX~(%(URM!BfI)B!?dz1y9=B*()#GVIyHbuQ~h zimd}KjfhNK89S4%zkU+qXaQU@`VSusU4xdtQ2!A@d#PO^$6Q^0>3QWE#`ol3srF8m z>-6-JJh9s4YwJ%Lr@RMw5N-uYde{cuRSyx*1bUeMq|sk3mN-S1Jag!42j!#wT=nRq z{E|=6zm)PL^cNRoS00dgm!<%K`SGFJO)0P6UwJ^@KBQ{soFaZ)5}nFV^Y1f*_Pb#r z9mPX>6)Qr;%6{E+6Y@78Ey zyf|W>L3+b78W^-^@6{fkxc-^4hj>%9Zk?+Qo~ zyz;Zm4}PEc(m?D#Q(xejQ(YW~7MzdOh>u3#lYu{>tV#Bwn1#uY1U5{&bWwiy#zF5o zwRe)dqWwMd@0U}hVgeJNdx;;;gdd}K;)x`E+zXvOeS>zM2J6>XOE_i4Ja1N>ZtUwv zgWmJ;crZx~he~{`u2Hp+77_{%r(7)bjoX#x%+x2?I58bD^ai-%*dR)as z#74^f=m36%?GoBcRF7Ae6!|(xIPcWmnMz#&9hxCXs&^N3CO_-u_0cQh)Tdysc2eeA zD$70%?P8vz54_OVvr~ZodKt=e{8f}6p#1LVnBNoDsK1)7Y=!=+lK$W(_&7uPU6S6E zf1dUqh{q3-LpAUQ;2GB+B*&v>{GfH;4T)+IiG!wKwl5dydUQi)4|L`Vj=ZDs zWt$(R=^06U^^1!YDbygle z!E=Gy`S2+*}Inb1NfmX9xKq}s68)D|FDR@)B-PDv*+^*PhhQy8;PJTzFLS^ zzlDC8IG^82l6BV?vHxM#c}w{b`kB!0hJ3M1n)!~%04ngVnS+vhQh6ZJ@5E0$4gDLq z_mk{s%9rTxb_{w)#qB%vb5XzFkp5*6@&={!Z45dC(0QXExP?Mt*?M7)#oX7Axx+s$7q*8qm?U`STl<2oYXEF4nfBSygYR!j~)Z9_$64@tKiTqxrKm7-2{8YuwF7R)Ab2M=lx(~@8+Bo@I5blF3FE{fM+#$ zZg=|T{78M?`kNa`2hACbb6e1_cVhP^_(-`5?{@HR{MUcKu37#S{3PYyQVOzAACv4r z^DZ^Xc4z}CwY&VyqtxGgmw?|&rvA`b`P!g;{{cGDelEQ_G9RHnAvpQLmKWY`?B)jQ z&vb5(D!JPZ-n!QZ?RvgxZ^o%=Z+}ok9+hvyZ{AJ$BUJhl^Vsx9x)cr!(6 z$+w(*)8ldq{Z(kUl2g%R$~04&;K)qCR12LN>Y0YmKZs9-G6|W@t2D)&F2y95G5FnG zGUTn~J`x`-rdQF6Pr*38W-UG%dTg5ulG>~KYxu|Xke&DWFZ#XmwVb;I-e|v958h7j z&H(RO8hr0d-xG3ZnrIAqr!>0hsK>m>bjL@(y? zB|EQVqC@%T3kUU$>L=N&awAcOMTNtT_@bwAbq#q$(YQ3-EsN9J*Qko!e>{HZ-UC_j11P{H|K-N0Wb|C=pc zbAFffu@`uX{3i+?w!4|XN_y`h=kPbh`&Il?Y=6g&f_ORohe8ma$cXj35j`EFe{F`} z3&fX8YUk!};BO8Y@~)4!bCQ2lJa==lS%>4sTI6^xbpGfQ;i`7-ht8fuhyJU5MQZ1= z9`ygPA@5n?we9$@-+*eT7WC+G=+4!1mt;4!l-oeLy!mv~9@_fMX5@S`H2sd|p}z^f zxA@4oijOYvr4Ano&P{9QIBU5?CGjx^ADxto`cJ|8#XsdtoC*INXKKDHo&!D^_;t?j z6pWWlT$TQ*S?8~}y-GnV-;td`U3ki*KD5MV4tpzykEPtFK4MBQ@SjUAP2Yr{w+(sg zM=k&R)Y6d;dM#)dce2rh#~J8!SeK8{`1iya;~KQ=Ya3M4wo)9 z{OtwbPVmhW0DQ@EN#2JhyRZ2c`sVXv^yLC3k$6WV5@4u4+nM0lANp?+9hU@eqx`BP zhYH@m>jM5~{PR2g%v@{v>v8!%AUOVcoblQm)NWByd?31#V=wsg^{4FHtiQpJuWKSx z&tE0*)xd`ZKu!hy0{WxR=gKbx15yV2c6(L;QE8($&G^%L=pQbC-Jca?sshvny~*zw z@{W++E@D41{KWn{)1`l^QIr zh^zFon{rbrcd6ic{Ll^g{1lyE=)g~ufH&IClJ6LJE5Q4b`~me3&PAG@e%^|g0NJ`* z<8RczJxlztKzz8=%(doG#s|j?c?0|Q>xz4?Ngf|8n4~ju5<*!sqEkCoqpzBeoE(XN zWPg3opH?;G%@+I|%@bx0E@5>I-Y>9U8M5+~{H(_&M?4)ldLEwolO8$;3E075qSLuxiP)SctIKS#>`}tK9qik z@yiMSw|JtS{MF=NN&W-l?G6iWA5J*l(Y$z(efW03E_t=0|6AendhY$y$W1qNrkyzC z9Y28|p??nLW%{kmYT|{MRM>&?&U}~&=0GEQ@)u7*FWSGz-pYFE58g9m-zU$rw}|~a zPZx;WL_oqj2HwAdx4{0vJNcBM$a$bkgZ{jkaveOc;Q5Jhd4};(biQkK$!&?&!n99W za)4~!t5Cb`g3g{(hrCA);0N+_{YO%~&AF5%nU|9BnfgkNEh}mEb+VwR6F` z5g*UW>~R(n^t@sHOY!%LKi(E;FVU;|9`!#PyZ4E4m0W6pPY3RQH+NjQ>}J94yyTuh z92C(jO2rk+@B{73sQ(cWK281MXYDz}o#Hc$SMX2a`*M2YD)s^Oh+LZ)Z%;d;@Em}u zjo1%(&3H_>N#dgx_z~nkL;&>ZTr^E`X#&2J{I|sII?3KxC(1mRER`@WuIWvso}s?W zM8_r7cQbTS=MH&~N)Gs~g7!u)Gb_O!3(&&$9{UFG)q;1r!>LO(f92mN-fm<*MgSv6 z*4;ZZ*q4*zg6#B*v(wIwM17|HG#>gf_}-~<7eE%t=c$?bUS}Klmw^8rX^X$WADQ{) zS(;APeD|d#*%dk$;iBw{SsXjKd|dldyOa?xUk)ETBKo0r8H4WR^NBCBF}g|qc0LEL zYTHplcwz&jBKkU5?7W=sp(jy&ZG?r6A25Era>%<<_R2XU1@ZO#>~ynDFz=&*EQnT= z*vWNHg!XsRfrF&__Y*fQdtZFrTlB_6uVu)tyX>nUXgDvsWOndPfSE~>@ab*G@6 zAOT#e=Gy#2_A5Z|8Not7jaHa>D!rH~{lId9u-@>$op#zEeAhW#x~Tnn!MF7NL*5Jf z?#Je8AMl!F!!ivhIo03A{FUSs(UV%><$bId-0bE9;JaXa$b4A)euTC#nm2>R?|8nr3FPPcyM~FjztRpK`uN?ZifO3cGxl58?ALZ6iZiYIf z@#S|m=L}|!N}gB>_V2VbFeX5L`$hDi3e=T9hQE7;?7nNXG(1lw{W$fsM|D>JN?fFUYe(=w@f5`U3 z?t$Pr;J3q%$ofh8vlsX@^3QuKKSKQp`++c?qaP^A?3_@%Baodb<;BB;d0~suXX(hx z@c-cmLxOc~B3^i8$oo0>R?d<0x-kjoA>Dl`xUPac%KKipCsSfpW6ORiek0#)&fIp~u8hy(gNyB2< zneXeWF`3G5MlUY~?;P$^SMY!(L-F5D`JImsd3O|x55o4*>(cvtZ>SAbcf#=HHV;-dp4Sc#}@M&CHm!q0>R!b0l=kxj2rF^rZ(n z8=q$UE?B59j3s^1)UAQ8H%loh<*?7jlj>^k00aH zH|G)DmAoM{=%=ROcNRlG+TTmBr##8{aodom_O^cOeB-tBQ~XJPE6#H77Yj%dyqSNMGwu7n=Eq4xX>3-23z#pGK_jW+N=#+PhP!36%eep1ah@ zwa?MZ#Pu#5UxwqSbFwQgW9ZaqhEAFLlN&~!MfIp99yt|yOcMvmwEr*YUk6zqAYY>V zLw{`Mj~+`_^q~D~SrGXcbbcZ~;8Hc$F6a!tG-S_c{ z&fkKCQPkPf0z9s({@|FseCd`by$5R8SkLPQ6ZqC0j{j0xE zc9yzVKGSJm>`K}wEBt#Yzv7=m-fN-%R@PwNy$Qa)2w!K4zDufS^)FdZ-@|%$LOu18 zc^A|x@&u4TU>UMU&&-aM5b`|>YKou1@<_@izTbBPK1!^^MN?Qfr) z72lP|#O)0w*=2LG%Nw)HI4Cr8;Q`rY=%M{}M|N3VcKLbPWsJeas(jKq;*Y74quNdD zjWZbj6F}491e4On$ark@pL%VbI_!O+nEproHt#w7AlYsMzp3{@_OD}KP{eLUr~WCe z_YQl%5gq;@1S!cbe<4l zmqe!nI-8~qdmmOOJU$)mk9akij1`>dG-KEILg!{jLzgQ4c0p&`al_tn0Zg2Wk=~Ut z^DzDiRQ|wJc*d~HAA+Yz`CSsc`f2{Xb2#?h5W(w#PXsPC^ONe=?DFTFzZhqJSlcC7 zd`r-a$oo_+)Z-5Ly1*yGRsOIaI;&0?4$k>6m`Bt5FCRmCvG~Y(_G-#E^)XHa?^mS1 znY)#dy|2N{mpsU*9TZ@2F*J)i5D*}+nwG4WC_ z{H>io>{SRrzsFQQ$Jw80CM?vB1Md0#&YoO9Ok1{>>ZSPSqTQ1l2T2}H3uwOj0ejww zaFeEhqjD?pNd2(aBY9jM^iQGOLqCB2X09+|FS0#)mJZo3di1|Jf`6Q+=78j4-wiM) z_m5L}HiYLCVaskCE&hFhG^g+E1NDE)*7)+MAD6C<$emZTO6fCsT)a+_$2f(*5JnL* z<7-dS3;DG%^x|yn=T-sCazqhU&S5{ojI)b8RAH;voxfo|s$tmfztm_rc-zF%>*4t_ zo}2FthJGg0!_d#Lo|L?5;ksAT?{(r&_J{vE%YykYKRV?(=KB^8dv`ngNt$=e?2i|V zc|*INFZ-({ZhRI0HBA^frzE!iqYV|Ya>``u*9qOa#$oRYnR-~iB)>C{^&s|oBy|*F zKUhXT_%M82WGL8wom|GC)39XN`?KgY2lkvyXKAKoJbPX^iC3D&QL@b1w68~;Sy8A* z@;j~cv-9Bd*@z!52i`qEeBU(eb#bq8p$?$&55QNsriW9hVcKthJ$I>%>j33amkfK? z7VD2fe?^>`8C8D-`ho~D{huNaGH;Mb&MYW`=*5@f`9<)xl6yZ@bJOx$;*aKGZ%f=S zoA_f9b~7ty?);=bGK8W zqrr>X1gVL;(%;d)ftP6~^L}+fd=}~pVts#cbtk^c*Ko|N~I&(RIvH;VeR<;m;4(Q)}+#sy=v+nqiUuA-BJPDKm-cRc<~vUlxQ`o(yDMS4(4 zocTuTbB5^X?YH8?FB8)=Z^Pf*Fl^6jp}m9kqv`35N%Nh(&!$p;ryi!AMT4Yz^nhpC z@?kG0KQX?4)O)8a&Lzart^-iJbPg~kfX-pu`>C3nDZeM4{ot^7vXht7bAR7%dUw=J zoq`#B$oX;bnf}lrl-@RjZ?JXPd&uESo~KQ-VMZN8FkmyB3U59A-Zt>Aa5#05jrM_e z+KOTOUbk;Y`oxUpw=r)x zwY6k^b{pRY9^`YtJGt)WZx8U5=_{4X90o?oJa@WaQf6>}%GXkUHs$BI@^f5yb~dEX zr@Z4)^=>{YmHHX=o-)A!xk#S9e<0j=aM*jz*-gRt7wVkX_*yY}cH@_BU+B&ccBrM- zWq)K|;h|yg-NGB{Db7jn(#pMs>jvU)0DbHN&zTN~E`m3LXY#|tvHe`(T;y zb@h$tcRl^hf6f{3);S(^ksj7=N58@IsFNG(AluCRTjnlYiG2Y?_3T04E~EY*P(hc( zM+fDXetFoN7`HdmFJ{_6;d&O$=?G6Jc(7H7k&LR_|Fjnmn63~@T~gUuze3T#6u{MZuXB1D<|J(`j1yBe}~FS6WJpG0kfsE zS{SSWY z8^dfMeJ3&Vo#gclBWR(h`XJv?g1-}_M=sTH%|U1R zreQl@2%Unsf&E44FXV;u5&t;_|2uba{QPRst9g<3`)Pc>NA1-Jd?j$>uT8zvH~SS= zxnA`2N$|aqdp}7ZIw`k>a_0Rwv!9!xy4lX1z6517Syg_F@()w~ZGK^{qT5gTZ9f~f z??oB94ZisqdGF%+9-f~Sk2gYpAI2LBAD>1W3S(S5%rSO2hFp(_kE0`eRCC`rh(FlO z_(^c&9gP#2ALrzg{3zGjbwBtr;9IG3E(zbdLE@L64|`t~tPr0LRVY9xIh9l2lfY-} zT4hP~{EZFLKH&R|1`gxvoz^SsWfq01Zucb`e}H}72%R;cOR;#BklD@NS^BL*%-{46 zd(XtbXVn z^XAn4wIi$tJvZzz7lxhw{yb&vwD!>e1abKL4VaBhJ*K4 z+S9lBZr0RuJI^=rTy>Bf^**5NVhs2u;Qn_9Tz^2k;r0>K(;xgk&oJCPX(i>WM;X8V zk+@rWWBt409p3ojgDHTNM6(R9&blL(jv?vLQjo<~ zEopZf(F<>{=>N~Kx0icAiLZX(YhE0->*(MO_2vdYX0Y{FdGg(?!g=~?_Os1(>dM?z z-f;s)f6Jsl)JwXbI@4;TKf@sXZrp+Xg8w8vH}#{1VV}<}82{VK^W8lEL)`y{ac$`T zc#j}+Kry`$deQ48j{SUt8+Y-3E^CF$Z^qV?YWd4SZ|R?g?RR?j-v-VHa2mIzd>d?=I`lNN2pHqw2yq^t~gm(ZxdmVUJI-I(wJ-flX|37{6+jT7~LIAHQ^Cf_FVJsjv$W+v2-c;-Z1MM-q3X!nmn=Z7M|xZU4pR=Sh^ z^{>RCDj&)xsXerQQ)HW*?T|z#hkpDPI&T*pm()%z(3$b~VY|=lJhNZw--I_NhssHR z`zVK750d)pb>eULu-7+%A0dB9en$K~rTM(V{yOBZBgZ-<`m15DpQOuWe`Y_xE5qI* z0ojKhjaxnv`JAC1i{BdZmx4!Z`N`-%@YUck@c{gqbJbjbt>@MF>u0Iw1u8U~c33ot z{lXK^nRG>VqWI{d{BFvBN6$k$W@M6lo_rJSzYToLl;0)c*$$p%{~Wg8&yC^vV174Z z>az|!d%$y$kA$o6RKA4#UmdpR+f$#YT+(4jX=Y$HTh) zj%K`hDeXM>N&H{GRZLU=zob&5^gm_7!C6^$e0V0N82!SfB_O(uT&4z^!?C}OO1;xn)uUxMxMQc%s0c|-_;+vRKs;U^!B_y>>Zck2klm5 z-sx`Zmg$95Xw*U`tp5=ejxL4 zMfAnbhpNRs-wnT?j?`Q7tokeCvp0-*zZM+&1#tuVndydV%+H5@r)iLJ!g+2V94M3| zpAPWOJZQxBr^xOyR8Mx)4SWgk>7qyc!n}(7M6f?;FM50-_#{g|)pIjIxrWIj-er!@ z0zHe`(aiKcMZ{!Kiofm1{cz~)?-Su_+VyXQ|8E?L>AB?82z(~+k2yOokdwT$dZ;3D zD#zdVBLCV5J=LoRygPyK5&YahpYac|b3D#TICmJ$h@X%ve0#w+?ad?JhvNNSl09l1 zSmd0wuzeK|&&-ok6?B^a&UguUyZ8?MF#bj_amCc!#7AA^pFDNMyRaBvVf!hr?klF} zA}9K-_<@t4|5*We`F_0ldgQP$oon3Y9(m>B)OHpOuSMt;{71*pBNve{}gcT`gPeuj(WWgp5;CguHv^D zJR6Q23Em$W#~wLnH)EIW3ntJlp-S+TkMey2O|lyKbdY}&`2Ft^JNbm|$)u5+57B3~UPgnlfV}mENIP_@-n7Hv z;@2g~Z5MRbAB9~B7RrMjowtab)~X$Q(62iwKT-Ky61?gk_bmkmJ7b%-ik5B}r9-|Hh0jK5CsY&>SfTNk(cP!6HpYn`rtJi8a2e*EYy(D`(P zj`$sePU^T3?`NW8`fsxj&O|nuN7FvLrj+pPh2LL+CmPR4o;72PzpF;)LYcjK+OZfW5 z&+#MPL1NU@%e+6tIfCt_nZGc39BBvT-%I{wCyvJ{{d{Qmi} z1?x_{58S?AeRg$8=DoCyG&H)NXZmf)O(}2veRWB^doum2c>FQ(*FC0${U`t13m-Gz zGvfWw_3yEG-1R7^+nh;GMt&?N3{&{)M~=I}o8O<8{ge8gG7{T2sr;3|e?fj@&$N@i zt5XlW2KXNG7u{DL^~1|E$0ol%W+f~-eZ(`jK<7x+%O%x!9drh3MuL4m1@XjUM4o;j zFP^YduEph@{NBe~(XVrT;#^JrUu8UZ#)x-%1TMa6fNuouf6v_UMVq^MB8p1(ame0rSIzmbKK|qw-%H1r2{|`c< znR%v#Hsc&8Pqq7Y@U8;yy$)}IeX_cxS43j_^JXy%6H_A2X6yD75MprYh`wk{oY^4mzmE5Pqe?49`umEj{Ki< zdYoVf4gRU$!3L;ET+~Xxu>ib>NRM1<<662G`#OKb%kIYyX~b ze5)@V@y=5NB2O15w~Zh&_Kkls9wm>05lMN}fu2@yk;8x~yqW;aWlb zUuJUJf8x6Z{4>CB`h_dyUHHr?{$|#s>-o=szMc1TjsJ1e+>80)aLAr}C_nWY;=4ES zV_$l@vLthCvL81qIY#gBAKQ_`Q__2v#QPMF{_8^{cArBi2jbc#{%Hqh99u)aE#$jO zWjQZg-)S<{;iu%(#PhiqyK_^GH)T4{Rj7&QZ9LyY`K?ax3jC8+;qSyhp*ev)&zZyt zQ85TF_Iwr);d_v2)+E)hit*@gF5*2}?)@Y=jzPEKrV+1IbcvG-{0QfI=MC8=dMkJxj_V{+8$TFgw1yeetmImm0i@LUt* zFg=<4K@a$*ei(et|0U07N@%YYT2*BIuIs0%)G^Tcs_5wKt9%P&CPMmJUQ&`;f9r@h z-?dNFFR(A)^-E_@${dPhf?i5Uom{BTRnWQ9g3N#EMJssM-ZtWm2x8wG$3J2Q{FFQg zDEAoU7Kmh`8b0i|20SKSfgkLdfm0aIbW`qqlzY1h zxMb>2xvi8tMle(V3;pWb`cv*`${nZYnhYg1@z+DSEtKmOWPJNSJG;CsyP_d{<@e=e zU*K2M&{aIY4Y{*?5u^_8Dl;Xi$#;%;N2-BBx=G`5bI!_RnqDTR%{YxWC7dOM4!llFh@ z61Q){)wGdoSt<5)=|J$^hXVVePCD;rW}3yr!lM{5iRpayj<79Y-}<3u@UDixXgni5 zXal|q_zdZ}`M&+LF+JG+6z2oO&zl{Ox=62kg>Uspa4!8dsEFX5d)co-{xW5BN&YV9 z@_)jACrZZ{&?1It4n7#y*KS5*piAEah*WP?Fm8;K={!ylT~>i~L*3 zAC*@P@E+h>fPdB1qoBVaI!kX)aMF|&-d61DIrv`7y`QSNDdhlwiibwLnF6BUN&Ug~ zao2C{g>us9ACBH~mQ7bo*YL_B`_BW9QB(=0~C z526qsoy4u*g}<57GnWMKh2HYdj(FD!1|Mk*z~o0RKflb4KhA?WlHfV=Zy>)fcePVB z@V&s-13z7S)9y}QZk#^TOy*Y*0YHK&q;Nk@5A%7g(7BCbev;M@7dINyTz0v`k(5sR6h>j%CK_>l00^)Zvp z8jjj}%$wB0J>i&{BGYhyBPoLVsUA}ph^+h)<1!a#MCFpH!nr$4e*9BTJ)WZ;&xx)} z!qWtvHD4L==84fz9-1HJ<@uO6OgmN59+xhSpMzXa(RJWi`_&QecEzdV_dhxxF!S4D z12l?Der5EdDd>Eedp}ikQ+8lUYGcoc{SHXz2f}#<{QtQLexRE1$hqKS`5;L0S54qs z13v#fiUPkPf5pzHf}oPJ;ZZ<+n$?ekWJXJ+4H*OaP^FQ_zDa zFOSc!3%-kTQy*pg;Be_8c1C!TF_f;CnVOAFqt8*SDu{P<%gkl0Iz; zwR7ynj8eo`J^5FF|8wHY#5I}KCDshhd})jDJvQRKuIEYZ7@k*RX0+a{jwmUPpt#|? z7u}$qv-s^N$$bDit9wVhKgatC^v=yoO73mN<=#y{b1!(`Cq7-Oj#{33Vx=CgH+935BR4&!Mb{aUjlXJaIhx%>q_do{L1+G z@RH|V@GW~1|0F6g|D+ie0AaUl+GR6(^(*j1#{rELt!0DAa`0TNfF*42{P~F6@tm;+ zC+yt-%Q2W!BSTO9>J`v4;}`Krl6-ohxAduz*mrs4C;Ndf0e+8@kBjrdI2~JZ>xk^H z$?Sx7G4nEX6c7K0cBqZmK?`)M55oUEGve*9ezPfIzKq6*?BD*I$Q0Sf!?60}X&VAO z^XtV4FUZQTbiv2>ki#7AnP-T6P0Y$;GyJ4}GvbjgNRr2P;Cq12|G&(aG-SFoY$+D^ zO74BMe=B@EA5gLMYbVnmzsNdX9=r+oVa@UP9Hhssz_*g$?92L45GQbsZsx7D$y9_j znJ@_to0*RPd_w+4^rdHignpUm@Xazkklk$tU&V0pddb4#{4(qGwz}tFNV& zp^;dl1Bc|SR4}h)-UYJsrv5qftK*Dg&SC%4?fcU2D#b0(`Dh-UDQ_xC?S5&*`?~XE z1$09FR!?%?IA&zpZ45uN3p#g4^izJg4LUPk9`RmQKSe-R@Lgjw-b{Zv&qbIvlRh+~ zkB48yXdr@D@*M#0;6Fy}`B}D~y4-cchM#KmWt4IUlGjht%d&%!@7Rdif5x`%im-fx(=m_e55jq*)G_?nR8#;fDss}tYV>iG7Kc#p;XY{+-a z&lY*#%~-={UhG{fzB*&`>C0mQWiue zm*j%^{{nqyKGgYh>HC94+@wC$H-lFP@+NoeOh6TMTA;HgowMIhnjiSR`Pu30&-b04 zV@z`CCjT4Zw?Z%)N-m<2+g{*n!Si<4-xly2>J9xI?-3*_P3Dx+?6QUCY%NaR61}~| z$3LaL>qO5b*=Z#oENs|6=e0|((9?uCe!8TRHwA4l2yY|p`zUyiG7$UE=s$Q@P0V@6 z#>eYUFL_ZhyX3s=(hIUnW+C-Q;;SwM&-p$g1yBgc3MexO^J>cIxD-rq@GWrpOxLni_e?*+rs_Ul5=tS;>NBkwc%e+ zr2QTfU@1lCQgkjw&!T8OMbDz>e2Qw-S<6ALT-RIhzhyb^7UzGRA2R3nEGBw9jqzQQ zy_SCxTY}z6k@`1+GY7tkgK0m9uOKcpel~MDJ!32uqyK#kQZbl6uO*+B!;hY_Y{2W` zKBeQ#Vma;9We1O%rxI@;n)4PM&W|KN7y1h%l*!zgJbooyY|muZXBM)-?Mkk*l=tWR zo4XB}B|c>BB<`BXvxw_#@`$^X_*Kg5-`8gH4s1|9+3FG;YbE}*>;nTH(>y^^f6@is-N3IG)b?M@j@Ws1 zJ@3`?Q*y!leR`G~{PIkAyNDCsdPDqNTut1xZ`T}$DBE&UsedOk)y52Mx*(((uMFzR}D zP=YgR(5qec;s8&8-$x?$DR{?QOHwoEw0H~lnWAGF~^{pxk#o$4dyTFYM<2SD!u?*Var4!^@|3H7gjyHfv+L|c}`yo=DW2yiHSX_TV$a!z}t-9 z??c|lN8~Eo9s}>%b8;TjR?&7ZtS67<5A=Th7vayug{(^^)m-wcKfEMWw=n1Z+x5!@ z?PBCNKfC(C%)g5XQ1q1Y{M70Li|h}46}~REMa+NIZvZ|vHRim(sovpugjM9s&!9UM zP%yHWKarjt_(AvH&#WMWF>$p+B_G0BdVbD3(eTh6v{~8u3TphtJ2s zJ`;GCGGmv~IQ%-;V`|OJ-KO~*i@mqww{_HGf9hezp^cG` z9)U*n+y&lM;9ViS#;@`rpfm^CAr0}PaoiAmmg%`mrv7hdyh^!I!QiJL{?U>%jK%cO zjVy(?m+{X-;Qfljsf+5_2Hs^Cq2B^9{wa`ak?+l}!{5FHzNr1mzxIP~1^DKw-IM$) z`WJ~~S>jK4zdyov5AysBbl7$jB*~+?0)4nR=N;$h6!4AzN%tcUBDp+uF!tWec;s~2 zDL>Ba1n-QdocBmD9;DB_Hxv3}>(_pn)WJy3>JN?w@6`dfwx7s>clD(?@3vz6>ix{K zu#AKTGYH^t;_ETrf}5W$T-m70m7+9z2A z?q?bGX_ktfLD_$;&Yy*F`x*Ij3QzU5ezXa@AEUjdsh%!L&vNj&w3+y;lplHa1dAE1 zjjN$B3G6Dg+a~1JPrct2!6!SaJ`#M(a`s%0i!~3-TXSwwQ1WWz`4cxff5PHQJMAgG zX#u{Ba!a|-*LU9jZ=b-))_TJ!p&4wy#kl8I@J?5Gm*np@gLgT29}+C)@6xy7F6{bu zM6ac1SAgeB4u>wnQ}zzlSHW|P>Kntuk*v;Zn!{{)ta=WBrw=?gaqlPDVIz1pTuYoI zV3NO(UDxH+a}FQGj8)uXl)Ss>$9@SN*FVOFS(58!=xv4GO!1vWk484zql?(%82CQ~ z{tsG`=D+BcSEAq70R}K0u!CUd%mF()Iu#rXvz&FeK+3^1KQ9 zJ0kT_yi$8KoeyE&r<_L5@ z8=))x>I2`J6*(`xZ~Z!(Z+~PCDOPcCseb(}snnZ46o2nf^{d1o%)B*c_vxAXsmU>e z^k4m9nJM3id=8_0CuRI3J#41@*4uLS9L`V=&&f`AtI|Oe_SOoA#}j`d&pkm#CN4phRaga=Ej0 zz*`vUkHqh0b$EB@ybA;m<%=R~mD4$H``U%!cMAPQ=S}V$Hi{_K@>g~&^S}4FaTs=< zJRWSo;-5|)1b{<)j{TW^>EM@b`bqL=5&lo)ypl40fWN>W#^ymvGCjPqlwhc)CZbb1 zh7X3$gAsX%&H!{aeJbZQJ3SePPA%&Me;&syOnn;hi&x(qe_u#)uOR^3@@dyUd{B0O zjkm2R-SLzvEw^zT{C;FeI z-AgULg1B7cl6SjVtsoG!FPunzyNH+8gZE(W{Ukk@@=oma3pu+!73!0)H8}0ZV%gRH zr9ivz1y=@LihQ2%x5@s%AGHg~trh%}zm&7@9f$bQ*I*}U;1PsJ{oC=#|3>cp)Wl66 zcWyftqAVjRDZ|10?jr!}6>X^V|qXX&Fr>}yX@uQ2`_U;^qG=msChfu`hMT}8b0 zjhr`8?br|>pQRt7(Su_V&YZ-FZ$zzT3zm7`Q}wAwKbuy><2b=P!8@%dSMdJCI^fDL zb@r2Kf8bNee~a_~1>+FCwS5dN7K^K_BM`l=Pjmh=ct7qV%ueO7Cr4YI#{>o3#evh2@8Sx$EZ+db(+(N(dL-0iX zp7?GC&&u!TV(-nC18)Pq3iuJ+>wOxg@Pc#f)ehY}U&Hei&b|xuJM@=}bUxrq$qiwu zDn9CeO1B4pzZX51B)?JyI2(SH^Dd6dk7(KLmoe`b{yR~ErhYR(a@&ACugl?8{hGkL z@yEzdFyu%4{0YCKRk=R&_c+Q`=($URcTuk5C%M@B!GiYyKaBj6jqquUpWvItKlxey zWB&CO^FZ+Jz~4iDO}qO^@G;=4H|6YpK=(lWmQANUfSdR4%yJ&yH}2^W7|;M@8$>{@W*kNeYg z*{Sz2m+yaHJ#2Sv5X}!)O?y|WEGcgujZf*`wO{9idrR-jn6D!k`AOH8z{lBn_F4XJ z`WN_U7NV&B>m%JRtccoC4t>3(jrW+8-zBwGGkA7`=aslW3FirTZ`jStEM*co^C_m% z5*)K}D3aSc_IbWeJN(8c!d38o=&brxF1Bx2?UMt(61X2HySUqoUpRM72hD`d+gZj*!wIVa>$vl zUuuI+SN=)vBl1R%I8@Qe+usl`J{sX~75Gk9ewQTg0q|^sk3SZRJ45|BTl*#FCHsva z&Z?oGRlBZ?=!fXku+TQ+xtv!ng9zifBt1Qgo=CAnLbF;8QhnNpb8fmle$Kn-tb@+( z=X2gs#p1beeOl*%WRuk=w7U-M|7GYfdy*k#&SfXl-wo%y(-jaVwP!eA!FVN| zY1}WdLCt_g^7my@)Gvzkz$=P#z4AjEg zfd7j8M>v=+E&O!>U;Quqztf9?em`sn&P&O1Sn|f~g6yX31zcwVD0Wg0FUomjVbwi* zp37=qfkB62B*RA?^M7g>2~cY%!j^~^Qr|4^=)2u`qhDoseC8?>Ng4U z>2T!_QF)h?zZ>`f`OUmsnhu$R7sNv^@CN9etGpq-vss7?$Gfg$QoAYT)o*S7ezO;# zbC=C({@3!qdto?0bJu{kJ%YcU`!?`T zOpSVPb8$m-oH{Q%t#g9$)3sSTZ9ZF+c>p5g`p+ip{=?8IkzTu0!!-w;O(mmtJq)`p z7$@qhThABwGp)q66(1k)q?>+H`_#Ob@oZ+a;C$6a;7#N=^K`V&`B=B)*#f+d{HtAk zljX^)YiSPd$QP%xPwAUdUVARjTOKraCtcZvJjP53`%iKogO7#@quv)~c;ovyouhVI z@-&3qsVh0OV)rYk?`7(5T@vl4Q}Gu^j|S%+Md$m{yf&pS-CuAJo@Vs={(B4i^L60a z1fFZ+{a;c)D}IZU~==c*su}H->(Yd7Sj7M1Jh{3sdiM{LfVA9G@4*l-3~M z6Gy#F+|Hrn&Q*g>`+f_vOP86CFxG+xNdLyPOw862$AzC#xNIQJ;?0ye}N7kNn*L zbT-UDU$}SuXXZT_wA{r$Bb^`g7OJZy0~A&v zvhYj+&+Xu0nj}cF&qnYJo;vDXBs}OiQBYMuYd)+S7W2 z%_gJ&DE@k$9~if@Bz-#@e_Z4{&Y|Dmg`XLNk39hwHWqA!PDAaeJ(tSJN1xc>01w4w zuHQ29WqjQ8$pL#lhQlFvFXcB-UiW@d{rZ7#1b&8q1}|@Sfp9*xYyz~4=i7LGS=_#p z>o=3rIO=9+8|Gw}@afS@=pnwIsE`qUOToVwexv=k}$?w{(j9Qx@-<9$=s71 zzz6L+fWP&StLgt$SCZ)TLubYO(ct?`(f)L{>?`yav|sw$)Ti*+ZD(MpP^t(2^AdEH za-V7*ul9Bxs(vQ%v)^9mZ9zW^eMWLg+XBoyRwv~*!v8r=?+eOnbh88DB+O(<7aFmr z*Ws5-kgB=Mfp^0>qxKx-JbTih;EDn(vi8}8Jaep(} zi&wz&)(D;&?%TjKZQ-c*jKfn<-+Hu;lK~Q{Yy5}iYc_&+B!XA|X8^ow!8>1Y?7+Q; z$v8S~odsqld3900i@OTv^{326UX;HOHS3$Y=svPv&_30<)_{6vB|90qUy2wwm?;grcqudMo_Fu$7ysVhi zfx3E$k1FEgA7d|uk2A9?G#S!hzL0MHba^fP#o|%#elcPA)PAWC6!>Y4r&s4? zH&moQS7_L(w^CmGydnR6je7Wq>W$=IHHUZ~K2|vSNBiY@nCf-eI^GYsBwIHtJCir) zDk42IAAnJ3a=CdX`l{C$e*Di56viQ4&{^I%>U~ZbO}*IY=Hig_{e^LJH~Rc6c#c$l zmn8q~;MoG6`QkT}zwGz~?3kUSfti|lfpzHDH^5`ZE%7E2zg1^}@4V5%^Y4Lg1^!hh zm*jO*y$c%~AR0~$Ui`-b=$>LA_MiM?H+ZLAFlx_*LJrAz(=S>N86S8GZwGjf1FsoB zJKSo=G4Kw8_kZJYPV#ty`N55ZSqY(N&>yRxI0-tpss1jBe$!m~w1B$%8ES%Q!hH=8Hz~4MTd#X-; zGX8R2N$M-Uo>Cd&hKY;$oU6Jz^}F>vpL*G-J%>MPZ%b);=kHX%+6A0{4<7Tq21h`8 z*-802%736({i5T~2J_B)F|{=HXhFWerXPvU>xj=W=rmkT{OtTfJL9nFnTcq57=Vk< zM*6)&=+{>{9(9o%s!`DCSB%nJKMu{S2(HqTF#R;F9dQg>ow>*Wt!R zE-snRCi>f%yQ*Uo{Q}lMmM8``!!2+l-N4Rj=%`KsZ&Z&(Z!>r|G#A=gKmF)x@<;7V z{Ev};H~Ibk-}28+Vu%S}C;j3jdF7-FRSWR{z>QxH$A@N}OCN}iD!Am_ME;%7*}%Q+ zKlS?97o%b}?WFUSKL=j3-le=G=|i{ZT{Y^>Pz6GL562CmK5*{P5t$puQEc&}l-KWV zJ)+2b#9i=%`UJ`7e?9hn-KdSrOuKVnq01rp)Vt>gY5)}4zZpNX*B~k$Yyarsl@G<& z{~9UU1)i<9Gd^^7kPsKIW+%fMG{(M)rT3{Wk=7iK4kty+)^C-akN!drw-+R}cj?&x zJ{tEo;-eh+o|Vj3D0hrmF`APkSu$X$6Qtv;)hn9`~B>U)u z-VFFyDIoNU^moi<#QM>|K3eJ5eh6N(t{@yF=}`{6OTla6xbf>ThcHI(-B7bU#~Fzm ztIsJ(eH1!B7Xh<>>_>qfh+ZSlS3>U(l50`V$XH7hQ7Ts>jZKK?eg$Owo(A7>6V%#K+SAD7&cm4~$ zYgOJQ!N@Y@li{@2Kczf>0$D`zI;DNLCCHOmq`pCIVSA> z4j&4C{AB76{s=&ZSa)RV2){*|wg6E5ieG0CkQ{aC-&?Z@EMU}Y10jB;x! z7oDdQyzE^38u_KpeyZZ868LKJ6Sn2)fjeN`4^nt6JiDM<1D>mu-zBwI3wXru62Xk! zrO);qr}V9p=i7Kb8a%&%@iswt5Cu8>bj-8C|32k&Np$-uzXJF)!7dBmqsswbz8e1% z?@!S}x4(&5Kr=O+;7Ejb3LR!0cz-LrE>&}_X)H-i_~L-qCs=47Z1&ST|IR?>6Ck@= zWm8+VQf~Q!qu!Bmeu$%j^NDOYT7;i<@G}p((S1Y0+YjElu2JvlVt!h$Zl?$H9Hw1Z zll+zP;v?2clh29&U*xge7BT;&_x0z|z7LIh-zc`vC$y_Y+CMORA9|mAEtUE=bbc10 zBYo_J&S3Yb{r+YscLqCdl$EECrTEoW+ej` z-&<o)7a&9;;u8kTxd6?7tkMmaWu9MSbAR$ybky*?)@Zq zHSm+cGe_byy$G;)V@lx1Sn*N-^{k!E>4LxForBfoJ!ZN4@>! zu|hnW(+eGrIVIZ07b=>kx6AX-V?Gu-(%(%$y6b%}pTzJsCIbU&pIhZ7~j7k5xz_%8B@6$qA zQokOJ>$a9;wv99H5#P0cNu~Y=zW)~CTkyTmS+Q|6c0R7)Q!b=Fz@zgI)xfKOEB`9t zfiE}zXT~>Lfc;5yy2Qn=s;^Q(`{bP~RQ1*P{!#JK4ZStrAB~Npg|8R*rQ|q__7!H5`7|Al`0S!z zzW3_`_WU(5NfMu3(3$+xQSWFMR~PW9P;#7e6PvKF+rfKKq}^oiyTH5iiP8M;)}M`k z`buE#&aa5Sb$@0V{2TFo3Dv->o8a%~ZXPGk4(9WsRr-IThG6}75jz-6=gm{jhu#a& z@RR7RgWmLCjCxNveZEi2SZ+RCAISbsAvqHt3rC*aEfu-@&|B3{eg5~LH^|jblK+%T z(8n#K-aj0@0{Nrg=Kbb`envQJiT~c$GvIw)NM|K0lc{ZRf%`P|>ZRQDZ@T$%a^qv&>XEJ20MEDnGVZ@j`->j%g$eYu6~hwJLyKn&d-32; zy!y%5|D_iHAx8jB^3P#>pu=%8e@XVw!FLYoA4#R2g3fB$l}n=84V_glx%F(b51cvv zs2>aIFut?}RnJc9Iq5OCZo6!p;Do%=gVM`bkNXSz!z>E(U+{9^Q^AwJ-dGKMko*Tk z@{8Yk;M;(|?DQtSK4f0O4cpTWdky`~@cW}jIqyA!PxjIczCFM%7Mylwb6?QTqSwds zli=@RJrDKA^haz^oy^fEAwA_GNj_tgoBmffuNC(D+6CuUm%;#2a_ISMDs=^PqVu`p zuVyLz6L@BGuQ;VW&A?OlB++T&`4*n9Q9ohkOT)Mz{R8W9(ClEJbu)6Pgw9n$;F9cV z9e65skJ|G(3>_O0^k`o6m4)_OVh`NydB`?Qs`8TWn?yq|J)l#^NdN$?!--;uvjK=6rD4Yzw;{)?SloS#E~+&D~Y>0i$CU)G&l zy`?{S4!r*nUYCTo@e25VWz?RN80saB)?RA%N7!vtb9hhCcRCKM^~o*h=gr8?%+K?l zyxVp)XHuJgYwflVI_t^zPSL(19PbVQUkQElz7_Nf>a~yYZYkr8+rT^I>ZFU>rRqxj z(W~s=6aYE8`5J?}0_9R$5^aPOxoZU&&UDZ9h&cZu@Jw0o6+>PoFn%)Ye^63(=9z zFNV&Wx%x@%T+>WE0i7oW4CPEa2jlpew0SHsW2JG^D$hx)TW5^F)8>7B+C z3a#q19X-AeI=uq8r1tBj{OTz?f_Z?belWXwm-e}tv+l?%dY$-_6ngdv;UFG}3D0>R z*=N}`=refB;&MtFhv>wgt;Kr@%l{PkJQ%w9?a>OI)raixCdJ1QNq&HEy2PB%IRl-~ zTagLkr?#*0y%^-QRrPa8a@r1^8HergYMp;~dR}Mtvwjs7j)azycaC;F6@HKKk#H5f zl7^aDz9VM;!e0Zt4*1($I|l2y%-{UpVh;id;n~aj+kfEm!`%Bx@DA`)93ICncsKCb z@Dq){s)6?cpG^KI;_ZarDVU$)9CaI1N)MFs{M^b3dHuHPrN7_7=ZV7KG+rxPzh8ST z{oUJkSh*Q}b|0;wxazSEJ@`KLh{jK%(MGvC%3Z;IB!08~rYCK>t|2O zd{_|_R+y);I4aSv`7XK%{dV!?Qa#sB=ujBful@l_1#);ERJ!!vJq4SbY zgljc_W6)W9)DG`2f`|QMW43Ntwt@e%Fz&k&^tX3UD)m5be80B%uDu@nINJ4BVZWZ_ zH|nzu9E_4+%zgkQzALfY^Pv-!kMy?(Iy<5BL+-8L)YM{E;ramM|4&oCO!-_=KfjCe z%Z}OMJ+E~iqoCBa=M=(SXKTYr9 zJS)n-hkHM%{Yu}DolM{1?Z0omH?KinpR9Lgsz`KNnXmW^bn^XN3v{NQTtl3$AjoC0k|DS9Wh8}!;7Ct~9B*FUt%&3X;A$=GCJ{`E}4~?G7P9BeFgO#J^ zc_01WfPEjrVXopjef?Y5nBR5JqE~;Paa{TYyefzOq=ARlVAN6Ccl<%c{McoeX zZ5qUc^$X)CoRWK=Ugw?^JMe1mq|A3q%vmVAIkU5=Rp<)c5UJ%*tA^~-tMqc? z@=MGsj_F4WC9Hb%52aG?1^*r5*Cpvo{Y~J%ct>z^-uLFy}2Zn1%9#! zW1pIjP`i`^uLIvVTz_6*hjqM<^?IQiDtL|^Qt9IUG5V!HqW`l*$0f<313IfOapM}J zZ|1vFMxVuB4!(1gJ62`fRH)?LN4fQsyFhTdRVQyenP$1%M`ZMjBs?9o|Ifh_9Vf|N zNaKeG2NK#AN4(f^v?^Gm+VFS!`5Q^ zTwcaM+$no;Npi1V!TJyM2{(30sSP}PF5BVO z$>c8;r+qezkLcHqrQ9)*amG2a_4yJm+ySIRvTydU^ozI{8mr_?;=h;e@YYLS^n1~HOEX_f z_rbj7;S(&{VBS&&E_0{;rThNtlN^(^B(-mQ{elxKxY+cMw{K(RsC)FYv{aF zF#L$)lelhic51y*Yg6Ac+G95LEw%YH3+JK%D~~Sl%mmK@hezKPSImE@tLGT?+>i3c z&npi}a_V>V4;3J!PdyuAa_WTs81*viz{*QfeaqVDzo5HTfUvw=RN}f|6aMKx;Q6WY zyCi*R1kY+;-XR`VU2ZqS&00;dG@P5&p>(eDK^$fD47|8K=8#G_gt)7i@N^@e)4*@|=eLshD!(0jTE4^k zmH?(+=`Z_?sazZ7j>@Y~HSk8tHGFV~_oq00K5utxUVDOJyr2d{zHWrT!mh=L1)FRsa9Xy{JnNXQ3^{B*j{}it1J? zvDn5oHra-Xii(Pgx(sy|)=Vr4oU2e*qE4lnhGm5{jjygEU5UDsav9Vztd%tWNVSS; z6?K2l*ZG{!=W{;ye%N~a&f@|1-uLIc|D5-EpZ9s6zn?!qZ;tS6Qn{v~*VeMfJ8x*p zrJD!6`x;fB#h+k&%JW9y@I3H0<=hEiMK<}2mFqdVS4q2Jp?io5h#@i$96If&a;Te&p!CHgy(S$=1K@p?iig26`E=wDeKK zUla7oTlZuJto`PUr^9(M-p8f$tP68jdz|(fKN_&!uf&aOpv7BdT?xs zg7-X+GLBsR1J+xNV}vHj)IWT7+_=X(he`ckoL&FaU-c71nd3Z^0B;DqHNfu>#Ixs5 zgQ}hAb3}KV=Ubq=ICviJTT%In+p!;>f4+bpVfo_bXUu$X8G+4gH6}fFFz;|C^4#L+ zSM}8jpE;jnJgRbs^%aZ@Zg=a;iKnNj=i3H`y!jbWm1OsW(3^K#IL^q4^Qaf)8>Jun zDfo+oNNABei{SOQB^|V9=>1OlLix;l$j;UftCZ!37+-iBUZoGo@Ok(v zT=bLhI^nkqewPU7)mt6)7R;+pQSJ-Do983(DS89o&F$KgLvIB5a`K1u%uE{O)b)zr z49~~m*CKizzjbc^)_|R?0N?jdaz65NX$C~)@Y^W7HR|uL&`sC87n=VZBW0eAFM8e1G7t){ZF-H9pJR04fqH?Dt^-Sk24zrfADo6yfvFIqsi9h8b`zlyE& zGzH!dD38ATN#FA~;O~&n)vMY;3GjWuf1u1EA6$t7HyR|0TwcH}pO(*}f=>kBmlSB@ z4wH`LQ9~D>PWrVo;cxu8Xp&S99q?HP{B;7LKUMmof+a?UvXvg5SKhuSbC}wXsVA<^ zPmbmEr}@OSs;_3zu}OSK!Jm7_9&a2CzQ4ZGPycfx`HlbgwqKe0ExrjxuBtq1NM(8w(VuxDk$3_6?~-0^l6@C%%uAHs z6I1?D&CBGLe+0YQ@nr5k(FW-3f=*qup9uYE*zd7UpO<=XYX5$806llX=TZ4fnO&aS z!dW5|wO6Gq|G#}v);9j}j?}E?PZBctvIeLLV0DLvy6U--V(7B#=)jRJGu8Pigw~%Fo z{5#11wy31o%?y11O1a9Nc5UDU!0W$n*8x=qlHeV{Hvv~S;U|^18~8@xtpbLAz}UG~9j#*x z#*00)i*GzPlrd9yi-PCIQdNIb(Ax&R8f)kK@pI<-o6PKP&d8nrLL%{5`2Ae+*`)H+ z-HN?E7Og+Ehi2fLfv;8Gta(!UXuEGQxyox1k!e!Hua0*7XZV#1-=-2i2cWwZy5iyO z7hopLj+7-&8FnxMo`y4i65b4W+rTsXR*l~zv}-JytE1AU9Qe5%;JNd?!b>wjy&XK7 ziD^&S_m|0jp99Z~Pm{M82Pt~Z;EjXV;Mlw3nGWFP+xKKHv-RT6ABTF;MH8ua>@S`f z984r8;alR+mrh2ZU-^SQnIkOy82?tA{Mqb&sF(ibn>(ZT=t%C0&oO@cVYsi>%FTR- zdv7YsBHk&xxG>Dx7v{vhRu=%^h*!LFm6w*T`I z)AU1m(CzeziY9*@(A~7duD56Vx$s`0z|VD3uBFg1=Z~`doa%81dRw9QPVou#jhvVI z!!{Gwc403EL+91X#}WlmfsJOoF?vZC{S9>96{SP}5z-OA5$Fv6)SfRP=n5iFXnKp@ zUOAhgw;6h7-GO~2c3+i=>u&J9xpUHbTc8FG`M1=xqEE<+60zlc#fS${~49wV3h^5*OVI{z)E5^Iy6c z1b^)_@$*`ebBgDid0r=sP)^p%ze}%B z8jRVD2ap^y)!a)8z5iHR`j8yc(A)H5yT8wq|4sxk?Mrxd*vW6eGjW8FNP;i86aV^? zXun%_^*@^`DW|CDwCTTjpK=tJleZk`t`gY1-{=C9h=0r2l{Q$H+Jj5`++Z} z{krz7@(lrBNB%bic4S`IZ8R-qqY=O?@(e|LXdGP+DTsmEc9QX|I*JkNY`HSzu-pGHv@?sy2HXfS7@8**~d!DSy z=Kr$thxL!2v~hr$kGYx-6_*fHJnxU=G7Z-hgs%FlpnvK^ANr18)>fJTOM2;p-`t<> z@%%?td$1Qxpck(rH039MCHaltCFW;)wAqiyV+ktewvBf-VnY$ z|1>7_lY4TSn`s}-3aru3y*@EM)jpb_xAl4aj%~j=?SpY(`@t-|ryidzyfgIkY0rzG z|E%cPBpnSve|mT*(=C{3&suW&ym6Z~fJS+~X_)ginm0mUx1xCe-ubNiOmwpTw*7?t zMveg#Q~L9v%#ieBlk{A35Ay}Th>l~#zX^Cb@N4Y6fE$+)6t*8!%Z8C;8+$*h*=Kty zGwb!*Rr@(cU6Bw>HL89>DQkXZ>umdXYJS1{ADsEJ3UH^9r}Ra;KN@}H$fKU`;TY!N zs+?tv8^(VbeGjkfrly)T{MJGzSiX@>{`*+QR_(c9PG$-zvB;up#fzxMod*hh4FuGt%X^fRBAfSx;lBt17kZy)qpWhbGY(MPcFhH8E*BIZ=H zp*scMgXqPbCluX2=$8II+%IYCFQlveu{Xz2_3E#RIP@v#c0tQe(s$t(i9ewG5dlLz zLN|G(uSM1WAog=K<#ppL$yEdX4)EvLc4pgo=m#+Z&TYQzNfx-YpubMjZ~Y9po)v$a z#IFasZDYjUK9J86{`!Gmg&c1c9C^#zV>EWU-Ln(=xg+888=ncE;@<(EO%t3ubl@sq zxA+79u;7%BIO`g>zneks9_V#Cc&djX@OFatnBbw^(bWX!a+&$s5^Ermr;xyI7j&-@ zzD;Up3%20jCgab|@_GQZvq-lj-AL$d}Q}kPa?}5JK#?Aa`r=@>SbiOKXU%%d4 z`{-=5QetPyK|JtD_?USL0ZD>S!)M)}a^tDOd-D=sA-_AXsCp;^-bnsd5%B8aQcNv) zA72M{)(T#wp4%io4d6WhUbSGdI+nBqZ^F(y$?y6L>9>>oJIMc5`3v}1d*w`S>Y&h% zg?_V&j4PnCo$P)x^$(q`dl}!VzsZ_s3eQicPPF|?q#?==^y7~og02}qHfFU}dvAsE zRosVv`@5YV59P(qywRNev&uVzJ>CJm<$U*(^x6vkoPX@evZj<0s;F| zI$AI16m3l^Scn9)qNkMIKPR)!(_eyoZvCgh>4Z-$@aIJ!)F=IqmWb_r?OE%(D&qin zTPW8X6bsYdZ_SQx+Z-asKG>D$=mV8bFRedk$!Jj6^yz}&?zGT#^ zbJk%s4|U;-Ltc9UPpN^wX7D$I|HN!@py?l07BzBUU@f__jb2<}pM$16VQ|LXQ85?_SR3dwJi&+PK%qa#XFT)O-`IP3Eq(=`qu^J*Vl4CVXg`Kub>}HHIE@TP0=Wk9 zZ^gTLf3c;h57}$QSFneIvCQ`^U3VY0B-ABxrO{!zY1e(|{dnlDa>^+^cS3L1VPiS{ zd=K#5z?X=zDL<>Kw%lrO13aHwH0IrtW1c6^ar?%dPOKIYA%g74}j`^po^-+(?Y{;iFt7SYm~ zG@~OmZ|;(uJ3-E?BUw4qW1>^x8%&*s(J@a@$ z{9l{=UcCPjzi#@AZ$g)0W{{+p1- zw*cQNksF0iRrDWw_C)syOV1TFggM8LdH00G^%KM&siX3uqkHir zN$%on*_Q#`iw(s4Cp~vTcQ14|2xRPDqTyq*?01^@_(|}y=Oc%}uRLKa^DW^cm;0W@ ztobfp&#u+4n7cZh@=K4`!YA9#E51pb4Ii`KXyjz;6gNysOqFkld4d(-&6gZDN&hY2 z?FR1@!9x8rPY_;{Yr8G4pMn1yp<~t!>Zu`b>!Fdb1`-3%+X=nzi(ZyrS|4<$)ddV? zg06LmSJ7s?svV4emn*raXg_#p5D&WtN-wBt^c(wufJn|o& z53;F;ta(Q_F0V~}8{ZximwOc<{uRh|1$>NOvU15@2H>;(4P%k}4&vU^RYqKY3wjie zpVEBE--^GSPaJFgh1*_FFWO$3{9Sw;H`C2=Oz64mB&v@(=#{<^{}+vmd5-PLR5|2x=hu84Wc5qiXFDf-B>Ybc zxZC*WA^OYmG0!fsN%lebZppOoZtU_c;2kSG-rcMZ)nf~IZQxxefQC>lUVCY!KRd?H zuV*C5*+c%F#pA8Q>%2j~n;OE=nF| z{sz1;5ewTD`fbnW8nnFRkK^s4_~Tr+1>I`l*;K-3GxWxxw^T6bDQa3$;BCZ{oSi(M z_x7>KeE^c92l!mz9Tv}xrxon7I8~Z8%rJT`p?n|q%O_lt{LeJ>YN5AV0IScnOwO!3 z$2<1zdRob?lw~K4x+_6Ra;uKs3m^9!g5V9`WIU42Hu34E9n68A**D5>CBa9avkyA2F%a*c;M2elBEP$CD0pEX^%Em+8St0s z_v7qDWv}A-PVnl)BJ}4gsTww@0kHi+C;ig%&~f7}>9+&?z2IMA@#){A<2UN@OW>Jv zR^H}tGyd!cZ~i;RW`BPsZw*g=J=*wH&Q{vxdg#4L{A`jxDf~a?>!A0HVAyBQctQIW zISHBTO+0;TJhT$JH(Hwd5WgnqmZrxd{il%w_&nfql@b4Os*UTqfX@Z)_Ulz-=>>i@ z^uKHU>g?-i_oZ@13F1LA_79z%l+%wdf_cXBq#d3H(+Wm@^=}UmUv2hCnE&$g6_0rG z7v%FJ?BC-2yxHGeJMvugeZ=AI8 zw16a)a|FC?3&%2l6ClffB^gO%x1&+o#q>lp&Jq2xM~P?OGnQ!-9gTBwS%QyThaSmq z;&nYE30_D3E#x=j5(D*oL^JRmz+a*A8NZ|DMlQ?F^5f|X@)8e1*WCMH@nxUA;BP*8 zEVEkpp?$jjU2W?9C^^PJC71f0o1hE%APJtojq&{{QF~LnECIe5xbZ7S-b*6=TPt>S zJ9;VBm3up0~MzpW>IsUtI~Fi3@FemVI}Ew-J8rhwy{)<=8j6*E;b! z>8w0!JDs;}+R!iiL?ZD{=zkkBev&;*L4RA-SgLL9d;7jSJWcOL~>qzC_PilA21=H&$q%8wQ{c7pUL*9PmtTwRQ#|$@XIC4pZozl*Do76ze{`t-ZAnw z)?O=9ClXJE2CMqi{MEzYA20eg$v-rJzpZ90^Q!~Lf$T6(t=f-!F!kDvA6gHeIgb6R zJ_g`ZUOV>xeP4d3`jIL8heOwt|9kYSXN*Pe1tIGBh$+4;r}V3o6(4NMvjKwiBU-o-7efE+h(Gv`t6o#?s*9P|1^+@Hna?Kv`oXV1b1ZXr)E|WNlw1Oym;8H< zKj4K<8@cgn6Mx>t70bA|Leot(OfzZcGjFHyRUtW*vdY&s+kS%!kn_DBiutd0*VIqE zb@rHdpV_)#yv=y;A~qdH_pM8x3#iXp=oE+oft|axUHa^U-a6=+xLSEgf)4^;4?H{G z8UIg#+vzP`oqQ~gb0k2i^~O)764 z^v;9dTESKYQ2apITuG4KAue#^JLYHXW7OuKP}WdR z1)l?fpkCNx=$E}MFHr-XogQiPU-h=&hxCV^8OyAltv?U_15tYF==lEJ(}?6vBUc}M z{?Fkfy>`K8?#*_6g{rppY33c0rw0De>_kxe=ti%v`^%8GPlioe&ha+m*G8dN3%$ps z80hWCZ&Ya+;|=kC&1gt+x6;nb;P+m?lLRLH)I34F_E+wOQ-92O&b9+QjD$k*W>~ez z6Oiwi^s~;7#m;wQ*WJ*o|NL0yUABL>dNBLZ>S!WgbepMjKR_|%egEI=dk7FkNq%Tb z@^xYFw*GR)w`UYJChy4!7Yx42Jy6bmW9Tk$%H09HY5;$J=UAr7(#?t6&HhfAL;{n@ z4&18>l0!h3n^8;PikB5IYS3P38oUEcJ_D53RbdMOG>EI4Z_G>l1o^Izd~|r(oRm@a zGL5`*|6%9dsTSrNGzDWW29RGUeiDCu*O+&{C2TMFg?hglO*EiYJbH~QGV#9^_=x9YsbU^XL6)J622IH zj$l_$LN8zW)o(aiBu5kUzLq72+Dj|&&G31n>Wg-nGk?pyTruw-NnTtuA0HcZ10Z{T zv7d3yYWN)C*r)1q6h4jj5ErQ(newtfIQ4gI(QA=DzUHBh+c)Ixe-w};{IaJR=YL_$ zySE^;2lT;pK=y!(^g4=Noe92hc>iYPJdJeO44rd${#!i{%Zr5v`#~#{Pe(`Z(q9jF zZSZ&J6QsX>;12+AvHl^)uZ8|tCwO%CqsT6gCM*lWyB_ zXxFljTcdIduNAxv;LV5-<#prGd;j??}2XH*T%f}XrZT^dUW^8FfMz&DiT=M=q89?3h`4XW|+^F{%n%{ z77ntXA~Br3-=2EB-tVZ4KTMNv(>KtUW9OBr^N5Uo z2>SrlZ=e_ApsyRzy!SB$^CQL7>yzMrT!=PR@Hqwk!flp6a>wtx@?Q`g#Fu8kB7F|g zPrMA>>z#U6`>cA7`ug5j=IMNXgzYnK-UJVj`t^RAr)eK$wD4b3 zmYIzDm#}|eYCN?W>JbNH)MDs%+{wI3YS??XrMm_bDB#dt6g)!d|eIpCA!(;g|g@Izu=kiuGjAV3trHl zbb$AB_^uOQn^e9A@Yeq{8b3+S7T|5bO@4Zpg!a(`-c#VY^Yy}O1#dHWW?zkGSIhm5 zUG?3~^Iei#1q%HtgEu=)AS$)*`7rnG+!KG#q?y2!9`fn;&O?sRcuf|F^?$?6UyhDt zJ|Fde_;2_8t`?p-_?kVb;P^kCufOro;mjgK+50EHP0-){d-frUzD?49EAaVaIrFC4 z(sF-X{SMOZFN6MxJ`q0C{0%_o!@w&A5A9@SQ8^ou?ErOYL2%?vxxDxXytVNEfgA+- zb>p8Ey1V>36j~Yt-$8qyzL(cw!0*k5lJ`$?)cl3`FvX5@)ZTyQ}e`ek0B8GqK{_^hP}9b5f7IZ1Q$U_za!wU z2jA?M2=#(}UmU2{U(XT09_;NN=oyFV729*3Jd-^x_yy(r8~a8jC*_M9=cL}L{+B5_ z@X12Fx2%9`9Oh%R0R(JQ?q=e@cfju?0c?`Jbit?mAM7g??4qK%t7sI0_X4j6Zl{#> z)aYRVcr9=fcgjqk^IM3*{T07zII=%j<>&&h6ukRi!4LFk%Mr%YtlZghtd^Tv6koA{zsjeb4N;EI3Ie|Ym3Ldbw(qfA|_7((sKj$_4-#2N6xR9^8bqd0=zd#F9uKd4Sdxd{(63mIA$^U zms+0s5Pl2zn~of}_mlEj+hY*6_+K9HAqHS`M|`~`e39wA;hYCLworQX!4$ipAVicSe~{_3dV z$o(2>_YKgght4NOpL)z$7r-7l4~}^&f)B=9rUF#{Ztx!f-|Rc&-T;n71P4+iXFt!k z@jRn?$Qo}aU(A(r06AA8=eNl2C+REyMdH1Ao|2KIdYb`nEqLyHui(YMW*vh3&M?lj=LNv)$^Qls zKu=z)*AI_gA^q*2jRg_eXh2Vuj(=2r)cuD2tjFTN1OK42m0>*Ghut>O?uy7u+-<^*8qou9&T-?JPe=WC z==Z{SSMRDzjmLM$f!{0Jn3p&dKEHG-Qu0m1r~LSFZ$Aw6aiK39&(t1@cT-~}Q00`%WCs;O32dIq}+Q>OIyXMXm*@ek&#u ziB}#ooSEm;ujr>L5{oRC6qPSC@9ZT=c@2Xr<3_LK0cz^i?ujaOJN zyv*2>X3IUkO+3FGyw3>9@Kt}=W~5F7>fm`J_)qFN`gGTAG}!%$J8p2=x8|Ymg6^xF z@toutg5GZEof5XcQA7&vYe-`kEyoQ<&RsQwSNIa~{hP)!%cJctj3+~THp8P$dF-EC z%2ZJkpS+VVPj~CaM96w`kN2*pi)==(p1O%^S0l&qj(w^Ax{#y3H0tLC?*+d3&EpaM z%N_@SZvy`9sGkhy1r@y?8EfXIUOVXrUIV{BLCa6#SAv1=D<6;SLvI3}mf^l_JTs^O zG;H^wp4|0_#?(FW&3t8nS%Qtxm$veXe>Z&AA(y`UN&S8w@Y;71_X`;DPaI{ltFG2e z%sSX8`P<0{l_m5{-=5*^d z>@Pz*T*T&+WwJw>a8|{7mLfjV<68Kfz;{0hUN(mPRE|g1BLuGiejfQv{Egh|%4MH* zHvbJG68bZop$!077z=O`^ZmgeO zQ?xpT*M!}if;=|~FSj1y91yo`QMAJ2R-+Rx1v-|`;FZAILjUc_w;UVwXCJ|2h4iSalpPitR- zbLhjFmwcvt%71jhH*rolFA>Dw=2fBc9!&Z;@~eM4`S@XPoNQ^Sen+4)A3DQ=fo18e zK^s5t<7CNEd>;GQz)vfmO~NmkA|3?a%;$yp`1z#w`dP#f{s?yTTJVqXk@>9SuL1mh z;1{W0*az?0Eh=e02-T!Mky6DxK}&jy8Ph>#7JjV4B|oUW%Y#2=$P;;UvH0~cet8_d z-Rbx@>1_~xo6jH5ycF%1OnWuA9_iq?owyL4A>=MPAv*sme^LAg#?y`C!TVg>lhJce zE!bNgcxGOP{7S;B0dFCAW`DHTzAI@-5&QimdUEk3cL#WF;F)>lP|q6AFsYPV-xb$0 z&j=m2zmR_)gwFUy%!f$dVVn~em({XT+!4P%7W(%Z;*Bo&Wbac-{}FjF8_)bXs%O*x z;}=uwBK?x*z@_g|=KKB*y#c=aNqXymUik;cJ^M3$=!(Dr89eOxQ|Q~Br;y(I!CMI4 zQzFLtfZIPNH|6%T1JGFmoi8cBP10NbpIHBe&Y10IZ=L=AENx=FHNIc;8l>bcM6M0+ z*=>2~Bh6nke5$V;_tu}nxWMR*fKwB)vHi&?^?Fp+f61SAD~{cTe`!MRS+&RCK$5|KVN3k$$cUcrWmJ@|%A1KzglB zUKkhcioX2K9nf#Gvgkwb!oN`e(0AwI1TO>r4EfD`l`@lLFBQPolm9sZOgXu7_41DXWf2gRj zPV=?qweyj%By8{Mcg{r~S8o-NZ1^kw82Zo1jzaojyi2^D{L_Bo5{+-5`)bK&lgi%* z-NrWNpJeA}1pWF-HZ{M9ZwmHbOTsi+WM^aV9QO8SGC31uV8^@jixF!~s@j^Zq>3mv`AVTyZWNYAW8acMN zk7wrF{>%FNxc$eq44Rwmp!s4x7x6oZC!Eb)nRcY}C@W8n#*?bI=D*>`D~6qOZ#Cvk z<<&*?%ZeJ$r@gcXGkI#8-Q=&naXeG4feHGza)$l6J6`ine#gp{dOb0gM!u_~$K7hM z57m+U&1uN>Wxo4K{c_3QvAQ_-=nMcrWmC;OF|GGT;Ni%gO(kDA<0hJb6n_e^o}j_XhBLf6L6>Z+MfoChQthd0xoG(yK6_lbTJbjm+BZr>y6`FXX6R^ao2 z_eJe6ZhWD8az1*XxT7CG^n2{?tSI*pyNz`l%O@ue*DGo?89$4EQ@_&>-2&;s zCfP^DKHBr`COY=w=i&{V7eIft z;*$*bXef*5^+Ipsm&Y@0e0S(+GTELAi`GXAc5&e;!;$l+vX^P-Y=_Q+Q93oq)$LcS z>P_#RybgSQ_mkvE|C9Rc8P8m5?LzPASj#&|{QF~`cPvl1Rm%uZp@X{$lJwUKo%;JD z^YP1l1qyEj`Gxns01KV-y$`%~;9VhjT>H|bIa_~Xs?)UhD&|8@g6<}VuH-5F7y5;+ zzI*K`*iK{mkp=eoQfo)f?QVo#(nkC`~M`*%c5(O%HIvY zwO<|2887t#Zv=j&^160as&ibq?Xs2ne&qeb-g{mxeaSVW@<8W0OQ&6n+tz-?U-tVK z@Z9y*3gGE~6W@Yo=0z_H`~vfP@@hfv${?1gYH7|+zpu0nqw7dNw>mY1A4KtDA2qrAiy;d8FTN9CS|&u-xU{5kumwF7gRwu+{C zUOYp*^fkNggdA=?n|q(WkWhdstj5#R z2=%iMdLMM?sr~jruk!2T!F}A;FLQK-Sp!@Bs=pcf&l4)yNA2JXJ`H{w_-?%KJ}xu-|%U=?wm7>$tZs%FH`B$yV@+glG33RPnVikxZ=pzwyl91xKFv z^ATzepE-1Y`(UTH=Or$H{-;I9Ch={C{+vgm?LzW)0G|u|^U7=Hf38Gah9h)8dOnK0 zcS7$>JzvD5r3LJk@ya7T4uHQ7{9Sq;r$-_-Rt6(x@6B>~c0WxV+X;O$?;#o_)pJQ+ zGO-W3*GBuhHJblVol9RQU*pUts+~Lo9iu-(#iQQ@o$~LDNBofdSS#>Ni|qWPvA>Hn z%doV7J5k(uf*$hC1^*~ZQyPSr@VOWBG*Zy5abUeOLd({X*2=o8a>ep9!DRPgx2E zKOE1jwC&W@&sn^!C-sTkxJPmqa)9GT=$)M(5^UgWi|9RR_09O*#^d3bn>CM&L~UxONqe zm%@FaYc!Ma(^$Lm3Lrkk_?1JEu)TSy!g#xz zew6cL&@1#&w7|%4Ty_om!rP`oi9I51}!5*FmPs2Gs39sznWTN!h@ytgB zBx*}u<$GVx52-$Tz;oju>7@a@wc!0R+P|?4I@rHgnK}sxA_J9h{b7oEn$w_rr})|= zz4Sph@f`j|uq=Jkfd|vtm{y>Am2ZIZZO)QY@O&;p-}{s3Jh1Go1o$}c!{m%ZKNe?i zT$7uZD#@SS;KV0=I_v!Kzs|8Ym8Szfn|@9_8?9#>AJ=LrBQ`!RZ08*6vf<3fpy4OU zJp{e&zhEDirI+J>L%(=x5%0Q~U23m>)lTZ+)9*9kQ{}1PMNjj78SR%;?{&aSft&fs zIKN`v{Hn|1BNZRSOEb@6Pw+GLW_ijEd!f7Qg>mm(9C3n9DcRwgk*AY5;3e>mwmABb zK1LJ&zJA6jPAjvyEV~)q$X$>P+6Bj;K?jDcC z>kB|_1^xi=J4A<0*^Xnh4}61Xy5W3=%3npj<}Dxg*1OCLuu%e8#7lNG2)%vKyIAzX z{m|HJd;SGa&=#H|Tp28yQ!BuRRHxj4>T!hjbTxFv!%xQk52b#8JD&Ng`mZ>>g?3b> z;r}2tx-fUSJ2-!({q!fm=TOJ~#j^uGTYqo&XRs#axtAp-29g{-Jm1Olf6Kvya>UPr zHl`kn7bASX%_wop{m9|^eaTVC3j)`^Jno(UF!31g3A2Hi^wf+UbyP>^`PJWYgH2)+ zcpp)@@EHR7JdV9*}34qf$x42yaW85Q+9sPK9D@!z;^(z7tE7KM}bTd zUO&(0{2>}wN?$|3=K??M!1~gAv>Ntj@8VNOyZRCOy3la;{;Av*g~`OWKOguU!whyg z4!+q>9A2Sg2$}ka&UWZj31ZgUJ{SbR;y()h)2c6n;r&zl=?8BYcwdtthxTsb+*AWr z5O{x2{{zsuLvlFwC;Is~s>T{ensK6I|!2v zHh`P$V1|AL39EuR>#zQ~bOFy|3x~6}#bXC7C&~2MD5qY1K;GMv~ zLH@-yuRbJ45Adzz@3HOY<|K!q-1`Dov5)AD*>Z$&{t$8B?a+1i-N^6EKzGie6Pc4$ zPv|Ul1T<_wAw8EI!T6{UJu4s%^&G~3p`KS3ZAztH)G}Lc|7Y5V>{lsk9(+@3mVFF= z!>($icblY#UgVi~)I=uVj;rI(Q>E5Z-w}(FCZyjk>~-Q)yKZjjs(t3a68}&#kr|R6 z!Z-wbO`VQL;tYc2-@tk(pLOUFQU!mot54DdL@HdrCWL}82 z5BhVreJt0=`ce32H;^DsEMp+J4*K79=u5sK=+8Z2B72?abX@HR{L)AtCHTcj@ZEV} z*+nr23TnZBr|1%5X*ZJHhHB>5rqSc$;Jr@I7nx2z7{8_g)mi-K_532mb<7X8r?4C5 zwSwgVE`YltSZ+7W%kBJ)F%V+8oM z(EEU`CmUZftJqvrU+-^hNag4GN&!dqP+W}vg5HZ!Je{%kr-QHuuboRir7XMVeqe9O zLwZ)7oK-WNG5evFnIu>%d^Vpr5yUq^{9A6{?hO~=571BD2EN*)pY**S{B7W07WL#M-m6DW**zxYtH)VIYnCzrvL%&V=ZEEGS2RfC|*`<9Rp&t(G+3mO2 zrT(C5X5VPmu3N5;(QHS|lNAN2*TkE~q5_q#j{fmo$n{k#lRjjB6|biL-ae7JBq~?@ zxMW@GNAWzuctY{~weUI3;UoS%@Y%G`+K+uE{q_Uj4E)JxJ6)r>h__Kx>$purou!>_ z&u*v7;P2-ZEAc7QMSbt39~2;r->Ap-e0F>#8=Ux5@(wc2IT|`{94wm6&{+tbUePgj zrnQ7G7&9>COePa!*rz)_svv6*cw51{PVEnWY}+68Z|9MiFHJ2+yOB7=>;J`9dBd2JHkUg)o19_{A^9{@gedSKskS6cr& z0(>p`Z?*N|_}^c~*=G;s+6tWppDCZBUseLVdLlCKEqDd+5%Qb)V(ec_iPA%z&Hq?F zKjQ4m=s{C$8l-3IAsqiqb+C^b`gx8XRG)p&pSz0qQF=agHv839?Tc^<PyFBobhV@WW0Q&F&amsebbanCGfnw<-c~yiY5%7Dz}EwBf`-Nq?6@`Y ziq2Ob1U=VZNbY9xZzKOL2ew0sjeEL+4)TywRZ}noZEz2_5r3 z7UTE1@8H^qTQKEWKu7i&@CzM$>A45|+A}61@8c8Qe&E%>E0sU=zw`?q@k?pyw-tMN zA9RgN^|mJwSqjP1SN?It7tr~h03jW9ZL#}4`g=LYfZol%A>oj!_^W}=Ht3vh>o^W6W%_}sGK*()oas(ytfiL5&Gk2pj+w_2C4 zkio89%j%!%pp!U%BD31Y0sFBR9hcq{J8NVo93*cVJzrio?7dG$ zvXP{he)x=E$UKYyl%qWv9^4dO3H5y^c&qf>CR2XN*Eo^mXA8?{ztA)LvTXh|pJl+6 z|Br%&?UMRz&zB*N%+fB0h{u}X|87f5ACkKTdRw4(l>oA`i*3-#Ps!IoymkqAg?et2 zvs!gexl?= z@A;V&-_!3(ro_alHsmM48^B+G$wXv-gy1c}e@=e0o&jH7Y9!oF z;G4-`CnCT@JNEXKI&6)eWM}t7CtJTm(Af$dQ(jZ9;Mye9PfgqBOb;17=FB6S_-qYF z9n6$}c7SI5nEGF(ta%^qLp^xIL7n+Gr*08(uRc|_G;($ri1$xzxs{2Q>Pv}-1fo83 zb?oxZ}z1>)Jf#U!UY7|9t|Ww;cb1e+~9m)h2J8t)G~IPW|N*k^Svz z7sYf;jlfsSuc5!xN=)9)i%VX`58p%&uHP5D2E6raCnEQ3OZFz<>wv4yqjvq_AWjp0 zC;2v#?-J$HJ>J}HD|ip^3*nbNZte%ZgZ!r5nR>n~(tbyHzKiES5k2$#EbM>{npyQy z!8oZ9`sXX3P0~Zj8yP=+z_v%`9T=A{^%WtxWWR3%FWbM?fp;13LZ29)%HIrpJ@j1v zS_8ZTc$?t){GdK_;-)h=$8;eMuFgN%bTbtana1$98yG%)S0)mFptc`YBB!bsRj4=#Vn}hlrED zg}l;{pTvI#KI1n>?V${K@muL%f#0ail%qXaqv$g7-cN)7;Y8wl&@EIxnhEXk^Yxv9xNt|GWzM+%Q=4N7d!QthGa=O^Cr~W`L-V1eH)rxt3B9h=2kB0uMWJu zpSS(E(I4>;gLkLfHGHRuZ%)22I**|C*ad#+ZOmJWX4oDz4&%O@Xv0=L)I64#colSn z>nF9t5$LRi&KlbebNW@zJtik|>cNl@-5%Qc*agx1fCW##jsBo(BJzG_)q4%_jle%< z>tjFt>l*f5owc9t)aYlBIDI?(?=%v5|D@kO_*7Ef4+(^R*nvoN<{gRf4@Ri|M##5* z^F-z^$`|@+GhWi=B0F>4wBg%HJajtr4-=kE((M8QiurdBY3%dW&@u1%bm+7|XY1V)+4~+f#S=PQXFhCze(Sz0d77Zt51l#pu>PS9pZo7O zYqXi*#CU~Q7o^TSq-a;(S=@NIj7#`yxQzb{@*9a&-yO_Lz7_s$Y6mt+9~JLle0}L~ z=5yA*TtCm{Tz+6v{YTg3!GXa$36%D_`0V^1>+b(cJ=A*d#iEF@ z6YhWbz^@^{i9={I8b_*s?*zV?{I8UrfivE? zkER{;15?=h8t}}1P_ihc`5OSQ?Xii>cLd04=PPJbUz(+zSD=Tpp;sk5n`GC;@4|mW z@1_{LPX5R9!2S%Z%2Pspo&lZZJ`utAYkgQh#pTEd2+ax|S@TuPUKaD3=6*X$oJ~l!! z6s3m>;>&xl9L`Kw9{P|zo8FyFeCR6n57>GQ<`v7i8`JO4EROPbk$>W9{ChM%em3=i zxcmd;Kj|9oYmTWe)&C!zZd&xG$^T#S`{(6czoq=TjLUak>Tk*xCKF%zkUgJ5Jv#GJ zH~HerhHA(+4}I3#b`>9woJ!>I95pukI7#R0pMu}%(Dak!?iKy#C%o}C{g0IcKg8+2 z;5`=}hVr*izdNCGtw6dVfUyPP=kkKHv!e*F9TmQZ{sj6DD}UII%s5rS2a7?WVx0b| zpZM%W_?#^~o5a5Xdh4NgjbIVINnQYETHQmC{ghEJQ_#s?_vwMoR_J^ppu_u;+tu$T zb4nsQ&Cq!QI>&pY&40nCpfe7gd0Fs$9O3_w-@p+|H}|H=Qv!S!`OUsi^pVq#;E&mk z7MX}px$ERue>UNrqYKMD>-)5 zI(Xtg1m4!6iOf3$&#Fi7;yS#S#gSe{pz|nnUTb0cFy%iP{|%i71PJMvajxv))3eya zAoI#MLhpUTvq^F_LvPOTL}s&KAw3g6B^P-n;ri7U?EQM^oNQ_6Lwf0hP9t>8_)}KE zT@QA8&h&c&#C;zJPtz5Cs^H5Mc$>lNwe2&eK5NY#9+4XL3|)Haqn|kmx@NzcB`p6? zRY8C83mXrI^-a56>zlceTXuFL__M9Uc0y+yI^PuSkdDsvvjsESU`)Ls&x`o66Rj-z zF!c|e+FcWwX9Wo9NK^JUsj%URj_mBa&{?DWHc8JVr(plk@!Orof#u0{rrip!h4}WT z;JJFP0bU1Q=`Y!rX#KH`m*VDg^je(01NAFu+U-^FdB)1750$eYKJ#B-{xjN7Xmt7K zIDHjj=X;@J{E?+4I{EKoKgF+d*1uKQ*mbWu=)8t{boXhg+%?eI2ptnYhW-NoY4`8Q zUuBAbS@Pjt39$^%8q8dnIG9hK6dpCbY7wSS?$%7|NXQt=y4sVp=awoK2EMpt~^k^ zFQC0%0zY@3foX^EDgAYHKVTY`gTUtlKU{H6R(Vi;s-9j~il<5VZpQeFD)i6-pK{Rr zr1F$h(jI?1k@-atKcJUm$6*|17K?TrVBNd#&}5C%# zEc+-~g#QQc$GPq6n{js5j2}4zKP7; zwjar{^KhKTU9+j>nB77|%o;z1=TC~UzenM3_9;pRlH}@!&-{N+c;|pZKh9|n?Hc78NvwDf5~1OQwvaI7%`fDYf~ceEcouZ9o5ee_*?TPGoL+h zd9@kwwej^6_WQ;3KilB*1!((8<*lf~Kj%+oJ||#UKk~y&N#&Nelm6=On>GI{05+L|bE&=Z&+mhj)Xo=0rX# zsD5~HU-44(=gSkehhQAAE!T~DaTnvvm(Wv>M=GG#1ii|GC%yYnB658~o1w~UO$g14 zKpd5+e$&*W0`xxR6XR2S@|V${95R`C zRTjJi__gGh8Tm=|l?FbS{EGyPjKg?kt1W}OUNS>D%AsS%M_G}a>aD}lyG!&!{irS8 z?9(&)7-Ii4bj*B#@{**R0r1x$PxWkZttkCy_Ichq;>djHqMjgC@vUSzp=d!3wwGeeD0JyHZ}2CvND>qj$UT@!<>e>G#W}XZC7r!2!Z#{A{^PtwB_Rnu6{Kn$_ zdKk|s9u_|{zweZ*a5d{w$4q9vnm-F4xBsY3^~JY$kB{nW3O_a2%6S0knJp#@a|Zz& zg8kks4?MwSCq2kDw{$YH|6lNa;J4op-Jc@(5b(XnO=jNYkud)Sp920d^1Jh#YR~y= zy!>Yc{y^_tz?GQuDRc}~{Bri=wqQRip>vf(zlHBL(3x}mWab8IpZoEbD_Lty73f{! zi&$-3R&iK0GoMp7rJS;v$0?h+i=Wd;8{Si>bIyZ5{>gKmpXlZSj_+d^=Q#4F`Q8b?jjx}~ zywBQSbiYA)>Lv_3JFr#xRew)GuR?Zalk9H-{K@*}bKYKMo$zto*ZybE75Z@AK3r!d1JyCHp10b3&GEwjJ;c)1J~UEq(v?_BXy z*uYV09hmjEvMaCrLO=Pc;bY#f5?4OAy|SLXWIqj7dMu+~d4a=voLF_rA{NM6Ev`^T38ihkL^$(r$_f2~9{vjRO-8w(G zF#WjfY!&#k&8Lq*XFhaZ65)^z=l=*x}&rI#k~cY}Y8^{>JD;X18vN5Umj??W?*#3Rt@1lLcJqZc~!7BRk; zJ-}Ay)NA#k-!N=5_$~j=OC%}B+k9j`CC3!_a~4l}=Z~=u*T48Ti2L(g(#JIAd0F=7 z(9!qwnT$7~vq5qsFP0#U-s?e=Iq=U$i11`j$)&HRmmw+X!e;XbHUyq7iEl>Hv7SuRfCg6mPT z@*=^a)9ov-jQ;EJ@7E&-!}TDgB?}$wyz0r|eqvYu7hwoo{bbayDFXky^wk62R`85n zQtvp6NSxn6zy2Ha<<6tkfHwl(1K^o;lh7Z;%`3~0+V<8kr_n_1}51NHj>O-lbeFvRa)OPS0d=eQPl=^W#-x`3N$>(Aquu$@CGVA=s z-h*bjPv&3L$MZfi_$to~a_>58GGgC?7qfuh-4WfNB7H6ZuKZ)s_$JQ3nsac)2Uri# zxviD(sfMfmBHNNJeU|inE^L0FT=M$>H8w9=3zBNON$y$^Iqxlhpga-sSlN3?e<^ox$g;Ia1QgJ4F~o=(;4pPrd+Q75#46+A2{F6 zcWAuxA#c2+^VL_7-<@ZX9=gfDkNm&pyT-Sg3-JwK^m>U)n!!6#&utQX2)r#9MEl1& z;8Vai12=vv&Q8O4LG9sbqpAyxsu)_wpG7wO@Gt*FUv7EjZyU}-GtgZNT{C~3MR%RoG2xFE7wDDuu0JZo&b|RX<7dw>9hf(11Wn0X zcOL!eQlYj^Wf^X5Nalx~O_-QSBn5-Ajrpsno3gtC#th%b@QxSJU2mp}YPf z;wKd$?1$|^qi{VX-JM9B1isroB-a%9^Dmyvd{J^`m6y#K7Z+8tTywVf<|d>H)ku(_ z`sqQgUwtatUga068fcG~FmB|#zOu1T_pFIP9uHA`W$@$pFrMctIH1KQ4@79m<*8s03 zzq@}&eyIs~EpRixmZf(u7%N@kTM+|d){4U4etcE}onGiX0G(_2jz1_j$0Te9@oz5W zJliLu=K%#D1#d5S>x5^M=*onQeFSKWnYOB91za^1Jhr zru^hD1%8C+VV}C!U+^a2wa_vB^F>8-b%~|mt-#l3!R0r)fNuf*LB8u=BzK>2lDpA^ zi%fYeIs@eY4&^9Rew)-kjsV{Q9lyP_Cv|m!y?DU8X2RfC5a-NDX}@DBKF`6%=GS@3S)Bjk7IuT`EtoBuN9#|+z@3yVar znEL((c%~gH4@vbl1>P?BTq8euc`z@L{I{KhsL`&%4GQi&xmxdItOA|v_#%BV{`R`b z$hl+rxfN97b0{Ut{xSHWG_u!Q;F%wVGT^t_Y^a;tt5%4wh+(sI&9rZ$g zJ@ktY+>Z2`n$*wY8-dXVBH7-F?y%%4?`1=Ot_oMY5H*Q!_)RIvHUBCzEzsD;GPDDSZqv&MAbC>wl!j8R(8f*PQ!US+wc%N%C-*4!wG%r(+|tsA@}2wPCWHiEH%;ti_R2&PyMeuj#7Ibh0fd!_`MWA(A$3cU*;lHx5f7}o9QJ2}@JYbupNB!uCh_Tm&)zRi zX8sfPPw{*>xHuNe$Gqmq*jpL)_PJZ=H>Dq&#HVB}^YJ~CnT|kj*xN1IcYbqzwdVg# z|7Yg^FD`0i$7D?B=g(_PZwZQU&iSl)Q;01 zpnW_v>6{PMeGiFg;&sjf1C9y0ZlzHkhb-pO(b`2tjocfqNR8ggi9v2K85)Y#E-q?>vRA$qUI6;~JEQyT82c<<43n=Y2mqFH{9QzZw4s{6*!Z-s9soW(bmB ziPM>|3}2nEepzH{#4)(j2)VD7pF52 zs6`*yhA4U^yw~zV=ymwS_>_McgDD&xz7 zE2(ej+$x~y$22HraX72p4>GTGEBLE?WIiQdGx+njPe$Tt*-;1Za^NNoIn6951mhF& z?csSR^vwP|v%0WI%MHu3-xD@y=^qb{pH#o2z@?Xk0-ExN`=8EZIKAAy7X$fPu!rIm*u_7xfB>my(JUH0A{rY+dQ!YrM4^4Xt=6aNwNZARV?2r-NwbPxE7 ztnk6q&jS3|Jm_Y}iDg%_UIU#+L}xi`^vSQm(euX@fU0=jNc~-@=jb;l4rWZqn#HW~ zX$x`M1Dm7$gzTjoy6d4kPjqdPz4QTZ1HMQwqo+@pm{mXZe2C{Cf!;d=Fwd_Eo{R1@ z&p*v`vp<4+B>eNIh3hH;^*NiO-|{r zllGei|1Lo=uF_yW*}D%q%|hl*=$xkK#1w4LHv62W-obtp@LYc;eK%?0^M{k(`}pKC zPV@3Nqt7eIUnn{@NzN|vmy_T0r>6dN%vEnP|OJ1|hM zzNVqy2>pCzjjJ#0wf$hWE+wDeZ+&%g5AcNAs}moozUn?ieGN={`z=F%W5$`E@P{c@ z9+jhm{N>~~<4aTC>mv3#ioHHXIoxqY1$h17Ed=jcm4mTJP8`KCkJQ`oATe*!lWuC5 z54i!lKjV8M+3#&qS;GCV2W`mjOx(){(?{O^_i z$#2_5T~YOwMYX4U^Z38WY9QjH_f8H$Z%J0Y6}BW38RR-va8qx*EOJB2)SEUd*#RaG zJv*u(|J2=_AGi5);s#?!I+wB_FDKSARJ?wr13FtN_tkF>KO!WO>ZeNv{q$sHf0W?8z}ui_>_eGJf)4;M zC%+qK3O)k-W8~Mew4ZADG7Y?v{7g$3edmmasW*Fnoc0s;#D|}uzS7udDSY1SGvQPG z8$QDPF>vX^Pts!x@X{X}2Ls zf>R$k?O(q6gVE_H$u&y<@D}K0_w$7xO(tFo{1)4uxKF(^&$iqK@D}iVJ^ar6U-Y() zLu~8M#&6e|`;}64`_rPQuYUBnpqqQuMc*drs|UV~Kb{QkdkOl#Qr?tiwdK`@XQxBt z-%9>^l_T6=&Nx`JL;%pPpI?5k8+-Wj7j2xjC?L7CV1-ZJi@O%Ar+*`#-!EA?SaVHY z>*thy>&W*n^11%H3V1W{KLdY~@2ao;*q!c0?TwpHki31+DgViV_an*9mVGHYPb2xJ z!LJ10%xhz8Y&$k_W#M(~7bpM2Vf}xdT8qS=vb!|-O2NO1?}?Ssb?xN;W9@Cg<0{Jj z|IKc|K*LfYXq6xVf)ouJan&eM(vr4m*|wns2oRu!00jaR2v8tkB>}4hh!~_ofC51a zM64R6Xnd>^uwsC!p%%>pRr6>i8>kw!YHY%UiKvA`d$CIuJ&y1x!-2yo_p?j zIdhi!;$Y)Boe%9vZY}z>uMf^E#IFN>(&rTMi+T@2_vO|E<45u9V_tJ1{KE0!F#PJ_ z=bo3*IjKta(H7Y8qyoAH(3v<-GD+&A#n-c50o}y{U?!ZyXUgxGisZFmSM#BJpYm-| zd(=X=20F8DKz+8y3HDhI^4po{M~QdJp%;yt^t%K4&CrhvXz29`g)IRFq90_vwg~#U z!m~;JV-WgPFTI|REu3qA^b zC;i5cFZ-GV-U$A~DxYUx-g>ELUpf!8W4ewYIV1FgTaYu#Z#N0vd=vYd+wHo6&5-;y z;M;+}vgh$s?@=^QH-buz;^99dzt_spL+v<5+}WSspo&A*LeciB)!_;xAWE4v%e55sMpO=dJUo1 zLFn~v%R>+G8HCT8*Iv(lTMg{-(HQzxj*qk4Z}cgAvmiE#K7SJfn~eWogTET(yrkMg zVf%#|{Tu^VIdqQTLF9M1L_7trg|6#Q!TC`+@Fw7Efwu@Bz1ri8@PGO1Ws|H={XA6P zqVIuz6ZA(}dixzUX3)H;2S4pSrO6uvZ!>s>d-F$>9sB+Hs;NFx>wSkw{jmmpo>afE zN#(5g9P8QR`R_f}0{oguaBrif(IdsbVc>fMe_#fGc=o_}nCP03GYIV{yS3=FWAV-O zNAx{GjBHXl%7M>BkM)9i{B()Joh}RMFuXtU>yttI6ucSwRnX_H{{mkPe2MsKU4### z3BLn7|Iasq>mq{pfxiy?@VTQw;J*gn@9!JH9|67={1bxXr#H^i9Cn_wG`VtRa#e%b z7)U%F?Pzk}F)l~HE0DL!XCKwbOSAT}@^7zaXIOulHy_cPdU(;Og+P_B1V8Zw>Temp z-K6^Og>Tse`)~ppJ6akUN7OQJy$^bS{m4IzLca?7?V_iD`2E(ojy>e&zp}dw{iy{$ zX1vXhEv$iOtbriSt60DL3-=LY|p-Ibw`o>p{-We^GAv zBhT*Ci6Y;p$WVVLe)Hw*3d=(e@gIdjc0*A+2EV_IAoXc zn~Z01m-9_Kc3{VI;PWx@x5@Z__^g7@w*~X&PiSEGQ#F4gj1Tm?xidI~5IC7)T3Y%R zGCxQnN59=9eJegsdm(3~fL?oPKVfl{y|iK1zrj!V+d+I<;j;@qW`E8rx0$bS)<;e` z*B_-r8+Q6&h>zd{@Ttqm$;g9(rw7uf*kjJL7u;aHt`;u zaiHP6c%+Z{(Id!t$#8W3Q@sqsHiz!{5p z@rDUl6FmxCbNZLl?nlA*hb~i|wfviee%*d!Sw55HxATxcM8bLKH# zzYOUcXHhWFB~6D(LEnuZ8OQ$2e(anOmcqdR83ZKhS>8!}joe!V2>Lx{vNneFjgzg6 zGY=xi@9$+VE$}ItIhMQsFt5MMrErKi;FspjI3+ooS9o$}DJ7is$N~5@!mm{T^m5L- z;6X$2bt&_sl8`>Kt4ZkBL4Ty^scd}*N_JJk*3X}xAda$ef#I8YM}afr5V8|jRD<^$ z_^OU#r#btms^X;9k4hdn3)IdMXYY=bG1yZ$q^2_u%J`|HQi&ep}&pc95U3 z6R!GT`_W^ka+RpP;B&0-ZIZob;Ik7xo77*T><2%meZQJ`Cg0wD=jHW&{ax_i&*#Tv zpXoaoj}9Em-Yc1gKi9DM#|78QST0lP%FE`0k&3P01WosHTW6pP-JUb1=AM>$Oh7_@9WXpxCK0nlUQaqM`zkhu&1^)^7 zm(3b;zIWiYkBPr{nKd5&P5wHL{JBzSzkPGuo?lUU^Yd6xjW+O&7xIH&t%E0eFz z--ets`Ryk08Gz61_l-H<3-$PD^N4+`po0{j*2Ckm2jKI5mkCexm%_WTclen3n8!z} zHJvUSqemfe9`wii=vCfY=r=>37Tno4(^i{FqLckffB(9?^lyW1J9IY+)031m26Ou3e2jMgG&@tzn8*yfP+_?#Bm1)mqMwMppGT=3Wcd{lx_@TUUluqM)H!e{V z?Z4;ENW7w)=n+=s9hJSIr@5zrzm-z_YxxTC>)~U$eYd=Rq4@9gV6PCr3H-}W`1$>~ z>U{uyE8%wrza2kCBoudEN)TNGbWcI&@1KSrbY0My{a?|N#IN`s#y8;C3!r}PRG|Jc z_C9nv>tgUT>y-xT#K*PJ?SSrAf*Jqry_XSZp5>49BtMPaUJ0KL%R>*rJK^&x@bLOw zFYx6@*!B(D30*ed&NaS$6F&ZULUxjY&svwy6m}xJELq2R1>Q~k4%ua7ysz;sjXZz9 zkh~`N6qS!T>m^1Wu{j>bZz1dH)`p>n;w5TyHNNxRr9R=D(6Ly9Lt_$;~{I$-aK0&3M-WnZr-sc;@!vKYu3Lk zU)4u9e9Mj+%Wf9TYi|YSk4M!<`Y6T=_?Y?=4JpmP5%{cw&yV)p-{&(T{VRIhbcRCd zRdFxv`N6U5K0&|DSDmBx(MHkhY4kGvNlKB#rxiY1;d6liUiswr7>)DWdysKz3_f9d z9)Qno_?Y#$Y3yqhyqb!!@IAF^Z`M5W<)!GKYmw()XHn*L-*^`%ixR z>Ra|S62-sgXx@j1|CfYsllpT-5A_Y79>F|4wb*@|TaD7Am2svQ`jdrclk{kTzOgdW zk42ux9)Qm`;bVtV!%6)6;j;!l#;&gO$~gplC-4SgdU3XyCpRQ3o0DaWjhdQ#$=_E~ zFQ>uZte=8)LN3?oKc)9mUijT+(wlcK;~k9n-y%avZ{9id;dtz?k8yra{n4g0 z&kp329Xpn-3d)I^S8)-v&H-0V72X=ZGKjzGC*IrW3gKDHzl_R*oKvhEyAOn%_QLr8 zIhH`()XkW~Z}-9r+d~W-9%{$b1H>DtJbP07)*fX~lhpGt`Wz>@HmN_g!DkD6RtQG_ zwfhm?JkMD#;N)cf3{Q5@%y{+`^Or+KZ&QlrFno8w_gDMy2jPH!ze~gVE={-m$Fwj2 z*>{@yxfOm#%it1c?rjbPFJVo@yte?1B>t%f8IM0RmVHKm5dS*(_eAiQy|qBM^t&%R zaaxG4+NYEJ?eKlbwomkXOy<*Im*T4&BB#q|XHCE}@Sj~XmOWO1&-C%% zg5<`6#MZ%mp4?>KH@cYTTyRajR9{9swu%0#2}9!O85ZXvi<4NE^g-r`%89!= z)-xV7jAcK>-|{QY_dmUUGfKP6`qj%>mBCH=JpkPn=r+vckErr^{nNY;URpR+c^-}P zjoU@Mb$5aN)~)GB)x=SgzvO;4UqGh%O+CZ_aQ;{zP7^#0{P2vOzfum(mejwSfgcI{ z*x;^&qUrX+n@6Mpf_*OJq_GahJs z+YX--g|8Xdd^4jqFNUQ6RXpPGGw1E|`+ed-3LbVW>i5mi{T#lxif^djOaBh?cU(3W z@MD7a0DsRvU(SuU?su8`fo}!>Ds`Zc9+*<%lqvMcKzBa;Hb54oM{zIv1LUhaxk=?N z2fpL-G3Q>xkUaT2-Z2Ol+tgv#^XmsrWkQLE*bh`Vy~LI5-y-Klv~F9p^c@eDh+1^lyXTrna%b`h@&eH}H+XZ{fGkUX2`cgRF1kNPK#bb3Ssy z=fFqcvl~9H|Dzt9O=4(7SB>4wgU&y%61-#s@!gGMfps#$D}c`iUd(Sd$&PA)mjUk; z(2U>OTDU!LAFh{q*zc)#v(9E2q{2Nq9FDy`20cR zIo|_Y$@jCJqhn4S*#N)I$Um2C-WT0abY^m6(K4QMlIx4?t6<`z6xvT%?+$s=S9M!4 z8MJS~`r&^R@GJSPbt)F+naeFo*0JkyR;NUd zn|b#~kn<18u}SdMwrHYT(2Ir_sV3OutO;`2rlcXcEh^=pn` zi36i2jrRI{l({`+^(Pc$NTe~ip8G1@8y(ZPnZ9f z?^5~rq~X&HpRO;DW#<&~M^wFf`pN>hWFunR+^26X?RQQ#cweFV%@A@{-$UFZ`S`W? z{TQ-yt%WIPANF%TbpAL&`W0?Ozjch4!TR*#aBqIMOt&9oqv{hrN~+J|T?Mg&kaM$v zIRD9Cv>>PPtBe~~PM-Z!4|+W+aQ?>^k83`3JbXVM;yVc6nfH!m50RZvzj^B>&N|Yf zh%nNr7yQW~@O8&tu}|@@^jq|Y`^KDelwP~x@9jA{t$bePNok zyV!|;o+Vf(@``#`ujjY=v2&g&KaSEo?iT3h3eP6B;}G;~p?^g%Pv5A1!F#>BJ0YT9 z`0BeDdpQR=r&<|$NdMHgsp$Lj<#XJmdh3L~ z5xz?WH09SD0S<=fGT8SQp!1*e7km)9RnVDzXy{I{@m>%8`aJOc`-bY*6W}igze%h; zJvn6N^OyDnfcTexhyD>Nui(|d*8)$9k4=I%0RJog#HbE`Wl3%e@Ri{IL;z3jqJUgq z{ikTpZ^Os$r)4Mo@Yw|)FRovhENcsd+oqiwSoe7h`VUKmq`dm zwIaOd+!>8g#_sg7Pee zL)!$O?eKY0d_s1`;iUGx(%Ln`ziV|PB0larz99BEeEsL4R4@JTt^C?pcD4ALdeOOu zi%hXqt~B#{+4H-UZ8dbM!7;to>FK$+gfCA zij_RI#Yd6%xDag;UDGD~3G&`6n9-ACN;HfXA*4^6&40w^d+XS`XA%O_jNV$UT(T)2 z?RF{hZV;VKYPTWyHGZA-B*DD$={>b4eGCnS_~^Tn>)~VO3kK@&FL|2z2YhNQOb?Z@ z0(jAeG3Oo%Qy#hQ#d-EN#QM@Y`1DveWTIf@v zw@L6p;2VK!TgOd;j{x5k0iOWAIRak%efoCC+^9r#%iihbwZ|3W<1 zzPDbp!M<|`G@}oiOWzdZ(#6b6^xI9%{OGmv|FP%zR441^Fyo9E0_MzE0i2h|LgxaV znThO2{^q~TH_SQ$YDXaF&IJm;`Um)*$H%e{N?Fg}IqLx}j>Wm_fhtoi_PLPqy-)Zy zsUADv(*>U|erJ%g7CB)%DI9R* zhvB8b*MaYEckxL9Umw9I4SYicelzfm5%_JuH$~ug1K%8h-v@k41pXlKtr7Smz_&-> zPXONm{BT=mdZ;~%f5^R}|9&~UUVw0W-r&FB&bbGy8hq(9Tlh9L@N5A7QR@GH1e>Bg zHMGyJeTEi&j`wYbSQvUit`QTRy(k1VHm7>;gKt#(4FZ?_gxhHZxY{q=t`or3eqsFL z|8d$cj9(61?H9(c2CnuC<2L}0YQGlXQSH|OJluZOl(z@C+HYpz6!oZE3BKyMms~&a zjr+~?w~J`c-$U*u)#C(wyPgb|$F%>Cs4w6L$j`9%=b!JJH$s_HyZu??TM2eF27meX z7_&)&1s|kK@lK(N~!%zEnqH6_SjD6fExETlHUv&d1@#-eO@|$-2A>WRR%uiOk z!=e-4(~jrB=P>cHN&JVQUkTi-Q#$;e#Vqnn`N^LNfB*b5MPBh{#y8*}uyLe6o=xjO zfX*zJaz)cJ2#GHzp484%CS_e!WTG8Z>3P2v9TZ&XIzDx z1rDnDUvz`Wsr)wQ00c4R<+M-yOSyQclyT)|==|#*)u2v7w*k7>MaSvsJD6_rzKU6Y zU67o8tKxq4weEB*EH{7|3sXIgGLFuLuW5hrAT{x?;m7e<&3C-_7w(Lk_u{;HxVN6d zxjXaSDMrfBurx=X&E+E45Lj|+Y4 zTq2&LEBp!e(C@9=>wEJxd{S0niR5XW_mvQx#;t1T)AhE8Tjmk z&p^-~X_v(1ShkHg>*R!Uzn8c_twO4gA?)T7^z^SQ$Oh8S5Z^t`d!)iO^{;&}-gQt# z`utKK^R;84FBYCnYKKnf*FkUEm2$Fh8Mu$WkNi#KpD!A%mGQ!w^l82odtg7x&rj_$ z0{(9B2ZRql+dkg99&v?t-aGz9A|5O=WN=pR3RqMO;#a=!^)u_2R7l$l!E&}?r{|)V ziT|YoN%hnUpRMpQ^@NqLbl)rCo+`WCW9*^&^YK`9s9d7&hra9w_!TjrFii zMpC`>a8R`YDKV<(`e4^rqg`8AMG{P}|;wb%wRu#m?;p<;t zkUeDJ+xS1sM=jrJ`s)H_ruHCDv_+WuZDf2#4&64FR1Xc$(O-WwmOU`P9^(Jb^)1J+ z#AlL4f^9G-zMoj z2z?jyDZ$udUgjG&#DA3hjpVOaKKDBDLA1Kuhu-QOmn;1SALF~`@GlmgO=+Ix&l4X! z=bd-T8%G$6eB;O-&nFjB52qmK2v>+?@UIg&tC6!_@M-jHVO_r}LeC-Sw?l8*kM`Mv zo?o7Byi4}W!;;Z&fOVWhkoT<0ZIkrqfNyNbo|jQvbC!)e?_~dj zcJ`06De(KjuL0kj4+-_d#cXW-&Ob}B@r$X49~8tcgx`s-aGq+L!WZJPdx4vF!auA3 z%rmQ$PJTK0Um<^i=y*@EUEct=7^0~q|A*7iHFuF;HQBfz`CU$E3hkr{F`tXAkF>cNBPi1bhIitrR>ouC{&TeAUjh6DqfCB0hCiN*d!x&3}f<6`wM&=-2M zPv(s`-aOwM7kMw8w;rc>XI7#lNA>s>_|?1oAjs7lyHVG>6(?CF<3o6c=0jV<>oP|o$G_jC`f2(l z^@|*)BS!DM`G&U+qK^$+yr=QFhq(4v^sD=Q_9Quj$XW9$`w&yf@!DaL)}CSvQB_mS zbX9MK?3)*1FWdR;Cc!IyMR{K1{YMul82@U4uL5q`$E(jpcv5?PQ*d6~&G@wj{<1+g ziBBhdHo<4DfF2*_195xHeUMKB?brmL!(1jj#b+2k=K~L&XI-4!RS^GosC{K$g~N>Z z$o+x%gzRgPrpJ%^R{exSQhiK5SPhr&=Tq<4=DcU_)t8xXzq=q6zL_eDTMzzhN0gGy@`)m z4?NQesSTFst={|R3FYy3HM?+C%mfv=B%R|8)M-0u&he*^F?;3i)5^rs&? zml|qxQGK<6w+TEmo_cs%d}VHuUtjv}oJRPN98 z>%y-&a>8+P#dhA~K)$JOwIx?n*3MEH}MwvIP^e%3;F*b-^6d^GfU3pt3Eo( zZ=@VwS2=?9!K^C3K58#ueg?k_gm07Te;7WS;ggan!$<4cm5BrB72ZOuv18^xaqQqB zmzbyMOI~5U26)WU=f=mHc*a#j^l5aMDBBoqsljgonM1~=Di95Nh$tKAgAWf zW6pUEPfoOd=9_X#YM+U6=GX9R7U1-0jEHQNr|CEBbM3n=yC_&5`hh){#1$fT-9Yyb z%r1y3j%1Os}O$0Zy6_%|6k!#Z~py3 zIj2ARhDrIMCh&`>=SJas{D})3Kh?u{bW`!RY^U=1&XnK6Ro))xXG3q!o%3E--g<^- z55$*z>7k`je8W!2PCax$zaIKE z0+{})OTvrHjpdR%3jLkXe_r`EiSGb(|8@DY?sXbO^X&aa>c=DGZ-MWJv_9?d&49uy zs2`{6c>A=q*g*z9uZp)Mb0kFdU;4lJ=P~R<^j<&l;(PD@XtQ2E-G_2af4rRiko~r0 z{~4O!bRcKzIPc{f`JCHk0YLaojQdBwb6ej1T>aq3-mrcWy`sY)@zxO?U{ z=RP{@Oj|tu6FC}^Ro>!P@xSoB`0bQ;hqE0#)j%TsOWqfcy@uR_3;Dw)$!SH-@?DJ2 zLBHVDs}~=d6LJ&NxEjeRr-AM&*%nyWG3}3>XMr!2Y_I<*p5|>301U*UFMN#x|Ha-T zBwUiP@2V^`|^4;y~ffEvi32|u$xW!i`Pfb#D_yf@eiV&;rL z)r?=|2U$P6BDDK#PaqllN6vEaz9Pb$9v!)Ob%gwFFoM_#6M>o%@)^ z@9Db`Z%w0?X~$vu(YKI4+t=@;*CcWp|2>xdthDv)LydVs&>K7Ukj77Z>ELb7JuRXk zsU2#6N4y80dt}c6K2ClIbc4{%69G=j@8@M_9nk-oe7~Iu-UEF5f5!5@>(vkZSK#~C z34}icd}jooQQ%wQ6J7_K1pdniJ|(}8$Nm(-rvmtv2z_dS|004<6YxJq@M#6U89s~9 z*-g^F6Zlr}XS+b2g7*U75y58wxbz8^YZ&gKCwvJfZ2x!atAuvl z4E;L|+>Cf8?#ozw6W4mpQ;#>HC@z~JY;9CKn z^fmF5@wX1&4(#e>=>7FAc}?K21fTFLmjrJGzB~k%9-WrIna_BBgwc>45#M+<%(!+9 z^89uze>MdDTKLxR+lf!T@BH#kr#P5xRAtL=O@hA;eA9nSd2oA9SY+~>u$OY=94>-6 zWTkCz#h)ri^&cI26W2k%ia=BF67)+#=kLeTuLb-K$eY7&pPwWYv4>^7@a_Cm_i$a|w-b$T`#|r14>b+R1oV~v z_3nYPX~*q z6n*{Un)L03Pd$9zqw(AGThaP<6(ru6=AfCePvWal^!=;VRS(r`@t>Km#WT)*CB~Z6 z*b(QqSYP@IdS*lPY3Ogn?%yxC*Df&0bzjr3TEV*kJhP5s0A;sXFCi1^8;0PULJsj_J2zLK3_e_%is+G7#rK!3ThE2mga1_%QHKfxo{G zu6oT_{3U`@FC0^GkL4LTL-_G`LTCItS1HLAimrT&@f$fu+4xT1Q!En?lInW^d)gPe zcPpQBAkHe2zVfDDPQWfcE%4cneXZoT@gvSPt@_KzZ)4nk1wQ`uO!4o9Ze}9m)MKDM zZ*;r6p>L+XzX!d4T#(#R=*yt5mLN0t=4-XKJC`#!h*; z&R3o`=+;3e9d(Z~EV;+eK~TSKg1!p+8w>fv>$hIK;n|JWvj(T>wx)cFhttS2`wEgt zlAeReseeZ%_g&IhMjmOG8@TURfkT*tugO3O|-ooA7e557>n4)SYY=tZUE;*yVr3dIP<~LWg5cC?R7|By${lgU77p3`CCcw(l_zL z`(<+XSf69Z zwOjFDxt|I6RP9zl{_bh=)8r@1rlxNpe=T~SDw)QA#5JohUlvil3}LT@&|j>4PLyL; zPQJz#`~4B&^~0wgygL*q8a`)ogn!jBX1EnCNj_`@JoVotcHGXzL6yGu{C$420>63d z;%!d78ZJ)%D*qe%k@N?D9IpDR2EH2jZ-lF_ZEiL?8%nib`o4H<0Dhk~5a&O^TcIo4 zKjYk&O&eWFzfie4f!6_lTyd@`R~@g}Yn#W3D8xZ>l|tt+R<+9}N#ZYFpF{3}0@x&Y z2L9^~$mD&8v2cR*ci`c8sT8>I-Fbr(-ICvd+$s+U^eGY`&WjSbp%s5kE?cnu-E7VuUd!nopVubRY9W#9As zcF@PX^*Hnm+i#!f56#zi5cn$KVSPt{uLNF(Y}v=z^fQ%j!s3VRz4)IFeyO$3_)l}@ zY3NEHB)-Nz&HO+-Nv8bJ)t52u`^r_BSQ6;BlG{tX{B`K(8%pOt!8@R@IXqwg9^h5L z{dx+&A9!U1{t)olA$SV>QQ&33aYz0*l69B%!dfn8`}GuY9F1 z@A9C&s)sc2mB34U^-z=eXkI;No%dS!`p@%;ZzuG1@6Ru9FYp@R;r1N>UIpBZ!|Hy-MiM6=Z`*SzrdNp)r9&6?4cgEuHZ|&apt0g-0JL!&_7GL~FcE)05@cE>L z=^=RPE&S=R8Rt6#vcsj09Vs3>8hrn}SM}Qrem(e|VqnHc-BWX=&x#zrg~U^DP*26e zvq^gQLcbn*cm2ug&DLq+U06?Gz?Xg+-@Xl>GhHS;rAG!nYd=c-CAiUJ5qiwa)1wnT zUVz?T4(Uw*gfu z=O!EHCYR4muAG}(#R58SeFaTeda3=?KfYsS=pp;8&T>CD?foMGOnt_m!b0`#v2%Wd z{FUhO4&~cq$`5>b1iTY?Bk+A(WS(lbUf}h>I|cW~1KzuduW_qg`bf_@^f}z%1zSXN zGw@jyvQNPaV~N-r_`7u|a>*?Pz8d%uxp6{Qus)w>FHOu-|4IG)S%fx;Zxi%eBILCK zum4z3p4zPwcpdO}1lRe!^+IodQumL2V^8aa#rV&~$p3?@6i?|jft+2R$OP6&1uy1k zcx>smy!+hBf$sqSm=K?8;JbmZ5?tfmB~H6fJj4DIa*KWVs?QeitEw{2IcsAt<{a>& z{tA^IEtLhayF&HW3cL^cP0&}XV|sqys~^AL-&~Mr$2nBxub(ZLk@!g5p8wUF*aCb0 zcOmO$Cnk5ZPPQg~ChKMh!PoIGla9yUfj%z@6n_&^cR9@^)pFVbNclXnB~^Kw;v?Wq#cw13Ht}yWC!W_hrE}zu&M%0)2l@B8!g;D4N)w4#g_&*4@B??KM?IhpLRl=aHbh;wTp-_&m3i|Zlc zU&t#y$d3L)j02x+*p_|GK%D>NCnn$IejXm{aFe=B9mR1khQwQ|x z7uaF1Qgj_*q)Q)}`55nlDt@J1~5d+Nii6Z5x{>Z1WZZvp?A0Jc7O-{C2L zeW=~rz?*%dw+`yuJ93{vGwnbef77YK_bH@jKXmJ%dr{>J={YY#&q?$=3qDn#yGeRZ zO8(+Kw_6MI)l;DNx102+W}w;*z4?B@+t8!q%~%pRDRnZU#y8IrhJbEUaHrQZ}I*> z<2L7eYgUfw7yA(3oNVJ{AG}3y@cr?f^y&b<8GM$9_B5U>(s=US=>Bi!z>=TpiO2pz z`4_u`95BH%$f-LulXvc}a9`p-;C{bW4Sp%`b-+(3Hsl;Dj}%-Td<( z^Kx7%%9RCY>f+b;&Vtw*=x63x{H-K@<;CzjHmD0{ttW$a?N|q-Z<;U&tCt>vg5lWqi4I)Bsmqtrwzzo6q3`hALTnQlWnr~ zf2VW**A#LRM@-Y5O*y-f^Ks;ua{yMB>Sq8sTbljz3EczRm$RD&)`@-hy{u^?Zh3cUxnTTz;ko~c#<}02Yb1!lC9^&Ld#_Rt@PLZ$Q zt2~3qDZ4b2y~O&Hy!!UyCziVt2kogmwUp<^rftqW^|nm4JS+BRyt^Wkz09_2^gZ(& zolP8%2rZ$p)EB%q&a~&y0Ou;t3eHQ_o}KWox{`h?nWmrVqfGk4`fu#_CFoKP$owz5 zLFnqCJ4FzOjuk1B?er7c`{&Sw_fsaJTMeCmUsLs2GBXid1$=VP_1VDo0lOp-vrOl+ z2#);{r=N}dcRMPX|10>v4LL>EX0q1@{pT_!35j#Cg|Po@V&m`_`1qztW}kNuKJNwo z4RNMl`~4l?vxLie;5xZ{Qxot_z|B6p@pJgx_5}Aha>0)+oajqwhfd`B*NLiu_dvfL`Um*!8-G20 zv>bDDX!!N}C)PQRgYWIW{$k1x-?Hn1`z+G8_yEQe;9E7HGIpe87L8=ygkAI>sTku=Zy5(^O;EqfA+Fcs2Zrzh4l`Qr>zWKk3r}zcuZgUz1_y z>iuhZ^*)Ir`=gJE_bm_A*C6y;*9QBs;3L5M!1vp^;1j?%hVWIc;u6{q`0@OXv^VYx zydZe0#H@p+m`5ye<L-e<+7sqQR zb^X+Sq!s`D7WFd-xtnA!)$gJ_cd+jr><9R#_QHkqs8{m4f$0Z>Uy8@Bpj@3UGoI=P zo$y-Xmi}iPB5s{8Pv=`(7&?T)L?r z*Nz&Fy_C$Ne(qu2R^tHW$g3aiJPqKUrl_A<<{zgn-(+^u%-gFL-soqnx{|hVZ`#Sus zB)Vc=FjxuQdj&9b-g!yoSJ-^Beq-{va7(x(@s<7F3SYm!6p?-FC3Ee9)hk8IyXM|$AR8;j^6(IF!DR# zW7Z1{7iWAgIhgi(D3e_wSg0Rs7~qQ!Wuf8SX@A<`Dfs!%_n7vFUl;t0zcS_Fz=bb9 zAH-gth0Z@;68=yO1dKkKMvEzm2LV^^a0rGc~e~Hbv>td+5ie}MbVg2kI0Y*R1m|XQt`~$&Dissl-u}U(UQ{q>xEz0qnYf890l!S#|>{ig)-QCM9g=h zFPUcGQ29sMZ+r+jb2R?jB)y9dWq$EkCVbDhiD&Eq2bzE0jPra&5WiCF>8^8wddnX* z!EZbK=1B(qH`hPQIAj)z)5NEoc4>ys{=&COdiBC*2Yk%EnIXH>#cA0o{LyeS9y~Y`$0=%=Que$2S1&5s3>FnhHi!oHmV)`amn(;DuV7RK#`$_ z%By%dhJM}B!zRJIk+bTlOyIpm!TW%(j(`sWUlRcz0lqc_Z-LJQ@Gjt&$p?Go@Zu1! z9OicLQ`knTlP zhW=H4yZ4^RZc7fQU7oS;n{nT%wOi_kcOmUq;*6rscrpT?4>m`iLlnPe%kK=y;T{{0 zUwl6O;28#|=iKp7__DL#q1PR0bqKkfQ$wNDe{ z(nTwS>yd&tK))V(|2#nL)&hJTaC0ur30nhX7v;j)`};^IPSd1ilRTpx~Z9ONsM0`pa4V{zU8z@D8zfisB`&8u$jv zbAaGBmGW!=z7e?Duh1-}&v+k$A-ZP9%OAk+VL^0>9L}VPpPkS(Qm*Uv<`2&vqx^EM z?xQK4%1{zNigV&e>y8)koC~hAZpS|Q{~?#-p`2s7oveAF%;8Yb0**K|iX|@=I?!`@ z&H*BQ%a2OL9=gQ7hebVUR;c=`20r^2ne2q@8o1UGS0%neH&L|htrzrjK;l~H&G-$f zlI)=k`tnO{zclA*%zX`J9Wj2PX#q3#y7+zIZyIL3T!3JEt%$OpW;S>}3I7)1+tkBz z0zSLo^X=gJLR7!!&d@}nC7#@!V5NbNK(8&F$N9_ifHnd<1=u`bI+J-Ou=uwC&INcr zz_|b~1bEdHUL*dXMQ*WNF9O-rt5gl``|S#S9y+Ezp*noFg?$CJ=Q7Lf3Z8SM%k%tb z3@fq0uAfAT=pW`+RL^%_h}1> zBzOz_z6{*I&M$Ze@UGtk{e|E?z%K^h??(jh2i_C`9|FE41g{2v6nG8%cko;HWppzA zoOP@2DdfBLYq=O>7USxQz!Izo4DaDTo@OOa!cRL>0bpn>H+Y9+}RH6Y5%5oEY@B7|rzvJMy z#%0D+^;7#n+V8cDv(IhHeOj{W9P?2dR?MAa2GX;a`2L2FK55_`(C>hLY^w3mi$~K~ z;U?6Zb{tkbJPSGZ!rM*iD;eah{6oe$zvuZ6`u*9sk4467+3OBXxnyUuzd2&U$B68d zWvS+EX@l+9b!`RnZ}>L4!g#8@O~5Y+l~?dq;A_D5-%BERC-Akv)qi9^Y3pZufp-CK zvT!@DW501;hyf9AEBa>IRd!kk$d_XX-+zrXPvy=7wKZgM?cVW1tQ@fTP zLwt^0GfsJQ8XxcQ%N_cDJk|mKVoR%s=$oM53H><&K;Nz_A-IHwPn^@!oKLc;e|CUZ zHp=-X`5DH&y!BST3ZJ+pvRjyXPUFvKBL5s;9HaUef$!S?3!bxA@O~UHMjhb+a#DzbZf8D*rI{ z2Ot0XobaoGuLXWEzuhEw1MoC_>=K{J61)Yt^m&&c)cbrJM|A*S16(+6((fM2KMd~& zE`9uP^_d~yBh*9G`n2*h?IpMP!$q$XPj-ao(5q+ht{|+ggTx7{Am8{fR1vP3lKO zmi{ThJbE2@iZ3I|t0l^-#?>^|)LGQOK+4&&w zF5s<}uWx>>*|X!S?Sx%+(1{&<4}Y;j_}t6m?+KDqaxD9c@blY23U~$Z*P#2U=%@$( z`g(jLe4NE1XO?c)jYQWB-5U7eCiCbPQ3G6(Ultl}O+Adzo*$EtaZ_Q#RKcPKen8(4BMo=ff3LVr3AzQ>8) zCh0!{-%arSSa6*yx}H`gGJ8)`0Lf{Z&3qI&!>$mX(!Vx^{rx+W{kh-`5#yKEv9Pn* ztmA~fcWdgUmGSF~@I6-aHp#Ag;9K+`&g%(wN^aeVamsv#-7X4wq|`Bewca3U~tlezf4GA77Y@bJfoq$S)@U zQsoEkYhtItb~fqN2Hr{Fooema-=CHdhgKE%`h|Fr#J?Z9%dgm${kH&~pVRuppI!c{ zzY*}}T*-Z`;&1d^mR!l@b*oNKuAIZDeQ<#d;>cEci$9)-efO$ux&68(Ti$ZuKLCz< zw0yY3+&Ur2sU?5wzcSgcTRGPMXlZLP1GnG3IQ`%mzFz~s8-#C@?5GnyRkZgH1*4tv z;vm^kZ`AC-(SLw(;lHiH^EGO(QTVQhue-mhdAfVfUFEKZ?p;?0@7*%({|VwZ=$1$y ztz#^7;>>d5rv&(Zdlh~f{G!R=d0fGpfpghZV4Xzm*kVG^>5*o> zu^;Whaj{$yycNFE&o58#PT*nvWM92jzXjsr**lHMJG8ldPGzDq|0Wm@zk_|9D!{@V zig6Ss-}0+hzS?zuZdz~bvyk!eXV8b+x8jpdeb_I8C?yMXoHafb#^2T#1OK;Ak5m`sEtZxvMK9Fe|n zWgP!y`u|F|+nRD#V-G)uPo?z`SapNZ~R0G`_xkppGMzi%CjB4{Pr$6gUDHroHK*-=Y_fN z4AkZJ2OG3~b0 zSi!i{PBugE9^kvdpCuUW=YGenKLReEL%?^UUxAIYY<*+l_InG#xG4HFAohYE$?wBH zHXwhQl(;+q1V`ZWFvx?Z7%;t82Rr$3%`!V{zCDC=l(_;Cz0 zm(=e&;MWDe>jX7=$SLt*uh6`p9Dmw&%{J%0Da%3S9E5)BH1$)CUA*tw{Q8-MZVPmE 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 z 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 z%0A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 BXHx(G literal 0 HcmV?d00001 diff --git a/mailman3/venv/bin/python-config b/mailman3/venv/bin/python-config new file mode 100755 index 0000000..c58a90e --- /dev/null +++ b/mailman3/venv/bin/python-config @@ -0,0 +1,78 @@ +#!/var/mailman3/venv/bin/python + +import sys +import getopt +import sysconfig + +valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', + 'ldflags', 'help'] + +if sys.version_info >= (3, 2): + valid_opts.insert(-1, 'extension-suffix') + valid_opts.append('abiflags') +if sys.version_info >= (3, 3): + valid_opts.append('configdir') + + +def exit_with_usage(code=1): + sys.stderr.write("Usage: {0} [{1}]\n".format( + sys.argv[0], '|'.join('--'+opt for opt in valid_opts))) + sys.exit(code) + +try: + opts, args = getopt.getopt(sys.argv[1:], '', valid_opts) +except getopt.error: + exit_with_usage() + +if not opts: + exit_with_usage() + +pyver = sysconfig.get_config_var('VERSION') +getvar = sysconfig.get_config_var + +opt_flags = [flag for (flag, val) in opts] + +if '--help' in opt_flags: + exit_with_usage(code=0) + +for opt in opt_flags: + if opt == '--prefix': + print(sysconfig.get_config_var('prefix')) + + elif opt == '--exec-prefix': + print(sysconfig.get_config_var('exec_prefix')) + + elif opt in ('--includes', '--cflags'): + flags = ['-I' + sysconfig.get_path('include'), + '-I' + sysconfig.get_path('platinclude')] + if opt == '--cflags': + flags.extend(getvar('CFLAGS').split()) + print(' '.join(flags)) + + elif opt in ('--libs', '--ldflags'): + abiflags = getattr(sys, 'abiflags', '') + libs = ['-lpython' + pyver + abiflags] + libs += getvar('LIBS').split() + libs += getvar('SYSLIBS').split() + # add the prefix/lib/pythonX.Y/config dir, but only if there is no + # shared library in prefix/lib/. + if opt == '--ldflags': + if not getvar('Py_ENABLE_SHARED'): + libs.insert(0, '-L' + getvar('LIBPL')) + if not getvar('PYTHONFRAMEWORK'): + libs.extend(getvar('LINKFORSHARED').split()) + print(' '.join(libs)) + + elif opt == '--extension-suffix': + ext_suffix = sysconfig.get_config_var('EXT_SUFFIX') + if ext_suffix is None: + ext_suffix = sysconfig.get_config_var('SO') + print(ext_suffix) + + elif opt == '--abiflags': + if not getattr(sys, 'abiflags', None): + exit_with_usage() + print(sys.abiflags) + + elif opt == '--configdir': + print(sysconfig.get_config_var('LIBPL')) diff --git a/mailman3/venv/bin/python2 b/mailman3/venv/bin/python2 new file mode 120000 index 0000000..d8654aa --- /dev/null +++ b/mailman3/venv/bin/python2 @@ -0,0 +1 @@ +python \ No newline at end of file diff --git a/mailman3/venv/bin/python2.7 b/mailman3/venv/bin/python2.7 new file mode 120000 index 0000000..d8654aa --- /dev/null +++ b/mailman3/venv/bin/python2.7 @@ -0,0 +1 @@ +python \ No newline at end of file diff --git a/mailman3/venv/bin/wheel b/mailman3/venv/bin/wheel new file mode 100755 index 0000000..9a68c39 --- /dev/null +++ b/mailman3/venv/bin/wheel @@ -0,0 +1,11 @@ +#!/var/mailman3/venv/bin/python + +# -*- coding: utf-8 -*- +import re +import sys + +from wheel.tool import main + +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/mailman3/venv/include/python2.7 b/mailman3/venv/include/python2.7 new file mode 120000 index 0000000..ad4ca80 --- /dev/null +++ b/mailman3/venv/include/python2.7 @@ -0,0 +1 @@ +/usr/include/python2.7 \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/UserDict.py b/mailman3/venv/lib/python2.7/UserDict.py new file mode 120000 index 0000000..1dcde33 --- /dev/null +++ b/mailman3/venv/lib/python2.7/UserDict.py @@ -0,0 +1 @@ +/usr/lib/python2.7/UserDict.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/UserDict.pyc b/mailman3/venv/lib/python2.7/UserDict.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0ea05efd89bacc3713594d44bed8ceb5ed564062 GIT binary patch literal 9360 zcmcgyU2_xH89rwv%NCYDu)$z(5&(XNebX(e{o zAhpoUU?x|+Xs`MYdeKg&Gwn<+`UCod+8@w9&wF;Yk_RSrR#VJ5K701;+2{R!&$}-C zd*;|*|JnMup^|?E{QePIbRV6k)FyhZyt48v^<1d~r9RojbwT-BZDUXz%v#EuP+m#3 z3ThL#3u?Ehb|;i?sROOFH>td1%9|Q2FL7OHSyM9=8!_I!-RlQ~-Zgv7U>{mPYcl|~jU5Tf#*T;Bf4fjT< zdY^Cl7djtQ0r@GC_goV!Cu*a9VjMWw5OLGqQ4tE5Z29v&yd5PJ`@*g^uFo?>lJG2k4qgJyFU*50)skS61Og z&g@#8q2vOk;(~f2VhnGj_l#6=4-eIA8au7mis)l@o*TO|SnmXWT*AzL7jr)LQL5z! zHU5?bk>A=jk3d|qa__Ml?nE^#P|`(jVYK?l4OiQ4v(~b5ecmCVV1D8iUG?~;dvE9Dv%Atq1j`yK0L+i!}8z@ zno%=|VmD~`HeV%TXtcYAB)(HfvMH!MbWP%U$HB&qBWBJ0l%CUz*3o!wQ)*-6x4{Ly zbDZPY`6cZB8E%2CEVts~RmgiX6wD!FITUepcRXxc;{$ve0K!yqu_+K{TzIE=*jh*76SjKqBS zj{IPw6fB+Ds0_(wfjEo70N?c&;>*;X`0~T@{FdS2@&H!qVE8-ZoahxD3~XWunc(5d zm}=2z`EEECFJqHUXV46*_y(F4Um}{`T?=BphBpyKMo52}-g|1P zU#+BJLxO}c0jz#nP#d7k=!j#fdru?@z*}%r<03JL=6~?dSOIlPe3G#TB5ZWJeY=2x z#1o@R`Parn*9JV{7%{zqEidQ6G?ic)pV(f-j^D@wNkTQ) z^vG@P`(u*bYXJ0S9#9P8;{;U2eoX0%GST~`P27^$+E5fuZH?M*0?havcoKabsKDDJ zh-g1_MRz#+B|1bqI5v98ITbu-K86`&Ud#l(Bfi0SI+K+#X?D^@6ZDnve^?rQqLAWp zFS)FQt&vCRB!f$;_d1vCPSORhZ7r!!EjrexNG&KLTH=Q* z@W69=NneB)Ue>eB)476;sBdy5BN|u(ChSeBaGvzn$r0vf$q@uAl$q5fxee4#Q%(kM78A>7*l;<$WP%bCo5Hr_sTKa0Z_C-9O2PeGy%y?oj9r+qsiiyzDCSv}7I;sj@j)PSvh+Q1y9Ou>$FbXpDR|1UOgg_4z z-A3;;WxBRCFAfCh8jdSPIFNa@A^8|ZyKc0No0yYfE0U83Ber`VMHt?Z5Fl3X*;JW4 z8ajpNx5G}Gq4z_KBTgu*jO1%puh&*^ksRU!x9vMlOqIp~s^jgqaB18apRswvrX-T} zI7>ai0v-cw=6CiIyHo7wJS6$EnO+$m$0WjL*tQua?J7H(uQ)~f4UR6ctFfa-*bJp| zo|AK0+eiJuv%iT+E*a{MT(uC7Oj$-((Uo+iRMzE*60*`VNBpTIzs;4dR4TNM&voN3 zi%{zv=jQ;Cn4a-C-@=4V*4Xc$%gycYViO+t%@9>YQ!_*r(bNo4MU;BzCaQ?21fpz+dL8PA zrfi7%p(z`peu%rM9O5oYh!~@Ih%u^&rg(@MQ#?c!5tT#WS)^1K09T|+0@z4VR7KZA zR1%kez!YOz4tHApLO-0516=C-sSRQ+S?$5TfVqtOM^|%7@0Vy%5uIY4Aw@?obCY*2 zqU%@EP^mY91yw{HZ10!~t4eDPFI2yWm9NiVdpul8Y3wBBjlHpL=$##w^h{FQf=OKe9~@v_H^MyR*Jzmo zBsR8z1LUzNbAa`Y;OxKwUZw+tLK+jk7HAaNGEXQhq$kX@Qj#^PGbaavJi5tb=r?F1 zE^yYkKx!w?8Mk?##zx7@aTGCfuc*SSJUSvw!gFJ0aQ75EP{!F(s?G8Mm{eoz(+UPuQ?oFXH?uRPeVLb(QyzBm+2?2xvs8tu zdr6C0sOq=7ao-eRX`EuJf!~W`2Df_L=}M}}kFOGWhxF|N7UXs< z%(Z`q7V+exz>^j5WQP2pG1E{e4=K<50|TglHz?2iKB>Gw$xw3%KUBTXxd0zD4_;nS zc@z3}FMZI|bv{?UTk@b3!`HS>@H~Z$pli$IBkM389y_OcuX6rnwVE$*)B=t#MPw-9 zjFxC9+jVh(CetEq=72-*ncXlIakktCRJ!922$r>--Lo&HW-1fWoDIDudG=;_kb0GL`E z`#V%2Sm6yRCkQhSRR~0R-ry2STZ$7>kI0xQqoZ?_^4dU)&Z8@p%LNn$is;!`1Sp_n zP$^GV<|-4oDh<7F5)ViU;5c5Vf%*upmCYltnRV|sI;~br*4*8XS@OAyKeNHNYN@J( n{tj|9I2r;N+7(wvKM}}|*GwhnJqgw1QpsBU=~5AYo>BNOj(k{l literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/UserDict.pyo b/mailman3/venv/lib/python2.7/UserDict.pyo new file mode 100644 index 0000000000000000000000000000000000000000..0ea05efd89bacc3713594d44bed8ceb5ed564062 GIT binary patch literal 9360 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/_abcoll.py b/mailman3/venv/lib/python2.7/_abcoll.py new file mode 120000 index 0000000..e39c38d --- /dev/null +++ b/mailman3/venv/lib/python2.7/_abcoll.py @@ -0,0 +1 @@ +/usr/lib/python2.7/_abcoll.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/_abcoll.pyc b/mailman3/venv/lib/python2.7/_abcoll.pyc new file mode 100644 index 0000000000000000000000000000000000000000..890067380a178776027d812fff92e7cca49c53ae GIT binary patch literal 26798 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/_abcoll.pyo b/mailman3/venv/lib/python2.7/_abcoll.pyo new file mode 100644 index 0000000000000000000000000000000000000000..890067380a178776027d812fff92e7cca49c53ae GIT binary patch literal 26798 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/_weakrefset.py b/mailman3/venv/lib/python2.7/_weakrefset.py new file mode 120000 index 0000000..a3c1cd4 --- /dev/null +++ b/mailman3/venv/lib/python2.7/_weakrefset.py @@ -0,0 +1 @@ +/usr/lib/python2.7/_weakrefset.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/_weakrefset.pyc b/mailman3/venv/lib/python2.7/_weakrefset.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2d12e6a819387208aad80f4901c85f3d1bbadb8d GIT binary patch literal 10254 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 Mh$eHT{LK7+0Ra*;5&!@I literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/_weakrefset.pyo b/mailman3/venv/lib/python2.7/_weakrefset.pyo new file mode 100644 index 0000000000000000000000000000000000000000..2d12e6a819387208aad80f4901c85f3d1bbadb8d GIT binary patch literal 10254 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 Mh$eHT{LK7+0Ra*;5&!@I literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/abc.py b/mailman3/venv/lib/python2.7/abc.py new file mode 120000 index 0000000..cb3e5d1 --- /dev/null +++ b/mailman3/venv/lib/python2.7/abc.py @@ -0,0 +1 @@ +/usr/lib/python2.7/abc.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/abc.pyc b/mailman3/venv/lib/python2.7/abc.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4ead0cac09c5c0ca2a34261fe3f32363e96255ec GIT binary patch literal 6275 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 NChoA=x$@$7{so!H!tnqA literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/abc.pyo b/mailman3/venv/lib/python2.7/abc.pyo new file mode 100644 index 0000000000000000000000000000000000000000..88b7de9282f7e1a5730395e7a280d39788331afe GIT binary patch literal 6219 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/codecs.py b/mailman3/venv/lib/python2.7/codecs.py new file mode 120000 index 0000000..50169dc --- /dev/null +++ b/mailman3/venv/lib/python2.7/codecs.py @@ -0,0 +1 @@ +/usr/lib/python2.7/codecs.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/codecs.pyc b/mailman3/venv/lib/python2.7/codecs.pyc new file mode 100644 index 0000000000000000000000000000000000000000..516d5909ca9689ed438a736629fcf53dfa090f4f GIT binary patch literal 37837 zcmeHwYiu1?e&4zGQWQy%l1#n)_E=t9lr2$~U((95R}v+y>6K~kP`1|GO>Zyn49P3r z2Q@QS6gPI8wbaeFLHYvHerTE|eE{LlaV-{(x_4=2X{!M|y~UpMx@7x4ESe(_qx zn826?TuUY>n`X%@Aff59Sty&0-Evzo&5F5tt^JG{3Wv<o!*&zRsVCV18a&zaze38qYN)CA9) z-~|&LGr@5aOq<|@S$@GRp!FBc0y=Qg3@wbB1$5#iq;{DFbmV2TfWEw97IvGkY_6k6 zubS1eiJmTnV<@!OEIeew39~S1+Ivkn?y`0>3q=<8F?V6V6gpr+taRGm3^P1GTyDfk zv~kQk|K6-uYX{y+*jx*vczSGX>{`@FlCbS9Zg}t1qWbak?H~%hD`9J~8!dZNty=S3 zQ*Wm0oz_vjGF3l{iq|%x#_~$y&CL0;sJPkmeBQ@sEe@lbVKD8@z3W{&@B8QHu6~Hu z8lU37xv3I5n(*>`{4B1QYmH_YcuB`=c53*$5_*f>Ml)%&?P$(;&&J6JN=7n@FiM7T z)9iFsyKBi1lAX1%o$Ny5Qk&xsE~CN(bjVzI_Z=yVztszuT=L2#sSdd>zr=jjtvA_| z*Ivmz!AgapIBbzZnnMDNp_@n z$s|&lQM;!HLUknL|NZOfCqOjKT!&)(evyKw1FJHoDPvo+-sxjm&hrpA< zEs#qZI-pM*Sym{FL2v=T z_$V$R=%MgXtoQ7HWA5xQ3l;KH63ijv&rh+%Ix(66WgRp4#Wh?KW3HFXN5*`FYuS8M zF&_Y(5?_AMG?BjhHI(@e~O>MH-1A^U)4T;5sY`T#<=Kcm>6f!0RKRLtNBz zQ*2l;HtDWmA@0O&wb~BXt5q3qyVeT*r;+I&WPyq7P7v?w@$}k;e*(ql@r&7KQ+~2ETKHEdRQPj~!3o8bVJ5DpQ^EwmjcbKn zLIS)Ab8~Qhil{ReKZontXXEK-W3RJ#J*+3*QYZ3cAvD^{ppafI@m{?3?5#JaNGxPI zRjYNNZ49_`rBth}PS9#zmYcu{;V3Kz+Txzt#SXfh|jn%#c@*(h#lUfos!#LKN07E@tF_oOv zv;SQMOPf}jHFfmFw3e7U>a{|!=pgo5wGFQuhhETFS|V{vJfUCi{S`3mCTBUWuYm5y zVTO@9raEde7zfb z>y2bZp0~qWNv;k{Vx9H-}Me?6-sg*yIP8ECx$*@OTls5(na zje4Wj^xl8r^5x4HJ^#{sSI*B|dgs#I)xLGiymj6`KXdhxFB8rhQt9OVc7sG9mAN|Y zzVFLy6Z(|8j(qKi2caxow$s@gM>eq_!obhNfNj^-F!5_q18C=c>zymv`?*o)k`6wA znxGc&cB<2EZWO2oL^}7*kzQ_h#Ov*cD*>r3jO(?v(2K(xT?{IWvx;1eg+$-R-Alk) zRFzj(!6?FI})>Fq@ z4a2pp+D-&fuD7?X+A3y_5XLf4`pESV%0eWyD#D1Jm(r-I)r}L*yDWUPCgTmg?}iby z1qHR6rvij@&MdLZ)68T87%VVp6!AB1B;8ul=(KY^wCW3)&0Hs$ zZ9&2zB?<$fks^Hw0~G;C`X(5u6F)Fl6+z|}QJ9>}JoLp-`;Um)7ezw9|ER6=;3lk{ zLRZm6*_Gv?i%V52_b+yr3e$#rkSQ;2cEH0d^;YH;9|PT$hq~0T96?W8VXG5u6sl-p z`G7zyK?hV;7v8FImLNAR**?Vu?%9a7y&@L=$x8iVD^-P=FYikA-^6;!mZkqS-1_I3 zhu>iG{$afMGx+IRJkTrHs=gC+>X5CSnv=CQkZijj%`LJ?k!=qQm&W(iaV!6kB3!^P zK99>*vMo%kRD*i&~%0(Q+|NsLf`WcTAgz(rQo`L?&&+F;2ummugS*(9iE z3yi9Pbp~b-uEipO+K0-!rMfk!BUqekjSzwerC3RTu#+k)(RXsOR?(+*+CEx~khP^s zzNu`@5_jR{WH6vPkVqgchsk;f`&Jz?1zD+UNW~ui4GgwUD5gJ=6%HbUsxUOAR9mZx zvY;w<{J&BVkyXw>`AkS}`hv@`*o?%G$@Ll97MegN9%LGTBYJ%`fz@zh9n3hV5zL1w z|Edz`0Y8HVZmR&6Nr;f2!1_chm31WSO-Zw6QhmI)6=rqF zM!S(ztG|ru#9(4ZMoV9e?{OixVF@~5YMh(^xl!dgVonss#9LsCvXyL{%IN!%4`J=l z2y4x3Ro|`6fP~>6a%99gGvsUpCEN-6QTxn<)HAqqBcgegGND^Cl(^)U5Tj}%>mffB zyl%Ebxu2u`la+gH0%u37Ks$O+fIFCVvan zrNB?u{T9G)qNoG@Jk%3H{xkb;MLc!3QIY<#V_Xr$Cv{INBKxuVFF4p2uEF+>}*L2n!nOWSaHVsup zEXu2x-$8{+)=PU!^&#Bx=T=}&Q)kDRpC`yHD{CW@=ln~^%TV(! zu`;1CzpCJ^>YV%sz z_M7rV=}G(?Q6~+O@p5T8+<|HOiy)3r4M7}E-@VappOyU{eimnPeRMcOZ;#H&8XWSe zfoD#6h;(7QIzv+U`|J$iV@jKaN16v9Jgy;B!HJMP3oPppE71vm3#q}UlC=2`@Uy*| z;u`8l-4)kJJXJrDdD<@O{tZ<7@7M`0D535{qdUe&Mu$c#b>zr@9PkDF9)QN8){h95 zG+M8=TVv5$x7Ju}>q5Gn)*^(xAofT#pQ*8=4XI?bg~lTI@6av9|M(99X(xL)MJ3P9 zY&RhyqgyluZmFlFCI1-cDVANF!|1n_as3Y>uB`i!0kjbX;C5;w_r~}9!x+y0bwe6h z5m5wvV2X&agAzz+Q3v6)2)iPmh6Ff2#Y8-ce76F8(f+oU;q6EYYXFj2iEIA2U!hj928Q`PgZJ~r(qr5 zLC@Mypz>)~L4H_BE%G$=Z$L$%!a*;@O+;285XX(aZ(nnrX?NPk+u<^--Z1ae*SQ=< z?qxc4q5RQ>r*6m1R1C)3YqMA1diVXS(hVp-DC;V)78yv(qC#P;s7wsAMd(a>AWu@J zpwYT|X!@-!(WxlP=+x0;IYmlGV;ulfi-!*%^IptpS0di3Oh9zW-QsRLlw?tqhKZZ3 z-;6uyfE+)=PDh`A6WMNLpQ&DMMopc7qMiwuP|Mz=UwU*3)9b?Eflg+3Pu0Sy6jpFd zTel0mdJWirsHX$nEUYtR>Qz+zdzWAKr)zpk-P9Msy!B?a@GLsl_eNs-@{|iU~aqI4HCoI#u9IB$<+) zIUjI8A*F);3+~^&63U6WPfF-vVjEe6`SK~DIs?x+I`SZtP=?QJsf7CP@aY^c@8UAJ zp2D^J0>?Fi#I~uNf+pLpa=x5lNKWM>VHa%9R8Hu5OAN*3qx+?Do^r@gc1*=})d7Pctq;L*xCe0tBup`X?)g71x zC7|*SjDUy$OO1xK7$OIzL;Mftm{<=(ILcryL>hYlMy%ZsyAfD&j0VIp!d1LUBzOF| z*&%j1ZxRD5VF}7dp?n*qGcS@2z0g?Perg$gPH^8K4ASxHnz+1=Hya4Hu)-wcqQwl! zSjoH`#@DA7;lYSDj(W5!<)mFcqoAPCAGQmhr|&uWg>Pp*s)C;#vWGzSOhn;$(vUQD=oJh;)!eY5GoszZ@2PMi^M3j^2>4v_tBzOk=|s z4u1{{G8Y!$<5u&KP~LWz7Gx1o-g4~XAe@z4{X_VX63pNiGg4SBlu8R=ioabJD=`ek zsp%LIz_cE#jnxLJF^IvFwU`g&ITBOFQyofe*0PO)(ah6I9kO|z6IECZe&8C zhr}V&r>`+@7#AfV%JJ`w+0Uc4nuE&FW0|qkL4~$ug$gJ#y%T_n{LhUw*4zGVl*t1C zN>4M?o|q{Q=2^&gZuSPqn(+KB#YkhfdwCl z!j`5H%p1llj&tsC_I70TQxRW9zIVCVjX@_R?nzWJMFoksa!zE5O5+i+DvFVpK3{rYS@ECpsscZ0ySVN~c-ugif%k zru7a?9h*jLHB^Fi8~hI)H)CTWQaSsdL*=t*NKskwmESHi z!i{h*9;y6t9SNad>Yj@kSp~DrN(g#F3hs3}R?KrO(Q_%~4k ziyAC7!j5*8g5?&1uwCr3DG<>kkQ8oxy##4Aibbv{o7EjA`Zi^G)*zY#7&J3)oA++q zHti{qInt~`IS3_LIUzP6A*<-cFG*#?=K4aovGsGv972rC##3@X zD%(ZzU@X;bhRw%2v1xwA41ojlpoiH~2^&sJ2#SejN~}ZQ88O$#jmP`qtJrmVeS#u6 zfbsFD40M!fkn7cwi7uBuG3LhQ(v7#7;As)uuewvCZO}XDVBA_cY)+NAyLHIK#{rk) z2LE59V5S59Iq3-0Fc9<<=ItkBM0lxeJUn36;Wgj+HY`<-|#IS0VL%k7ZItRDfjaJM17l3}~k zU0&IuCa-oATW#rN=uuVT#&_w5%nw(#z};%JFn;WALZaL9G7wm=X>q?)0TNa(6fH@N z?36^;x)CCtLmRhly&uKSLJdLebYp1)QY=FQA$9Xj#QjN+bW@%Nt=oNDYPBfTa{Od| zG}Lb}M|5XuldP@P#r7)vO(U@33?&o_)u4SkXJsoKR4=$?u|qkpH`(e|y35$8DqCR? zLx|nBg<2S?-vjU2B^1ZbdD3VPtt3%5gom5{R?qHtyeNJz+3o~IjhbB%Kh!ZxjZJET zc8;nb@3vrX#3nR!T+{%K$CkZ_#j=Gi3Tk2lSnAWHUMW%AVkcr+>q*P4hHHt}g@?My zf`zKM(^U2VsKQ9h?-~46R994oxoNcKEk|J(Z0KBJ=>YMTH&C!9Zu)|Qo_rVU!79@_ zxpqc{Dqvax)YQC189<>?=&0-tl!$^f3{;Fef^3)w4tg2xd1%@|i(_6my$lp-WDZ?+ zqO+zE2^wz7S5*Orv)yXRSUb^bYF~BBuh0?I`|WxW$O9a9Y%(W2uA|e*^ta5J-XJ@j zo1#tLhum%a_jw6;Ig5)JQ?3HHBES^!@7-yCWAmE2_i$Sf|hsch}i?vP&C&-DBGGE06 z-uOQMzlPW5r|9pDe;pU>OvmB}Ls9acN*R_KTbYM!!wLnx#MmyXe$FSQYKTJ+A_qwV ztgt5A#y~y!&~0iWA@8l2ad- zq_A{A!>COt4O?c)(J&u!ve9UiC8oHPg?fO}#w6`R^E8fyv`Cte0<_JtkTof{L&;^& zIXodlJ_FnII2llx7g-(NNcJF?WJfY!DMjAEw8u5d3jc^SXaTjGU8ALm(pc$0WiRN@ zaOq%a2oz`-6y`u_cxX@QaCuCq&}3x{6l$`(4`-c>SN3a3ymtuH=n347f->#I(+Spq znjTWxM0!lH3T=7>38J-}Y-U$65M5LlYgELcHx}1uQ51@s$%@u6T|l}511ln6i&9m( zzfG#@;r~|v2yYSdunHaxv9*!y?uKEVOq9G=4DN8fC<sHHJW)ZJ#fUcpXQHU{zpunmZeW zA{@E@@y-&w!|l9;t=mAP5ly*s__qJ68zy@Qb385TurD!Ti#})_+8Fa>}i| zlkgA&IX5a3cQ|hnk7cKwlq!N^5;btZMqWP8onR0_dWND^m^7iDf=(i+iI+Tw9zv@) z2OvgVKPnw%bcphmTFyyk2A(4|*K%sa{y$3l$rf&or_qis+@hO9IOc8Is$F#B8j5=J zcGH~7>I!B$FYO+{6x_Kn6SQ|dvwVsF&8b~UOiE&YrXf0KYho0LPhvMXtXM5LzD465 z`xK2y*~m_Wx_L+_kN}a7fzOa?4)Qt=!K82m$tx&{(Yn2nqN$`Dk}Jk(@dZ*hZ5@{1 z#p`m^*?iJjn}wz&XI5mMOaCSc3_Mg}QtZ((hdY9*OofbLC|kL1$iz+zdApq^Y_wYC z!Ee=ShrJ-2&6mbGCEksJ;VW*D$c^fOxuV1qv*Fq;ZQg_Tg*;IHpTbmRjKc@XHvXUH zrN#&N>E&*Xxr=xal0Z7wb5oPZ=yf$6X5QPptnhM{7m>xdBz$0E-Usz(c>8C0*?w;n zj|u!sSOziOQt(DSI$oK)vS)VBp3w>HeZuaif>#Q|Qm@qCKmyd8C;Q474&+yhG7=wgkO58=P2L(As zhvNuVDF-dWEv%*#N=Xt9LAzQ(Ai4@M3po&eDD1>Eh)F~O^^H30a5T$M6vH`euqfd$ zt8Tkaew`VjQhO2iSUaI@T90OgdXTZaO;4lf+KYZLhXF>uvSc z!Qw0S`wIRFy+4Bls5`I@YXGRrv>dL;9HgP8=5tU$P5PK{$1Q!rI@_Z)FOcjD^&Vbn zMHd&YZ6_=r4%qXC)_P2XYO?cNHi47|BiYd0bGTRW*ok~kj}>DFDG2F_d9ZEw+8a|d zqCMaavmJ1ft-Kr~2GFBO3&CB_%+lbN{6vxAYwL=aCv;$W`Pzz2lm{eGA`&##m{~j--dpS-|Ep~94%gTO{y<`2RPmJ*w>Jn-1wsnb>{oQ-+5;;MxOFzk5{08Gp ztn8O_UBZ$Tp^txM;(Zv#c@hO2 zWw;IO;|&g--xMcQK|!Sx)PQ_;bvw|9mHl&ekZ8gU99yV~Jk!ASlgtm69Y(`xZ!0k7 z=0oG&B7X!cr1=?X6oLg*3&Bno^hC!AvCcF+SsvLSW#D3T+a_J_Uvju394_MGCcZ?G zaoeDL{9A`>4_5j39oO!cQTh1Ytao!F2eW*%CHOn1gk<_hrgc1+xH#HW zzsIhVNDPnS9OUx&Gy0^vF%h(&A@eWPo+$s^3`p>Z-s_PHqLF{&ZA4{pe(S zi~gt;92!`v9=TcoAHvMeLXfHzqB-QoI;+lq4Gj(&u!geTV;cUA9#b^WtX)>Cv8}qc zR4R9U$U1GEP3c|;ak;CHNF4uRWP9TO6wpc4I0hE;M~*RrUo1=uyvnI@PJ2T_l{P$u z(@+i5(CXm7%;!L>Q->keiBs(UDeCW|*cFjjHRjCi0L|J<);q_c0lBeL-O+vhF#vZ) zF&S77U0QL(6Ghw3w_6HRd0b^3YKjGLrU`PW#H_(a^syeZa8a{$T}UMHqA-%gCqac?Nbhn;R-(}%vVTT&#jDS+EAspZN?$TCoi%EO9ZqAFmdO zr^XI(2BeAyEn7YK7;L??qZ})A*@7}{_OtZx;5COupSkw+uI z7TYs$O1x9KGr}s+Cp@uq3(apv4emuDVMx&;_bN`DwkN3foV%Q!r&b_tDar1ctp{X4 z7zSyO7!}7r9q5*1o1k*|BT_|)HbZaLIh8MQQ%iV^CA@>H zK5T3^2B0pe@?^>G7b}d58`7vM7_&NJq9{dmA76Xr9QXa}USHjvy;T(`nok#wN^{W7C8i zo1$-O1&ar^rx2NRf<-vbCYasQ6->0g$GK(Q&$zKy+}JsO{$}tK1sY>dR~@ppMM0;R z<9W8txi@NO;o$g_c3(h3VQzs8Tv0-hqY>PQYH^4iwnX7DlCmDeoS?=S)|&w?qX$-M z9ejaMXF87Bt)-zKH8_JJKy{c&3yU4NlhV4vVi%%^)j?ZCDxJ-Vhh0~P#3}Y0qhO7g z6lmSi)$!9v4L&&9d0yh+$XrahKZa0^%dd{qdV-0;%z_4{xFd7$J(N~I{wGLnm#yb? zHUl^WgAJv>8Kh+gmIby>Ldr(&>z2T6Fnqkhamf;Su!fI|uH7%A;p6LB@A?})Xy2x4 zrRStV%9h{*O35x~0DH*xJ7ph5KYxhnRa3}beiCZ9GVWoE;3(X&J7EmLp~IuHVNf4AB?YQC!v)y@?2^#jSP&!p~o) z_Bjv#l#(-qzQR#Sg%n$65Kf9KLP)_t5rd0-5X7CPihV3QK{YtI_*X&Iymxs_2y}WY zy}{yuW8brQH?ex=|r{#j10Psm31d~G{$SWr~B`p=-PY6!{(&XfL24S6% z{c62+Nm#$^5vbMc4DF{XVNW+vYlrJd>L1KIe7O&0I?VKpREMNe((3TjGWwxOSBY3g zunFW{`NEIJ>c?~uQ-RB@DO7!>Yu&huxWo+{x96%zbsD%V*TZHrH_Xd`s|FUz&#KAESkh~)^X4`7KE$B4MSV()Dhj5cS7rq zM;bm>Fo6V_c(>DSB*=5BviToB(*uf!m&Y1T_UK2Vk8#1Exn&d}vU7XYXA7@e0ZV`zZ zYZAa=H`dBa+`qL8MXEUUTfR1n&$WQ_8J_}yPcwS%n~{GGw?Z++>Q6xO!cr2(k9jy;8HL{Oa$f6%d!aOyOcFSUH z5uf#=i%Mph>7*mB6Wf#2bf1pS)zZUWoT-dEE|n2+O(`8onSt`DJkd#^!jaP+o0-<7 zmwo!?#_4)uH($_zm)dOkB^@|ldIwnmSZ;1+b(Y=uHG(~H8$60MZL3;@u3|IY9|Ky? z>HT8l7v}w5`kN8I=>jNZW~K{>WC=6A?TGINt8gT!o0~g#jGA@O2-6|)QY3UV8qwGw z$T_y_>cEPLIutl)?qxik{Vp3;>oRIj(M`Ymt1*~DLMeXdte`a4=m&Uzz|^0|MNOuE zjkhi@qoOi+p_$w~Amf%hRvr(23XD&(h|MNOKiB)nI5)81-(=|kh$hG;IShYnN604i zodjf1_QyfaxA8o`fNbxIe1+WWuE|PNIWgtqN=4F@Ez{Q{JU6g$L7rnVr6GyAb>mam zpc6=2QByZ$ED=3Or(E5bJMOW@^euI8zK*R!BT{5CoKwOASi*8(4=49io8n^}$&+IW#{YoCg-+#-CsoO`mzpvMQtU=jRQC1w}gS766w9 zyS7aAf8)JvK)u=Qvox3Vv+f${$&k-p|I>D$r6VcUC#2dIG?y@LA4yW*F%}BAwEMz+ zxdmC0<-aUJN*V<+l zKnA=WRP8C$^SeD%?SX^Pddu}oTla}vZ3f}X+XO-n_57zC2$6I_D62@v%eas+i2H?F zRmJ?QXlJ)xAWOLT6VHep5Gon8HQ9h~cfCJO1?+>;jmHiCzeb%+Vk)7?(IN>|4fe{q zmH|hBq0*kO`CDjE$g?m4s^r{m#q&BW6qG@z;lgd>6OBtEEGUhnZ&=%5E&qub%U^6| zR+Oh1ZFLRzzi^KCB4I`kAZnDSH&D8_Yd>pX59Z5aQE;AF+^f*YYYrSIn`zJASVDcm9s{Mv1WFw zoJB}FXugdb3(YqOP1v<=lPI3Z9i=S3Yx-Mo;;KTqV$R;!XWcfSr@T>+Q+|sfVw)^L z&pJc6DgYX_ngG5ws*HJ-k`Z_?Z`2Ue8R1}20i>)YHO=JT@YE!X05SbgvIBn7Xoc`p zfQ0fT1aR8AU^UI=Wsc_kDW08*z5TFV@d+9_n#EtyX3eI>qDyB9)pec;D-tx$L;^<0 zH%CdUdAtorCL*}&NzkPcZ3_$AyXb)ZmbyhRIS0!g0Y#fmeeLwASEtvAeGP2clfmb9 zjim$6jwvIJ|4#SC7f+@!xb~dx9h~4KY{eoDO5lwI6{O&-qU(ZvExE4B_2%H1$mn9h zL@W%68)O5I5)sGo#7qpA9s%K=DDUPWHt5=N8|S0>e;LVyuik1k2~U_|QUfz-J`HAZ zvlg$|Okga^kKj^8^^JD58j}Oil8Laym}8c>#B3OvqJpEJX8o&3sR4N-7R9Ej8kDF% zv#qsGl!%Q$%B-(!Nd7#^hAqu!d(|q8cd&JHWIi+e-MnyIK93jiIU;`&7qw;MJVzKw z!^md`ecD2Nj?Sl1#^-2!DqsE>FVts!ZW{IX^KzA!1H62LmxH{##|wAK`iFQCJG)ql zWSFEZVxaM9Xz(BBMVPtJcS@eV$ICOke1(_4$IGwq@&Yf<^70%nM|dFw{iD46JT5YM z)g^w{R>qdjb}XU&@-$8YFn;ScfN8jAGVXF0v&{BccnG@9@J+%hCe93(A0DcJue(&; literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/codecs.pyo b/mailman3/venv/lib/python2.7/codecs.pyo new file mode 100644 index 0000000000000000000000000000000000000000..516d5909ca9689ed438a736629fcf53dfa090f4f GIT binary patch literal 37837 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/copy_reg.py b/mailman3/venv/lib/python2.7/copy_reg.py new file mode 120000 index 0000000..5dc0af3 --- /dev/null +++ b/mailman3/venv/lib/python2.7/copy_reg.py @@ -0,0 +1 @@ +/usr/lib/python2.7/copy_reg.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/copy_reg.pyc b/mailman3/venv/lib/python2.7/copy_reg.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c0e6d6e63cd4125e0056a7609a9a046e1d896eaa GIT binary patch literal 5245 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 Uwcc*F%qpdzWj3b2tybIo4`!AifdBvi literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/distutils/distutils.cfg b/mailman3/venv/lib/python2.7/distutils/distutils.cfg new file mode 100644 index 0000000..1af230e --- /dev/null +++ b/mailman3/venv/lib/python2.7/distutils/distutils.cfg @@ -0,0 +1,6 @@ +# This is a config file local to this virtualenv installation +# You may include options that will be used by all distutils commands, +# and by easy_install. For instance: +# +# [easy_install] +# find_links = http://mylocalsite diff --git a/mailman3/venv/lib/python2.7/encodings b/mailman3/venv/lib/python2.7/encodings new file mode 120000 index 0000000..1250ad8 --- /dev/null +++ b/mailman3/venv/lib/python2.7/encodings @@ -0,0 +1 @@ +/usr/lib/python2.7/encodings \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/fnmatch.py b/mailman3/venv/lib/python2.7/fnmatch.py new file mode 120000 index 0000000..ec3e10c --- /dev/null +++ b/mailman3/venv/lib/python2.7/fnmatch.py @@ -0,0 +1 @@ +/usr/lib/python2.7/fnmatch.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/fnmatch.pyc b/mailman3/venv/lib/python2.7/fnmatch.pyc new file mode 100644 index 0000000000000000000000000000000000000000..242732b1c1b300789cfdbc3bf57c4c3bd6f41544 GIT binary patch literal 3686 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 Y)x5U1Psv<_+sl+|Wu>};~P&WuBh zk|%iN2fzbwNWAhV;1BTw;5)N+l2(;~q}Z9`Gq-c*+)rwMF0_C9BmF$4>E|4NKg2M< z14yDxK#!zPsYjbYD%__{pJa_>on(V#ljI!9b0k|N+cY{yn>CuWN!4kyK@ajbsjix| z+a_I*=Xr9T)Eo^#sYBlreMj^Kj^!RblncDD2}0)`0&KkzqSA(<^*5Gb-Ivrq@pX!sov2;EC0XO09;;zHMSb?I*?>%VrrVi+5*gHUa75 zN#-VV)iINNt84>!V(@rJCo#h$t*(aSJc$dbj%@DXxhNRGqhQblPF)|s@e9K| z%2XKIHdey054O(+BA9MY^9wNt#9ZJN-SC@AcDUt6xs+c9CD}UGI-nu5=QY zutu+(1k81XFEg{I7xQy?umHC(%-aByWwJy&9v#4AJn|mo7pTrFzH_WDJC?1{;GwO< zeeC>%u-Y;g*5|Z#~N;MCrV-FVWGvAE_PKe%p}_?QrI_5@?F#A zhgg1GVL%;}VF#yPr8UgX+m3|W+|Xm?_`4Z1Jl4^v)Wfn|WUj1v@@w9*x8yY{HSwd4 z)N})r$?6koI`j~JPbliGV?}wiQ>O#K25WSxv^PNHSxSTFMnbF6IE}PmSL(8N2J;Nq zaf1a0=K(A`;UK&>2yWkXxUuXm%K1{T#3%UK#-33x%w~-V&GfSRf9mBXI92{4EG#UN zp^J95F9!xxGgR7eDnSl$9+u>zY3eBSr1#J2TE7qC!WhZOMj}Q{ zAEC6LMMzg@pPP^z7k8c#k{y_>%id_d1VEKTz@pn4pvF}t54qgV%HN?+``0*+B7Gxw zuRnU7zVhj?Mu*7g_`^nxF74Jx_xT7WV(_?64}cF`eld5!9$JNJQqjEbo=wW%wDcJmi2M@|Lsd`PdZ&hy4$_m$C zR{ag<(_XtR@VR}okMgbdltv52rki%7FfFG$i9Q!~i%qR^c||0nywEu2NX)E_L*_)w zwAR%{VXvUl*~@D;_(x>XL~MaXR@zA~VUq^00956S9b6BSTn4Z58XLjcyL7H%ROy=3 zD77;b6dC1%_`R1)EO0TYj#P8r#Jj2q_aC!z;#Rs?IDOr8t{WOwH8?*4Df1E&Y%Y3D zZ_!)v7rl<(2Dap_c*}lw8GEkAg`q6sFnp@=g<+JY=$^T0nYQ1q?{#eM!(z8xE6K&W z*xJFr8-Y_G9}irk#R?4Ae*;dE0ef(OK>;_%$D%syG<|~8^v$ZRf1jC|HGn2Z4@6z8 Y)x5U1PsI28}HiQc)jcF zjN7`hPwj~d5<=q0SKz{x0|$@2B|87(+<(7^9-lp+wPR5C!efV~0YQ!V-mL>bvw9G*&9~8f;~XiGm7+ReB8x zRoPmSttFvrLf3@$g!Y(jw@&fRzhJlWNTrvnj{2BXM>m^8Dxmrc@eUB^~GkCQ|v zSvJ&R_B_=VDipG`iGsX4(Br@kz@IOq=>4f@2Z7ZrZo`ZJ#ovytLjQhbS$XS$?k0Sg z4JxLCs5_Ktmz`b0$G>;+nR^&4(G33%y>e&{wB)N7QndTEei<%vk0~qO`>d$PT-h4Y3v8f%b6DX^@2rI{hTu z4-#X`i(S(KK{A-@pf;Zc`Q|8ylTnb~*nAeH&o+~Ie{(#wgDm}M<0fWlBzA9%r#_!; z;4`cfsb%%Psykh#`H%G$hp_)RnIsF_Vufk)Ci_$ZBocL$+BlDr>Bde=Y-S~8=UB)+tV`=GB7BPXL~noQpq|r^eEpZ zr4+*O3ikF9vpp#R7t)Nu@Ofm#z(o-pC!N#-=cX9A;c5Im8i#?6PB;Xaj)V@g$fVb- z?q;bC;#3DIdn%tw4qGlI4!RB!E}`j0%y#WaM)>S`%k?-B(Q=o}zl=s%KE0RcS?;rM zBq%=TjL)$=cKBOl1?S>be1`LmN_FIftInu~s;VyE#ihkJiQoSO0l&k~!zIe!V@DsL zYKZ2jjmr`eY#}5!nC>fC2Vf~`zxbX5vi!3ulGFRZdLc8e|L=$Ue3FuD}P?2_~aN1X-dM1JVR-f;`gM#Okc4IqF3Qw2qLGAq`m59Rm0!;|vi8 z^gv9KT>WsT#UZln=AA5!iXiiB7)=e*k|;B>YiwYp(j$(uK$@`~6TgfEDnO5HJc?Qz z5Q)95fjUBvg$(BADiKzn848@4Bnjh;zk-!_N*7jm6Q9u-I9-+V96IzAvbR@SxMi#8OHDNOX8UkU!AqR^4LUf@j$xPh0%I>; zl3nJF?WcX3do*nxF+yjLW-t|H=0N95&>8r+dZhD@?5M*hiVJ6Y_Nds7T>8~6wxrtD z#KPYe+=({zV!`@SLa87`sjw-9s*L%C^D(?0~&M60i`260i zPWdedW9U&6Py$E5tooZZWKa`pH{C5x5g317#tY=k8#IR-8Z^UL=lhTShWX-Q^8*rZ z0o1{Xx}E}-Lp);aBu@d_22U9y#VyERRQLU!HW^y;AWr+&jDDVHX@6ahb3B7|phuB0 zK|fm8;Q}BZta}0O~ z8C=JZ^l&vG4t0jw8WA(4bZ>98;osY z?|xv4R~3sneqM=x{mab78^G~E2$n6zhjA|4jB&lOpr?Nhw0|DMJE0~w^)K+5Cm5() zSDyMnm7D@C8>-^2;yLE2RbZ(L^jyPU-NmP_JFBHt%vM}iHPxC^#s0D?gJ;QE0=){< zZD4*0XVyT=b6$+;bi%CL>G-U-1b(rKri4|FuRI7PY2;Divr~Mw-Dh==?G@_(zbqsa bTg6NE4u{Hc_$tya&@{Y?TdUSj*PH(Vesje! literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/linecache.pyo b/mailman3/venv/lib/python2.7/linecache.pyo new file mode 100644 index 0000000000000000000000000000000000000000..7db72d9b64b7d066a52bbf482e2ecb6a66f16e16 GIT binary patch literal 3344 zcmbtWPj4GV6o0epKk?RX(xm@fs%naaYNRxg=%K1e3#h4}2U1wKN>sI28}HiQc)jcF zjN7`hPwj~d5<=q0SKz{x0|$@2B|87(+<(7^9-lp+wPR5C!efV~0YQ!V-mL>bvw9G*&9~8f;~XiGm7+ReB8x zRoPmSttFvrLf3@$g!Y(jw@&fRzhJlWNTrvnj{2BXM>m^8Dxmrc@eUB^~GkCQ|v zSvJ&R_B_=VDipG`iGsX4(Br@kz@IOq=>4f@2Z7ZrZo`ZJ#ovytLjQhbS$XS$?k0Sg z4JxLCs5_Ktmz`b0$G>;+nR^&4(G33%y>e&{wB)N7QndTEei<%vk0~qO`>d$PT-h4Y3v8f%b6DX^@2rI{hTu z4-#X`i(S(KK{A-@pf;Zc`Q|8ylTnb~*nAeH&o+~Ie{(#wgDm}M<0fWlBzA9%r#_!; z;4`cfsb%%Psykh#`H%G$hp_)RnIsF_Vufk)Ci_$ZBocL$+BlDr>Bde=Y-S~8=UB)+tV`=GB7BPXL~noQpq|r^eEpZ zr4+*O3ikF9vpp#R7t)Nu@Ofm#z(o-pC!N#-=cX9A;c5Im8i#?6PB;Xaj)V@g$fVb- z?q;bC;#3DIdn%tw4qGlI4!RB!E}`j0%y#WaM)>S`%k?-B(Q=o}zl=s%KE0RcS?;rM zBq%=TjL)$=cKBOl1?S>be1`LmN_FIftInu~s;VyE#ihkJiQoSO0l&k~!zIe!V@DsL zYKZ2jjmr`eY#}5!nC>fC2Vf~`zxbX5vi!3ulGFRZdLc8e|L=$Ue3FuD}P?2_~aN1X-dM1JVR-f;`gM#Okc4IqF3Qw2qLGAq`m59Rm0!;|vi8 z^gv9KT>WsT#UZln=AA5!iXiiB7)=e*k|;B>YiwYp(j$(uK$@`~6TgfEDnO5HJc?Qz z5Q)95fjUBvg$(BADiKzn848@4Bnjh;zk-!_N*7jm6Q9u-I9-+V96IzAvbR@SxMi#8OHDNOX8UkU!AqR^4LUf@j$xPh0%I>; zl3nJF?WcX3do*nxF+yjLW-t|H=0N95&>8r+dZhD@?5M*hiVJ6Y_Nds7T>8~6wxrtD z#KPYe+=({zV!`@SLa87`sjw-9s*L%C^D(?0~&M60i`260i zPWdedW9U&6Py$E5tooZZWKa`pH{C5x5g317#tY=k8#IR-8Z^UL=lhTShWX-Q^8*rZ z0o1{Xx}E}-Lp);aBu@d_22U9y#VyERRQLU!HW^y;AWr+&jDDVHX@6ahb3B7|phuB0 zK|fm8;Q}BZta}0O~ z8C=JZ^l&vG4t0jw8WA(4bZ>98;osY z?|xv4R~3sneqM=x{mab78^G~E2$n6zhjA|4jB&lOpr?Nhw0|DMJE0~w^)K+5Cm5() zSDyMnm7D@C8>-^2;yLE2RbZ(L^jyPU-NmP_JFBHt%vM}iHPxC^#s0D?gJ;QE0=){< zZD4*0XVyT=b6$+;bi%CL>G-U-1b(rKri4|FuRI7PY2;Divr~Mw-Dh==?G@_(zbqsa bTg6NE4u{Hc_$tya&@{Y?TdUSj*PH(Vesje! literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/locale.py b/mailman3/venv/lib/python2.7/locale.py new file mode 120000 index 0000000..92c243c --- /dev/null +++ b/mailman3/venv/lib/python2.7/locale.py @@ -0,0 +1 @@ +/usr/lib/python2.7/locale.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/locale.pyc b/mailman3/venv/lib/python2.7/locale.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b7438444c85c8393ff98f1ae30a436f3fd5b5568 GIT binary patch literal 55454 zcmeIbcX%7e5jT8?D$q2(g>MOGk&NRa$A$I*GQ*qV?k0VbKP0thP$atid%FZM4QZ zE!xDMrL`7q<_heV z$kBRCw7J$%rg!?Zd$C2kEZS{tWatI#v1l(~pGEr>`Tz$kI;decDC8CT0Rt8t0vxvJ z2;iti#{h#C-3YkJqMHE^w8#NG$f5#Z$f6>EEGhwpEgAugTI2%8EE)%tEt&vSEUE%f zmm1)>MRkB@Q3HS~H35?rO#x0=Gz~au(Sre}EV{+oIC#C~el$t9TJ#Y30UoMwo5JmY zJ1n{raF<071Ke%VJ%EQ>^azDVDm)7CXp0`B@L0g(EPA}c697-N=t+PlTl5r#rz$)R z@N|owq3}$=vn+bH!gB!6wdi>Y&j-A~q8BQ>2=HQyUIKWjMK4o$Ip7r*y;9*-fLB}e z8im&a?zQN33aJk3*fC5y-nfmfOlB*PK9>?-fhu)6y6JXpGEIi z_yFL87TvG#A;5<%`iR0u0UxvI;|iYufD@lo_!QvN7JWwHvw+W8^m)J+EczngOBQ`u z;VTMX1$@n-uLHhe(Ki9#vgq6D`5lGtDtr%sDBoB30pN!g{Rr@5i+%$5sYO2n{M@2n zDEw04SAbtz^c%o$E&82${vPlLi~b1slSO|9{KcZb0{&*v-vR%y=%0XpLH*kTHXs2d zt&mbk12Q&c0ds6>QD_C6WmB6{a{*`DG!HP}rUeQM70v;my5|DUvuP2)ACrr1S^^5N zR6Um|oDYB~UI4hzri;|`Vuc*w5}PgsTxQed3d;dk*mR{rJ79%PS1ENh00~wqtO9h{ zv|3>epwp(cfOR&lSI-TAjW%sk*bLZW(^iFR0N2{|0Hv-2TyN7hg)YE$o4OTt0D5fN zsnjk2DzO`YhV?4!0qnJDA7H;teSiZt9R%E9Qy$Q7(}2Pug~JL*6pjLp*)#~a(WaXK zH{0|;1xMjQfPzg!fTB&LPy!(9VTBQeQGjdH7+~C{vQiTY74@ttRa5G?LR~#Qg@!^C zFlo~i;Dk-nfRi>oSm6}l7MpHWcnIL3Hr=Mw?SMOMx>MmUz{701Tj3tS!)Lo~)ivQR=A*PXj#Nre`SiOu(~jdN$xWHa%D2 zd4T8J^a6z!0$ya(iPZTgDBR{>wM>FWyL z0DRM?Zz+5m@Ex1JtMEO*_ig%tQa=Rz$fh3yeqz&40Y9_p=L)|7{L-dhDf}An8=HQs z@H+si^m_nW`v-+T0{&#vpOyNHQh!zWo5J4}{sH)>P5)A`5<=O4M1qnEDL^_w89+8c za}-(ttqD2{fYRF(<^s-6&^(3t>bXE+ApjLT2LQEpu2SbIEK*nuSdyTnfMp3fA8yS(aB+fi07SV&;Zne53A!AxJV93|TnT7T&tO0Z;XsyCJ z!1@Gj0BlUqCWXy_EeYDHa18+EU90c_h3f#4aKz|9GIpn?N*+!pi_JPtYqAUa9aZz^fDV8im&a?oH6^0IyHb8vyqu=#2_*Qg}1qEeU$7 z!rK6EPtZG*dM5yr{<{?3t?(YedlU3Nh4%wKkf0AL+^_HGKzd|crZ z095Id3ZDXeIzgXN>a&2)CFt`CUr_iW;7bYmvcgvYUro^0l=?aVC458Sn+o4j_%;9) z{EkxJRrns@`w991;D-tN5#YxO`U&8t3Hq7B&lP?F_+^5A1^9J>exvYP!0!_Dd!_yW z_+x_pr0{3JUlR0Jg}*8M9q^9?{S)x71X)P|8-V#Jp^#Ka0We{vmC7h&0dtbn0%%Rr zSpbyRrZ89GY{0xE%~x0eSeT@9lsXrHDeF9iMS#UgS^`*_q-6@{D_j7$Fi95yE>2QT z;S#{5NxBShd6JeZTmiT;N$pClQ0gkBu2xtHSe2v>h1Cjc0G&x%tFR6LBWk_E28E3Z zn*f`Wv<0v=N!I|bP0|Atu2Z;PVH=<;N!tP4N!kJENzzWht|aXS^d@PK!d}3>B<)w| z0~|=wLBI`3%ByF;!T;FonAThaCh1iQuU2@C!fOHdCh2uby`6PWo;fsJTCF#owUs2Dm0ub|S3SU?F2H=}X`WE2ZN&1e$ zcNM+|_fZcuOwNijbx`Np^yZmQj}K6C}aV1Qq-c*s&E#dEk$zy zXQyZ$0PEuU3JVk#Dx3p2H$~?uECMV}(GtMY6fFaspP~x@7pCYUz{M%b0WL|=r2s4r zE(2ViqUC@qQgkH%ONDlY6$)1Yu1?WPg;ju#6s=Zj4FI`xDy&sl2SA?d6*d4irf8E= zn*m!=v{m66g=-Za0Jtti*DGuTbfsuJpgTo7lwj3_w#J2yjyLAcca$5TKYMQYZn2 zQ#1k?O_2*2OVPMO88DHe3ZR;zn!<5FJw+a%k)kGGGDTB>6DgWjI0<-gicTrq0zi~o z6&?b3Xo_xAxE*juitbdnOW|RFyHj+J!ow9Fq3}q+qf+!}g~tFMo1(`lJRX3x#S;{s z2zXM8o~-Z`g{K0ZmZGNvkjpaw&rH#?0LbOp3eQn^F5r17dcML707&pcg%>Hj7=Yw2 zQFtlfWhr{OQm+8KGDWXac(uZ76kZFsH$|@lygo&5Q0hLw8&mWqz?)O_77cr=dcFOwNYN(& zpGwiEmHLcQpH=uA;PWZ^0^o}&`V!#FDf)`SR{>v3(boarNYOU|FeJXEp5F!_=63+! zP0{xN-%rsG6n+T!QHp-7)K36EP0`O3ey;Efz%NtuE5NT)^c$sqtMEGj68v7NKPdbW z@TV008Ss}B{T1-H6#X6Wj}-kA@UIkEX#pF61zbWQsgP1g12SpKD$G%60ko#+EI?bD z<|>>GK>Owa=BH@^U}2ih0e~UrDx3#Ev5NqRvRGjWU}>6`0g&1G0OWFk!i4}NzeuTz z0l73?qMnxmklAGlmuuK^0CKrP;Yx*ez=||orEs;vO2Dc#bttS>SOe%x(^|l~G_410 zNYh4zO@Pg5+M=)(a7~)7Rq6o%q`OYxdWCHO`l`?h5ZVB3I_lO({uwMpQe6=0l=X&9acD^a1?MXO@j(ID%=FPIZY2#aMbfbfI^yv z0L3&Bpp>Rzz(|@#0dAVc6vh?GfQd9!6sig}!0|NI0bZIKN;MTG0aIx@p)jp*67b+O zol>|3aBG?#qSQkHx25TJ0P?&;;ZDF^X?hso?lj$_@NmE*()38cqtf(f^?ZzaJ{Ewz z-^VFDUf~IVC#LC1fG4NvDS)S@>1j$mUEvuD&jdUxP0v<%4&b?IdY)3xS9k&7g=u<` z!ixbfNz+ReUZ(JJg;xMxnWk4Myc+PDG`&{gUWL~IUZ18nDBP#;M!=iW^k%?Y()3oq z+tT!Qz&q0PPK9?Vyc_VIG`&~heG2ba_yFL8X}TZqp)`FMfIZ`n06v2rY3r|AoTFQ(~BN_|=3D}b-2>1%+mr|BC2WcE#kZvn6?{cVNs z0KS{1?|sDp?QG$8Cn2Xn4xnN&IO#8p+$hj8Cn8ZnxSQY^D}e-;KB@Dq;N4H zm!V4lmuBcPz~vcQ4!9zN!(psXGt>@hMTV{dT%DnnfK?gl0Ibf?8bD`;)&kaLXgy#< zhBg8=WoR>CONO=ruF24~fCpsgI>7ZA+6L&#&~`v~hIRmYGPD!0D?_^hy&2jA*qfn! zfc+Wj102ZELBI_e$^-f{Gypi1p~HY989E9$mZ3qwjTyQLaC3$p2yim=AV48QLrN6^ zl%Wz}I71_V(G0nOu?&p^${CsfR5DZr)G~A&P|uJDXk@4fn9R@=;6#R|0Vgx`V8E#i z-2%8ZLk|HwG()!mZqLvifIBmE7vNzTx*Kp$h8_-hM1~#-cvOZS4R}n39t(I}h8_=i zLWZ6Qcv6O*40uY0o(gzchMo?1MuwiL@GQWyGxQw5b2Icj!1FWo0>BG1^di8EGxQR` zOEdH`z{@lA3cxEf^eVusGxQq3Ycq5&;B^^#J>U%)x)1Qi47~~P<_x_B@YW2y4e<61 zy#w&h4805R?hL&L@ZJo)5AgmBeE{&m4BZd-P=-DX_(+C63iw!tJ`VUqhCT`SRE9nc z_)LaA3;0}yJ`eaphQ0{+Qii?^_)3Pp3iw)vz7F_ChQ0~-R))R}_)dnt3;14!z7P08 zhJFb6QHFjD_(_I-3iw%ueh&CWhJFe7Rfc{I_)Ug>3;11zeh>IVhW-fnQ-=Nw_)CWV z3iw-w{toy@hW-ioSB9)CR##a{0Fqfs0n%B@0J2${18B)oE8wgwwE^a4>1?IuDK#Ik zAWI7Y=Va+zzwh zxWWL~mZdJh_AGS+c4Vmsuro`$0K2o)3)qvTy?}jL+7IZ<(gDE1EZqReXQ>}BkflR_ z!&y24IGUwnfWa)?2)HRrHv=A+B?s`JEENDlSt#-EXr=d<5;E2h+8RfiN)$ftz4QYRT^BlSBg})FeA2G zDVCdDbH8m|Y;K}ZndVF;s+IC|uIZI1T41Fxf%shWi9!u694$?7p_7GjQ}S^eg(2{S zGpZFlsal*1Qf;r)P-e8R$PG6u#fDq0bmV#)xkA~i=7MTbX}HiVH_*6ZmC#C0@-39h znu&HuP`{ki4b64`h5z~*b8t1xX;xgMEfwLG|IneA`g(P3x-nXUD@C=Mr$UaTcgL z`rPNPG(htzRx6VYh_vN3>cwigY}_Y?>l2Nn`ZrR*LZdot9Bv~6A72*d22KZgpf`k9 z#U?6NDNaj8DlD~S_hdUqN87m<8~k&X`w;xPTuql-fjevXVfMJ(7?45L_VREo=lTRR{khM0BKr75qss+%>SNkMEo5EZT zJ6oxFO3hblfx<%dJV&W>l{(Mb*x$a0t3&wl2O9Sk2F9xEa^x1Fa9H1%|MI0qvtIFX z&=aM)Thx(Qt&|#t`m~>Xl~*ej-C+dQ3Uvr_qg408OoU;=&5?SwS>t|0$yQ??eoSXN z-t@#!wJg0;aXfdV;?$~MrNJUlbBdk=i7Y}KJ@Ki;eA*BPs>2C#KN}v%q*QZ;rX8IwUPdrVEil_HL!2xs^r=4R^96#cGLF&kcPzyIMRut~!!CT>WU(5iM4AjLD`4 z)#Y*W#sa^habF%m!}UVZA$P=WctNaqMNNs3m@~A4kpHQQ;K6(i{=CcaW2NWX+5gMG zB8xWvv9OC&UjWA`k>K&HRbRrR1af_Q!ZPz34;2-*KuxrRd8Lt3eWi};2lPRnMEsNv zWru~Z3(9)3&?tGUk2fKKGVRHXj%)W!|1=cj)5PovLhHY2w`Aijlg3lpun3>&}s|!%rxyDqL z)5#nMCV^>{u~nM0abrom*PZCnZTtNgwaE1-g2JqZp5F=P*$qQnVLTlF6KU( z>^GJ`aiw_*@f-VZrN*eOg5OFQ4uwW;s5DxbMC;jFKvRtVDolYVA)~ZGToGxYcjgV` z!CkmEec{$M{*#~oR7_b{pgL;EScw)pW6!sx%aZWrzaod$@q>=K#kNkA zxb8b{zS+7ZVV#mDu`zrZ2ls=cg_e=UDYURs;SCZu;#umv&;I1!JLpBgZ*x zAK#Db@!&`TZv3E(<8!SeoShC{nT$QQY}^V4rAs+8DYU2HnP0;{OYtMq{$VyD)u`dn zfqJtf+2qgX7(C$01+U?-uBsz9nZgWl#%yeygM5RzD#+Xer!0@>Wea?rn`pCB_-nK0 z*)8}@t3u%6!Zq#2pSKb6=}V4q7Yu^-1y5_ZTc5C&-jZZKu`lkdC#@PTsi)wZvQDKe zuZMdEM#nG|3A-}ZQanb$y>U|H55k8oOtTvuaw^Roa`7!0c0o=n8MaM8@^99HsdCF4 z>%>v+DP)eQJ8s@%-O|FT+q^ePQCt9?X}}C|KhsFXX)Ws@cjp{y4Ap|8#X9R^B)5Hc z4iSz&-8urY{*N#k$MBP(Vqn;*taU1BjiGvTxb(%RGS*_Qc9JP}h&ODgCFgR3+j&&> z<*&wXo=xifCH%vkuErc2^D^*rI-4-t*L1F3w|>LMO`Erfh1bqHJI^CREXF!((wbPc z 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/no-global-site-packages.txt b/mailman3/venv/lib/python2.7/no-global-site-packages.txt new file mode 100644 index 0000000..e69de29 diff --git a/mailman3/venv/lib/python2.7/ntpath.py b/mailman3/venv/lib/python2.7/ntpath.py new file mode 120000 index 0000000..5659ae1 --- /dev/null +++ b/mailman3/venv/lib/python2.7/ntpath.py @@ -0,0 +1 @@ +/usr/lib/python2.7/ntpath.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/orig-prefix.txt b/mailman3/venv/lib/python2.7/orig-prefix.txt new file mode 100644 index 0000000..e25db58 --- /dev/null +++ b/mailman3/venv/lib/python2.7/orig-prefix.txt @@ -0,0 +1 @@ +/usr \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/os.py b/mailman3/venv/lib/python2.7/os.py new file mode 120000 index 0000000..950fc8d --- /dev/null +++ b/mailman3/venv/lib/python2.7/os.py @@ -0,0 +1 @@ +/usr/lib/python2.7/os.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/os.pyc b/mailman3/venv/lib/python2.7/os.pyc new file mode 100644 index 0000000000000000000000000000000000000000..52ec9717744a576cea33980147f35a73d2898ffc GIT binary patch literal 26335 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/posixpath.pyo b/mailman3/venv/lib/python2.7/posixpath.pyo new file mode 100644 index 0000000000000000000000000000000000000000..3a87f02249ee3cdf436e4db21ba6e80ceefacca0 GIT binary patch literal 11696 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/re.py b/mailman3/venv/lib/python2.7/re.py new file mode 120000 index 0000000..56a0731 --- /dev/null +++ b/mailman3/venv/lib/python2.7/re.py @@ -0,0 +1 @@ +/usr/lib/python2.7/re.py \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/re.pyc b/mailman3/venv/lib/python2.7/re.pyc new file mode 100644 index 0000000000000000000000000000000000000000..98a37b79718b8f7edf4eee9e24d0b564e1e142ee GIT binary patch literal 13665 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 z z&p1*VD^(sY6~f^S+0e7ND1?J7X{sxrci5*8P@Zz-nMqGbt-Ey-6K5G&FkqIvYw;J6 z%^{Hc0}d;j>?2&eD<0C&we@ggv)PK`_C37Q>uhcB?0z#jHGO^N#?4P=KmBa(*8J^- zUpuwMrO)r&{i1&1;-$-Pz5UL+@4fF)th5jXH@46)+(3Hvpv2`rD65?X1xX`+!_Dho zO{wLwdQedh`qX{=E33^xm7L-=K(JX>$pXLiK!%4H{pvke;fo(UJD%S-rS6?lcRY%0igq?d4-kr$(dDe0{ebt?!`FS5EYAxt(xUcPYQLdtC|OEN0HPvTTsdP#B{ zIYDU!2%`AKNFbdy;xOuoZ%HQ=Ygvrptx)Fky10BCNDhI(zmo1VIH~eTX`pnnG=ks5 zA43q}bNU;KicBr3laSJ?G>$_=yH`ba zed;7f_Nxa2>OQ`_Qfl*%N;i0oop1EZd4K|@1S567U)Ap1`;F>DF3hjEzU5b3Xy3($ zNZ<&B2KGT!lD{PalD}3cEkNoR|80pME1^RTio7vm<(vLNW%#zMqP{Kj@$U1APoL&f zj0Yhs?N0O(<{Opy{zsJ_48p*Ss{4a72A_^`pX;UU8Eyy@WzWh-Q?H5@IwJOn6Zfl) zqbhq&eVp7bVQc9JCGKV4Cc%YBxIlLFlMAb0Cs5m`t{NgWfzG_3D193On06!c=1{)y z$*YdZ8t{WCLtgkH=r!iT&y7TS5hKl;b~o>uzpk`#Exh0UQPpD@B?j^O%+%6Nfo8Vb z4xCfGPi19cL#h-FQ=bwn<2}7?5jb6a{7}Q zNAo#dlS7+Z~9R=KsQx zUgdD8;V=~Oc&So)ru16rQ0Z`Kur!K0qoqC^Be?%O{vO7iBRKPKU+GwRpmek(ib^Fd z6!lNhfM&AFB^DFv3Y1ghhQv-nGprs1_4srWs!&lIVo6!mz|E3X1@i%A1FFymRRB!; za#cW83R6%Cpq}`0@K0pMLxmFHfmn;H)I*68=Bt#3bDE2zeAa@@xxfZ*Q^F{k13*us zC0C8y--$?_E4c5FS0YAZBR^#GW1b}Kl7i3_nolGV14XL|;`f;!q$H}!6hU8)7$^id zbM7NQrg1H?hh@F-S74@?$qh8cCl%h^1R&0J40C31f~8Rkue4AhDYo7dhU1}f2*oGc z90QStp?;j(q7JL_5fhK>*}@ziP<94A0tTW7W_=`qDK}Uui;;)DrLn#$@WL&2sRw&45hu&s0c!O&+3=!MTQg4I|4HL)@A5Gy%U&blGcfDd& zAazKa-(#2Md)$h0YQn&fgG5KD;yh%N|BefcLGLEsOaLbp)dI|5VGQOP6}6`5j*ZKF zh->&rfN4NA2Gov2v|az|Qwc-{)dR!=@VJB08`tRCN1KA1uueeYagrIP7dL+1Fmz24 zA@nHSn^br9^yfTJ^^n8&;^NhN2Xb|XC47)+U``wOWE^<5PMfb@1XEJIpK>PWr#}(T zR$H1{m|R?(appxCstm%!@)#c{ZZS)pTe$7a^BKj{40iA}a3qQ#Hx|q{z~ang29%ER zM$F96S;-$0%7Q>+T8Vs9XAr~dyoa_pO`(aPm%?1z2Sdy{0XGxnB z+v^ElW13aSYx^gIA@!`$Ky@^0G%gc|)CC2vHv}&?QW}D%8!cTfA1$3WHj8kgHVCBt z4Hv|WSey-9ASM+DNHvo19-0J%0d|nw&R-HE7FPo*{a7t9z~ut5c%(w9_UA6ue0I(?DR-Y&IIkq4KSc^EppAjB5oHL~!C- z`3*BlE%>61P(rx~*hvHxf(3zsp>&5tq^wA}n!=DHb0t(~|Rs^961^nXtJl z;%$kfM%$44Ce~|GPq$z(pNeGp%3AV>;(SSBvS?{{2Z>)5X3hc<^%mk!>NOm z zaEK#O{E^|!rUZ` z+ZZ2FPWc@P>xzDoR5%lOZelxJm=}8vJ&Z%fI%K}XkXA&z9_(0#89=h+W#WB;TH+!B zJH9sj247Pkv?Qt=8VSi+BF&H0RXs0+qD zIz)y611=sv79c~e8mNA>itF@`a2jAJfL{jwz!Hd}{|J6Z vhen?o?H?ItGB7$g(ucc!(3$ek=s;@all@< zC&~T!4iVp{$K4{mbeMwEc}tnDNHnkk41;EP=lHmU=FkF;!wYN#m=X8_SfJS%p6i3M zc}}t(LY3c4^`O%3F{G@VtGeEM6?8tLzLZ|sAf^4Gs2NrAjHDEw>T=76`M`ZT7K^HZHe=b$Y4p?^d6$?LV#Er!;Xl UI$!%<56;{aXquDE`3XB?znyDK(f|Me literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/DESCRIPTION.rst b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/DESCRIPTION.rst new file mode 100644 index 0000000..39586d2 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/DESCRIPTION.rst @@ -0,0 +1,36 @@ +pip +=== + +The `PyPA recommended +`_ +tool for installing Python packages. + +* `Installation `_ +* `Documentation `_ +* `Changelog `_ +* `Github Page `_ +* `Issue Tracking `_ +* `User mailing list `_ +* `Dev mailing list `_ +* User IRC: #pypa on Freenode. +* Dev IRC: #pypa-dev on Freenode. + + +.. image:: https://img.shields.io/pypi/v/pip.svg + :target: https://pypi.python.org/pypi/pip + +.. image:: https://img.shields.io/travis/pypa/pip/develop.svg + :target: http://travis-ci.org/pypa/pip + +.. image:: https://readthedocs.org/projects/pip/badge/?version=stable + :target: https://pip.pypa.io/en/stable + +Code of Conduct +--------------- + +Everyone interacting in the pip project's codebases, issue trackers, chat +rooms, and mailing lists is expected to follow the `PyPA Code of Conduct`_. + +.. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ + + diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/INSTALLER b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/METADATA b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/METADATA new file mode 100644 index 0000000..83d3c03 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/METADATA @@ -0,0 +1,65 @@ +Metadata-Version: 2.0 +Name: pip +Version: 8.1.2 +Summary: The PyPA recommended tool for installing Python packages. +Home-page: https://pip.pypa.io/ +Author: The pip developers +Author-email: python-virtualenv@groups.google.com +License: MIT +Keywords: easy_install distutils setuptools egg virtualenv +Platform: UNKNOWN +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: MIT License +Classifier: Topic :: Software Development :: Build Tools +Classifier: Programming Language :: Python :: 2 +Classifier: Programming Language :: Python :: 2.6 +Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.3 +Classifier: Programming Language :: Python :: 3.4 +Classifier: Programming Language :: Python :: 3.5 +Classifier: Programming Language :: Python :: Implementation :: PyPy +Provides-Extra: testing +Requires-Dist: mock; extra == 'testing' +Requires-Dist: pretend; extra == 'testing' +Requires-Dist: pytest; extra == 'testing' +Requires-Dist: scripttest (>=1.3); extra == 'testing' +Requires-Dist: virtualenv (>=1.10); extra == 'testing' + +pip +=== + +The `PyPA recommended +`_ +tool for installing Python packages. + +* `Installation `_ +* `Documentation `_ +* `Changelog `_ +* `Github Page `_ +* `Issue Tracking `_ +* `User mailing list `_ +* `Dev mailing list `_ +* User IRC: #pypa on Freenode. +* Dev IRC: #pypa-dev on Freenode. + + +.. image:: https://img.shields.io/pypi/v/pip.svg + :target: https://pypi.python.org/pypi/pip + +.. image:: https://img.shields.io/travis/pypa/pip/develop.svg + :target: http://travis-ci.org/pypa/pip + +.. image:: https://readthedocs.org/projects/pip/badge/?version=stable + :target: https://pip.pypa.io/en/stable + +Code of Conduct +--------------- + +Everyone interacting in the pip project's codebases, issue trackers, chat +rooms, and mailing lists is expected to follow the `PyPA Code of Conduct`_. + +.. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ + + diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/RECORD b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/RECORD new file mode 100644 index 0000000..39ca058 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/RECORD @@ -0,0 +1,483 @@ +pip/__init__.py,sha256=OQB9eSOv7HjK2W5VesX26tKN8uvMhvPaXoM4HuoiKn0,10604 +pip/__main__.py,sha256=V6Kh-IEDEFpt1cahRE6MajUF_14qJR_Qsvn4MjWZXzE,584 +pip/basecommand.py,sha256=4WPEhwtMgVGe4ahlr4Y2JyXJ8chjBmYlU8RCa0sQ5bo,11648 +pip/baseparser.py,sha256=Nlc7Un9gat27xtB24SnKL_3pZZOoh62gNNRdS6tDRZY,10465 +pip/cmdoptions.py,sha256=pf24iszA39rhcJ5DjFA4oD_z5vTI0NG98qUahHs3qPM,15878 +pip/download.py,sha256=oJ3sZ8I6ct9X3eoXQ9xm_Ne0e6N85G_rWaERmMCVF2k,31722 +pip/exceptions.py,sha256=GdDhHOROBj-kW2rgerLJYXsxN8ENy1BX5RUb_Vs9TXM,7980 +pip/index.py,sha256=DsxoKRxoL4oEdaqQOctou0HN1rciulGp0EBcHtnyBR4,37235 +pip/locations.py,sha256=MqUzS8YI2wDa7oFzTQw4zM4s0Hci05yubxfU_kTXXlU,5632 +pip/pep425tags.py,sha256=elib4cgVtzTw8CUJ8IxoX1mkaeLxS-2XHHqkvS5ryZM,11853 +pip/status_codes.py,sha256=F6uDG6Gj7RNKQJUDnd87QKqI16Us-t-B0wPF_4QMpWc,156 +pip/wheel.py,sha256=wO99S_aDXkjyActzGLOw0cV73YFLXjz740oD96wXyXo,32216 +pip/_vendor/__init__.py,sha256=yzwJqv89TDqeqqWRgBlZZmiAc5sTNOrdIMgF0MT8TWI,4647 +pip/_vendor/ipaddress.py,sha256=FngG_V6As8JnDJVR1g1i0D6wVa5ycSKJYOh7IrI4fq0,79904 +pip/_vendor/pyparsing.py,sha256=cBtJbRYQNhvtw0IqoLvDUzW-ZdgfRFVm3QD2O3-jlz0,158096 +pip/_vendor/re-vendor.py,sha256=PcdZ40d0ohMsdJmA4t0AeAWbPXi1tFsvAwA5KE5FGeY,773 +pip/_vendor/retrying.py,sha256=k3fflf5_Mm0XcIJYhB7Tj34bqCCPhUDkYbx1NvW2FPE,9972 +pip/_vendor/six.py,sha256=A6hdJZVjI3t_geebZ9BzUvwRrIXo0lfwzQlM2LcKyas,30098 +pip/_vendor/cachecontrol/__init__.py,sha256=uz7Oxs9hQmUxtxod1WyVoUj6Jab7NfiLECPHFuc-22U,302 +pip/_vendor/cachecontrol/_cmd.py,sha256=MPxZfZd2LKDzVrs55X3wA1rsI2YuP8evLZSwQj0dIk0,1320 +pip/_vendor/cachecontrol/adapter.py,sha256=eizWWJwOnG5TToxL-XiEywPEf2k20--e-5C6u6wAEts,4196 +pip/_vendor/cachecontrol/cache.py,sha256=xtl-V-pr9KSt9VvFDRCB9yrHPEvqvbk-5M1vAInZb5k,790 +pip/_vendor/cachecontrol/compat.py,sha256=uyovOpd1ehI3J1XeBqJvcsIp6fvkjBpoQmu_0J2st8c,416 +pip/_vendor/cachecontrol/controller.py,sha256=Aky7U9UZ1VqutfvilljlWi1uk40yis6lmaz8c_wQLw8,12996 +pip/_vendor/cachecontrol/filewrapper.py,sha256=jkC0GOorbWIpy9CzP3PwxSHx5J2CXBAxNbGH68HmP1M,2168 +pip/_vendor/cachecontrol/heuristics.py,sha256=WtJrVsyWjpP9WoUiDVdTZZRNBCz5ZVptaQpYnqofDQU,4141 +pip/_vendor/cachecontrol/serialize.py,sha256=vZQ-Rsn4618ATipqqZJ-Hife2qVzpIepNjxTCUM-eAw,6305 +pip/_vendor/cachecontrol/wrapper.py,sha256=Kqyu_3TW_54XDudha4-HF21vyEOAJ4ZnRXFysTiLmXA,498 +pip/_vendor/cachecontrol/caches/__init__.py,sha256=uWnUtyMvHY_LULaL_4_IR1F_xPgK5zHfJyRnBq4DnPE,369 +pip/_vendor/cachecontrol/caches/file_cache.py,sha256=FsDug3bwUAQ3okjjfGzxlDaBf2fwVSn1iBKMTL6SyGU,3532 +pip/_vendor/cachecontrol/caches/redis_cache.py,sha256=XywqxkS9MkCaflTOY_wjrE02neKdywB9YwlOBbP7Ywc,973 +pip/_vendor/colorama/__init__.py,sha256=9xByrTvk9upkL5NGV5It2Eje4-kzNLwa_1lGPWpXoNU,240 +pip/_vendor/colorama/ansi.py,sha256=Fi0un-QLqRm-v7o_nKiOqyC8PapBJK7DLV_q9LKtTO0,2524 +pip/_vendor/colorama/ansitowin32.py,sha256=gJZB35Lbdjatykd2zrUUnokMzkvcFgscyn_tNxxMFHA,9668 +pip/_vendor/colorama/initialise.py,sha256=cHqVJtb82OG7HUCxvQ2joG7N_CoxbIKbI_fgryZkj20,1917 +pip/_vendor/colorama/win32.py,sha256=_SCEoTK_GA2tU1nhbayKKac-v9Jn98lCPIFOeFMGCHQ,5365 +pip/_vendor/colorama/winterm.py,sha256=V7U7ojwG1q4n6PKripjEvW_htYQi5ueXSM3LUUoqqDY,6290 +pip/_vendor/distlib/__init__.py,sha256=7B6hxGONsbhxuy9NCkPGnXHuuV4EVLwRGl3qwkXrEn8,581 +pip/_vendor/distlib/compat.py,sha256=13653e8hB0lLj87tSxctbi4I9zC3VtCjJxjwQ3yxwAI,40660 +pip/_vendor/distlib/database.py,sha256=rZHwz4NcZZ7HtXH4SNca6ITyYBSvalvPXZmIj1BjNP8,49671 +pip/_vendor/distlib/index.py,sha256=qU38JCRI5F_1Z-QmydiocDE58d4KvHzKjS_T0dBsPlg,20976 +pip/_vendor/distlib/locators.py,sha256=LhEPbiagqlvOA6PWGuN-AGVDeakS3ykStoe_OYBkAUE,50493 +pip/_vendor/distlib/manifest.py,sha256=JF5EstaCOPnsW2tUdXCdjIFn-Zkf48Dqw0TcxKjuni0,13598 +pip/_vendor/distlib/markers.py,sha256=iRrVWwpyVwjkKJSX8NEQ92_MRMwpROcfNGKCD-Ch1QM,6282 +pip/_vendor/distlib/metadata.py,sha256=UJdzZIbC6Bkp1H9BtiOLXzph6HVujHKcUW1yDgO9oJ0,38702 +pip/_vendor/distlib/resources.py,sha256=7hQ2OgeRRwMrU81hztflAy3b0no-JOtUGCAIC8GImtk,10620 +pip/_vendor/distlib/scripts.py,sha256=ZVGGXYJwW06rIT5gOhO0fvc5CO2Q89LVVNYNF2XVcIY,15223 +pip/_vendor/distlib/t32.exe,sha256=rOJD6eDYk88TJ5lJtyt58El-nYNip4UvnYIDJ2y6QNs,89088 +pip/_vendor/distlib/t64.exe,sha256=qDBQu9uPHCVdBFM6ANg-Xp9nc5Wz_iFnSmsCTvdEQec,97792 +pip/_vendor/distlib/util.py,sha256=DXYa1CiOqPEJE77L6bx6mwNiQE1ayU8LCr2ux8mLBMo,52032 +pip/_vendor/distlib/version.py,sha256=_XjbARzhJfjH7MyFyBr3X5NWzSt7pY73la5KCWbD4Sc,23711 +pip/_vendor/distlib/w32.exe,sha256=LrnXXqK-Yb1tzS0lxymvQPiMlkQZWAB0eHM5jnL0mAk,85504 +pip/_vendor/distlib/w64.exe,sha256=GbKq4oBmzHZXdcpaLupKLenmQD7_DXsYX8PDPWo_U3M,94208 +pip/_vendor/distlib/wheel.py,sha256=UP53cKxOM5r7bHSS-n5prF6hwJEVsMW9ZNJutOuC26c,39115 +pip/_vendor/distlib/_backport/__init__.py,sha256=bqS_dTOH6uW9iGgd0uzfpPjo6vZ4xpPZ7kyfZJ2vNaw,274 +pip/_vendor/distlib/_backport/misc.py,sha256=KWecINdbFNOxSOP1fGF680CJnaC6S4fBRgEtaYTw0ig,971 +pip/_vendor/distlib/_backport/shutil.py,sha256=AUi8718iRoJ9K26mRi-rywtt8Gx7ykvrvbUbZszjfYE,25650 +pip/_vendor/distlib/_backport/sysconfig.cfg,sha256=swZKxq9RY5e9r3PXCrlvQPMsvOdiWZBTHLEbqS8LJLU,2617 +pip/_vendor/distlib/_backport/sysconfig.py,sha256=7WdYP0wbw8izH1eAEGNA-HXUyJrhzIAGK_LniUs4UNI,26958 +pip/_vendor/distlib/_backport/tarfile.py,sha256=bjyTNONZb-YEXrHFLExOSuagtSOoPaONP2UUoxwkAqE,92627 +pip/_vendor/html5lib/__init__.py,sha256=emLYTm9_7OPnOInA9dPc4IIVF7GWA5tpl2H_bLqVoWk,779 +pip/_vendor/html5lib/constants.py,sha256=B5LN2DMP-6lEp9wpON4ecX3Kx01n_cbMjuGd6AteixE,86873 +pip/_vendor/html5lib/html5parser.py,sha256=o9FOrhdLGYOtUhsueAsuXwduydagASvwxJ0lUpGYrYg,117347 +pip/_vendor/html5lib/ihatexml.py,sha256=MT12cVXAKaW-ALUkUeN175HpUP73xK8wAIpPzQ8cgfI,16581 +pip/_vendor/html5lib/inputstream.py,sha256=ss3wjtlObOVoVGWFsBztYdpnUqRaezyJ0sTXfdb4Ly4,31665 +pip/_vendor/html5lib/sanitizer.py,sha256=sbyGySzFzCD_v0JYYSr6sLYVLpO6bpVmRiDMKbFRcCw,17804 +pip/_vendor/html5lib/tokenizer.py,sha256=6Uf8sDUkvNn661bcBSBYUCTfXzSs9EyCTiPcj5PAjYI,76929 +pip/_vendor/html5lib/utils.py,sha256=PSVv1ig9oAZa-DU16DT4cbbggnG7K3qQIkPm6uJKxFg,3267 +pip/_vendor/html5lib/filters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +pip/_vendor/html5lib/filters/_base.py,sha256=z-IU9ZAYjpsVsqmVt7kuWC63jR11hDMr6CVrvuao8W0,286 +pip/_vendor/html5lib/filters/alphabeticalattributes.py,sha256=fpRLbz6TCe5yXEkGmyMlJ80FekWsTR-sHk3Ano0U9LQ,624 +pip/_vendor/html5lib/filters/inject_meta_charset.py,sha256=xllv1I7unxhcyZTf3LTsv30wh2mAkT7wmTZx7zIhpuY,2746 +pip/_vendor/html5lib/filters/lint.py,sha256=8eJo0SXDcY40OhsNd0Cft36kUXCZ5t-30mNFSUf4LnE,4208 +pip/_vendor/html5lib/filters/optionaltags.py,sha256=4ozLwBgMRaxe7iqxefLQpDhp3irK7YHo9LgSGsvZYMw,10500 +pip/_vendor/html5lib/filters/sanitizer.py,sha256=MvGUs_v2taWPgGhjxswRSUiHfxrqMUhsNPz-eSeUYUQ,352 +pip/_vendor/html5lib/filters/whitespace.py,sha256=LbOUcC0zQ9z703KNZrArOr0kVBO7OMXjKjucDW32LU4,1142 +pip/_vendor/html5lib/serializer/__init__.py,sha256=xFXFP-inaTNlbnau5c5DGrH_O8yPm-C6HWbJxpiSqFE,490 +pip/_vendor/html5lib/serializer/htmlserializer.py,sha256=G-aVHmlR7uMR011jO0ev7sZvkVHpLr3OrLSYMZ7liVs,12855 +pip/_vendor/html5lib/treeadapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +pip/_vendor/html5lib/treeadapters/sax.py,sha256=3of4vvaUYIAic7pngebwJV24hpOS7Zg9ggJa_WQegy4,1661 +pip/_vendor/html5lib/treebuilders/__init__.py,sha256=Xz4X6B5DA1R-5GyRa44j0sJwfl6dUNyb0NBu9-7sK3U,3405 +pip/_vendor/html5lib/treebuilders/_base.py,sha256=Xf0FZVcVwIQS6tEseJdj5wKbYucbNCnbAsnsG4lONis,13711 +pip/_vendor/html5lib/treebuilders/dom.py,sha256=jvmtvnERtpxXpHvBgiq1FpzAUYAAzoolOTx_DoXwGEI,8469 +pip/_vendor/html5lib/treebuilders/etree.py,sha256=etbO6yQlyV46rWlj9mSyVqQOWrgoHgyJ01Tut4lWZkk,12621 +pip/_vendor/html5lib/treebuilders/etree_lxml.py,sha256=z3Bnfm2MstEEb_lbaAeicl5l-ab6MSQa5Q1ZZreK7Pc,14031 +pip/_vendor/html5lib/treewalkers/__init__.py,sha256=m2-4a5P4dMNlQb26MNIhgj69p6ms1i-JD2HPDr7iTfw,5766 +pip/_vendor/html5lib/treewalkers/_base.py,sha256=9nXtXtgubdWKFlKxhVzWarE0Hiv3T4VC7_Wt9ulVzB0,7014 +pip/_vendor/html5lib/treewalkers/dom.py,sha256=Lb63Nuz8HtgvkuuvSmU5LOyUkEtstH5saPPAg5xN4r8,1421 +pip/_vendor/html5lib/treewalkers/etree.py,sha256=966h5cOYPwQIcHjxJmVP5cDOnWKiyqpyt9QKQo9W-uo,4597 +pip/_vendor/html5lib/treewalkers/genshistream.py,sha256=IbBFrlgi-59-K7P1zm0d7ZFIknBN4c5E57PHJDkx39s,2278 +pip/_vendor/html5lib/treewalkers/lxmletree.py,sha256=am6t_JHh_Fpm10CaW-zDaGGsDwTPK3Pas7TRBezFs4w,5992 +pip/_vendor/html5lib/treewalkers/pulldom.py,sha256=9W6i8yWtUzayV6EwX-okVacttHaqpQZwdBCc2S3XeQ4,2302 +pip/_vendor/html5lib/trie/__init__.py,sha256=mec5zyJ5wIKRM8819gIcIsYQwncg91rEmPwGH1dG3Ho,212 +pip/_vendor/html5lib/trie/_base.py,sha256=WGY8SGptFmx4O0aKLJ54zrIQOoyuvhS0ngA36vAcIcc,927 +pip/_vendor/html5lib/trie/datrie.py,sha256=EQpqSfkZRuTbE-DuhW7xMdVDxdZNZ0CfmnYfHA_3zxM,1178 +pip/_vendor/html5lib/trie/py.py,sha256=wXmQLrZRf4MyWNyg0m3h81m9InhLR7GJ002mIIZh-8o,1775 +pip/_vendor/lockfile/__init__.py,sha256=Tqpz90DwKYfhPsfzVOJl84TL87pdFE5ePNHdXAxs4Tk,9371 +pip/_vendor/lockfile/linklockfile.py,sha256=C7OH3H4GdK68u4FQgp8fkP2kO4fyUTSyj3X6blgfobc,2652 +pip/_vendor/lockfile/mkdirlockfile.py,sha256=e3qgIL-etZMLsS-3ft19iW_8IQ360HNkGOqE3yBKsUw,3096 +pip/_vendor/lockfile/pidlockfile.py,sha256=ukH9uk6NFuxyVmG5QiWw4iKq3fT7MjqUguX95avYPIY,6090 +pip/_vendor/lockfile/sqlitelockfile.py,sha256=o2TMkMRY0iwn-iL1XMRRIFStMUkS4i3ajceeYNntKFg,5506 +pip/_vendor/lockfile/symlinklockfile.py,sha256=ABwXXmvTHvCl5viPblShL3PG-gGsLiT1roAMfDRwhi8,2616 +pip/_vendor/packaging/__about__.py,sha256=E9KR5UJ_8U9K-R1mScu6FmkXtbnlFEEFjEXJp-7LxNU,720 +pip/_vendor/packaging/__init__.py,sha256=_vNac5TrzwsrzbOFIbF-5cHqc_Y2aPT2D7zrIR06BOo,513 +pip/_vendor/packaging/_compat.py,sha256=Vi_A0rAQeHbU-a9X0tt1yQm9RqkgQbDSxzRw8WlU9kA,860 +pip/_vendor/packaging/_structures.py,sha256=RImECJ4c_wTlaTYYwZYLHEiebDMaAJmK1oPARhw1T5o,1416 +pip/_vendor/packaging/markers.py,sha256=GAjjUG2SkQzc3fkG19g_oK4s5QhR9ySIq25I3ZWJWn8,7921 +pip/_vendor/packaging/requirements.py,sha256=SD7dVJGjdPUqtoHb47qwK6wWJTQd-ZXWjxpJg83UcBA,4327 +pip/_vendor/packaging/specifiers.py,sha256=SAMRerzO3fK2IkFZCaZkuwZaL_EGqHNOz4pni4vhnN0,28025 +pip/_vendor/packaging/utils.py,sha256=3m6WvPm6NNxE8rkTGmn0r75B_GZSGg7ikafxHsBN1WA,421 +pip/_vendor/packaging/version.py,sha256=OwGnxYfr2ghNzYx59qWIBkrK3SnB6n-Zfd1XaLpnnM0,11556 +pip/_vendor/pkg_resources/__init__.py,sha256=UaN-6iF8-E8TVvI4tJ8TWeeE34lzATAfYVoc3REb_yg,101295 +pip/_vendor/progress/__init__.py,sha256=Wn1074LUDZovd4zfoVYojnPBgOc6ctHbQX7rp_p8lRA,3023 +pip/_vendor/progress/bar.py,sha256=YNPJeRrwYVKFO2nyaEwsQjYByamMWTgJMvQO1NpD-AY,2685 +pip/_vendor/progress/counter.py,sha256=kEqA8jWEdwrc6P_9VaRx7bjOHwk9gxl-Q9oVbQ08v5c,1502 +pip/_vendor/progress/helpers.py,sha256=FehfwZTv-5cCfsbcMlvlUkm3xZ0cRhsev6XVpmeTF4c,2854 +pip/_vendor/progress/spinner.py,sha256=iCVtUQbaJUFHTjn1ZLPQLPYeao4lC9aXAa_HxIeUK6k,1314 +pip/_vendor/requests/__init__.py,sha256=ZaQ9ZpESi8Zhi-SHxMJwAqs_7En4GlvjEa-uJOQaQxc,2215 +pip/_vendor/requests/adapters.py,sha256=eKKxnQoL8yFVb3Hh607POK0dBm2gu50fgQTtSX-lJy8,18680 +pip/_vendor/requests/api.py,sha256=MCiVT9TG56jThCzrfy1pLQVOCXxaTOzNHj8HNKDu1P4,5795 +pip/_vendor/requests/auth.py,sha256=YBFhR0KH8og250hDRTYgC9KBqMVxh9yMjpZh0-kXefI,8075 +pip/_vendor/requests/cacert.pem,sha256=5xzWFRrSP0ZsXiW6emg8UQ_w497lT4qWCv32OO8R1ME,344712 +pip/_vendor/requests/certs.py,sha256=RX5H1cSiB52Hbjh_qv3eMW8hqHEF_r4Qiv_4AwfziuU,613 +pip/_vendor/requests/compat.py,sha256=hq7CKHoykNs8yzKPAJiOkHQJPoNp9A89MufTdhlCniY,1469 +pip/_vendor/requests/cookies.py,sha256=ShZ9lzb0qhTV03nhafCMQXrnugBGr32M30FEo5u6rkQ,17564 +pip/_vendor/requests/exceptions.py,sha256=lyzK5I-zkNCN9zfYGJgkDMvtt3akjw0QUq4q8pYI4wA,2776 +pip/_vendor/requests/hooks.py,sha256=jSdmZjB5oRJ6xmKM3VtqkYkq8oFTwx6gqG9AaUWpAlw,767 +pip/_vendor/requests/models.py,sha256=17T7cPYBk4JggKQxaeGMWWDB5KqLG8u6QiBXaH7IFYY,29530 +pip/_vendor/requests/sessions.py,sha256=K6tPEgZ4giLZ5sQg3QymC26lcsmFvwtZ044g2hrY3WE,24897 +pip/_vendor/requests/status_codes.py,sha256=QCHM7hbByBJCcPxnN63tCBYkJLjE04umd5m5DSZk-FE,3315 +pip/_vendor/requests/structures.py,sha256=TJ-VyA0GJwzMtLw2A9AqiHWsjvnzjf0s1AHGYc7n-pM,3017 +pip/_vendor/requests/utils.py,sha256=KQwDsJdE5DMGmSdRmBVHsdIVDak4rmK41gKOYR9WhfU,22228 +pip/_vendor/requests/packages/__init__.py,sha256=CVheqNRcXIkAi5037RhxeqbAqd0QhrK1o9R9kS2xvuI,1384 +pip/_vendor/requests/packages/chardet/__init__.py,sha256=XuTKCYOR7JwsoHxqZTYH86LVyMDbDI3s1s0W_qoGEBM,1295 +pip/_vendor/requests/packages/chardet/big5freq.py,sha256=D8oTdz-GM7Jg8TsaWJDm65vM_OLHC3xub6qUJ3rOgsQ,82594 +pip/_vendor/requests/packages/chardet/big5prober.py,sha256=XX96C--6WKYW36mL-z7pJSAtc169Z8ZImByCP4pEN9A,1684 +pip/_vendor/requests/packages/chardet/chardetect.py,sha256=f4299UZG6uWd3i3r_N0OdrFj2sA9JFI54PAmDLAFmWA,2504 +pip/_vendor/requests/packages/chardet/chardistribution.py,sha256=cUARQFr1oTLXeJCDQrDRkUP778AvSMzhSCnG8VLCV58,9226 +pip/_vendor/requests/packages/chardet/charsetgroupprober.py,sha256=0lKk7VE516fgMw119tNefFqLOxKfIE9WfdkpIT69OKU,3791 +pip/_vendor/requests/packages/chardet/charsetprober.py,sha256=Z48o2KiOj23FNqYH8FqzhH5m1qdm3rI8DcTm2Yqtklg,1902 +pip/_vendor/requests/packages/chardet/codingstatemachine.py,sha256=E85rYhHVMw9xDEJVgiQhp0OnLGr6i2r8_7QOWMKTH08,2318 +pip/_vendor/requests/packages/chardet/compat.py,sha256=5mm6yrHwef1JEG5OxkPJlSq5lkjLVpEGh3iPgFBkpkM,1157 +pip/_vendor/requests/packages/chardet/constants.py,sha256=-UnY8U7EP7z9fTyd09yq35BEkSFEAUAiv9ohd1DW1s4,1335 +pip/_vendor/requests/packages/chardet/cp949prober.py,sha256=FMvdLyB7fejPXRsTbca7LK1P3RUvvssmjUNyaEfz8zY,1782 +pip/_vendor/requests/packages/chardet/escprober.py,sha256=q5TcQKeVq31WxrW7Sv8yjpZkjEoaHO8S92EJZ9hodys,3187 +pip/_vendor/requests/packages/chardet/escsm.py,sha256=7iljEKN8lXTh8JFXPUSwlibMno6R6ksq4evLxbkzfro,7839 +pip/_vendor/requests/packages/chardet/eucjpprober.py,sha256=5IpfSEjAb7h3hcGMd6dkU80O900C2N6xku28rdYFKuc,3678 +pip/_vendor/requests/packages/chardet/euckrfreq.py,sha256=T5saK5mImySG5ygQPtsp6o2uKulouCwYm2ElOyFkJqU,45978 +pip/_vendor/requests/packages/chardet/euckrprober.py,sha256=Wo7dnZ5Erw_nB4H-m5alMiOxOuJUmGHlwCSaGqExDZA,1675 +pip/_vendor/requests/packages/chardet/euctwfreq.py,sha256=G_I0BW9i1w0ONeeUwIYqV7_U09buIHdqh-wNHVaql7I,34872 +pip/_vendor/requests/packages/chardet/euctwprober.py,sha256=upS2P6GuT5ujOxXYw-RJLcT7A4PTuo27KGUKU4UZpIQ,1676 +pip/_vendor/requests/packages/chardet/gb2312freq.py,sha256=M2gFdo_qQ_BslStEchrPW5CrPEZEacC0uyDLw4ok-kY,36011 +pip/_vendor/requests/packages/chardet/gb2312prober.py,sha256=VWnjoRa83Y6V6oczMaxyUr0uy48iCnC2nzk9zfEIRHc,1681 +pip/_vendor/requests/packages/chardet/hebrewprober.py,sha256=8pdoUfsVXf_L4BnJde_BewS6H2yInV5688eu0nFhLHY,13359 +pip/_vendor/requests/packages/chardet/jisfreq.py,sha256=ZcL4R5ekHHbP2KCYGakVMBsiKqZZZAABzhwi-uRkOps,47315 +pip/_vendor/requests/packages/chardet/jpcntx.py,sha256=yftmp0QaF6RJO5SJs8I7LU5AF4rwP23ebeCQL4BM1OY,19348 +pip/_vendor/requests/packages/chardet/langbulgarianmodel.py,sha256=ZyPsA796MSVhYdfWhMCgKWckupAKAnKqWcE3Cl3ej6o,12784 +pip/_vendor/requests/packages/chardet/langcyrillicmodel.py,sha256=fkcd5OvogUp-GrNDWAZPgkYsSRCD2omotAEvqjlmLKE,17725 +pip/_vendor/requests/packages/chardet/langgreekmodel.py,sha256=QHMy31CH_ot67UCtmurCEKqKx2WwoaKrw2YCYYBK2Lw,12628 +pip/_vendor/requests/packages/chardet/langhebrewmodel.py,sha256=4ASl5vzKJPng4H278VHKtRYC03TpQpenlHTcsmZH1rE,11318 +pip/_vendor/requests/packages/chardet/langhungarianmodel.py,sha256=SXwuUzh49_cBeMXhshRHdrhlkz0T8_pZWV_pdqBKNFk,12536 +pip/_vendor/requests/packages/chardet/langthaimodel.py,sha256=-k7djh3dGKngAGnt3WfuoJN7acDcWcmHAPojhaUd7q4,11275 +pip/_vendor/requests/packages/chardet/latin1prober.py,sha256=238JHOxH8aRudJY2NmeSv5s7i0Qe3GuklIU3HlYybvg,5232 +pip/_vendor/requests/packages/chardet/mbcharsetprober.py,sha256=9rOCjDVsmSMp6e7q2syqak22j7lrbUZhJhMee2gbVL0,3268 +pip/_vendor/requests/packages/chardet/mbcsgroupprober.py,sha256=SHRzNPLpDXfMJLA8phCHVU0WgqbgDCNxDQMolGX_7yk,1967 +pip/_vendor/requests/packages/chardet/mbcssm.py,sha256=IKwJXyxu34n6NojmxVxC60MLFtJKm-hIfxaFEnb3uBA,19590 +pip/_vendor/requests/packages/chardet/sbcharsetprober.py,sha256=Xq0lODqJnDgxglBiQI4BqTFiPbn63-0a5XNA5-hVu7U,4793 +pip/_vendor/requests/packages/chardet/sbcsgroupprober.py,sha256=8hLyH8RAG-aohBo7o_KciWVgRo42ZE_zEtuNG1JMRYI,3291 +pip/_vendor/requests/packages/chardet/sjisprober.py,sha256=UYOmiMDzttYIkSDoOB08UEagivJpUXz4tuWiWzTiOr8,3764 +pip/_vendor/requests/packages/chardet/universaldetector.py,sha256=h-E2x6XSCzlNjycYWG0Fe4Cf1SGdaIzUNu2HCphpMZA,6840 +pip/_vendor/requests/packages/chardet/utf8prober.py,sha256=7tdNZGrJY7jZUBD483GGMkiP0Tx8Fp-cGvWHoAsilHg,2652 +pip/_vendor/requests/packages/urllib3/__init__.py,sha256=dgnv71-LhuNA7j-ov1A7TL7h4Ajq5JT1fONyGO8ivCg,2854 +pip/_vendor/requests/packages/urllib3/_collections.py,sha256=RP-cHyTx4AgYwvoETK8q1IVRbWFJnE0VV692ZHSbU68,10553 +pip/_vendor/requests/packages/urllib3/connection.py,sha256=QCmkelYgtbc06DfJtgs22na78kRTLCTbLb-OSWLbt-A,11617 +pip/_vendor/requests/packages/urllib3/connectionpool.py,sha256=ws48c_kVg09RUxuqpusWg_oOXIRTf25y3SLVN6yuCcQ,32713 +pip/_vendor/requests/packages/urllib3/exceptions.py,sha256=zGjhZCR1wefEnCN5b7WouQ3UhXesJ2bRKYIeWusaFJs,5599 +pip/_vendor/requests/packages/urllib3/fields.py,sha256=WUMvCLvnw7XemBq6AmCgNPJwyIJL_vWaMHaA2FLlscM,5931 +pip/_vendor/requests/packages/urllib3/filepost.py,sha256=NvLlFsdt8ih_Q4S2ekQF3CJG0nOXs32YI-G04_AdT2g,2320 +pip/_vendor/requests/packages/urllib3/poolmanager.py,sha256=W09uewCGoKSzezei0DwaTXT7kuvsF2elO2wUXWfiAco,9614 +pip/_vendor/requests/packages/urllib3/request.py,sha256=jET7OvA3FSjxABBRGhCyMdPvM9XuJA6df9gRhkJiJiY,5988 +pip/_vendor/requests/packages/urllib3/response.py,sha256=Xx9-heNZOrcx5suX-I1PYT_uEbhVtqOHqkui309g9XY,18542 +pip/_vendor/requests/packages/urllib3/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +pip/_vendor/requests/packages/urllib3/contrib/appengine.py,sha256=VP10uoVbNpH0kYVbOFd7dN5dtDcVfEytMoriKsDBBuI,7938 +pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.py,sha256=r-vMDMXAGbix9a7-IhbKVTATmAst-5g4hKYOLf8Kd5M,4531 +pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py,sha256=JsdAh0gL4XvQzhOEBRoFtJN91qLf1LFIDEFZs95445I,11778 +pip/_vendor/requests/packages/urllib3/contrib/socks.py,sha256=mAHrChjtbElhGBoHOGq5CqRjtmdFiS_YjnTr2HlUNYU,5669 +pip/_vendor/requests/packages/urllib3/packages/__init__.py,sha256=nlChrGzkjCkmhCX9HrF_qHPUgosfsPQkVIJxiiLhk9g,109 +pip/_vendor/requests/packages/urllib3/packages/ordered_dict.py,sha256=VQaPONfhVMsb8B63Xg7ZOydJqIE_jzeMhVN3Pec6ogw,8935 +pip/_vendor/requests/packages/urllib3/packages/six.py,sha256=U-rO-WBrFS8PxHeamSl6okKCjqPF18NhiZb0qPZ67XM,11628 +pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py,sha256=cOWMIn1orgJoA35p6pSzO_-Dc6iOX9Dhl6D2sL9b_2o,460 +pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py,sha256=fK28k37hL7-D79v9iM2fHgNK9Q1Pw0M7qVRL4rkfFjQ,3778 +pip/_vendor/requests/packages/urllib3/util/__init__.py,sha256=n2QE9_0Bb6u8tf7LUc4qKe8V-Hz9G8lEOc9j_30Q8d0,892 +pip/_vendor/requests/packages/urllib3/util/connection.py,sha256=6PvDBlK_6QDLHzEDT-uEMhqKcDoSuRO43Vtb4IXfkzQ,3380 +pip/_vendor/requests/packages/urllib3/util/request.py,sha256=ZMDewRK-mjlK72szGIIjzYnLIn-zPP0WgJUMjKeZ6Tg,2128 +pip/_vendor/requests/packages/urllib3/util/response.py,sha256=1UFd5TIp9MyBp4xgnZoyQZscZVPPr0tWRaXNR5w_vds,2165 +pip/_vendor/requests/packages/urllib3/util/retry.py,sha256=WjO8iuwSR-TFJUPW1OhuuhvNReZHJ8v_QEPThdUzOLE,10350 +pip/_vendor/requests/packages/urllib3/util/ssl_.py,sha256=eVPo9L7d8x8g1wnBi2swWM49AXu5I2pKXKAIHs2ar_k,11624 +pip/_vendor/requests/packages/urllib3/util/timeout.py,sha256=ioAIYptFyBG7eU_r8_ZmO45hpj1dJE6WCvrGR9dNFjs,9596 +pip/_vendor/requests/packages/urllib3/util/url.py,sha256=EcX4ZfmgKWcqM4sY9FlC-yN4y_snuURPV0TpUPHNjnc,5879 +pip/commands/__init__.py,sha256=naZ1iIWRutNznOVpLj8qyn1GPE0B5rhCWCrSUOZSt4M,2145 +pip/commands/completion.py,sha256=2BEUY3jowgemiIGgUP3rpk6A9My4Eu8rTPosFxlESOE,1967 +pip/commands/download.py,sha256=dMRtH0JMBhNGlJWr1qC29vOeiBzG2K0OjOAfzdxSVgA,4804 +pip/commands/freeze.py,sha256=KmQoLf-HruqBDzc-F2-ganGVn2lboNQqppfyrMsx3SU,2774 +pip/commands/hash.py,sha256=MCt4jEFyfoce0lVeNEz1x49uaTY-VDkKiBvvxrVcHkw,1597 +pip/commands/help.py,sha256=84HWkEdnGP_AEBHnn8gJP2Te0XTXRKFoXqXopbOZTNo,982 +pip/commands/install.py,sha256=8MOsH3IlL3ovZhTQtZwHhJb19pnkr8eKNE_9klVJ3PU,14971 +pip/commands/list.py,sha256=u76U5TLODQ2g53sSUA4q6WhYus7usbuWuITQJsCnP3E,7412 +pip/commands/search.py,sha256=qOfCTw9wEN6_lVBSCLjOHiPrTGBMx4n8_ZCIWgIKL0M,4816 +pip/commands/show.py,sha256=dytBbI9XV-ChpV51tsuBygZJJO-QaO2Gtz5kbLkBCZE,5815 +pip/commands/uninstall.py,sha256=tz8cXz4WdpUdnt3RvpdQwH6_SNMB50egBIZWa1dwfcc,2884 +pip/commands/wheel.py,sha256=iT92Uo8qpVILl_Yk8L7AtkFVYGmY0ep5oDeyQSpwkLs,7528 +pip/compat/__init__.py,sha256=7WN0B0XMYIldfminnT679VoEJLxNQPi9MFwCIt1_llU,4669 +pip/compat/dictconfig.py,sha256=dRrelPDWrceDSzFT51RTEVY2GuM7UDyc5Igh_tn4Fvk,23096 +pip/compat/ordereddict.py,sha256=6RQCd4PyTE4tvLUoAnsygvrreOSTV4BRDbc_4gCSkTs,4110 +pip/models/__init__.py,sha256=0Rs7_RA4DxeOkWT5Cq4CQzDrSEhvYcN3TH2cazr72PE,71 +pip/models/index.py,sha256=pUfbO__v3mD9j-2n_ClwPS8pVyx4l2wIwyvWt8GMCRA,487 +pip/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +pip/operations/freeze.py,sha256=H6xpxe1XgoNm5f3UXK47kNy0OQfM5jzo4UUwQu7G-Lo,4048 +pip/req/__init__.py,sha256=vFwZY8_Vc1WU1zFAespg1My_r_AT3n7cN0W9eX0EFqk,276 +pip/req/req_file.py,sha256=3eaVnPMUAjikLdC5i8hZUAf8aAOby2UxmAVFf94FOXY,11928 +pip/req/req_install.py,sha256=ArdEHUTrB3Xvyy_lWop2V0c_8ArTgpZdpR8shXrJ8eU,45583 +pip/req/req_set.py,sha256=5gLPqd4vDbpl7mz9wOYPgpqIoB-EsjI0hcFuSzC8dw8,32764 +pip/req/req_uninstall.py,sha256=fdH2VgCjEC8NRYDS7fRu3ZJaBBUEy-N5muwxDX5MBNM,6897 +pip/utils/__init__.py,sha256=WdAVVUl5j0OQ3u3eR3Qtu3Um3OmeVflR7W1BmMmvmDU,27531 +pip/utils/appdirs.py,sha256=KTpZANfjYw5K2tZ0_jNNdP_kMxQAns79qZWelwaJo0c,7896 +pip/utils/build.py,sha256=4smLRrfSCmXmjEnVnMFh2tBEpNcSLRe6J0ejZJ-wWJE,1312 +pip/utils/deprecation.py,sha256=DR3cKqzovYu9Pif7c9bT2KmwekfW95N3BsI45_5u38I,2239 +pip/utils/encoding.py,sha256=NQxGiFS5GbeAveLZTnx92t5r0PYqvt0iRnP2u9SGG1w,971 +pip/utils/filesystem.py,sha256=ZEVBuYM3fqr2_lgOESh4Y7fPFszGD474zVm_M3Mb5Tk,899 +pip/utils/hashes.py,sha256=oMk7cd3PbJgzpSQyXq1MytMud5f6H5Oa2YY5hYuCq6I,2866 +pip/utils/logging.py,sha256=7yWu4gZw-Qclj7X80QVdpGWkdTWGKT4LiUVKcE04pro,3327 +pip/utils/outdated.py,sha256=fNwOCL5r2EftPGhgCYGMKu032HC8cV-JAr9lp0HmToM,5455 +pip/utils/setuptools_build.py,sha256=8IGop-SZ6lxUl5HMOjLRaDlORPugIH_b_b2Y67x4jQc,240 +pip/utils/ui.py,sha256=pbDkSAeumZ6jdZcOJ2yAbx8iBgeP2zfpqNnLJK1gskQ,11597 +pip/vcs/__init__.py,sha256=lnea41zMq9HqB1Qo7hxy2IjUzk5WtBvnoloCCMR6Vk4,12349 +pip/vcs/bazaar.py,sha256=tYTwc4b4off8mr0O2o8SiGejqBDJxcbDBMSMd9-ISYc,3803 +pip/vcs/git.py,sha256=u16VCiNW_a9AaYqLri2b8-f4lOZlOYwsGpHHV3uv_dQ,10218 +pip/vcs/mercurial.py,sha256=xG6rDiwHCRytJEs23SIHBXl_SwQo2jkkdD_6rVVP5h4,3472 +pip/vcs/subversion.py,sha256=mGT7sAzuVc1u-9MPoXJNyShnRzhdJpDdGNuhhzUPv6w,8687 +pip-8.1.2.dist-info/DESCRIPTION.rst,sha256=jSvW1qOjwzndvm_p_DexGCVJfwgg3rWPMJWzf6Rmsfc,1167 +pip-8.1.2.dist-info/METADATA,sha256=P3mID1oPoIKxUDsH1D5yk4h6P4N1T5t0sosQul1OMx4,2362 +pip-8.1.2.dist-info/RECORD,, +pip-8.1.2.dist-info/WHEEL,sha256=o2k-Qa-RMNIJmUdIc7KU6VWR_ErNRbWNlxDIpl7lm34,110 +pip-8.1.2.dist-info/entry_points.txt,sha256=GWc-Wb9WUKZ1EuVWNz-G0l3BeIpbNJLx0OJbZ61AAV0,68 +pip-8.1.2.dist-info/metadata.json,sha256=pGIpFivM6SXoww8RYGdf33RD9yK7EFA2eAgvEP7SlLg,1513 +pip-8.1.2.dist-info/top_level.txt,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +../../../bin/pip,sha256=uvNLWYi1UCekaflVSnzVTAB-J_3R54BYnb5a5iVZ5kU,218 +../../../bin/pip2,sha256=uvNLWYi1UCekaflVSnzVTAB-J_3R54BYnb5a5iVZ5kU,218 +../../../bin/pip2.7,sha256=uvNLWYi1UCekaflVSnzVTAB-J_3R54BYnb5a5iVZ5kU,218 +pip-8.1.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +pip/_vendor/requests/compat.pyc,, +pip/_vendor/cachecontrol/cache.pyc,, +pip/_vendor/requests/certs.pyc,, +pip/_vendor/distlib/util.pyc,, +pip/_vendor/progress/spinner.pyc,, +pip/__init__.pyc,, +pip/_vendor/html5lib/treewalkers/genshistream.pyc,, +pip/_vendor/requests/packages/chardet/latin1prober.pyc,, +pip/_vendor/distlib/_backport/__init__.pyc,, +pip/operations/__init__.pyc,, +pip/_vendor/distlib/metadata.pyc,, +pip/compat/__init__.pyc,, +pip/_vendor/html5lib/treebuilders/__init__.pyc,, +pip/compat/dictconfig.pyc,, +pip/_vendor/html5lib/filters/alphabeticalattributes.pyc,, +pip/_vendor/requests/packages/urllib3/request.pyc,, +pip/_vendor/requests/packages/chardet/escprober.pyc,, +pip/_vendor/requests/adapters.pyc,, +pip/_vendor/requests/packages/chardet/langbulgarianmodel.pyc,, +pip/commands/completion.pyc,, +pip/_vendor/html5lib/html5parser.pyc,, +pip/_vendor/html5lib/filters/lint.pyc,, +pip/pep425tags.pyc,, +pip/_vendor/packaging/__init__.pyc,, +pip/_vendor/lockfile/symlinklockfile.pyc,, +pip/_vendor/requests/packages/chardet/__init__.pyc,, +pip/_vendor/packaging/utils.pyc,, +pip/_vendor/html5lib/filters/whitespace.pyc,, +pip/_vendor/requests/packages/chardet/euckrprober.pyc,, +pip/_vendor/html5lib/treebuilders/etree_lxml.pyc,, +pip/_vendor/distlib/database.pyc,, +pip/_vendor/html5lib/treeadapters/sax.pyc,, +pip/_vendor/requests/packages/chardet/euckrfreq.pyc,, +pip/_vendor/requests/auth.pyc,, +pip/_vendor/html5lib/treewalkers/pulldom.pyc,, +pip/_vendor/packaging/__about__.pyc,, +pip/_vendor/progress/__init__.pyc,, +pip/_vendor/cachecontrol/_cmd.pyc,, +pip/_vendor/html5lib/ihatexml.pyc,, +pip/_vendor/html5lib/treewalkers/_base.pyc,, +pip/commands/list.pyc,, +pip/_vendor/distlib/scripts.pyc,, +pip/_vendor/html5lib/filters/sanitizer.pyc,, +pip/vcs/git.pyc,, +pip/cmdoptions.pyc,, +pip/_vendor/lockfile/linklockfile.pyc,, +pip/commands/hash.pyc,, +pip/_vendor/requests/packages/urllib3/util/ssl_.pyc,, +pip/_vendor/requests/packages/urllib3/poolmanager.pyc,, +pip/req/req_set.pyc,, +pip/_vendor/html5lib/inputstream.pyc,, +pip/req/__init__.pyc,, +pip/_vendor/html5lib/sanitizer.pyc,, +pip/_vendor/colorama/win32.pyc,, +pip/_vendor/distlib/resources.pyc,, +pip/_vendor/requests/packages/chardet/hebrewprober.pyc,, +pip/utils/__init__.pyc,, +pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.pyc,, +pip/_vendor/lockfile/__init__.pyc,, +pip/_vendor/requests/packages/urllib3/packages/six.pyc,, +pip/_vendor/progress/helpers.pyc,, +pip/_vendor/ipaddress.pyc,, +pip/_vendor/html5lib/trie/__init__.pyc,, +pip/vcs/bazaar.pyc,, +pip/_vendor/pyparsing.pyc,, +pip/_vendor/html5lib/__init__.pyc,, +pip/_vendor/requests/packages/chardet/charsetgroupprober.pyc,, +pip/_vendor/cachecontrol/serialize.pyc,, +pip/_vendor/requests/packages/urllib3/packages/__init__.pyc,, +pip/_vendor/distlib/_backport/misc.pyc,, +pip/_vendor/requests/packages/chardet/gb2312freq.pyc,, +pip/_vendor/requests/packages/chardet/codingstatemachine.pyc,, +pip/_vendor/cachecontrol/compat.pyc,, +pip/_vendor/requests/packages/urllib3/util/url.pyc,, +pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.pyc,, +pip/_vendor/cachecontrol/controller.pyc,, +pip/utils/deprecation.pyc,, +pip/_vendor/distlib/_backport/sysconfig.pyc,, +pip/_vendor/requests/packages/chardet/langgreekmodel.pyc,, +pip/_vendor/requests/packages/__init__.pyc,, +pip/commands/show.pyc,, +pip/_vendor/requests/packages/chardet/langcyrillicmodel.pyc,, +pip/_vendor/requests/packages/chardet/jpcntx.pyc,, +pip/_vendor/requests/packages/chardet/constants.pyc,, +pip/_vendor/requests/packages/urllib3/contrib/appengine.pyc,, +pip/_vendor/html5lib/treebuilders/_base.pyc,, +pip/commands/help.pyc,, +pip/_vendor/lockfile/mkdirlockfile.pyc,, +pip/_vendor/requests/utils.pyc,, +pip/_vendor/colorama/__init__.pyc,, +pip/_vendor/packaging/_compat.pyc,, +pip/_vendor/distlib/version.pyc,, +pip/utils/ui.pyc,, +pip/_vendor/requests/packages/urllib3/exceptions.pyc,, +pip/commands/uninstall.pyc,, +pip/_vendor/distlib/index.pyc,, +pip/_vendor/cachecontrol/heuristics.pyc,, +pip/commands/freeze.pyc,, +pip/_vendor/requests/sessions.pyc,, +pip/_vendor/requests/packages/chardet/big5prober.pyc,, +pip/_vendor/requests/packages/chardet/langthaimodel.pyc,, +pip/utils/hashes.pyc,, +pip/_vendor/distlib/_backport/tarfile.pyc,, +pip/_vendor/requests/packages/urllib3/util/response.pyc,, +pip/_vendor/requests/packages/chardet/mbcsgroupprober.pyc,, +pip/_vendor/html5lib/filters/__init__.pyc,, +pip/baseparser.pyc,, +pip/_vendor/html5lib/treeadapters/__init__.pyc,, +pip/status_codes.pyc,, +pip/_vendor/cachecontrol/caches/redis_cache.pyc,, +pip/_vendor/distlib/__init__.pyc,, +pip/_vendor/cachecontrol/caches/__init__.pyc,, +pip/_vendor/pkg_resources/__init__.pyc,, +pip/commands/search.pyc,, +pip/_vendor/requests/packages/chardet/langhungarianmodel.pyc,, +pip/_vendor/html5lib/utils.pyc,, +pip/_vendor/html5lib/trie/datrie.pyc,, +pip/_vendor/requests/structures.pyc,, +pip/_vendor/packaging/version.pyc,, +pip/_vendor/cachecontrol/adapter.pyc,, +pip/_vendor/requests/packages/urllib3/fields.pyc,, +pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.pyc,, +pip/vcs/__init__.pyc,, +pip/req/req_file.pyc,, +pip/models/__init__.pyc,, +pip/_vendor/html5lib/constants.pyc,, +pip/_vendor/html5lib/trie/py.pyc,, +pip/_vendor/packaging/specifiers.pyc,, +pip/download.pyc,, +pip/commands/__init__.pyc,, +pip/_vendor/requests/packages/urllib3/__init__.pyc,, +pip/_vendor/distlib/compat.pyc,, +pip/models/index.pyc,, +pip/req/req_uninstall.pyc,, +pip/_vendor/distlib/wheel.pyc,, +pip/_vendor/requests/packages/chardet/euctwprober.pyc,, +pip/utils/build.pyc,, +pip/_vendor/requests/packages/chardet/escsm.pyc,, +pip/_vendor/html5lib/treewalkers/__init__.pyc,, +pip/_vendor/requests/status_codes.pyc,, +pip/_vendor/requests/exceptions.pyc,, +pip/_vendor/distlib/markers.pyc,, +pip/index.pyc,, +pip/utils/logging.pyc,, +pip/_vendor/packaging/requirements.pyc,, +pip/utils/outdated.pyc,, +pip/_vendor/requests/api.pyc,, +pip/_vendor/requests/packages/urllib3/filepost.pyc,, +pip/_vendor/requests/packages/chardet/big5freq.pyc,, +pip/_vendor/html5lib/treebuilders/etree.pyc,, +pip/_vendor/cachecontrol/caches/file_cache.pyc,, +pip/_vendor/html5lib/treebuilders/dom.pyc,, +pip/_vendor/requests/packages/chardet/mbcssm.pyc,, +pip/_vendor/distlib/_backport/shutil.pyc,, +pip/utils/encoding.pyc,, +pip/__main__.pyc,, +pip/commands/wheel.pyc,, +pip/_vendor/html5lib/tokenizer.pyc,, +pip/_vendor/requests/models.pyc,, +pip/_vendor/lockfile/sqlitelockfile.pyc,, +pip/_vendor/requests/packages/chardet/utf8prober.pyc,, +pip/_vendor/requests/packages/chardet/langhebrewmodel.pyc,, +pip/_vendor/requests/packages/chardet/compat.pyc,, +pip/_vendor/progress/counter.pyc,, +pip/utils/filesystem.pyc,, +pip/_vendor/six.pyc,, +pip/_vendor/colorama/initialise.pyc,, +pip/_vendor/requests/packages/urllib3/packages/ordered_dict.pyc,, +pip/_vendor/requests/packages/chardet/eucjpprober.pyc,, +pip/_vendor/retrying.pyc,, +pip/_vendor/html5lib/treewalkers/etree.pyc,, +pip/_vendor/cachecontrol/wrapper.pyc,, +pip/_vendor/requests/hooks.pyc,, +pip/_vendor/packaging/_structures.pyc,, +pip/_vendor/requests/packages/urllib3/connectionpool.pyc,, +pip/_vendor/requests/packages/chardet/mbcharsetprober.pyc,, +pip/locations.pyc,, +pip/_vendor/requests/packages/chardet/jisfreq.pyc,, +pip/utils/setuptools_build.pyc,, +pip/vcs/subversion.pyc,, +pip/_vendor/requests/packages/urllib3/util/connection.pyc,, +pip/exceptions.pyc,, +pip/basecommand.pyc,, +pip/_vendor/distlib/locators.pyc,, +pip/_vendor/html5lib/filters/_base.pyc,, +pip/_vendor/re-vendor.pyc,, +pip/_vendor/requests/packages/urllib3/contrib/__init__.pyc,, +pip/_vendor/requests/packages/chardet/euctwfreq.pyc,, +pip/commands/download.pyc,, +pip/_vendor/requests/packages/chardet/chardistribution.pyc,, +pip/_vendor/requests/packages/urllib3/contrib/socks.pyc,, +pip/_vendor/requests/__init__.pyc,, +pip/_vendor/requests/packages/chardet/sbcharsetprober.pyc,, +pip/_vendor/colorama/ansitowin32.pyc,, +pip/_vendor/cachecontrol/filewrapper.pyc,, +pip/_vendor/requests/packages/chardet/sjisprober.pyc,, +pip/_vendor/requests/packages/urllib3/util/timeout.pyc,, +pip/_vendor/html5lib/treewalkers/dom.pyc,, +pip/_vendor/requests/cookies.pyc,, +pip/_vendor/requests/packages/urllib3/_collections.pyc,, +pip/_vendor/requests/packages/urllib3/util/request.pyc,, +pip/_vendor/requests/packages/urllib3/util/__init__.pyc,, +pip/_vendor/distlib/manifest.pyc,, +pip/_vendor/html5lib/serializer/htmlserializer.pyc,, +pip/_vendor/html5lib/serializer/__init__.pyc,, +pip/_vendor/html5lib/trie/_base.pyc,, +pip/_vendor/requests/packages/urllib3/response.pyc,, +pip/req/req_install.pyc,, +pip/operations/freeze.pyc,, +pip/_vendor/html5lib/filters/inject_meta_charset.pyc,, +pip/_vendor/requests/packages/chardet/charsetprober.pyc,, +pip/compat/ordereddict.pyc,, +pip/_vendor/requests/packages/urllib3/util/retry.pyc,, +pip/vcs/mercurial.pyc,, +pip/_vendor/cachecontrol/__init__.pyc,, +pip/_vendor/requests/packages/chardet/cp949prober.pyc,, +pip/_vendor/__init__.pyc,, +pip/_vendor/requests/packages/chardet/universaldetector.pyc,, +pip/_vendor/requests/packages/chardet/sbcsgroupprober.pyc,, +pip/_vendor/html5lib/treewalkers/lxmletree.pyc,, +pip/_vendor/colorama/ansi.pyc,, +pip/_vendor/packaging/markers.pyc,, +pip/commands/install.pyc,, +pip/_vendor/requests/packages/chardet/gb2312prober.pyc,, +pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.pyc,, +pip/_vendor/progress/bar.pyc,, +pip/wheel.pyc,, +pip/_vendor/lockfile/pidlockfile.pyc,, +pip/_vendor/requests/packages/chardet/chardetect.pyc,, +pip/_vendor/html5lib/filters/optionaltags.pyc,, +pip/_vendor/requests/packages/urllib3/connection.pyc,, +pip/utils/appdirs.pyc,, +pip/_vendor/colorama/winterm.pyc,, diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/WHEEL b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/WHEEL new file mode 100644 index 0000000..8b6dd1b --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/WHEEL @@ -0,0 +1,6 @@ +Wheel-Version: 1.0 +Generator: bdist_wheel (0.29.0) +Root-Is-Purelib: true +Tag: py2-none-any +Tag: py3-none-any + diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/entry_points.txt b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/entry_points.txt new file mode 100644 index 0000000..c02a8d5 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/entry_points.txt @@ -0,0 +1,5 @@ +[console_scripts] +pip = pip:main +pip3 = pip:main +pip3.5 = pip:main + diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/metadata.json b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/metadata.json new file mode 100644 index 0000000..17ac7e0 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/metadata.json @@ -0,0 +1 @@ +{"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Topic :: Software Development :: Build Tools", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: PyPy"], "extensions": {"python.commands": {"wrap_console": {"pip": "pip:main", "pip3": "pip:main", "pip3.5": "pip:main"}}, "python.details": {"contacts": [{"email": "python-virtualenv@groups.google.com", "name": "The pip developers", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}, "project_urls": {"Home": "https://pip.pypa.io/"}}, "python.exports": {"console_scripts": {"pip": "pip:main", "pip3": "pip:main", "pip3.5": "pip:main"}}}, "extras": ["testing"], "generator": "bdist_wheel (0.29.0)", "keywords": ["easy_install", "distutils", "setuptools", "egg", "virtualenv"], "license": "MIT", "metadata_version": "2.0", "name": "pip", "run_requires": [{"extra": "testing", "requires": ["mock", "pretend", "pytest", "scripttest (>=1.3)", "virtualenv (>=1.10)"]}], "summary": "The PyPA recommended tool for installing Python packages.", "test_requires": [{"requires": ["mock", "pretend", "pytest", "scripttest (>=1.3)", "virtualenv (>=1.10)"]}], "version": "8.1.2"} \ No newline at end of file diff --git a/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/top_level.txt b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/top_level.txt new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip-8.1.2.dist-info/top_level.txt @@ -0,0 +1 @@ +pip diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/__init__.py b/mailman3/venv/lib/python2.7/site-packages/pip/__init__.py new file mode 100644 index 0000000..588c881 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/__init__.py @@ -0,0 +1,319 @@ +#!/usr/bin/env python +from __future__ import absolute_import + +import locale +import logging +import os +import optparse +import warnings + +import sys +import re + +from pip.exceptions import InstallationError, CommandError, PipError +from pip.utils import get_installed_distributions, get_prog +from pip.utils import deprecation, dist_is_editable +from pip.vcs import git, mercurial, subversion, bazaar # noqa +from pip.baseparser import ConfigOptionParser, UpdatingDefaultsHelpFormatter +from pip.commands import get_summaries, get_similar_commands +from pip.commands import commands_dict +from pip._vendor.requests.packages.urllib3.exceptions import ( + InsecureRequestWarning, +) + + +# assignment for flake8 to be happy + +# This fixes a peculiarity when importing via __import__ - as we are +# initialising the pip module, "from pip import cmdoptions" is recursive +# and appears not to work properly in that situation. +import pip.cmdoptions +cmdoptions = pip.cmdoptions + +# The version as used in the setup.py and the docs conf.py +__version__ = "8.1.2" + + +logger = logging.getLogger(__name__) + +# Hide the InsecureRequestWArning from urllib3 +warnings.filterwarnings("ignore", category=InsecureRequestWarning) + + +def autocomplete(): + """Command and option completion for the main option parser (and options) + and its subcommands (and options). + + Enable by sourcing one of the completion shell scripts (bash or zsh). + """ + # Don't complete if user hasn't sourced bash_completion file. + if 'PIP_AUTO_COMPLETE' not in os.environ: + return + cwords = os.environ['COMP_WORDS'].split()[1:] + cword = int(os.environ['COMP_CWORD']) + try: + current = cwords[cword - 1] + except IndexError: + current = '' + + subcommands = [cmd for cmd, summary in get_summaries()] + options = [] + # subcommand + try: + subcommand_name = [w for w in cwords if w in subcommands][0] + except IndexError: + subcommand_name = None + + parser = create_main_parser() + # subcommand options + if subcommand_name: + # special case: 'help' subcommand has no options + if subcommand_name == 'help': + sys.exit(1) + # special case: list locally installed dists for uninstall command + if subcommand_name == 'uninstall' and not current.startswith('-'): + installed = [] + lc = current.lower() + for dist in get_installed_distributions(local_only=True): + if dist.key.startswith(lc) and dist.key not in cwords[1:]: + installed.append(dist.key) + # if there are no dists installed, fall back to option completion + if installed: + for dist in installed: + print(dist) + sys.exit(1) + + subcommand = commands_dict[subcommand_name]() + options += [(opt.get_opt_string(), opt.nargs) + for opt in subcommand.parser.option_list_all + if opt.help != optparse.SUPPRESS_HELP] + + # filter out previously specified options from available options + prev_opts = [x.split('=')[0] for x in cwords[1:cword - 1]] + options = [(x, v) for (x, v) in options if x not in prev_opts] + # filter options by current input + options = [(k, v) for k, v in options if k.startswith(current)] + for option in options: + opt_label = option[0] + # append '=' to options which require args + if option[1]: + opt_label += '=' + print(opt_label) + else: + # show main parser options only when necessary + if current.startswith('-') or current.startswith('--'): + opts = [i.option_list for i in parser.option_groups] + opts.append(parser.option_list) + opts = (o for it in opts for o in it) + + subcommands += [i.get_opt_string() for i in opts + if i.help != optparse.SUPPRESS_HELP] + + print(' '.join([x for x in subcommands if x.startswith(current)])) + sys.exit(1) + + +def create_main_parser(): + parser_kw = { + 'usage': '\n%prog [options]', + 'add_help_option': False, + 'formatter': UpdatingDefaultsHelpFormatter(), + 'name': 'global', + 'prog': get_prog(), + } + + parser = ConfigOptionParser(**parser_kw) + parser.disable_interspersed_args() + + pip_pkg_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + parser.version = 'pip %s from %s (python %s)' % ( + __version__, pip_pkg_dir, sys.version[:3]) + + # add the general options + gen_opts = cmdoptions.make_option_group(cmdoptions.general_group, parser) + parser.add_option_group(gen_opts) + + parser.main = True # so the help formatter knows + + # create command listing for description + command_summaries = get_summaries() + description = [''] + ['%-27s %s' % (i, j) for i, j in command_summaries] + parser.description = '\n'.join(description) + + return parser + + +def parseopts(args): + parser = create_main_parser() + + # Note: parser calls disable_interspersed_args(), so the result of this + # call is to split the initial args into the general options before the + # subcommand and everything else. + # For example: + # args: ['--timeout=5', 'install', '--user', 'INITools'] + # general_options: ['--timeout==5'] + # args_else: ['install', '--user', 'INITools'] + general_options, args_else = parser.parse_args(args) + + # --version + if general_options.version: + sys.stdout.write(parser.version) + sys.stdout.write(os.linesep) + sys.exit() + + # pip || pip help -> print_help() + if not args_else or (args_else[0] == 'help' and len(args_else) == 1): + parser.print_help() + sys.exit() + + # the subcommand name + cmd_name = args_else[0] + + if cmd_name not in commands_dict: + guess = get_similar_commands(cmd_name) + + msg = ['unknown command "%s"' % cmd_name] + if guess: + msg.append('maybe you meant "%s"' % guess) + + raise CommandError(' - '.join(msg)) + + # all the args without the subcommand + cmd_args = args[:] + cmd_args.remove(cmd_name) + + return cmd_name, cmd_args + + +def check_isolated(args): + isolated = False + + if "--isolated" in args: + isolated = True + + return isolated + + +def main(args=None): + if args is None: + args = sys.argv[1:] + + # Configure our deprecation warnings to be sent through loggers + deprecation.install_warning_logger() + + autocomplete() + + try: + cmd_name, cmd_args = parseopts(args) + except PipError as exc: + sys.stderr.write("ERROR: %s" % exc) + sys.stderr.write(os.linesep) + sys.exit(1) + + # Needed for locale.getpreferredencoding(False) to work + # in pip.utils.encoding.auto_decode + try: + locale.setlocale(locale.LC_ALL, '') + except locale.Error as e: + # setlocale can apparently crash if locale are uninitialized + logger.debug("Ignoring error %s when setting locale", e) + command = commands_dict[cmd_name](isolated=check_isolated(cmd_args)) + return command.main(cmd_args) + + +# ########################################################### +# # Writing freeze files + +class FrozenRequirement(object): + + def __init__(self, name, req, editable, comments=()): + self.name = name + self.req = req + self.editable = editable + self.comments = comments + + _rev_re = re.compile(r'-r(\d+)$') + _date_re = re.compile(r'-(20\d\d\d\d\d\d)$') + + @classmethod + def from_dist(cls, dist, dependency_links): + location = os.path.normcase(os.path.abspath(dist.location)) + comments = [] + from pip.vcs import vcs, get_src_requirement + if dist_is_editable(dist) and vcs.get_backend_name(location): + editable = True + try: + req = get_src_requirement(dist, location) + except InstallationError as exc: + logger.warning( + "Error when trying to get requirement for VCS system %s, " + "falling back to uneditable format", exc + ) + req = None + if req is None: + logger.warning( + 'Could not determine repository location of %s', location + ) + comments.append( + '## !! Could not determine repository location' + ) + req = dist.as_requirement() + editable = False + else: + editable = False + req = dist.as_requirement() + specs = req.specs + assert len(specs) == 1 and specs[0][0] in ["==", "==="], \ + 'Expected 1 spec with == or ===; specs = %r; dist = %r' % \ + (specs, dist) + version = specs[0][1] + ver_match = cls._rev_re.search(version) + date_match = cls._date_re.search(version) + if ver_match or date_match: + svn_backend = vcs.get_backend('svn') + if svn_backend: + svn_location = svn_backend().get_location( + dist, + dependency_links, + ) + if not svn_location: + logger.warning( + 'Warning: cannot find svn location for %s', req) + comments.append( + '## FIXME: could not find svn URL in dependency_links ' + 'for this package:' + ) + else: + comments.append( + '# Installing as editable to satisfy requirement %s:' % + req + ) + if ver_match: + rev = ver_match.group(1) + else: + rev = '{%s}' % date_match.group(1) + editable = True + req = '%s@%s#egg=%s' % ( + svn_location, + rev, + cls.egg_name(dist) + ) + return cls(dist.project_name, req, editable, comments) + + @staticmethod + def egg_name(dist): + name = dist.egg_name() + match = re.search(r'-py\d\.\d$', name) + if match: + name = name[:match.start()] + return name + + def __str__(self): + req = self.req + if self.editable: + req = '-e %s' % req + return '\n'.join(list(self.comments) + [str(req)]) + '\n' + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/__init__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..06afd72bf6dbaa904bd19fb08761f3a63ebd9237 GIT binary patch literal 9086 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/__main__.py b/mailman3/venv/lib/python2.7/site-packages/pip/__main__.py new file mode 100644 index 0000000..5556539 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/__main__.py @@ -0,0 +1,19 @@ +from __future__ import absolute_import + +import os +import sys + +# If we are running from a wheel, add the wheel to sys.path +# This allows the usage python pip-*.whl/pip install pip-*.whl +if __package__ == '': + # __file__ is pip-*.whl/pip/__main__.py + # first dirname call strips of '/__main__.py', second strips off '/pip' + # Resulting path is the name of the wheel itself + # Add that to sys.path so we can import pip + path = os.path.dirname(os.path.dirname(__file__)) + sys.path.insert(0, path) + +import pip # noqa + +if __name__ == '__main__': + sys.exit(pip.main()) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/__main__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/__main__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ab89db04905f0043c4f6b1d0405171c37bb86ebb GIT binary patch literal 477 zcmYjN%TB{E5F9&6pQ+%)k#l+|{Q-mu9{>^@kaDro#%H052X zCfgjd9cw7$yvb-!Lk@D&R#~Zg=dCH6V!(u{tZvDhG^Xi!C+!{dyCHAoZj*2W{=m*T zT~gUBxplGbOp!0Lhx@0uoh$hD`-+?9FTQORaKpY89Q<2irc@UP`gwx(ZXH2#~z^Wj4x{isEh z6ZJ3#l($F(RJ5qqqQK5W5+U_Mw+B2&z4-}lQ?E^IfqIL?=4p3{b~_Vrg4jtq3haMx znesXM1qMzLTO{>Oi-oisPMD{OfiO=;ElXx?tLH-V=(1Ckx9xIZ(Sk>d9xZv)@#us{ z?g&nH*{_}Q=(I;?JUZ*qIgdW^XvL#XJv#5v1&=OzwCd4k9)0f77am>m=(0y&dK7td z#iOepUGwO=M>jmW>Cr8Zx*n~0wC>SukG}Hgjz_Ua8xEC7n~IN9hX$)y!OHmt^@S>8+Y-e`I)>Rwd?;gS-e*mD0 zb|DbZ8?sscHlV|ZOpD$GWI{T^)|?$td2r-W7z8iMUun+F(_V+vZxjT$`8`*Z1Dyj6?#F6V5SsMWUG7vD?7_HAD!1ks7lIm?ULdup}{dGZ{M#Q>$?( zWIq+!i3pilcmm5$onyC@f_p>E^`Un3LgqDM@90Wbf*ZH2nSm|UwJ~s38lE+4ma*34 zAf=n{$v7I?F~=`jdS>cUIJV5gSe3UOzSi6&*EAMD`zQHn(d`Sl#@RD z{w$s({>ndAb;UA1;3x{`#cFSuD5hntGK9cJwo-D4m1d%tQHN0Nb`*P6gQT6E$s}&f zLtquc|5_a%^lN={+HRb{MS^9<7OK8Jl?um}W2O!72Q9|$h?SH=UztTViud*UaaeI_ z1dqi(={QYMOvmq6vy;z znIzqG&!UPdKF9MHqj-M&Gcx;1A65FL=+Nyf-{npmAWb^6Hj%~h9 y!LH<`yLjFWA8`deXs*3)?TPdNLpwOrIvL)SFI{SfYhfq&h)?UkWd8=`(oTZ_ literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.py new file mode 100644 index 0000000..724e220 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.py @@ -0,0 +1,11 @@ +"""CacheControl import Interface. + +Make it easy to import from cachecontrol without long namespaces. +""" +__author__ = 'Eric Larson' +__email__ = 'eric@ionrock.org' +__version__ = '0.11.6' + +from .wrapper import CacheControl +from .adapter import CacheControlAdapter +from .controller import CacheController diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8a8fbfdf39a3117bb6b43181519a59dfa6b601dd GIT binary patch literal 576 zcmZ8eO-lnY5S{IJSH*&VAjkF4t-W{>X%!EGA5ag%UP7A08k%fEl2!V<{R2+A6~%JaREQZ=8Hf&49S~ipx*&QW`k;GY`cU;DOMC!& z0A>i)u;oM0BQRsA#>hwTQjC-88sV1lcX?~;=&dHoIO`+1ucP#DjLS05AK6wC6^UeF zN22|C^5(4}Jk|0;?Wc(*Kd0;-+I!usDzpY3we<55Wokinj zPPys2QCdvd&GPwUlM?%b9cy9z?C(@(l&V@qN=vtkBb2x@Ry0~(_b?7=JcDe%JCkgZ FeFLE7j*tKV literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.py new file mode 100644 index 0000000..afdcc88 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.py @@ -0,0 +1,60 @@ +import logging + +from pip._vendor import requests + +from pip._vendor.cachecontrol.adapter import CacheControlAdapter +from pip._vendor.cachecontrol.cache import DictCache +from pip._vendor.cachecontrol.controller import logger + +from argparse import ArgumentParser + + +def setup_logging(): + logger.setLevel(logging.DEBUG) + handler = logging.StreamHandler() + logger.addHandler(handler) + + +def get_session(): + adapter = CacheControlAdapter( + DictCache(), + cache_etags=True, + serializer=None, + heuristic=None, + ) + sess = requests.Session() + sess.mount('http://', adapter) + sess.mount('https://', adapter) + + sess.cache_controller = adapter.controller + return sess + + +def get_args(): + parser = ArgumentParser() + parser.add_argument('url', help='The URL to try and cache') + return parser.parse_args() + + +def main(args=None): + args = get_args() + sess = get_session() + + # Make a request to get a response + resp = sess.get(args.url) + + # Turn on logging + setup_logging() + + # try setting the cache + sess.cache_controller.cache_response(resp.request, resp.raw) + + # Now try to get it + if sess.cache_controller.cached_request(resp.request): + print('Cached!') + else: + print('Not cached :(') + + +if __name__ == '__main__': + main() diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/_cmd.pyc new file mode 100644 index 0000000000000000000000000000000000000000..57ee4670bfbfef3df42ed7a42300895b9235c925 GIT binary patch literal 2024 zcmb_cO>ZMb5Url^*EkL_yUW)BwpyJLMlQkd$jKPagT~Vl>=H2{J2lWkjfFQM}9n@BBF9k>oLYddV__JNRPys zkdDMT<~{Y8-Y8n1keQM`qMrk5eRBibu+0qsM&Q>57IajmyL*QXnj1VCHKR?C?8N$b+dFxRGVLkzftyxO`x z{O8|3dv)oK;jLV2vhpgcbYWUIMkLd^8~XD3-JQ?Ja7m0khc|a+GjH{aq&=IWViU(cYznLrWq?1W!*EF4HS&AN^f_!@324s|Wd!jf3~aQHCa zj1TYf6n>}PNIg~?hJs7vXTiBW%)fAW4c~f+27-=s_-(*SxdXzi)jrGj20agv!j9;! z6EPA|m%z2qW(@4*Rn=#7FRwI1%KI)woeS1YWVs z^6CrxTkaHsHly%SI1E1u-&3PN?!h$WIcXZdiwOyfLE0QQ)me8-`F@-s^Pk|E9K7qg zv#!&mtKBDWn<=mP#{cxK^ZccVCcnS30hS0=#O--tdOT5lz~nQS?o?G)8k`CNe=Cdk mf3IfN^;c!B4~6-fb!?fsNiYr2>S*?97!9J6XfSy)QGWw$nYOq9 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py new file mode 100644 index 0000000..74589e0 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py @@ -0,0 +1,117 @@ +import functools + +from pip._vendor.requests.adapters import HTTPAdapter + +from .controller import CacheController +from .cache import DictCache +from .filewrapper import CallbackFileWrapper + + +class CacheControlAdapter(HTTPAdapter): + invalidating_methods = set(['PUT', 'DELETE']) + + def __init__(self, cache=None, + cache_etags=True, + controller_class=None, + serializer=None, + heuristic=None, + *args, **kw): + super(CacheControlAdapter, self).__init__(*args, **kw) + self.cache = cache or DictCache() + self.heuristic = heuristic + + controller_factory = controller_class or CacheController + self.controller = controller_factory( + self.cache, + cache_etags=cache_etags, + serializer=serializer, + ) + + def send(self, request, **kw): + """ + Send a request. Use the request information to see if it + exists in the cache and cache the response if we need to and can. + """ + if request.method == 'GET': + cached_response = self.controller.cached_request(request) + if cached_response: + return self.build_response(request, cached_response, + from_cache=True) + + # check for etags and add headers if appropriate + request.headers.update( + self.controller.conditional_headers(request) + ) + + resp = super(CacheControlAdapter, self).send(request, **kw) + + return resp + + def build_response(self, request, response, from_cache=False): + """ + Build a response by making a request or using the cache. + + This will end up calling send and returning a potentially + cached response + """ + if not from_cache and request.method == 'GET': + + # apply any expiration heuristics + if response.status == 304: + # We must have sent an ETag request. This could mean + # that we've been expired already or that we simply + # have an etag. In either case, we want to try and + # update the cache if that is the case. + cached_response = self.controller.update_cached_response( + request, response + ) + + if cached_response is not response: + from_cache = True + + # We are done with the server response, read a + # possible response body (compliant servers will + # not return one, but we cannot be 100% sure) and + # release the connection back to the pool. + response.read(decode_content=False) + response.release_conn() + + response = cached_response + + # We always cache the 301 responses + elif response.status == 301: + self.controller.cache_response(request, response) + else: + # Check for any heuristics that might update headers + # before trying to cache. + if self.heuristic: + response = self.heuristic.apply(response) + + # Wrap the response file with a wrapper that will cache the + # response when the stream has been consumed. + response._fp = CallbackFileWrapper( + response._fp, + functools.partial( + self.controller.cache_response, + request, + response, + ) + ) + + resp = super(CacheControlAdapter, self).build_response( + request, response + ) + + # See if we should invalidate the cache. + if request.method in self.invalidating_methods and resp.ok: + cache_url = self.controller.cache_url(request.url) + self.cache.delete(cache_url) + + # Give the request a from_cache attr to let people use it + resp.from_cache = from_cache + + return resp + + def close(self): + self.cache.close() + super(CacheControlAdapter, self).close() diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.pyc new file mode 100644 index 0000000000000000000000000000000000000000..84a66a40c53217bcc91c68e9e52d02847bf42b7a GIT binary patch literal 3071 zcmb_eUvJz*5TCX0PcFSQY0{*vTEGt=U4@bW;*p}ZX$lgMR?bxwCnU?U_Yx;Q+x6}> z1d^xp6`qjz1bhU(5MO~00Kb`a@2Ggqop-z*&(7}5{AR}f-%E?hee*J*=I7)75W|c? zQe291qLG_>lq;HeH1bHLKBXl%G)&Q(5T~{JCt{6vOuE+JaNylqVGpNR=+>!VXN#P{PqS4Q+o~M>*4VEqcpCpt}|x3H_Mpq#L1D~DGOVdd9G{s zf>k`p5-TqqYfWVH{2)$Fo@TjzS;tkSYwP%P9nCH?4|K5ZF@|{#qG7w@gF9CodUUC1 z1k*dD+f19wqc?3f8(x8NBiOpY?s)@Y7}*x)B8B^dE|gk!^79u%%UeC!{dRY_oA8v4 z;QKQSa{yv-DLRL@JUaI1yhG<*`jtqXE2=(XJ#ZslM=d&U%LLS?>H$IZ#R8qc zD@M-#FgId3uYGb#87e)v6NWWzSSurl_No=#S2y7V`t%GbFWOk-N|A;sm z$jLJCQxHR^n>kgcDhuev!c!d-TBoea2^Cv2O#=L{c87wmaa~R#(J|ooOEOHfJu1_X z{cW#<$m=v}&MqtoA~eUzC(5aKmGbI#=;zScmzODZ9QTX)&eJR9N{ zT#{1!+~rE6fUpaXUd?p3MECD+b)(uyoq=w}LI5x{|Jh6!tx`Urf`NQZHtLgIqT}oT zQ-RXvu|U)p;bpQbEW@b3G2i9_^-iqjy;kX@L-j+2Qh2;36EGovQ)Jd9_gq?S(D5y< zrcF-4e^?XUX1XshFn_?eGuS@nx*;jl!2IAWn8YVpaX8Pbpsa(bVHPKZU}bA@reS!L zncy_b^MI3aT0tPsS=dN&f>&!htqZ5JDy=Roif?{4)8NntF?WO+Kje0neF79ncBDEf zQyp;~V-=g=5AHxBTnCZ7FgCVR<5Fw`OqVAv5joSG{_r--Gumq8l+^yGac;EbGF6_BpO%J8phKCb-K)rBw7{MZ0kHD!&|)ICP-GiMh8M3 z!!MDm4X*T;C!$E45>4w|)Z;FlM9fTaMyo^CB0X0UJA98db32*Y$pRr~T=)T#O^_>1 zXtw1u4D&e%bvOLwc2D*FzUp;W)S}n(m(@nAr`B6O61{__;;Yrxvg)_)s&%#I_q>GL zClB`E4u<&|}WG z=A@R?o~!Zf`Y0;miH;&^0#P(6(`n9+Y##s?evG>yZ?7!0;81#Scn|!LZ5Momyv6*? zGP{Cq&*$ZiFZH*hRy`j9;eUUrceDR!!0*EQAeNzoZ-}kt`(dl;7iO#Zb}%6XNb*d+ sfZRupd?<0d8{>=g)P0dkf=DmAa(e{pUpNfgc5S@+Fv<-z8AwWnVd_W?Ie%yKiA=)CON+^JfROrQW?M>^}v8{MhDN;|A zJ3p2m0Pl^HM)U%xA<0a}oAvH{GyBHze%x%w&#L`c#xD=wuVK|&xJ2Xt-bm7r%t*f> z2MsZaC)Sf5Mw{|YD{Wyx@i^CHeJAdoL zuHP#Le%dcH+qbz(^P_r3weE9vVtdgrbADR+k?)QNHcHx6)U$q?uk~%e7>xWRja^#g z(O|URPJiOnG1$vB;ocSTsar&_9aVOR8($LToNZXO3THtSe1ynB5sVpleP-p_!4#1 z3q%{PUv89Xxpp{Avt%vW-gDK1;jjX6R#f&5f-#y7F}ek~FwCRA4MQz^81{=~nBg+uUBNsZ zX9ZNm6q82RJ#PWYa`B3;)mZfSR_(okK7ZF9i?z+U8*pRoL1U1gQPtJ*!$>VZw2@kV zEy_=0VK$VDnjt(XE&^VEgx zF4J6HH%;Rz>B`{)fY5^@X31Q36yj4#tT51@;G=xN;i7SQ!juO4iWXNXbc@_hDFkFS zJLI~}BP=67x@!6QZ0+} z|CNZPcmk_PK}_2$n{G#C&&NP;gYGsRTiKPSFiovS*FEUL61KPx8~1~yCi+3MTem7g v3d5v`(W%&r>gPHh{Q)lOGf@9O(5|9O%^05Q@MYZ}Ur{KUvX)u#?k)cUX>-q@ literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.py new file mode 100644 index 0000000..f9e66a1 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.py @@ -0,0 +1,18 @@ +from textwrap import dedent + +try: + from .file_cache import FileCache +except ImportError: + notice = dedent(''' + NOTE: In order to use the FileCache you must have + lockfile installed. You can install it via pip: + pip install lockfile + ''') + print(notice) + + +try: + import redis + from .redis_cache import RedisCache +except ImportError: + pass diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4e0944e1558197ebcd32abd0e005beb53bc09769 GIT binary patch literal 607 zcmYjO!EO^V5FKZ;X%eUeQq}XQr*LRP9)FwBtH{L zn$acP%nn3_xfh!$$#|4RktW9`;azbe**jzDqHfj{{|K6**oW(ni*vkk=!2$!?6Hr8 zye8Z?o zv6DCzQA^S$W{tC?n8zv55B?tNZYeo%>Plx&D8-@dutd`pGw)rOq*VV+NKyyM{Q4#as? n8E3ev&bnn54GMLn4plLns7X<%ry2bNHKUD` literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py new file mode 100644 index 0000000..b77728f --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py @@ -0,0 +1,116 @@ +import hashlib +import os + +from pip._vendor.lockfile import LockFile +from pip._vendor.lockfile.mkdirlockfile import MkdirLockFile + +from ..cache import BaseCache +from ..controller import CacheController + + +def _secure_open_write(filename, fmode): + # We only want to write to this file, so open it in write only mode + flags = os.O_WRONLY + + # os.O_CREAT | os.O_EXCL will fail if the file already exists, so we only + # will open *new* files. + # We specify this because we want to ensure that the mode we pass is the + # mode of the file. + flags |= os.O_CREAT | os.O_EXCL + + # Do not follow symlinks to prevent someone from making a symlink that + # we follow and insecurely open a cache file. + if hasattr(os, "O_NOFOLLOW"): + flags |= os.O_NOFOLLOW + + # On Windows we'll mark this file as binary + if hasattr(os, "O_BINARY"): + flags |= os.O_BINARY + + # Before we open our file, we want to delete any existing file that is + # there + try: + os.remove(filename) + except (IOError, OSError): + # The file must not exist already, so we can just skip ahead to opening + pass + + # Open our file, the use of os.O_CREAT | os.O_EXCL will ensure that if a + # race condition happens between the os.remove and this line, that an + # error will be raised. Because we utilize a lockfile this should only + # happen if someone is attempting to attack us. + fd = os.open(filename, flags, fmode) + try: + return os.fdopen(fd, "wb") + except: + # An error occurred wrapping our FD in a file object + os.close(fd) + raise + + +class FileCache(BaseCache): + def __init__(self, directory, forever=False, filemode=0o0600, + dirmode=0o0700, use_dir_lock=None, lock_class=None): + + if use_dir_lock is not None and lock_class is not None: + raise ValueError("Cannot use use_dir_lock and lock_class together") + + if use_dir_lock: + lock_class = MkdirLockFile + + if lock_class is None: + lock_class = LockFile + + self.directory = directory + self.forever = forever + self.filemode = filemode + self.dirmode = dirmode + self.lock_class = lock_class + + + @staticmethod + def encode(x): + return hashlib.sha224(x.encode()).hexdigest() + + def _fn(self, name): + # NOTE: This method should not change as some may depend on it. + # See: https://github.com/ionrock/cachecontrol/issues/63 + hashed = self.encode(name) + parts = list(hashed[:5]) + [hashed] + return os.path.join(self.directory, *parts) + + def get(self, key): + name = self._fn(key) + if not os.path.exists(name): + return None + + with open(name, 'rb') as fh: + return fh.read() + + def set(self, key, value): + name = self._fn(key) + + # Make sure the directory exists + try: + os.makedirs(os.path.dirname(name), self.dirmode) + except (IOError, OSError): + pass + + with self.lock_class(name) as lock: + # Write our actual file + with _secure_open_write(lock.path, self.filemode) as fh: + fh.write(value) + + def delete(self, key): + name = self._fn(key) + if not self.forever: + os.remove(name) + + +def url_to_file_path(url, filecache): + """Return the file cache path based on the URL. + + This does not ensure the file exists! + """ + key = CacheController.cache_url(url) + return filecache._fn(key) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/file_cache.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9598d5c5194ec3ed4d64388e2fe2d9a86aa39b4b GIT binary patch literal 3769 zcmcInZEqXL5uUvxDUp^VTTx@TNgJkV5Voi##0dhVHHuh<9T-+b##)@5z{3!BtbWO6Js#m!A?%)~@lK+ICoq>VaETh}5(!)o2 zVg1N;jC^^R<@LpI9$>`lx{$UKXCEZ#WNyBSA^m(%l}%k0g{@OgXrXneLv#N@*N9Aw zoCk6isOPpP@>Oj@sUZ^`4>eHLL;*y-<)<(=;c}rTj zTGN$rAcsAv{~^Yh(#SVFMUQqk#Tm8>$zB3uIg z*&XnDJ53M$Fy0wH8g6e7_Y}-wy!CkJe)O~<2;c7y2&c-Go9p+Y;m-EcW=ZEhh#ubm zx*<@*_~ADXwsm-txTI<7h?_)hE$cyho2 zZSjdMv#Q=qNr}{Rz<;<+?iH(I2Ymio-Y2r&KpZYx;{Dyx}Ejbs<{!O zwL){#ycx7Qzc8U$H(_wyz?mYXsj_VmVnk*O&F!MIhyx=wn8z9dg8u_~j!0^WZPUBY zl_R5$WGxMhB}NwpN3iUu(3M3ds$4;r#FZYe<_w8=h>bmRe)_OIB7N%FFRWkoADUPl3 zDPnqv&=^Gs&Ahg0Q`M)+xp7t76I(9`r8FWcFjJXlH4#ll`XDi+10%PPFhOD5c&dDyDntLt;-XB< znOFu4OWjf3UgWNc79==Inu!iitGrY;C}PpOn4{yGpSS|?vzexts+$0Bzp-oUf|H4Mt`85tBxmE2oqIAP-)*MrGOZF&mgU>G;6c)&TDr^kZ0z#`^iP^rqS}e z7{9nH=Xex!nG}gWR6Wjru`cHTzb#W#b9IUFfWHL04^n2FOT0Ce&5}cl4CXxe7eMr#*QbeS}UGCrqi{GfcJ2iqTyNSLh&T8@w^a-9QHi zg`s)hyh$eow>_)rD$+#V^hXG2*GnqFY#>yE!tgV>)JSZMD^1>MnQR(2Vqo z@7{sUq8cIp@OiEA+?}zONWQs<$SAY={>ddF6Y6trs>l0aa|~Ms?-#V5!G{lwNZjxV);5@ zY{-3V7&ld{&rseJ1Qy32l=iC8mwEJCeE7<=4hfIijroIigMrGK{tZOC|EJxU@lU0N zEmMn9%ioVNro@{+jPb`&q~W2tgPxAI&|O0C+UcY*aL=>;FFc(lg%z_B+%PxT!tUU$ GKmQCB9S@TL literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py new file mode 100644 index 0000000..9f5d55f --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py @@ -0,0 +1,41 @@ +from __future__ import division + +from datetime import datetime + + +def total_seconds(td): + """Python 2.6 compatability""" + if hasattr(td, 'total_seconds'): + return td.total_seconds() + + ms = td.microseconds + secs = (td.seconds + td.days * 24 * 3600) + return (ms + secs * 10**6) / 10**6 + + +class RedisCache(object): + + def __init__(self, conn): + self.conn = conn + + def get(self, key): + return self.conn.get(key) + + def set(self, key, value, expires=None): + if not expires: + self.conn.set(key, value) + else: + expires = expires - datetime.now() + self.conn.setex(key, total_seconds(expires), value) + + def delete(self, key): + self.conn.delete(key) + + def clear(self): + """Helper for clearing all the keys in a database. Use with + caution!""" + for key in self.conn.keys(): + self.conn.delete(key) + + def close(self): + self.conn.disconnect() diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0bc89ddda8d65f2f327fc971d26ca28567fd5ee8 GIT binary patch literal 2330 zcmcgtO>f&q5S=Au*;12OEnM3{3xvrfEKu7(4m}k`Z1<1`g;LNcf(Qr*np|7!@+1m9=GFwVZ3C+5nT(CTaW68urCzOIDzHSjS`nHeGdq?7}(a%jYro! zu?sE6r!cD6(c((sTkXFSkamlI4ja#_;IIwa_9$TGOWo8YQo6!UA zhOqkRo*!*CUATtz2y&X(#JM{1;JC+KVbZ#4H<1;cjo`9mVM9dfWPK)og>{(YbvERG zlFq(h>%bMWgPED_oz6|3?IlNtuP)EwkQQI+GOOx?G)bob?dmFT2KJ!VnX$3V?9Ud0 z4iQ+yLf)ntdIPnq9EK5=9?Kq>!~<|g0WUvfL$lT_F^T9*tLoJ6gY-Mj5!Sp(3HJ14 zcD+rB$p%GDGNjnEYsc6dltU?^n2BLsB{9ZLdVmlPsSNQ-OHY0leZiv@aU?k!$EGwc zj=$n_ERH7iDew`yk%N+u9Ko&nfE}+0NC%P6wG;di@T+2<-S2I)Vm0bephFfhnxFgk9+urCi@^10u zzvM*;?BZQYjL0*cb8t(QC9G9R40#`M>m&xzfCH{Y;(a!*o-Wa|l0U!Q?niyt%tAqE( zO@~4Iq{-ZId4D{X0@tJjR2L8amx6XZk9O9<5h|lJ3UIQ_^NJ>TX>BN%i c^ny8#u+b`!3XwlH)cu5XusD3=jr_szZFBx@}16@QRchkDy#l!Sza}j9jaX1-cD!ej4mC1 zSEXA%n59tKVLsjs-GNKpO5Ud?vkqr;2ft13vM}2Eb8E@>8dhY)2gOv1wL-r|fN9b+ zrY2oJVVP^2TKr$3^Nw`II$NPjn|FQ@(#$oB^B?`VukupOT10PlE~U^p`hFL}cO-g)Y6-Y9e%D kGM}0{{>N#d^Gf0Gu!P$q$JvM_Y{WSmQXKLj8K*2^9}0z)DF6Tf literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.py new file mode 100644 index 0000000..6e591f8 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.py @@ -0,0 +1,353 @@ +""" +The httplib2 algorithms ported for use with requests. +""" +import logging +import re +import calendar +import time +from email.utils import parsedate_tz + +from pip._vendor.requests.structures import CaseInsensitiveDict + +from .cache import DictCache +from .serialize import Serializer + + +logger = logging.getLogger(__name__) + +URI = re.compile(r"^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?") + + +def parse_uri(uri): + """Parses a URI using the regex given in Appendix B of RFC 3986. + + (scheme, authority, path, query, fragment) = parse_uri(uri) + """ + groups = URI.match(uri).groups() + return (groups[1], groups[3], groups[4], groups[6], groups[8]) + + +class CacheController(object): + """An interface to see if request should cached or not. + """ + def __init__(self, cache=None, cache_etags=True, serializer=None): + self.cache = cache or DictCache() + self.cache_etags = cache_etags + self.serializer = serializer or Serializer() + + @classmethod + def _urlnorm(cls, uri): + """Normalize the URL to create a safe key for the cache""" + (scheme, authority, path, query, fragment) = parse_uri(uri) + if not scheme or not authority: + raise Exception("Only absolute URIs are allowed. uri = %s" % uri) + + scheme = scheme.lower() + authority = authority.lower() + + if not path: + path = "/" + + # Could do syntax based normalization of the URI before + # computing the digest. See Section 6.2.2 of Std 66. + request_uri = query and "?".join([path, query]) or path + defrag_uri = scheme + "://" + authority + request_uri + + return defrag_uri + + @classmethod + def cache_url(cls, uri): + return cls._urlnorm(uri) + + def parse_cache_control(self, headers): + """ + Parse the cache control headers returning a dictionary with values + for the different directives. + """ + retval = {} + + cc_header = 'cache-control' + if 'Cache-Control' in headers: + cc_header = 'Cache-Control' + + if cc_header in headers: + parts = headers[cc_header].split(',') + parts_with_args = [ + tuple([x.strip().lower() for x in part.split("=", 1)]) + for part in parts if -1 != part.find("=") + ] + parts_wo_args = [ + (name.strip().lower(), 1) + for name in parts if -1 == name.find("=") + ] + retval = dict(parts_with_args + parts_wo_args) + return retval + + def cached_request(self, request): + """ + Return a cached response if it exists in the cache, otherwise + return False. + """ + cache_url = self.cache_url(request.url) + logger.debug('Looking up "%s" in the cache', cache_url) + cc = self.parse_cache_control(request.headers) + + # Bail out if the request insists on fresh data + if 'no-cache' in cc: + logger.debug('Request header has "no-cache", cache bypassed') + return False + + if 'max-age' in cc and cc['max-age'] == 0: + logger.debug('Request header has "max_age" as 0, cache bypassed') + return False + + # Request allows serving from the cache, let's see if we find something + cache_data = self.cache.get(cache_url) + if cache_data is None: + logger.debug('No cache entry available') + return False + + # Check whether it can be deserialized + resp = self.serializer.loads(request, cache_data) + if not resp: + logger.warning('Cache entry deserialization failed, entry ignored') + return False + + # If we have a cached 301, return it immediately. We don't + # need to test our response for other headers b/c it is + # intrinsically "cacheable" as it is Permanent. + # See: + # https://tools.ietf.org/html/rfc7231#section-6.4.2 + # + # Client can try to refresh the value by repeating the request + # with cache busting headers as usual (ie no-cache). + if resp.status == 301: + msg = ('Returning cached "301 Moved Permanently" response ' + '(ignoring date and etag information)') + logger.debug(msg) + return resp + + headers = CaseInsensitiveDict(resp.headers) + if not headers or 'date' not in headers: + if 'etag' not in headers: + # Without date or etag, the cached response can never be used + # and should be deleted. + logger.debug('Purging cached response: no date or etag') + self.cache.delete(cache_url) + logger.debug('Ignoring cached response: no date') + return False + + now = time.time() + date = calendar.timegm( + parsedate_tz(headers['date']) + ) + current_age = max(0, now - date) + logger.debug('Current age based on date: %i', current_age) + + # TODO: There is an assumption that the result will be a + # urllib3 response object. This may not be best since we + # could probably avoid instantiating or constructing the + # response until we know we need it. + resp_cc = self.parse_cache_control(headers) + + # determine freshness + freshness_lifetime = 0 + + # Check the max-age pragma in the cache control header + if 'max-age' in resp_cc and resp_cc['max-age'].isdigit(): + freshness_lifetime = int(resp_cc['max-age']) + logger.debug('Freshness lifetime from max-age: %i', + freshness_lifetime) + + # If there isn't a max-age, check for an expires header + elif 'expires' in headers: + expires = parsedate_tz(headers['expires']) + if expires is not None: + expire_time = calendar.timegm(expires) - date + freshness_lifetime = max(0, expire_time) + logger.debug("Freshness lifetime from expires: %i", + freshness_lifetime) + + # Determine if we are setting freshness limit in the + # request. Note, this overrides what was in the response. + if 'max-age' in cc: + try: + freshness_lifetime = int(cc['max-age']) + logger.debug('Freshness lifetime from request max-age: %i', + freshness_lifetime) + except ValueError: + freshness_lifetime = 0 + + if 'min-fresh' in cc: + try: + min_fresh = int(cc['min-fresh']) + except ValueError: + min_fresh = 0 + # adjust our current age by our min fresh + current_age += min_fresh + logger.debug('Adjusted current age from min-fresh: %i', + current_age) + + # Return entry if it is fresh enough + if freshness_lifetime > current_age: + logger.debug('The response is "fresh", returning cached response') + logger.debug('%i > %i', freshness_lifetime, current_age) + return resp + + # we're not fresh. If we don't have an Etag, clear it out + if 'etag' not in headers: + logger.debug( + 'The cached response is "stale" with no etag, purging' + ) + self.cache.delete(cache_url) + + # return the original handler + return False + + def conditional_headers(self, request): + cache_url = self.cache_url(request.url) + resp = self.serializer.loads(request, self.cache.get(cache_url)) + new_headers = {} + + if resp: + headers = CaseInsensitiveDict(resp.headers) + + if 'etag' in headers: + new_headers['If-None-Match'] = headers['ETag'] + + if 'last-modified' in headers: + new_headers['If-Modified-Since'] = headers['Last-Modified'] + + return new_headers + + def cache_response(self, request, response, body=None): + """ + Algorithm for caching requests. + + This assumes a requests Response object. + """ + # From httplib2: Don't cache 206's since we aren't going to + # handle byte range requests + cacheable_status_codes = [200, 203, 300, 301] + if response.status not in cacheable_status_codes: + logger.debug( + 'Status code %s not in %s', + response.status, + cacheable_status_codes + ) + return + + response_headers = CaseInsensitiveDict(response.headers) + + # If we've been given a body, our response has a Content-Length, that + # Content-Length is valid then we can check to see if the body we've + # been given matches the expected size, and if it doesn't we'll just + # skip trying to cache it. + if (body is not None and + "content-length" in response_headers and + response_headers["content-length"].isdigit() and + int(response_headers["content-length"]) != len(body)): + return + + cc_req = self.parse_cache_control(request.headers) + cc = self.parse_cache_control(response_headers) + + cache_url = self.cache_url(request.url) + logger.debug('Updating cache with response from "%s"', cache_url) + + # Delete it from the cache if we happen to have it stored there + no_store = False + if cc.get('no-store'): + no_store = True + logger.debug('Response header has "no-store"') + if cc_req.get('no-store'): + no_store = True + logger.debug('Request header has "no-store"') + if no_store and self.cache.get(cache_url): + logger.debug('Purging existing cache entry to honor "no-store"') + self.cache.delete(cache_url) + + # If we've been given an etag, then keep the response + if self.cache_etags and 'etag' in response_headers: + logger.debug('Caching due to etag') + self.cache.set( + cache_url, + self.serializer.dumps(request, response, body=body), + ) + + # Add to the cache any 301s. We do this before looking that + # the Date headers. + elif response.status == 301: + logger.debug('Caching permanant redirect') + self.cache.set( + cache_url, + self.serializer.dumps(request, response) + ) + + # Add to the cache if the response headers demand it. If there + # is no date header then we can't do anything about expiring + # the cache. + elif 'date' in response_headers: + # cache when there is a max-age > 0 + if cc and cc.get('max-age'): + if int(cc['max-age']) > 0: + logger.debug('Caching b/c date exists and max-age > 0') + self.cache.set( + cache_url, + self.serializer.dumps(request, response, body=body), + ) + + # If the request can expire, it means we should cache it + # in the meantime. + elif 'expires' in response_headers: + if response_headers['expires']: + logger.debug('Caching b/c of expires header') + self.cache.set( + cache_url, + self.serializer.dumps(request, response, body=body), + ) + + def update_cached_response(self, request, response): + """On a 304 we will get a new set of headers that we want to + update our cached value with, assuming we have one. + + This should only ever be called when we've sent an ETag and + gotten a 304 as the response. + """ + cache_url = self.cache_url(request.url) + + cached_response = self.serializer.loads( + request, + self.cache.get(cache_url) + ) + + if not cached_response: + # we didn't have a cached response + return response + + # Lets update our headers with the headers from the new request: + # http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-26#section-4.1 + # + # The server isn't supposed to send headers that would make + # the cached body invalid. But... just in case, we'll be sure + # to strip out ones we know that might be problmatic due to + # typical assumptions. + excluded_headers = [ + "content-length", + ] + + cached_response.headers.update( + dict((k, v) for k, v in response.headers.items() + if k.lower() not in excluded_headers) + ) + + # we want a 200 b/c we have content via the cache + cached_response.status = 200 + + # update our cache + self.cache.set( + cache_url, + self.serializer.dumps(request, cached_response), + ) + + return cached_response diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fa43c6ecb7f85b0aeeb3ea35d9e400e66879fe0e GIT binary patch literal 8978 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 PJK306xV`Y!!rT7^DP0+u literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py new file mode 100644 index 0000000..ffbfbf6 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py @@ -0,0 +1,190 @@ +import base64 +import io +import json +import zlib + +from pip._vendor.requests.structures import CaseInsensitiveDict + +from .compat import HTTPResponse, pickle, text_type + + +def _b64_encode_bytes(b): + return base64.b64encode(b).decode("ascii") + + +def _b64_encode_str(s): + return _b64_encode_bytes(s.encode("utf8")) + + +def _b64_encode(s): + if isinstance(s, text_type): + return _b64_encode_str(s) + return _b64_encode_bytes(s) + + +def _b64_decode_bytes(b): + return base64.b64decode(b.encode("ascii")) + + +def _b64_decode_str(s): + return _b64_decode_bytes(s).decode("utf8") + + +class Serializer(object): + + def dumps(self, request, response, body=None): + response_headers = CaseInsensitiveDict(response.headers) + + if body is None: + body = response.read(decode_content=False) + + # NOTE: 99% sure this is dead code. I'm only leaving it + # here b/c I don't have a test yet to prove + # it. Basically, before using + # `cachecontrol.filewrapper.CallbackFileWrapper`, + # this made an effort to reset the file handle. The + # `CallbackFileWrapper` short circuits this code by + # setting the body as the content is consumed, the + # result being a `body` argument is *always* passed + # into cache_response, and in turn, + # `Serializer.dump`. + response._fp = io.BytesIO(body) + + data = { + "response": { + "body": _b64_encode_bytes(body), + "headers": dict( + (_b64_encode(k), _b64_encode(v)) + for k, v in response.headers.items() + ), + "status": response.status, + "version": response.version, + "reason": _b64_encode_str(response.reason), + "strict": response.strict, + "decode_content": response.decode_content, + }, + } + + # Construct our vary headers + data["vary"] = {} + if "vary" in response_headers: + varied_headers = response_headers['vary'].split(',') + for header in varied_headers: + header = header.strip() + data["vary"][header] = request.headers.get(header, None) + + # Encode our Vary headers to ensure they can be serialized as JSON + data["vary"] = dict( + (_b64_encode(k), _b64_encode(v) if v is not None else v) + for k, v in data["vary"].items() + ) + + return b",".join([ + b"cc=2", + zlib.compress( + json.dumps( + data, separators=(",", ":"), sort_keys=True, + ).encode("utf8"), + ), + ]) + + def loads(self, request, data): + # Short circuit if we've been given an empty set of data + if not data: + return + + # Determine what version of the serializer the data was serialized + # with + try: + ver, data = data.split(b",", 1) + except ValueError: + ver = b"cc=0" + + # Make sure that our "ver" is actually a version and isn't a false + # positive from a , being in the data stream. + if ver[:3] != b"cc=": + data = ver + data + ver = b"cc=0" + + # Get the version number out of the cc=N + ver = ver.split(b"=", 1)[-1].decode("ascii") + + # Dispatch to the actual load method for the given version + try: + return getattr(self, "_loads_v{0}".format(ver))(request, data) + except AttributeError: + # This is a version we don't have a loads function for, so we'll + # just treat it as a miss and return None + return + + def prepare_response(self, request, cached): + """Verify our vary headers match and construct a real urllib3 + HTTPResponse object. + """ + # Special case the '*' Vary value as it means we cannot actually + # determine if the cached response is suitable for this request. + if "*" in cached.get("vary", {}): + return + + # Ensure that the Vary headers for the cached response match our + # request + for header, value in cached.get("vary", {}).items(): + if request.headers.get(header, None) != value: + return + + body_raw = cached["response"].pop("body") + + try: + body = io.BytesIO(body_raw) + except TypeError: + # This can happen if cachecontrol serialized to v1 format (pickle) + # using Python 2. A Python 2 str(byte string) will be unpickled as + # a Python 3 str (unicode string), which will cause the above to + # fail with: + # + # TypeError: 'str' does not support the buffer interface + body = io.BytesIO(body_raw.encode('utf8')) + + return HTTPResponse( + body=body, + preload_content=False, + **cached["response"] + ) + + def _loads_v0(self, request, data): + # The original legacy cache data. This doesn't contain enough + # information to construct everything we need, so we'll treat this as + # a miss. + return + + def _loads_v1(self, request, data): + try: + cached = pickle.loads(data) + except ValueError: + return + + return self.prepare_response(request, cached) + + def _loads_v2(self, request, data): + try: + cached = json.loads(zlib.decompress(data).decode("utf8")) + except ValueError: + return + + # We need to decode the items that we've base64 encoded + cached["response"]["body"] = _b64_decode_bytes( + cached["response"]["body"] + ) + cached["response"]["headers"] = dict( + (_b64_decode_str(k), _b64_decode_str(v)) + for k, v in cached["response"]["headers"].items() + ) + cached["response"]["reason"] = _b64_decode_str( + cached["response"]["reason"], + ) + cached["vary"] = dict( + (_b64_decode_str(k), _b64_decode_str(v) if v is not None else v) + for k, v in cached["vary"].items() + ) + + return self.prepare_response(request, cached) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.pyc new file mode 100644 index 0000000000000000000000000000000000000000..38fc72148857f8de7b68686f71e20fe45ca4b877 GIT binary patch literal 5833 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 W^!L{V6x{gdF1f3PY7zfD%Krd2;d_Dr literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.py new file mode 100644 index 0000000..ea421aa --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.py @@ -0,0 +1,21 @@ +from .adapter import CacheControlAdapter +from .cache import DictCache + + +def CacheControl(sess, + cache=None, + cache_etags=True, + serializer=None, + heuristic=None): + + cache = cache or DictCache() + adapter = CacheControlAdapter( + cache, + cache_etags=cache_etags, + serializer=serializer, + heuristic=heuristic, + ) + sess.mount('http://', adapter) + sess.mount('https://', adapter) + + return sess diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/cachecontrol/wrapper.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f3c33b1e56b1d8cf9130c8f366a7120194c78fc5 GIT binary patch literal 682 zcmb_Z%}&EG40f8furb60FHsJoXAmI9I1f>fkan3$8*N4Xi4u1R)Sbo~^8(n}1Uvw3 z{57B5*qfRLAjPakF> z?;j&hQwV~H0Z#}fX|`08rbg40<2==<%r@Ag;9ZfS`yu0#A=y43A+rwzod7)m1lRzq z1)yLLN$Wfo)Jd-1`LGdk9Y6>0N`4=@05%?o9jCw#e~h@q6b}e9)-_j{E-d!BpfW{T z79YwWD_g486c&rj?lD8u7jbM^9q%oXND@i7&x8z+JE)qrMpp!VqE=b!{H|Eykt=bh zIEb7$-A#nH5HZ**f*30u>q3uS+M>)y>FxM_wP1&{`AXG!V`7&y+fFuqGpW|foauKQ zP=?8$sk1P9OaS4LkRo(%&l`%NH;q_C!fm-G5=Y(LvBYUpE7!=AX;s2waTFaVZ;U|UFiS- literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.py new file mode 100644 index 0000000..7877658 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.py @@ -0,0 +1,102 @@ +# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. +''' +This module generates ANSI character codes to printing colors to terminals. +See: http://en.wikipedia.org/wiki/ANSI_escape_code +''' + +CSI = '\033[' +OSC = '\033]' +BEL = '\007' + + +def code_to_chars(code): + return CSI + str(code) + 'm' + +def set_title(title): + return OSC + '2;' + title + BEL + +def clear_screen(mode=2): + return CSI + str(mode) + 'J' + +def clear_line(mode=2): + return CSI + str(mode) + 'K' + + +class AnsiCodes(object): + def __init__(self): + # the subclasses declare class attributes which are numbers. + # Upon instantiation we define instance attributes, which are the same + # as the class attributes but wrapped with the ANSI escape sequence + for name in dir(self): + if not name.startswith('_'): + value = getattr(self, name) + setattr(self, name, code_to_chars(value)) + + +class AnsiCursor(object): + def UP(self, n=1): + return CSI + str(n) + 'A' + def DOWN(self, n=1): + return CSI + str(n) + 'B' + def FORWARD(self, n=1): + return CSI + str(n) + 'C' + def BACK(self, n=1): + return CSI + str(n) + 'D' + def POS(self, x=1, y=1): + return CSI + str(y) + ';' + str(x) + 'H' + + +class AnsiFore(AnsiCodes): + BLACK = 30 + RED = 31 + GREEN = 32 + YELLOW = 33 + BLUE = 34 + MAGENTA = 35 + CYAN = 36 + WHITE = 37 + RESET = 39 + + # These are fairly well supported, but not part of the standard. + LIGHTBLACK_EX = 90 + LIGHTRED_EX = 91 + LIGHTGREEN_EX = 92 + LIGHTYELLOW_EX = 93 + LIGHTBLUE_EX = 94 + LIGHTMAGENTA_EX = 95 + LIGHTCYAN_EX = 96 + LIGHTWHITE_EX = 97 + + +class AnsiBack(AnsiCodes): + BLACK = 40 + RED = 41 + GREEN = 42 + YELLOW = 43 + BLUE = 44 + MAGENTA = 45 + CYAN = 46 + WHITE = 47 + RESET = 49 + + # These are fairly well supported, but not part of the standard. + LIGHTBLACK_EX = 100 + LIGHTRED_EX = 101 + LIGHTGREEN_EX = 102 + LIGHTYELLOW_EX = 103 + LIGHTBLUE_EX = 104 + LIGHTMAGENTA_EX = 105 + LIGHTCYAN_EX = 106 + LIGHTWHITE_EX = 107 + + +class AnsiStyle(AnsiCodes): + BRIGHT = 1 + DIM = 2 + NORMAL = 22 + RESET_ALL = 0 + +Fore = AnsiFore() +Back = AnsiBack() +Style = AnsiStyle() +Cursor = AnsiCursor() diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/ansi.pyc new file mode 100644 index 0000000000000000000000000000000000000000..30dc37ff12fdd348e0d595e61c6f06edda111076 GIT binary patch literal 4320 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 RtwcwfHMe)Nm8~pW`3GCV#>4;s literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.py new file mode 100644 index 0000000..3d1d2f2 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.py @@ -0,0 +1,154 @@ +# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. + +# from winbase.h +STDOUT = -11 +STDERR = -12 + +try: + import ctypes + from ctypes import LibraryLoader + windll = LibraryLoader(ctypes.WinDLL) + from ctypes import wintypes +except (AttributeError, ImportError): + windll = None + SetConsoleTextAttribute = lambda *_: None + winapi_test = lambda *_: None +else: + from ctypes import byref, Structure, c_char, POINTER + + COORD = wintypes._COORD + + class CONSOLE_SCREEN_BUFFER_INFO(Structure): + """struct in wincon.h.""" + _fields_ = [ + ("dwSize", COORD), + ("dwCursorPosition", COORD), + ("wAttributes", wintypes.WORD), + ("srWindow", wintypes.SMALL_RECT), + ("dwMaximumWindowSize", COORD), + ] + def __str__(self): + return '(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)' % ( + self.dwSize.Y, self.dwSize.X + , self.dwCursorPosition.Y, self.dwCursorPosition.X + , self.wAttributes + , self.srWindow.Top, self.srWindow.Left, self.srWindow.Bottom, self.srWindow.Right + , self.dwMaximumWindowSize.Y, self.dwMaximumWindowSize.X + ) + + _GetStdHandle = windll.kernel32.GetStdHandle + _GetStdHandle.argtypes = [ + wintypes.DWORD, + ] + _GetStdHandle.restype = wintypes.HANDLE + + _GetConsoleScreenBufferInfo = windll.kernel32.GetConsoleScreenBufferInfo + _GetConsoleScreenBufferInfo.argtypes = [ + wintypes.HANDLE, + POINTER(CONSOLE_SCREEN_BUFFER_INFO), + ] + _GetConsoleScreenBufferInfo.restype = wintypes.BOOL + + _SetConsoleTextAttribute = windll.kernel32.SetConsoleTextAttribute + _SetConsoleTextAttribute.argtypes = [ + wintypes.HANDLE, + wintypes.WORD, + ] + _SetConsoleTextAttribute.restype = wintypes.BOOL + + _SetConsoleCursorPosition = windll.kernel32.SetConsoleCursorPosition + _SetConsoleCursorPosition.argtypes = [ + wintypes.HANDLE, + COORD, + ] + _SetConsoleCursorPosition.restype = wintypes.BOOL + + _FillConsoleOutputCharacterA = windll.kernel32.FillConsoleOutputCharacterA + _FillConsoleOutputCharacterA.argtypes = [ + wintypes.HANDLE, + c_char, + wintypes.DWORD, + COORD, + POINTER(wintypes.DWORD), + ] + _FillConsoleOutputCharacterA.restype = wintypes.BOOL + + _FillConsoleOutputAttribute = windll.kernel32.FillConsoleOutputAttribute + _FillConsoleOutputAttribute.argtypes = [ + wintypes.HANDLE, + wintypes.WORD, + wintypes.DWORD, + COORD, + POINTER(wintypes.DWORD), + ] + _FillConsoleOutputAttribute.restype = wintypes.BOOL + + _SetConsoleTitleW = windll.kernel32.SetConsoleTitleA + _SetConsoleTitleW.argtypes = [ + wintypes.LPCSTR + ] + _SetConsoleTitleW.restype = wintypes.BOOL + + handles = { + STDOUT: _GetStdHandle(STDOUT), + STDERR: _GetStdHandle(STDERR), + } + + def winapi_test(): + handle = handles[STDOUT] + csbi = CONSOLE_SCREEN_BUFFER_INFO() + success = _GetConsoleScreenBufferInfo( + handle, byref(csbi)) + return bool(success) + + def GetConsoleScreenBufferInfo(stream_id=STDOUT): + handle = handles[stream_id] + csbi = CONSOLE_SCREEN_BUFFER_INFO() + success = _GetConsoleScreenBufferInfo( + handle, byref(csbi)) + return csbi + + def SetConsoleTextAttribute(stream_id, attrs): + handle = handles[stream_id] + return _SetConsoleTextAttribute(handle, attrs) + + def SetConsoleCursorPosition(stream_id, position, adjust=True): + position = COORD(*position) + # If the position is out of range, do nothing. + if position.Y <= 0 or position.X <= 0: + return + # Adjust for Windows' SetConsoleCursorPosition: + # 1. being 0-based, while ANSI is 1-based. + # 2. expecting (x,y), while ANSI uses (y,x). + adjusted_position = COORD(position.Y - 1, position.X - 1) + if adjust: + # Adjust for viewport's scroll position + sr = GetConsoleScreenBufferInfo(STDOUT).srWindow + adjusted_position.Y += sr.Top + adjusted_position.X += sr.Left + # Resume normal processing + handle = handles[stream_id] + return _SetConsoleCursorPosition(handle, adjusted_position) + + def FillConsoleOutputCharacter(stream_id, char, length, start): + handle = handles[stream_id] + char = c_char(char.encode()) + length = wintypes.DWORD(length) + num_written = wintypes.DWORD(0) + # Note that this is hard-coded for ANSI (vs wide) bytes. + success = _FillConsoleOutputCharacterA( + handle, char, length, start, byref(num_written)) + return num_written.value + + def FillConsoleOutputAttribute(stream_id, attr, length, start): + ''' FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten )''' + handle = handles[stream_id] + attribute = wintypes.WORD(attr) + length = wintypes.DWORD(length) + num_written = wintypes.DWORD(0) + # Note that this is hard-coded for ANSI (vs wide) bytes. + return _FillConsoleOutputAttribute( + handle, attribute, length, start, byref(num_written)) + + def SetConsoleTitle(title): + return _SetConsoleTitleW(title) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/win32.pyc new file mode 100644 index 0000000000000000000000000000000000000000..65668c544a5535ceb075a7edadd39ddceea867f8 GIT binary patch literal 4774 zcmb_f-ESMm5uZC!lt@dKC4a=SW1I0;Xh*RM8*thpbt6%7Vt^5ir2-{Ca1h9`7v4!8vI!NLUs-C%c}66&~_CGwG+aiC&D+RUCo6TRI++P67)p! z6KUVfCC@5xN$i4HsH9h*R#Reco_HMe2@Z@p3CgGVehS&^ek@z3Fno0 zU&3=r+>&rXiO=X}t=b~oF#7k~w{N3=al&}JS@XbjbC?>@PSQz^8gVDINyeT5`!E`~ zqoGaJp()JqHAY&*1cz>^?D!z^HsgWKo~LL~!z4PTUw~S1{o%?m8h*YrihAMaowe2G z%RMr51TXC%jFXja+>4V=zq5kZKYI9Jc;u+dm%UDZC+s{q3p&M+|4S)@z!O!-6iD&G z57x)W(@dCfzgk^9uvqJMLC#K zW>M*q(r|E3L47ZZ#TIVe)P~c(DIK6%P+v(Vwh42a)iwK1$L! zc^;>ci{gPh1LonXb4j!_ayC_r(quaVgoloYhKJvFevJB~e#YZT-Q0&}v0ukX_bKSf zE0F_yCxow@Le2q^af-@EDk|l~bWY6VL|KVS{wxSzcF)MAR*k-}ncl=)yAv+|&+ok& z?`JBQ9F_h-=kJYjsl8#?IQrC9Jalw{2C!GFt;Np8ef0~5m(7BLa;fd@o{k@? zM+E`U3xexBnTm;5@D}kYdAGe9eNmAKf)163P zk&e1uo2JKx`k-v6krxd*!zf_jb@1ktu!>iKv53CL8O<~?)iM?^73{J^3&Aij6|91= z$_%Eqp{Zaze_|v)Z|GWT5>q9`duKV1W`gtCPCtl3!?-fHINhcM#)oHG&6DrPU?1=J z`PCWZ1cRf_{f{u^SI3Q!WAxIvYhJzhh~Cm&1{Jg>m~Yu1-6X{+#O5wfqX{}leW_mh zl&(rW-}CAiTUv4nahErvvrfSM2Nt}cCx6ud0D)ABwEDu6^gj7Wf!Q*7pk+IgrjRd} z$NQir_$Pm16v2rRFeoXn5laOrGC!lll;jIP07(u^3C=V*z6_v-rs1X6Q-V793Ncp@ zH8geJj4(;WuIswhQ)u={$WZ2Ar8s`r(vN}c0z8EL~{B0%WVU4M(ny9;efFHd)P5BjsOqdLyfS zMg|VAsJ#$@>Dj@a+t*-17E7F>pnb())DI4m$T>SW?PT(Pwf_v2wCpg*7QK0toPu}t zS72#D@Euqf1rw_SB2A$LLDLPEV@yg~lz@rWB4PrfG{z)@B4swO{zA#)BvjoW8-2OT z^77zB3$|QElNJxyXkjyslQ64U%hkJGf|G7%CavDf@Ya~oyT9d z`p7Y;%!cMMS?u#OBv~HF*9Ou27OPXrl*}9NSMP7w%{n0j6;M!P3w_hy!Ahy6cr{jS&4_t(vSEypUHw^R zD5Yz(*z1jklIY;WUM~w-Hc=DT*+`N&(eQfKAA-`g{ysAI`JOwRctN9%q4+W-=&3>0 z7;45QuG$5@u*tyo9zAsIJ5i-uF8oHDDg8~!-f6J z2ER44Dp2Jsm@L+s&4!_|Gxz)rsn57cAN_?7oJc{BDES9Yzo$40%+CzHYMyY1mu)<+ zx3)}HXZY5wWMs|nK$x#E9b>K32lZ~Wz?WI~{e*8yQ8TsAEuhCe2WP$Dok#0l_U8PX ze%ZgYIP1^*v-p&}#qs}qO)mKb$QMvSvK4yf$%>K%Z_YbcC{NE$my5HD> 4) & 7 + self._style = value & (WinStyle.BRIGHT | WinStyle.BRIGHT_BACKGROUND) + + def reset_all(self, on_stderr=None): + self.set_attrs(self._default) + self.set_console(attrs=self._default) + + def fore(self, fore=None, light=False, on_stderr=False): + if fore is None: + fore = self._default_fore + self._fore = fore + # Emulate LIGHT_EX with BRIGHT Style + if light: + self._light |= WinStyle.BRIGHT + else: + self._light &= ~WinStyle.BRIGHT + self.set_console(on_stderr=on_stderr) + + def back(self, back=None, light=False, on_stderr=False): + if back is None: + back = self._default_back + self._back = back + # Emulate LIGHT_EX with BRIGHT_BACKGROUND Style + if light: + self._light |= WinStyle.BRIGHT_BACKGROUND + else: + self._light &= ~WinStyle.BRIGHT_BACKGROUND + self.set_console(on_stderr=on_stderr) + + def style(self, style=None, on_stderr=False): + if style is None: + style = self._default_style + self._style = style + self.set_console(on_stderr=on_stderr) + + def set_console(self, attrs=None, on_stderr=False): + if attrs is None: + attrs = self.get_attrs() + handle = win32.STDOUT + if on_stderr: + handle = win32.STDERR + win32.SetConsoleTextAttribute(handle, attrs) + + def get_position(self, handle): + position = win32.GetConsoleScreenBufferInfo(handle).dwCursorPosition + # Because Windows coordinates are 0-based, + # and win32.SetConsoleCursorPosition expects 1-based. + position.X += 1 + position.Y += 1 + return position + + def set_cursor_position(self, position=None, on_stderr=False): + if position is None: + # I'm not currently tracking the position, so there is no default. + # position = self.get_position() + return + handle = win32.STDOUT + if on_stderr: + handle = win32.STDERR + win32.SetConsoleCursorPosition(handle, position) + + def cursor_adjust(self, x, y, on_stderr=False): + handle = win32.STDOUT + if on_stderr: + handle = win32.STDERR + position = self.get_position(handle) + adjusted_position = (position.Y + y, position.X + x) + win32.SetConsoleCursorPosition(handle, adjusted_position, adjust=False) + + def erase_screen(self, mode=0, on_stderr=False): + # 0 should clear from the cursor to the end of the screen. + # 1 should clear from the cursor to the beginning of the screen. + # 2 should clear the entire screen, and move cursor to (1,1) + handle = win32.STDOUT + if on_stderr: + handle = win32.STDERR + csbi = win32.GetConsoleScreenBufferInfo(handle) + # get the number of character cells in the current buffer + cells_in_screen = csbi.dwSize.X * csbi.dwSize.Y + # get number of character cells before current cursor position + cells_before_cursor = csbi.dwSize.X * csbi.dwCursorPosition.Y + csbi.dwCursorPosition.X + if mode == 0: + from_coord = csbi.dwCursorPosition + cells_to_erase = cells_in_screen - cells_before_cursor + if mode == 1: + from_coord = win32.COORD(0, 0) + cells_to_erase = cells_before_cursor + elif mode == 2: + from_coord = win32.COORD(0, 0) + cells_to_erase = cells_in_screen + # fill the entire screen with blanks + win32.FillConsoleOutputCharacter(handle, ' ', cells_to_erase, from_coord) + # now set the buffer's attributes accordingly + win32.FillConsoleOutputAttribute(handle, self.get_attrs(), cells_to_erase, from_coord) + if mode == 2: + # put the cursor where needed + win32.SetConsoleCursorPosition(handle, (1, 1)) + + def erase_line(self, mode=0, on_stderr=False): + # 0 should clear from the cursor to the end of the line. + # 1 should clear from the cursor to the beginning of the line. + # 2 should clear the entire line. + handle = win32.STDOUT + if on_stderr: + handle = win32.STDERR + csbi = win32.GetConsoleScreenBufferInfo(handle) + if mode == 0: + from_coord = csbi.dwCursorPosition + cells_to_erase = csbi.dwSize.X - csbi.dwCursorPosition.X + if mode == 1: + from_coord = win32.COORD(0, csbi.dwCursorPosition.Y) + cells_to_erase = csbi.dwCursorPosition.X + elif mode == 2: + from_coord = win32.COORD(0, csbi.dwCursorPosition.Y) + cells_to_erase = csbi.dwSize.X + # fill the entire screen with blanks + win32.FillConsoleOutputCharacter(handle, ' ', cells_to_erase, from_coord) + # now set the buffer's attributes accordingly + win32.FillConsoleOutputAttribute(handle, self.get_attrs(), cells_to_erase, from_coord) + + def set_title(self, title): + win32.SetConsoleTitle(title) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/winterm.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/colorama/winterm.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eb053a2cbfc1d8cce0ea30f00eef7611776a4c95 GIT binary patch literal 5930 zcmd5=>vG%16<&ZBkrHLvvLh+6(>iyit)n*XEv=JSq-52tOmvAgH&cP@+4KNshRAEpn6 zD*IQ$?`^d74SMK% z>SOk@>Q|LtQT;it->)fuPW9_b@3c5|h-McKU2@blER%2xVU=VKq%{vBoAJEy;4tt! zLy6}d#{MK?m*d;p>z&^jzTV!xzbT?Ey}8*HQD<+xYdF8&+%TN;-ul*NcX!=zk-g3B z?cM_!hd1_G5UGNspP;*D4v*H3!lN7elQ8mc4BG3xCl4u*<~<3BU=8Lo zL2~%f(KAhRagp>Q8RzWZ)WSRFSrmNN!f)V}e`jIXQ0#>vDimw}8C;8&(6pxJQ&F$m z)A!c5g>CD*Tff;gm+;84UK>W+(!KlLjY4DLUQz7^mf$ieb+<~3-2tavSSHt1&Wq#z z29oP~G6fVF!4w(5swq$h&;YBZ3g-A9C_4e%0IpmD;6qZ+B!J!tP&q&C!U51-Aow|L zV=AwUd{O3{S0`BIg7O!n+mJ_C-F6qHdr|opWQI#bG|zX)(`MrdbkNd05Tn$ABh*zd z9Cc7q&w<`D=|M$knR18ysyv$$X-)XL@bkiB&yFzIvx4VxnXb4|YZ0tQQ--M73QQ*+ zr*RbQ43i)jw@$(@_`Q_yHWyC6Xhrfg3Lic)HuRJ+Bn_fbfyGyY zVHPyPacDemm6H>f%2{+5SEqLF@+9GWGss11+g;q*w}MJFWylr!WHTdo9S)^pkWZEW4M9anu0WkdiJ z0g*1TNLp5H5hG+1R-C3Qp;y9ji^p_IMcPpFG5#$RAn{I;9&AARYtH zevl-y(oZ}s3B=c;=to#0C8iWGIwZrEAM6kv9;{N2Ybse4l^u2LsIka-*ubf)l3RRK z=J}QxWqPhxQsc{Kh0S}E(l`jGfJEsf6X|!bT8rsYl4Ca>2YLlPi-l|C3M{Q-= zHK9CPV-c#qMmx_~gx0imIOb;{{~clg4H7dzgPeB8uk6kR2%`Q~OlPB_=*y*wKp|;h zwz__Z1@54wHINJ#&XCJ;Py7`ve+#D2@@nQtFI47BHZ~r^JK#${&w?bna5Fwa+QuV< z6c<%ELnf1c*9J<_`upfhI@U|zrb%~GYeNUx$7j=!B zmnJletx3Ts&5F=4Yx+++lO&Ck-^Xca!gy>r@C%`PHXJi?Y6e5e;YZoHnZ;bjEvC}x z#JlKch*>H%VUX`4=5q`w5QE|m=ZGECA{Hh;RP2`6B}~A>7U#i)A<@PLFiH@je*n%f zN)*^QYob%&VB8aMh=FEilgpS^@}3+`Zkj(*OnbqZO64h1=uFHE)J2f;ComQ%$D(#} zH7j}1Wpa{$@mwn1W4KR6tmCQ`a_Bp1WduuBKivtx3M`fcRW~3MKy`XOy&<=)J7E-M z*R9^f98FB;(I6QN@d@Dk$9cflk|qdI`3O@~PWZAB6sVNyYnbkbhIPX*h@#XBQHILZ z&d_bGY(HSdGiF=D5vcTi&R)&{ z?Jm35kzeX4-W$#meuYAM&1txT@-wmIUwHL@KzWYWFEVUrAV*}8NJ1YVcB^Nx`?air z4+yAYtV`60pu$6dW4v?+)Sj%jQH*gPN8`7;46{rqLn>R&m*bcq~QwqDL#tWEmwl4F%Eml)0cXjZM7b(zgyH_7o5 zuQy5VklY0+PG<&MXjWqUa*y;QF>%1aAN3(ab?RJg3O?=we9rjFeJ3CPQ={i*bKr98sg_3!n7K?9jEM zY(Qo}=R-0P`-emU#8I*XK;>^dGshrbOkPg*{C#jAO6RNcoT*NI491$GwR)TK&9W7jXOh%I zjsl|MzmcVkEae8@8Xop&>e4^LdxeIp!NjPfP9rd=(|61RMtfT@R`6^;Ya1g>)fN|0 zO#ymq799WEMf%>ZYcizjm~enjt6-L=*qSc{c?tOs3e7RDdKCB~kUlab*N o#>zdMYrR&!)fDBzzg}JOH;l;f=i_b=2am&0jnzm!>D^O*0D7MZ{r~^~ literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.py new file mode 100644 index 0000000..f7dbf4c --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.py @@ -0,0 +1,6 @@ +"""Modules copied from Python 3 standard libraries, for internal use only. + +Individual classes and functions are found in d2._backport.misc. Intended +usage is to always import things missing from 3.1 from that module: the +built-in/stdlib objects will be used if found. +""" diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7ad77d3fc24415ee978769f454b728e2aae67bd8 GIT binary patch literal 444 zcmYLFO;5ux4DCPyRK$PqaY(Ec?1m8HSlpt`QZ-%^38xH0n}cDDK~BlZaF!Yd zuve98wE5~|;;KV36~IbZgLSsdq}L9RfFo$X(*pr^V<+$i!+2r-#mH_K`r-a%yB-VsP+PGOQ*Du0o~-{&)=FVOR;ua;J`tXqN$Ks8V3H_)02g70 A6#xJL literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.py new file mode 100644 index 0000000..cfb318d --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012 The Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +"""Backports for individual classes and functions.""" + +import os +import sys + +__all__ = ['cache_from_source', 'callable', 'fsencode'] + + +try: + from imp import cache_from_source +except ImportError: + def cache_from_source(py_file, debug=__debug__): + ext = debug and 'c' or 'o' + return py_file + ext + + +try: + callable = callable +except NameError: + from collections import Callable + + def callable(obj): + return isinstance(obj, Callable) + + +try: + fsencode = os.fsencode +except AttributeError: + def fsencode(filename): + if isinstance(filename, bytes): + return filename + elif isinstance(filename, str): + return filename.encode(sys.getfilesystemencoding()) + else: + raise TypeError("expect bytes or str, not %s" % + type(filename).__name__) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/misc.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2e7da19dcaf87c01c5d77023a66a8de8064ea3fd GIT binary patch literal 1400 zcmb_b&2AGh5FYO)X__V!XaT7RX@!Io5Rel$1hf?gEiuSVX+D>q~e_A_LBb5v7 zJMcVQcp)ADzVTMj2dJePkH<5f`DVu9@6kX$wa1dKRu}s_ko^Uwh+=R-Dxh3Y455_+ ziUU$1sSc?wEkcSzTJQSX9_1Y>x)gUw9G8!%qkD8Rpymq+A@l~R4Z6frT`C2AUJpq3 zDelv8`3#nu-tq@qa-crt11h#C-Xftk=@QxWTelHuLCYbp^yDH11Fjl^-*FJehZ9Dv=xGOv+5BV@{AxqAZi8Jun zMi3m3fD5|dy7TpP%;4Ps%ve)emzGk`xOnZG>|SNd8wS9UAA&3gC-E;?#^aM^h}V;C zb~y2)D^-N*JF(+YQwb!s`XKC88KQMPs% zD-4@;&GV?NT=c|_H*r5><{Rlvd?R6l=i%$;s8y}4y9d=mJMO&2Q5XK+lncjid|KD~ zebZp78Jxq(_bExrw9rZNzjN%*x*IMvSNJi=4#7xliw>#T=N4fde`q`RsD93^J zooh_Ca;@=y>|VNw&*H27x~SAD*KfFcHUjGfLop1t!%*ysk+|Ir#enx<)CsYV#9t>@ BFG>Ia literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.py new file mode 100644 index 0000000..9e2e234 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.py @@ -0,0 +1,761 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012 The Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +"""Utility functions for copying and archiving files and directory trees. + +XXX The functions here don't copy the resource fork or other metadata on Mac. + +""" + +import os +import sys +import stat +from os.path import abspath +import fnmatch +import collections +import errno +from . import tarfile + +try: + import bz2 + _BZ2_SUPPORTED = True +except ImportError: + _BZ2_SUPPORTED = False + +try: + from pwd import getpwnam +except ImportError: + getpwnam = None + +try: + from grp import getgrnam +except ImportError: + getgrnam = None + +__all__ = ["copyfileobj", "copyfile", "copymode", "copystat", "copy", "copy2", + "copytree", "move", "rmtree", "Error", "SpecialFileError", + "ExecError", "make_archive", "get_archive_formats", + "register_archive_format", "unregister_archive_format", + "get_unpack_formats", "register_unpack_format", + "unregister_unpack_format", "unpack_archive", "ignore_patterns"] + +class Error(EnvironmentError): + pass + +class SpecialFileError(EnvironmentError): + """Raised when trying to do a kind of operation (e.g. copying) which is + not supported on a special file (e.g. a named pipe)""" + +class ExecError(EnvironmentError): + """Raised when a command could not be executed""" + +class ReadError(EnvironmentError): + """Raised when an archive cannot be read""" + +class RegistryError(Exception): + """Raised when a registery operation with the archiving + and unpacking registeries fails""" + + +try: + WindowsError +except NameError: + WindowsError = None + +def copyfileobj(fsrc, fdst, length=16*1024): + """copy data from file-like object fsrc to file-like object fdst""" + while 1: + buf = fsrc.read(length) + if not buf: + break + fdst.write(buf) + +def _samefile(src, dst): + # Macintosh, Unix. + if hasattr(os.path, 'samefile'): + try: + return os.path.samefile(src, dst) + except OSError: + return False + + # All other platforms: check for same pathname. + return (os.path.normcase(os.path.abspath(src)) == + os.path.normcase(os.path.abspath(dst))) + +def copyfile(src, dst): + """Copy data from src to dst""" + if _samefile(src, dst): + raise Error("`%s` and `%s` are the same file" % (src, dst)) + + for fn in [src, dst]: + try: + st = os.stat(fn) + except OSError: + # File most likely does not exist + pass + else: + # XXX What about other special files? (sockets, devices...) + if stat.S_ISFIFO(st.st_mode): + raise SpecialFileError("`%s` is a named pipe" % fn) + + with open(src, 'rb') as fsrc: + with open(dst, 'wb') as fdst: + copyfileobj(fsrc, fdst) + +def copymode(src, dst): + """Copy mode bits from src to dst""" + if hasattr(os, 'chmod'): + st = os.stat(src) + mode = stat.S_IMODE(st.st_mode) + os.chmod(dst, mode) + +def copystat(src, dst): + """Copy all stat info (mode bits, atime, mtime, flags) from src to dst""" + st = os.stat(src) + mode = stat.S_IMODE(st.st_mode) + if hasattr(os, 'utime'): + os.utime(dst, (st.st_atime, st.st_mtime)) + if hasattr(os, 'chmod'): + os.chmod(dst, mode) + if hasattr(os, 'chflags') and hasattr(st, 'st_flags'): + try: + os.chflags(dst, st.st_flags) + except OSError as why: + if (not hasattr(errno, 'EOPNOTSUPP') or + why.errno != errno.EOPNOTSUPP): + raise + +def copy(src, dst): + """Copy data and mode bits ("cp src dst"). + + The destination may be a directory. + + """ + if os.path.isdir(dst): + dst = os.path.join(dst, os.path.basename(src)) + copyfile(src, dst) + copymode(src, dst) + +def copy2(src, dst): + """Copy data and all stat info ("cp -p src dst"). + + The destination may be a directory. + + """ + if os.path.isdir(dst): + dst = os.path.join(dst, os.path.basename(src)) + copyfile(src, dst) + copystat(src, dst) + +def ignore_patterns(*patterns): + """Function that can be used as copytree() ignore parameter. + + Patterns is a sequence of glob-style patterns + that are used to exclude files""" + def _ignore_patterns(path, names): + ignored_names = [] + for pattern in patterns: + ignored_names.extend(fnmatch.filter(names, pattern)) + return set(ignored_names) + return _ignore_patterns + +def copytree(src, dst, symlinks=False, ignore=None, copy_function=copy2, + ignore_dangling_symlinks=False): + """Recursively copy a directory tree. + + The destination directory must not already exist. + If exception(s) occur, an Error is raised with a list of reasons. + + If the optional symlinks flag is true, symbolic links in the + source tree result in symbolic links in the destination tree; if + it is false, the contents of the files pointed to by symbolic + links are copied. If the file pointed by the symlink doesn't + exist, an exception will be added in the list of errors raised in + an Error exception at the end of the copy process. + + You can set the optional ignore_dangling_symlinks flag to true if you + want to silence this exception. Notice that this has no effect on + platforms that don't support os.symlink. + + The optional ignore argument is a callable. If given, it + is called with the `src` parameter, which is the directory + being visited by copytree(), and `names` which is the list of + `src` contents, as returned by os.listdir(): + + callable(src, names) -> ignored_names + + Since copytree() is called recursively, the callable will be + called once for each directory that is copied. It returns a + list of names relative to the `src` directory that should + not be copied. + + The optional copy_function argument is a callable that will be used + to copy each file. It will be called with the source path and the + destination path as arguments. By default, copy2() is used, but any + function that supports the same signature (like copy()) can be used. + + """ + names = os.listdir(src) + if ignore is not None: + ignored_names = ignore(src, names) + else: + ignored_names = set() + + os.makedirs(dst) + errors = [] + for name in names: + if name in ignored_names: + continue + srcname = os.path.join(src, name) + dstname = os.path.join(dst, name) + try: + if os.path.islink(srcname): + linkto = os.readlink(srcname) + if symlinks: + os.symlink(linkto, dstname) + else: + # ignore dangling symlink if the flag is on + if not os.path.exists(linkto) and ignore_dangling_symlinks: + continue + # otherwise let the copy occurs. copy2 will raise an error + copy_function(srcname, dstname) + elif os.path.isdir(srcname): + copytree(srcname, dstname, symlinks, ignore, copy_function) + else: + # Will raise a SpecialFileError for unsupported file types + copy_function(srcname, dstname) + # catch the Error from the recursive copytree so that we can + # continue with other files + except Error as err: + errors.extend(err.args[0]) + except EnvironmentError as why: + errors.append((srcname, dstname, str(why))) + try: + copystat(src, dst) + except OSError as why: + if WindowsError is not None and isinstance(why, WindowsError): + # Copying file access times may fail on Windows + pass + else: + errors.extend((src, dst, str(why))) + if errors: + raise Error(errors) + +def rmtree(path, ignore_errors=False, onerror=None): + """Recursively delete a directory tree. + + If ignore_errors is set, errors are ignored; otherwise, if onerror + is set, it is called to handle the error with arguments (func, + path, exc_info) where func is os.listdir, os.remove, or os.rmdir; + path is the argument to that function that caused it to fail; and + exc_info is a tuple returned by sys.exc_info(). If ignore_errors + is false and onerror is None, an exception is raised. + + """ + if ignore_errors: + def onerror(*args): + pass + elif onerror is None: + def onerror(*args): + raise + try: + if os.path.islink(path): + # symlinks to directories are forbidden, see bug #1669 + raise OSError("Cannot call rmtree on a symbolic link") + except OSError: + onerror(os.path.islink, path, sys.exc_info()) + # can't continue even if onerror hook returns + return + names = [] + try: + names = os.listdir(path) + except os.error: + onerror(os.listdir, path, sys.exc_info()) + for name in names: + fullname = os.path.join(path, name) + try: + mode = os.lstat(fullname).st_mode + except os.error: + mode = 0 + if stat.S_ISDIR(mode): + rmtree(fullname, ignore_errors, onerror) + else: + try: + os.remove(fullname) + except os.error: + onerror(os.remove, fullname, sys.exc_info()) + try: + os.rmdir(path) + except os.error: + onerror(os.rmdir, path, sys.exc_info()) + + +def _basename(path): + # A basename() variant which first strips the trailing slash, if present. + # Thus we always get the last component of the path, even for directories. + return os.path.basename(path.rstrip(os.path.sep)) + +def move(src, dst): + """Recursively move a file or directory to another location. This is + similar to the Unix "mv" command. + + If the destination is a directory or a symlink to a directory, the source + is moved inside the directory. The destination path must not already + exist. + + If the destination already exists but is not a directory, it may be + overwritten depending on os.rename() semantics. + + If the destination is on our current filesystem, then rename() is used. + Otherwise, src is copied to the destination and then removed. + A lot more could be done here... A look at a mv.c shows a lot of + the issues this implementation glosses over. + + """ + real_dst = dst + if os.path.isdir(dst): + if _samefile(src, dst): + # We might be on a case insensitive filesystem, + # perform the rename anyway. + os.rename(src, dst) + return + + real_dst = os.path.join(dst, _basename(src)) + if os.path.exists(real_dst): + raise Error("Destination path '%s' already exists" % real_dst) + try: + os.rename(src, real_dst) + except OSError: + if os.path.isdir(src): + if _destinsrc(src, dst): + raise Error("Cannot move a directory '%s' into itself '%s'." % (src, dst)) + copytree(src, real_dst, symlinks=True) + rmtree(src) + else: + copy2(src, real_dst) + os.unlink(src) + +def _destinsrc(src, dst): + src = abspath(src) + dst = abspath(dst) + if not src.endswith(os.path.sep): + src += os.path.sep + if not dst.endswith(os.path.sep): + dst += os.path.sep + return dst.startswith(src) + +def _get_gid(name): + """Returns a gid, given a group name.""" + if getgrnam is None or name is None: + return None + try: + result = getgrnam(name) + except KeyError: + result = None + if result is not None: + return result[2] + return None + +def _get_uid(name): + """Returns an uid, given a user name.""" + if getpwnam is None or name is None: + return None + try: + result = getpwnam(name) + except KeyError: + result = None + if result is not None: + return result[2] + return None + +def _make_tarball(base_name, base_dir, compress="gzip", verbose=0, dry_run=0, + owner=None, group=None, logger=None): + """Create a (possibly compressed) tar file from all the files under + 'base_dir'. + + 'compress' must be "gzip" (the default), "bzip2", or None. + + 'owner' and 'group' can be used to define an owner and a group for the + archive that is being built. If not provided, the current owner and group + will be used. + + The output tar file will be named 'base_name' + ".tar", possibly plus + the appropriate compression extension (".gz", or ".bz2"). + + Returns the output filename. + """ + tar_compression = {'gzip': 'gz', None: ''} + compress_ext = {'gzip': '.gz'} + + if _BZ2_SUPPORTED: + tar_compression['bzip2'] = 'bz2' + compress_ext['bzip2'] = '.bz2' + + # flags for compression program, each element of list will be an argument + if compress is not None and compress not in compress_ext: + raise ValueError("bad value for 'compress', or compression format not " + "supported : {0}".format(compress)) + + archive_name = base_name + '.tar' + compress_ext.get(compress, '') + archive_dir = os.path.dirname(archive_name) + + if not os.path.exists(archive_dir): + if logger is not None: + logger.info("creating %s", archive_dir) + if not dry_run: + os.makedirs(archive_dir) + + # creating the tarball + if logger is not None: + logger.info('Creating tar archive') + + uid = _get_uid(owner) + gid = _get_gid(group) + + def _set_uid_gid(tarinfo): + if gid is not None: + tarinfo.gid = gid + tarinfo.gname = group + if uid is not None: + tarinfo.uid = uid + tarinfo.uname = owner + return tarinfo + + if not dry_run: + tar = tarfile.open(archive_name, 'w|%s' % tar_compression[compress]) + try: + tar.add(base_dir, filter=_set_uid_gid) + finally: + tar.close() + + return archive_name + +def _call_external_zip(base_dir, zip_filename, verbose=False, dry_run=False): + # XXX see if we want to keep an external call here + if verbose: + zipoptions = "-r" + else: + zipoptions = "-rq" + from distutils.errors import DistutilsExecError + from distutils.spawn import spawn + try: + spawn(["zip", zipoptions, zip_filename, base_dir], dry_run=dry_run) + except DistutilsExecError: + # XXX really should distinguish between "couldn't find + # external 'zip' command" and "zip failed". + raise ExecError("unable to create zip file '%s': " + "could neither import the 'zipfile' module nor " + "find a standalone zip utility") % zip_filename + +def _make_zipfile(base_name, base_dir, verbose=0, dry_run=0, logger=None): + """Create a zip file from all the files under 'base_dir'. + + The output zip file will be named 'base_name' + ".zip". Uses either the + "zipfile" Python module (if available) or the InfoZIP "zip" utility + (if installed and found on the default search path). If neither tool is + available, raises ExecError. Returns the name of the output zip + file. + """ + zip_filename = base_name + ".zip" + archive_dir = os.path.dirname(base_name) + + if not os.path.exists(archive_dir): + if logger is not None: + logger.info("creating %s", archive_dir) + if not dry_run: + os.makedirs(archive_dir) + + # If zipfile module is not available, try spawning an external 'zip' + # command. + try: + import zipfile + except ImportError: + zipfile = None + + if zipfile is None: + _call_external_zip(base_dir, zip_filename, verbose, dry_run) + else: + if logger is not None: + logger.info("creating '%s' and adding '%s' to it", + zip_filename, base_dir) + + if not dry_run: + zip = zipfile.ZipFile(zip_filename, "w", + compression=zipfile.ZIP_DEFLATED) + + for dirpath, dirnames, filenames in os.walk(base_dir): + for name in filenames: + path = os.path.normpath(os.path.join(dirpath, name)) + if os.path.isfile(path): + zip.write(path, path) + if logger is not None: + logger.info("adding '%s'", path) + zip.close() + + return zip_filename + +_ARCHIVE_FORMATS = { + 'gztar': (_make_tarball, [('compress', 'gzip')], "gzip'ed tar-file"), + 'bztar': (_make_tarball, [('compress', 'bzip2')], "bzip2'ed tar-file"), + 'tar': (_make_tarball, [('compress', None)], "uncompressed tar file"), + 'zip': (_make_zipfile, [], "ZIP file"), + } + +if _BZ2_SUPPORTED: + _ARCHIVE_FORMATS['bztar'] = (_make_tarball, [('compress', 'bzip2')], + "bzip2'ed tar-file") + +def get_archive_formats(): + """Returns a list of supported formats for archiving and unarchiving. + + Each element of the returned sequence is a tuple (name, description) + """ + formats = [(name, registry[2]) for name, registry in + _ARCHIVE_FORMATS.items()] + formats.sort() + return formats + +def register_archive_format(name, function, extra_args=None, description=''): + """Registers an archive format. + + name is the name of the format. function is the callable that will be + used to create archives. If provided, extra_args is a sequence of + (name, value) tuples that will be passed as arguments to the callable. + description can be provided to describe the format, and will be returned + by the get_archive_formats() function. + """ + if extra_args is None: + extra_args = [] + if not isinstance(function, collections.Callable): + raise TypeError('The %s object is not callable' % function) + if not isinstance(extra_args, (tuple, list)): + raise TypeError('extra_args needs to be a sequence') + for element in extra_args: + if not isinstance(element, (tuple, list)) or len(element) !=2: + raise TypeError('extra_args elements are : (arg_name, value)') + + _ARCHIVE_FORMATS[name] = (function, extra_args, description) + +def unregister_archive_format(name): + del _ARCHIVE_FORMATS[name] + +def make_archive(base_name, format, root_dir=None, base_dir=None, verbose=0, + dry_run=0, owner=None, group=None, logger=None): + """Create an archive file (eg. zip or tar). + + 'base_name' is the name of the file to create, minus any format-specific + extension; 'format' is the archive format: one of "zip", "tar", "bztar" + or "gztar". + + 'root_dir' is a directory that will be the root directory of the + archive; ie. we typically chdir into 'root_dir' before creating the + archive. 'base_dir' is the directory where we start archiving from; + ie. 'base_dir' will be the common prefix of all files and + directories in the archive. 'root_dir' and 'base_dir' both default + to the current directory. Returns the name of the archive file. + + 'owner' and 'group' are used when creating a tar archive. By default, + uses the current owner and group. + """ + save_cwd = os.getcwd() + if root_dir is not None: + if logger is not None: + logger.debug("changing into '%s'", root_dir) + base_name = os.path.abspath(base_name) + if not dry_run: + os.chdir(root_dir) + + if base_dir is None: + base_dir = os.curdir + + kwargs = {'dry_run': dry_run, 'logger': logger} + + try: + format_info = _ARCHIVE_FORMATS[format] + except KeyError: + raise ValueError("unknown archive format '%s'" % format) + + func = format_info[0] + for arg, val in format_info[1]: + kwargs[arg] = val + + if format != 'zip': + kwargs['owner'] = owner + kwargs['group'] = group + + try: + filename = func(base_name, base_dir, **kwargs) + finally: + if root_dir is not None: + if logger is not None: + logger.debug("changing back to '%s'", save_cwd) + os.chdir(save_cwd) + + return filename + + +def get_unpack_formats(): + """Returns a list of supported formats for unpacking. + + Each element of the returned sequence is a tuple + (name, extensions, description) + """ + formats = [(name, info[0], info[3]) for name, info in + _UNPACK_FORMATS.items()] + formats.sort() + return formats + +def _check_unpack_options(extensions, function, extra_args): + """Checks what gets registered as an unpacker.""" + # first make sure no other unpacker is registered for this extension + existing_extensions = {} + for name, info in _UNPACK_FORMATS.items(): + for ext in info[0]: + existing_extensions[ext] = name + + for extension in extensions: + if extension in existing_extensions: + msg = '%s is already registered for "%s"' + raise RegistryError(msg % (extension, + existing_extensions[extension])) + + if not isinstance(function, collections.Callable): + raise TypeError('The registered function must be a callable') + + +def register_unpack_format(name, extensions, function, extra_args=None, + description=''): + """Registers an unpack format. + + `name` is the name of the format. `extensions` is a list of extensions + corresponding to the format. + + `function` is the callable that will be + used to unpack archives. The callable will receive archives to unpack. + If it's unable to handle an archive, it needs to raise a ReadError + exception. + + If provided, `extra_args` is a sequence of + (name, value) tuples that will be passed as arguments to the callable. + description can be provided to describe the format, and will be returned + by the get_unpack_formats() function. + """ + if extra_args is None: + extra_args = [] + _check_unpack_options(extensions, function, extra_args) + _UNPACK_FORMATS[name] = extensions, function, extra_args, description + +def unregister_unpack_format(name): + """Removes the pack format from the registery.""" + del _UNPACK_FORMATS[name] + +def _ensure_directory(path): + """Ensure that the parent directory of `path` exists""" + dirname = os.path.dirname(path) + if not os.path.isdir(dirname): + os.makedirs(dirname) + +def _unpack_zipfile(filename, extract_dir): + """Unpack zip `filename` to `extract_dir` + """ + try: + import zipfile + except ImportError: + raise ReadError('zlib not supported, cannot unpack this archive.') + + if not zipfile.is_zipfile(filename): + raise ReadError("%s is not a zip file" % filename) + + zip = zipfile.ZipFile(filename) + try: + for info in zip.infolist(): + name = info.filename + + # don't extract absolute paths or ones with .. in them + if name.startswith('/') or '..' in name: + continue + + target = os.path.join(extract_dir, *name.split('/')) + if not target: + continue + + _ensure_directory(target) + if not name.endswith('/'): + # file + data = zip.read(info.filename) + f = open(target, 'wb') + try: + f.write(data) + finally: + f.close() + del data + finally: + zip.close() + +def _unpack_tarfile(filename, extract_dir): + """Unpack tar/tar.gz/tar.bz2 `filename` to `extract_dir` + """ + try: + tarobj = tarfile.open(filename) + except tarfile.TarError: + raise ReadError( + "%s is not a compressed or uncompressed tar file" % filename) + try: + tarobj.extractall(extract_dir) + finally: + tarobj.close() + +_UNPACK_FORMATS = { + 'gztar': (['.tar.gz', '.tgz'], _unpack_tarfile, [], "gzip'ed tar-file"), + 'tar': (['.tar'], _unpack_tarfile, [], "uncompressed tar file"), + 'zip': (['.zip'], _unpack_zipfile, [], "ZIP file") + } + +if _BZ2_SUPPORTED: + _UNPACK_FORMATS['bztar'] = (['.bz2'], _unpack_tarfile, [], + "bzip2'ed tar-file") + +def _find_unpack_format(filename): + for name, info in _UNPACK_FORMATS.items(): + for extension in info[0]: + if filename.endswith(extension): + return name + return None + +def unpack_archive(filename, extract_dir=None, format=None): + """Unpack an archive. + + `filename` is the name of the archive. + + `extract_dir` is the name of the target directory, where the archive + is unpacked. If not provided, the current working directory is used. + + `format` is the archive format: one of "zip", "tar", or "gztar". Or any + other registered format. If not provided, unpack_archive will use the + filename extension and see if an unpacker was registered for that + extension. + + In case none is found, a ValueError is raised. + """ + if extract_dir is None: + extract_dir = os.getcwd() + + if format is not None: + try: + format_info = _UNPACK_FORMATS[format] + except KeyError: + raise ValueError("Unknown unpack format '{0}'".format(format)) + + func = format_info[1] + func(filename, extract_dir, **dict(format_info[2])) + else: + # we need to look at the registered unpackers supported extensions + format = _find_unpack_format(filename) + if format is None: + raise ReadError("Unknown archive format '{0}'".format(filename)) + + func = _UNPACK_FORMATS[format][1] + kwargs = dict(_UNPACK_FORMATS[format][2]) + func(filename, extract_dir, **kwargs) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/shutil.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c4dab5a429cafb494d5fbf5c4bb78e93c0c73c6d GIT binary patch literal 26216 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 0: + for name in tuple(variables): + value = notdone[name] + m = _findvar1_rx.search(value) or _findvar2_rx.search(value) + if m is not None: + n = m.group(1) + found = True + if n in done: + item = str(done[n]) + elif n in notdone: + # get it on a subsequent round + found = False + elif n in os.environ: + # do it like make: fall back to environment + item = os.environ[n] + + elif n in renamed_variables: + if (name.startswith('PY_') and + name[3:] in renamed_variables): + item = "" + + elif 'PY_' + n in notdone: + found = False + + else: + item = str(done['PY_' + n]) + + else: + done[n] = item = "" + + if found: + after = value[m.end():] + value = value[:m.start()] + item + after + if "$" in after: + notdone[name] = value + else: + try: + value = int(value) + except ValueError: + done[name] = value.strip() + else: + done[name] = value + variables.remove(name) + + if (name.startswith('PY_') and + name[3:] in renamed_variables): + + name = name[3:] + if name not in done: + done[name] = value + + else: + # bogus variable reference (e.g. "prefix=$/opt/python"); + # just drop it since we can't deal + done[name] = value + variables.remove(name) + + # strip spurious spaces + for k, v in done.items(): + if isinstance(v, str): + done[k] = v.strip() + + # save the results in the global dictionary + vars.update(done) + return vars + + +def get_makefile_filename(): + """Return the path of the Makefile.""" + if _PYTHON_BUILD: + return os.path.join(_PROJECT_BASE, "Makefile") + if hasattr(sys, 'abiflags'): + config_dir_name = 'config-%s%s' % (_PY_VERSION_SHORT, sys.abiflags) + else: + config_dir_name = 'config' + return os.path.join(get_path('stdlib'), config_dir_name, 'Makefile') + + +def _init_posix(vars): + """Initialize the module as appropriate for POSIX systems.""" + # load the installed Makefile: + makefile = get_makefile_filename() + try: + _parse_makefile(makefile, vars) + except IOError as e: + msg = "invalid Python installation: unable to open %s" % makefile + if hasattr(e, "strerror"): + msg = msg + " (%s)" % e.strerror + raise IOError(msg) + # load the installed pyconfig.h: + config_h = get_config_h_filename() + try: + with open(config_h) as f: + parse_config_h(f, vars) + except IOError as e: + msg = "invalid Python installation: unable to open %s" % config_h + if hasattr(e, "strerror"): + msg = msg + " (%s)" % e.strerror + raise IOError(msg) + # On AIX, there are wrong paths to the linker scripts in the Makefile + # -- these paths are relative to the Python source, but when installed + # the scripts are in another directory. + if _PYTHON_BUILD: + vars['LDSHARED'] = vars['BLDSHARED'] + + +def _init_non_posix(vars): + """Initialize the module as appropriate for NT""" + # set basic install directories + vars['LIBDEST'] = get_path('stdlib') + vars['BINLIBDEST'] = get_path('platstdlib') + vars['INCLUDEPY'] = get_path('include') + vars['SO'] = '.pyd' + vars['EXE'] = '.exe' + vars['VERSION'] = _PY_VERSION_SHORT_NO_DOT + vars['BINDIR'] = os.path.dirname(_safe_realpath(sys.executable)) + +# +# public APIs +# + + +def parse_config_h(fp, vars=None): + """Parse a config.h-style file. + + A dictionary containing name/value pairs is returned. If an + optional dictionary is passed in as the second argument, it is + used instead of a new dictionary. + """ + if vars is None: + vars = {} + define_rx = re.compile("#define ([A-Z][A-Za-z0-9_]+) (.*)\n") + undef_rx = re.compile("/[*] #undef ([A-Z][A-Za-z0-9_]+) [*]/\n") + + while True: + line = fp.readline() + if not line: + break + m = define_rx.match(line) + if m: + n, v = m.group(1, 2) + try: + v = int(v) + except ValueError: + pass + vars[n] = v + else: + m = undef_rx.match(line) + if m: + vars[m.group(1)] = 0 + return vars + + +def get_config_h_filename(): + """Return the path of pyconfig.h.""" + if _PYTHON_BUILD: + if os.name == "nt": + inc_dir = os.path.join(_PROJECT_BASE, "PC") + else: + inc_dir = _PROJECT_BASE + else: + inc_dir = get_path('platinclude') + return os.path.join(inc_dir, 'pyconfig.h') + + +def get_scheme_names(): + """Return a tuple containing the schemes names.""" + return tuple(sorted(_SCHEMES.sections())) + + +def get_path_names(): + """Return a tuple containing the paths names.""" + # xxx see if we want a static list + return _SCHEMES.options('posix_prefix') + + +def get_paths(scheme=_get_default_scheme(), vars=None, expand=True): + """Return a mapping containing an install scheme. + + ``scheme`` is the install scheme name. If not provided, it will + return the default scheme for the current platform. + """ + _ensure_cfg_read() + if expand: + return _expand_vars(scheme, vars) + else: + return dict(_SCHEMES.items(scheme)) + + +def get_path(name, scheme=_get_default_scheme(), vars=None, expand=True): + """Return a path corresponding to the scheme. + + ``scheme`` is the install scheme name. + """ + return get_paths(scheme, vars, expand)[name] + + +def get_config_vars(*args): + """With no arguments, return a dictionary of all configuration + variables relevant for the current platform. + + On Unix, this means every variable defined in Python's installed Makefile; + On Windows and Mac OS it's a much smaller set. + + With arguments, return a list of values that result from looking up + each argument in the configuration variable dictionary. + """ + global _CONFIG_VARS + if _CONFIG_VARS is None: + _CONFIG_VARS = {} + # Normalized versions of prefix and exec_prefix are handy to have; + # in fact, these are the standard versions used most places in the + # distutils2 module. + _CONFIG_VARS['prefix'] = _PREFIX + _CONFIG_VARS['exec_prefix'] = _EXEC_PREFIX + _CONFIG_VARS['py_version'] = _PY_VERSION + _CONFIG_VARS['py_version_short'] = _PY_VERSION_SHORT + _CONFIG_VARS['py_version_nodot'] = _PY_VERSION[0] + _PY_VERSION[2] + _CONFIG_VARS['base'] = _PREFIX + _CONFIG_VARS['platbase'] = _EXEC_PREFIX + _CONFIG_VARS['projectbase'] = _PROJECT_BASE + try: + _CONFIG_VARS['abiflags'] = sys.abiflags + except AttributeError: + # sys.abiflags may not be defined on all platforms. + _CONFIG_VARS['abiflags'] = '' + + if os.name in ('nt', 'os2'): + _init_non_posix(_CONFIG_VARS) + if os.name == 'posix': + _init_posix(_CONFIG_VARS) + # Setting 'userbase' is done below the call to the + # init function to enable using 'get_config_var' in + # the init-function. + if sys.version >= '2.6': + _CONFIG_VARS['userbase'] = _getuserbase() + + if 'srcdir' not in _CONFIG_VARS: + _CONFIG_VARS['srcdir'] = _PROJECT_BASE + else: + _CONFIG_VARS['srcdir'] = _safe_realpath(_CONFIG_VARS['srcdir']) + + # Convert srcdir into an absolute path if it appears necessary. + # Normally it is relative to the build directory. However, during + # testing, for example, we might be running a non-installed python + # from a different directory. + if _PYTHON_BUILD and os.name == "posix": + base = _PROJECT_BASE + try: + cwd = os.getcwd() + except OSError: + cwd = None + if (not os.path.isabs(_CONFIG_VARS['srcdir']) and + base != cwd): + # srcdir is relative and we are not in the same directory + # as the executable. Assume executable is in the build + # directory and make srcdir absolute. + srcdir = os.path.join(base, _CONFIG_VARS['srcdir']) + _CONFIG_VARS['srcdir'] = os.path.normpath(srcdir) + + if sys.platform == 'darwin': + kernel_version = os.uname()[2] # Kernel version (8.4.3) + major_version = int(kernel_version.split('.')[0]) + + if major_version < 8: + # On Mac OS X before 10.4, check if -arch and -isysroot + # are in CFLAGS or LDFLAGS and remove them if they are. + # This is needed when building extensions on a 10.3 system + # using a universal build of python. + for key in ('LDFLAGS', 'BASECFLAGS', + # a number of derived variables. These need to be + # patched up as well. + 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): + flags = _CONFIG_VARS[key] + flags = re.sub('-arch\s+\w+\s', ' ', flags) + flags = re.sub('-isysroot [^ \t]*', ' ', flags) + _CONFIG_VARS[key] = flags + else: + # Allow the user to override the architecture flags using + # an environment variable. + # NOTE: This name was introduced by Apple in OSX 10.5 and + # is used by several scripting languages distributed with + # that OS release. + if 'ARCHFLAGS' in os.environ: + arch = os.environ['ARCHFLAGS'] + for key in ('LDFLAGS', 'BASECFLAGS', + # a number of derived variables. These need to be + # patched up as well. + 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): + + flags = _CONFIG_VARS[key] + flags = re.sub('-arch\s+\w+\s', ' ', flags) + flags = flags + ' ' + arch + _CONFIG_VARS[key] = flags + + # If we're on OSX 10.5 or later and the user tries to + # compiles an extension using an SDK that is not present + # on the current machine it is better to not use an SDK + # than to fail. + # + # The major usecase for this is users using a Python.org + # binary installer on OSX 10.6: that installer uses + # the 10.4u SDK, but that SDK is not installed by default + # when you install Xcode. + # + CFLAGS = _CONFIG_VARS.get('CFLAGS', '') + m = re.search('-isysroot\s+(\S+)', CFLAGS) + if m is not None: + sdk = m.group(1) + if not os.path.exists(sdk): + for key in ('LDFLAGS', 'BASECFLAGS', + # a number of derived variables. These need to be + # patched up as well. + 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): + + flags = _CONFIG_VARS[key] + flags = re.sub('-isysroot\s+\S+(\s|$)', ' ', flags) + _CONFIG_VARS[key] = flags + + if args: + vals = [] + for name in args: + vals.append(_CONFIG_VARS.get(name)) + return vals + else: + return _CONFIG_VARS + + +def get_config_var(name): + """Return the value of a single variable using the dictionary returned by + 'get_config_vars()'. + + Equivalent to get_config_vars().get(name) + """ + return get_config_vars().get(name) + + +def get_platform(): + """Return a string that identifies the current platform. + + This is used mainly to distinguish platform-specific build directories and + platform-specific built distributions. Typically includes the OS name + and version and the architecture (as supplied by 'os.uname()'), + although the exact information included depends on the OS; eg. for IRIX + the architecture isn't particularly important (IRIX only runs on SGI + hardware), but for Linux the kernel version isn't particularly + important. + + Examples of returned values: + linux-i586 + linux-alpha (?) + solaris-2.6-sun4u + irix-5.3 + irix64-6.2 + + Windows will return one of: + win-amd64 (64bit Windows on AMD64 (aka x86_64, Intel64, EM64T, etc) + win-ia64 (64bit Windows on Itanium) + win32 (all others - specifically, sys.platform is returned) + + For other non-POSIX platforms, currently just returns 'sys.platform'. + """ + if os.name == 'nt': + # sniff sys.version for architecture. + prefix = " bit (" + i = sys.version.find(prefix) + if i == -1: + return sys.platform + j = sys.version.find(")", i) + look = sys.version[i+len(prefix):j].lower() + if look == 'amd64': + return 'win-amd64' + if look == 'itanium': + return 'win-ia64' + return sys.platform + + if os.name != "posix" or not hasattr(os, 'uname'): + # XXX what about the architecture? NT is Intel or Alpha, + # Mac OS is M68k or PPC, etc. + return sys.platform + + # Try to distinguish various flavours of Unix + osname, host, release, version, machine = os.uname() + + # Convert the OS name to lowercase, remove '/' characters + # (to accommodate BSD/OS), and translate spaces (for "Power Macintosh") + osname = osname.lower().replace('/', '') + machine = machine.replace(' ', '_') + machine = machine.replace('/', '-') + + if osname[:5] == "linux": + # At least on Linux/Intel, 'machine' is the processor -- + # i386, etc. + # XXX what about Alpha, SPARC, etc? + return "%s-%s" % (osname, machine) + elif osname[:5] == "sunos": + if release[0] >= "5": # SunOS 5 == Solaris 2 + osname = "solaris" + release = "%d.%s" % (int(release[0]) - 3, release[2:]) + # fall through to standard osname-release-machine representation + elif osname[:4] == "irix": # could be "irix64"! + return "%s-%s" % (osname, release) + elif osname[:3] == "aix": + return "%s-%s.%s" % (osname, version, release) + elif osname[:6] == "cygwin": + osname = "cygwin" + rel_re = re.compile(r'[\d.]+') + m = rel_re.match(release) + if m: + release = m.group() + elif osname[:6] == "darwin": + # + # For our purposes, we'll assume that the system version from + # distutils' perspective is what MACOSX_DEPLOYMENT_TARGET is set + # to. This makes the compatibility story a bit more sane because the + # machine is going to compile and link as if it were + # MACOSX_DEPLOYMENT_TARGET. + cfgvars = get_config_vars() + macver = cfgvars.get('MACOSX_DEPLOYMENT_TARGET') + + if True: + # Always calculate the release of the running machine, + # needed to determine if we can build fat binaries or not. + + macrelease = macver + # Get the system version. Reading this plist is a documented + # way to get the system version (see the documentation for + # the Gestalt Manager) + try: + f = open('/System/Library/CoreServices/SystemVersion.plist') + except IOError: + # We're on a plain darwin box, fall back to the default + # behaviour. + pass + else: + try: + m = re.search(r'ProductUserVisibleVersion\s*' + r'(.*?)', f.read()) + finally: + f.close() + if m is not None: + macrelease = '.'.join(m.group(1).split('.')[:2]) + # else: fall back to the default behaviour + + if not macver: + macver = macrelease + + if macver: + release = macver + osname = "macosx" + + if ((macrelease + '.') >= '10.4.' and + '-arch' in get_config_vars().get('CFLAGS', '').strip()): + # The universal build will build fat binaries, but not on + # systems before 10.4 + # + # Try to detect 4-way universal builds, those have machine-type + # 'universal' instead of 'fat'. + + machine = 'fat' + cflags = get_config_vars().get('CFLAGS') + + archs = re.findall('-arch\s+(\S+)', cflags) + archs = tuple(sorted(set(archs))) + + if len(archs) == 1: + machine = archs[0] + elif archs == ('i386', 'ppc'): + machine = 'fat' + elif archs == ('i386', 'x86_64'): + machine = 'intel' + elif archs == ('i386', 'ppc', 'x86_64'): + machine = 'fat3' + elif archs == ('ppc64', 'x86_64'): + machine = 'fat64' + elif archs == ('i386', 'ppc', 'ppc64', 'x86_64'): + machine = 'universal' + else: + raise ValueError( + "Don't know machine value for archs=%r" % (archs,)) + + elif machine == 'i386': + # On OSX the machine type returned by uname is always the + # 32-bit variant, even if the executable architecture is + # the 64-bit variant + if sys.maxsize >= 2**32: + machine = 'x86_64' + + elif machine in ('PowerPC', 'Power_Macintosh'): + # Pick a sane name for the PPC architecture. + # See 'i386' case + if sys.maxsize >= 2**32: + machine = 'ppc64' + else: + machine = 'ppc' + + return "%s-%s-%s" % (osname, release, machine) + + +def get_python_version(): + return _PY_VERSION_SHORT + + +def _print_dict(title, data): + for index, (key, value) in enumerate(sorted(data.items())): + if index == 0: + print('%s: ' % (title)) + print('\t%s = "%s"' % (key, value)) + + +def _main(): + """Display all information sysconfig detains.""" + print('Platform: "%s"' % get_platform()) + print('Python version: "%s"' % get_python_version()) + print('Current installation scheme: "%s"' % _get_default_scheme()) + print() + _print_dict('Paths', get_paths()) + print() + _print_dict('Variables', get_config_vars()) + + +if __name__ == '__main__': + _main() diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/sysconfig.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/sysconfig.pyc new file mode 100644 index 0000000000000000000000000000000000000000..204a3f75f5dd1178b20ae28748911ca5e71e365e GIT binary patch literal 20844 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 m&*Qu2d+z7==8xz5drszi@_X_fhk6fn +# All rights reserved. +# +# Permission is hereby granted, free of charge, to any person +# obtaining a copy of this software and associated documentation +# files (the "Software"), to deal in the Software without +# restriction, including without limitation the rights to use, +# copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following +# conditions: +# +# The above copyright notice and this permission notice shall be +# included in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# +from __future__ import print_function + +"""Read from and write to tar format archives. +""" + +__version__ = "$Revision$" + +version = "0.9.0" +__author__ = "Lars Gust\u00e4bel (lars@gustaebel.de)" +__date__ = "$Date: 2011-02-25 17:42:01 +0200 (Fri, 25 Feb 2011) $" +__cvsid__ = "$Id: tarfile.py 88586 2011-02-25 15:42:01Z marc-andre.lemburg $" +__credits__ = "Gustavo Niemeyer, Niels Gust\u00e4bel, Richard Townsend." + +#--------- +# Imports +#--------- +import sys +import os +import stat +import errno +import time +import struct +import copy +import re + +try: + import grp, pwd +except ImportError: + grp = pwd = None + +# os.symlink on Windows prior to 6.0 raises NotImplementedError +symlink_exception = (AttributeError, NotImplementedError) +try: + # WindowsError (1314) will be raised if the caller does not hold the + # SeCreateSymbolicLinkPrivilege privilege + symlink_exception += (WindowsError,) +except NameError: + pass + +# from tarfile import * +__all__ = ["TarFile", "TarInfo", "is_tarfile", "TarError"] + +if sys.version_info[0] < 3: + import __builtin__ as builtins +else: + import builtins + +_open = builtins.open # Since 'open' is TarFile.open + +#--------------------------------------------------------- +# tar constants +#--------------------------------------------------------- +NUL = b"\0" # the null character +BLOCKSIZE = 512 # length of processing blocks +RECORDSIZE = BLOCKSIZE * 20 # length of records +GNU_MAGIC = b"ustar \0" # magic gnu tar string +POSIX_MAGIC = b"ustar\x0000" # magic posix tar string + +LENGTH_NAME = 100 # maximum length of a filename +LENGTH_LINK = 100 # maximum length of a linkname +LENGTH_PREFIX = 155 # maximum length of the prefix field + +REGTYPE = b"0" # regular file +AREGTYPE = b"\0" # regular file +LNKTYPE = b"1" # link (inside tarfile) +SYMTYPE = b"2" # symbolic link +CHRTYPE = b"3" # character special device +BLKTYPE = b"4" # block special device +DIRTYPE = b"5" # directory +FIFOTYPE = b"6" # fifo special device +CONTTYPE = b"7" # contiguous file + +GNUTYPE_LONGNAME = b"L" # GNU tar longname +GNUTYPE_LONGLINK = b"K" # GNU tar longlink +GNUTYPE_SPARSE = b"S" # GNU tar sparse file + +XHDTYPE = b"x" # POSIX.1-2001 extended header +XGLTYPE = b"g" # POSIX.1-2001 global header +SOLARIS_XHDTYPE = b"X" # Solaris extended header + +USTAR_FORMAT = 0 # POSIX.1-1988 (ustar) format +GNU_FORMAT = 1 # GNU tar format +PAX_FORMAT = 2 # POSIX.1-2001 (pax) format +DEFAULT_FORMAT = GNU_FORMAT + +#--------------------------------------------------------- +# tarfile constants +#--------------------------------------------------------- +# File types that tarfile supports: +SUPPORTED_TYPES = (REGTYPE, AREGTYPE, LNKTYPE, + SYMTYPE, DIRTYPE, FIFOTYPE, + CONTTYPE, CHRTYPE, BLKTYPE, + GNUTYPE_LONGNAME, GNUTYPE_LONGLINK, + GNUTYPE_SPARSE) + +# File types that will be treated as a regular file. +REGULAR_TYPES = (REGTYPE, AREGTYPE, + CONTTYPE, GNUTYPE_SPARSE) + +# File types that are part of the GNU tar format. +GNU_TYPES = (GNUTYPE_LONGNAME, GNUTYPE_LONGLINK, + GNUTYPE_SPARSE) + +# Fields from a pax header that override a TarInfo attribute. +PAX_FIELDS = ("path", "linkpath", "size", "mtime", + "uid", "gid", "uname", "gname") + +# Fields from a pax header that are affected by hdrcharset. +PAX_NAME_FIELDS = set(("path", "linkpath", "uname", "gname")) + +# Fields in a pax header that are numbers, all other fields +# are treated as strings. +PAX_NUMBER_FIELDS = { + "atime": float, + "ctime": float, + "mtime": float, + "uid": int, + "gid": int, + "size": int +} + +#--------------------------------------------------------- +# Bits used in the mode field, values in octal. +#--------------------------------------------------------- +S_IFLNK = 0o120000 # symbolic link +S_IFREG = 0o100000 # regular file +S_IFBLK = 0o060000 # block device +S_IFDIR = 0o040000 # directory +S_IFCHR = 0o020000 # character device +S_IFIFO = 0o010000 # fifo + +TSUID = 0o4000 # set UID on execution +TSGID = 0o2000 # set GID on execution +TSVTX = 0o1000 # reserved + +TUREAD = 0o400 # read by owner +TUWRITE = 0o200 # write by owner +TUEXEC = 0o100 # execute/search by owner +TGREAD = 0o040 # read by group +TGWRITE = 0o020 # write by group +TGEXEC = 0o010 # execute/search by group +TOREAD = 0o004 # read by other +TOWRITE = 0o002 # write by other +TOEXEC = 0o001 # execute/search by other + +#--------------------------------------------------------- +# initialization +#--------------------------------------------------------- +if os.name in ("nt", "ce"): + ENCODING = "utf-8" +else: + ENCODING = sys.getfilesystemencoding() + +#--------------------------------------------------------- +# Some useful functions +#--------------------------------------------------------- + +def stn(s, length, encoding, errors): + """Convert a string to a null-terminated bytes object. + """ + s = s.encode(encoding, errors) + return s[:length] + (length - len(s)) * NUL + +def nts(s, encoding, errors): + """Convert a null-terminated bytes object to a string. + """ + p = s.find(b"\0") + if p != -1: + s = s[:p] + return s.decode(encoding, errors) + +def nti(s): + """Convert a number field to a python number. + """ + # There are two possible encodings for a number field, see + # itn() below. + if s[0] != chr(0o200): + try: + n = int(nts(s, "ascii", "strict") or "0", 8) + except ValueError: + raise InvalidHeaderError("invalid header") + else: + n = 0 + for i in range(len(s) - 1): + n <<= 8 + n += ord(s[i + 1]) + return n + +def itn(n, digits=8, format=DEFAULT_FORMAT): + """Convert a python number to a number field. + """ + # POSIX 1003.1-1988 requires numbers to be encoded as a string of + # octal digits followed by a null-byte, this allows values up to + # (8**(digits-1))-1. GNU tar allows storing numbers greater than + # that if necessary. A leading 0o200 byte indicates this particular + # encoding, the following digits-1 bytes are a big-endian + # representation. This allows values up to (256**(digits-1))-1. + if 0 <= n < 8 ** (digits - 1): + s = ("%0*o" % (digits - 1, n)).encode("ascii") + NUL + else: + if format != GNU_FORMAT or n >= 256 ** (digits - 1): + raise ValueError("overflow in number field") + + if n < 0: + # XXX We mimic GNU tar's behaviour with negative numbers, + # this could raise OverflowError. + n = struct.unpack("L", struct.pack("l", n))[0] + + s = bytearray() + for i in range(digits - 1): + s.insert(0, n & 0o377) + n >>= 8 + s.insert(0, 0o200) + return s + +def calc_chksums(buf): + """Calculate the checksum for a member's header by summing up all + characters except for the chksum field which is treated as if + it was filled with spaces. According to the GNU tar sources, + some tars (Sun and NeXT) calculate chksum with signed char, + which will be different if there are chars in the buffer with + the high bit set. So we calculate two checksums, unsigned and + signed. + """ + unsigned_chksum = 256 + sum(struct.unpack("148B", buf[:148]) + struct.unpack("356B", buf[156:512])) + signed_chksum = 256 + sum(struct.unpack("148b", buf[:148]) + struct.unpack("356b", buf[156:512])) + return unsigned_chksum, signed_chksum + +def copyfileobj(src, dst, length=None): + """Copy length bytes from fileobj src to fileobj dst. + If length is None, copy the entire content. + """ + if length == 0: + return + if length is None: + while True: + buf = src.read(16*1024) + if not buf: + break + dst.write(buf) + return + + BUFSIZE = 16 * 1024 + blocks, remainder = divmod(length, BUFSIZE) + for b in range(blocks): + buf = src.read(BUFSIZE) + if len(buf) < BUFSIZE: + raise IOError("end of file reached") + dst.write(buf) + + if remainder != 0: + buf = src.read(remainder) + if len(buf) < remainder: + raise IOError("end of file reached") + dst.write(buf) + return + +filemode_table = ( + ((S_IFLNK, "l"), + (S_IFREG, "-"), + (S_IFBLK, "b"), + (S_IFDIR, "d"), + (S_IFCHR, "c"), + (S_IFIFO, "p")), + + ((TUREAD, "r"),), + ((TUWRITE, "w"),), + ((TUEXEC|TSUID, "s"), + (TSUID, "S"), + (TUEXEC, "x")), + + ((TGREAD, "r"),), + ((TGWRITE, "w"),), + ((TGEXEC|TSGID, "s"), + (TSGID, "S"), + (TGEXEC, "x")), + + ((TOREAD, "r"),), + ((TOWRITE, "w"),), + ((TOEXEC|TSVTX, "t"), + (TSVTX, "T"), + (TOEXEC, "x")) +) + +def filemode(mode): + """Convert a file's mode to a string of the form + -rwxrwxrwx. + Used by TarFile.list() + """ + perm = [] + for table in filemode_table: + for bit, char in table: + if mode & bit == bit: + perm.append(char) + break + else: + perm.append("-") + return "".join(perm) + +class TarError(Exception): + """Base exception.""" + pass +class ExtractError(TarError): + """General exception for extract errors.""" + pass +class ReadError(TarError): + """Exception for unreadble tar archives.""" + pass +class CompressionError(TarError): + """Exception for unavailable compression methods.""" + pass +class StreamError(TarError): + """Exception for unsupported operations on stream-like TarFiles.""" + pass +class HeaderError(TarError): + """Base exception for header errors.""" + pass +class EmptyHeaderError(HeaderError): + """Exception for empty headers.""" + pass +class TruncatedHeaderError(HeaderError): + """Exception for truncated headers.""" + pass +class EOFHeaderError(HeaderError): + """Exception for end of file headers.""" + pass +class InvalidHeaderError(HeaderError): + """Exception for invalid headers.""" + pass +class SubsequentHeaderError(HeaderError): + """Exception for missing and invalid extended headers.""" + pass + +#--------------------------- +# internal stream interface +#--------------------------- +class _LowLevelFile(object): + """Low-level file object. Supports reading and writing. + It is used instead of a regular file object for streaming + access. + """ + + def __init__(self, name, mode): + mode = { + "r": os.O_RDONLY, + "w": os.O_WRONLY | os.O_CREAT | os.O_TRUNC, + }[mode] + if hasattr(os, "O_BINARY"): + mode |= os.O_BINARY + self.fd = os.open(name, mode, 0o666) + + def close(self): + os.close(self.fd) + + def read(self, size): + return os.read(self.fd, size) + + def write(self, s): + os.write(self.fd, s) + +class _Stream(object): + """Class that serves as an adapter between TarFile and + a stream-like object. The stream-like object only + needs to have a read() or write() method and is accessed + blockwise. Use of gzip or bzip2 compression is possible. + A stream-like object could be for example: sys.stdin, + sys.stdout, a socket, a tape device etc. + + _Stream is intended to be used only internally. + """ + + def __init__(self, name, mode, comptype, fileobj, bufsize): + """Construct a _Stream object. + """ + self._extfileobj = True + if fileobj is None: + fileobj = _LowLevelFile(name, mode) + self._extfileobj = False + + if comptype == '*': + # Enable transparent compression detection for the + # stream interface + fileobj = _StreamProxy(fileobj) + comptype = fileobj.getcomptype() + + self.name = name or "" + self.mode = mode + self.comptype = comptype + self.fileobj = fileobj + self.bufsize = bufsize + self.buf = b"" + self.pos = 0 + self.closed = False + + try: + if comptype == "gz": + try: + import zlib + except ImportError: + raise CompressionError("zlib module is not available") + self.zlib = zlib + self.crc = zlib.crc32(b"") + if mode == "r": + self._init_read_gz() + else: + self._init_write_gz() + + if comptype == "bz2": + try: + import bz2 + except ImportError: + raise CompressionError("bz2 module is not available") + if mode == "r": + self.dbuf = b"" + self.cmp = bz2.BZ2Decompressor() + else: + self.cmp = bz2.BZ2Compressor() + except: + if not self._extfileobj: + self.fileobj.close() + self.closed = True + raise + + def __del__(self): + if hasattr(self, "closed") and not self.closed: + self.close() + + def _init_write_gz(self): + """Initialize for writing with gzip compression. + """ + self.cmp = self.zlib.compressobj(9, self.zlib.DEFLATED, + -self.zlib.MAX_WBITS, + self.zlib.DEF_MEM_LEVEL, + 0) + timestamp = struct.pack(" self.bufsize: + self.fileobj.write(self.buf[:self.bufsize]) + self.buf = self.buf[self.bufsize:] + + def close(self): + """Close the _Stream object. No operation should be + done on it afterwards. + """ + if self.closed: + return + + if self.mode == "w" and self.comptype != "tar": + self.buf += self.cmp.flush() + + if self.mode == "w" and self.buf: + self.fileobj.write(self.buf) + self.buf = b"" + if self.comptype == "gz": + # The native zlib crc is an unsigned 32-bit integer, but + # the Python wrapper implicitly casts that to a signed C + # long. So, on a 32-bit box self.crc may "look negative", + # while the same crc on a 64-bit box may "look positive". + # To avoid irksome warnings from the `struct` module, force + # it to look positive on all boxes. + self.fileobj.write(struct.pack("= 0: + blocks, remainder = divmod(pos - self.pos, self.bufsize) + for i in range(blocks): + self.read(self.bufsize) + self.read(remainder) + else: + raise StreamError("seeking backwards is not allowed") + return self.pos + + def read(self, size=None): + """Return the next size number of bytes from the stream. + If size is not defined, return all bytes of the stream + up to EOF. + """ + if size is None: + t = [] + while True: + buf = self._read(self.bufsize) + if not buf: + break + t.append(buf) + buf = "".join(t) + else: + buf = self._read(size) + self.pos += len(buf) + return buf + + def _read(self, size): + """Return size bytes from the stream. + """ + if self.comptype == "tar": + return self.__read(size) + + c = len(self.dbuf) + while c < size: + buf = self.__read(self.bufsize) + if not buf: + break + try: + buf = self.cmp.decompress(buf) + except IOError: + raise ReadError("invalid compressed data") + self.dbuf += buf + c += len(buf) + buf = self.dbuf[:size] + self.dbuf = self.dbuf[size:] + return buf + + def __read(self, size): + """Return size bytes from stream. If internal buffer is empty, + read another block from the stream. + """ + c = len(self.buf) + while c < size: + buf = self.fileobj.read(self.bufsize) + if not buf: + break + self.buf += buf + c += len(buf) + buf = self.buf[:size] + self.buf = self.buf[size:] + return buf +# class _Stream + +class _StreamProxy(object): + """Small proxy class that enables transparent compression + detection for the Stream interface (mode 'r|*'). + """ + + def __init__(self, fileobj): + self.fileobj = fileobj + self.buf = self.fileobj.read(BLOCKSIZE) + + def read(self, size): + self.read = self.fileobj.read + return self.buf + + def getcomptype(self): + if self.buf.startswith(b"\037\213\010"): + return "gz" + if self.buf.startswith(b"BZh91"): + return "bz2" + return "tar" + + def close(self): + self.fileobj.close() +# class StreamProxy + +class _BZ2Proxy(object): + """Small proxy class that enables external file object + support for "r:bz2" and "w:bz2" modes. This is actually + a workaround for a limitation in bz2 module's BZ2File + class which (unlike gzip.GzipFile) has no support for + a file object argument. + """ + + blocksize = 16 * 1024 + + def __init__(self, fileobj, mode): + self.fileobj = fileobj + self.mode = mode + self.name = getattr(self.fileobj, "name", None) + self.init() + + def init(self): + import bz2 + self.pos = 0 + if self.mode == "r": + self.bz2obj = bz2.BZ2Decompressor() + self.fileobj.seek(0) + self.buf = b"" + else: + self.bz2obj = bz2.BZ2Compressor() + + def read(self, size): + x = len(self.buf) + while x < size: + raw = self.fileobj.read(self.blocksize) + if not raw: + break + data = self.bz2obj.decompress(raw) + self.buf += data + x += len(data) + + buf = self.buf[:size] + self.buf = self.buf[size:] + self.pos += len(buf) + return buf + + def seek(self, pos): + if pos < self.pos: + self.init() + self.read(pos - self.pos) + + def tell(self): + return self.pos + + def write(self, data): + self.pos += len(data) + raw = self.bz2obj.compress(data) + self.fileobj.write(raw) + + def close(self): + if self.mode == "w": + raw = self.bz2obj.flush() + self.fileobj.write(raw) +# class _BZ2Proxy + +#------------------------ +# Extraction file object +#------------------------ +class _FileInFile(object): + """A thin wrapper around an existing file object that + provides a part of its data as an individual file + object. + """ + + def __init__(self, fileobj, offset, size, blockinfo=None): + self.fileobj = fileobj + self.offset = offset + self.size = size + self.position = 0 + + if blockinfo is None: + blockinfo = [(0, size)] + + # Construct a map with data and zero blocks. + self.map_index = 0 + self.map = [] + lastpos = 0 + realpos = self.offset + for offset, size in blockinfo: + if offset > lastpos: + self.map.append((False, lastpos, offset, None)) + self.map.append((True, offset, offset + size, realpos)) + realpos += size + lastpos = offset + size + if lastpos < self.size: + self.map.append((False, lastpos, self.size, None)) + + def seekable(self): + if not hasattr(self.fileobj, "seekable"): + # XXX gzip.GzipFile and bz2.BZ2File + return True + return self.fileobj.seekable() + + def tell(self): + """Return the current file position. + """ + return self.position + + def seek(self, position): + """Seek to a position in the file. + """ + self.position = position + + def read(self, size=None): + """Read data from the file. + """ + if size is None: + size = self.size - self.position + else: + size = min(size, self.size - self.position) + + buf = b"" + while size > 0: + while True: + data, start, stop, offset = self.map[self.map_index] + if start <= self.position < stop: + break + else: + self.map_index += 1 + if self.map_index == len(self.map): + self.map_index = 0 + length = min(size, stop - self.position) + if data: + self.fileobj.seek(offset + (self.position - start)) + buf += self.fileobj.read(length) + else: + buf += NUL * length + size -= length + self.position += length + return buf +#class _FileInFile + + +class ExFileObject(object): + """File-like object for reading an archive member. + Is returned by TarFile.extractfile(). + """ + blocksize = 1024 + + def __init__(self, tarfile, tarinfo): + self.fileobj = _FileInFile(tarfile.fileobj, + tarinfo.offset_data, + tarinfo.size, + tarinfo.sparse) + self.name = tarinfo.name + self.mode = "r" + self.closed = False + self.size = tarinfo.size + + self.position = 0 + self.buffer = b"" + + def readable(self): + return True + + def writable(self): + return False + + def seekable(self): + return self.fileobj.seekable() + + def read(self, size=None): + """Read at most size bytes from the file. If size is not + present or None, read all data until EOF is reached. + """ + if self.closed: + raise ValueError("I/O operation on closed file") + + buf = b"" + if self.buffer: + if size is None: + buf = self.buffer + self.buffer = b"" + else: + buf = self.buffer[:size] + self.buffer = self.buffer[size:] + + if size is None: + buf += self.fileobj.read() + else: + buf += self.fileobj.read(size - len(buf)) + + self.position += len(buf) + return buf + + # XXX TextIOWrapper uses the read1() method. + read1 = read + + def readline(self, size=-1): + """Read one entire line from the file. If size is present + and non-negative, return a string with at most that + size, which may be an incomplete line. + """ + if self.closed: + raise ValueError("I/O operation on closed file") + + pos = self.buffer.find(b"\n") + 1 + if pos == 0: + # no newline found. + while True: + buf = self.fileobj.read(self.blocksize) + self.buffer += buf + if not buf or b"\n" in buf: + pos = self.buffer.find(b"\n") + 1 + if pos == 0: + # no newline found. + pos = len(self.buffer) + break + + if size != -1: + pos = min(size, pos) + + buf = self.buffer[:pos] + self.buffer = self.buffer[pos:] + self.position += len(buf) + return buf + + def readlines(self): + """Return a list with all remaining lines. + """ + result = [] + while True: + line = self.readline() + if not line: break + result.append(line) + return result + + def tell(self): + """Return the current file position. + """ + if self.closed: + raise ValueError("I/O operation on closed file") + + return self.position + + def seek(self, pos, whence=os.SEEK_SET): + """Seek to a position in the file. + """ + if self.closed: + raise ValueError("I/O operation on closed file") + + if whence == os.SEEK_SET: + self.position = min(max(pos, 0), self.size) + elif whence == os.SEEK_CUR: + if pos < 0: + self.position = max(self.position + pos, 0) + else: + self.position = min(self.position + pos, self.size) + elif whence == os.SEEK_END: + self.position = max(min(self.size + pos, self.size), 0) + else: + raise ValueError("Invalid argument") + + self.buffer = b"" + self.fileobj.seek(self.position) + + def close(self): + """Close the file object. + """ + self.closed = True + + def __iter__(self): + """Get an iterator over the file's lines. + """ + while True: + line = self.readline() + if not line: + break + yield line +#class ExFileObject + +#------------------ +# Exported Classes +#------------------ +class TarInfo(object): + """Informational class which holds the details about an + archive member given by a tar header block. + TarInfo objects are returned by TarFile.getmember(), + TarFile.getmembers() and TarFile.gettarinfo() and are + usually created internally. + """ + + __slots__ = ("name", "mode", "uid", "gid", "size", "mtime", + "chksum", "type", "linkname", "uname", "gname", + "devmajor", "devminor", + "offset", "offset_data", "pax_headers", "sparse", + "tarfile", "_sparse_structs", "_link_target") + + def __init__(self, name=""): + """Construct a TarInfo object. name is the optional name + of the member. + """ + self.name = name # member name + self.mode = 0o644 # file permissions + self.uid = 0 # user id + self.gid = 0 # group id + self.size = 0 # file size + self.mtime = 0 # modification time + self.chksum = 0 # header checksum + self.type = REGTYPE # member type + self.linkname = "" # link name + self.uname = "" # user name + self.gname = "" # group name + self.devmajor = 0 # device major number + self.devminor = 0 # device minor number + + self.offset = 0 # the tar header starts here + self.offset_data = 0 # the file's data starts here + + self.sparse = None # sparse member information + self.pax_headers = {} # pax header information + + # In pax headers the "name" and "linkname" field are called + # "path" and "linkpath". + def _getpath(self): + return self.name + def _setpath(self, name): + self.name = name + path = property(_getpath, _setpath) + + def _getlinkpath(self): + return self.linkname + def _setlinkpath(self, linkname): + self.linkname = linkname + linkpath = property(_getlinkpath, _setlinkpath) + + def __repr__(self): + return "<%s %r at %#x>" % (self.__class__.__name__,self.name,id(self)) + + def get_info(self): + """Return the TarInfo's attributes as a dictionary. + """ + info = { + "name": self.name, + "mode": self.mode & 0o7777, + "uid": self.uid, + "gid": self.gid, + "size": self.size, + "mtime": self.mtime, + "chksum": self.chksum, + "type": self.type, + "linkname": self.linkname, + "uname": self.uname, + "gname": self.gname, + "devmajor": self.devmajor, + "devminor": self.devminor + } + + if info["type"] == DIRTYPE and not info["name"].endswith("/"): + info["name"] += "/" + + return info + + def tobuf(self, format=DEFAULT_FORMAT, encoding=ENCODING, errors="surrogateescape"): + """Return a tar header as a string of 512 byte blocks. + """ + info = self.get_info() + + if format == USTAR_FORMAT: + return self.create_ustar_header(info, encoding, errors) + elif format == GNU_FORMAT: + return self.create_gnu_header(info, encoding, errors) + elif format == PAX_FORMAT: + return self.create_pax_header(info, encoding) + else: + raise ValueError("invalid format") + + def create_ustar_header(self, info, encoding, errors): + """Return the object as a ustar header block. + """ + info["magic"] = POSIX_MAGIC + + if len(info["linkname"]) > LENGTH_LINK: + raise ValueError("linkname is too long") + + if len(info["name"]) > LENGTH_NAME: + info["prefix"], info["name"] = self._posix_split_name(info["name"]) + + return self._create_header(info, USTAR_FORMAT, encoding, errors) + + def create_gnu_header(self, info, encoding, errors): + """Return the object as a GNU header block sequence. + """ + info["magic"] = GNU_MAGIC + + buf = b"" + if len(info["linkname"]) > LENGTH_LINK: + buf += self._create_gnu_long_header(info["linkname"], GNUTYPE_LONGLINK, encoding, errors) + + if len(info["name"]) > LENGTH_NAME: + buf += self._create_gnu_long_header(info["name"], GNUTYPE_LONGNAME, encoding, errors) + + return buf + self._create_header(info, GNU_FORMAT, encoding, errors) + + def create_pax_header(self, info, encoding): + """Return the object as a ustar header block. If it cannot be + represented this way, prepend a pax extended header sequence + with supplement information. + """ + info["magic"] = POSIX_MAGIC + pax_headers = self.pax_headers.copy() + + # Test string fields for values that exceed the field length or cannot + # be represented in ASCII encoding. + for name, hname, length in ( + ("name", "path", LENGTH_NAME), ("linkname", "linkpath", LENGTH_LINK), + ("uname", "uname", 32), ("gname", "gname", 32)): + + if hname in pax_headers: + # The pax header has priority. + continue + + # Try to encode the string as ASCII. + try: + info[name].encode("ascii", "strict") + except UnicodeEncodeError: + pax_headers[hname] = info[name] + continue + + if len(info[name]) > length: + pax_headers[hname] = info[name] + + # Test number fields for values that exceed the field limit or values + # that like to be stored as float. + for name, digits in (("uid", 8), ("gid", 8), ("size", 12), ("mtime", 12)): + if name in pax_headers: + # The pax header has priority. Avoid overflow. + info[name] = 0 + continue + + val = info[name] + if not 0 <= val < 8 ** (digits - 1) or isinstance(val, float): + pax_headers[name] = str(val) + info[name] = 0 + + # Create a pax extended header if necessary. + if pax_headers: + buf = self._create_pax_generic_header(pax_headers, XHDTYPE, encoding) + else: + buf = b"" + + return buf + self._create_header(info, USTAR_FORMAT, "ascii", "replace") + + @classmethod + def create_pax_global_header(cls, pax_headers): + """Return the object as a pax global header block sequence. + """ + return cls._create_pax_generic_header(pax_headers, XGLTYPE, "utf8") + + def _posix_split_name(self, name): + """Split a name longer than 100 chars into a prefix + and a name part. + """ + prefix = name[:LENGTH_PREFIX + 1] + while prefix and prefix[-1] != "/": + prefix = prefix[:-1] + + name = name[len(prefix):] + prefix = prefix[:-1] + + if not prefix or len(name) > LENGTH_NAME: + raise ValueError("name is too long") + return prefix, name + + @staticmethod + def _create_header(info, format, encoding, errors): + """Return a header block. info is a dictionary with file + information, format must be one of the *_FORMAT constants. + """ + parts = [ + stn(info.get("name", ""), 100, encoding, errors), + itn(info.get("mode", 0) & 0o7777, 8, format), + itn(info.get("uid", 0), 8, format), + itn(info.get("gid", 0), 8, format), + itn(info.get("size", 0), 12, format), + itn(info.get("mtime", 0), 12, format), + b" ", # checksum field + info.get("type", REGTYPE), + stn(info.get("linkname", ""), 100, encoding, errors), + info.get("magic", POSIX_MAGIC), + stn(info.get("uname", ""), 32, encoding, errors), + stn(info.get("gname", ""), 32, encoding, errors), + itn(info.get("devmajor", 0), 8, format), + itn(info.get("devminor", 0), 8, format), + stn(info.get("prefix", ""), 155, encoding, errors) + ] + + buf = struct.pack("%ds" % BLOCKSIZE, b"".join(parts)) + chksum = calc_chksums(buf[-BLOCKSIZE:])[0] + buf = buf[:-364] + ("%06o\0" % chksum).encode("ascii") + buf[-357:] + return buf + + @staticmethod + def _create_payload(payload): + """Return the string payload filled with zero bytes + up to the next 512 byte border. + """ + blocks, remainder = divmod(len(payload), BLOCKSIZE) + if remainder > 0: + payload += (BLOCKSIZE - remainder) * NUL + return payload + + @classmethod + def _create_gnu_long_header(cls, name, type, encoding, errors): + """Return a GNUTYPE_LONGNAME or GNUTYPE_LONGLINK sequence + for name. + """ + name = name.encode(encoding, errors) + NUL + + info = {} + info["name"] = "././@LongLink" + info["type"] = type + info["size"] = len(name) + info["magic"] = GNU_MAGIC + + # create extended header + name blocks. + return cls._create_header(info, USTAR_FORMAT, encoding, errors) + \ + cls._create_payload(name) + + @classmethod + def _create_pax_generic_header(cls, pax_headers, type, encoding): + """Return a POSIX.1-2008 extended or global header sequence + that contains a list of keyword, value pairs. The values + must be strings. + """ + # Check if one of the fields contains surrogate characters and thereby + # forces hdrcharset=BINARY, see _proc_pax() for more information. + binary = False + for keyword, value in pax_headers.items(): + try: + value.encode("utf8", "strict") + except UnicodeEncodeError: + binary = True + break + + records = b"" + if binary: + # Put the hdrcharset field at the beginning of the header. + records += b"21 hdrcharset=BINARY\n" + + for keyword, value in pax_headers.items(): + keyword = keyword.encode("utf8") + if binary: + # Try to restore the original byte representation of `value'. + # Needless to say, that the encoding must match the string. + value = value.encode(encoding, "surrogateescape") + else: + value = value.encode("utf8") + + l = len(keyword) + len(value) + 3 # ' ' + '=' + '\n' + n = p = 0 + while True: + n = l + len(str(p)) + if n == p: + break + p = n + records += bytes(str(p), "ascii") + b" " + keyword + b"=" + value + b"\n" + + # We use a hardcoded "././@PaxHeader" name like star does + # instead of the one that POSIX recommends. + info = {} + info["name"] = "././@PaxHeader" + info["type"] = type + info["size"] = len(records) + info["magic"] = POSIX_MAGIC + + # Create pax header + record blocks. + return cls._create_header(info, USTAR_FORMAT, "ascii", "replace") + \ + cls._create_payload(records) + + @classmethod + def frombuf(cls, buf, encoding, errors): + """Construct a TarInfo object from a 512 byte bytes object. + """ + if len(buf) == 0: + raise EmptyHeaderError("empty header") + if len(buf) != BLOCKSIZE: + raise TruncatedHeaderError("truncated header") + if buf.count(NUL) == BLOCKSIZE: + raise EOFHeaderError("end of file header") + + chksum = nti(buf[148:156]) + if chksum not in calc_chksums(buf): + raise InvalidHeaderError("bad checksum") + + obj = cls() + obj.name = nts(buf[0:100], encoding, errors) + obj.mode = nti(buf[100:108]) + obj.uid = nti(buf[108:116]) + obj.gid = nti(buf[116:124]) + obj.size = nti(buf[124:136]) + obj.mtime = nti(buf[136:148]) + obj.chksum = chksum + obj.type = buf[156:157] + obj.linkname = nts(buf[157:257], encoding, errors) + obj.uname = nts(buf[265:297], encoding, errors) + obj.gname = nts(buf[297:329], encoding, errors) + obj.devmajor = nti(buf[329:337]) + obj.devminor = nti(buf[337:345]) + prefix = nts(buf[345:500], encoding, errors) + + # Old V7 tar format represents a directory as a regular + # file with a trailing slash. + if obj.type == AREGTYPE and obj.name.endswith("/"): + obj.type = DIRTYPE + + # The old GNU sparse format occupies some of the unused + # space in the buffer for up to 4 sparse structures. + # Save the them for later processing in _proc_sparse(). + if obj.type == GNUTYPE_SPARSE: + pos = 386 + structs = [] + for i in range(4): + try: + offset = nti(buf[pos:pos + 12]) + numbytes = nti(buf[pos + 12:pos + 24]) + except ValueError: + break + structs.append((offset, numbytes)) + pos += 24 + isextended = bool(buf[482]) + origsize = nti(buf[483:495]) + obj._sparse_structs = (structs, isextended, origsize) + + # Remove redundant slashes from directories. + if obj.isdir(): + obj.name = obj.name.rstrip("/") + + # Reconstruct a ustar longname. + if prefix and obj.type not in GNU_TYPES: + obj.name = prefix + "/" + obj.name + return obj + + @classmethod + def fromtarfile(cls, tarfile): + """Return the next TarInfo object from TarFile object + tarfile. + """ + buf = tarfile.fileobj.read(BLOCKSIZE) + obj = cls.frombuf(buf, tarfile.encoding, tarfile.errors) + obj.offset = tarfile.fileobj.tell() - BLOCKSIZE + return obj._proc_member(tarfile) + + #-------------------------------------------------------------------------- + # The following are methods that are called depending on the type of a + # member. The entry point is _proc_member() which can be overridden in a + # subclass to add custom _proc_*() methods. A _proc_*() method MUST + # implement the following + # operations: + # 1. Set self.offset_data to the position where the data blocks begin, + # if there is data that follows. + # 2. Set tarfile.offset to the position where the next member's header will + # begin. + # 3. Return self or another valid TarInfo object. + def _proc_member(self, tarfile): + """Choose the right processing method depending on + the type and call it. + """ + if self.type in (GNUTYPE_LONGNAME, GNUTYPE_LONGLINK): + return self._proc_gnulong(tarfile) + elif self.type == GNUTYPE_SPARSE: + return self._proc_sparse(tarfile) + elif self.type in (XHDTYPE, XGLTYPE, SOLARIS_XHDTYPE): + return self._proc_pax(tarfile) + else: + return self._proc_builtin(tarfile) + + def _proc_builtin(self, tarfile): + """Process a builtin type or an unknown type which + will be treated as a regular file. + """ + self.offset_data = tarfile.fileobj.tell() + offset = self.offset_data + if self.isreg() or self.type not in SUPPORTED_TYPES: + # Skip the following data blocks. + offset += self._block(self.size) + tarfile.offset = offset + + # Patch the TarInfo object with saved global + # header information. + self._apply_pax_info(tarfile.pax_headers, tarfile.encoding, tarfile.errors) + + return self + + def _proc_gnulong(self, tarfile): + """Process the blocks that hold a GNU longname + or longlink member. + """ + buf = tarfile.fileobj.read(self._block(self.size)) + + # Fetch the next header and process it. + try: + next = self.fromtarfile(tarfile) + except HeaderError: + raise SubsequentHeaderError("missing or bad subsequent header") + + # Patch the TarInfo object from the next header with + # the longname information. + next.offset = self.offset + if self.type == GNUTYPE_LONGNAME: + next.name = nts(buf, tarfile.encoding, tarfile.errors) + elif self.type == GNUTYPE_LONGLINK: + next.linkname = nts(buf, tarfile.encoding, tarfile.errors) + + return next + + def _proc_sparse(self, tarfile): + """Process a GNU sparse header plus extra headers. + """ + # We already collected some sparse structures in frombuf(). + structs, isextended, origsize = self._sparse_structs + del self._sparse_structs + + # Collect sparse structures from extended header blocks. + while isextended: + buf = tarfile.fileobj.read(BLOCKSIZE) + pos = 0 + for i in range(21): + try: + offset = nti(buf[pos:pos + 12]) + numbytes = nti(buf[pos + 12:pos + 24]) + except ValueError: + break + if offset and numbytes: + structs.append((offset, numbytes)) + pos += 24 + isextended = bool(buf[504]) + self.sparse = structs + + self.offset_data = tarfile.fileobj.tell() + tarfile.offset = self.offset_data + self._block(self.size) + self.size = origsize + return self + + def _proc_pax(self, tarfile): + """Process an extended or global header as described in + POSIX.1-2008. + """ + # Read the header information. + buf = tarfile.fileobj.read(self._block(self.size)) + + # A pax header stores supplemental information for either + # the following file (extended) or all following files + # (global). + if self.type == XGLTYPE: + pax_headers = tarfile.pax_headers + else: + pax_headers = tarfile.pax_headers.copy() + + # Check if the pax header contains a hdrcharset field. This tells us + # the encoding of the path, linkpath, uname and gname fields. Normally, + # these fields are UTF-8 encoded but since POSIX.1-2008 tar + # implementations are allowed to store them as raw binary strings if + # the translation to UTF-8 fails. + match = re.search(br"\d+ hdrcharset=([^\n]+)\n", buf) + if match is not None: + pax_headers["hdrcharset"] = match.group(1).decode("utf8") + + # For the time being, we don't care about anything other than "BINARY". + # The only other value that is currently allowed by the standard is + # "ISO-IR 10646 2000 UTF-8" in other words UTF-8. + hdrcharset = pax_headers.get("hdrcharset") + if hdrcharset == "BINARY": + encoding = tarfile.encoding + else: + encoding = "utf8" + + # Parse pax header information. A record looks like that: + # "%d %s=%s\n" % (length, keyword, value). length is the size + # of the complete record including the length field itself and + # the newline. keyword and value are both UTF-8 encoded strings. + regex = re.compile(br"(\d+) ([^=]+)=") + pos = 0 + while True: + match = regex.match(buf, pos) + if not match: + break + + length, keyword = match.groups() + length = int(length) + value = buf[match.end(2) + 1:match.start(1) + length - 1] + + # Normally, we could just use "utf8" as the encoding and "strict" + # as the error handler, but we better not take the risk. For + # example, GNU tar <= 1.23 is known to store filenames it cannot + # translate to UTF-8 as raw strings (unfortunately without a + # hdrcharset=BINARY header). + # We first try the strict standard encoding, and if that fails we + # fall back on the user's encoding and error handler. + keyword = self._decode_pax_field(keyword, "utf8", "utf8", + tarfile.errors) + if keyword in PAX_NAME_FIELDS: + value = self._decode_pax_field(value, encoding, tarfile.encoding, + tarfile.errors) + else: + value = self._decode_pax_field(value, "utf8", "utf8", + tarfile.errors) + + pax_headers[keyword] = value + pos += length + + # Fetch the next header. + try: + next = self.fromtarfile(tarfile) + except HeaderError: + raise SubsequentHeaderError("missing or bad subsequent header") + + # Process GNU sparse information. + if "GNU.sparse.map" in pax_headers: + # GNU extended sparse format version 0.1. + self._proc_gnusparse_01(next, pax_headers) + + elif "GNU.sparse.size" in pax_headers: + # GNU extended sparse format version 0.0. + self._proc_gnusparse_00(next, pax_headers, buf) + + elif pax_headers.get("GNU.sparse.major") == "1" and pax_headers.get("GNU.sparse.minor") == "0": + # GNU extended sparse format version 1.0. + self._proc_gnusparse_10(next, pax_headers, tarfile) + + if self.type in (XHDTYPE, SOLARIS_XHDTYPE): + # Patch the TarInfo object with the extended header info. + next._apply_pax_info(pax_headers, tarfile.encoding, tarfile.errors) + next.offset = self.offset + + if "size" in pax_headers: + # If the extended header replaces the size field, + # we need to recalculate the offset where the next + # header starts. + offset = next.offset_data + if next.isreg() or next.type not in SUPPORTED_TYPES: + offset += next._block(next.size) + tarfile.offset = offset + + return next + + def _proc_gnusparse_00(self, next, pax_headers, buf): + """Process a GNU tar extended sparse header, version 0.0. + """ + offsets = [] + for match in re.finditer(br"\d+ GNU.sparse.offset=(\d+)\n", buf): + offsets.append(int(match.group(1))) + numbytes = [] + for match in re.finditer(br"\d+ GNU.sparse.numbytes=(\d+)\n", buf): + numbytes.append(int(match.group(1))) + next.sparse = list(zip(offsets, numbytes)) + + def _proc_gnusparse_01(self, next, pax_headers): + """Process a GNU tar extended sparse header, version 0.1. + """ + sparse = [int(x) for x in pax_headers["GNU.sparse.map"].split(",")] + next.sparse = list(zip(sparse[::2], sparse[1::2])) + + def _proc_gnusparse_10(self, next, pax_headers, tarfile): + """Process a GNU tar extended sparse header, version 1.0. + """ + fields = None + sparse = [] + buf = tarfile.fileobj.read(BLOCKSIZE) + fields, buf = buf.split(b"\n", 1) + fields = int(fields) + while len(sparse) < fields * 2: + if b"\n" not in buf: + buf += tarfile.fileobj.read(BLOCKSIZE) + number, buf = buf.split(b"\n", 1) + sparse.append(int(number)) + next.offset_data = tarfile.fileobj.tell() + next.sparse = list(zip(sparse[::2], sparse[1::2])) + + def _apply_pax_info(self, pax_headers, encoding, errors): + """Replace fields with supplemental information from a previous + pax extended or global header. + """ + for keyword, value in pax_headers.items(): + if keyword == "GNU.sparse.name": + setattr(self, "path", value) + elif keyword == "GNU.sparse.size": + setattr(self, "size", int(value)) + elif keyword == "GNU.sparse.realsize": + setattr(self, "size", int(value)) + elif keyword in PAX_FIELDS: + if keyword in PAX_NUMBER_FIELDS: + try: + value = PAX_NUMBER_FIELDS[keyword](value) + except ValueError: + value = 0 + if keyword == "path": + value = value.rstrip("/") + setattr(self, keyword, value) + + self.pax_headers = pax_headers.copy() + + def _decode_pax_field(self, value, encoding, fallback_encoding, fallback_errors): + """Decode a single field from a pax record. + """ + try: + return value.decode(encoding, "strict") + except UnicodeDecodeError: + return value.decode(fallback_encoding, fallback_errors) + + def _block(self, count): + """Round up a byte count by BLOCKSIZE and return it, + e.g. _block(834) => 1024. + """ + blocks, remainder = divmod(count, BLOCKSIZE) + if remainder: + blocks += 1 + return blocks * BLOCKSIZE + + def isreg(self): + return self.type in REGULAR_TYPES + def isfile(self): + return self.isreg() + def isdir(self): + return self.type == DIRTYPE + def issym(self): + return self.type == SYMTYPE + def islnk(self): + return self.type == LNKTYPE + def ischr(self): + return self.type == CHRTYPE + def isblk(self): + return self.type == BLKTYPE + def isfifo(self): + return self.type == FIFOTYPE + def issparse(self): + return self.sparse is not None + def isdev(self): + return self.type in (CHRTYPE, BLKTYPE, FIFOTYPE) +# class TarInfo + +class TarFile(object): + """The TarFile Class provides an interface to tar archives. + """ + + debug = 0 # May be set from 0 (no msgs) to 3 (all msgs) + + dereference = False # If true, add content of linked file to the + # tar file, else the link. + + ignore_zeros = False # If true, skips empty or invalid blocks and + # continues processing. + + errorlevel = 1 # If 0, fatal errors only appear in debug + # messages (if debug >= 0). If > 0, errors + # are passed to the caller as exceptions. + + format = DEFAULT_FORMAT # The format to use when creating an archive. + + encoding = ENCODING # Encoding for 8-bit character strings. + + errors = None # Error handler for unicode conversion. + + tarinfo = TarInfo # The default TarInfo class to use. + + fileobject = ExFileObject # The default ExFileObject class to use. + + def __init__(self, name=None, mode="r", fileobj=None, format=None, + tarinfo=None, dereference=None, ignore_zeros=None, encoding=None, + errors="surrogateescape", pax_headers=None, debug=None, errorlevel=None): + """Open an (uncompressed) tar archive `name'. `mode' is either 'r' to + read from an existing archive, 'a' to append data to an existing + file or 'w' to create a new file overwriting an existing one. `mode' + defaults to 'r'. + If `fileobj' is given, it is used for reading or writing data. If it + can be determined, `mode' is overridden by `fileobj's mode. + `fileobj' is not closed, when TarFile is closed. + """ + if len(mode) > 1 or mode not in "raw": + raise ValueError("mode must be 'r', 'a' or 'w'") + self.mode = mode + self._mode = {"r": "rb", "a": "r+b", "w": "wb"}[mode] + + if not fileobj: + if self.mode == "a" and not os.path.exists(name): + # Create nonexistent files in append mode. + self.mode = "w" + self._mode = "wb" + fileobj = bltn_open(name, self._mode) + self._extfileobj = False + else: + if name is None and hasattr(fileobj, "name"): + name = fileobj.name + if hasattr(fileobj, "mode"): + self._mode = fileobj.mode + self._extfileobj = True + self.name = os.path.abspath(name) if name else None + self.fileobj = fileobj + + # Init attributes. + if format is not None: + self.format = format + if tarinfo is not None: + self.tarinfo = tarinfo + if dereference is not None: + self.dereference = dereference + if ignore_zeros is not None: + self.ignore_zeros = ignore_zeros + if encoding is not None: + self.encoding = encoding + self.errors = errors + + if pax_headers is not None and self.format == PAX_FORMAT: + self.pax_headers = pax_headers + else: + self.pax_headers = {} + + if debug is not None: + self.debug = debug + if errorlevel is not None: + self.errorlevel = errorlevel + + # Init datastructures. + self.closed = False + self.members = [] # list of members as TarInfo objects + self._loaded = False # flag if all members have been read + self.offset = self.fileobj.tell() + # current position in the archive file + self.inodes = {} # dictionary caching the inodes of + # archive members already added + + try: + if self.mode == "r": + self.firstmember = None + self.firstmember = self.next() + + if self.mode == "a": + # Move to the end of the archive, + # before the first empty block. + while True: + self.fileobj.seek(self.offset) + try: + tarinfo = self.tarinfo.fromtarfile(self) + self.members.append(tarinfo) + except EOFHeaderError: + self.fileobj.seek(self.offset) + break + except HeaderError as e: + raise ReadError(str(e)) + + if self.mode in "aw": + self._loaded = True + + if self.pax_headers: + buf = self.tarinfo.create_pax_global_header(self.pax_headers.copy()) + self.fileobj.write(buf) + self.offset += len(buf) + except: + if not self._extfileobj: + self.fileobj.close() + self.closed = True + raise + + #-------------------------------------------------------------------------- + # Below are the classmethods which act as alternate constructors to the + # TarFile class. The open() method is the only one that is needed for + # public use; it is the "super"-constructor and is able to select an + # adequate "sub"-constructor for a particular compression using the mapping + # from OPEN_METH. + # + # This concept allows one to subclass TarFile without losing the comfort of + # the super-constructor. A sub-constructor is registered and made available + # by adding it to the mapping in OPEN_METH. + + @classmethod + def open(cls, name=None, mode="r", fileobj=None, bufsize=RECORDSIZE, **kwargs): + """Open a tar archive for reading, writing or appending. Return + an appropriate TarFile class. + + mode: + 'r' or 'r:*' open for reading with transparent compression + 'r:' open for reading exclusively uncompressed + 'r:gz' open for reading with gzip compression + 'r:bz2' open for reading with bzip2 compression + 'a' or 'a:' open for appending, creating the file if necessary + 'w' or 'w:' open for writing without compression + 'w:gz' open for writing with gzip compression + 'w:bz2' open for writing with bzip2 compression + + 'r|*' open a stream of tar blocks with transparent compression + 'r|' open an uncompressed stream of tar blocks for reading + 'r|gz' open a gzip compressed stream of tar blocks + 'r|bz2' open a bzip2 compressed stream of tar blocks + 'w|' open an uncompressed stream for writing + 'w|gz' open a gzip compressed stream for writing + 'w|bz2' open a bzip2 compressed stream for writing + """ + + if not name and not fileobj: + raise ValueError("nothing to open") + + if mode in ("r", "r:*"): + # Find out which *open() is appropriate for opening the file. + for comptype in cls.OPEN_METH: + func = getattr(cls, cls.OPEN_METH[comptype]) + if fileobj is not None: + saved_pos = fileobj.tell() + try: + return func(name, "r", fileobj, **kwargs) + except (ReadError, CompressionError) as e: + if fileobj is not None: + fileobj.seek(saved_pos) + continue + raise ReadError("file could not be opened successfully") + + elif ":" in mode: + filemode, comptype = mode.split(":", 1) + filemode = filemode or "r" + comptype = comptype or "tar" + + # Select the *open() function according to + # given compression. + if comptype in cls.OPEN_METH: + func = getattr(cls, cls.OPEN_METH[comptype]) + else: + raise CompressionError("unknown compression type %r" % comptype) + return func(name, filemode, fileobj, **kwargs) + + elif "|" in mode: + filemode, comptype = mode.split("|", 1) + filemode = filemode or "r" + comptype = comptype or "tar" + + if filemode not in "rw": + raise ValueError("mode must be 'r' or 'w'") + + stream = _Stream(name, filemode, comptype, fileobj, bufsize) + try: + t = cls(name, filemode, stream, **kwargs) + except: + stream.close() + raise + t._extfileobj = False + return t + + elif mode in "aw": + return cls.taropen(name, mode, fileobj, **kwargs) + + raise ValueError("undiscernible mode") + + @classmethod + def taropen(cls, name, mode="r", fileobj=None, **kwargs): + """Open uncompressed tar archive name for reading or writing. + """ + if len(mode) > 1 or mode not in "raw": + raise ValueError("mode must be 'r', 'a' or 'w'") + return cls(name, mode, fileobj, **kwargs) + + @classmethod + def gzopen(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs): + """Open gzip compressed tar archive name for reading or writing. + Appending is not allowed. + """ + if len(mode) > 1 or mode not in "rw": + raise ValueError("mode must be 'r' or 'w'") + + try: + import gzip + gzip.GzipFile + except (ImportError, AttributeError): + raise CompressionError("gzip module is not available") + + extfileobj = fileobj is not None + try: + fileobj = gzip.GzipFile(name, mode + "b", compresslevel, fileobj) + t = cls.taropen(name, mode, fileobj, **kwargs) + except IOError: + if not extfileobj and fileobj is not None: + fileobj.close() + if fileobj is None: + raise + raise ReadError("not a gzip file") + except: + if not extfileobj and fileobj is not None: + fileobj.close() + raise + t._extfileobj = extfileobj + return t + + @classmethod + def bz2open(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs): + """Open bzip2 compressed tar archive name for reading or writing. + Appending is not allowed. + """ + if len(mode) > 1 or mode not in "rw": + raise ValueError("mode must be 'r' or 'w'.") + + try: + import bz2 + except ImportError: + raise CompressionError("bz2 module is not available") + + if fileobj is not None: + fileobj = _BZ2Proxy(fileobj, mode) + else: + fileobj = bz2.BZ2File(name, mode, compresslevel=compresslevel) + + try: + t = cls.taropen(name, mode, fileobj, **kwargs) + except (IOError, EOFError): + fileobj.close() + raise ReadError("not a bzip2 file") + t._extfileobj = False + return t + + # All *open() methods are registered here. + OPEN_METH = { + "tar": "taropen", # uncompressed tar + "gz": "gzopen", # gzip compressed tar + "bz2": "bz2open" # bzip2 compressed tar + } + + #-------------------------------------------------------------------------- + # The public methods which TarFile provides: + + def close(self): + """Close the TarFile. In write-mode, two finishing zero blocks are + appended to the archive. + """ + if self.closed: + return + + if self.mode in "aw": + self.fileobj.write(NUL * (BLOCKSIZE * 2)) + self.offset += (BLOCKSIZE * 2) + # fill up the end with zero-blocks + # (like option -b20 for tar does) + blocks, remainder = divmod(self.offset, RECORDSIZE) + if remainder > 0: + self.fileobj.write(NUL * (RECORDSIZE - remainder)) + + if not self._extfileobj: + self.fileobj.close() + self.closed = True + + def getmember(self, name): + """Return a TarInfo object for member `name'. If `name' can not be + found in the archive, KeyError is raised. If a member occurs more + than once in the archive, its last occurrence is assumed to be the + most up-to-date version. + """ + tarinfo = self._getmember(name) + if tarinfo is None: + raise KeyError("filename %r not found" % name) + return tarinfo + + def getmembers(self): + """Return the members of the archive as a list of TarInfo objects. The + list has the same order as the members in the archive. + """ + self._check() + if not self._loaded: # if we want to obtain a list of + self._load() # all members, we first have to + # scan the whole archive. + return self.members + + def getnames(self): + """Return the members of the archive as a list of their names. It has + the same order as the list returned by getmembers(). + """ + return [tarinfo.name for tarinfo in self.getmembers()] + + def gettarinfo(self, name=None, arcname=None, fileobj=None): + """Create a TarInfo object for either the file `name' or the file + object `fileobj' (using os.fstat on its file descriptor). You can + modify some of the TarInfo's attributes before you add it using + addfile(). If given, `arcname' specifies an alternative name for the + file in the archive. + """ + self._check("aw") + + # When fileobj is given, replace name by + # fileobj's real name. + if fileobj is not None: + name = fileobj.name + + # Building the name of the member in the archive. + # Backward slashes are converted to forward slashes, + # Absolute paths are turned to relative paths. + if arcname is None: + arcname = name + drv, arcname = os.path.splitdrive(arcname) + arcname = arcname.replace(os.sep, "/") + arcname = arcname.lstrip("/") + + # Now, fill the TarInfo object with + # information specific for the file. + tarinfo = self.tarinfo() + tarinfo.tarfile = self + + # Use os.stat or os.lstat, depending on platform + # and if symlinks shall be resolved. + if fileobj is None: + if hasattr(os, "lstat") and not self.dereference: + statres = os.lstat(name) + else: + statres = os.stat(name) + else: + statres = os.fstat(fileobj.fileno()) + linkname = "" + + stmd = statres.st_mode + if stat.S_ISREG(stmd): + inode = (statres.st_ino, statres.st_dev) + if not self.dereference and statres.st_nlink > 1 and \ + inode in self.inodes and arcname != self.inodes[inode]: + # Is it a hardlink to an already + # archived file? + type = LNKTYPE + linkname = self.inodes[inode] + else: + # The inode is added only if its valid. + # For win32 it is always 0. + type = REGTYPE + if inode[0]: + self.inodes[inode] = arcname + elif stat.S_ISDIR(stmd): + type = DIRTYPE + elif stat.S_ISFIFO(stmd): + type = FIFOTYPE + elif stat.S_ISLNK(stmd): + type = SYMTYPE + linkname = os.readlink(name) + elif stat.S_ISCHR(stmd): + type = CHRTYPE + elif stat.S_ISBLK(stmd): + type = BLKTYPE + else: + return None + + # Fill the TarInfo object with all + # information we can get. + tarinfo.name = arcname + tarinfo.mode = stmd + tarinfo.uid = statres.st_uid + tarinfo.gid = statres.st_gid + if type == REGTYPE: + tarinfo.size = statres.st_size + else: + tarinfo.size = 0 + tarinfo.mtime = statres.st_mtime + tarinfo.type = type + tarinfo.linkname = linkname + if pwd: + try: + tarinfo.uname = pwd.getpwuid(tarinfo.uid)[0] + except KeyError: + pass + if grp: + try: + tarinfo.gname = grp.getgrgid(tarinfo.gid)[0] + except KeyError: + pass + + if type in (CHRTYPE, BLKTYPE): + if hasattr(os, "major") and hasattr(os, "minor"): + tarinfo.devmajor = os.major(statres.st_rdev) + tarinfo.devminor = os.minor(statres.st_rdev) + return tarinfo + + def list(self, verbose=True): + """Print a table of contents to sys.stdout. If `verbose' is False, only + the names of the members are printed. If it is True, an `ls -l'-like + output is produced. + """ + self._check() + + for tarinfo in self: + if verbose: + print(filemode(tarinfo.mode), end=' ') + print("%s/%s" % (tarinfo.uname or tarinfo.uid, + tarinfo.gname or tarinfo.gid), end=' ') + if tarinfo.ischr() or tarinfo.isblk(): + print("%10s" % ("%d,%d" \ + % (tarinfo.devmajor, tarinfo.devminor)), end=' ') + else: + print("%10d" % tarinfo.size, end=' ') + print("%d-%02d-%02d %02d:%02d:%02d" \ + % time.localtime(tarinfo.mtime)[:6], end=' ') + + print(tarinfo.name + ("/" if tarinfo.isdir() else ""), end=' ') + + if verbose: + if tarinfo.issym(): + print("->", tarinfo.linkname, end=' ') + if tarinfo.islnk(): + print("link to", tarinfo.linkname, end=' ') + print() + + def add(self, name, arcname=None, recursive=True, exclude=None, filter=None): + """Add the file `name' to the archive. `name' may be any type of file + (directory, fifo, symbolic link, etc.). If given, `arcname' + specifies an alternative name for the file in the archive. + Directories are added recursively by default. This can be avoided by + setting `recursive' to False. `exclude' is a function that should + return True for each filename to be excluded. `filter' is a function + that expects a TarInfo object argument and returns the changed + TarInfo object, if it returns None the TarInfo object will be + excluded from the archive. + """ + self._check("aw") + + if arcname is None: + arcname = name + + # Exclude pathnames. + if exclude is not None: + import warnings + warnings.warn("use the filter argument instead", + DeprecationWarning, 2) + if exclude(name): + self._dbg(2, "tarfile: Excluded %r" % name) + return + + # Skip if somebody tries to archive the archive... + if self.name is not None and os.path.abspath(name) == self.name: + self._dbg(2, "tarfile: Skipped %r" % name) + return + + self._dbg(1, name) + + # Create a TarInfo object from the file. + tarinfo = self.gettarinfo(name, arcname) + + if tarinfo is None: + self._dbg(1, "tarfile: Unsupported type %r" % name) + return + + # Change or exclude the TarInfo object. + if filter is not None: + tarinfo = filter(tarinfo) + if tarinfo is None: + self._dbg(2, "tarfile: Excluded %r" % name) + return + + # Append the tar header and data to the archive. + if tarinfo.isreg(): + f = bltn_open(name, "rb") + self.addfile(tarinfo, f) + f.close() + + elif tarinfo.isdir(): + self.addfile(tarinfo) + if recursive: + for f in os.listdir(name): + self.add(os.path.join(name, f), os.path.join(arcname, f), + recursive, exclude, filter=filter) + + else: + self.addfile(tarinfo) + + def addfile(self, tarinfo, fileobj=None): + """Add the TarInfo object `tarinfo' to the archive. If `fileobj' is + given, tarinfo.size bytes are read from it and added to the archive. + You can create TarInfo objects using gettarinfo(). + On Windows platforms, `fileobj' should always be opened with mode + 'rb' to avoid irritation about the file size. + """ + self._check("aw") + + tarinfo = copy.copy(tarinfo) + + buf = tarinfo.tobuf(self.format, self.encoding, self.errors) + self.fileobj.write(buf) + self.offset += len(buf) + + # If there's data to follow, append it. + if fileobj is not None: + copyfileobj(fileobj, self.fileobj, tarinfo.size) + blocks, remainder = divmod(tarinfo.size, BLOCKSIZE) + if remainder > 0: + self.fileobj.write(NUL * (BLOCKSIZE - remainder)) + blocks += 1 + self.offset += blocks * BLOCKSIZE + + self.members.append(tarinfo) + + def extractall(self, path=".", members=None): + """Extract all members from the archive to the current working + directory and set owner, modification time and permissions on + directories afterwards. `path' specifies a different directory + to extract to. `members' is optional and must be a subset of the + list returned by getmembers(). + """ + directories = [] + + if members is None: + members = self + + for tarinfo in members: + if tarinfo.isdir(): + # Extract directories with a safe mode. + directories.append(tarinfo) + tarinfo = copy.copy(tarinfo) + tarinfo.mode = 0o700 + # Do not set_attrs directories, as we will do that further down + self.extract(tarinfo, path, set_attrs=not tarinfo.isdir()) + + # Reverse sort directories. + directories.sort(key=lambda a: a.name) + directories.reverse() + + # Set correct owner, mtime and filemode on directories. + for tarinfo in directories: + dirpath = os.path.join(path, tarinfo.name) + try: + self.chown(tarinfo, dirpath) + self.utime(tarinfo, dirpath) + self.chmod(tarinfo, dirpath) + except ExtractError as e: + if self.errorlevel > 1: + raise + else: + self._dbg(1, "tarfile: %s" % e) + + def extract(self, member, path="", set_attrs=True): + """Extract a member from the archive to the current working directory, + using its full name. Its file information is extracted as accurately + as possible. `member' may be a filename or a TarInfo object. You can + specify a different directory using `path'. File attributes (owner, + mtime, mode) are set unless `set_attrs' is False. + """ + self._check("r") + + if isinstance(member, str): + tarinfo = self.getmember(member) + else: + tarinfo = member + + # Prepare the link target for makelink(). + if tarinfo.islnk(): + tarinfo._link_target = os.path.join(path, tarinfo.linkname) + + try: + self._extract_member(tarinfo, os.path.join(path, tarinfo.name), + set_attrs=set_attrs) + except EnvironmentError as e: + if self.errorlevel > 0: + raise + else: + if e.filename is None: + self._dbg(1, "tarfile: %s" % e.strerror) + else: + self._dbg(1, "tarfile: %s %r" % (e.strerror, e.filename)) + except ExtractError as e: + if self.errorlevel > 1: + raise + else: + self._dbg(1, "tarfile: %s" % e) + + def extractfile(self, member): + """Extract a member from the archive as a file object. `member' may be + a filename or a TarInfo object. If `member' is a regular file, a + file-like object is returned. If `member' is a link, a file-like + object is constructed from the link's target. If `member' is none of + the above, None is returned. + The file-like object is read-only and provides the following + methods: read(), readline(), readlines(), seek() and tell() + """ + self._check("r") + + if isinstance(member, str): + tarinfo = self.getmember(member) + else: + tarinfo = member + + if tarinfo.isreg(): + return self.fileobject(self, tarinfo) + + elif tarinfo.type not in SUPPORTED_TYPES: + # If a member's type is unknown, it is treated as a + # regular file. + return self.fileobject(self, tarinfo) + + elif tarinfo.islnk() or tarinfo.issym(): + if isinstance(self.fileobj, _Stream): + # A small but ugly workaround for the case that someone tries + # to extract a (sym)link as a file-object from a non-seekable + # stream of tar blocks. + raise StreamError("cannot extract (sym)link as file object") + else: + # A (sym)link's file object is its target's file object. + return self.extractfile(self._find_link_target(tarinfo)) + else: + # If there's no data associated with the member (directory, chrdev, + # blkdev, etc.), return None instead of a file object. + return None + + def _extract_member(self, tarinfo, targetpath, set_attrs=True): + """Extract the TarInfo object tarinfo to a physical + file called targetpath. + """ + # Fetch the TarInfo object for the given name + # and build the destination pathname, replacing + # forward slashes to platform specific separators. + targetpath = targetpath.rstrip("/") + targetpath = targetpath.replace("/", os.sep) + + # Create all upper directories. + upperdirs = os.path.dirname(targetpath) + if upperdirs and not os.path.exists(upperdirs): + # Create directories that are not part of the archive with + # default permissions. + os.makedirs(upperdirs) + + if tarinfo.islnk() or tarinfo.issym(): + self._dbg(1, "%s -> %s" % (tarinfo.name, tarinfo.linkname)) + else: + self._dbg(1, tarinfo.name) + + if tarinfo.isreg(): + self.makefile(tarinfo, targetpath) + elif tarinfo.isdir(): + self.makedir(tarinfo, targetpath) + elif tarinfo.isfifo(): + self.makefifo(tarinfo, targetpath) + elif tarinfo.ischr() or tarinfo.isblk(): + self.makedev(tarinfo, targetpath) + elif tarinfo.islnk() or tarinfo.issym(): + self.makelink(tarinfo, targetpath) + elif tarinfo.type not in SUPPORTED_TYPES: + self.makeunknown(tarinfo, targetpath) + else: + self.makefile(tarinfo, targetpath) + + if set_attrs: + self.chown(tarinfo, targetpath) + if not tarinfo.issym(): + self.chmod(tarinfo, targetpath) + self.utime(tarinfo, targetpath) + + #-------------------------------------------------------------------------- + # Below are the different file methods. They are called via + # _extract_member() when extract() is called. They can be replaced in a + # subclass to implement other functionality. + + def makedir(self, tarinfo, targetpath): + """Make a directory called targetpath. + """ + try: + # Use a safe mode for the directory, the real mode is set + # later in _extract_member(). + os.mkdir(targetpath, 0o700) + except EnvironmentError as e: + if e.errno != errno.EEXIST: + raise + + def makefile(self, tarinfo, targetpath): + """Make a file called targetpath. + """ + source = self.fileobj + source.seek(tarinfo.offset_data) + target = bltn_open(targetpath, "wb") + if tarinfo.sparse is not None: + for offset, size in tarinfo.sparse: + target.seek(offset) + copyfileobj(source, target, size) + else: + copyfileobj(source, target, tarinfo.size) + target.seek(tarinfo.size) + target.truncate() + target.close() + + def makeunknown(self, tarinfo, targetpath): + """Make a file from a TarInfo object with an unknown type + at targetpath. + """ + self.makefile(tarinfo, targetpath) + self._dbg(1, "tarfile: Unknown file type %r, " \ + "extracted as regular file." % tarinfo.type) + + def makefifo(self, tarinfo, targetpath): + """Make a fifo called targetpath. + """ + if hasattr(os, "mkfifo"): + os.mkfifo(targetpath) + else: + raise ExtractError("fifo not supported by system") + + def makedev(self, tarinfo, targetpath): + """Make a character or block device called targetpath. + """ + if not hasattr(os, "mknod") or not hasattr(os, "makedev"): + raise ExtractError("special devices not supported by system") + + mode = tarinfo.mode + if tarinfo.isblk(): + mode |= stat.S_IFBLK + else: + mode |= stat.S_IFCHR + + os.mknod(targetpath, mode, + os.makedev(tarinfo.devmajor, tarinfo.devminor)) + + def makelink(self, tarinfo, targetpath): + """Make a (symbolic) link called targetpath. If it cannot be created + (platform limitation), we try to make a copy of the referenced file + instead of a link. + """ + try: + # For systems that support symbolic and hard links. + if tarinfo.issym(): + os.symlink(tarinfo.linkname, targetpath) + else: + # See extract(). + if os.path.exists(tarinfo._link_target): + os.link(tarinfo._link_target, targetpath) + else: + self._extract_member(self._find_link_target(tarinfo), + targetpath) + except symlink_exception: + if tarinfo.issym(): + linkpath = os.path.join(os.path.dirname(tarinfo.name), + tarinfo.linkname) + else: + linkpath = tarinfo.linkname + else: + try: + self._extract_member(self._find_link_target(tarinfo), + targetpath) + except KeyError: + raise ExtractError("unable to resolve link inside archive") + + def chown(self, tarinfo, targetpath): + """Set owner of targetpath according to tarinfo. + """ + if pwd and hasattr(os, "geteuid") and os.geteuid() == 0: + # We have to be root to do so. + try: + g = grp.getgrnam(tarinfo.gname)[2] + except KeyError: + g = tarinfo.gid + try: + u = pwd.getpwnam(tarinfo.uname)[2] + except KeyError: + u = tarinfo.uid + try: + if tarinfo.issym() and hasattr(os, "lchown"): + os.lchown(targetpath, u, g) + else: + if sys.platform != "os2emx": + os.chown(targetpath, u, g) + except EnvironmentError as e: + raise ExtractError("could not change owner") + + def chmod(self, tarinfo, targetpath): + """Set file permissions of targetpath according to tarinfo. + """ + if hasattr(os, 'chmod'): + try: + os.chmod(targetpath, tarinfo.mode) + except EnvironmentError as e: + raise ExtractError("could not change mode") + + def utime(self, tarinfo, targetpath): + """Set modification time of targetpath according to tarinfo. + """ + if not hasattr(os, 'utime'): + return + try: + os.utime(targetpath, (tarinfo.mtime, tarinfo.mtime)) + except EnvironmentError as e: + raise ExtractError("could not change modification time") + + #-------------------------------------------------------------------------- + def next(self): + """Return the next member of the archive as a TarInfo object, when + TarFile is opened for reading. Return None if there is no more + available. + """ + self._check("ra") + if self.firstmember is not None: + m = self.firstmember + self.firstmember = None + return m + + # Read the next block. + self.fileobj.seek(self.offset) + tarinfo = None + while True: + try: + tarinfo = self.tarinfo.fromtarfile(self) + except EOFHeaderError as e: + if self.ignore_zeros: + self._dbg(2, "0x%X: %s" % (self.offset, e)) + self.offset += BLOCKSIZE + continue + except InvalidHeaderError as e: + if self.ignore_zeros: + self._dbg(2, "0x%X: %s" % (self.offset, e)) + self.offset += BLOCKSIZE + continue + elif self.offset == 0: + raise ReadError(str(e)) + except EmptyHeaderError: + if self.offset == 0: + raise ReadError("empty file") + except TruncatedHeaderError as e: + if self.offset == 0: + raise ReadError(str(e)) + except SubsequentHeaderError as e: + raise ReadError(str(e)) + break + + if tarinfo is not None: + self.members.append(tarinfo) + else: + self._loaded = True + + return tarinfo + + #-------------------------------------------------------------------------- + # Little helper methods: + + def _getmember(self, name, tarinfo=None, normalize=False): + """Find an archive member by name from bottom to top. + If tarinfo is given, it is used as the starting point. + """ + # Ensure that all members have been loaded. + members = self.getmembers() + + # Limit the member search list up to tarinfo. + if tarinfo is not None: + members = members[:members.index(tarinfo)] + + if normalize: + name = os.path.normpath(name) + + for member in reversed(members): + if normalize: + member_name = os.path.normpath(member.name) + else: + member_name = member.name + + if name == member_name: + return member + + def _load(self): + """Read through the entire archive file and look for readable + members. + """ + while True: + tarinfo = self.next() + if tarinfo is None: + break + self._loaded = True + + def _check(self, mode=None): + """Check if TarFile is still open, and if the operation's mode + corresponds to TarFile's mode. + """ + if self.closed: + raise IOError("%s is closed" % self.__class__.__name__) + if mode is not None and self.mode not in mode: + raise IOError("bad operation for mode %r" % self.mode) + + def _find_link_target(self, tarinfo): + """Find the target member of a symlink or hardlink member in the + archive. + """ + if tarinfo.issym(): + # Always search the entire archive. + linkname = os.path.dirname(tarinfo.name) + "/" + tarinfo.linkname + limit = None + else: + # Search the archive before the link, because a hard link is + # just a reference to an already archived file. + linkname = tarinfo.linkname + limit = tarinfo + + member = self._getmember(linkname, tarinfo=limit, normalize=True) + if member is None: + raise KeyError("linkname %r not found" % linkname) + return member + + def __iter__(self): + """Provide an iterator object. + """ + if self._loaded: + return iter(self.members) + else: + return TarIter(self) + + def _dbg(self, level, msg): + """Write debugging output to sys.stderr. + """ + if level <= self.debug: + print(msg, file=sys.stderr) + + def __enter__(self): + self._check() + return self + + def __exit__(self, type, value, traceback): + if type is None: + self.close() + else: + # An exception occurred. We must not call close() because + # it would try to write end-of-archive blocks and padding. + if not self._extfileobj: + self.fileobj.close() + self.closed = True +# class TarFile + +class TarIter(object): + """Iterator Class. + + for tarinfo in TarFile(...): + suite... + """ + + def __init__(self, tarfile): + """Construct a TarIter object. + """ + self.tarfile = tarfile + self.index = 0 + def __iter__(self): + """Return iterator object. + """ + return self + + def __next__(self): + """Return the next item using TarFile's next() method. + When all members have been read, set TarFile as _loaded. + """ + # Fix for SF #1100429: Under rare circumstances it can + # happen that getmembers() is called during iteration, + # which will cause TarIter to stop prematurely. + if not self.tarfile._loaded: + tarinfo = self.tarfile.next() + if not tarinfo: + self.tarfile._loaded = True + raise StopIteration + else: + try: + tarinfo = self.tarfile.members[self.index] + except IndexError: + raise StopIteration + self.index += 1 + return tarinfo + + next = __next__ # for Python 2.x + +#-------------------- +# exported functions +#-------------------- +def is_tarfile(name): + """Return True if name points to a tar archive that we + are able to handle, else return False. + """ + try: + t = open(name) + t.close() + return True + except TarError: + return False + +bltn_open = open +open = TarFile.open diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/tarfile.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/_backport/tarfile.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5272a9242c7e2b353e33510f9161b47913831695 GIT binary patch literal 78795 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 'user[:passwd]', 'host[:port]'.""" + global _userprog + if _userprog is None: + import re + _userprog = re.compile('^(.*)@(.*)$') + + match = _userprog.match(host) + if match: return match.group(1, 2) + return None, host + +else: # pragma: no cover + from io import StringIO + string_types = str, + text_type = str + from io import TextIOWrapper as file_type + import builtins + import configparser + import shutil + from urllib.parse import (urlparse, urlunparse, urljoin, splituser, quote, + unquote, urlsplit, urlunsplit, splittype) + from urllib.request import (urlopen, urlretrieve, Request, url2pathname, + pathname2url, + HTTPBasicAuthHandler, HTTPPasswordMgr, + HTTPSHandler, HTTPHandler, HTTPRedirectHandler, + build_opener) + from urllib.error import HTTPError, URLError, ContentTooShortError + import http.client as httplib + import urllib.request as urllib2 + import xmlrpc.client as xmlrpclib + import queue + from html.parser import HTMLParser + import html.entities as htmlentitydefs + raw_input = input + from itertools import filterfalse + filter = filter + +try: + from ssl import match_hostname, CertificateError +except ImportError: # pragma: no cover + class CertificateError(ValueError): + pass + + + def _dnsname_match(dn, hostname, max_wildcards=1): + """Matching according to RFC 6125, section 6.4.3 + + http://tools.ietf.org/html/rfc6125#section-6.4.3 + """ + pats = [] + if not dn: + return False + + parts = dn.split('.') + leftmost, remainder = parts[0], parts[1:] + + wildcards = leftmost.count('*') + if wildcards > max_wildcards: + # Issue #17980: avoid denials of service by refusing more + # than one wildcard per fragment. A survery of established + # policy among SSL implementations showed it to be a + # reasonable choice. + raise CertificateError( + "too many wildcards in certificate DNS name: " + repr(dn)) + + # speed up common case w/o wildcards + if not wildcards: + return dn.lower() == hostname.lower() + + # RFC 6125, section 6.4.3, subitem 1. + # The client SHOULD NOT attempt to match a presented identifier in which + # the wildcard character comprises a label other than the left-most label. + if leftmost == '*': + # When '*' is a fragment by itself, it matches a non-empty dotless + # fragment. + pats.append('[^.]+') + elif leftmost.startswith('xn--') or hostname.startswith('xn--'): + # RFC 6125, section 6.4.3, subitem 3. + # The client SHOULD NOT attempt to match a presented identifier + # where the wildcard character is embedded within an A-label or + # U-label of an internationalized domain name. + pats.append(re.escape(leftmost)) + else: + # Otherwise, '*' matches any dotless string, e.g. www* + pats.append(re.escape(leftmost).replace(r'\*', '[^.]*')) + + # add the remaining fragments, ignore any wildcards + for frag in remainder: + pats.append(re.escape(frag)) + + pat = re.compile(r'\A' + r'\.'.join(pats) + r'\Z', re.IGNORECASE) + return pat.match(hostname) + + + def match_hostname(cert, hostname): + """Verify that *cert* (in decoded format as returned by + SSLSocket.getpeercert()) matches the *hostname*. RFC 2818 and RFC 6125 + rules are followed, but IP addresses are not accepted for *hostname*. + + CertificateError is raised on failure. On success, the function + returns nothing. + """ + if not cert: + raise ValueError("empty or no certificate, match_hostname needs a " + "SSL socket or SSL context with either " + "CERT_OPTIONAL or CERT_REQUIRED") + dnsnames = [] + san = cert.get('subjectAltName', ()) + for key, value in san: + if key == 'DNS': + if _dnsname_match(value, hostname): + return + dnsnames.append(value) + if not dnsnames: + # The subject is only checked when there is no dNSName entry + # in subjectAltName + for sub in cert.get('subject', ()): + for key, value in sub: + # XXX according to RFC 2818, the most specific Common Name + # must be used. + if key == 'commonName': + if _dnsname_match(value, hostname): + return + dnsnames.append(value) + if len(dnsnames) > 1: + raise CertificateError("hostname %r " + "doesn't match either of %s" + % (hostname, ', '.join(map(repr, dnsnames)))) + elif len(dnsnames) == 1: + raise CertificateError("hostname %r " + "doesn't match %r" + % (hostname, dnsnames[0])) + else: + raise CertificateError("no appropriate commonName or " + "subjectAltName fields were found") + + +try: + from types import SimpleNamespace as Container +except ImportError: # pragma: no cover + class Container(object): + """ + A generic container for when multiple values need to be returned + """ + def __init__(self, **kwargs): + self.__dict__.update(kwargs) + + +try: + from shutil import which +except ImportError: # pragma: no cover + # Implementation from Python 3.3 + def which(cmd, mode=os.F_OK | os.X_OK, path=None): + """Given a command, mode, and a PATH string, return the path which + conforms to the given mode on the PATH, or None if there is no such + file. + + `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result + of os.environ.get("PATH"), or can be overridden with a custom search + path. + + """ + # Check that a given file can be accessed with the correct mode. + # Additionally check that `file` is not a directory, as on Windows + # directories pass the os.access check. + def _access_check(fn, mode): + return (os.path.exists(fn) and os.access(fn, mode) + and not os.path.isdir(fn)) + + # If we're given a path with a directory part, look it up directly rather + # than referring to PATH directories. This includes checking relative to the + # current directory, e.g. ./script + if os.path.dirname(cmd): + if _access_check(cmd, mode): + return cmd + return None + + if path is None: + path = os.environ.get("PATH", os.defpath) + if not path: + return None + path = path.split(os.pathsep) + + if sys.platform == "win32": + # The current directory takes precedence on Windows. + if not os.curdir in path: + path.insert(0, os.curdir) + + # PATHEXT is necessary to check on Windows. + pathext = os.environ.get("PATHEXT", "").split(os.pathsep) + # See if the given file matches any of the expected path extensions. + # This will allow us to short circuit when given "python.exe". + # If it does match, only test that one, otherwise we have to try + # others. + if any(cmd.lower().endswith(ext.lower()) for ext in pathext): + files = [cmd] + else: + files = [cmd + ext for ext in pathext] + else: + # On other platforms you don't have things like PATHEXT to tell you + # what file suffixes are executable, so just pass on cmd as-is. + files = [cmd] + + seen = set() + for dir in path: + normdir = os.path.normcase(dir) + if not normdir in seen: + seen.add(normdir) + for thefile in files: + name = os.path.join(dir, thefile) + if _access_check(name, mode): + return name + return None + + +# ZipFile is a context manager in 2.7, but not in 2.6 + +from zipfile import ZipFile as BaseZipFile + +if hasattr(BaseZipFile, '__enter__'): # pragma: no cover + ZipFile = BaseZipFile +else: + from zipfile import ZipExtFile as BaseZipExtFile + + class ZipExtFile(BaseZipExtFile): + def __init__(self, base): + self.__dict__.update(base.__dict__) + + def __enter__(self): + return self + + def __exit__(self, *exc_info): + self.close() + # return None, so if an exception occurred, it will propagate + + class ZipFile(BaseZipFile): + def __enter__(self): + return self + + def __exit__(self, *exc_info): + self.close() + # return None, so if an exception occurred, it will propagate + + def open(self, *args, **kwargs): + base = BaseZipFile.open(self, *args, **kwargs) + return ZipExtFile(base) + +try: + from platform import python_implementation +except ImportError: # pragma: no cover + def python_implementation(): + """Return a string identifying the Python implementation.""" + if 'PyPy' in sys.version: + return 'PyPy' + if os.name == 'java': + return 'Jython' + if sys.version.startswith('IronPython'): + return 'IronPython' + return 'CPython' + +try: + import sysconfig +except ImportError: # pragma: no cover + from ._backport import sysconfig + +try: + callable = callable +except NameError: # pragma: no cover + from collections import Callable + + def callable(obj): + return isinstance(obj, Callable) + + +try: + fsencode = os.fsencode + fsdecode = os.fsdecode +except AttributeError: # pragma: no cover + _fsencoding = sys.getfilesystemencoding() + if _fsencoding == 'mbcs': + _fserrors = 'strict' + else: + _fserrors = 'surrogateescape' + + def fsencode(filename): + if isinstance(filename, bytes): + return filename + elif isinstance(filename, text_type): + return filename.encode(_fsencoding, _fserrors) + else: + raise TypeError("expect bytes or str, not %s" % + type(filename).__name__) + + def fsdecode(filename): + if isinstance(filename, text_type): + return filename + elif isinstance(filename, bytes): + return filename.decode(_fsencoding, _fserrors) + else: + raise TypeError("expect bytes or str, not %s" % + type(filename).__name__) + +try: + from tokenize import detect_encoding +except ImportError: # pragma: no cover + from codecs import BOM_UTF8, lookup + import re + + cookie_re = re.compile("coding[:=]\s*([-\w.]+)") + + def _get_normal_name(orig_enc): + """Imitates get_normal_name in tokenizer.c.""" + # Only care about the first 12 characters. + enc = orig_enc[:12].lower().replace("_", "-") + if enc == "utf-8" or enc.startswith("utf-8-"): + return "utf-8" + if enc in ("latin-1", "iso-8859-1", "iso-latin-1") or \ + enc.startswith(("latin-1-", "iso-8859-1-", "iso-latin-1-")): + return "iso-8859-1" + return orig_enc + + def detect_encoding(readline): + """ + The detect_encoding() function is used to detect the encoding that should + be used to decode a Python source file. It requires one argment, readline, + in the same way as the tokenize() generator. + + It will call readline a maximum of twice, and return the encoding used + (as a string) and a list of any lines (left as bytes) it has read in. + + It detects the encoding from the presence of a utf-8 bom or an encoding + cookie as specified in pep-0263. If both a bom and a cookie are present, + but disagree, a SyntaxError will be raised. If the encoding cookie is an + invalid charset, raise a SyntaxError. Note that if a utf-8 bom is found, + 'utf-8-sig' is returned. + + If no encoding is specified, then the default of 'utf-8' will be returned. + """ + try: + filename = readline.__self__.name + except AttributeError: + filename = None + bom_found = False + encoding = None + default = 'utf-8' + def read_or_stop(): + try: + return readline() + except StopIteration: + return b'' + + def find_cookie(line): + try: + # Decode as UTF-8. Either the line is an encoding declaration, + # in which case it should be pure ASCII, or it must be UTF-8 + # per default encoding. + line_string = line.decode('utf-8') + except UnicodeDecodeError: + msg = "invalid or missing encoding declaration" + if filename is not None: + msg = '{} for {!r}'.format(msg, filename) + raise SyntaxError(msg) + + matches = cookie_re.findall(line_string) + if not matches: + return None + encoding = _get_normal_name(matches[0]) + try: + codec = lookup(encoding) + except LookupError: + # This behaviour mimics the Python interpreter + if filename is None: + msg = "unknown encoding: " + encoding + else: + msg = "unknown encoding for {!r}: {}".format(filename, + encoding) + raise SyntaxError(msg) + + if bom_found: + if codec.name != 'utf-8': + # This behaviour mimics the Python interpreter + if filename is None: + msg = 'encoding problem: utf-8' + else: + msg = 'encoding problem for {!r}: utf-8'.format(filename) + raise SyntaxError(msg) + encoding += '-sig' + return encoding + + first = read_or_stop() + if first.startswith(BOM_UTF8): + bom_found = True + first = first[3:] + default = 'utf-8-sig' + if not first: + return default, [] + + encoding = find_cookie(first) + if encoding: + return encoding, [first] + + second = read_or_stop() + if not second: + return default, [first] + + encoding = find_cookie(second) + if encoding: + return encoding, [first, second] + + return default, [first, second] + +# For converting & <-> & etc. +try: + from html import escape +except ImportError: + from cgi import escape +if sys.version_info[:2] < (3, 4): + unescape = HTMLParser().unescape +else: + from html import unescape + +try: + from collections import ChainMap +except ImportError: # pragma: no cover + from collections import MutableMapping + + try: + from reprlib import recursive_repr as _recursive_repr + except ImportError: + def _recursive_repr(fillvalue='...'): + ''' + Decorator to make a repr function return fillvalue for a recursive + call + ''' + + def decorating_function(user_function): + repr_running = set() + + def wrapper(self): + key = id(self), get_ident() + if key in repr_running: + return fillvalue + repr_running.add(key) + try: + result = user_function(self) + finally: + repr_running.discard(key) + return result + + # Can't use functools.wraps() here because of bootstrap issues + wrapper.__module__ = getattr(user_function, '__module__') + wrapper.__doc__ = getattr(user_function, '__doc__') + wrapper.__name__ = getattr(user_function, '__name__') + wrapper.__annotations__ = getattr(user_function, '__annotations__', {}) + return wrapper + + return decorating_function + + class ChainMap(MutableMapping): + ''' A ChainMap groups multiple dicts (or other mappings) together + to create a single, updateable view. + + The underlying mappings are stored in a list. That list is public and can + accessed or updated using the *maps* attribute. There is no other state. + + Lookups search the underlying mappings successively until a key is found. + In contrast, writes, updates, and deletions only operate on the first + mapping. + + ''' + + def __init__(self, *maps): + '''Initialize a ChainMap by setting *maps* to the given mappings. + If no mappings are provided, a single empty dictionary is used. + + ''' + self.maps = list(maps) or [{}] # always at least one map + + def __missing__(self, key): + raise KeyError(key) + + def __getitem__(self, key): + for mapping in self.maps: + try: + return mapping[key] # can't use 'key in mapping' with defaultdict + except KeyError: + pass + return self.__missing__(key) # support subclasses that define __missing__ + + def get(self, key, default=None): + return self[key] if key in self else default + + def __len__(self): + return len(set().union(*self.maps)) # reuses stored hash values if possible + + def __iter__(self): + return iter(set().union(*self.maps)) + + def __contains__(self, key): + return any(key in m for m in self.maps) + + def __bool__(self): + return any(self.maps) + + @_recursive_repr() + def __repr__(self): + return '{0.__class__.__name__}({1})'.format( + self, ', '.join(map(repr, self.maps))) + + @classmethod + def fromkeys(cls, iterable, *args): + 'Create a ChainMap with a single dict created from the iterable.' + return cls(dict.fromkeys(iterable, *args)) + + def copy(self): + 'New ChainMap or subclass with a new copy of maps[0] and refs to maps[1:]' + return self.__class__(self.maps[0].copy(), *self.maps[1:]) + + __copy__ = copy + + def new_child(self): # like Django's Context.push() + 'New ChainMap with a new dict followed by all previous maps.' + return self.__class__({}, *self.maps) + + @property + def parents(self): # like Django's Context.pop() + 'New ChainMap from maps[1:].' + return self.__class__(*self.maps[1:]) + + def __setitem__(self, key, value): + self.maps[0][key] = value + + def __delitem__(self, key): + try: + del self.maps[0][key] + except KeyError: + raise KeyError('Key not found in the first mapping: {!r}'.format(key)) + + def popitem(self): + 'Remove and return an item pair from maps[0]. Raise KeyError is maps[0] is empty.' + try: + return self.maps[0].popitem() + except KeyError: + raise KeyError('No keys found in the first mapping.') + + def pop(self, key, *args): + 'Remove *key* from maps[0] and return its value. Raise KeyError if *key* not in maps[0].' + try: + return self.maps[0].pop(key, *args) + except KeyError: + raise KeyError('Key not found in the first mapping: {!r}'.format(key)) + + def clear(self): + 'Clear maps[0], leaving maps[1:] intact.' + self.maps[0].clear() + +try: + from imp import cache_from_source +except ImportError: # pragma: no cover + def cache_from_source(path, debug_override=None): + assert path.endswith('.py') + if debug_override is None: + debug_override = __debug__ + if debug_override: + suffix = 'c' + else: + suffix = 'o' + return path + suffix + +try: + from collections import OrderedDict +except ImportError: # pragma: no cover +## {{{ http://code.activestate.com/recipes/576693/ (r9) +# Backport of OrderedDict() class that runs on Python 2.4, 2.5, 2.6, 2.7 and pypy. +# Passes Python2.7's test suite and incorporates all the latest updates. + try: + from thread import get_ident as _get_ident + except ImportError: + from dummy_thread import get_ident as _get_ident + + try: + from _abcoll import KeysView, ValuesView, ItemsView + except ImportError: + pass + + + class OrderedDict(dict): + 'Dictionary that remembers insertion order' + # An inherited dict maps keys to values. + # The inherited dict provides __getitem__, __len__, __contains__, and get. + # The remaining methods are order-aware. + # Big-O running times for all methods are the same as for regular dictionaries. + + # The internal self.__map dictionary maps keys to links in a doubly linked list. + # The circular doubly linked list starts and ends with a sentinel element. + # The sentinel element never gets deleted (this simplifies the algorithm). + # Each link is stored as a list of length three: [PREV, NEXT, KEY]. + + def __init__(self, *args, **kwds): + '''Initialize an ordered dictionary. Signature is the same as for + regular dictionaries, but keyword arguments are not recommended + because their insertion order is arbitrary. + + ''' + if len(args) > 1: + raise TypeError('expected at most 1 arguments, got %d' % len(args)) + try: + self.__root + except AttributeError: + self.__root = root = [] # sentinel node + root[:] = [root, root, None] + self.__map = {} + self.__update(*args, **kwds) + + def __setitem__(self, key, value, dict_setitem=dict.__setitem__): + 'od.__setitem__(i, y) <==> od[i]=y' + # Setting a new item creates a new link which goes at the end of the linked + # list, and the inherited dictionary is updated with the new key/value pair. + if key not in self: + root = self.__root + last = root[0] + last[1] = root[0] = self.__map[key] = [last, root, key] + dict_setitem(self, key, value) + + def __delitem__(self, key, dict_delitem=dict.__delitem__): + 'od.__delitem__(y) <==> del od[y]' + # Deleting an existing item uses self.__map to find the link which is + # then removed by updating the links in the predecessor and successor nodes. + dict_delitem(self, key) + link_prev, link_next, key = self.__map.pop(key) + link_prev[1] = link_next + link_next[0] = link_prev + + def __iter__(self): + 'od.__iter__() <==> iter(od)' + root = self.__root + curr = root[1] + while curr is not root: + yield curr[2] + curr = curr[1] + + def __reversed__(self): + 'od.__reversed__() <==> reversed(od)' + root = self.__root + curr = root[0] + while curr is not root: + yield curr[2] + curr = curr[0] + + def clear(self): + 'od.clear() -> None. Remove all items from od.' + try: + for node in self.__map.itervalues(): + del node[:] + root = self.__root + root[:] = [root, root, None] + self.__map.clear() + except AttributeError: + pass + dict.clear(self) + + def popitem(self, last=True): + '''od.popitem() -> (k, v), return and remove a (key, value) pair. + Pairs are returned in LIFO order if last is true or FIFO order if false. + + ''' + if not self: + raise KeyError('dictionary is empty') + root = self.__root + if last: + link = root[0] + link_prev = link[0] + link_prev[1] = root + root[0] = link_prev + else: + link = root[1] + link_next = link[1] + root[1] = link_next + link_next[0] = root + key = link[2] + del self.__map[key] + value = dict.pop(self, key) + return key, value + + # -- the following methods do not depend on the internal structure -- + + def keys(self): + 'od.keys() -> list of keys in od' + return list(self) + + def values(self): + 'od.values() -> list of values in od' + return [self[key] for key in self] + + def items(self): + 'od.items() -> list of (key, value) pairs in od' + return [(key, self[key]) for key in self] + + def iterkeys(self): + 'od.iterkeys() -> an iterator over the keys in od' + return iter(self) + + def itervalues(self): + 'od.itervalues -> an iterator over the values in od' + for k in self: + yield self[k] + + def iteritems(self): + 'od.iteritems -> an iterator over the (key, value) items in od' + for k in self: + yield (k, self[k]) + + def update(*args, **kwds): + '''od.update(E, **F) -> None. Update od from dict/iterable E and F. + + If E is a dict instance, does: for k in E: od[k] = E[k] + If E has a .keys() method, does: for k in E.keys(): od[k] = E[k] + Or if E is an iterable of items, does: for k, v in E: od[k] = v + In either case, this is followed by: for k, v in F.items(): od[k] = v + + ''' + if len(args) > 2: + raise TypeError('update() takes at most 2 positional ' + 'arguments (%d given)' % (len(args),)) + elif not args: + raise TypeError('update() takes at least 1 argument (0 given)') + self = args[0] + # Make progressively weaker assumptions about "other" + other = () + if len(args) == 2: + other = args[1] + if isinstance(other, dict): + for key in other: + self[key] = other[key] + elif hasattr(other, 'keys'): + for key in other.keys(): + self[key] = other[key] + else: + for key, value in other: + self[key] = value + for key, value in kwds.items(): + self[key] = value + + __update = update # let subclasses override update without breaking __init__ + + __marker = object() + + def pop(self, key, default=__marker): + '''od.pop(k[,d]) -> v, remove specified key and return the corresponding value. + If key is not found, d is returned if given, otherwise KeyError is raised. + + ''' + if key in self: + result = self[key] + del self[key] + return result + if default is self.__marker: + raise KeyError(key) + return default + + def setdefault(self, key, default=None): + 'od.setdefault(k[,d]) -> od.get(k,d), also set od[k]=d if k not in od' + if key in self: + return self[key] + self[key] = default + return default + + def __repr__(self, _repr_running=None): + 'od.__repr__() <==> repr(od)' + if not _repr_running: _repr_running = {} + call_key = id(self), _get_ident() + if call_key in _repr_running: + return '...' + _repr_running[call_key] = 1 + try: + if not self: + return '%s()' % (self.__class__.__name__,) + return '%s(%r)' % (self.__class__.__name__, self.items()) + finally: + del _repr_running[call_key] + + def __reduce__(self): + 'Return state information for pickling' + items = [[k, self[k]] for k in self] + inst_dict = vars(self).copy() + for k in vars(OrderedDict()): + inst_dict.pop(k, None) + if inst_dict: + return (self.__class__, (items,), inst_dict) + return self.__class__, (items,) + + def copy(self): + 'od.copy() -> a shallow copy of od' + return self.__class__(self) + + @classmethod + def fromkeys(cls, iterable, value=None): + '''OD.fromkeys(S[, v]) -> New ordered dictionary with keys from S + and values equal to v (which defaults to None). + + ''' + d = cls() + for key in iterable: + d[key] = value + return d + + def __eq__(self, other): + '''od.__eq__(y) <==> od==y. Comparison to another OD is order-sensitive + while comparison to a regular mapping is order-insensitive. + + ''' + if isinstance(other, OrderedDict): + return len(self)==len(other) and self.items() == other.items() + return dict.__eq__(self, other) + + def __ne__(self, other): + return not self == other + + # -- the following methods are only used in Python 2.7 -- + + def viewkeys(self): + "od.viewkeys() -> a set-like object providing a view on od's keys" + return KeysView(self) + + def viewvalues(self): + "od.viewvalues() -> an object providing a view on od's values" + return ValuesView(self) + + def viewitems(self): + "od.viewitems() -> a set-like object providing a view on od's items" + return ItemsView(self) + +try: + from logging.config import BaseConfigurator, valid_ident +except ImportError: # pragma: no cover + IDENTIFIER = re.compile('^[a-z_][a-z0-9_]*$', re.I) + + + def valid_ident(s): + m = IDENTIFIER.match(s) + if not m: + raise ValueError('Not a valid Python identifier: %r' % s) + return True + + + # The ConvertingXXX classes are wrappers around standard Python containers, + # and they serve to convert any suitable values in the container. The + # conversion converts base dicts, lists and tuples to their wrapped + # equivalents, whereas strings which match a conversion format are converted + # appropriately. + # + # Each wrapper should have a configurator attribute holding the actual + # configurator to use for conversion. + + class ConvertingDict(dict): + """A converting dictionary wrapper.""" + + def __getitem__(self, key): + value = dict.__getitem__(self, key) + result = self.configurator.convert(value) + #If the converted value is different, save for next time + if value is not result: + self[key] = result + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + result.key = key + return result + + def get(self, key, default=None): + value = dict.get(self, key, default) + result = self.configurator.convert(value) + #If the converted value is different, save for next time + if value is not result: + self[key] = result + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + result.key = key + return result + + def pop(self, key, default=None): + value = dict.pop(self, key, default) + result = self.configurator.convert(value) + if value is not result: + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + result.key = key + return result + + class ConvertingList(list): + """A converting list wrapper.""" + def __getitem__(self, key): + value = list.__getitem__(self, key) + result = self.configurator.convert(value) + #If the converted value is different, save for next time + if value is not result: + self[key] = result + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + result.key = key + return result + + def pop(self, idx=-1): + value = list.pop(self, idx) + result = self.configurator.convert(value) + if value is not result: + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + return result + + class ConvertingTuple(tuple): + """A converting tuple wrapper.""" + def __getitem__(self, key): + value = tuple.__getitem__(self, key) + result = self.configurator.convert(value) + if value is not result: + if type(result) in (ConvertingDict, ConvertingList, + ConvertingTuple): + result.parent = self + result.key = key + return result + + class BaseConfigurator(object): + """ + The configurator base class which defines some useful defaults. + """ + + CONVERT_PATTERN = re.compile(r'^(?P[a-z]+)://(?P.*)$') + + WORD_PATTERN = re.compile(r'^\s*(\w+)\s*') + DOT_PATTERN = re.compile(r'^\.\s*(\w+)\s*') + INDEX_PATTERN = re.compile(r'^\[\s*(\w+)\s*\]\s*') + DIGIT_PATTERN = re.compile(r'^\d+$') + + value_converters = { + 'ext' : 'ext_convert', + 'cfg' : 'cfg_convert', + } + + # We might want to use a different one, e.g. importlib + importer = staticmethod(__import__) + + def __init__(self, config): + self.config = ConvertingDict(config) + self.config.configurator = self + + def resolve(self, s): + """ + Resolve strings to objects using standard import and attribute + syntax. + """ + name = s.split('.') + used = name.pop(0) + try: + found = self.importer(used) + for frag in name: + used += '.' + frag + try: + found = getattr(found, frag) + except AttributeError: + self.importer(used) + found = getattr(found, frag) + return found + except ImportError: + e, tb = sys.exc_info()[1:] + v = ValueError('Cannot resolve %r: %s' % (s, e)) + v.__cause__, v.__traceback__ = e, tb + raise v + + def ext_convert(self, value): + """Default converter for the ext:// protocol.""" + return self.resolve(value) + + def cfg_convert(self, value): + """Default converter for the cfg:// protocol.""" + rest = value + m = self.WORD_PATTERN.match(rest) + if m is None: + raise ValueError("Unable to convert %r" % value) + else: + rest = rest[m.end():] + d = self.config[m.groups()[0]] + #print d, rest + while rest: + m = self.DOT_PATTERN.match(rest) + if m: + d = d[m.groups()[0]] + else: + m = self.INDEX_PATTERN.match(rest) + if m: + idx = m.groups()[0] + if not self.DIGIT_PATTERN.match(idx): + d = d[idx] + else: + try: + n = int(idx) # try as number first (most likely) + d = d[n] + except TypeError: + d = d[idx] + if m: + rest = rest[m.end():] + else: + raise ValueError('Unable to convert ' + '%r at %r' % (value, rest)) + #rest should be empty + return d + + def convert(self, value): + """ + Convert values to an appropriate type. dicts, lists and tuples are + replaced by their converting alternatives. Strings are checked to + see if they have a conversion format and are converted if they do. + """ + if not isinstance(value, ConvertingDict) and isinstance(value, dict): + value = ConvertingDict(value) + value.configurator = self + elif not isinstance(value, ConvertingList) and isinstance(value, list): + value = ConvertingList(value) + value.configurator = self + elif not isinstance(value, ConvertingTuple) and\ + isinstance(value, tuple): + value = ConvertingTuple(value) + value.configurator = self + elif isinstance(value, string_types): + m = self.CONVERT_PATTERN.match(value) + if m: + d = m.groupdict() + prefix = d['prefix'] + converter = self.value_converters.get(prefix, None) + if converter: + suffix = d['suffix'] + converter = getattr(self, converter) + value = converter(suffix) + return value + + def configure_custom(self, config): + """Configure an object with a user-supplied factory.""" + c = config.pop('()') + if not callable(c): + c = self.resolve(c) + props = config.pop('.', None) + # Check for valid identifiers + kwargs = dict([(k, config[k]) for k in config if valid_ident(k)]) + result = c(**kwargs) + if props: + for name, value in props.items(): + setattr(result, name, value) + return result + + def as_tuple(self, value): + """Utility function which converts lists to tuples.""" + if isinstance(value, list): + value = tuple(value) + return value diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/compat.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/compat.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bf2cb2ebb06f4a8768eaf2a692f06c6f2a88aa76 GIT binary patch literal 38948 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.py new file mode 100644 index 0000000..7bc1914 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.py @@ -0,0 +1,1312 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012-2016 The Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +"""PEP 376 implementation.""" + +from __future__ import unicode_literals + +import base64 +import codecs +import contextlib +import hashlib +import logging +import os +import posixpath +import sys +import zipimport + +from . import DistlibException, resources +from .compat import StringIO +from .version import get_scheme, UnsupportedVersionError +from .metadata import Metadata, METADATA_FILENAME, WHEEL_METADATA_FILENAME +from .util import (parse_requirement, cached_property, parse_name_and_version, + read_exports, write_exports, CSVReader, CSVWriter) + + +__all__ = ['Distribution', 'BaseInstalledDistribution', + 'InstalledDistribution', 'EggInfoDistribution', + 'DistributionPath'] + + +logger = logging.getLogger(__name__) + +EXPORTS_FILENAME = 'pydist-exports.json' +COMMANDS_FILENAME = 'pydist-commands.json' + +DIST_FILES = ('INSTALLER', METADATA_FILENAME, 'RECORD', 'REQUESTED', + 'RESOURCES', EXPORTS_FILENAME, 'SHARED') + +DISTINFO_EXT = '.dist-info' + + +class _Cache(object): + """ + A simple cache mapping names and .dist-info paths to distributions + """ + def __init__(self): + """ + Initialise an instance. There is normally one for each DistributionPath. + """ + self.name = {} + self.path = {} + self.generated = False + + def clear(self): + """ + Clear the cache, setting it to its initial state. + """ + self.name.clear() + self.path.clear() + self.generated = False + + def add(self, dist): + """ + Add a distribution to the cache. + :param dist: The distribution to add. + """ + if dist.path not in self.path: + self.path[dist.path] = dist + self.name.setdefault(dist.key, []).append(dist) + + +class DistributionPath(object): + """ + Represents a set of distributions installed on a path (typically sys.path). + """ + def __init__(self, path=None, include_egg=False): + """ + Create an instance from a path, optionally including legacy (distutils/ + setuptools/distribute) distributions. + :param path: The path to use, as a list of directories. If not specified, + sys.path is used. + :param include_egg: If True, this instance will look for and return legacy + distributions as well as those based on PEP 376. + """ + if path is None: + path = sys.path + self.path = path + self._include_dist = True + self._include_egg = include_egg + + self._cache = _Cache() + self._cache_egg = _Cache() + self._cache_enabled = True + self._scheme = get_scheme('default') + + def _get_cache_enabled(self): + return self._cache_enabled + + def _set_cache_enabled(self, value): + self._cache_enabled = value + + cache_enabled = property(_get_cache_enabled, _set_cache_enabled) + + def clear_cache(self): + """ + Clears the internal cache. + """ + self._cache.clear() + self._cache_egg.clear() + + + def _yield_distributions(self): + """ + Yield .dist-info and/or .egg(-info) distributions. + """ + # We need to check if we've seen some resources already, because on + # some Linux systems (e.g. some Debian/Ubuntu variants) there are + # symlinks which alias other files in the environment. + seen = set() + for path in self.path: + finder = resources.finder_for_path(path) + if finder is None: + continue + r = finder.find('') + if not r or not r.is_container: + continue + rset = sorted(r.resources) + for entry in rset: + r = finder.find(entry) + if not r or r.path in seen: + continue + if self._include_dist and entry.endswith(DISTINFO_EXT): + possible_filenames = [METADATA_FILENAME, WHEEL_METADATA_FILENAME] + for metadata_filename in possible_filenames: + metadata_path = posixpath.join(entry, metadata_filename) + pydist = finder.find(metadata_path) + if pydist: + break + else: + continue + + with contextlib.closing(pydist.as_stream()) as stream: + metadata = Metadata(fileobj=stream, scheme='legacy') + logger.debug('Found %s', r.path) + seen.add(r.path) + yield new_dist_class(r.path, metadata=metadata, + env=self) + elif self._include_egg and entry.endswith(('.egg-info', + '.egg')): + logger.debug('Found %s', r.path) + seen.add(r.path) + yield old_dist_class(r.path, self) + + def _generate_cache(self): + """ + Scan the path for distributions and populate the cache with + those that are found. + """ + gen_dist = not self._cache.generated + gen_egg = self._include_egg and not self._cache_egg.generated + if gen_dist or gen_egg: + for dist in self._yield_distributions(): + if isinstance(dist, InstalledDistribution): + self._cache.add(dist) + else: + self._cache_egg.add(dist) + + if gen_dist: + self._cache.generated = True + if gen_egg: + self._cache_egg.generated = True + + @classmethod + def distinfo_dirname(cls, name, version): + """ + The *name* and *version* parameters are converted into their + filename-escaped form, i.e. any ``'-'`` characters are replaced + with ``'_'`` other than the one in ``'dist-info'`` and the one + separating the name from the version number. + + :parameter name: is converted to a standard distribution name by replacing + any runs of non- alphanumeric characters with a single + ``'-'``. + :type name: string + :parameter version: is converted to a standard version string. Spaces + become dots, and all other non-alphanumeric characters + (except dots) become dashes, with runs of multiple + dashes condensed to a single dash. + :type version: string + :returns: directory name + :rtype: string""" + name = name.replace('-', '_') + return '-'.join([name, version]) + DISTINFO_EXT + + def get_distributions(self): + """ + Provides an iterator that looks for distributions and returns + :class:`InstalledDistribution` or + :class:`EggInfoDistribution` instances for each one of them. + + :rtype: iterator of :class:`InstalledDistribution` and + :class:`EggInfoDistribution` instances + """ + if not self._cache_enabled: + for dist in self._yield_distributions(): + yield dist + else: + self._generate_cache() + + for dist in self._cache.path.values(): + yield dist + + if self._include_egg: + for dist in self._cache_egg.path.values(): + yield dist + + def get_distribution(self, name): + """ + Looks for a named distribution on the path. + + This function only returns the first result found, as no more than one + value is expected. If nothing is found, ``None`` is returned. + + :rtype: :class:`InstalledDistribution`, :class:`EggInfoDistribution` + or ``None`` + """ + result = None + name = name.lower() + if not self._cache_enabled: + for dist in self._yield_distributions(): + if dist.key == name: + result = dist + break + else: + self._generate_cache() + + if name in self._cache.name: + result = self._cache.name[name][0] + elif self._include_egg and name in self._cache_egg.name: + result = self._cache_egg.name[name][0] + return result + + def provides_distribution(self, name, version=None): + """ + Iterates over all distributions to find which distributions provide *name*. + If a *version* is provided, it will be used to filter the results. + + This function only returns the first result found, since no more than + one values are expected. If the directory is not found, returns ``None``. + + :parameter version: a version specifier that indicates the version + required, conforming to the format in ``PEP-345`` + + :type name: string + :type version: string + """ + matcher = None + if not version is None: + try: + matcher = self._scheme.matcher('%s (%s)' % (name, version)) + except ValueError: + raise DistlibException('invalid name or version: %r, %r' % + (name, version)) + + for dist in self.get_distributions(): + provided = dist.provides + + for p in provided: + p_name, p_ver = parse_name_and_version(p) + if matcher is None: + if p_name == name: + yield dist + break + else: + if p_name == name and matcher.match(p_ver): + yield dist + break + + def get_file_path(self, name, relative_path): + """ + Return the path to a resource file. + """ + dist = self.get_distribution(name) + if dist is None: + raise LookupError('no distribution named %r found' % name) + return dist.get_resource_path(relative_path) + + def get_exported_entries(self, category, name=None): + """ + Return all of the exported entries in a particular category. + + :param category: The category to search for entries. + :param name: If specified, only entries with that name are returned. + """ + for dist in self.get_distributions(): + r = dist.exports + if category in r: + d = r[category] + if name is not None: + if name in d: + yield d[name] + else: + for v in d.values(): + yield v + + +class Distribution(object): + """ + A base class for distributions, whether installed or from indexes. + Either way, it must have some metadata, so that's all that's needed + for construction. + """ + + build_time_dependency = False + """ + Set to True if it's known to be only a build-time dependency (i.e. + not needed after installation). + """ + + requested = False + """A boolean that indicates whether the ``REQUESTED`` metadata file is + present (in other words, whether the package was installed by user + request or it was installed as a dependency).""" + + def __init__(self, metadata): + """ + Initialise an instance. + :param metadata: The instance of :class:`Metadata` describing this + distribution. + """ + self.metadata = metadata + self.name = metadata.name + self.key = self.name.lower() # for case-insensitive comparisons + self.version = metadata.version + self.locator = None + self.digest = None + self.extras = None # additional features requested + self.context = None # environment marker overrides + self.download_urls = set() + self.digests = {} + + @property + def source_url(self): + """ + The source archive download URL for this distribution. + """ + return self.metadata.source_url + + download_url = source_url # Backward compatibility + + @property + def name_and_version(self): + """ + A utility property which displays the name and version in parentheses. + """ + return '%s (%s)' % (self.name, self.version) + + @property + def provides(self): + """ + A set of distribution names and versions provided by this distribution. + :return: A set of "name (version)" strings. + """ + plist = self.metadata.provides + s = '%s (%s)' % (self.name, self.version) + if s not in plist: + plist.append(s) + return plist + + def _get_requirements(self, req_attr): + md = self.metadata + logger.debug('Getting requirements from metadata %r', md.todict()) + reqts = getattr(md, req_attr) + return set(md.get_requirements(reqts, extras=self.extras, + env=self.context)) + + @property + def run_requires(self): + return self._get_requirements('run_requires') + + @property + def meta_requires(self): + return self._get_requirements('meta_requires') + + @property + def build_requires(self): + return self._get_requirements('build_requires') + + @property + def test_requires(self): + return self._get_requirements('test_requires') + + @property + def dev_requires(self): + return self._get_requirements('dev_requires') + + def matches_requirement(self, req): + """ + Say if this instance matches (fulfills) a requirement. + :param req: The requirement to match. + :rtype req: str + :return: True if it matches, else False. + """ + # Requirement may contain extras - parse to lose those + # from what's passed to the matcher + r = parse_requirement(req) + scheme = get_scheme(self.metadata.scheme) + try: + matcher = scheme.matcher(r.requirement) + except UnsupportedVersionError: + # XXX compat-mode if cannot read the version + logger.warning('could not read version %r - using name only', + req) + name = req.split()[0] + matcher = scheme.matcher(name) + + name = matcher.key # case-insensitive + + result = False + for p in self.provides: + p_name, p_ver = parse_name_and_version(p) + if p_name != name: + continue + try: + result = matcher.match(p_ver) + break + except UnsupportedVersionError: + pass + return result + + def __repr__(self): + """ + Return a textual representation of this instance, + """ + if self.source_url: + suffix = ' [%s]' % self.source_url + else: + suffix = '' + return '' % (self.name, self.version, suffix) + + def __eq__(self, other): + """ + See if this distribution is the same as another. + :param other: The distribution to compare with. To be equal to one + another. distributions must have the same type, name, + version and source_url. + :return: True if it is the same, else False. + """ + if type(other) is not type(self): + result = False + else: + result = (self.name == other.name and + self.version == other.version and + self.source_url == other.source_url) + return result + + def __hash__(self): + """ + Compute hash in a way which matches the equality test. + """ + return hash(self.name) + hash(self.version) + hash(self.source_url) + + +class BaseInstalledDistribution(Distribution): + """ + This is the base class for installed distributions (whether PEP 376 or + legacy). + """ + + hasher = None + + def __init__(self, metadata, path, env=None): + """ + Initialise an instance. + :param metadata: An instance of :class:`Metadata` which describes the + distribution. This will normally have been initialised + from a metadata file in the ``path``. + :param path: The path of the ``.dist-info`` or ``.egg-info`` + directory for the distribution. + :param env: This is normally the :class:`DistributionPath` + instance where this distribution was found. + """ + super(BaseInstalledDistribution, self).__init__(metadata) + self.path = path + self.dist_path = env + + def get_hash(self, data, hasher=None): + """ + Get the hash of some data, using a particular hash algorithm, if + specified. + + :param data: The data to be hashed. + :type data: bytes + :param hasher: The name of a hash implementation, supported by hashlib, + or ``None``. Examples of valid values are ``'sha1'``, + ``'sha224'``, ``'sha384'``, '``sha256'``, ``'md5'`` and + ``'sha512'``. If no hasher is specified, the ``hasher`` + attribute of the :class:`InstalledDistribution` instance + is used. If the hasher is determined to be ``None``, MD5 + is used as the hashing algorithm. + :returns: The hash of the data. If a hasher was explicitly specified, + the returned hash will be prefixed with the specified hasher + followed by '='. + :rtype: str + """ + if hasher is None: + hasher = self.hasher + if hasher is None: + hasher = hashlib.md5 + prefix = '' + else: + hasher = getattr(hashlib, hasher) + prefix = '%s=' % self.hasher + digest = hasher(data).digest() + digest = base64.urlsafe_b64encode(digest).rstrip(b'=').decode('ascii') + return '%s%s' % (prefix, digest) + + +class InstalledDistribution(BaseInstalledDistribution): + """ + Created with the *path* of the ``.dist-info`` directory provided to the + constructor. It reads the metadata contained in ``pydist.json`` when it is + instantiated., or uses a passed in Metadata instance (useful for when + dry-run mode is being used). + """ + + hasher = 'sha256' + + def __init__(self, path, metadata=None, env=None): + self.finder = finder = resources.finder_for_path(path) + if finder is None: + import pdb; pdb.set_trace () + if env and env._cache_enabled and path in env._cache.path: + metadata = env._cache.path[path].metadata + elif metadata is None: + r = finder.find(METADATA_FILENAME) + # Temporary - for Wheel 0.23 support + if r is None: + r = finder.find(WHEEL_METADATA_FILENAME) + # Temporary - for legacy support + if r is None: + r = finder.find('METADATA') + if r is None: + raise ValueError('no %s found in %s' % (METADATA_FILENAME, + path)) + with contextlib.closing(r.as_stream()) as stream: + metadata = Metadata(fileobj=stream, scheme='legacy') + + super(InstalledDistribution, self).__init__(metadata, path, env) + + if env and env._cache_enabled: + env._cache.add(self) + + try: + r = finder.find('REQUESTED') + except AttributeError: + import pdb; pdb.set_trace () + self.requested = r is not None + + def __repr__(self): + return '' % ( + self.name, self.version, self.path) + + def __str__(self): + return "%s %s" % (self.name, self.version) + + def _get_records(self): + """ + Get the list of installed files for the distribution + :return: A list of tuples of path, hash and size. Note that hash and + size might be ``None`` for some entries. The path is exactly + as stored in the file (which is as in PEP 376). + """ + results = [] + r = self.get_distinfo_resource('RECORD') + with contextlib.closing(r.as_stream()) as stream: + with CSVReader(stream=stream) as record_reader: + # Base location is parent dir of .dist-info dir + #base_location = os.path.dirname(self.path) + #base_location = os.path.abspath(base_location) + for row in record_reader: + missing = [None for i in range(len(row), 3)] + path, checksum, size = row + missing + #if not os.path.isabs(path): + # path = path.replace('/', os.sep) + # path = os.path.join(base_location, path) + results.append((path, checksum, size)) + return results + + @cached_property + def exports(self): + """ + Return the information exported by this distribution. + :return: A dictionary of exports, mapping an export category to a dict + of :class:`ExportEntry` instances describing the individual + export entries, and keyed by name. + """ + result = {} + r = self.get_distinfo_resource(EXPORTS_FILENAME) + if r: + result = self.read_exports() + return result + + def read_exports(self): + """ + Read exports data from a file in .ini format. + + :return: A dictionary of exports, mapping an export category to a list + of :class:`ExportEntry` instances describing the individual + export entries. + """ + result = {} + r = self.get_distinfo_resource(EXPORTS_FILENAME) + if r: + with contextlib.closing(r.as_stream()) as stream: + result = read_exports(stream) + return result + + def write_exports(self, exports): + """ + Write a dictionary of exports to a file in .ini format. + :param exports: A dictionary of exports, mapping an export category to + a list of :class:`ExportEntry` instances describing the + individual export entries. + """ + rf = self.get_distinfo_file(EXPORTS_FILENAME) + with open(rf, 'w') as f: + write_exports(exports, f) + + def get_resource_path(self, relative_path): + """ + NOTE: This API may change in the future. + + Return the absolute path to a resource file with the given relative + path. + + :param relative_path: The path, relative to .dist-info, of the resource + of interest. + :return: The absolute path where the resource is to be found. + """ + r = self.get_distinfo_resource('RESOURCES') + with contextlib.closing(r.as_stream()) as stream: + with CSVReader(stream=stream) as resources_reader: + for relative, destination in resources_reader: + if relative == relative_path: + return destination + raise KeyError('no resource file with relative path %r ' + 'is installed' % relative_path) + + def list_installed_files(self): + """ + Iterates over the ``RECORD`` entries and returns a tuple + ``(path, hash, size)`` for each line. + + :returns: iterator of (path, hash, size) + """ + for result in self._get_records(): + yield result + + def write_installed_files(self, paths, prefix, dry_run=False): + """ + Writes the ``RECORD`` file, using the ``paths`` iterable passed in. Any + existing ``RECORD`` file is silently overwritten. + + prefix is used to determine when to write absolute paths. + """ + prefix = os.path.join(prefix, '') + base = os.path.dirname(self.path) + base_under_prefix = base.startswith(prefix) + base = os.path.join(base, '') + record_path = self.get_distinfo_file('RECORD') + logger.info('creating %s', record_path) + if dry_run: + return None + with CSVWriter(record_path) as writer: + for path in paths: + if os.path.isdir(path) or path.endswith(('.pyc', '.pyo')): + # do not put size and hash, as in PEP-376 + hash_value = size = '' + else: + size = '%d' % os.path.getsize(path) + with open(path, 'rb') as fp: + hash_value = self.get_hash(fp.read()) + if path.startswith(base) or (base_under_prefix and + path.startswith(prefix)): + path = os.path.relpath(path, base) + writer.writerow((path, hash_value, size)) + + # add the RECORD file itself + if record_path.startswith(base): + record_path = os.path.relpath(record_path, base) + writer.writerow((record_path, '', '')) + return record_path + + def check_installed_files(self): + """ + Checks that the hashes and sizes of the files in ``RECORD`` are + matched by the files themselves. Returns a (possibly empty) list of + mismatches. Each entry in the mismatch list will be a tuple consisting + of the path, 'exists', 'size' or 'hash' according to what didn't match + (existence is checked first, then size, then hash), the expected + value and the actual value. + """ + mismatches = [] + base = os.path.dirname(self.path) + record_path = self.get_distinfo_file('RECORD') + for path, hash_value, size in self.list_installed_files(): + if not os.path.isabs(path): + path = os.path.join(base, path) + if path == record_path: + continue + if not os.path.exists(path): + mismatches.append((path, 'exists', True, False)) + elif os.path.isfile(path): + actual_size = str(os.path.getsize(path)) + if size and actual_size != size: + mismatches.append((path, 'size', size, actual_size)) + elif hash_value: + if '=' in hash_value: + hasher = hash_value.split('=', 1)[0] + else: + hasher = None + + with open(path, 'rb') as f: + actual_hash = self.get_hash(f.read(), hasher) + if actual_hash != hash_value: + mismatches.append((path, 'hash', hash_value, actual_hash)) + return mismatches + + @cached_property + def shared_locations(self): + """ + A dictionary of shared locations whose keys are in the set 'prefix', + 'purelib', 'platlib', 'scripts', 'headers', 'data' and 'namespace'. + The corresponding value is the absolute path of that category for + this distribution, and takes into account any paths selected by the + user at installation time (e.g. via command-line arguments). In the + case of the 'namespace' key, this would be a list of absolute paths + for the roots of namespace packages in this distribution. + + The first time this property is accessed, the relevant information is + read from the SHARED file in the .dist-info directory. + """ + result = {} + shared_path = os.path.join(self.path, 'SHARED') + if os.path.isfile(shared_path): + with codecs.open(shared_path, 'r', encoding='utf-8') as f: + lines = f.read().splitlines() + for line in lines: + key, value = line.split('=', 1) + if key == 'namespace': + result.setdefault(key, []).append(value) + else: + result[key] = value + return result + + def write_shared_locations(self, paths, dry_run=False): + """ + Write shared location information to the SHARED file in .dist-info. + :param paths: A dictionary as described in the documentation for + :meth:`shared_locations`. + :param dry_run: If True, the action is logged but no file is actually + written. + :return: The path of the file written to. + """ + shared_path = os.path.join(self.path, 'SHARED') + logger.info('creating %s', shared_path) + if dry_run: + return None + lines = [] + for key in ('prefix', 'lib', 'headers', 'scripts', 'data'): + path = paths[key] + if os.path.isdir(paths[key]): + lines.append('%s=%s' % (key, path)) + for ns in paths.get('namespace', ()): + lines.append('namespace=%s' % ns) + + with codecs.open(shared_path, 'w', encoding='utf-8') as f: + f.write('\n'.join(lines)) + return shared_path + + def get_distinfo_resource(self, path): + if path not in DIST_FILES: + raise DistlibException('invalid path for a dist-info file: ' + '%r at %r' % (path, self.path)) + finder = resources.finder_for_path(self.path) + if finder is None: + raise DistlibException('Unable to get a finder for %s' % self.path) + return finder.find(path) + + def get_distinfo_file(self, path): + """ + Returns a path located under the ``.dist-info`` directory. Returns a + string representing the path. + + :parameter path: a ``'/'``-separated path relative to the + ``.dist-info`` directory or an absolute path; + If *path* is an absolute path and doesn't start + with the ``.dist-info`` directory path, + a :class:`DistlibException` is raised + :type path: str + :rtype: str + """ + # Check if it is an absolute path # XXX use relpath, add tests + if path.find(os.sep) >= 0: + # it's an absolute path? + distinfo_dirname, path = path.split(os.sep)[-2:] + if distinfo_dirname != self.path.split(os.sep)[-1]: + raise DistlibException( + 'dist-info file %r does not belong to the %r %s ' + 'distribution' % (path, self.name, self.version)) + + # The file must be relative + if path not in DIST_FILES: + raise DistlibException('invalid path for a dist-info file: ' + '%r at %r' % (path, self.path)) + + return os.path.join(self.path, path) + + def list_distinfo_files(self): + """ + Iterates over the ``RECORD`` entries and returns paths for each line if + the path is pointing to a file located in the ``.dist-info`` directory + or one of its subdirectories. + + :returns: iterator of paths + """ + base = os.path.dirname(self.path) + for path, checksum, size in self._get_records(): + # XXX add separator or use real relpath algo + if not os.path.isabs(path): + path = os.path.join(base, path) + if path.startswith(self.path): + yield path + + def __eq__(self, other): + return (isinstance(other, InstalledDistribution) and + self.path == other.path) + + # See http://docs.python.org/reference/datamodel#object.__hash__ + __hash__ = object.__hash__ + + +class EggInfoDistribution(BaseInstalledDistribution): + """Created with the *path* of the ``.egg-info`` directory or file provided + to the constructor. It reads the metadata contained in the file itself, or + if the given path happens to be a directory, the metadata is read from the + file ``PKG-INFO`` under that directory.""" + + requested = True # as we have no way of knowing, assume it was + shared_locations = {} + + def __init__(self, path, env=None): + def set_name_and_version(s, n, v): + s.name = n + s.key = n.lower() # for case-insensitive comparisons + s.version = v + + self.path = path + self.dist_path = env + if env and env._cache_enabled and path in env._cache_egg.path: + metadata = env._cache_egg.path[path].metadata + set_name_and_version(self, metadata.name, metadata.version) + else: + metadata = self._get_metadata(path) + + # Need to be set before caching + set_name_and_version(self, metadata.name, metadata.version) + + if env and env._cache_enabled: + env._cache_egg.add(self) + super(EggInfoDistribution, self).__init__(metadata, path, env) + + def _get_metadata(self, path): + requires = None + + def parse_requires_data(data): + """Create a list of dependencies from a requires.txt file. + + *data*: the contents of a setuptools-produced requires.txt file. + """ + reqs = [] + lines = data.splitlines() + for line in lines: + line = line.strip() + if line.startswith('['): + logger.warning('Unexpected line: quitting requirement scan: %r', + line) + break + r = parse_requirement(line) + if not r: + logger.warning('Not recognised as a requirement: %r', line) + continue + if r.extras: + logger.warning('extra requirements in requires.txt are ' + 'not supported') + if not r.constraints: + reqs.append(r.name) + else: + cons = ', '.join('%s%s' % c for c in r.constraints) + reqs.append('%s (%s)' % (r.name, cons)) + return reqs + + def parse_requires_path(req_path): + """Create a list of dependencies from a requires.txt file. + + *req_path*: the path to a setuptools-produced requires.txt file. + """ + + reqs = [] + try: + with codecs.open(req_path, 'r', 'utf-8') as fp: + reqs = parse_requires_data(fp.read()) + except IOError: + pass + return reqs + + if path.endswith('.egg'): + if os.path.isdir(path): + meta_path = os.path.join(path, 'EGG-INFO', 'PKG-INFO') + metadata = Metadata(path=meta_path, scheme='legacy') + req_path = os.path.join(path, 'EGG-INFO', 'requires.txt') + requires = parse_requires_path(req_path) + else: + # FIXME handle the case where zipfile is not available + zipf = zipimport.zipimporter(path) + fileobj = StringIO( + zipf.get_data('EGG-INFO/PKG-INFO').decode('utf8')) + metadata = Metadata(fileobj=fileobj, scheme='legacy') + try: + data = zipf.get_data('EGG-INFO/requires.txt') + requires = parse_requires_data(data.decode('utf-8')) + except IOError: + requires = None + elif path.endswith('.egg-info'): + if os.path.isdir(path): + req_path = os.path.join(path, 'requires.txt') + requires = parse_requires_path(req_path) + path = os.path.join(path, 'PKG-INFO') + metadata = Metadata(path=path, scheme='legacy') + else: + raise DistlibException('path must end with .egg-info or .egg, ' + 'got %r' % path) + + if requires: + metadata.add_requirements(requires) + return metadata + + def __repr__(self): + return '' % ( + self.name, self.version, self.path) + + def __str__(self): + return "%s %s" % (self.name, self.version) + + def check_installed_files(self): + """ + Checks that the hashes and sizes of the files in ``RECORD`` are + matched by the files themselves. Returns a (possibly empty) list of + mismatches. Each entry in the mismatch list will be a tuple consisting + of the path, 'exists', 'size' or 'hash' according to what didn't match + (existence is checked first, then size, then hash), the expected + value and the actual value. + """ + mismatches = [] + record_path = os.path.join(self.path, 'installed-files.txt') + if os.path.exists(record_path): + for path, _, _ in self.list_installed_files(): + if path == record_path: + continue + if not os.path.exists(path): + mismatches.append((path, 'exists', True, False)) + return mismatches + + def list_installed_files(self): + """ + Iterates over the ``installed-files.txt`` entries and returns a tuple + ``(path, hash, size)`` for each line. + + :returns: a list of (path, hash, size) + """ + + def _md5(path): + f = open(path, 'rb') + try: + content = f.read() + finally: + f.close() + return hashlib.md5(content).hexdigest() + + def _size(path): + return os.stat(path).st_size + + record_path = os.path.join(self.path, 'installed-files.txt') + result = [] + if os.path.exists(record_path): + with codecs.open(record_path, 'r', encoding='utf-8') as f: + for line in f: + line = line.strip() + p = os.path.normpath(os.path.join(self.path, line)) + # "./" is present as a marker between installed files + # and installation metadata files + if not os.path.exists(p): + logger.warning('Non-existent file: %s', p) + if p.endswith(('.pyc', '.pyo')): + continue + #otherwise fall through and fail + if not os.path.isdir(p): + result.append((p, _md5(p), _size(p))) + result.append((record_path, None, None)) + return result + + def list_distinfo_files(self, absolute=False): + """ + Iterates over the ``installed-files.txt`` entries and returns paths for + each line if the path is pointing to a file located in the + ``.egg-info`` directory or one of its subdirectories. + + :parameter absolute: If *absolute* is ``True``, each returned path is + transformed into a local absolute path. Otherwise the + raw value from ``installed-files.txt`` is returned. + :type absolute: boolean + :returns: iterator of paths + """ + record_path = os.path.join(self.path, 'installed-files.txt') + skip = True + with codecs.open(record_path, 'r', encoding='utf-8') as f: + for line in f: + line = line.strip() + if line == './': + skip = False + continue + if not skip: + p = os.path.normpath(os.path.join(self.path, line)) + if p.startswith(self.path): + if absolute: + yield p + else: + yield line + + def __eq__(self, other): + return (isinstance(other, EggInfoDistribution) and + self.path == other.path) + + # See http://docs.python.org/reference/datamodel#object.__hash__ + __hash__ = object.__hash__ + +new_dist_class = InstalledDistribution +old_dist_class = EggInfoDistribution + + +class DependencyGraph(object): + """ + Represents a dependency graph between distributions. + + The dependency relationships are stored in an ``adjacency_list`` that maps + distributions to a list of ``(other, label)`` tuples where ``other`` + is a distribution and the edge is labeled with ``label`` (i.e. the version + specifier, if such was provided). Also, for more efficient traversal, for + every distribution ``x``, a list of predecessors is kept in + ``reverse_list[x]``. An edge from distribution ``a`` to + distribution ``b`` means that ``a`` depends on ``b``. If any missing + dependencies are found, they are stored in ``missing``, which is a + dictionary that maps distributions to a list of requirements that were not + provided by any other distributions. + """ + + def __init__(self): + self.adjacency_list = {} + self.reverse_list = {} + self.missing = {} + + def add_distribution(self, distribution): + """Add the *distribution* to the graph. + + :type distribution: :class:`distutils2.database.InstalledDistribution` + or :class:`distutils2.database.EggInfoDistribution` + """ + self.adjacency_list[distribution] = [] + self.reverse_list[distribution] = [] + #self.missing[distribution] = [] + + def add_edge(self, x, y, label=None): + """Add an edge from distribution *x* to distribution *y* with the given + *label*. + + :type x: :class:`distutils2.database.InstalledDistribution` or + :class:`distutils2.database.EggInfoDistribution` + :type y: :class:`distutils2.database.InstalledDistribution` or + :class:`distutils2.database.EggInfoDistribution` + :type label: ``str`` or ``None`` + """ + self.adjacency_list[x].append((y, label)) + # multiple edges are allowed, so be careful + if x not in self.reverse_list[y]: + self.reverse_list[y].append(x) + + def add_missing(self, distribution, requirement): + """ + Add a missing *requirement* for the given *distribution*. + + :type distribution: :class:`distutils2.database.InstalledDistribution` + or :class:`distutils2.database.EggInfoDistribution` + :type requirement: ``str`` + """ + logger.debug('%s missing %r', distribution, requirement) + self.missing.setdefault(distribution, []).append(requirement) + + def _repr_dist(self, dist): + return '%s %s' % (dist.name, dist.version) + + def repr_node(self, dist, level=1): + """Prints only a subgraph""" + output = [self._repr_dist(dist)] + for other, label in self.adjacency_list[dist]: + dist = self._repr_dist(other) + if label is not None: + dist = '%s [%s]' % (dist, label) + output.append(' ' * level + str(dist)) + suboutput = self.repr_node(other, level + 1) + subs = suboutput.split('\n') + output.extend(subs[1:]) + return '\n'.join(output) + + def to_dot(self, f, skip_disconnected=True): + """Writes a DOT output for the graph to the provided file *f*. + + If *skip_disconnected* is set to ``True``, then all distributions + that are not dependent on any other distribution are skipped. + + :type f: has to support ``file``-like operations + :type skip_disconnected: ``bool`` + """ + disconnected = [] + + f.write("digraph dependencies {\n") + for dist, adjs in self.adjacency_list.items(): + if len(adjs) == 0 and not skip_disconnected: + disconnected.append(dist) + for other, label in adjs: + if not label is None: + f.write('"%s" -> "%s" [label="%s"]\n' % + (dist.name, other.name, label)) + else: + f.write('"%s" -> "%s"\n' % (dist.name, other.name)) + if not skip_disconnected and len(disconnected) > 0: + f.write('subgraph disconnected {\n') + f.write('label = "Disconnected"\n') + f.write('bgcolor = red\n') + + for dist in disconnected: + f.write('"%s"' % dist.name) + f.write('\n') + f.write('}\n') + f.write('}\n') + + def topological_sort(self): + """ + Perform a topological sort of the graph. + :return: A tuple, the first element of which is a topologically sorted + list of distributions, and the second element of which is a + list of distributions that cannot be sorted because they have + circular dependencies and so form a cycle. + """ + result = [] + # Make a shallow copy of the adjacency list + alist = {} + for k, v in self.adjacency_list.items(): + alist[k] = v[:] + while True: + # See what we can remove in this run + to_remove = [] + for k, v in list(alist.items())[:]: + if not v: + to_remove.append(k) + del alist[k] + if not to_remove: + # What's left in alist (if anything) is a cycle. + break + # Remove from the adjacency list of others + for k, v in alist.items(): + alist[k] = [(d, r) for d, r in v if d not in to_remove] + logger.debug('Moving to result: %s', + ['%s (%s)' % (d.name, d.version) for d in to_remove]) + result.extend(to_remove) + return result, list(alist.keys()) + + def __repr__(self): + """Representation of the graph""" + output = [] + for dist, adjs in self.adjacency_list.items(): + output.append(self.repr_node(dist)) + return '\n'.join(output) + + +def make_graph(dists, scheme='default'): + """Makes a dependency graph from the given distributions. + + :parameter dists: a list of distributions + :type dists: list of :class:`distutils2.database.InstalledDistribution` and + :class:`distutils2.database.EggInfoDistribution` instances + :rtype: a :class:`DependencyGraph` instance + """ + scheme = get_scheme(scheme) + graph = DependencyGraph() + provided = {} # maps names to lists of (version, dist) tuples + + # first, build the graph and find out what's provided + for dist in dists: + graph.add_distribution(dist) + + for p in dist.provides: + name, version = parse_name_and_version(p) + logger.debug('Add to provided: %s, %s, %s', name, version, dist) + provided.setdefault(name, []).append((version, dist)) + + # now make the edges + for dist in dists: + requires = (dist.run_requires | dist.meta_requires | + dist.build_requires | dist.dev_requires) + for req in requires: + try: + matcher = scheme.matcher(req) + except UnsupportedVersionError: + # XXX compat-mode if cannot read the version + logger.warning('could not read version %r - using name only', + req) + name = req.split()[0] + matcher = scheme.matcher(name) + + name = matcher.key # case-insensitive + + matched = False + if name in provided: + for version, provider in provided[name]: + try: + match = matcher.match(version) + except UnsupportedVersionError: + match = False + + if match: + graph.add_edge(dist, provider, req) + matched = True + break + if not matched: + graph.add_missing(dist, req) + return graph + + +def get_dependent_dists(dists, dist): + """Recursively generate a list of distributions from *dists* that are + dependent on *dist*. + + :param dists: a list of distributions + :param dist: a distribution, member of *dists* for which we are interested + """ + if dist not in dists: + raise DistlibException('given distribution %r is not a member ' + 'of the list' % dist.name) + graph = make_graph(dists) + + dep = [dist] # dependent distributions + todo = graph.reverse_list[dist] # list of nodes we should inspect + + while todo: + d = todo.pop() + dep.append(d) + for succ in graph.reverse_list[d]: + if succ not in dep: + todo.append(succ) + + dep.pop(0) # remove dist from dep, was there to prevent infinite loops + return dep + + +def get_required_dists(dists, dist): + """Recursively generate a list of distributions from *dists* that are + required by *dist*. + + :param dists: a list of distributions + :param dist: a distribution, member of *dists* for which we are interested + """ + if dist not in dists: + raise DistlibException('given distribution %r is not a member ' + 'of the list' % dist.name) + graph = make_graph(dists) + + req = [] # required distributions + todo = graph.adjacency_list[dist] # list of nodes we should inspect + + while todo: + d = todo.pop()[0] + req.append(d) + for pred in graph.adjacency_list[d]: + if pred not in req: + todo.append(pred) + + return req + + +def make_dist(name, version, **kwargs): + """ + A convenience method for making a dist given just a name and version. + """ + summary = kwargs.pop('summary', 'Placeholder for summary') + md = Metadata(**kwargs) + md.name = name + md.version = version + md.summary = summary or 'Plaeholder for summary' + return Distribution(md) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/database.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c00c7b2140e0b747d48c23757d4a6e8809df57be GIT binary patch literal 48796 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 DUr>p8 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.py new file mode 100644 index 0000000..73037c9 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.py @@ -0,0 +1,513 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2013 Vinay Sajip. +# Licensed to the Python Software Foundation under a contributor agreement. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +import hashlib +import logging +import os +import shutil +import subprocess +import tempfile +try: + from threading import Thread +except ImportError: + from dummy_threading import Thread + +from . import DistlibException +from .compat import (HTTPBasicAuthHandler, Request, HTTPPasswordMgr, + urlparse, build_opener, string_types) +from .util import cached_property, zip_dir, ServerProxy + +logger = logging.getLogger(__name__) + +DEFAULT_INDEX = 'https://pypi.python.org/pypi' +DEFAULT_REALM = 'pypi' + +class PackageIndex(object): + """ + This class represents a package index compatible with PyPI, the Python + Package Index. + """ + + boundary = b'----------ThIs_Is_tHe_distlib_index_bouNdaRY_$' + + def __init__(self, url=None): + """ + Initialise an instance. + + :param url: The URL of the index. If not specified, the URL for PyPI is + used. + """ + self.url = url or DEFAULT_INDEX + self.read_configuration() + scheme, netloc, path, params, query, frag = urlparse(self.url) + if params or query or frag or scheme not in ('http', 'https'): + raise DistlibException('invalid repository: %s' % self.url) + self.password_handler = None + self.ssl_verifier = None + self.gpg = None + self.gpg_home = None + self.rpc_proxy = None + with open(os.devnull, 'w') as sink: + for s in ('gpg2', 'gpg'): + try: + rc = subprocess.check_call([s, '--version'], stdout=sink, + stderr=sink) + if rc == 0: + self.gpg = s + break + except OSError: + pass + + def _get_pypirc_command(self): + """ + Get the distutils command for interacting with PyPI configurations. + :return: the command. + """ + from distutils.core import Distribution + from distutils.config import PyPIRCCommand + d = Distribution() + return PyPIRCCommand(d) + + def read_configuration(self): + """ + Read the PyPI access configuration as supported by distutils, getting + PyPI to do the acutal work. This populates ``username``, ``password``, + ``realm`` and ``url`` attributes from the configuration. + """ + # get distutils to do the work + c = self._get_pypirc_command() + c.repository = self.url + cfg = c._read_pypirc() + self.username = cfg.get('username') + self.password = cfg.get('password') + self.realm = cfg.get('realm', 'pypi') + self.url = cfg.get('repository', self.url) + + def save_configuration(self): + """ + Save the PyPI access configuration. You must have set ``username`` and + ``password`` attributes before calling this method. + + Again, distutils is used to do the actual work. + """ + self.check_credentials() + # get distutils to do the work + c = self._get_pypirc_command() + c._store_pypirc(self.username, self.password) + + def check_credentials(self): + """ + Check that ``username`` and ``password`` have been set, and raise an + exception if not. + """ + if self.username is None or self.password is None: + raise DistlibException('username and password must be set') + pm = HTTPPasswordMgr() + _, netloc, _, _, _, _ = urlparse(self.url) + pm.add_password(self.realm, netloc, self.username, self.password) + self.password_handler = HTTPBasicAuthHandler(pm) + + def register(self, metadata): + """ + Register a distribution on PyPI, using the provided metadata. + + :param metadata: A :class:`Metadata` instance defining at least a name + and version number for the distribution to be + registered. + :return: The HTTP response received from PyPI upon submission of the + request. + """ + self.check_credentials() + metadata.validate() + d = metadata.todict() + d[':action'] = 'verify' + request = self.encode_request(d.items(), []) + response = self.send_request(request) + d[':action'] = 'submit' + request = self.encode_request(d.items(), []) + return self.send_request(request) + + def _reader(self, name, stream, outbuf): + """ + Thread runner for reading lines of from a subprocess into a buffer. + + :param name: The logical name of the stream (used for logging only). + :param stream: The stream to read from. This will typically a pipe + connected to the output stream of a subprocess. + :param outbuf: The list to append the read lines to. + """ + while True: + s = stream.readline() + if not s: + break + s = s.decode('utf-8').rstrip() + outbuf.append(s) + logger.debug('%s: %s' % (name, s)) + stream.close() + + def get_sign_command(self, filename, signer, sign_password, + keystore=None): + """ + Return a suitable command for signing a file. + + :param filename: The pathname to the file to be signed. + :param signer: The identifier of the signer of the file. + :param sign_password: The passphrase for the signer's + private key used for signing. + :param keystore: The path to a directory which contains the keys + used in verification. If not specified, the + instance's ``gpg_home`` attribute is used instead. + :return: The signing command as a list suitable to be + passed to :class:`subprocess.Popen`. + """ + cmd = [self.gpg, '--status-fd', '2', '--no-tty'] + if keystore is None: + keystore = self.gpg_home + if keystore: + cmd.extend(['--homedir', keystore]) + if sign_password is not None: + cmd.extend(['--batch', '--passphrase-fd', '0']) + td = tempfile.mkdtemp() + sf = os.path.join(td, os.path.basename(filename) + '.asc') + cmd.extend(['--detach-sign', '--armor', '--local-user', + signer, '--output', sf, filename]) + logger.debug('invoking: %s', ' '.join(cmd)) + return cmd, sf + + def run_command(self, cmd, input_data=None): + """ + Run a command in a child process , passing it any input data specified. + + :param cmd: The command to run. + :param input_data: If specified, this must be a byte string containing + data to be sent to the child process. + :return: A tuple consisting of the subprocess' exit code, a list of + lines read from the subprocess' ``stdout``, and a list of + lines read from the subprocess' ``stderr``. + """ + kwargs = { + 'stdout': subprocess.PIPE, + 'stderr': subprocess.PIPE, + } + if input_data is not None: + kwargs['stdin'] = subprocess.PIPE + stdout = [] + stderr = [] + p = subprocess.Popen(cmd, **kwargs) + # We don't use communicate() here because we may need to + # get clever with interacting with the command + t1 = Thread(target=self._reader, args=('stdout', p.stdout, stdout)) + t1.start() + t2 = Thread(target=self._reader, args=('stderr', p.stderr, stderr)) + t2.start() + if input_data is not None: + p.stdin.write(input_data) + p.stdin.close() + + p.wait() + t1.join() + t2.join() + return p.returncode, stdout, stderr + + def sign_file(self, filename, signer, sign_password, keystore=None): + """ + Sign a file. + + :param filename: The pathname to the file to be signed. + :param signer: The identifier of the signer of the file. + :param sign_password: The passphrase for the signer's + private key used for signing. + :param keystore: The path to a directory which contains the keys + used in signing. If not specified, the instance's + ``gpg_home`` attribute is used instead. + :return: The absolute pathname of the file where the signature is + stored. + """ + cmd, sig_file = self.get_sign_command(filename, signer, sign_password, + keystore) + rc, stdout, stderr = self.run_command(cmd, + sign_password.encode('utf-8')) + if rc != 0: + raise DistlibException('sign command failed with error ' + 'code %s' % rc) + return sig_file + + def upload_file(self, metadata, filename, signer=None, sign_password=None, + filetype='sdist', pyversion='source', keystore=None): + """ + Upload a release file to the index. + + :param metadata: A :class:`Metadata` instance defining at least a name + and version number for the file to be uploaded. + :param filename: The pathname of the file to be uploaded. + :param signer: The identifier of the signer of the file. + :param sign_password: The passphrase for the signer's + private key used for signing. + :param filetype: The type of the file being uploaded. This is the + distutils command which produced that file, e.g. + ``sdist`` or ``bdist_wheel``. + :param pyversion: The version of Python which the release relates + to. For code compatible with any Python, this would + be ``source``, otherwise it would be e.g. ``3.2``. + :param keystore: The path to a directory which contains the keys + used in signing. If not specified, the instance's + ``gpg_home`` attribute is used instead. + :return: The HTTP response received from PyPI upon submission of the + request. + """ + self.check_credentials() + if not os.path.exists(filename): + raise DistlibException('not found: %s' % filename) + metadata.validate() + d = metadata.todict() + sig_file = None + if signer: + if not self.gpg: + logger.warning('no signing program available - not signed') + else: + sig_file = self.sign_file(filename, signer, sign_password, + keystore) + with open(filename, 'rb') as f: + file_data = f.read() + md5_digest = hashlib.md5(file_data).hexdigest() + sha256_digest = hashlib.sha256(file_data).hexdigest() + d.update({ + ':action': 'file_upload', + 'protcol_version': '1', + 'filetype': filetype, + 'pyversion': pyversion, + 'md5_digest': md5_digest, + 'sha256_digest': sha256_digest, + }) + files = [('content', os.path.basename(filename), file_data)] + if sig_file: + with open(sig_file, 'rb') as f: + sig_data = f.read() + files.append(('gpg_signature', os.path.basename(sig_file), + sig_data)) + shutil.rmtree(os.path.dirname(sig_file)) + request = self.encode_request(d.items(), files) + return self.send_request(request) + + def upload_documentation(self, metadata, doc_dir): + """ + Upload documentation to the index. + + :param metadata: A :class:`Metadata` instance defining at least a name + and version number for the documentation to be + uploaded. + :param doc_dir: The pathname of the directory which contains the + documentation. This should be the directory that + contains the ``index.html`` for the documentation. + :return: The HTTP response received from PyPI upon submission of the + request. + """ + self.check_credentials() + if not os.path.isdir(doc_dir): + raise DistlibException('not a directory: %r' % doc_dir) + fn = os.path.join(doc_dir, 'index.html') + if not os.path.exists(fn): + raise DistlibException('not found: %r' % fn) + metadata.validate() + name, version = metadata.name, metadata.version + zip_data = zip_dir(doc_dir).getvalue() + fields = [(':action', 'doc_upload'), + ('name', name), ('version', version)] + files = [('content', name, zip_data)] + request = self.encode_request(fields, files) + return self.send_request(request) + + def get_verify_command(self, signature_filename, data_filename, + keystore=None): + """ + Return a suitable command for verifying a file. + + :param signature_filename: The pathname to the file containing the + signature. + :param data_filename: The pathname to the file containing the + signed data. + :param keystore: The path to a directory which contains the keys + used in verification. If not specified, the + instance's ``gpg_home`` attribute is used instead. + :return: The verifying command as a list suitable to be + passed to :class:`subprocess.Popen`. + """ + cmd = [self.gpg, '--status-fd', '2', '--no-tty'] + if keystore is None: + keystore = self.gpg_home + if keystore: + cmd.extend(['--homedir', keystore]) + cmd.extend(['--verify', signature_filename, data_filename]) + logger.debug('invoking: %s', ' '.join(cmd)) + return cmd + + def verify_signature(self, signature_filename, data_filename, + keystore=None): + """ + Verify a signature for a file. + + :param signature_filename: The pathname to the file containing the + signature. + :param data_filename: The pathname to the file containing the + signed data. + :param keystore: The path to a directory which contains the keys + used in verification. If not specified, the + instance's ``gpg_home`` attribute is used instead. + :return: True if the signature was verified, else False. + """ + if not self.gpg: + raise DistlibException('verification unavailable because gpg ' + 'unavailable') + cmd = self.get_verify_command(signature_filename, data_filename, + keystore) + rc, stdout, stderr = self.run_command(cmd) + if rc not in (0, 1): + raise DistlibException('verify command failed with error ' + 'code %s' % rc) + return rc == 0 + + def download_file(self, url, destfile, digest=None, reporthook=None): + """ + This is a convenience method for downloading a file from an URL. + Normally, this will be a file from the index, though currently + no check is made for this (i.e. a file can be downloaded from + anywhere). + + The method is just like the :func:`urlretrieve` function in the + standard library, except that it allows digest computation to be + done during download and checking that the downloaded data + matched any expected value. + + :param url: The URL of the file to be downloaded (assumed to be + available via an HTTP GET request). + :param destfile: The pathname where the downloaded file is to be + saved. + :param digest: If specified, this must be a (hasher, value) + tuple, where hasher is the algorithm used (e.g. + ``'md5'``) and ``value`` is the expected value. + :param reporthook: The same as for :func:`urlretrieve` in the + standard library. + """ + if digest is None: + digester = None + logger.debug('No digest specified') + else: + if isinstance(digest, (list, tuple)): + hasher, digest = digest + else: + hasher = 'md5' + digester = getattr(hashlib, hasher)() + logger.debug('Digest specified: %s' % digest) + # The following code is equivalent to urlretrieve. + # We need to do it this way so that we can compute the + # digest of the file as we go. + with open(destfile, 'wb') as dfp: + # addinfourl is not a context manager on 2.x + # so we have to use try/finally + sfp = self.send_request(Request(url)) + try: + headers = sfp.info() + blocksize = 8192 + size = -1 + read = 0 + blocknum = 0 + if "content-length" in headers: + size = int(headers["Content-Length"]) + if reporthook: + reporthook(blocknum, blocksize, size) + while True: + block = sfp.read(blocksize) + if not block: + break + read += len(block) + dfp.write(block) + if digester: + digester.update(block) + blocknum += 1 + if reporthook: + reporthook(blocknum, blocksize, size) + finally: + sfp.close() + + # check that we got the whole file, if we can + if size >= 0 and read < size: + raise DistlibException( + 'retrieval incomplete: got only %d out of %d bytes' + % (read, size)) + # if we have a digest, it must match. + if digester: + actual = digester.hexdigest() + if digest != actual: + raise DistlibException('%s digest mismatch for %s: expected ' + '%s, got %s' % (hasher, destfile, + digest, actual)) + logger.debug('Digest verified: %s', digest) + + def send_request(self, req): + """ + Send a standard library :class:`Request` to PyPI and return its + response. + + :param req: The request to send. + :return: The HTTP response from PyPI (a standard library HTTPResponse). + """ + handlers = [] + if self.password_handler: + handlers.append(self.password_handler) + if self.ssl_verifier: + handlers.append(self.ssl_verifier) + opener = build_opener(*handlers) + return opener.open(req) + + def encode_request(self, fields, files): + """ + Encode fields and files for posting to an HTTP server. + + :param fields: The fields to send as a list of (fieldname, value) + tuples. + :param files: The files to send as a list of (fieldname, filename, + file_bytes) tuple. + """ + # Adapted from packaging, which in turn was adapted from + # http://code.activestate.com/recipes/146306 + + parts = [] + boundary = self.boundary + for k, values in fields: + if not isinstance(values, (list, tuple)): + values = [values] + + for v in values: + parts.extend(( + b'--' + boundary, + ('Content-Disposition: form-data; name="%s"' % + k).encode('utf-8'), + b'', + v.encode('utf-8'))) + for key, filename, value in files: + parts.extend(( + b'--' + boundary, + ('Content-Disposition: form-data; name="%s"; filename="%s"' % + (key, filename)).encode('utf-8'), + b'', + value)) + + parts.extend((b'--' + boundary + b'--', b'')) + + body = b'\r\n'.join(parts) + ct = b'multipart/form-data; boundary=' + boundary + headers = { + 'Content-type': ct, + 'Content-length': str(len(body)) + } + return Request(self.url, body, headers) + + def search(self, terms, operator=None): + if isinstance(terms, string_types): + terms = {'name': terms} + if self.rpc_proxy is None: + self.rpc_proxy = ServerProxy(self.url, timeout=3.0) + return self.rpc_proxy.search(terms, operator or 'and') diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/index.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d58da71409138de896b974432012b98f57c0e622 GIT binary patch literal 19931 zcmeHPUvM1BS?}4EC2J*1vSrJ@v+r*1h;!@2E9acVB)ZEHNA}$*+$p}1FZL;S*`1x4 z-5qInXFWY@X;X3m@r5El2*tlV@h24Uz#|nZJir5wRKWvJyo4$qD0t%qs7g^(!SDC= z{8?GH6Y7)%s94_Ko}QlWp6>6@@B8}eE&uDWig!WZ@>Kfo2);j!kDj-b^6}qNU8Oej zyrnj+th}T)OIg0GHp^LlLTyfD`6Fuch#H-g%aZC&s@{~^oKn`U{ZBVs zukU)nAPJ*>l{J%-NM5^n^Tuaf9eP)XN#`}U?{|YZnZgYxxHAlNlFX--Zn#?SM6v%y zJ5G+GY#4V3Zmff378lK7*!AntAn4<17U(1n`|Wx%8U(spMuD{Bxn3vm>w_3I<76cL zd?_5%{V-1WE*n97H;8Y<(e6l}!*wS~272YvrNL+rE)PaYC+aUpaa*pF2~^+>>Fk^G$G(Ge<`@;UV$XmDQn^U}zIR9KM8$0dJU z@+YzfPpJ1m*Ne(ul=`6Dlae_l6;4UzCFN{XPxDRr?iCyVZgxU#dtEG=9S4Ir&_O@Z zwrdZ}MA;!{%J!n(z)iwtH?ViYq+{P0-B`P5C!GK}&bBm_&aEwzyDUX|8U57qe>Xd8 zx{m+JYXR0$NUbg%)SJ<8-FKb0>mTq+c!Z10&niCpDbVPir3TX~K}M;%#dNDg61S4F zTv%j?cP7=nlDbz`_a@Z6BkCS5r_|mNrEjafNlB+9#lp_2?I{)a6{rJC%H}M!geJah zsXiEbM*6`jn+#UjWU$I6gH<+}iULJ~w6?Hn6Y73ReSJ&aJF0dYT*qtg-d6Xf)#zoF z%&Dz;wI{^UM*m0E9@?5_dfzJDtEfGYOGRy$RQw;T#@9TmZeT38?tEKKBnu*N<{)n@ zT;Im$)-8g+&$I{a%UE8ekkQlluGPTx8e&NVm`?m? zm}J=?jzd&Y>s8W^oRksL#E?fNTM-+KLKeQo{P_1n@V<|R3S zJCu=iFY33#_AmwqM16-XIwD5d$$HceusRSisobk~QsF4#O?T@UGv_aMq&td4yidIo z^@4;i6%RZLy4{hyGeu*kZ8@iK$4n8bqeqH547eM4QU^@kkusqMEh_|Z9-G0mVz+IY3j5o#Fj~eI zdsQ@}B+*xpyOi_>mj>aWCi1=Je&*`u?n3&8Qg{h7(D$SGQp)j{41GaNb1v!-0AW(E ze*k$cEl$l_73*2+X=}-v&i_tX$E>n-2G_Ir9L1H#CEyBhwnR>R6d6ctYGb8(mbzy_ zm*Tptx+T?vR46G6as*NXB4V$k_R16*8&x){fi7v>0B@U8d++UFf(`JghqLq#QCB0Dp#$gkELiY-dkvu7Foz+z{ z1Q{;G3Enju-LejJ%xcg8=0VgKF`t%$Feb71WF7s_Nb<#Z!1AeTyRl}w9vN=`>e{Zh z^>8qV;w13x=E%-x{GyF1AYtUKaqa9Rvi(TfbiHBXc5MKp?Pa5T2hm{Ib(28bjRpi~ z+;@9Hqj3>enMA==-dv*riPY^i8W8I~pNPB6Cx&X!NGpzdDXERoV?l5RlcoL0Mb?cl zzqIa9^@@xsWb=BJtLR*2LZRZ2?*&rTMMj!sH{v=-9P*;`F(w~JBFIjNPe{&_YF?{- zD5U35nS2%>O{P#&vk(!p)(QNbGSo%^kyG18a6vi{YO_*`0DXaiKx;xWpg5L`Hm3mD zFe>G5@MOLY8}8lU@kFw0za0(j-cToYhn0bV_pLA&FmG;rvBy`l89>(tHibN;O+v5+ zDc*^oU-O5rw%xFQu^>XIWt%E^AK4|tjO_B~)~i%y3Dr`nOX9$X`T=gxve2R%>l&&# zNZGnrSEEivo_rDw9Lh?H#?_dt{Tlaew6CeS)KsN3TL^v@i3Is7GGcH9bI*PxLA^H5Si3NCErU+z?7L2>PU!i^AfuYcO2i80;2fo7tfNw1Tzuv*+J+39LWJvr5X?f-6fj&$UE@#@8h9hHfeOj>VTPs1Mp)S)H#ujJ6dFZ9!JsF+ zU3aL-4}~0@7tvCHkLF0!k*BSBD3E8ZXDqQ1NW3{)|12&H31DHV<$>q3oEQpNQBVL> z0oLdx))WXpCI=paFc7!n1183&eMi-n4;y-{`Iu(n^lit{e-3|WWYCEKysrmQ zABIUBctLm+@c`VLyxG*ncj0@yr@&l#`@Q;+P-7vT3QJ{n3-?Y>PbI{t#7A_Ime z)ZT>B&xo~&9F(Aul_~PV?J~6?Zb3>~5SfsdUdObwJl3JJ)UwTdg2I$P}b(W5RZ$b_h)= zw4T|rAl?9GZdLRlX&RN<>@ezgM;8hLN;%9_H_fGwqH_*X29`p$ov_=r;j&_H-4VtH zOXrbn0lT0dcm#@Qi5vx^buffoZAOMy9)H^dBSLMwdHRCjMYiG&U?m!iDnm1qmqf+G zn(IDHTD4Dz;ykZuS{n!_2Hnkg7^HOM`g~mYzz<0Ll8rIEa3ERJn`Ak8aLBQ7KWGly zlJmNe4#wDl2M3J|LqD_zdE&AggJGt7%$@lhy>l-!bc~<#DWJ zL4Je@{t+3YDL~~QV~}cF+(jT}_}Ty;fEQQ+8exLYAe6^zbR&Tu;Nrn09600z-a`?d znWif#tpOh)*kekyMT@W!W*l1OJ^;rgZE>&&!9Ta-WyQYWECQr}n+b!Q zReLD6R2%$7CakC}xE0}Zf?o-Zp?UB!?OUj?DKh0omD8cW3U!@}Pe&|Kp|>z`>C789 zYjxN*TElLI-G{h}SXwX}JqNtXsG4_~C&)lU`&58&HA!)7C>e?lIFnwHoKg8ueq~0G z>8Ff2Q6&c>rX50)K__;hO)`aLx_SQLo~f)w8|pT^3;Azv2O|TP`FuJB1s|n7qmrQD ztW$VE$%asl&|&mk**l%k>(EL}fW@`&IUmZWzUVm3i9ibbRJ)i5Ph3ln@VPy@k<736 zJdMZ9tJD~?2Xj+^H6g{u-Yj!VP%o$Nos$FXTNff3(nb$cN|B{KI1(;^5p5YDDJ1vu z4SKU0MW32>WvvEZWHQvXmM?(uvbYCowSH7fl2PjCqjwCGE4sW^Yr2Wo(cECD)ru9* z8u*Af`<7kpX*x@4HHa|mAJq6#X#;NDi()~MwHjPsZns95oOW#FvD}4AGTMfA$Q_aP zdX?ByTz8J3k70VNFX)Dr9VC#HVnD*kOE~ocg6^MwP~z?)d`46Z558ha+PtMCjF#-cxDu4U}ol zgPK1jw)P}kb+gtJ_?!p!SVYb%<1W3Ml+mmB=n8N^SR(cSGKb{7lIBY4it)xlYEq6~ zNvlw@meorTpFrmj#7vLKJ%Dl`kFxq2JbVzMklGN+0^G3`LyQj*3r`TB2_QJzBL z8eH;VZJ-#`76F>pM*e74n}XMj>N`?zT5Z8mZ-hUe!}Sd1x@ZDi&&maRJ7#idDb3;T z9LEItjE+*b(?5-4BWKtL(`5n~k^vVT?3U3m5Es-%?8yKX1G|Jk^!*Wl5pe`fg~CaH z5FdFx--xZOX>c+CSizO4jFZ;tY;A?E|9x(MdL8J7;N+X?i%(HeTcO<_BtF(&yOLUe~dQh`k93*vzOi^PrTF{Fq<4iJq}&UuD+ zSaxIW#&wZ9@|eg|iVWr4V!}q#_S`s;=ABMfwiCl}aW;6#mUi4QalXi_3KBELoV6;s z)cA${>~28{GREy44sGleK(=aNq|FQF>+<198|nwpX68Kp7B2M%k*Jw6OqyeG{wx67 zO4Z#jZG#(8$!-W+5a&YU|K9l9S#B0WwuPn7l7i& zSnB;_DJm&QiATVw+(Gg5ph7sg3juE1Lwmm&L!F5usp>N-$r`)J6?zxH#aZNzO!KPNf>fQ%F!2PU{N%T zy};w(=)KMz!G8+LWcd9)Lj%O2ZybFvkMt!03nB=Lt$qjwW1NZ85RPEr4D8IqA_U`u z<-Z~g!l%5Y;OvF|hbW*0cE{Wh>&%E12n9$MJVuib_L`WM5G7wK2-R z^L82%00e;{EJ(+*5+`t6?Tr^66GU=Cg)l3{xV!@E62{^cNG;fiS0I02Ctle@hSTfb^?ps+K6lnxGbJ{{;DY)pic%#F1+%|Y+Y z3&f&1dP;3AWw%eWMcn2PXd*+xo{?90g71jN(AB*KDSuM!;l;VbLba#A1x1xh%C`pH z2yPb_-WNJCVc?O8fFj62W(&F40!hVc=7sxVI!Lo&0UH6WV8{nRo=d@5jNt4U>TXPv`>~BD2f9TO3 zfkp9j_$Pkw`Ye zSmGUSAOR!Gv#h}xLA8%AUw+6-W=3U!Ob*S}K^p#1s^=fr?t}Op7%SC^hJ9FD=e527 zdDf3|#|j9u&2TICE_Ahc-fAYeifnBx_PDt&v5lnKx?zWXTNwo1FGzGG8cV!L0*fRV zifS-pG6^Zl301Iu&;K}r?b?jdq<=(r+{+)ol9kXtrx6FUOzzT&#B~yQQay{ivS%{p z&7iV{&7~79Ai`N?ooh@^God~f--b9tU^#Hf9maS#=a7gkLNiQmcU;{;xT!cWFiaVI zC)iC#%bv_=Md=R*up0(`>@u8Pq?=-JvpCAOM8U zeb6zE_xk?8QwlF&Jpt?h7eTR?GZ+9D3{VANS17OxMpJp*XaeRjE*SzaI9-rV!&xJq zc#tg`#Iwe|0xu7J;l`(fj>JI@7dJfYu+bPw3BSr@hHP*N#9{p92(HAC0OU{t7$vY| zLtwAIJZ`JKWw3@HdBYw!L7cJw3!%n=@jY%cHrJ@R@=4VgT45k{A>hUIOtHx0Jlc6f z59*zL<4X6)bcd>n>W2ETXqKA!kqzzhpEnu?<#m!CW1KSo{{GJLrhYj4%$hD7O8PP1 zKjeL^$w|d<4=4oV$kev74ZNFJ2Pba#Zn zF|iTIbn-Yq&t#PeTX(*}gr=4VDR`W)|2+&Gk&hx83saDyQAU%}i8y##{h}RdLZa~@ z2u1Q@AE)bU=hxZE;mN&|XfBm|`_}wD zS*X4tjy4UsR+u=C-;a}>p%KCHqr6DDq87#Q5CbE%mZ+Y9lx1&8u*Ktc;0P`y?mldd4(yRRIA4W` zdrGMXw#b|>u@EOA48hTKmarDyPNgbFhP6`o^;8`3aRV3MTX&NsL}gh~Jc@L0n{f%1=E zVaYqNLvS1ozyijMo*1)K(-p@1 zij$l!Z7hB2v3?SYA?GwXN(m<&ck%l;^AsYOG)TksML_$}PM;p)0@J18j(r}#D_C|t zihGPK%$$AC}Y6RW)1= zmb3Oe91uk7+28=d7=xL&0w1L8Tp?I8FT07};cLe+1h&1!(132ZZA`tD*0Arb@L&oy znd30H8^Cr$5#w<&wPN_3|gDjT|# zhxSFG%HgKeQ(MDsQakBL(W-IY)?Sw)QQ7O7zRQ&R5Dy(<%eRL>ngsOHhVO!*&-Qtr zfyms6L5?9kTFz>p&zTJ&_`(u0GYlZkC-%I?F*mdWH#glO={sa7gs)JQ6Jp{I&P@RE zMTdxAGDnfc5zG)n+1eG_5U&H!IZv}WUq#E}F&5XYQ^ut{682k>_=^!hQlg3|V@ll+j3V+3h~LQu|`FvQEm zKtanC+jH4Dje`;&qS(lbR3@_}1agi`Ow*pJwSTLrINwrz$RJtQNzcTLiF#u#^PrXN zb~sNkM-mjS7(0AL(#NQTR@1ZRS}4l=%*LTmlrZ66l8ENen>xzf29n4kNI-THSWM!U z#eWGEx%gN(S#5ar0V1({*WSHTgkFIr0lMH`#7Y~etXEmW@PtVs(%q}Py!P%VB_>|Z zpfJ31LY)SJ2AW%+9%G6LS@HSn3G8_ZEIZ%LM1idme1MwP=5=8V8 z+kqAty8-+QdBIr{#0^vo(4Fp3d=RskQ}}fW+rgGLJ*}ensMn3!!p|p2a3n}FLl1~< zhCDt<#^!lLqiI_yAyWtDL63G-ZqlRpeQEXa!PSGn7Gg}Jxj5Jxbh1mz*HYz3vtQ}KPv&$xk44ztI@Iaq8twT)N|+cb46HHg2$Bp z#Q)^s7iBmcu4#({I99>AQ=9}Fc9Rg3kX#z;6+dr6pga1MxX`jO%CFv#bFu=X*Ue8j zh^j~*bN&F8oIhmpM@+=Iw!@r6bW#E!AlLb0mheJOXq&x)=Xm+sOz55$ox{Ot=P!5( z5>wkEECfZFU*EVZY7M>=r;$A(cSV;qBYz}Y0$$?$32q;bc;QCG-%`AM3>h_R#0!GU zOVmA6&^P?`hqDMXH&=_enk${fc4q~-DQl@DLWr+UEwqY{ZX&_TLh9fxX@@^UhXyVo zL$2WHF9Zzv4)!&s0M7q4;tQ6D=S}1akB8$&2=ba_a5Pa;gD<95`G!d8^ z6{H{k9sRUSCA5w4k;*a>D>$;VE&!>*OTi@K=nLG~>x`Y3=jIL$km3X)34*_eb-_jTdJo|>;KI7#oqC-+M0Ft~v-f`y zt(ad3SYqx|OkQO2(@Y2n98Qe5fJ{ihZ}ReYn0%AT?=$%`Ca*G)?I{kjcwNc84`}4@ zILA4B^oNj4PE3|2OS9*uE7SASv-mqXy*PVr_9tdf0~>u}`l;D7vuEbtm|mFvaFwhr zpj6&HJw<53B7TLp7_#lWgGBIOVt!l;kq;>0F9a#I)}!GeztJL59R9G^8`X=7e~vnW zSA`u-B#=35EgVg{HfOU11CWS>9~u7OkThg_&*4hS2!Nwsm(zOAU-PEGa9SMVW6yr? z#<_m=^*0PwXl}vcmDxGG$rciN$q>!U9I>{MnBQkGY1ujn);?KUu$D{bN`$17rT+%H CR>BPc literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.py new file mode 100644 index 0000000..1e14638 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.py @@ -0,0 +1,1264 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012-2015 Vinay Sajip. +# Licensed to the Python Software Foundation under a contributor agreement. +# See LICENSE.txt and CONTRIBUTORS.txt. +# + +import gzip +from io import BytesIO +import json +import logging +import os +import posixpath +import re +try: + import threading +except ImportError: # pragma: no cover + import dummy_threading as threading +import zlib + +from . import DistlibException +from .compat import (urljoin, urlparse, urlunparse, url2pathname, pathname2url, + queue, quote, unescape, string_types, build_opener, + HTTPRedirectHandler as BaseRedirectHandler, + Request, HTTPError, URLError) +from .database import Distribution, DistributionPath, make_dist +from .metadata import Metadata +from .util import (cached_property, parse_credentials, ensure_slash, + split_filename, get_project_data, parse_requirement, + parse_name_and_version, ServerProxy) +from .version import get_scheme, UnsupportedVersionError +from .wheel import Wheel, is_compatible + +logger = logging.getLogger(__name__) + +HASHER_HASH = re.compile('^(\w+)=([a-f0-9]+)') +CHARSET = re.compile(r';\s*charset\s*=\s*(.*)\s*$', re.I) +HTML_CONTENT_TYPE = re.compile('text/html|application/x(ht)?ml') +DEFAULT_INDEX = 'https://pypi.python.org/pypi' + +def get_all_distribution_names(url=None): + """ + Return all distribution names known by an index. + :param url: The URL of the index. + :return: A list of all known distribution names. + """ + if url is None: + url = DEFAULT_INDEX + client = ServerProxy(url, timeout=3.0) + return client.list_packages() + +class RedirectHandler(BaseRedirectHandler): + """ + A class to work around a bug in some Python 3.2.x releases. + """ + # There's a bug in the base version for some 3.2.x + # (e.g. 3.2.2 on Ubuntu Oneiric). If a Location header + # returns e.g. /abc, it bails because it says the scheme '' + # is bogus, when actually it should use the request's + # URL for the scheme. See Python issue #13696. + def http_error_302(self, req, fp, code, msg, headers): + # Some servers (incorrectly) return multiple Location headers + # (so probably same goes for URI). Use first header. + newurl = None + for key in ('location', 'uri'): + if key in headers: + newurl = headers[key] + break + if newurl is None: + return + urlparts = urlparse(newurl) + if urlparts.scheme == '': + newurl = urljoin(req.get_full_url(), newurl) + if hasattr(headers, 'replace_header'): + headers.replace_header(key, newurl) + else: + headers[key] = newurl + return BaseRedirectHandler.http_error_302(self, req, fp, code, msg, + headers) + + http_error_301 = http_error_303 = http_error_307 = http_error_302 + +class Locator(object): + """ + A base class for locators - things that locate distributions. + """ + source_extensions = ('.tar.gz', '.tar.bz2', '.tar', '.zip', '.tgz', '.tbz') + binary_extensions = ('.egg', '.exe', '.whl') + excluded_extensions = ('.pdf',) + + # A list of tags indicating which wheels you want to match. The default + # value of None matches against the tags compatible with the running + # Python. If you want to match other values, set wheel_tags on a locator + # instance to a list of tuples (pyver, abi, arch) which you want to match. + wheel_tags = None + + downloadable_extensions = source_extensions + ('.whl',) + + def __init__(self, scheme='default'): + """ + Initialise an instance. + :param scheme: Because locators look for most recent versions, they + need to know the version scheme to use. This specifies + the current PEP-recommended scheme - use ``'legacy'`` + if you need to support existing distributions on PyPI. + """ + self._cache = {} + self.scheme = scheme + # Because of bugs in some of the handlers on some of the platforms, + # we use our own opener rather than just using urlopen. + self.opener = build_opener(RedirectHandler()) + # If get_project() is called from locate(), the matcher instance + # is set from the requirement passed to locate(). See issue #18 for + # why this can be useful to know. + self.matcher = None + + def clear_cache(self): + self._cache.clear() + + def _get_scheme(self): + return self._scheme + + def _set_scheme(self, value): + self._scheme = value + + scheme = property(_get_scheme, _set_scheme) + + def _get_project(self, name): + """ + For a given project, get a dictionary mapping available versions to Distribution + instances. + + This should be implemented in subclasses. + + If called from a locate() request, self.matcher will be set to a + matcher for the requirement to satisfy, otherwise it will be None. + """ + raise NotImplementedError('Please implement in the subclass') + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + raise NotImplementedError('Please implement in the subclass') + + def get_project(self, name): + """ + For a given project, get a dictionary mapping available versions to Distribution + instances. + + This calls _get_project to do all the work, and just implements a caching layer on top. + """ + if self._cache is None: + result = self._get_project(name) + elif name in self._cache: + result = self._cache[name] + else: + result = self._get_project(name) + self._cache[name] = result + return result + + def score_url(self, url): + """ + Give an url a score which can be used to choose preferred URLs + for a given project release. + """ + t = urlparse(url) + basename = posixpath.basename(t.path) + compatible = True + is_wheel = basename.endswith('.whl') + if is_wheel: + compatible = is_compatible(Wheel(basename), self.wheel_tags) + return (t.scheme != 'https', 'pypi.python.org' in t.netloc, + is_wheel, compatible, basename) + + def prefer_url(self, url1, url2): + """ + Choose one of two URLs where both are candidates for distribution + archives for the same version of a distribution (for example, + .tar.gz vs. zip). + + The current implementation favours https:// URLs over http://, archives + from PyPI over those from other locations, wheel compatibility (if a + wheel) and then the archive name. + """ + result = url2 + if url1: + s1 = self.score_url(url1) + s2 = self.score_url(url2) + if s1 > s2: + result = url1 + if result != url2: + logger.debug('Not replacing %r with %r', url1, url2) + else: + logger.debug('Replacing %r with %r', url1, url2) + return result + + def split_filename(self, filename, project_name): + """ + Attempt to split a filename in project name, version and Python version. + """ + return split_filename(filename, project_name) + + def convert_url_to_download_info(self, url, project_name): + """ + See if a URL is a candidate for a download URL for a project (the URL + has typically been scraped from an HTML page). + + If it is, a dictionary is returned with keys "name", "version", + "filename" and "url"; otherwise, None is returned. + """ + def same_project(name1, name2): + name1, name2 = name1.lower(), name2.lower() + if name1 == name2: + result = True + else: + # distribute replaces '-' by '_' in project names, so it + # can tell where the version starts in a filename. + result = name1.replace('_', '-') == name2.replace('_', '-') + return result + + result = None + scheme, netloc, path, params, query, frag = urlparse(url) + if frag.lower().startswith('egg='): + logger.debug('%s: version hint in fragment: %r', + project_name, frag) + m = HASHER_HASH.match(frag) + if m: + algo, digest = m.groups() + else: + algo, digest = None, None + origpath = path + if path and path[-1] == '/': + path = path[:-1] + if path.endswith('.whl'): + try: + wheel = Wheel(path) + if is_compatible(wheel, self.wheel_tags): + if project_name is None: + include = True + else: + include = same_project(wheel.name, project_name) + if include: + result = { + 'name': wheel.name, + 'version': wheel.version, + 'filename': wheel.filename, + 'url': urlunparse((scheme, netloc, origpath, + params, query, '')), + 'python-version': ', '.join( + ['.'.join(list(v[2:])) for v in wheel.pyver]), + } + except Exception as e: + logger.warning('invalid path for wheel: %s', path) + elif path.endswith(self.downloadable_extensions): + path = filename = posixpath.basename(path) + for ext in self.downloadable_extensions: + if path.endswith(ext): + path = path[:-len(ext)] + t = self.split_filename(path, project_name) + if not t: + logger.debug('No match for project/version: %s', path) + else: + name, version, pyver = t + if not project_name or same_project(project_name, name): + result = { + 'name': name, + 'version': version, + 'filename': filename, + 'url': urlunparse((scheme, netloc, origpath, + params, query, '')), + #'packagetype': 'sdist', + } + if pyver: + result['python-version'] = pyver + break + if result and algo: + result['%s_digest' % algo] = digest + return result + + def _get_digest(self, info): + """ + Get a digest from a dictionary by looking at keys of the form + 'algo_digest'. + + Returns a 2-tuple (algo, digest) if found, else None. Currently + looks only for SHA256, then MD5. + """ + result = None + for algo in ('sha256', 'md5'): + key = '%s_digest' % algo + if key in info: + result = (algo, info[key]) + break + return result + + def _update_version_data(self, result, info): + """ + Update a result dictionary (the final result from _get_project) with a + dictionary for a specific version, which typically holds information + gleaned from a filename or URL for an archive for the distribution. + """ + name = info.pop('name') + version = info.pop('version') + if version in result: + dist = result[version] + md = dist.metadata + else: + dist = make_dist(name, version, scheme=self.scheme) + md = dist.metadata + dist.digest = digest = self._get_digest(info) + url = info['url'] + result['digests'][url] = digest + if md.source_url != info['url']: + md.source_url = self.prefer_url(md.source_url, url) + result['urls'].setdefault(version, set()).add(url) + dist.locator = self + result[version] = dist + + def locate(self, requirement, prereleases=False): + """ + Find the most recent distribution which matches the given + requirement. + + :param requirement: A requirement of the form 'foo (1.0)' or perhaps + 'foo (>= 1.0, < 2.0, != 1.3)' + :param prereleases: If ``True``, allow pre-release versions + to be located. Otherwise, pre-release versions + are not returned. + :return: A :class:`Distribution` instance, or ``None`` if no such + distribution could be located. + """ + result = None + r = parse_requirement(requirement) + if r is None: + raise DistlibException('Not a valid requirement: %r' % requirement) + scheme = get_scheme(self.scheme) + self.matcher = matcher = scheme.matcher(r.requirement) + logger.debug('matcher: %s (%s)', matcher, type(matcher).__name__) + versions = self.get_project(r.name) + if len(versions) > 2: # urls and digests keys are present + # sometimes, versions are invalid + slist = [] + vcls = matcher.version_class + for k in versions: + if k in ('urls', 'digests'): + continue + try: + if not matcher.match(k): + logger.debug('%s did not match %r', matcher, k) + else: + if prereleases or not vcls(k).is_prerelease: + slist.append(k) + else: + logger.debug('skipping pre-release ' + 'version %s of %s', k, matcher.name) + except Exception: # pragma: no cover + logger.warning('error matching %s with %r', matcher, k) + pass # slist.append(k) + if len(slist) > 1: + slist = sorted(slist, key=scheme.key) + if slist: + logger.debug('sorted list: %s', slist) + version = slist[-1] + result = versions[version] + if result: + if r.extras: + result.extras = r.extras + result.download_urls = versions.get('urls', {}).get(version, set()) + d = {} + sd = versions.get('digests', {}) + for url in result.download_urls: + if url in sd: + d[url] = sd[url] + result.digests = d + self.matcher = None + return result + + +class PyPIRPCLocator(Locator): + """ + This locator uses XML-RPC to locate distributions. It therefore + cannot be used with simple mirrors (that only mirror file content). + """ + def __init__(self, url, **kwargs): + """ + Initialise an instance. + + :param url: The URL to use for XML-RPC. + :param kwargs: Passed to the superclass constructor. + """ + super(PyPIRPCLocator, self).__init__(**kwargs) + self.base_url = url + self.client = ServerProxy(url, timeout=3.0) + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + return set(self.client.list_packages()) + + def _get_project(self, name): + result = {'urls': {}, 'digests': {}} + versions = self.client.package_releases(name, True) + for v in versions: + urls = self.client.release_urls(name, v) + data = self.client.release_data(name, v) + metadata = Metadata(scheme=self.scheme) + metadata.name = data['name'] + metadata.version = data['version'] + metadata.license = data.get('license') + metadata.keywords = data.get('keywords', []) + metadata.summary = data.get('summary') + dist = Distribution(metadata) + if urls: + info = urls[0] + metadata.source_url = info['url'] + dist.digest = self._get_digest(info) + dist.locator = self + result[v] = dist + for info in urls: + url = info['url'] + digest = self._get_digest(info) + result['urls'].setdefault(v, set()).add(url) + result['digests'][url] = digest + return result + +class PyPIJSONLocator(Locator): + """ + This locator uses PyPI's JSON interface. It's very limited in functionality + and probably not worth using. + """ + def __init__(self, url, **kwargs): + super(PyPIJSONLocator, self).__init__(**kwargs) + self.base_url = ensure_slash(url) + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + raise NotImplementedError('Not available from this locator') + + def _get_project(self, name): + result = {'urls': {}, 'digests': {}} + url = urljoin(self.base_url, '%s/json' % quote(name)) + try: + resp = self.opener.open(url) + data = resp.read().decode() # for now + d = json.loads(data) + md = Metadata(scheme=self.scheme) + data = d['info'] + md.name = data['name'] + md.version = data['version'] + md.license = data.get('license') + md.keywords = data.get('keywords', []) + md.summary = data.get('summary') + dist = Distribution(md) + dist.locator = self + urls = d['urls'] + result[md.version] = dist + for info in d['urls']: + url = info['url'] + dist.download_urls.add(url) + dist.digests[url] = self._get_digest(info) + result['urls'].setdefault(md.version, set()).add(url) + result['digests'][url] = self._get_digest(info) + # Now get other releases + for version, infos in d['releases'].items(): + if version == md.version: + continue # already done + omd = Metadata(scheme=self.scheme) + omd.name = md.name + omd.version = version + odist = Distribution(omd) + odist.locator = self + result[version] = odist + for info in infos: + url = info['url'] + odist.download_urls.add(url) + odist.digests[url] = self._get_digest(info) + result['urls'].setdefault(version, set()).add(url) + result['digests'][url] = self._get_digest(info) +# for info in urls: +# md.source_url = info['url'] +# dist.digest = self._get_digest(info) +# dist.locator = self +# for info in urls: +# url = info['url'] +# result['urls'].setdefault(md.version, set()).add(url) +# result['digests'][url] = self._get_digest(info) + except Exception as e: + logger.exception('JSON fetch failed: %s', e) + return result + + +class Page(object): + """ + This class represents a scraped HTML page. + """ + # The following slightly hairy-looking regex just looks for the contents of + # an anchor link, which has an attribute "href" either immediately preceded + # or immediately followed by a "rel" attribute. The attribute values can be + # declared with double quotes, single quotes or no quotes - which leads to + # the length of the expression. + _href = re.compile(""" +(rel\s*=\s*(?:"(?P[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*))\s+)? +href\s*=\s*(?:"(?P[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*)) +(\s+rel\s*=\s*(?:"(?P[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*)))? +""", re.I | re.S | re.X) + _base = re.compile(r"""]+)""", re.I | re.S) + + def __init__(self, data, url): + """ + Initialise an instance with the Unicode page contents and the URL they + came from. + """ + self.data = data + self.base_url = self.url = url + m = self._base.search(self.data) + if m: + self.base_url = m.group(1) + + _clean_re = re.compile(r'[^a-z0-9$&+,/:;=?@.#%_\\|-]', re.I) + + @cached_property + def links(self): + """ + Return the URLs of all the links on a page together with information + about their "rel" attribute, for determining which ones to treat as + downloads and which ones to queue for further scraping. + """ + def clean(url): + "Tidy up an URL." + scheme, netloc, path, params, query, frag = urlparse(url) + return urlunparse((scheme, netloc, quote(path), + params, query, frag)) + + result = set() + for match in self._href.finditer(self.data): + d = match.groupdict('') + rel = (d['rel1'] or d['rel2'] or d['rel3'] or + d['rel4'] or d['rel5'] or d['rel6']) + url = d['url1'] or d['url2'] or d['url3'] + url = urljoin(self.base_url, url) + url = unescape(url) + url = self._clean_re.sub(lambda m: '%%%2x' % ord(m.group(0)), url) + result.add((url, rel)) + # We sort the result, hoping to bring the most recent versions + # to the front + result = sorted(result, key=lambda t: t[0], reverse=True) + return result + + +class SimpleScrapingLocator(Locator): + """ + A locator which scrapes HTML pages to locate downloads for a distribution. + This runs multiple threads to do the I/O; performance is at least as good + as pip's PackageFinder, which works in an analogous fashion. + """ + + # These are used to deal with various Content-Encoding schemes. + decoders = { + 'deflate': zlib.decompress, + 'gzip': lambda b: gzip.GzipFile(fileobj=BytesIO(d)).read(), + 'none': lambda b: b, + } + + def __init__(self, url, timeout=None, num_workers=10, **kwargs): + """ + Initialise an instance. + :param url: The root URL to use for scraping. + :param timeout: The timeout, in seconds, to be applied to requests. + This defaults to ``None`` (no timeout specified). + :param num_workers: The number of worker threads you want to do I/O, + This defaults to 10. + :param kwargs: Passed to the superclass. + """ + super(SimpleScrapingLocator, self).__init__(**kwargs) + self.base_url = ensure_slash(url) + self.timeout = timeout + self._page_cache = {} + self._seen = set() + self._to_fetch = queue.Queue() + self._bad_hosts = set() + self.skip_externals = False + self.num_workers = num_workers + self._lock = threading.RLock() + # See issue #45: we need to be resilient when the locator is used + # in a thread, e.g. with concurrent.futures. We can't use self._lock + # as it is for coordinating our internal threads - the ones created + # in _prepare_threads. + self._gplock = threading.RLock() + + def _prepare_threads(self): + """ + Threads are created only when get_project is called, and terminate + before it returns. They are there primarily to parallelise I/O (i.e. + fetching web pages). + """ + self._threads = [] + for i in range(self.num_workers): + t = threading.Thread(target=self._fetch) + t.setDaemon(True) + t.start() + self._threads.append(t) + + def _wait_threads(self): + """ + Tell all the threads to terminate (by sending a sentinel value) and + wait for them to do so. + """ + # Note that you need two loops, since you can't say which + # thread will get each sentinel + for t in self._threads: + self._to_fetch.put(None) # sentinel + for t in self._threads: + t.join() + self._threads = [] + + def _get_project(self, name): + result = {'urls': {}, 'digests': {}} + with self._gplock: + self.result = result + self.project_name = name + url = urljoin(self.base_url, '%s/' % quote(name)) + self._seen.clear() + self._page_cache.clear() + self._prepare_threads() + try: + logger.debug('Queueing %s', url) + self._to_fetch.put(url) + self._to_fetch.join() + finally: + self._wait_threads() + del self.result + return result + + platform_dependent = re.compile(r'\b(linux-(i\d86|x86_64|arm\w+)|' + r'win(32|-amd64)|macosx-?\d+)\b', re.I) + + def _is_platform_dependent(self, url): + """ + Does an URL refer to a platform-specific download? + """ + return self.platform_dependent.search(url) + + def _process_download(self, url): + """ + See if an URL is a suitable download for a project. + + If it is, register information in the result dictionary (for + _get_project) about the specific version it's for. + + Note that the return value isn't actually used other than as a boolean + value. + """ + if self._is_platform_dependent(url): + info = None + else: + info = self.convert_url_to_download_info(url, self.project_name) + logger.debug('process_download: %s -> %s', url, info) + if info: + with self._lock: # needed because self.result is shared + self._update_version_data(self.result, info) + return info + + def _should_queue(self, link, referrer, rel): + """ + Determine whether a link URL from a referring page and with a + particular "rel" attribute should be queued for scraping. + """ + scheme, netloc, path, _, _, _ = urlparse(link) + if path.endswith(self.source_extensions + self.binary_extensions + + self.excluded_extensions): + result = False + elif self.skip_externals and not link.startswith(self.base_url): + result = False + elif not referrer.startswith(self.base_url): + result = False + elif rel not in ('homepage', 'download'): + result = False + elif scheme not in ('http', 'https', 'ftp'): + result = False + elif self._is_platform_dependent(link): + result = False + else: + host = netloc.split(':', 1)[0] + if host.lower() == 'localhost': + result = False + else: + result = True + logger.debug('should_queue: %s (%s) from %s -> %s', link, rel, + referrer, result) + return result + + def _fetch(self): + """ + Get a URL to fetch from the work queue, get the HTML page, examine its + links for download candidates and candidates for further scraping. + + This is a handy method to run in a thread. + """ + while True: + url = self._to_fetch.get() + try: + if url: + page = self.get_page(url) + if page is None: # e.g. after an error + continue + for link, rel in page.links: + if link not in self._seen: + self._seen.add(link) + if (not self._process_download(link) and + self._should_queue(link, url, rel)): + logger.debug('Queueing %s from %s', link, url) + self._to_fetch.put(link) + finally: + # always do this, to avoid hangs :-) + self._to_fetch.task_done() + if not url: + #logger.debug('Sentinel seen, quitting.') + break + + def get_page(self, url): + """ + Get the HTML for an URL, possibly from an in-memory cache. + + XXX TODO Note: this cache is never actually cleared. It's assumed that + the data won't get stale over the lifetime of a locator instance (not + necessarily true for the default_locator). + """ + # http://peak.telecommunity.com/DevCenter/EasyInstall#package-index-api + scheme, netloc, path, _, _, _ = urlparse(url) + if scheme == 'file' and os.path.isdir(url2pathname(path)): + url = urljoin(ensure_slash(url), 'index.html') + + if url in self._page_cache: + result = self._page_cache[url] + logger.debug('Returning %s from cache: %s', url, result) + else: + host = netloc.split(':', 1)[0] + result = None + if host in self._bad_hosts: + logger.debug('Skipping %s due to bad host %s', url, host) + else: + req = Request(url, headers={'Accept-encoding': 'identity'}) + try: + logger.debug('Fetching %s', url) + resp = self.opener.open(req, timeout=self.timeout) + logger.debug('Fetched %s', url) + headers = resp.info() + content_type = headers.get('Content-Type', '') + if HTML_CONTENT_TYPE.match(content_type): + final_url = resp.geturl() + data = resp.read() + encoding = headers.get('Content-Encoding') + if encoding: + decoder = self.decoders[encoding] # fail if not found + data = decoder(data) + encoding = 'utf-8' + m = CHARSET.search(content_type) + if m: + encoding = m.group(1) + try: + data = data.decode(encoding) + except UnicodeError: # pragma: no cover + data = data.decode('latin-1') # fallback + result = Page(data, final_url) + self._page_cache[final_url] = result + except HTTPError as e: + if e.code != 404: + logger.exception('Fetch failed: %s: %s', url, e) + except URLError as e: # pragma: no cover + logger.exception('Fetch failed: %s: %s', url, e) + with self._lock: + self._bad_hosts.add(host) + except Exception as e: # pragma: no cover + logger.exception('Fetch failed: %s: %s', url, e) + finally: + self._page_cache[url] = result # even if None (failure) + return result + + _distname_re = re.compile(']*>([^<]+)<') + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + result = set() + page = self.get_page(self.base_url) + if not page: + raise DistlibException('Unable to get %s' % self.base_url) + for match in self._distname_re.finditer(page.data): + result.add(match.group(1)) + return result + +class DirectoryLocator(Locator): + """ + This class locates distributions in a directory tree. + """ + + def __init__(self, path, **kwargs): + """ + Initialise an instance. + :param path: The root of the directory tree to search. + :param kwargs: Passed to the superclass constructor, + except for: + * recursive - if True (the default), subdirectories are + recursed into. If False, only the top-level directory + is searched, + """ + self.recursive = kwargs.pop('recursive', True) + super(DirectoryLocator, self).__init__(**kwargs) + path = os.path.abspath(path) + if not os.path.isdir(path): # pragma: no cover + raise DistlibException('Not a directory: %r' % path) + self.base_dir = path + + def should_include(self, filename, parent): + """ + Should a filename be considered as a candidate for a distribution + archive? As well as the filename, the directory which contains it + is provided, though not used by the current implementation. + """ + return filename.endswith(self.downloadable_extensions) + + def _get_project(self, name): + result = {'urls': {}, 'digests': {}} + for root, dirs, files in os.walk(self.base_dir): + for fn in files: + if self.should_include(fn, root): + fn = os.path.join(root, fn) + url = urlunparse(('file', '', + pathname2url(os.path.abspath(fn)), + '', '', '')) + info = self.convert_url_to_download_info(url, name) + if info: + self._update_version_data(result, info) + if not self.recursive: + break + return result + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + result = set() + for root, dirs, files in os.walk(self.base_dir): + for fn in files: + if self.should_include(fn, root): + fn = os.path.join(root, fn) + url = urlunparse(('file', '', + pathname2url(os.path.abspath(fn)), + '', '', '')) + info = self.convert_url_to_download_info(url, None) + if info: + result.add(info['name']) + if not self.recursive: + break + return result + +class JSONLocator(Locator): + """ + This locator uses special extended metadata (not available on PyPI) and is + the basis of performant dependency resolution in distlib. Other locators + require archive downloads before dependencies can be determined! As you + might imagine, that can be slow. + """ + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + raise NotImplementedError('Not available from this locator') + + def _get_project(self, name): + result = {'urls': {}, 'digests': {}} + data = get_project_data(name) + if data: + for info in data.get('files', []): + if info['ptype'] != 'sdist' or info['pyversion'] != 'source': + continue + # We don't store summary in project metadata as it makes + # the data bigger for no benefit during dependency + # resolution + dist = make_dist(data['name'], info['version'], + summary=data.get('summary', + 'Placeholder for summary'), + scheme=self.scheme) + md = dist.metadata + md.source_url = info['url'] + # TODO SHA256 digest + if 'digest' in info and info['digest']: + dist.digest = ('md5', info['digest']) + md.dependencies = info.get('requirements', {}) + dist.exports = info.get('exports', {}) + result[dist.version] = dist + result['urls'].setdefault(dist.version, set()).add(info['url']) + return result + +class DistPathLocator(Locator): + """ + This locator finds installed distributions in a path. It can be useful for + adding to an :class:`AggregatingLocator`. + """ + def __init__(self, distpath, **kwargs): + """ + Initialise an instance. + + :param distpath: A :class:`DistributionPath` instance to search. + """ + super(DistPathLocator, self).__init__(**kwargs) + assert isinstance(distpath, DistributionPath) + self.distpath = distpath + + def _get_project(self, name): + dist = self.distpath.get_distribution(name) + if dist is None: + result = {'urls': {}, 'digests': {}} + else: + result = { + dist.version: dist, + 'urls': {dist.version: set([dist.source_url])}, + 'digests': {dist.version: set([None])} + } + return result + + +class AggregatingLocator(Locator): + """ + This class allows you to chain and/or merge a list of locators. + """ + def __init__(self, *locators, **kwargs): + """ + Initialise an instance. + + :param locators: The list of locators to search. + :param kwargs: Passed to the superclass constructor, + except for: + * merge - if False (the default), the first successful + search from any of the locators is returned. If True, + the results from all locators are merged (this can be + slow). + """ + self.merge = kwargs.pop('merge', False) + self.locators = locators + super(AggregatingLocator, self).__init__(**kwargs) + + def clear_cache(self): + super(AggregatingLocator, self).clear_cache() + for locator in self.locators: + locator.clear_cache() + + def _set_scheme(self, value): + self._scheme = value + for locator in self.locators: + locator.scheme = value + + scheme = property(Locator.scheme.fget, _set_scheme) + + def _get_project(self, name): + result = {} + for locator in self.locators: + d = locator.get_project(name) + if d: + if self.merge: + files = result.get('urls', {}) + digests = result.get('digests', {}) + # next line could overwrite result['urls'], result['digests'] + result.update(d) + df = result.get('urls') + if files and df: + for k, v in files.items(): + if k in df: + df[k] |= v + else: + df[k] = v + dd = result.get('digests') + if digests and dd: + dd.update(digests) + else: + # See issue #18. If any dists are found and we're looking + # for specific constraints, we only return something if + # a match is found. For example, if a DirectoryLocator + # returns just foo (1.0) while we're looking for + # foo (>= 2.0), we'll pretend there was nothing there so + # that subsequent locators can be queried. Otherwise we + # would just return foo (1.0) which would then lead to a + # failure to find foo (>= 2.0), because other locators + # weren't searched. Note that this only matters when + # merge=False. + if self.matcher is None: + found = True + else: + found = False + for k in d: + if self.matcher.match(k): + found = True + break + if found: + result = d + break + return result + + def get_distribution_names(self): + """ + Return all the distribution names known to this locator. + """ + result = set() + for locator in self.locators: + try: + result |= locator.get_distribution_names() + except NotImplementedError: + pass + return result + + +# We use a legacy scheme simply because most of the dists on PyPI use legacy +# versions which don't conform to PEP 426 / PEP 440. +default_locator = AggregatingLocator( + JSONLocator(), + SimpleScrapingLocator('https://pypi.python.org/simple/', + timeout=3.0), + scheme='legacy') + +locate = default_locator.locate + +NAME_VERSION_RE = re.compile(r'(?P[\w-]+)\s*' + r'\(\s*(==\s*)?(?P[^)]+)\)$') + +class DependencyFinder(object): + """ + Locate dependencies for distributions. + """ + + def __init__(self, locator=None): + """ + Initialise an instance, using the specified locator + to locate distributions. + """ + self.locator = locator or default_locator + self.scheme = get_scheme(self.locator.scheme) + + def add_distribution(self, dist): + """ + Add a distribution to the finder. This will update internal information + about who provides what. + :param dist: The distribution to add. + """ + logger.debug('adding distribution %s', dist) + name = dist.key + self.dists_by_name[name] = dist + self.dists[(name, dist.version)] = dist + for p in dist.provides: + name, version = parse_name_and_version(p) + logger.debug('Add to provided: %s, %s, %s', name, version, dist) + self.provided.setdefault(name, set()).add((version, dist)) + + def remove_distribution(self, dist): + """ + Remove a distribution from the finder. This will update internal + information about who provides what. + :param dist: The distribution to remove. + """ + logger.debug('removing distribution %s', dist) + name = dist.key + del self.dists_by_name[name] + del self.dists[(name, dist.version)] + for p in dist.provides: + name, version = parse_name_and_version(p) + logger.debug('Remove from provided: %s, %s, %s', name, version, dist) + s = self.provided[name] + s.remove((version, dist)) + if not s: + del self.provided[name] + + def get_matcher(self, reqt): + """ + Get a version matcher for a requirement. + :param reqt: The requirement + :type reqt: str + :return: A version matcher (an instance of + :class:`distlib.version.Matcher`). + """ + try: + matcher = self.scheme.matcher(reqt) + except UnsupportedVersionError: # pragma: no cover + # XXX compat-mode if cannot read the version + name = reqt.split()[0] + matcher = self.scheme.matcher(name) + return matcher + + def find_providers(self, reqt): + """ + Find the distributions which can fulfill a requirement. + + :param reqt: The requirement. + :type reqt: str + :return: A set of distribution which can fulfill the requirement. + """ + matcher = self.get_matcher(reqt) + name = matcher.key # case-insensitive + result = set() + provided = self.provided + if name in provided: + for version, provider in provided[name]: + try: + match = matcher.match(version) + except UnsupportedVersionError: + match = False + + if match: + result.add(provider) + break + return result + + def try_to_replace(self, provider, other, problems): + """ + Attempt to replace one provider with another. This is typically used + when resolving dependencies from multiple sources, e.g. A requires + (B >= 1.0) while C requires (B >= 1.1). + + For successful replacement, ``provider`` must meet all the requirements + which ``other`` fulfills. + + :param provider: The provider we are trying to replace with. + :param other: The provider we're trying to replace. + :param problems: If False is returned, this will contain what + problems prevented replacement. This is currently + a tuple of the literal string 'cantreplace', + ``provider``, ``other`` and the set of requirements + that ``provider`` couldn't fulfill. + :return: True if we can replace ``other`` with ``provider``, else + False. + """ + rlist = self.reqts[other] + unmatched = set() + for s in rlist: + matcher = self.get_matcher(s) + if not matcher.match(provider.version): + unmatched.add(s) + if unmatched: + # can't replace other with provider + problems.add(('cantreplace', provider, other, + frozenset(unmatched))) + result = False + else: + # can replace other with provider + self.remove_distribution(other) + del self.reqts[other] + for s in rlist: + self.reqts.setdefault(provider, set()).add(s) + self.add_distribution(provider) + result = True + return result + + def find(self, requirement, meta_extras=None, prereleases=False): + """ + Find a distribution and all distributions it depends on. + + :param requirement: The requirement specifying the distribution to + find, or a Distribution instance. + :param meta_extras: A list of meta extras such as :test:, :build: and + so on. + :param prereleases: If ``True``, allow pre-release versions to be + returned - otherwise, don't return prereleases + unless they're all that's available. + + Return a set of :class:`Distribution` instances and a set of + problems. + + The distributions returned should be such that they have the + :attr:`required` attribute set to ``True`` if they were + from the ``requirement`` passed to ``find()``, and they have the + :attr:`build_time_dependency` attribute set to ``True`` unless they + are post-installation dependencies of the ``requirement``. + + The problems should be a tuple consisting of the string + ``'unsatisfied'`` and the requirement which couldn't be satisfied + by any distribution known to the locator. + """ + + self.provided = {} + self.dists = {} + self.dists_by_name = {} + self.reqts = {} + + meta_extras = set(meta_extras or []) + if ':*:' in meta_extras: + meta_extras.remove(':*:') + # :meta: and :run: are implicitly included + meta_extras |= set([':test:', ':build:', ':dev:']) + + if isinstance(requirement, Distribution): + dist = odist = requirement + logger.debug('passed %s as requirement', odist) + else: + dist = odist = self.locator.locate(requirement, + prereleases=prereleases) + if dist is None: + raise DistlibException('Unable to locate %r' % requirement) + logger.debug('located %s', odist) + dist.requested = True + problems = set() + todo = set([dist]) + install_dists = set([odist]) + while todo: + dist = todo.pop() + name = dist.key # case-insensitive + if name not in self.dists_by_name: + self.add_distribution(dist) + else: + #import pdb; pdb.set_trace() + other = self.dists_by_name[name] + if other != dist: + self.try_to_replace(dist, other, problems) + + ireqts = dist.run_requires | dist.meta_requires + sreqts = dist.build_requires + ereqts = set() + if dist in install_dists: + for key in ('test', 'build', 'dev'): + e = ':%s:' % key + if e in meta_extras: + ereqts |= getattr(dist, '%s_requires' % key) + all_reqts = ireqts | sreqts | ereqts + for r in all_reqts: + providers = self.find_providers(r) + if not providers: + logger.debug('No providers found for %r', r) + provider = self.locator.locate(r, prereleases=prereleases) + # If no provider is found and we didn't consider + # prereleases, consider them now. + if provider is None and not prereleases: + provider = self.locator.locate(r, prereleases=True) + if provider is None: + logger.debug('Cannot satisfy %r', r) + problems.add(('unsatisfied', r)) + else: + n, v = provider.key, provider.version + if (n, v) not in self.dists: + todo.add(provider) + providers.add(provider) + if r in ireqts and dist in install_dists: + install_dists.add(provider) + logger.debug('Adding %s to install_dists', + provider.name_and_version) + for p in providers: + name = p.key + if name not in self.dists_by_name: + self.reqts.setdefault(p, set()).add(r) + else: + other = self.dists_by_name[name] + if other != p: + # see if other can be replaced by p + self.try_to_replace(p, other, problems) + + dists = set(self.dists.values()) + for dist in dists: + dist.build_time_dependency = dist not in install_dists + if dist.build_time_dependency: + logger.debug('%s is a build-time dependency only.', + dist.name_and_version) + logger.debug('find done for %s', odist) + return dists, problems diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/locators.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1f3b824aa688bfebe24a6dfcab7a45e51051b2b9 GIT binary patch literal 44763 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 k(Qk!)qtA?vj~*TUZ|M8~0G^FFy8r+H literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/manifest.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/manifest.py new file mode 100644 index 0000000..21cff45 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/manifest.py @@ -0,0 +1,367 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012-2013 Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +""" +Class representing the list of files in a distribution. + +Equivalent to distutils.filelist, but fixes some problems. +""" +import fnmatch +import logging +import os +import re + +from . import DistlibException +from .compat import fsdecode +from .util import convert_path + + +__all__ = ['Manifest'] + +logger = logging.getLogger(__name__) + +# a \ followed by some spaces + EOL +_COLLAPSE_PATTERN = re.compile('\\\w*\n', re.M) +_COMMENTED_LINE = re.compile('#.*?(?=\n)|\n(?=$)', re.M | re.S) + + +class Manifest(object): + """A list of files built by on exploring the filesystem and filtered by + applying various patterns to what we find there. + """ + + def __init__(self, base=None): + """ + Initialise an instance. + + :param base: The base directory to explore under. + """ + self.base = os.path.abspath(os.path.normpath(base or os.getcwd())) + self.prefix = self.base + os.sep + self.allfiles = None + self.files = set() + + # + # Public API + # + + def findall(self): + """Find all files under the base and set ``allfiles`` to the absolute + pathnames of files found. + """ + from stat import S_ISREG, S_ISDIR, S_ISLNK + + self.allfiles = allfiles = [] + root = self.base + stack = [root] + pop = stack.pop + push = stack.append + + while stack: + root = pop() + names = os.listdir(root) + + for name in names: + fullname = os.path.join(root, name) + + # Avoid excess stat calls -- just one will do, thank you! + stat = os.stat(fullname) + mode = stat.st_mode + if S_ISREG(mode): + allfiles.append(fsdecode(fullname)) + elif S_ISDIR(mode) and not S_ISLNK(mode): + push(fullname) + + def add(self, item): + """ + Add a file to the manifest. + + :param item: The pathname to add. This can be relative to the base. + """ + if not item.startswith(self.prefix): + item = os.path.join(self.base, item) + self.files.add(os.path.normpath(item)) + + def add_many(self, items): + """ + Add a list of files to the manifest. + + :param items: The pathnames to add. These can be relative to the base. + """ + for item in items: + self.add(item) + + def sorted(self, wantdirs=False): + """ + Return sorted files in directory order + """ + + def add_dir(dirs, d): + dirs.add(d) + logger.debug('add_dir added %s', d) + if d != self.base: + parent, _ = os.path.split(d) + assert parent not in ('', '/') + add_dir(dirs, parent) + + result = set(self.files) # make a copy! + if wantdirs: + dirs = set() + for f in result: + add_dir(dirs, os.path.dirname(f)) + result |= dirs + return [os.path.join(*path_tuple) for path_tuple in + sorted(os.path.split(path) for path in result)] + + def clear(self): + """Clear all collected files.""" + self.files = set() + self.allfiles = [] + + def process_directive(self, directive): + """ + Process a directive which either adds some files from ``allfiles`` to + ``files``, or removes some files from ``files``. + + :param directive: The directive to process. This should be in a format + compatible with distutils ``MANIFEST.in`` files: + + http://docs.python.org/distutils/sourcedist.html#commands + """ + # Parse the line: split it up, make sure the right number of words + # is there, and return the relevant words. 'action' is always + # defined: it's the first word of the line. Which of the other + # three are defined depends on the action; it'll be either + # patterns, (dir and patterns), or (dirpattern). + action, patterns, thedir, dirpattern = self._parse_directive(directive) + + # OK, now we know that the action is valid and we have the + # right number of words on the line for that action -- so we + # can proceed with minimal error-checking. + if action == 'include': + for pattern in patterns: + if not self._include_pattern(pattern, anchor=True): + logger.warning('no files found matching %r', pattern) + + elif action == 'exclude': + for pattern in patterns: + found = self._exclude_pattern(pattern, anchor=True) + #if not found: + # logger.warning('no previously-included files ' + # 'found matching %r', pattern) + + elif action == 'global-include': + for pattern in patterns: + if not self._include_pattern(pattern, anchor=False): + logger.warning('no files found matching %r ' + 'anywhere in distribution', pattern) + + elif action == 'global-exclude': + for pattern in patterns: + found = self._exclude_pattern(pattern, anchor=False) + #if not found: + # logger.warning('no previously-included files ' + # 'matching %r found anywhere in ' + # 'distribution', pattern) + + elif action == 'recursive-include': + for pattern in patterns: + if not self._include_pattern(pattern, prefix=thedir): + logger.warning('no files found matching %r ' + 'under directory %r', pattern, thedir) + + elif action == 'recursive-exclude': + for pattern in patterns: + found = self._exclude_pattern(pattern, prefix=thedir) + #if not found: + # logger.warning('no previously-included files ' + # 'matching %r found under directory %r', + # pattern, thedir) + + elif action == 'graft': + if not self._include_pattern(None, prefix=dirpattern): + logger.warning('no directories found matching %r', + dirpattern) + + elif action == 'prune': + if not self._exclude_pattern(None, prefix=dirpattern): + logger.warning('no previously-included directories found ' + 'matching %r', dirpattern) + else: # pragma: no cover + # This should never happen, as it should be caught in + # _parse_template_line + raise DistlibException( + 'invalid action %r' % action) + + # + # Private API + # + + def _parse_directive(self, directive): + """ + Validate a directive. + :param directive: The directive to validate. + :return: A tuple of action, patterns, thedir, dir_patterns + """ + words = directive.split() + if len(words) == 1 and words[0] not in ('include', 'exclude', + 'global-include', + 'global-exclude', + 'recursive-include', + 'recursive-exclude', + 'graft', 'prune'): + # no action given, let's use the default 'include' + words.insert(0, 'include') + + action = words[0] + patterns = thedir = dir_pattern = None + + if action in ('include', 'exclude', + 'global-include', 'global-exclude'): + if len(words) < 2: + raise DistlibException( + '%r expects ...' % action) + + patterns = [convert_path(word) for word in words[1:]] + + elif action in ('recursive-include', 'recursive-exclude'): + if len(words) < 3: + raise DistlibException( + '%r expects

    ...' % action) + + thedir = convert_path(words[1]) + patterns = [convert_path(word) for word in words[2:]] + + elif action in ('graft', 'prune'): + if len(words) != 2: + raise DistlibException( + '%r expects a single ' % action) + + dir_pattern = convert_path(words[1]) + + else: + raise DistlibException('unknown action %r' % action) + + return action, patterns, thedir, dir_pattern + + def _include_pattern(self, pattern, anchor=True, prefix=None, + is_regex=False): + """Select strings (presumably filenames) from 'self.files' that + match 'pattern', a Unix-style wildcard (glob) pattern. + + Patterns are not quite the same as implemented by the 'fnmatch' + module: '*' and '?' match non-special characters, where "special" + is platform-dependent: slash on Unix; colon, slash, and backslash on + DOS/Windows; and colon on Mac OS. + + If 'anchor' is true (the default), then the pattern match is more + stringent: "*.py" will match "foo.py" but not "foo/bar.py". If + 'anchor' is false, both of these will match. + + If 'prefix' is supplied, then only filenames starting with 'prefix' + (itself a pattern) and ending with 'pattern', with anything in between + them, will match. 'anchor' is ignored in this case. + + If 'is_regex' is true, 'anchor' and 'prefix' are ignored, and + 'pattern' is assumed to be either a string containing a regex or a + regex object -- no translation is done, the regex is just compiled + and used as-is. + + Selected strings will be added to self.files. + + Return True if files are found. + """ + # XXX docstring lying about what the special chars are? + found = False + pattern_re = self._translate_pattern(pattern, anchor, prefix, is_regex) + + # delayed loading of allfiles list + if self.allfiles is None: + self.findall() + + for name in self.allfiles: + if pattern_re.search(name): + self.files.add(name) + found = True + return found + + def _exclude_pattern(self, pattern, anchor=True, prefix=None, + is_regex=False): + """Remove strings (presumably filenames) from 'files' that match + 'pattern'. + + Other parameters are the same as for 'include_pattern()', above. + The list 'self.files' is modified in place. Return True if files are + found. + + This API is public to allow e.g. exclusion of SCM subdirs, e.g. when + packaging source distributions + """ + found = False + pattern_re = self._translate_pattern(pattern, anchor, prefix, is_regex) + for f in list(self.files): + if pattern_re.search(f): + self.files.remove(f) + found = True + return found + + def _translate_pattern(self, pattern, anchor=True, prefix=None, + is_regex=False): + """Translate a shell-like wildcard pattern to a compiled regular + expression. + + Return the compiled regex. If 'is_regex' true, + then 'pattern' is directly compiled to a regex (if it's a string) + or just returned as-is (assumes it's a regex object). + """ + if is_regex: + if isinstance(pattern, str): + return re.compile(pattern) + else: + return pattern + + if pattern: + pattern_re = self._glob_to_re(pattern) + else: + pattern_re = '' + + base = re.escape(os.path.join(self.base, '')) + if prefix is not None: + # ditch end of pattern character + empty_pattern = self._glob_to_re('') + prefix_re = self._glob_to_re(prefix)[:-len(empty_pattern)] + sep = os.sep + if os.sep == '\\': + sep = r'\\' + pattern_re = '^' + base + sep.join((prefix_re, + '.*' + pattern_re)) + else: # no prefix -- respect anchor flag + if anchor: + pattern_re = '^' + base + pattern_re + + return re.compile(pattern_re) + + def _glob_to_re(self, pattern): + """Translate a shell-like glob pattern to a regular expression. + + Return a string containing the regex. Differs from + 'fnmatch.translate()' in that '*' does not match "special characters" + (which are platform-specific). + """ + pattern_re = fnmatch.translate(pattern) + + # '?' and '*' in the glob pattern become '.' and '.*' in the RE, which + # IMHO is wrong -- '?' and '*' aren't supposed to match slash in Unix, + # and by extension they shouldn't match such "special characters" under + # any OS. So change all non-escaped dots in the RE to match any + # character except the special characters (currently: just os.sep). + sep = os.sep + if os.sep == '\\': + # we're using a regex to manipulate a regex, so we need + # to escape the backslash twice + sep = r'\\\\' + escaped = r'\1[^%s]' % sep + pattern_re = re.sub(r'((?cCVfxhnx{b!g47Od!~EH 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 y, + 'gte': lambda x, y: x >= y, + 'in': lambda x, y: x in y, + 'lt': lambda x, y: x < y, + 'lte': lambda x, y: x <= y, + 'not': lambda x: not x, + 'noteq': lambda x, y: x != y, + 'notin': lambda x, y: x not in y, + } + + allowed_values = { + 'sys_platform': sys.platform, + 'python_version': '%s.%s' % sys.version_info[:2], + # parsing sys.platform is not reliable, but there is no other + # way to get e.g. 2.7.2+, and the PEP is defined with sys.version + 'python_full_version': sys.version.split(' ', 1)[0], + 'os_name': os.name, + 'platform_in_venv': str(in_venv()), + 'platform_release': platform.release(), + 'platform_version': platform.version(), + 'platform_machine': platform.machine(), + 'platform_python_implementation': python_implementation(), + } + + def __init__(self, context=None): + """ + Initialise an instance. + + :param context: If specified, names are looked up in this mapping. + """ + self.context = context or {} + self.source = None + + def get_fragment(self, offset): + """ + Get the part of the source which is causing a problem. + """ + fragment_len = 10 + s = '%r' % (self.source[offset:offset + fragment_len]) + if offset + fragment_len < len(self.source): + s += '...' + return s + + def get_handler(self, node_type): + """ + Get a handler for the specified AST node type. + """ + return getattr(self, 'do_%s' % node_type, None) + + def evaluate(self, node, filename=None): + """ + Evaluate a source string or node, using ``filename`` when + displaying errors. + """ + if isinstance(node, string_types): + self.source = node + kwargs = {'mode': 'eval'} + if filename: + kwargs['filename'] = filename + try: + node = ast.parse(node, **kwargs) + except SyntaxError as e: + s = self.get_fragment(e.offset) + raise SyntaxError('syntax error %s' % s) + node_type = node.__class__.__name__.lower() + handler = self.get_handler(node_type) + if handler is None: + if self.source is None: + s = '(source not available)' + else: + s = self.get_fragment(node.col_offset) + raise SyntaxError("don't know how to evaluate %r %s" % ( + node_type, s)) + return handler(node) + + def get_attr_key(self, node): + assert isinstance(node, ast.Attribute), 'attribute node expected' + return '%s.%s' % (node.value.id, node.attr) + + def do_attribute(self, node): + if not isinstance(node.value, ast.Name): + valid = False + else: + key = self.get_attr_key(node) + valid = key in self.context or key in self.allowed_values + if not valid: + raise SyntaxError('invalid expression: %s' % key) + if key in self.context: + result = self.context[key] + else: + result = self.allowed_values[key] + return result + + def do_boolop(self, node): + result = self.evaluate(node.values[0]) + is_or = node.op.__class__ is ast.Or + is_and = node.op.__class__ is ast.And + assert is_or or is_and + if (is_and and result) or (is_or and not result): + for n in node.values[1:]: + result = self.evaluate(n) + if (is_or and result) or (is_and and not result): + break + return result + + def do_compare(self, node): + def sanity_check(lhsnode, rhsnode): + valid = True + if isinstance(lhsnode, ast.Str) and isinstance(rhsnode, ast.Str): + valid = False + #elif (isinstance(lhsnode, ast.Attribute) + # and isinstance(rhsnode, ast.Attribute)): + # klhs = self.get_attr_key(lhsnode) + # krhs = self.get_attr_key(rhsnode) + # valid = klhs != krhs + if not valid: + s = self.get_fragment(node.col_offset) + raise SyntaxError('Invalid comparison: %s' % s) + + lhsnode = node.left + lhs = self.evaluate(lhsnode) + result = True + for op, rhsnode in zip(node.ops, node.comparators): + sanity_check(lhsnode, rhsnode) + op = op.__class__.__name__.lower() + if op not in self.operators: + raise SyntaxError('unsupported operation: %r' % op) + rhs = self.evaluate(rhsnode) + result = self.operators[op](lhs, rhs) + if not result: + break + lhs = rhs + lhsnode = rhsnode + return result + + def do_expression(self, node): + return self.evaluate(node.body) + + def do_name(self, node): + valid = False + if node.id in self.context: + valid = True + result = self.context[node.id] + elif node.id in self.allowed_values: + valid = True + result = self.allowed_values[node.id] + if not valid: + raise SyntaxError('invalid expression: %s' % node.id) + return result + + def do_str(self, node): + return node.s + + +def interpret(marker, execution_context=None): + """ + Interpret a marker and return a result depending on environment. + + :param marker: The marker to interpret. + :type marker: str + :param execution_context: The context used for name lookup. + :type execution_context: mapping + """ + return Evaluator(execution_context).evaluate(marker.strip()) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/markers.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/markers.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9b9a36806952ed21e0dfbca00d4dff2d582e23d3 GIT binary patch literal 8007 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 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.py new file mode 100644 index 0000000..71525dd --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.py @@ -0,0 +1,1066 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2012 The Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +"""Implementation of the Metadata for Python packages PEPs. + +Supports all metadata formats (1.0, 1.1, 1.2, and 2.0 experimental). +""" +from __future__ import unicode_literals + +import codecs +from email import message_from_file +import json +import logging +import re + + +from . import DistlibException, __version__ +from .compat import StringIO, string_types, text_type +from .markers import interpret +from .util import extract_by_key, get_extras +from .version import get_scheme, PEP440_VERSION_RE + +logger = logging.getLogger(__name__) + + +class MetadataMissingError(DistlibException): + """A required metadata is missing""" + + +class MetadataConflictError(DistlibException): + """Attempt to read or write metadata fields that are conflictual.""" + + +class MetadataUnrecognizedVersionError(DistlibException): + """Unknown metadata version number.""" + + +class MetadataInvalidError(DistlibException): + """A metadata value is invalid""" + +# public API of this module +__all__ = ['Metadata', 'PKG_INFO_ENCODING', 'PKG_INFO_PREFERRED_VERSION'] + +# Encoding used for the PKG-INFO files +PKG_INFO_ENCODING = 'utf-8' + +# preferred version. Hopefully will be changed +# to 1.2 once PEP 345 is supported everywhere +PKG_INFO_PREFERRED_VERSION = '1.1' + +_LINE_PREFIX_1_2 = re.compile('\n \|') +_LINE_PREFIX_PRE_1_2 = re.compile('\n ') +_241_FIELDS = ('Metadata-Version', 'Name', 'Version', 'Platform', + 'Summary', 'Description', + 'Keywords', 'Home-page', 'Author', 'Author-email', + 'License') + +_314_FIELDS = ('Metadata-Version', 'Name', 'Version', 'Platform', + 'Supported-Platform', 'Summary', 'Description', + 'Keywords', 'Home-page', 'Author', 'Author-email', + 'License', 'Classifier', 'Download-URL', 'Obsoletes', + 'Provides', 'Requires') + +_314_MARKERS = ('Obsoletes', 'Provides', 'Requires', 'Classifier', + 'Download-URL') + +_345_FIELDS = ('Metadata-Version', 'Name', 'Version', 'Platform', + 'Supported-Platform', 'Summary', 'Description', + 'Keywords', 'Home-page', 'Author', 'Author-email', + 'Maintainer', 'Maintainer-email', 'License', + 'Classifier', 'Download-URL', 'Obsoletes-Dist', + 'Project-URL', 'Provides-Dist', 'Requires-Dist', + 'Requires-Python', 'Requires-External') + +_345_MARKERS = ('Provides-Dist', 'Requires-Dist', 'Requires-Python', + 'Obsoletes-Dist', 'Requires-External', 'Maintainer', + 'Maintainer-email', 'Project-URL') + +_426_FIELDS = ('Metadata-Version', 'Name', 'Version', 'Platform', + 'Supported-Platform', 'Summary', 'Description', + 'Keywords', 'Home-page', 'Author', 'Author-email', + 'Maintainer', 'Maintainer-email', 'License', + 'Classifier', 'Download-URL', 'Obsoletes-Dist', + 'Project-URL', 'Provides-Dist', 'Requires-Dist', + 'Requires-Python', 'Requires-External', 'Private-Version', + 'Obsoleted-By', 'Setup-Requires-Dist', 'Extension', + 'Provides-Extra') + +_426_MARKERS = ('Private-Version', 'Provides-Extra', 'Obsoleted-By', + 'Setup-Requires-Dist', 'Extension') + +_ALL_FIELDS = set() +_ALL_FIELDS.update(_241_FIELDS) +_ALL_FIELDS.update(_314_FIELDS) +_ALL_FIELDS.update(_345_FIELDS) +_ALL_FIELDS.update(_426_FIELDS) + +EXTRA_RE = re.compile(r'''extra\s*==\s*("([^"]+)"|'([^']+)')''') + + +def _version2fieldlist(version): + if version == '1.0': + return _241_FIELDS + elif version == '1.1': + return _314_FIELDS + elif version == '1.2': + return _345_FIELDS + elif version == '2.0': + return _426_FIELDS + raise MetadataUnrecognizedVersionError(version) + + +def _best_version(fields): + """Detect the best version depending on the fields used.""" + def _has_marker(keys, markers): + for marker in markers: + if marker in keys: + return True + return False + + keys = [] + for key, value in fields.items(): + if value in ([], 'UNKNOWN', None): + continue + keys.append(key) + + possible_versions = ['1.0', '1.1', '1.2', '2.0'] + + # first let's try to see if a field is not part of one of the version + for key in keys: + if key not in _241_FIELDS and '1.0' in possible_versions: + possible_versions.remove('1.0') + if key not in _314_FIELDS and '1.1' in possible_versions: + possible_versions.remove('1.1') + if key not in _345_FIELDS and '1.2' in possible_versions: + possible_versions.remove('1.2') + if key not in _426_FIELDS and '2.0' in possible_versions: + possible_versions.remove('2.0') + + # possible_version contains qualified versions + if len(possible_versions) == 1: + return possible_versions[0] # found ! + elif len(possible_versions) == 0: + raise MetadataConflictError('Unknown metadata set') + + # let's see if one unique marker is found + is_1_1 = '1.1' in possible_versions and _has_marker(keys, _314_MARKERS) + is_1_2 = '1.2' in possible_versions and _has_marker(keys, _345_MARKERS) + is_2_0 = '2.0' in possible_versions and _has_marker(keys, _426_MARKERS) + if int(is_1_1) + int(is_1_2) + int(is_2_0) > 1: + raise MetadataConflictError('You used incompatible 1.1/1.2/2.0 fields') + + # we have the choice, 1.0, or 1.2, or 2.0 + # - 1.0 has a broken Summary field but works with all tools + # - 1.1 is to avoid + # - 1.2 fixes Summary but has little adoption + # - 2.0 adds more features and is very new + if not is_1_1 and not is_1_2 and not is_2_0: + # we couldn't find any specific marker + if PKG_INFO_PREFERRED_VERSION in possible_versions: + return PKG_INFO_PREFERRED_VERSION + if is_1_1: + return '1.1' + if is_1_2: + return '1.2' + + return '2.0' + +_ATTR2FIELD = { + 'metadata_version': 'Metadata-Version', + 'name': 'Name', + 'version': 'Version', + 'platform': 'Platform', + 'supported_platform': 'Supported-Platform', + 'summary': 'Summary', + 'description': 'Description', + 'keywords': 'Keywords', + 'home_page': 'Home-page', + 'author': 'Author', + 'author_email': 'Author-email', + 'maintainer': 'Maintainer', + 'maintainer_email': 'Maintainer-email', + 'license': 'License', + 'classifier': 'Classifier', + 'download_url': 'Download-URL', + 'obsoletes_dist': 'Obsoletes-Dist', + 'provides_dist': 'Provides-Dist', + 'requires_dist': 'Requires-Dist', + 'setup_requires_dist': 'Setup-Requires-Dist', + 'requires_python': 'Requires-Python', + 'requires_external': 'Requires-External', + 'requires': 'Requires', + 'provides': 'Provides', + 'obsoletes': 'Obsoletes', + 'project_url': 'Project-URL', + 'private_version': 'Private-Version', + 'obsoleted_by': 'Obsoleted-By', + 'extension': 'Extension', + 'provides_extra': 'Provides-Extra', +} + +_PREDICATE_FIELDS = ('Requires-Dist', 'Obsoletes-Dist', 'Provides-Dist') +_VERSIONS_FIELDS = ('Requires-Python',) +_VERSION_FIELDS = ('Version',) +_LISTFIELDS = ('Platform', 'Classifier', 'Obsoletes', + 'Requires', 'Provides', 'Obsoletes-Dist', + 'Provides-Dist', 'Requires-Dist', 'Requires-External', + 'Project-URL', 'Supported-Platform', 'Setup-Requires-Dist', + 'Provides-Extra', 'Extension') +_LISTTUPLEFIELDS = ('Project-URL',) + +_ELEMENTSFIELD = ('Keywords',) + +_UNICODEFIELDS = ('Author', 'Maintainer', 'Summary', 'Description') + +_MISSING = object() + +_FILESAFE = re.compile('[^A-Za-z0-9.]+') + + +def _get_name_and_version(name, version, for_filename=False): + """Return the distribution name with version. + + If for_filename is true, return a filename-escaped form.""" + if for_filename: + # For both name and version any runs of non-alphanumeric or '.' + # characters are replaced with a single '-'. Additionally any + # spaces in the version string become '.' + name = _FILESAFE.sub('-', name) + version = _FILESAFE.sub('-', version.replace(' ', '.')) + return '%s-%s' % (name, version) + + +class LegacyMetadata(object): + """The legacy metadata of a release. + + Supports versions 1.0, 1.1 and 1.2 (auto-detected). You can + instantiate the class with one of these arguments (or none): + - *path*, the path to a metadata file + - *fileobj* give a file-like object with metadata as content + - *mapping* is a dict-like object + - *scheme* is a version scheme name + """ + # TODO document the mapping API and UNKNOWN default key + + def __init__(self, path=None, fileobj=None, mapping=None, + scheme='default'): + if [path, fileobj, mapping].count(None) < 2: + raise TypeError('path, fileobj and mapping are exclusive') + self._fields = {} + self.requires_files = [] + self._dependencies = None + self.scheme = scheme + if path is not None: + self.read(path) + elif fileobj is not None: + self.read_file(fileobj) + elif mapping is not None: + self.update(mapping) + self.set_metadata_version() + + def set_metadata_version(self): + self._fields['Metadata-Version'] = _best_version(self._fields) + + def _write_field(self, fileobj, name, value): + fileobj.write('%s: %s\n' % (name, value)) + + def __getitem__(self, name): + return self.get(name) + + def __setitem__(self, name, value): + return self.set(name, value) + + def __delitem__(self, name): + field_name = self._convert_name(name) + try: + del self._fields[field_name] + except KeyError: + raise KeyError(name) + + def __contains__(self, name): + return (name in self._fields or + self._convert_name(name) in self._fields) + + def _convert_name(self, name): + if name in _ALL_FIELDS: + return name + name = name.replace('-', '_').lower() + return _ATTR2FIELD.get(name, name) + + def _default_value(self, name): + if name in _LISTFIELDS or name in _ELEMENTSFIELD: + return [] + return 'UNKNOWN' + + def _remove_line_prefix(self, value): + if self.metadata_version in ('1.0', '1.1'): + return _LINE_PREFIX_PRE_1_2.sub('\n', value) + else: + return _LINE_PREFIX_1_2.sub('\n', value) + + def __getattr__(self, name): + if name in _ATTR2FIELD: + return self[name] + raise AttributeError(name) + + # + # Public API + # + +# dependencies = property(_get_dependencies, _set_dependencies) + + def get_fullname(self, filesafe=False): + """Return the distribution name with version. + + If filesafe is true, return a filename-escaped form.""" + return _get_name_and_version(self['Name'], self['Version'], filesafe) + + def is_field(self, name): + """return True if name is a valid metadata key""" + name = self._convert_name(name) + return name in _ALL_FIELDS + + def is_multi_field(self, name): + name = self._convert_name(name) + return name in _LISTFIELDS + + def read(self, filepath): + """Read the metadata values from a file path.""" + fp = codecs.open(filepath, 'r', encoding='utf-8') + try: + self.read_file(fp) + finally: + fp.close() + + def read_file(self, fileob): + """Read the metadata values from a file object.""" + msg = message_from_file(fileob) + self._fields['Metadata-Version'] = msg['metadata-version'] + + # When reading, get all the fields we can + for field in _ALL_FIELDS: + if field not in msg: + continue + if field in _LISTFIELDS: + # we can have multiple lines + values = msg.get_all(field) + if field in _LISTTUPLEFIELDS and values is not None: + values = [tuple(value.split(',')) for value in values] + self.set(field, values) + else: + # single line + value = msg[field] + if value is not None and value != 'UNKNOWN': + self.set(field, value) + self.set_metadata_version() + + def write(self, filepath, skip_unknown=False): + """Write the metadata fields to filepath.""" + fp = codecs.open(filepath, 'w', encoding='utf-8') + try: + self.write_file(fp, skip_unknown) + finally: + fp.close() + + def write_file(self, fileobject, skip_unknown=False): + """Write the PKG-INFO format data to a file object.""" + self.set_metadata_version() + + for field in _version2fieldlist(self['Metadata-Version']): + values = self.get(field) + if skip_unknown and values in ('UNKNOWN', [], ['UNKNOWN']): + continue + if field in _ELEMENTSFIELD: + self._write_field(fileobject, field, ','.join(values)) + continue + if field not in _LISTFIELDS: + if field == 'Description': + if self.metadata_version in ('1.0', '1.1'): + values = values.replace('\n', '\n ') + else: + values = values.replace('\n', '\n |') + values = [values] + + if field in _LISTTUPLEFIELDS: + values = [','.join(value) for value in values] + + for value in values: + self._write_field(fileobject, field, value) + + def update(self, other=None, **kwargs): + """Set metadata values from the given iterable `other` and kwargs. + + Behavior is like `dict.update`: If `other` has a ``keys`` method, + they are looped over and ``self[key]`` is assigned ``other[key]``. + Else, ``other`` is an iterable of ``(key, value)`` iterables. + + Keys that don't match a metadata field or that have an empty value are + dropped. + """ + def _set(key, value): + if key in _ATTR2FIELD and value: + self.set(self._convert_name(key), value) + + if not other: + # other is None or empty container + pass + elif hasattr(other, 'keys'): + for k in other.keys(): + _set(k, other[k]) + else: + for k, v in other: + _set(k, v) + + if kwargs: + for k, v in kwargs.items(): + _set(k, v) + + def set(self, name, value): + """Control then set a metadata field.""" + name = self._convert_name(name) + + if ((name in _ELEMENTSFIELD or name == 'Platform') and + not isinstance(value, (list, tuple))): + if isinstance(value, string_types): + value = [v.strip() for v in value.split(',')] + else: + value = [] + elif (name in _LISTFIELDS and + not isinstance(value, (list, tuple))): + if isinstance(value, string_types): + value = [value] + else: + value = [] + + if logger.isEnabledFor(logging.WARNING): + project_name = self['Name'] + + scheme = get_scheme(self.scheme) + if name in _PREDICATE_FIELDS and value is not None: + for v in value: + # check that the values are valid + if not scheme.is_valid_matcher(v.split(';')[0]): + logger.warning( + '%r: %r is not valid (field %r)', + project_name, v, name) + # FIXME this rejects UNKNOWN, is that right? + elif name in _VERSIONS_FIELDS and value is not None: + if not scheme.is_valid_constraint_list(value): + logger.warning('%r: %r is not a valid version (field %r)', + project_name, value, name) + elif name in _VERSION_FIELDS and value is not None: + if not scheme.is_valid_version(value): + logger.warning('%r: %r is not a valid version (field %r)', + project_name, value, name) + + if name in _UNICODEFIELDS: + if name == 'Description': + value = self._remove_line_prefix(value) + + self._fields[name] = value + + def get(self, name, default=_MISSING): + """Get a metadata field.""" + name = self._convert_name(name) + if name not in self._fields: + if default is _MISSING: + default = self._default_value(name) + return default + if name in _UNICODEFIELDS: + value = self._fields[name] + return value + elif name in _LISTFIELDS: + value = self._fields[name] + if value is None: + return [] + res = [] + for val in value: + if name not in _LISTTUPLEFIELDS: + res.append(val) + else: + # That's for Project-URL + res.append((val[0], val[1])) + return res + + elif name in _ELEMENTSFIELD: + value = self._fields[name] + if isinstance(value, string_types): + return value.split(',') + return self._fields[name] + + def check(self, strict=False): + """Check if the metadata is compliant. If strict is True then raise if + no Name or Version are provided""" + self.set_metadata_version() + + # XXX should check the versions (if the file was loaded) + missing, warnings = [], [] + + for attr in ('Name', 'Version'): # required by PEP 345 + if attr not in self: + missing.append(attr) + + if strict and missing != []: + msg = 'missing required metadata: %s' % ', '.join(missing) + raise MetadataMissingError(msg) + + for attr in ('Home-page', 'Author'): + if attr not in self: + missing.append(attr) + + # checking metadata 1.2 (XXX needs to check 1.1, 1.0) + if self['Metadata-Version'] != '1.2': + return missing, warnings + + scheme = get_scheme(self.scheme) + + def are_valid_constraints(value): + for v in value: + if not scheme.is_valid_matcher(v.split(';')[0]): + return False + return True + + for fields, controller in ((_PREDICATE_FIELDS, are_valid_constraints), + (_VERSIONS_FIELDS, + scheme.is_valid_constraint_list), + (_VERSION_FIELDS, + scheme.is_valid_version)): + for field in fields: + value = self.get(field, None) + if value is not None and not controller(value): + warnings.append('Wrong value for %r: %s' % (field, value)) + + return missing, warnings + + def todict(self, skip_missing=False): + """Return fields as a dict. + + Field names will be converted to use the underscore-lowercase style + instead of hyphen-mixed case (i.e. home_page instead of Home-page). + """ + self.set_metadata_version() + + mapping_1_0 = ( + ('metadata_version', 'Metadata-Version'), + ('name', 'Name'), + ('version', 'Version'), + ('summary', 'Summary'), + ('home_page', 'Home-page'), + ('author', 'Author'), + ('author_email', 'Author-email'), + ('license', 'License'), + ('description', 'Description'), + ('keywords', 'Keywords'), + ('platform', 'Platform'), + ('classifiers', 'Classifier'), + ('download_url', 'Download-URL'), + ) + + data = {} + for key, field_name in mapping_1_0: + if not skip_missing or field_name in self._fields: + data[key] = self[field_name] + + if self['Metadata-Version'] == '1.2': + mapping_1_2 = ( + ('requires_dist', 'Requires-Dist'), + ('requires_python', 'Requires-Python'), + ('requires_external', 'Requires-External'), + ('provides_dist', 'Provides-Dist'), + ('obsoletes_dist', 'Obsoletes-Dist'), + ('project_url', 'Project-URL'), + ('maintainer', 'Maintainer'), + ('maintainer_email', 'Maintainer-email'), + ) + for key, field_name in mapping_1_2: + if not skip_missing or field_name in self._fields: + if key != 'project_url': + data[key] = self[field_name] + else: + data[key] = [','.join(u) for u in self[field_name]] + + elif self['Metadata-Version'] == '1.1': + mapping_1_1 = ( + ('provides', 'Provides'), + ('requires', 'Requires'), + ('obsoletes', 'Obsoletes'), + ) + for key, field_name in mapping_1_1: + if not skip_missing or field_name in self._fields: + data[key] = self[field_name] + + return data + + def add_requirements(self, requirements): + if self['Metadata-Version'] == '1.1': + # we can't have 1.1 metadata *and* Setuptools requires + for field in ('Obsoletes', 'Requires', 'Provides'): + if field in self: + del self[field] + self['Requires-Dist'] += requirements + + # Mapping API + # TODO could add iter* variants + + def keys(self): + return list(_version2fieldlist(self['Metadata-Version'])) + + def __iter__(self): + for key in self.keys(): + yield key + + def values(self): + return [self[key] for key in self.keys()] + + def items(self): + return [(key, self[key]) for key in self.keys()] + + def __repr__(self): + return '<%s %s %s>' % (self.__class__.__name__, self.name, + self.version) + + +METADATA_FILENAME = 'pydist.json' +WHEEL_METADATA_FILENAME = 'metadata.json' + + +class Metadata(object): + """ + The metadata of a release. This implementation uses 2.0 (JSON) + metadata where possible. If not possible, it wraps a LegacyMetadata + instance which handles the key-value metadata format. + """ + + METADATA_VERSION_MATCHER = re.compile('^\d+(\.\d+)*$') + + NAME_MATCHER = re.compile('^[0-9A-Z]([0-9A-Z_.-]*[0-9A-Z])?$', re.I) + + VERSION_MATCHER = PEP440_VERSION_RE + + SUMMARY_MATCHER = re.compile('.{1,2047}') + + METADATA_VERSION = '2.0' + + GENERATOR = 'distlib (%s)' % __version__ + + MANDATORY_KEYS = { + 'name': (), + 'version': (), + 'summary': ('legacy',), + } + + INDEX_KEYS = ('name version license summary description author ' + 'author_email keywords platform home_page classifiers ' + 'download_url') + + DEPENDENCY_KEYS = ('extras run_requires test_requires build_requires ' + 'dev_requires provides meta_requires obsoleted_by ' + 'supports_environments') + + SYNTAX_VALIDATORS = { + 'metadata_version': (METADATA_VERSION_MATCHER, ()), + 'name': (NAME_MATCHER, ('legacy',)), + 'version': (VERSION_MATCHER, ('legacy',)), + 'summary': (SUMMARY_MATCHER, ('legacy',)), + } + + __slots__ = ('_legacy', '_data', 'scheme') + + def __init__(self, path=None, fileobj=None, mapping=None, + scheme='default'): + if [path, fileobj, mapping].count(None) < 2: + raise TypeError('path, fileobj and mapping are exclusive') + self._legacy = None + self._data = None + self.scheme = scheme + #import pdb; pdb.set_trace() + if mapping is not None: + try: + self._validate_mapping(mapping, scheme) + self._data = mapping + except MetadataUnrecognizedVersionError: + self._legacy = LegacyMetadata(mapping=mapping, scheme=scheme) + self.validate() + else: + data = None + if path: + with open(path, 'rb') as f: + data = f.read() + elif fileobj: + data = fileobj.read() + if data is None: + # Initialised with no args - to be added + self._data = { + 'metadata_version': self.METADATA_VERSION, + 'generator': self.GENERATOR, + } + else: + if not isinstance(data, text_type): + data = data.decode('utf-8') + try: + self._data = json.loads(data) + self._validate_mapping(self._data, scheme) + except ValueError: + # Note: MetadataUnrecognizedVersionError does not + # inherit from ValueError (it's a DistlibException, + # which should not inherit from ValueError). + # The ValueError comes from the json.load - if that + # succeeds and we get a validation error, we want + # that to propagate + self._legacy = LegacyMetadata(fileobj=StringIO(data), + scheme=scheme) + self.validate() + + common_keys = set(('name', 'version', 'license', 'keywords', 'summary')) + + none_list = (None, list) + none_dict = (None, dict) + + mapped_keys = { + 'run_requires': ('Requires-Dist', list), + 'build_requires': ('Setup-Requires-Dist', list), + 'dev_requires': none_list, + 'test_requires': none_list, + 'meta_requires': none_list, + 'extras': ('Provides-Extra', list), + 'modules': none_list, + 'namespaces': none_list, + 'exports': none_dict, + 'commands': none_dict, + 'classifiers': ('Classifier', list), + 'source_url': ('Download-URL', None), + 'metadata_version': ('Metadata-Version', None), + } + + del none_list, none_dict + + def __getattribute__(self, key): + common = object.__getattribute__(self, 'common_keys') + mapped = object.__getattribute__(self, 'mapped_keys') + if key in mapped: + lk, maker = mapped[key] + if self._legacy: + if lk is None: + result = None if maker is None else maker() + else: + result = self._legacy.get(lk) + else: + value = None if maker is None else maker() + if key not in ('commands', 'exports', 'modules', 'namespaces', + 'classifiers'): + result = self._data.get(key, value) + else: + # special cases for PEP 459 + sentinel = object() + result = sentinel + d = self._data.get('extensions') + if d: + if key == 'commands': + result = d.get('python.commands', value) + elif key == 'classifiers': + d = d.get('python.details') + if d: + result = d.get(key, value) + else: + d = d.get('python.exports') + if d: + result = d.get(key, value) + if result is sentinel: + result = value + elif key not in common: + result = object.__getattribute__(self, key) + elif self._legacy: + result = self._legacy.get(key) + else: + result = self._data.get(key) + return result + + def _validate_value(self, key, value, scheme=None): + if key in self.SYNTAX_VALIDATORS: + pattern, exclusions = self.SYNTAX_VALIDATORS[key] + if (scheme or self.scheme) not in exclusions: + m = pattern.match(value) + if not m: + raise MetadataInvalidError('%r is an invalid value for ' + 'the %r property' % (value, + key)) + + def __setattr__(self, key, value): + self._validate_value(key, value) + common = object.__getattribute__(self, 'common_keys') + mapped = object.__getattribute__(self, 'mapped_keys') + if key in mapped: + lk, _ = mapped[key] + if self._legacy: + if lk is None: + raise NotImplementedError + self._legacy[lk] = value + elif key not in ('commands', 'exports', 'modules', 'namespaces', + 'classifiers'): + self._data[key] = value + else: + # special cases for PEP 459 + d = self._data.setdefault('extensions', {}) + if key == 'commands': + d['python.commands'] = value + elif key == 'classifiers': + d = d.setdefault('python.details', {}) + d[key] = value + else: + d = d.setdefault('python.exports', {}) + d[key] = value + elif key not in common: + object.__setattr__(self, key, value) + else: + if key == 'keywords': + if isinstance(value, string_types): + value = value.strip() + if value: + value = value.split() + else: + value = [] + if self._legacy: + self._legacy[key] = value + else: + self._data[key] = value + + @property + def name_and_version(self): + return _get_name_and_version(self.name, self.version, True) + + @property + def provides(self): + if self._legacy: + result = self._legacy['Provides-Dist'] + else: + result = self._data.setdefault('provides', []) + s = '%s (%s)' % (self.name, self.version) + if s not in result: + result.append(s) + return result + + @provides.setter + def provides(self, value): + if self._legacy: + self._legacy['Provides-Dist'] = value + else: + self._data['provides'] = value + + def get_requirements(self, reqts, extras=None, env=None): + """ + Base method to get dependencies, given a set of extras + to satisfy and an optional environment context. + :param reqts: A list of sometimes-wanted dependencies, + perhaps dependent on extras and environment. + :param extras: A list of optional components being requested. + :param env: An optional environment for marker evaluation. + """ + if self._legacy: + result = reqts + else: + result = [] + extras = get_extras(extras or [], self.extras) + for d in reqts: + if 'extra' not in d and 'environment' not in d: + # unconditional + include = True + else: + if 'extra' not in d: + # Not extra-dependent - only environment-dependent + include = True + else: + include = d.get('extra') in extras + if include: + # Not excluded because of extras, check environment + marker = d.get('environment') + if marker: + include = interpret(marker, env) + if include: + result.extend(d['requires']) + for key in ('build', 'dev', 'test'): + e = ':%s:' % key + if e in extras: + extras.remove(e) + # A recursive call, but it should terminate since 'test' + # has been removed from the extras + reqts = self._data.get('%s_requires' % key, []) + result.extend(self.get_requirements(reqts, extras=extras, + env=env)) + return result + + @property + def dictionary(self): + if self._legacy: + return self._from_legacy() + return self._data + + @property + def dependencies(self): + if self._legacy: + raise NotImplementedError + else: + return extract_by_key(self._data, self.DEPENDENCY_KEYS) + + @dependencies.setter + def dependencies(self, value): + if self._legacy: + raise NotImplementedError + else: + self._data.update(value) + + def _validate_mapping(self, mapping, scheme): + if mapping.get('metadata_version') != self.METADATA_VERSION: + raise MetadataUnrecognizedVersionError() + missing = [] + for key, exclusions in self.MANDATORY_KEYS.items(): + if key not in mapping: + if scheme not in exclusions: + missing.append(key) + if missing: + msg = 'Missing metadata items: %s' % ', '.join(missing) + raise MetadataMissingError(msg) + for k, v in mapping.items(): + self._validate_value(k, v, scheme) + + def validate(self): + if self._legacy: + missing, warnings = self._legacy.check(True) + if missing or warnings: + logger.warning('Metadata: missing: %s, warnings: %s', + missing, warnings) + else: + self._validate_mapping(self._data, self.scheme) + + def todict(self): + if self._legacy: + return self._legacy.todict(True) + else: + result = extract_by_key(self._data, self.INDEX_KEYS) + return result + + def _from_legacy(self): + assert self._legacy and not self._data + result = { + 'metadata_version': self.METADATA_VERSION, + 'generator': self.GENERATOR, + } + lmd = self._legacy.todict(True) # skip missing ones + for k in ('name', 'version', 'license', 'summary', 'description', + 'classifier'): + if k in lmd: + if k == 'classifier': + nk = 'classifiers' + else: + nk = k + result[nk] = lmd[k] + kw = lmd.get('Keywords', []) + if kw == ['']: + kw = [] + result['keywords'] = kw + keys = (('requires_dist', 'run_requires'), + ('setup_requires_dist', 'build_requires')) + for ok, nk in keys: + if ok in lmd and lmd[ok]: + result[nk] = [{'requires': lmd[ok]}] + result['provides'] = self.provides + author = {} + maintainer = {} + return result + + LEGACY_MAPPING = { + 'name': 'Name', + 'version': 'Version', + 'license': 'License', + 'summary': 'Summary', + 'description': 'Description', + 'classifiers': 'Classifier', + } + + def _to_legacy(self): + def process_entries(entries): + reqts = set() + for e in entries: + extra = e.get('extra') + env = e.get('environment') + rlist = e['requires'] + for r in rlist: + if not env and not extra: + reqts.add(r) + else: + marker = '' + if extra: + marker = 'extra == "%s"' % extra + if env: + if marker: + marker = '(%s) and %s' % (env, marker) + else: + marker = env + reqts.add(';'.join((r, marker))) + return reqts + + assert self._data and not self._legacy + result = LegacyMetadata() + nmd = self._data + for nk, ok in self.LEGACY_MAPPING.items(): + if nk in nmd: + result[ok] = nmd[nk] + r1 = process_entries(self.run_requires + self.meta_requires) + r2 = process_entries(self.build_requires + self.dev_requires) + if self.extras: + result['Provides-Extra'] = sorted(self.extras) + result['Requires-Dist'] = sorted(r1) + result['Setup-Requires-Dist'] = sorted(r2) + # TODO: other fields such as contacts + return result + + def write(self, path=None, fileobj=None, legacy=False, skip_unknown=True): + if [path, fileobj].count(None) != 1: + raise ValueError('Exactly one of path and fileobj is needed') + self.validate() + if legacy: + if self._legacy: + legacy_md = self._legacy + else: + legacy_md = self._to_legacy() + if path: + legacy_md.write(path, skip_unknown=skip_unknown) + else: + legacy_md.write_file(fileobj, skip_unknown=skip_unknown) + else: + if self._legacy: + d = self._from_legacy() + else: + d = self._data + if fileobj: + json.dump(d, fileobj, ensure_ascii=True, indent=2, + sort_keys=True) + else: + with codecs.open(path, 'w', 'utf-8') as f: + json.dump(d, f, ensure_ascii=True, indent=2, + sort_keys=True) + + def add_requirements(self, requirements): + if self._legacy: + self._legacy.add_requirements(requirements) + else: + run_requires = self._data.setdefault('run_requires', []) + always = None + for entry in run_requires: + if 'environment' not in entry and 'extra' not in entry: + always = entry + break + if always is None: + always = { 'requires': requirements } + run_requires.insert(0, always) + else: + rset = set(always['requires']) | set(requirements) + always['requires'] = sorted(rset) + + def __repr__(self): + name = self.name or '(no name)' + version = self.version or 'no version' + return '<%s %s %s (%s)>' % (self.__class__.__name__, + self.metadata_version, name, version) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/metadata.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e3c7d825cc8ba2e065d80fde7ad3e11f140153bb GIT binary patch literal 34663 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 Jr%}ZU{|`tHY<&O# literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.py new file mode 100644 index 0000000..9dd8ca0 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.py @@ -0,0 +1,350 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2013-2016 Vinay Sajip. +# Licensed to the Python Software Foundation under a contributor agreement. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +from __future__ import unicode_literals + +import bisect +import io +import logging +import os +import pkgutil +import shutil +import sys +import types +import zipimport + +from . import DistlibException +from .util import cached_property, get_cache_base, path_to_cache_dir, Cache + +logger = logging.getLogger(__name__) + + +cache = None # created when needed + + +class ResourceCache(Cache): + def __init__(self, base=None): + if base is None: + # Use native string to avoid issues on 2.x: see Python #20140. + base = os.path.join(get_cache_base(), str('resource-cache')) + super(ResourceCache, self).__init__(base) + + def is_stale(self, resource, path): + """ + Is the cache stale for the given resource? + + :param resource: The :class:`Resource` being cached. + :param path: The path of the resource in the cache. + :return: True if the cache is stale. + """ + # Cache invalidation is a hard problem :-) + return True + + def get(self, resource): + """ + Get a resource into the cache, + + :param resource: A :class:`Resource` instance. + :return: The pathname of the resource in the cache. + """ + prefix, path = resource.finder.get_cache_info(resource) + if prefix is None: + result = path + else: + result = os.path.join(self.base, self.prefix_to_dir(prefix), path) + dirname = os.path.dirname(result) + if not os.path.isdir(dirname): + os.makedirs(dirname) + if not os.path.exists(result): + stale = True + else: + stale = self.is_stale(resource, path) + if stale: + # write the bytes of the resource to the cache location + with open(result, 'wb') as f: + f.write(resource.bytes) + return result + + +class ResourceBase(object): + def __init__(self, finder, name): + self.finder = finder + self.name = name + + +class Resource(ResourceBase): + """ + A class representing an in-package resource, such as a data file. This is + not normally instantiated by user code, but rather by a + :class:`ResourceFinder` which manages the resource. + """ + is_container = False # Backwards compatibility + + def as_stream(self): + """ + Get the resource as a stream. + + This is not a property to make it obvious that it returns a new stream + each time. + """ + return self.finder.get_stream(self) + + @cached_property + def file_path(self): + global cache + if cache is None: + cache = ResourceCache() + return cache.get(self) + + @cached_property + def bytes(self): + return self.finder.get_bytes(self) + + @cached_property + def size(self): + return self.finder.get_size(self) + + +class ResourceContainer(ResourceBase): + is_container = True # Backwards compatibility + + @cached_property + def resources(self): + return self.finder.get_resources(self) + + +class ResourceFinder(object): + """ + Resource finder for file system resources. + """ + + if sys.platform.startswith('java'): + skipped_extensions = ('.pyc', '.pyo', '.class') + else: + skipped_extensions = ('.pyc', '.pyo') + + def __init__(self, module): + self.module = module + self.loader = getattr(module, '__loader__', None) + self.base = os.path.dirname(getattr(module, '__file__', '')) + + def _adjust_path(self, path): + return os.path.realpath(path) + + def _make_path(self, resource_name): + # Issue #50: need to preserve type of path on Python 2.x + # like os.path._get_sep + if isinstance(resource_name, bytes): # should only happen on 2.x + sep = b'/' + else: + sep = '/' + parts = resource_name.split(sep) + parts.insert(0, self.base) + result = os.path.join(*parts) + return self._adjust_path(result) + + def _find(self, path): + return os.path.exists(path) + + def get_cache_info(self, resource): + return None, resource.path + + def find(self, resource_name): + path = self._make_path(resource_name) + if not self._find(path): + result = None + else: + if self._is_directory(path): + result = ResourceContainer(self, resource_name) + else: + result = Resource(self, resource_name) + result.path = path + return result + + def get_stream(self, resource): + return open(resource.path, 'rb') + + def get_bytes(self, resource): + with open(resource.path, 'rb') as f: + return f.read() + + def get_size(self, resource): + return os.path.getsize(resource.path) + + def get_resources(self, resource): + def allowed(f): + return (f != '__pycache__' and not + f.endswith(self.skipped_extensions)) + return set([f for f in os.listdir(resource.path) if allowed(f)]) + + def is_container(self, resource): + return self._is_directory(resource.path) + + _is_directory = staticmethod(os.path.isdir) + + def iterator(self, resource_name): + resource = self.find(resource_name) + if resource is not None: + todo = [resource] + while todo: + resource = todo.pop(0) + yield resource + if resource.is_container: + rname = resource.name + for name in resource.resources: + if not rname: + new_name = name + else: + new_name = '/'.join([rname, name]) + child = self.find(new_name) + if child.is_container: + todo.append(child) + else: + yield child + + +class ZipResourceFinder(ResourceFinder): + """ + Resource finder for resources in .zip files. + """ + def __init__(self, module): + super(ZipResourceFinder, self).__init__(module) + archive = self.loader.archive + self.prefix_len = 1 + len(archive) + # PyPy doesn't have a _files attr on zipimporter, and you can't set one + if hasattr(self.loader, '_files'): + self._files = self.loader._files + else: + self._files = zipimport._zip_directory_cache[archive] + self.index = sorted(self._files) + + def _adjust_path(self, path): + return path + + def _find(self, path): + path = path[self.prefix_len:] + if path in self._files: + result = True + else: + if path and path[-1] != os.sep: + path = path + os.sep + i = bisect.bisect(self.index, path) + try: + result = self.index[i].startswith(path) + except IndexError: + result = False + if not result: + logger.debug('_find failed: %r %r', path, self.loader.prefix) + else: + logger.debug('_find worked: %r %r', path, self.loader.prefix) + return result + + def get_cache_info(self, resource): + prefix = self.loader.archive + path = resource.path[1 + len(prefix):] + return prefix, path + + def get_bytes(self, resource): + return self.loader.get_data(resource.path) + + def get_stream(self, resource): + return io.BytesIO(self.get_bytes(resource)) + + def get_size(self, resource): + path = resource.path[self.prefix_len:] + return self._files[path][3] + + def get_resources(self, resource): + path = resource.path[self.prefix_len:] + if path and path[-1] != os.sep: + path += os.sep + plen = len(path) + result = set() + i = bisect.bisect(self.index, path) + while i < len(self.index): + if not self.index[i].startswith(path): + break + s = self.index[i][plen:] + result.add(s.split(os.sep, 1)[0]) # only immediate children + i += 1 + return result + + def _is_directory(self, path): + path = path[self.prefix_len:] + if path and path[-1] != os.sep: + path += os.sep + i = bisect.bisect(self.index, path) + try: + result = self.index[i].startswith(path) + except IndexError: + result = False + return result + +_finder_registry = { + type(None): ResourceFinder, + zipimport.zipimporter: ZipResourceFinder +} + +try: + import _frozen_importlib + _finder_registry[_frozen_importlib.SourceFileLoader] = ResourceFinder + _finder_registry[_frozen_importlib.FileFinder] = ResourceFinder +except (ImportError, AttributeError): + pass + + +def register_finder(loader, finder_maker): + _finder_registry[type(loader)] = finder_maker + +_finder_cache = {} + + +def finder(package): + """ + Return a resource finder for a package. + :param package: The name of the package. + :return: A :class:`ResourceFinder` instance for the package. + """ + if package in _finder_cache: + result = _finder_cache[package] + else: + if package not in sys.modules: + __import__(package) + module = sys.modules[package] + path = getattr(module, '__path__', None) + if path is None: + raise DistlibException('You cannot get a finder for a module, ' + 'only for a package') + loader = getattr(module, '__loader__', None) + finder_maker = _finder_registry.get(type(loader)) + if finder_maker is None: + raise DistlibException('Unable to locate finder for %r' % package) + result = finder_maker(module) + _finder_cache[package] = result + return result + + +_dummy_module = types.ModuleType(str('__dummy__')) + + +def finder_for_path(path): + """ + Return a resource finder for a path, which should represent a container. + + :param path: The path. + :return: A :class:`ResourceFinder` instance for the path. + """ + result = None + # calls any path hooks, gets importer into cache + pkgutil.get_importer(path) + loader = sys.path_importer_cache.get(path) + finder = _finder_registry.get(type(loader)) + if finder: + module = _dummy_module + module.__file__ = os.path.join(path, '') + module.__loader__ = loader + result = finder(module) + return result diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/resources.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0a8521bee622d2485b807e210bfc9777f9325c65 GIT binary patch literal 13596 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 + + + + + + + + + + + +'''.strip() + +# check if Python is called on the first line with this expression +FIRST_LINE_RE = re.compile(b'^#!.*pythonw?[0-9.]*([ \t].*)?$') +SCRIPT_TEMPLATE = '''# -*- coding: utf-8 -*- +if __name__ == '__main__': + import sys, re + + def _resolve(module, func): + __import__(module) + mod = sys.modules[module] + parts = func.split('.') + result = getattr(mod, parts.pop(0)) + for p in parts: + result = getattr(result, p) + return result + + try: + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + + func = _resolve('%(module)s', '%(func)s') + rc = func() # None interpreted as 0 + except Exception as e: # only supporting Python >= 2.6 + sys.stderr.write('%%s\\n' %% e) + rc = 1 + sys.exit(rc) +''' + + +def _enquote_executable(executable): + if ' ' in executable: + # make sure we quote only the executable in case of env + # for example /usr/bin/env "/dir with spaces/bin/jython" + # instead of "/usr/bin/env /dir with spaces/bin/jython" + # otherwise whole + if executable.startswith('/usr/bin/env '): + env, _executable = executable.split(' ', 1) + if ' ' in _executable and not _executable.startswith('"'): + executable = '%s "%s"' % (env, _executable) + else: + if not executable.startswith('"'): + executable = '"%s"' % executable + return executable + + +class ScriptMaker(object): + """ + A class to copy or create scripts from source scripts or callable + specifications. + """ + script_template = SCRIPT_TEMPLATE + + executable = None # for shebangs + + def __init__(self, source_dir, target_dir, add_launchers=True, + dry_run=False, fileop=None): + self.source_dir = source_dir + self.target_dir = target_dir + self.add_launchers = add_launchers + self.force = False + self.clobber = False + # It only makes sense to set mode bits on POSIX. + self.set_mode = (os.name == 'posix') or (os.name == 'java' and + os._name == 'posix') + self.variants = set(('', 'X.Y')) + self._fileop = fileop or FileOperator(dry_run) + + self._is_nt = os.name == 'nt' or ( + os.name == 'java' and os._name == 'nt') + + def _get_alternate_executable(self, executable, options): + if options.get('gui', False) and self._is_nt: # pragma: no cover + dn, fn = os.path.split(executable) + fn = fn.replace('python', 'pythonw') + executable = os.path.join(dn, fn) + return executable + + if sys.platform.startswith('java'): # pragma: no cover + def _is_shell(self, executable): + """ + Determine if the specified executable is a script + (contains a #! line) + """ + try: + with open(executable) as fp: + return fp.read(2) == '#!' + except (OSError, IOError): + logger.warning('Failed to open %s', executable) + return False + + def _fix_jython_executable(self, executable): + if self._is_shell(executable): + # Workaround for Jython is not needed on Linux systems. + import java + + if java.lang.System.getProperty('os.name') == 'Linux': + return executable + elif executable.lower().endswith('jython.exe'): + # Use wrapper exe for Jython on Windows + return executable + return '/usr/bin/env %s' % executable + + def _get_shebang(self, encoding, post_interp=b'', options=None): + enquote = True + if self.executable: + executable = self.executable + enquote = False # assume this will be taken care of + elif not sysconfig.is_python_build(): + executable = get_executable() + elif in_venv(): # pragma: no cover + executable = os.path.join(sysconfig.get_path('scripts'), + 'python%s' % sysconfig.get_config_var('EXE')) + else: # pragma: no cover + executable = os.path.join( + sysconfig.get_config_var('BINDIR'), + 'python%s%s' % (sysconfig.get_config_var('VERSION'), + sysconfig.get_config_var('EXE'))) + if options: + executable = self._get_alternate_executable(executable, options) + + if sys.platform.startswith('java'): # pragma: no cover + executable = self._fix_jython_executable(executable) + # Normalise case for Windows + executable = os.path.normcase(executable) + # If the user didn't specify an executable, it may be necessary to + # cater for executable paths with spaces (not uncommon on Windows) + if enquote: + executable = _enquote_executable(executable) + # Issue #51: don't use fsencode, since we later try to + # check that the shebang is decodable using utf-8. + executable = executable.encode('utf-8') + # in case of IronPython, play safe and enable frames support + if (sys.platform == 'cli' and '-X:Frames' not in post_interp + and '-X:FullFrames' not in post_interp): # pragma: no cover + post_interp += b' -X:Frames' + shebang = b'#!' + executable + post_interp + b'\n' + # Python parser starts to read a script using UTF-8 until + # it gets a #coding:xxx cookie. The shebang has to be the + # first line of a file, the #coding:xxx cookie cannot be + # written before. So the shebang has to be decodable from + # UTF-8. + try: + shebang.decode('utf-8') + except UnicodeDecodeError: # pragma: no cover + raise ValueError( + 'The shebang (%r) is not decodable from utf-8' % shebang) + # If the script is encoded to a custom encoding (use a + # #coding:xxx cookie), the shebang has to be decodable from + # the script encoding too. + if encoding != 'utf-8': + try: + shebang.decode(encoding) + except UnicodeDecodeError: # pragma: no cover + raise ValueError( + 'The shebang (%r) is not decodable ' + 'from the script encoding (%r)' % (shebang, encoding)) + return shebang + + def _get_script_text(self, entry): + return self.script_template % dict(module=entry.prefix, + func=entry.suffix) + + manifest = _DEFAULT_MANIFEST + + def get_manifest(self, exename): + base = os.path.basename(exename) + return self.manifest % base + + def _write_script(self, names, shebang, script_bytes, filenames, ext): + use_launcher = self.add_launchers and self._is_nt + linesep = os.linesep.encode('utf-8') + if not use_launcher: + script_bytes = shebang + linesep + script_bytes + else: # pragma: no cover + if ext == 'py': + launcher = self._get_launcher('t') + else: + launcher = self._get_launcher('w') + stream = BytesIO() + with ZipFile(stream, 'w') as zf: + zf.writestr('__main__.py', script_bytes) + zip_data = stream.getvalue() + script_bytes = launcher + shebang + linesep + zip_data + for name in names: + outname = os.path.join(self.target_dir, name) + if use_launcher: # pragma: no cover + n, e = os.path.splitext(outname) + if e.startswith('.py'): + outname = n + outname = '%s.exe' % outname + try: + self._fileop.write_binary_file(outname, script_bytes) + except Exception: + # Failed writing an executable - it might be in use. + logger.warning('Failed to write executable - trying to ' + 'use .deleteme logic') + dfname = '%s.deleteme' % outname + if os.path.exists(dfname): + os.remove(dfname) # Not allowed to fail here + os.rename(outname, dfname) # nor here + self._fileop.write_binary_file(outname, script_bytes) + logger.debug('Able to replace executable using ' + '.deleteme logic') + try: + os.remove(dfname) + except Exception: + pass # still in use - ignore error + else: + if self._is_nt and not outname.endswith('.' + ext): # pragma: no cover + outname = '%s.%s' % (outname, ext) + if os.path.exists(outname) and not self.clobber: + logger.warning('Skipping existing file %s', outname) + continue + self._fileop.write_binary_file(outname, script_bytes) + if self.set_mode: + self._fileop.set_executable_mode([outname]) + filenames.append(outname) + + def _make_script(self, entry, filenames, options=None): + post_interp = b'' + if options: + args = options.get('interpreter_args', []) + if args: + args = ' %s' % ' '.join(args) + post_interp = args.encode('utf-8') + shebang = self._get_shebang('utf-8', post_interp, options=options) + script = self._get_script_text(entry).encode('utf-8') + name = entry.name + scriptnames = set() + if '' in self.variants: + scriptnames.add(name) + if 'X' in self.variants: + scriptnames.add('%s%s' % (name, sys.version[0])) + if 'X.Y' in self.variants: + scriptnames.add('%s-%s' % (name, sys.version[:3])) + if options and options.get('gui', False): + ext = 'pyw' + else: + ext = 'py' + self._write_script(scriptnames, shebang, script, filenames, ext) + + def _copy_script(self, script, filenames): + adjust = False + script = os.path.join(self.source_dir, convert_path(script)) + outname = os.path.join(self.target_dir, os.path.basename(script)) + if not self.force and not self._fileop.newer(script, outname): + logger.debug('not copying %s (up-to-date)', script) + return + + # Always open the file, but ignore failures in dry-run mode -- + # that way, we'll get accurate feedback if we can read the + # script. + try: + f = open(script, 'rb') + except IOError: # pragma: no cover + if not self.dry_run: + raise + f = None + else: + first_line = f.readline() + if not first_line: # pragma: no cover + logger.warning('%s: %s is an empty file (skipping)', + self.get_command_name(), script) + return + + match = FIRST_LINE_RE.match(first_line.replace(b'\r\n', b'\n')) + if match: + adjust = True + post_interp = match.group(1) or b'' + + if not adjust: + if f: + f.close() + self._fileop.copy_file(script, outname) + if self.set_mode: + self._fileop.set_executable_mode([outname]) + filenames.append(outname) + else: + logger.info('copying and adjusting %s -> %s', script, + self.target_dir) + if not self._fileop.dry_run: + encoding, lines = detect_encoding(f.readline) + f.seek(0) + shebang = self._get_shebang(encoding, post_interp) + if b'pythonw' in first_line: # pragma: no cover + ext = 'pyw' + else: + ext = 'py' + n = os.path.basename(outname) + self._write_script([n], shebang, f.read(), filenames, ext) + if f: + f.close() + + @property + def dry_run(self): + return self._fileop.dry_run + + @dry_run.setter + def dry_run(self, value): + self._fileop.dry_run = value + + if os.name == 'nt' or (os.name == 'java' and os._name == 'nt'): # pragma: no cover + # Executable launcher support. + # Launchers are from https://bitbucket.org/vinay.sajip/simple_launcher/ + + def _get_launcher(self, kind): + if struct.calcsize('P') == 8: # 64-bit + bits = '64' + else: + bits = '32' + name = '%s%s.exe' % (kind, bits) + # Issue 31: don't hardcode an absolute package name, but + # determine it relative to the current package + distlib_package = __name__.rsplit('.', 1)[0] + result = finder(distlib_package).find(name).bytes + return result + + # Public API follows + + def make(self, specification, options=None): + """ + Make a script. + + :param specification: The specification, which is either a valid export + entry specification (to make a script from a + callable) or a filename (to make a script by + copying from a source location). + :param options: A dictionary of options controlling script generation. + :return: A list of all absolute pathnames written to. + """ + filenames = [] + entry = get_export_entry(specification) + if entry is None: + self._copy_script(specification, filenames) + else: + self._make_script(entry, filenames, options=options) + return filenames + + def make_multiple(self, specifications, options=None): + """ + Take a list of specifications and make scripts from them, + :param specifications: A list of specifications. + :return: A list of all absolute pathnames written to, + """ + filenames = [] + for specification in specifications: + filenames.extend(self.make(specification, options)) + return filenames diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/scripts.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/scripts.pyc new file mode 100644 index 0000000000000000000000000000000000000000..82a9ec05837c8899e7153d649fd39d7bf89700b1 GIT binary patch literal 12337 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

    cCam5!j}jO7Ps19?sV&U#*qxz<7n$K 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 P24SC;PdV`a$$|d@Alj9? literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.py new file mode 100644 index 0000000..7e209ec --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.py @@ -0,0 +1,1597 @@ +# +# Copyright (C) 2012-2016 The Python Software Foundation. +# See LICENSE.txt and CONTRIBUTORS.txt. +# +import codecs +from collections import deque +import contextlib +import csv +from glob import iglob as std_iglob +import io +import json +import logging +import os +import py_compile +import re +import shutil +import socket +import ssl +import subprocess +import sys +import tarfile +import tempfile +import textwrap + +try: + import threading +except ImportError: + import dummy_threading as threading +import time + +from . import DistlibException +from .compat import (string_types, text_type, shutil, raw_input, StringIO, + cache_from_source, urlopen, urljoin, httplib, xmlrpclib, + splittype, HTTPHandler, HTTPSHandler as BaseHTTPSHandler, + BaseConfigurator, valid_ident, Container, configparser, + URLError, match_hostname, CertificateError, ZipFile, + fsdecode) + +logger = logging.getLogger(__name__) + +# +# Requirement parsing code for name + optional constraints + optional extras +# +# e.g. 'foo >= 1.2, < 2.0 [bar, baz]' +# +# The regex can seem a bit hairy, so we build it up out of smaller pieces +# which are manageable. +# + +COMMA = r'\s*,\s*' +COMMA_RE = re.compile(COMMA) + +IDENT = r'(\w|[.-])+' +EXTRA_IDENT = r'(\*|:(\*|\w+):|' + IDENT + ')' +VERSPEC = IDENT + r'\*?' + +RELOP = '([<>=!~]=)|[<>]' + +# +# The first relop is optional - if absent, will be taken as '~=' +# +BARE_CONSTRAINTS = ('(' + RELOP + r')?\s*(' + VERSPEC + ')(' + COMMA + '(' + + RELOP + r')\s*(' + VERSPEC + '))*') + +DIRECT_REF = '(from\s+(?P.*))' + +# +# Either the bare constraints or the bare constraints in parentheses +# +CONSTRAINTS = (r'\(\s*(?P' + BARE_CONSTRAINTS + '|' + DIRECT_REF + + r')\s*\)|(?P' + BARE_CONSTRAINTS + '\s*)') + +EXTRA_LIST = EXTRA_IDENT + '(' + COMMA + EXTRA_IDENT + ')*' +EXTRAS = r'\[\s*(?P' + EXTRA_LIST + r')?\s*\]' +REQUIREMENT = ('(?P' + IDENT + r')\s*(' + EXTRAS + r'\s*)?(\s*' + + CONSTRAINTS + ')?$') +REQUIREMENT_RE = re.compile(REQUIREMENT) + +# +# Used to scan through the constraints +# +RELOP_IDENT = '(?P' + RELOP + r')\s*(?P' + VERSPEC + ')' +RELOP_IDENT_RE = re.compile(RELOP_IDENT) + +def parse_requirement(s): + + def get_constraint(m): + d = m.groupdict() + return d['op'], d['vn'] + + result = None + m = REQUIREMENT_RE.match(s) + if m: + d = m.groupdict() + name = d['dn'] + cons = d['c1'] or d['c2'] + if not d['diref']: + url = None + else: + # direct reference + cons = None + url = d['diref'].strip() + if not cons: + cons = None + constr = '' + rs = d['dn'] + else: + if cons[0] not in '<>!=': + cons = '~=' + cons + iterator = RELOP_IDENT_RE.finditer(cons) + cons = [get_constraint(m) for m in iterator] + rs = '%s (%s)' % (name, ', '.join(['%s %s' % con for con in cons])) + if not d['ex']: + extras = None + else: + extras = COMMA_RE.split(d['ex']) + result = Container(name=name, constraints=cons, extras=extras, + requirement=rs, source=s, url=url) + return result + + +def get_resources_dests(resources_root, rules): + """Find destinations for resources files""" + + def get_rel_path(base, path): + # normalizes and returns a lstripped-/-separated path + base = base.replace(os.path.sep, '/') + path = path.replace(os.path.sep, '/') + assert path.startswith(base) + return path[len(base):].lstrip('/') + + + destinations = {} + for base, suffix, dest in rules: + prefix = os.path.join(resources_root, base) + for abs_base in iglob(prefix): + abs_glob = os.path.join(abs_base, suffix) + for abs_path in iglob(abs_glob): + resource_file = get_rel_path(resources_root, abs_path) + if dest is None: # remove the entry if it was here + destinations.pop(resource_file, None) + else: + rel_path = get_rel_path(abs_base, abs_path) + rel_dest = dest.replace(os.path.sep, '/').rstrip('/') + destinations[resource_file] = rel_dest + '/' + rel_path + return destinations + + +def in_venv(): + if hasattr(sys, 'real_prefix'): + # virtualenv venvs + result = True + else: + # PEP 405 venvs + result = sys.prefix != getattr(sys, 'base_prefix', sys.prefix) + return result + + +def get_executable(): +# The __PYVENV_LAUNCHER__ dance is apparently no longer needed, as +# changes to the stub launcher mean that sys.executable always points +# to the stub on OS X +# if sys.platform == 'darwin' and ('__PYVENV_LAUNCHER__' +# in os.environ): +# result = os.environ['__PYVENV_LAUNCHER__'] +# else: +# result = sys.executable +# return result + result = os.path.normcase(sys.executable) + if not isinstance(result, text_type): + result = fsdecode(result) + return result + + +def proceed(prompt, allowed_chars, error_prompt=None, default=None): + p = prompt + while True: + s = raw_input(p) + p = prompt + if not s and default: + s = default + if s: + c = s[0].lower() + if c in allowed_chars: + break + if error_prompt: + p = '%c: %s\n%s' % (c, error_prompt, prompt) + return c + + +def extract_by_key(d, keys): + if isinstance(keys, string_types): + keys = keys.split() + result = {} + for key in keys: + if key in d: + result[key] = d[key] + return result + +def read_exports(stream): + if sys.version_info[0] >= 3: + # needs to be a text stream + stream = codecs.getreader('utf-8')(stream) + # Try to load as JSON, falling back on legacy format + data = stream.read() + stream = StringIO(data) + try: + jdata = json.load(stream) + result = jdata['extensions']['python.exports']['exports'] + for group, entries in result.items(): + for k, v in entries.items(): + s = '%s = %s' % (k, v) + entry = get_export_entry(s) + assert entry is not None + entries[k] = entry + return result + except Exception: + stream.seek(0, 0) + + def read_stream(cp, stream): + if hasattr(cp, 'read_file'): + cp.read_file(stream) + else: + cp.readfp(stream) + + cp = configparser.ConfigParser() + try: + read_stream(cp, stream) + except configparser.MissingSectionHeaderError: + stream.close() + data = textwrap.dedent(data) + stream = StringIO(data) + read_stream(cp, stream) + + result = {} + for key in cp.sections(): + result[key] = entries = {} + for name, value in cp.items(key): + s = '%s = %s' % (name, value) + entry = get_export_entry(s) + assert entry is not None + #entry.dist = self + entries[name] = entry + return result + + +def write_exports(exports, stream): + if sys.version_info[0] >= 3: + # needs to be a text stream + stream = codecs.getwriter('utf-8')(stream) + cp = configparser.ConfigParser() + for k, v in exports.items(): + # TODO check k, v for valid values + cp.add_section(k) + for entry in v.values(): + if entry.suffix is None: + s = entry.prefix + else: + s = '%s:%s' % (entry.prefix, entry.suffix) + if entry.flags: + s = '%s [%s]' % (s, ', '.join(entry.flags)) + cp.set(k, entry.name, s) + cp.write(stream) + + +@contextlib.contextmanager +def tempdir(): + td = tempfile.mkdtemp() + try: + yield td + finally: + shutil.rmtree(td) + +@contextlib.contextmanager +def chdir(d): + cwd = os.getcwd() + try: + os.chdir(d) + yield + finally: + os.chdir(cwd) + + +@contextlib.contextmanager +def socket_timeout(seconds=15): + cto = socket.getdefaulttimeout() + try: + socket.setdefaulttimeout(seconds) + yield + finally: + socket.setdefaulttimeout(cto) + + +class cached_property(object): + def __init__(self, func): + self.func = func + #for attr in ('__name__', '__module__', '__doc__'): + # setattr(self, attr, getattr(func, attr, None)) + + def __get__(self, obj, cls=None): + if obj is None: + return self + value = self.func(obj) + object.__setattr__(obj, self.func.__name__, value) + #obj.__dict__[self.func.__name__] = value = self.func(obj) + return value + +def convert_path(pathname): + """Return 'pathname' as a name that will work on the native filesystem. + + The path is split on '/' and put back together again using the current + directory separator. Needed because filenames in the setup script are + always supplied in Unix style, and have to be converted to the local + convention before we can actually use them in the filesystem. Raises + ValueError on non-Unix-ish systems if 'pathname' either starts or + ends with a slash. + """ + if os.sep == '/': + return pathname + if not pathname: + return pathname + if pathname[0] == '/': + raise ValueError("path '%s' cannot be absolute" % pathname) + if pathname[-1] == '/': + raise ValueError("path '%s' cannot end with '/'" % pathname) + + paths = pathname.split('/') + while os.curdir in paths: + paths.remove(os.curdir) + if not paths: + return os.curdir + return os.path.join(*paths) + + +class FileOperator(object): + def __init__(self, dry_run=False): + self.dry_run = dry_run + self.ensured = set() + self._init_record() + + def _init_record(self): + self.record = False + self.files_written = set() + self.dirs_created = set() + + def record_as_written(self, path): + if self.record: + self.files_written.add(path) + + def newer(self, source, target): + """Tell if the target is newer than the source. + + Returns true if 'source' exists and is more recently modified than + 'target', or if 'source' exists and 'target' doesn't. + + Returns false if both exist and 'target' is the same age or younger + than 'source'. Raise PackagingFileError if 'source' does not exist. + + Note that this test is not very accurate: files created in the same + second will have the same "age". + """ + if not os.path.exists(source): + raise DistlibException("file '%r' does not exist" % + os.path.abspath(source)) + if not os.path.exists(target): + return True + + return os.stat(source).st_mtime > os.stat(target).st_mtime + + def copy_file(self, infile, outfile, check=True): + """Copy a file respecting dry-run and force flags. + """ + self.ensure_dir(os.path.dirname(outfile)) + logger.info('Copying %s to %s', infile, outfile) + if not self.dry_run: + msg = None + if check: + if os.path.islink(outfile): + msg = '%s is a symlink' % outfile + elif os.path.exists(outfile) and not os.path.isfile(outfile): + msg = '%s is a non-regular file' % outfile + if msg: + raise ValueError(msg + ' which would be overwritten') + shutil.copyfile(infile, outfile) + self.record_as_written(outfile) + + def copy_stream(self, instream, outfile, encoding=None): + assert not os.path.isdir(outfile) + self.ensure_dir(os.path.dirname(outfile)) + logger.info('Copying stream %s to %s', instream, outfile) + if not self.dry_run: + if encoding is None: + outstream = open(outfile, 'wb') + else: + outstream = codecs.open(outfile, 'w', encoding=encoding) + try: + shutil.copyfileobj(instream, outstream) + finally: + outstream.close() + self.record_as_written(outfile) + + def write_binary_file(self, path, data): + self.ensure_dir(os.path.dirname(path)) + if not self.dry_run: + with open(path, 'wb') as f: + f.write(data) + self.record_as_written(path) + + def write_text_file(self, path, data, encoding): + self.ensure_dir(os.path.dirname(path)) + if not self.dry_run: + with open(path, 'wb') as f: + f.write(data.encode(encoding)) + self.record_as_written(path) + + def set_mode(self, bits, mask, files): + if os.name == 'posix' or (os.name == 'java' and os._name == 'posix'): + # Set the executable bits (owner, group, and world) on + # all the files specified. + for f in files: + if self.dry_run: + logger.info("changing mode of %s", f) + else: + mode = (os.stat(f).st_mode | bits) & mask + logger.info("changing mode of %s to %o", f, mode) + os.chmod(f, mode) + + set_executable_mode = lambda s, f: s.set_mode(0o555, 0o7777, f) + + def ensure_dir(self, path): + path = os.path.abspath(path) + if path not in self.ensured and not os.path.exists(path): + self.ensured.add(path) + d, f = os.path.split(path) + self.ensure_dir(d) + logger.info('Creating %s' % path) + if not self.dry_run: + os.mkdir(path) + if self.record: + self.dirs_created.add(path) + + def byte_compile(self, path, optimize=False, force=False, prefix=None): + dpath = cache_from_source(path, not optimize) + logger.info('Byte-compiling %s to %s', path, dpath) + if not self.dry_run: + if force or self.newer(path, dpath): + if not prefix: + diagpath = None + else: + assert path.startswith(prefix) + diagpath = path[len(prefix):] + py_compile.compile(path, dpath, diagpath, True) # raise error + self.record_as_written(dpath) + return dpath + + def ensure_removed(self, path): + if os.path.exists(path): + if os.path.isdir(path) and not os.path.islink(path): + logger.debug('Removing directory tree at %s', path) + if not self.dry_run: + shutil.rmtree(path) + if self.record: + if path in self.dirs_created: + self.dirs_created.remove(path) + else: + if os.path.islink(path): + s = 'link' + else: + s = 'file' + logger.debug('Removing %s %s', s, path) + if not self.dry_run: + os.remove(path) + if self.record: + if path in self.files_written: + self.files_written.remove(path) + + def is_writable(self, path): + result = False + while not result: + if os.path.exists(path): + result = os.access(path, os.W_OK) + break + parent = os.path.dirname(path) + if parent == path: + break + path = parent + return result + + def commit(self): + """ + Commit recorded changes, turn off recording, return + changes. + """ + assert self.record + result = self.files_written, self.dirs_created + self._init_record() + return result + + def rollback(self): + if not self.dry_run: + for f in list(self.files_written): + if os.path.exists(f): + os.remove(f) + # dirs should all be empty now, except perhaps for + # __pycache__ subdirs + # reverse so that subdirs appear before their parents + dirs = sorted(self.dirs_created, reverse=True) + for d in dirs: + flist = os.listdir(d) + if flist: + assert flist == ['__pycache__'] + sd = os.path.join(d, flist[0]) + os.rmdir(sd) + os.rmdir(d) # should fail if non-empty + self._init_record() + +def resolve(module_name, dotted_path): + if module_name in sys.modules: + mod = sys.modules[module_name] + else: + mod = __import__(module_name) + if dotted_path is None: + result = mod + else: + parts = dotted_path.split('.') + result = getattr(mod, parts.pop(0)) + for p in parts: + result = getattr(result, p) + return result + + +class ExportEntry(object): + def __init__(self, name, prefix, suffix, flags): + self.name = name + self.prefix = prefix + self.suffix = suffix + self.flags = flags + + @cached_property + def value(self): + return resolve(self.prefix, self.suffix) + + def __repr__(self): + return '' % (self.name, self.prefix, + self.suffix, self.flags) + + def __eq__(self, other): + if not isinstance(other, ExportEntry): + result = False + else: + result = (self.name == other.name and + self.prefix == other.prefix and + self.suffix == other.suffix and + self.flags == other.flags) + return result + + __hash__ = object.__hash__ + + +ENTRY_RE = re.compile(r'''(?P(\w|[-.+])+) + \s*=\s*(?P(\w+)([:\.]\w+)*) + \s*(\[\s*(?P\w+(=\w+)?(,\s*\w+(=\w+)?)*)\s*\])? + ''', re.VERBOSE) + +def get_export_entry(specification): + m = ENTRY_RE.search(specification) + if not m: + result = None + if '[' in specification or ']' in specification: + raise DistlibException('Invalid specification ' + '%r' % specification) + else: + d = m.groupdict() + name = d['name'] + path = d['callable'] + colons = path.count(':') + if colons == 0: + prefix, suffix = path, None + else: + if colons != 1: + raise DistlibException('Invalid specification ' + '%r' % specification) + prefix, suffix = path.split(':') + flags = d['flags'] + if flags is None: + if '[' in specification or ']' in specification: + raise DistlibException('Invalid specification ' + '%r' % specification) + flags = [] + else: + flags = [f.strip() for f in flags.split(',')] + result = ExportEntry(name, prefix, suffix, flags) + return result + + +def get_cache_base(suffix=None): + """ + Return the default base location for distlib caches. If the directory does + not exist, it is created. Use the suffix provided for the base directory, + and default to '.distlib' if it isn't provided. + + On Windows, if LOCALAPPDATA is defined in the environment, then it is + assumed to be a directory, and will be the parent directory of the result. + On POSIX, and on Windows if LOCALAPPDATA is not defined, the user's home + directory - using os.expanduser('~') - will be the parent directory of + the result. + + The result is just the directory '.distlib' in the parent directory as + determined above, or with the name specified with ``suffix``. + """ + if suffix is None: + suffix = '.distlib' + if os.name == 'nt' and 'LOCALAPPDATA' in os.environ: + result = os.path.expandvars('$localappdata') + else: + # Assume posix, or old Windows + result = os.path.expanduser('~') + # we use 'isdir' instead of 'exists', because we want to + # fail if there's a file with that name + if os.path.isdir(result): + usable = os.access(result, os.W_OK) + if not usable: + logger.warning('Directory exists but is not writable: %s', result) + else: + try: + os.makedirs(result) + usable = True + except OSError: + logger.warning('Unable to create %s', result, exc_info=True) + usable = False + if not usable: + result = tempfile.mkdtemp() + logger.warning('Default location unusable, using %s', result) + return os.path.join(result, suffix) + + +def path_to_cache_dir(path): + """ + Convert an absolute path to a directory name for use in a cache. + + The algorithm used is: + + #. On Windows, any ``':'`` in the drive is replaced with ``'---'``. + #. Any occurrence of ``os.sep`` is replaced with ``'--'``. + #. ``'.cache'`` is appended. + """ + d, p = os.path.splitdrive(os.path.abspath(path)) + if d: + d = d.replace(':', '---') + p = p.replace(os.sep, '--') + return d + p + '.cache' + + +def ensure_slash(s): + if not s.endswith('/'): + return s + '/' + return s + + +def parse_credentials(netloc): + username = password = None + if '@' in netloc: + prefix, netloc = netloc.split('@', 1) + if ':' not in prefix: + username = prefix + else: + username, password = prefix.split(':', 1) + return username, password, netloc + + +def get_process_umask(): + result = os.umask(0o22) + os.umask(result) + return result + +def is_string_sequence(seq): + result = True + i = None + for i, s in enumerate(seq): + if not isinstance(s, string_types): + result = False + break + assert i is not None + return result + +PROJECT_NAME_AND_VERSION = re.compile('([a-z0-9_]+([.-][a-z_][a-z0-9_]*)*)-' + '([a-z0-9_.+-]+)', re.I) +PYTHON_VERSION = re.compile(r'-py(\d\.?\d?)') + + +def split_filename(filename, project_name=None): + """ + Extract name, version, python version from a filename (no extension) + + Return name, version, pyver or None + """ + result = None + pyver = None + m = PYTHON_VERSION.search(filename) + if m: + pyver = m.group(1) + filename = filename[:m.start()] + if project_name and len(filename) > len(project_name) + 1: + m = re.match(re.escape(project_name) + r'\b', filename) + if m: + n = m.end() + result = filename[:n], filename[n + 1:], pyver + if result is None: + m = PROJECT_NAME_AND_VERSION.match(filename) + if m: + result = m.group(1), m.group(3), pyver + return result + +# Allow spaces in name because of legacy dists like "Twisted Core" +NAME_VERSION_RE = re.compile(r'(?P[\w .-]+)\s*' + r'\(\s*(?P[^\s)]+)\)$') + +def parse_name_and_version(p): + """ + A utility method used to get name and version from a string. + + From e.g. a Provides-Dist value. + + :param p: A value in a form 'foo (1.0)' + :return: The name and version as a tuple. + """ + m = NAME_VERSION_RE.match(p) + if not m: + raise DistlibException('Ill-formed name/version string: \'%s\'' % p) + d = m.groupdict() + return d['name'].strip().lower(), d['ver'] + +def get_extras(requested, available): + result = set() + requested = set(requested or []) + available = set(available or []) + if '*' in requested: + requested.remove('*') + result |= available + for r in requested: + if r == '-': + result.add(r) + elif r.startswith('-'): + unwanted = r[1:] + if unwanted not in available: + logger.warning('undeclared extra: %s' % unwanted) + if unwanted in result: + result.remove(unwanted) + else: + if r not in available: + logger.warning('undeclared extra: %s' % r) + result.add(r) + return result +# +# Extended metadata functionality +# + +def _get_external_data(url): + result = {} + try: + # urlopen might fail if it runs into redirections, + # because of Python issue #13696. Fixed in locators + # using a custom redirect handler. + resp = urlopen(url) + headers = resp.info() + ct = headers.get('Content-Type') + if not ct.startswith('application/json'): + logger.debug('Unexpected response for JSON request: %s', ct) + else: + reader = codecs.getreader('utf-8')(resp) + #data = reader.read().decode('utf-8') + #result = json.loads(data) + result = json.load(reader) + except Exception as e: + logger.exception('Failed to get external data for %s: %s', url, e) + return result + +_external_data_base_url = 'https://www.red-dove.com/pypi/projects/' + +def get_project_data(name): + url = '%s/%s/project.json' % (name[0].upper(), name) + url = urljoin(_external_data_base_url, url) + result = _get_external_data(url) + return result + +def get_package_data(name, version): + url = '%s/%s/package-%s.json' % (name[0].upper(), name, version) + url = urljoin(_external_data_base_url, url) + return _get_external_data(url) + + +class Cache(object): + """ + A class implementing a cache for resources that need to live in the file system + e.g. shared libraries. This class was moved from resources to here because it + could be used by other modules, e.g. the wheel module. + """ + + def __init__(self, base): + """ + Initialise an instance. + + :param base: The base directory where the cache should be located. + """ + # we use 'isdir' instead of 'exists', because we want to + # fail if there's a file with that name + if not os.path.isdir(base): + os.makedirs(base) + if (os.stat(base).st_mode & 0o77) != 0: + logger.warning('Directory \'%s\' is not private', base) + self.base = os.path.abspath(os.path.normpath(base)) + + def prefix_to_dir(self, prefix): + """ + Converts a resource prefix to a directory name in the cache. + """ + return path_to_cache_dir(prefix) + + def clear(self): + """ + Clear the cache. + """ + not_removed = [] + for fn in os.listdir(self.base): + fn = os.path.join(self.base, fn) + try: + if os.path.islink(fn) or os.path.isfile(fn): + os.remove(fn) + elif os.path.isdir(fn): + shutil.rmtree(fn) + except Exception: + not_removed.append(fn) + return not_removed + + +class EventMixin(object): + """ + A very simple publish/subscribe system. + """ + def __init__(self): + self._subscribers = {} + + def add(self, event, subscriber, append=True): + """ + Add a subscriber for an event. + + :param event: The name of an event. + :param subscriber: The subscriber to be added (and called when the + event is published). + :param append: Whether to append or prepend the subscriber to an + existing subscriber list for the event. + """ + subs = self._subscribers + if event not in subs: + subs[event] = deque([subscriber]) + else: + sq = subs[event] + if append: + sq.append(subscriber) + else: + sq.appendleft(subscriber) + + def remove(self, event, subscriber): + """ + Remove a subscriber for an event. + + :param event: The name of an event. + :param subscriber: The subscriber to be removed. + """ + subs = self._subscribers + if event not in subs: + raise ValueError('No subscribers: %r' % event) + subs[event].remove(subscriber) + + def get_subscribers(self, event): + """ + Return an iterator for the subscribers for an event. + :param event: The event to return subscribers for. + """ + return iter(self._subscribers.get(event, ())) + + def publish(self, event, *args, **kwargs): + """ + Publish a event and return a list of values returned by its + subscribers. + + :param event: The event to publish. + :param args: The positional arguments to pass to the event's + subscribers. + :param kwargs: The keyword arguments to pass to the event's + subscribers. + """ + result = [] + for subscriber in self.get_subscribers(event): + try: + value = subscriber(event, *args, **kwargs) + except Exception: + logger.exception('Exception during event publication') + value = None + result.append(value) + logger.debug('publish %s: args = %s, kwargs = %s, result = %s', + event, args, kwargs, result) + return result + +# +# Simple sequencing +# +class Sequencer(object): + def __init__(self): + self._preds = {} + self._succs = {} + self._nodes = set() # nodes with no preds/succs + + def add_node(self, node): + self._nodes.add(node) + + def remove_node(self, node, edges=False): + if node in self._nodes: + self._nodes.remove(node) + if edges: + for p in set(self._preds.get(node, ())): + self.remove(p, node) + for s in set(self._succs.get(node, ())): + self.remove(node, s) + # Remove empties + for k, v in list(self._preds.items()): + if not v: + del self._preds[k] + for k, v in list(self._succs.items()): + if not v: + del self._succs[k] + + def add(self, pred, succ): + assert pred != succ + self._preds.setdefault(succ, set()).add(pred) + self._succs.setdefault(pred, set()).add(succ) + + def remove(self, pred, succ): + assert pred != succ + try: + preds = self._preds[succ] + succs = self._succs[pred] + except KeyError: + raise ValueError('%r not a successor of anything' % succ) + try: + preds.remove(pred) + succs.remove(succ) + except KeyError: + raise ValueError('%r not a successor of %r' % (succ, pred)) + + def is_step(self, step): + return (step in self._preds or step in self._succs or + step in self._nodes) + + def get_steps(self, final): + if not self.is_step(final): + raise ValueError('Unknown: %r' % final) + result = [] + todo = [] + seen = set() + todo.append(final) + while todo: + step = todo.pop(0) + if step in seen: + # if a step was already seen, + # move it to the end (so it will appear earlier + # when reversed on return) ... but not for the + # final step, as that would be confusing for + # users + if step != final: + result.remove(step) + result.append(step) + else: + seen.add(step) + result.append(step) + preds = self._preds.get(step, ()) + todo.extend(preds) + return reversed(result) + + @property + def strong_connections(self): + #http://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm + index_counter = [0] + stack = [] + lowlinks = {} + index = {} + result = [] + + graph = self._succs + + def strongconnect(node): + # set the depth index for this node to the smallest unused index + index[node] = index_counter[0] + lowlinks[node] = index_counter[0] + index_counter[0] += 1 + stack.append(node) + + # Consider successors + try: + successors = graph[node] + except Exception: + successors = [] + for successor in successors: + if successor not in lowlinks: + # Successor has not yet been visited + strongconnect(successor) + lowlinks[node] = min(lowlinks[node],lowlinks[successor]) + elif successor in stack: + # the successor is in the stack and hence in the current + # strongly connected component (SCC) + lowlinks[node] = min(lowlinks[node],index[successor]) + + # If `node` is a root node, pop the stack and generate an SCC + if lowlinks[node] == index[node]: + connected_component = [] + + while True: + successor = stack.pop() + connected_component.append(successor) + if successor == node: break + component = tuple(connected_component) + # storing the result + result.append(component) + + for node in graph: + if node not in lowlinks: + strongconnect(node) + + return result + + @property + def dot(self): + result = ['digraph G {'] + for succ in self._preds: + preds = self._preds[succ] + for pred in preds: + result.append(' %s -> %s;' % (pred, succ)) + for node in self._nodes: + result.append(' %s;' % node) + result.append('}') + return '\n'.join(result) + +# +# Unarchiving functionality for zip, tar, tgz, tbz, whl +# + +ARCHIVE_EXTENSIONS = ('.tar.gz', '.tar.bz2', '.tar', '.zip', + '.tgz', '.tbz', '.whl') + +def unarchive(archive_filename, dest_dir, format=None, check=True): + + def check_path(path): + if not isinstance(path, text_type): + path = path.decode('utf-8') + p = os.path.abspath(os.path.join(dest_dir, path)) + if not p.startswith(dest_dir) or p[plen] != os.sep: + raise ValueError('path outside destination: %r' % p) + + dest_dir = os.path.abspath(dest_dir) + plen = len(dest_dir) + archive = None + if format is None: + if archive_filename.endswith(('.zip', '.whl')): + format = 'zip' + elif archive_filename.endswith(('.tar.gz', '.tgz')): + format = 'tgz' + mode = 'r:gz' + elif archive_filename.endswith(('.tar.bz2', '.tbz')): + format = 'tbz' + mode = 'r:bz2' + elif archive_filename.endswith('.tar'): + format = 'tar' + mode = 'r' + else: + raise ValueError('Unknown format for %r' % archive_filename) + try: + if format == 'zip': + archive = ZipFile(archive_filename, 'r') + if check: + names = archive.namelist() + for name in names: + check_path(name) + else: + archive = tarfile.open(archive_filename, mode) + if check: + names = archive.getnames() + for name in names: + check_path(name) + if format != 'zip' and sys.version_info[0] < 3: + # See Python issue 17153. If the dest path contains Unicode, + # tarfile extraction fails on Python 2.x if a member path name + # contains non-ASCII characters - it leads to an implicit + # bytes -> unicode conversion using ASCII to decode. + for tarinfo in archive.getmembers(): + if not isinstance(tarinfo.name, text_type): + tarinfo.name = tarinfo.name.decode('utf-8') + archive.extractall(dest_dir) + + finally: + if archive: + archive.close() + + +def zip_dir(directory): + """zip a directory tree into a BytesIO object""" + result = io.BytesIO() + dlen = len(directory) + with ZipFile(result, "w") as zf: + for root, dirs, files in os.walk(directory): + for name in files: + full = os.path.join(root, name) + rel = root[dlen:] + dest = os.path.join(rel, name) + zf.write(full, dest) + return result + +# +# Simple progress bar +# + +UNITS = ('', 'K', 'M', 'G','T','P') + + +class Progress(object): + unknown = 'UNKNOWN' + + def __init__(self, minval=0, maxval=100): + assert maxval is None or maxval >= minval + self.min = self.cur = minval + self.max = maxval + self.started = None + self.elapsed = 0 + self.done = False + + def update(self, curval): + assert self.min <= curval + assert self.max is None or curval <= self.max + self.cur = curval + now = time.time() + if self.started is None: + self.started = now + else: + self.elapsed = now - self.started + + def increment(self, incr): + assert incr >= 0 + self.update(self.cur + incr) + + def start(self): + self.update(self.min) + return self + + def stop(self): + if self.max is not None: + self.update(self.max) + self.done = True + + @property + def maximum(self): + return self.unknown if self.max is None else self.max + + @property + def percentage(self): + if self.done: + result = '100 %' + elif self.max is None: + result = ' ?? %' + else: + v = 100.0 * (self.cur - self.min) / (self.max - self.min) + result = '%3d %%' % v + return result + + def format_duration(self, duration): + if (duration <= 0) and self.max is None or self.cur == self.min: + result = '??:??:??' + #elif duration < 1: + # result = '--:--:--' + else: + result = time.strftime('%H:%M:%S', time.gmtime(duration)) + return result + + @property + def ETA(self): + if self.done: + prefix = 'Done' + t = self.elapsed + #import pdb; pdb.set_trace() + else: + prefix = 'ETA ' + if self.max is None: + t = -1 + elif self.elapsed == 0 or (self.cur == self.min): + t = 0 + else: + #import pdb; pdb.set_trace() + t = float(self.max - self.min) + t /= self.cur - self.min + t = (t - 1) * self.elapsed + return '%s: %s' % (prefix, self.format_duration(t)) + + @property + def speed(self): + if self.elapsed == 0: + result = 0.0 + else: + result = (self.cur - self.min) / self.elapsed + for unit in UNITS: + if result < 1000: + break + result /= 1000.0 + return '%d %sB/s' % (result, unit) + +# +# Glob functionality +# + +RICH_GLOB = re.compile(r'\{([^}]*)\}') +_CHECK_RECURSIVE_GLOB = re.compile(r'[^/\\,{]\*\*|\*\*[^/\\,}]') +_CHECK_MISMATCH_SET = re.compile(r'^[^{]*\}|\{[^}]*$') + + +def iglob(path_glob): + """Extended globbing function that supports ** and {opt1,opt2,opt3}.""" + if _CHECK_RECURSIVE_GLOB.search(path_glob): + msg = """invalid glob %r: recursive glob "**" must be used alone""" + raise ValueError(msg % path_glob) + if _CHECK_MISMATCH_SET.search(path_glob): + msg = """invalid glob %r: mismatching set marker '{' or '}'""" + raise ValueError(msg % path_glob) + return _iglob(path_glob) + + +def _iglob(path_glob): + rich_path_glob = RICH_GLOB.split(path_glob, 1) + if len(rich_path_glob) > 1: + assert len(rich_path_glob) == 3, rich_path_glob + prefix, set, suffix = rich_path_glob + for item in set.split(','): + for path in _iglob(''.join((prefix, item, suffix))): + yield path + else: + if '**' not in path_glob: + for item in std_iglob(path_glob): + yield item + else: + prefix, radical = path_glob.split('**', 1) + if prefix == '': + prefix = '.' + if radical == '': + radical = '*' + else: + # we support both + radical = radical.lstrip('/') + radical = radical.lstrip('\\') + for path, dir, files in os.walk(prefix): + path = os.path.normpath(path) + for fn in _iglob(os.path.join(path, radical)): + yield fn + + + +# +# HTTPSConnection which verifies certificates/matches domains +# + +class HTTPSConnection(httplib.HTTPSConnection): + ca_certs = None # set this to the path to the certs file (.pem) + check_domain = True # only used if ca_certs is not None + + # noinspection PyPropertyAccess + def connect(self): + sock = socket.create_connection((self.host, self.port), self.timeout) + if getattr(self, '_tunnel_host', False): + self.sock = sock + self._tunnel() + + if not hasattr(ssl, 'SSLContext'): + # For 2.x + if self.ca_certs: + cert_reqs = ssl.CERT_REQUIRED + else: + cert_reqs = ssl.CERT_NONE + self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, + cert_reqs=cert_reqs, + ssl_version=ssl.PROTOCOL_SSLv23, + ca_certs=self.ca_certs) + else: + context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) + context.options |= ssl.OP_NO_SSLv2 + if self.cert_file: + context.load_cert_chain(self.cert_file, self.key_file) + kwargs = {} + if self.ca_certs: + context.verify_mode = ssl.CERT_REQUIRED + context.load_verify_locations(cafile=self.ca_certs) + if getattr(ssl, 'HAS_SNI', False): + kwargs['server_hostname'] = self.host + self.sock = context.wrap_socket(sock, **kwargs) + if self.ca_certs and self.check_domain: + try: + match_hostname(self.sock.getpeercert(), self.host) + logger.debug('Host verified: %s', self.host) + except CertificateError: + self.sock.shutdown(socket.SHUT_RDWR) + self.sock.close() + raise + +class HTTPSHandler(BaseHTTPSHandler): + def __init__(self, ca_certs, check_domain=True): + BaseHTTPSHandler.__init__(self) + self.ca_certs = ca_certs + self.check_domain = check_domain + + def _conn_maker(self, *args, **kwargs): + """ + This is called to create a connection instance. Normally you'd + pass a connection class to do_open, but it doesn't actually check for + a class, and just expects a callable. As long as we behave just as a + constructor would have, we should be OK. If it ever changes so that + we *must* pass a class, we'll create an UnsafeHTTPSConnection class + which just sets check_domain to False in the class definition, and + choose which one to pass to do_open. + """ + result = HTTPSConnection(*args, **kwargs) + if self.ca_certs: + result.ca_certs = self.ca_certs + result.check_domain = self.check_domain + return result + + def https_open(self, req): + try: + return self.do_open(self._conn_maker, req) + except URLError as e: + if 'certificate verify failed' in str(e.reason): + raise CertificateError('Unable to verify server certificate ' + 'for %s' % req.host) + else: + raise + +# +# To prevent against mixing HTTP traffic with HTTPS (examples: A Man-In-The- +# Middle proxy using HTTP listens on port 443, or an index mistakenly serves +# HTML containing a http://xyz link when it should be https://xyz), +# you can use the following handler class, which does not allow HTTP traffic. +# +# It works by inheriting from HTTPHandler - so build_opener won't add a +# handler for HTTP itself. +# +class HTTPSOnlyHandler(HTTPSHandler, HTTPHandler): + def http_open(self, req): + raise URLError('Unexpected HTTP request on what should be a secure ' + 'connection: %s' % req) + +# +# XML-RPC with timeouts +# + +_ver_info = sys.version_info[:2] + +if _ver_info == (2, 6): + class HTTP(httplib.HTTP): + def __init__(self, host='', port=None, **kwargs): + if port == 0: # 0 means use port 0, not the default port + port = None + self._setup(self._connection_class(host, port, **kwargs)) + + + class HTTPS(httplib.HTTPS): + def __init__(self, host='', port=None, **kwargs): + if port == 0: # 0 means use port 0, not the default port + port = None + self._setup(self._connection_class(host, port, **kwargs)) + + +class Transport(xmlrpclib.Transport): + def __init__(self, timeout, use_datetime=0): + self.timeout = timeout + xmlrpclib.Transport.__init__(self, use_datetime) + + def make_connection(self, host): + h, eh, x509 = self.get_host_info(host) + if _ver_info == (2, 6): + result = HTTP(h, timeout=self.timeout) + else: + if not self._connection or host != self._connection[0]: + self._extra_headers = eh + self._connection = host, httplib.HTTPConnection(h) + result = self._connection[1] + return result + +class SafeTransport(xmlrpclib.SafeTransport): + def __init__(self, timeout, use_datetime=0): + self.timeout = timeout + xmlrpclib.SafeTransport.__init__(self, use_datetime) + + def make_connection(self, host): + h, eh, kwargs = self.get_host_info(host) + if not kwargs: + kwargs = {} + kwargs['timeout'] = self.timeout + if _ver_info == (2, 6): + result = HTTPS(host, None, **kwargs) + else: + if not self._connection or host != self._connection[0]: + self._extra_headers = eh + self._connection = host, httplib.HTTPSConnection(h, None, + **kwargs) + result = self._connection[1] + return result + + +class ServerProxy(xmlrpclib.ServerProxy): + def __init__(self, uri, **kwargs): + self.timeout = timeout = kwargs.pop('timeout', None) + # The above classes only come into play if a timeout + # is specified + if timeout is not None: + scheme, _ = splittype(uri) + use_datetime = kwargs.get('use_datetime', 0) + if scheme == 'https': + tcls = SafeTransport + else: + tcls = Transport + kwargs['transport'] = t = tcls(timeout, use_datetime=use_datetime) + self.transport = t + xmlrpclib.ServerProxy.__init__(self, uri, **kwargs) + +# +# CSV functionality. This is provided because on 2.x, the csv module can't +# handle Unicode. However, we need to deal with Unicode in e.g. RECORD files. +# + +def _csv_open(fn, mode, **kwargs): + if sys.version_info[0] < 3: + mode += 'b' + else: + kwargs['newline'] = '' + return open(fn, mode, **kwargs) + + +class CSVBase(object): + defaults = { + 'delimiter': str(','), # The strs are used because we need native + 'quotechar': str('"'), # str in the csv API (2.x won't take + 'lineterminator': str('\n') # Unicode) + } + + def __enter__(self): + return self + + def __exit__(self, *exc_info): + self.stream.close() + + +class CSVReader(CSVBase): + def __init__(self, **kwargs): + if 'stream' in kwargs: + stream = kwargs['stream'] + if sys.version_info[0] >= 3: + # needs to be a text stream + stream = codecs.getreader('utf-8')(stream) + self.stream = stream + else: + self.stream = _csv_open(kwargs['path'], 'r') + self.reader = csv.reader(self.stream, **self.defaults) + + def __iter__(self): + return self + + def next(self): + result = next(self.reader) + if sys.version_info[0] < 3: + for i, item in enumerate(result): + if not isinstance(item, text_type): + result[i] = item.decode('utf-8') + return result + + __next__ = next + +class CSVWriter(CSVBase): + def __init__(self, fn, **kwargs): + self.stream = _csv_open(fn, 'w') + self.writer = csv.writer(self.stream, **self.defaults) + + def writerow(self, row): + if sys.version_info[0] < 3: + r = [] + for item in row: + if isinstance(item, text_type): + item = item.encode('utf-8') + r.append(item) + row = r + self.writer.writerow(row) + +# +# Configurator functionality +# + +class Configurator(BaseConfigurator): + + value_converters = dict(BaseConfigurator.value_converters) + value_converters['inc'] = 'inc_convert' + + def __init__(self, config, base=None): + super(Configurator, self).__init__(config) + self.base = base or os.getcwd() + + def configure_custom(self, config): + def convert(o): + if isinstance(o, (list, tuple)): + result = type(o)([convert(i) for i in o]) + elif isinstance(o, dict): + if '()' in o: + result = self.configure_custom(o) + else: + result = {} + for k in o: + result[k] = convert(o[k]) + else: + result = self.convert(o) + return result + + c = config.pop('()') + if not callable(c): + c = self.resolve(c) + props = config.pop('.', None) + # Check for valid identifiers + args = config.pop('[]', ()) + if args: + args = tuple([convert(o) for o in args]) + items = [(k, convert(config[k])) for k in config if valid_ident(k)] + kwargs = dict(items) + result = c(*args, **kwargs) + if props: + for n, v in props.items(): + setattr(result, n, convert(v)) + return result + + def __getitem__(self, key): + result = self.config[key] + if isinstance(result, dict) and '()' in result: + self.config[key] = result = self.configure_custom(result) + return result + + def inc_convert(self, value): + """Default converter for the inc:// protocol.""" + if not os.path.isabs(value): + value = os.path.join(self.base, value) + with codecs.open(value, 'r', encoding='utf-8') as f: + result = json.load(f) + return result + +# +# Mixin for running subprocesses and capturing their output +# + +class SubprocessMixin(object): + def __init__(self, verbose=False, progress=None): + self.verbose = verbose + self.progress = progress + + def reader(self, stream, context): + """ + Read lines from a subprocess' output stream and either pass to a progress + callable (if specified) or write progress information to sys.stderr. + """ + progress = self.progress + verbose = self.verbose + while True: + s = stream.readline() + if not s: + break + if progress is not None: + progress(s, context) + else: + if not verbose: + sys.stderr.write('.') + else: + sys.stderr.write(s.decode('utf-8')) + sys.stderr.flush() + stream.close() + + def run_command(self, cmd, **kwargs): + p = subprocess.Popen(cmd, stdout=subprocess.PIPE, + stderr=subprocess.PIPE, **kwargs) + t1 = threading.Thread(target=self.reader, args=(p.stdout, 'stdout')) + t1.start() + t2 = threading.Thread(target=self.reader, args=(p.stderr, 'stderr')) + t2.start() + p.wait() + t1.join() + t2.join() + if self.progress is not None: + self.progress('done.', 'main') + elif self.verbose: + sys.stderr.write('done.\n') + return p diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/util.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bf54c801f947fa555d42a94301993045b9e029fb GIT binary patch literal 55476 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 0 + + def parse(self, s): + raise NotImplementedError('please implement in a subclass') + + def _check_compatible(self, other): + if type(self) != type(other): + raise TypeError('cannot compare %r and %r' % (self, other)) + + def __eq__(self, other): + self._check_compatible(other) + return self._parts == other._parts + + def __ne__(self, other): + return not self.__eq__(other) + + def __lt__(self, other): + self._check_compatible(other) + return self._parts < other._parts + + def __gt__(self, other): + return not (self.__lt__(other) or self.__eq__(other)) + + def __le__(self, other): + return self.__lt__(other) or self.__eq__(other) + + def __ge__(self, other): + return self.__gt__(other) or self.__eq__(other) + + # See http://docs.python.org/reference/datamodel#object.__hash__ + def __hash__(self): + return hash(self._parts) + + def __repr__(self): + return "%s('%s')" % (self.__class__.__name__, self._string) + + def __str__(self): + return self._string + + @property + def is_prerelease(self): + raise NotImplementedError('Please implement in subclasses.') + + +class Matcher(object): + version_class = None + + dist_re = re.compile(r"^(\w[\s\w'.-]*)(\((.*)\))?") + comp_re = re.compile(r'^(<=|>=|<|>|!=|={2,3}|~=)?\s*([^\s,]+)$') + num_re = re.compile(r'^\d+(\.\d+)*$') + + # value is either a callable or the name of a method + _operators = { + '<': lambda v, c, p: v < c, + '>': lambda v, c, p: v > c, + '<=': lambda v, c, p: v == c or v < c, + '>=': lambda v, c, p: v == c or v > c, + '==': lambda v, c, p: v == c, + '===': lambda v, c, p: v == c, + # by default, compatible => >=. + '~=': lambda v, c, p: v == c or v > c, + '!=': lambda v, c, p: v != c, + } + + def __init__(self, s): + if self.version_class is None: + raise ValueError('Please specify a version class') + self._string = s = s.strip() + m = self.dist_re.match(s) + if not m: + raise ValueError('Not valid: %r' % s) + groups = m.groups('') + self.name = groups[0].strip() + self.key = self.name.lower() # for case-insensitive comparisons + clist = [] + if groups[2]: + constraints = [c.strip() for c in groups[2].split(',')] + for c in constraints: + m = self.comp_re.match(c) + if not m: + raise ValueError('Invalid %r in %r' % (c, s)) + groups = m.groups() + op = groups[0] or '~=' + s = groups[1] + if s.endswith('.*'): + if op not in ('==', '!='): + raise ValueError('\'.*\' not allowed for ' + '%r constraints' % op) + # Could be a partial version (e.g. for '2.*') which + # won't parse as a version, so keep it as a string + vn, prefix = s[:-2], True + if not self.num_re.match(vn): + # Just to check that vn is a valid version + self.version_class(vn) + else: + # Should parse as a version, so we can create an + # instance for the comparison + vn, prefix = self.version_class(s), False + clist.append((op, vn, prefix)) + self._parts = tuple(clist) + + def match(self, version): + """ + Check if the provided version matches the constraints. + + :param version: The version to match against this instance. + :type version: Strring or :class:`Version` instance. + """ + if isinstance(version, string_types): + version = self.version_class(version) + for operator, constraint, prefix in self._parts: + f = self._operators.get(operator) + if isinstance(f, string_types): + f = getattr(self, f) + if not f: + msg = ('%r not implemented ' + 'for %s' % (operator, self.__class__.__name__)) + raise NotImplementedError(msg) + if not f(version, constraint, prefix): + return False + return True + + @property + def exact_version(self): + result = None + if len(self._parts) == 1 and self._parts[0][0] in ('==', '==='): + result = self._parts[0][1] + return result + + def _check_compatible(self, other): + if type(self) != type(other) or self.name != other.name: + raise TypeError('cannot compare %s and %s' % (self, other)) + + def __eq__(self, other): + self._check_compatible(other) + return self.key == other.key and self._parts == other._parts + + def __ne__(self, other): + return not self.__eq__(other) + + # See http://docs.python.org/reference/datamodel#object.__hash__ + def __hash__(self): + return hash(self.key) + hash(self._parts) + + def __repr__(self): + return "%s(%r)" % (self.__class__.__name__, self._string) + + def __str__(self): + return self._string + + +PEP440_VERSION_RE = re.compile(r'^v?(\d+!)?(\d+(\.\d+)*)((a|b|c|rc)(\d+))?' + r'(\.(post)(\d+))?(\.(dev)(\d+))?' + r'(\+([a-zA-Z\d]+(\.[a-zA-Z\d]+)?))?$') + + +def _pep_440_key(s): + s = s.strip() + m = PEP440_VERSION_RE.match(s) + if not m: + raise UnsupportedVersionError('Not a valid version: %s' % s) + groups = m.groups() + nums = tuple(int(v) for v in groups[1].split('.')) + while len(nums) > 1 and nums[-1] == 0: + nums = nums[:-1] + + if not groups[0]: + epoch = 0 + else: + epoch = int(groups[0]) + pre = groups[4:6] + post = groups[7:9] + dev = groups[10:12] + local = groups[13] + if pre == (None, None): + pre = () + else: + pre = pre[0], int(pre[1]) + if post == (None, None): + post = () + else: + post = post[0], int(post[1]) + if dev == (None, None): + dev = () + else: + dev = dev[0], int(dev[1]) + if local is None: + local = () + else: + parts = [] + for part in local.split('.'): + # to ensure that numeric compares as > lexicographic, avoid + # comparing them directly, but encode a tuple which ensures + # correct sorting + if part.isdigit(): + part = (1, int(part)) + else: + part = (0, part) + parts.append(part) + local = tuple(parts) + if not pre: + # either before pre-release, or final release and after + if not post and dev: + # before pre-release + pre = ('a', -1) # to sort before a0 + else: + pre = ('z',) # to sort after all pre-releases + # now look at the state of post and dev. + if not post: + post = ('_',) # sort before 'a' + if not dev: + dev = ('final',) + + #print('%s -> %s' % (s, m.groups())) + return epoch, nums, pre, post, dev, local + + +_normalized_key = _pep_440_key + + +class NormalizedVersion(Version): + """A rational version. + + Good: + 1.2 # equivalent to "1.2.0" + 1.2.0 + 1.2a1 + 1.2.3a2 + 1.2.3b1 + 1.2.3c1 + 1.2.3.4 + TODO: fill this out + + Bad: + 1 # mininum two numbers + 1.2a # release level must have a release serial + 1.2.3b + """ + def parse(self, s): + result = _normalized_key(s) + # _normalized_key loses trailing zeroes in the release + # clause, since that's needed to ensure that X.Y == X.Y.0 == X.Y.0.0 + # However, PEP 440 prefix matching needs it: for example, + # (~= 1.4.5.0) matches differently to (~= 1.4.5.0.0). + m = PEP440_VERSION_RE.match(s) # must succeed + groups = m.groups() + self._release_clause = tuple(int(v) for v in groups[1].split('.')) + return result + + PREREL_TAGS = set(['a', 'b', 'c', 'rc', 'dev']) + + @property + def is_prerelease(self): + return any(t[0] in self.PREREL_TAGS for t in self._parts if t) + + +def _match_prefix(x, y): + x = str(x) + y = str(y) + if x == y: + return True + if not x.startswith(y): + return False + n = len(y) + return x[n] == '.' + + +class NormalizedMatcher(Matcher): + version_class = NormalizedVersion + + # value is either a callable or the name of a method + _operators = { + '~=': '_match_compatible', + '<': '_match_lt', + '>': '_match_gt', + '<=': '_match_le', + '>=': '_match_ge', + '==': '_match_eq', + '===': '_match_arbitrary', + '!=': '_match_ne', + } + + def _adjust_local(self, version, constraint, prefix): + if prefix: + strip_local = '+' not in constraint and version._parts[-1] + else: + # both constraint and version are + # NormalizedVersion instances. + # If constraint does not have a local component, + # ensure the version doesn't, either. + strip_local = not constraint._parts[-1] and version._parts[-1] + if strip_local: + s = version._string.split('+', 1)[0] + version = self.version_class(s) + return version, constraint + + def _match_lt(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + if version >= constraint: + return False + release_clause = constraint._release_clause + pfx = '.'.join([str(i) for i in release_clause]) + return not _match_prefix(version, pfx) + + def _match_gt(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + if version <= constraint: + return False + release_clause = constraint._release_clause + pfx = '.'.join([str(i) for i in release_clause]) + return not _match_prefix(version, pfx) + + def _match_le(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + return version <= constraint + + def _match_ge(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + return version >= constraint + + def _match_eq(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + if not prefix: + result = (version == constraint) + else: + result = _match_prefix(version, constraint) + return result + + def _match_arbitrary(self, version, constraint, prefix): + return str(version) == str(constraint) + + def _match_ne(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + if not prefix: + result = (version != constraint) + else: + result = not _match_prefix(version, constraint) + return result + + def _match_compatible(self, version, constraint, prefix): + version, constraint = self._adjust_local(version, constraint, prefix) + if version == constraint: + return True + if version < constraint: + return False +# if not prefix: +# return True + release_clause = constraint._release_clause + if len(release_clause) > 1: + release_clause = release_clause[:-1] + pfx = '.'.join([str(i) for i in release_clause]) + return _match_prefix(version, pfx) + +_REPLACEMENTS = ( + (re.compile('[.+-]$'), ''), # remove trailing puncts + (re.compile(r'^[.](\d)'), r'0.\1'), # .N -> 0.N at start + (re.compile('^[.-]'), ''), # remove leading puncts + (re.compile(r'^\((.*)\)$'), r'\1'), # remove parentheses + (re.compile(r'^v(ersion)?\s*(\d+)'), r'\2'), # remove leading v(ersion) + (re.compile(r'^r(ev)?\s*(\d+)'), r'\2'), # remove leading v(ersion) + (re.compile('[.]{2,}'), '.'), # multiple runs of '.' + (re.compile(r'\b(alfa|apha)\b'), 'alpha'), # misspelt alpha + (re.compile(r'\b(pre-alpha|prealpha)\b'), + 'pre.alpha'), # standardise + (re.compile(r'\(beta\)$'), 'beta'), # remove parentheses +) + +_SUFFIX_REPLACEMENTS = ( + (re.compile('^[:~._+-]+'), ''), # remove leading puncts + (re.compile('[,*")([\]]'), ''), # remove unwanted chars + (re.compile('[~:+_ -]'), '.'), # replace illegal chars + (re.compile('[.]{2,}'), '.'), # multiple runs of '.' + (re.compile(r'\.$'), ''), # trailing '.' +) + +_NUMERIC_PREFIX = re.compile(r'(\d+(\.\d+)*)') + + +def _suggest_semantic_version(s): + """ + Try to suggest a semantic form for a version for which + _suggest_normalized_version couldn't come up with anything. + """ + result = s.strip().lower() + for pat, repl in _REPLACEMENTS: + result = pat.sub(repl, result) + if not result: + result = '0.0.0' + + # Now look for numeric prefix, and separate it out from + # the rest. + #import pdb; pdb.set_trace() + m = _NUMERIC_PREFIX.match(result) + if not m: + prefix = '0.0.0' + suffix = result + else: + prefix = m.groups()[0].split('.') + prefix = [int(i) for i in prefix] + while len(prefix) < 3: + prefix.append(0) + if len(prefix) == 3: + suffix = result[m.end():] + else: + suffix = '.'.join([str(i) for i in prefix[3:]]) + result[m.end():] + prefix = prefix[:3] + prefix = '.'.join([str(i) for i in prefix]) + suffix = suffix.strip() + if suffix: + #import pdb; pdb.set_trace() + # massage the suffix. + for pat, repl in _SUFFIX_REPLACEMENTS: + suffix = pat.sub(repl, suffix) + + if not suffix: + result = prefix + else: + sep = '-' if 'dev' in suffix else '+' + result = prefix + sep + suffix + if not is_semver(result): + result = None + return result + + +def _suggest_normalized_version(s): + """Suggest a normalized version close to the given version string. + + If you have a version string that isn't rational (i.e. NormalizedVersion + doesn't like it) then you might be able to get an equivalent (or close) + rational version from this function. + + This does a number of simple normalizations to the given string, based + on observation of versions currently in use on PyPI. Given a dump of + those version during PyCon 2009, 4287 of them: + - 2312 (53.93%) match NormalizedVersion without change + with the automatic suggestion + - 3474 (81.04%) match when using this suggestion method + + @param s {str} An irrational version string. + @returns A rational version string, or None, if couldn't determine one. + """ + try: + _normalized_key(s) + return s # already rational + except UnsupportedVersionError: + pass + + rs = s.lower() + + # part of this could use maketrans + for orig, repl in (('-alpha', 'a'), ('-beta', 'b'), ('alpha', 'a'), + ('beta', 'b'), ('rc', 'c'), ('-final', ''), + ('-pre', 'c'), + ('-release', ''), ('.release', ''), ('-stable', ''), + ('+', '.'), ('_', '.'), (' ', ''), ('.final', ''), + ('final', '')): + rs = rs.replace(orig, repl) + + # if something ends with dev or pre, we add a 0 + rs = re.sub(r"pre$", r"pre0", rs) + rs = re.sub(r"dev$", r"dev0", rs) + + # if we have something like "b-2" or "a.2" at the end of the + # version, that is pobably beta, alpha, etc + # let's remove the dash or dot + rs = re.sub(r"([abc]|rc)[\-\.](\d+)$", r"\1\2", rs) + + # 1.0-dev-r371 -> 1.0.dev371 + # 0.1-dev-r79 -> 0.1.dev79 + rs = re.sub(r"[\-\.](dev)[\-\.]?r?(\d+)$", r".\1\2", rs) + + # Clean: 2.0.a.3, 2.0.b1, 0.9.0~c1 + rs = re.sub(r"[.~]?([abc])\.?", r"\1", rs) + + # Clean: v0.3, v1.0 + if rs.startswith('v'): + rs = rs[1:] + + # Clean leading '0's on numbers. + #TODO: unintended side-effect on, e.g., "2003.05.09" + # PyPI stats: 77 (~2%) better + rs = re.sub(r"\b0+(\d+)(?!\d)", r"\1", rs) + + # Clean a/b/c with no version. E.g. "1.0a" -> "1.0a0". Setuptools infers + # zero. + # PyPI stats: 245 (7.56%) better + rs = re.sub(r"(\d+[abc])$", r"\g<1>0", rs) + + # the 'dev-rNNN' tag is a dev tag + rs = re.sub(r"\.?(dev-r|dev\.r)\.?(\d+)$", r".dev\2", rs) + + # clean the - when used as a pre delimiter + rs = re.sub(r"-(a|b|c)(\d+)$", r"\1\2", rs) + + # a terminal "dev" or "devel" can be changed into ".dev0" + rs = re.sub(r"[\.\-](dev|devel)$", r".dev0", rs) + + # a terminal "dev" can be changed into ".dev0" + rs = re.sub(r"(?![\.\-])dev$", r".dev0", rs) + + # a terminal "final" or "stable" can be removed + rs = re.sub(r"(final|stable)$", "", rs) + + # The 'r' and the '-' tags are post release tags + # 0.4a1.r10 -> 0.4a1.post10 + # 0.9.33-17222 -> 0.9.33.post17222 + # 0.9.33-r17222 -> 0.9.33.post17222 + rs = re.sub(r"\.?(r|-|-r)\.?(\d+)$", r".post\2", rs) + + # Clean 'r' instead of 'dev' usage: + # 0.9.33+r17222 -> 0.9.33.dev17222 + # 1.0dev123 -> 1.0.dev123 + # 1.0.git123 -> 1.0.dev123 + # 1.0.bzr123 -> 1.0.dev123 + # 0.1a0dev.123 -> 0.1a0.dev123 + # PyPI stats: ~150 (~4%) better + rs = re.sub(r"\.?(dev|git|bzr)\.?(\d+)$", r".dev\2", rs) + + # Clean '.pre' (normalized from '-pre' above) instead of 'c' usage: + # 0.2.pre1 -> 0.2c1 + # 0.2-c1 -> 0.2c1 + # 1.0preview123 -> 1.0c123 + # PyPI stats: ~21 (0.62%) better + rs = re.sub(r"\.?(pre|preview|-c)(\d+)$", r"c\g<2>", rs) + + # Tcl/Tk uses "px" for their post release markers + rs = re.sub(r"p(\d+)$", r".post\1", rs) + + try: + _normalized_key(rs) + except UnsupportedVersionError: + rs = None + return rs + +# +# Legacy version processing (distribute-compatible) +# + +_VERSION_PART = re.compile(r'([a-z]+|\d+|[\.-])', re.I) +_VERSION_REPLACE = { + 'pre': 'c', + 'preview': 'c', + '-': 'final-', + 'rc': 'c', + 'dev': '@', + '': None, + '.': None, +} + + +def _legacy_key(s): + def get_parts(s): + result = [] + for p in _VERSION_PART.split(s.lower()): + p = _VERSION_REPLACE.get(p, p) + if p: + if '0' <= p[:1] <= '9': + p = p.zfill(8) + else: + p = '*' + p + result.append(p) + result.append('*final') + return result + + result = [] + for p in get_parts(s): + if p.startswith('*'): + if p < '*final': + while result and result[-1] == '*final-': + result.pop() + while result and result[-1] == '00000000': + result.pop() + result.append(p) + return tuple(result) + + +class LegacyVersion(Version): + def parse(self, s): + return _legacy_key(s) + + @property + def is_prerelease(self): + result = False + for x in self._parts: + if (isinstance(x, string_types) and x.startswith('*') and + x < '*final'): + result = True + break + return result + + +class LegacyMatcher(Matcher): + version_class = LegacyVersion + + _operators = dict(Matcher._operators) + _operators['~='] = '_match_compatible' + + numeric_re = re.compile('^(\d+(\.\d+)*)') + + def _match_compatible(self, version, constraint, prefix): + if version < constraint: + return False + m = self.numeric_re.match(str(constraint)) + if not m: + logger.warning('Cannot compute compatible match for version %s ' + ' and constraint %s', version, constraint) + return True + s = m.groups()[0] + if '.' in s: + s = s.rsplit('.', 1)[0] + return _match_prefix(version, s) + +# +# Semantic versioning +# + +_SEMVER_RE = re.compile(r'^(\d+)\.(\d+)\.(\d+)' + r'(-[a-z0-9]+(\.[a-z0-9-]+)*)?' + r'(\+[a-z0-9]+(\.[a-z0-9-]+)*)?$', re.I) + + +def is_semver(s): + return _SEMVER_RE.match(s) + + +def _semantic_key(s): + def make_tuple(s, absent): + if s is None: + result = (absent,) + else: + parts = s[1:].split('.') + # We can't compare ints and strings on Python 3, so fudge it + # by zero-filling numeric values so simulate a numeric comparison + result = tuple([p.zfill(8) if p.isdigit() else p for p in parts]) + return result + + m = is_semver(s) + if not m: + raise UnsupportedVersionError(s) + groups = m.groups() + major, minor, patch = [int(i) for i in groups[:3]] + # choose the '|' and '*' so that versions sort correctly + pre, build = make_tuple(groups[3], '|'), make_tuple(groups[5], '*') + return (major, minor, patch), pre, build + + +class SemanticVersion(Version): + def parse(self, s): + return _semantic_key(s) + + @property + def is_prerelease(self): + return self._parts[1][0] != '|' + + +class SemanticMatcher(Matcher): + version_class = SemanticVersion + + +class VersionScheme(object): + def __init__(self, key, matcher, suggester=None): + self.key = key + self.matcher = matcher + self.suggester = suggester + + def is_valid_version(self, s): + try: + self.matcher.version_class(s) + result = True + except UnsupportedVersionError: + result = False + return result + + def is_valid_matcher(self, s): + try: + self.matcher(s) + result = True + except UnsupportedVersionError: + result = False + return result + + def is_valid_constraint_list(self, s): + """ + Used for processing some metadata fields + """ + return self.is_valid_matcher('dummy_name (%s)' % s) + + def suggest(self, s): + if self.suggester is None: + result = None + else: + result = self.suggester(s) + return result + +_SCHEMES = { + 'normalized': VersionScheme(_normalized_key, NormalizedMatcher, + _suggest_normalized_version), + 'legacy': VersionScheme(_legacy_key, LegacyMatcher, lambda self, s: s), + 'semantic': VersionScheme(_semantic_key, SemanticMatcher, + _suggest_semantic_version), +} + +_SCHEMES['default'] = _SCHEMES['normalized'] + + +def get_scheme(name): + if name not in _SCHEMES: + raise ValueError('unknown scheme name: %r' % name) + return _SCHEMES[name] diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ce044934f5ca0c05371da523676bf87430919961 GIT binary patch literal 25886 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 SaEva9UVK@-2k-Om%>Q58?B9X_ literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w32.exe b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w32.exe new file mode 100644 index 0000000000000000000000000000000000000000..f27573a1eac23fc0ddbc2e056e3c099d32da1681 GIT binary patch literal 85504 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

    OXP&)nf^INfn@Yjmk!&Z!Yw)omj5_8RgdSy- znCXRWA#P)QjK$P(znJ8~jU$6HC*^S(vq8kjaga7)KxN9j9C>-@=v=^E0PpyK)$wQwxAN$r1>D z3`SL25u!~a_$KD0IkM9GVIVm;bq3H7>ph2Z)Yu>Og zEbAXGjA{yu#*C49C)?8oU`)m_Y9qdLz9R?7kQ{s`B++SUd2&xrxaXjp)HD~BkV7xh z(+y2Er##^lv99rHx-0WxxX(2wUwa!EH*9d+AZ?@`=aFpB!+$(5OCB(2RCH3j9K!q8 z;;!a`@co>>l0Z3`*%)AnLyZQcr{>B{KjK~KRyX)$s<`E$W`@trCC%=s#|_cqsEl8i zBZQc&ro^z&kxK%P!jh0SeypvRqh2Gjr%Jk|#m$+FDKn;$s33wQ){`n%5B7}Dk4>NC zm@*|jF9~ENV|**(h)qmhrX7R&tYi!>I5ibvo`cd;XQf}^|3#ztY(!1X%Dk(7V03m` za&BgJOpXKjo<+Xy)bjTlX3rXtje%gAI08y$rGrcB6&mGU$DrHWUc_V7(s#CbpmY%r#qo}Lz;jVT3(hnSs^E^hqwwp*JTK9w`3_%!S?c2AAU z)>3!z9tB8cD-iF=np4{-+NS3)q-FCEB8O$D+@g{|{J>HeNIno54CkB1K;p()E~7tN z7&tps%7eJJlzH94mWzZ1ONy!SMuZBd@RavA{(7Aae+&`?3J9Aj+K@BU2U5IqePy} zC5fzydlFGXbPSdfOw46STq51gz=5c<%rq%!uy!GisVxEAguRb4y-Rc<_VaG<5JZS^ zFKOr|H@uLa3*MZ(ewaTx^3YJyC1;QF=$GZlpGwgBIx;dah8E&|S=z94m8p`MTU>V9 zkPJpbA3#W5*|BXy%6JZnNleXEYXBS>sB(f!?!e=(=l`b^Xau|le`R~)rFPq6iDFqR zG)@j7tpSFnAYP8-&zlb)BN@PMS<(30Qu==7>#$hWqFuWLs zh?1&=nvUC?+4nsCnPVsKWvYD1{}AESQr~jIE)#_0HcTL4x@wdhiL&LV5&Z{iE}Vc zm@_b^U_OO84s#6VFw6m%eK5OW%3$7v*#xrz<_VaGVHkfo%wm{A7&}ZB%tV;sFi9|j zU~DiwVRSG}A*j1P=}srt|+Dq);3$6@xtyb7}pW;skDOcqQU%s80gFoR%X zVZvbyFg;-cVLHIHfoTC#{Q>fX`4r|b4CC*H{VL1`m8P1Y?HrgQ-3S z`0!|O%a{M)PuWFVo!tKHJK?MkE6)wk9`fn&BQ`PmC}@nb^;NZDTAcs9?RV8jElYRR z=RXh2eIV6hkqf9(rQJ37tqeG3`X~mGO@r|LoLHLIf>PAv=z~ zb03VR&lrxr-uNC)rL+Zbt z-$?-sN$_||9c_0^M_S-{U$hjDf7b=7$A2lBjxsw5h1{J!zh33!to!Eds~Ytyi4u-;W2ne52A(7nTGhtTYEp1jd##UdmoVFA?|c5uRFqYFg6$u7ggbG@af&V zx9H!$zZf-Yl*r7?6b^?&6f$OEA^r=+!w)|!o__ji@!D&ziL$aX@zF;giC=&Hm2(0a zOGd^^CEr?z`wtYh5Wah7&psqy4=LxX3tLpro;`0KBb-+bR3B0fTte_(y!+tgJksKQ z_H4d858+FH`3_%2_~7TfQk@~gXV0tjIful`9@qQqLq1hZpOJz5`4lkzfkPP?hfuzJ zm-%O8WWgVC3YdR2!ucSMjL-CZvM%Ah8s#6_Bi~U7^FPV*<#P$;I+C$RK@uj=!+*MiKx| z72khZ6x@2yfkTL~6w#6YGmiwB)d=#v>b*nj0-ir0<1!rS&P9hSRY)$^0095NwZjio zRUaxWV>sxe{4!#DRkaLee9*UiRh1%xCH zV_Cr|&%&reAv(GlPq;l`Bx_v7W;o-yr(-@1nF9DLg~9{I6Q&7_FHA>;eC`LMgZV8! zHy8}q--$1slas|=cikmn(|COO^5x>$XP*_DHf@qT{^5roiZ8$XvWCxdx!kf5GIZnC zCgk+L<^E0ClCfPBY(Kv}V|tD#KowUVsPNb1d(g}j-8c&xlT||!_J+R+VFCro$M07O1 z$&Zhhv>Q5fs2DkNB+g_RBgT&(FBYWr6H}&45!0qk6EkMa5P5mnlMMMWfBt;&q$5f^ zcUOdXWr0-`O^Fjrr^ko~bE3tgc{cIJLW_8zFkU>eaFW>iaIV;M|3Gng?R3%oEk*R) zsfeIGiip~+h|v9t2tTNZaqlT2=9nS|o>0WllZwcP8F5+>W4~6!wp`WvE#os8zGf2O)Qivl+e;nyQL;5d}z8vY#BmG6U^nJQwycZ2# zAB+80cI>}ehB4?f*n_nTjqv@}LOC8Jlz$Hu%9)u$IlDqAl`je9;*lEo`?Nv&0HoI= zeI(K+B0ch|%tZRRt%Y)5kWd~QDwKcC6v~bj$nzzke0iicJq901UP#{<>9J_K5$jHe zAb%<`h*5Mm2qiK|DC33-<*u1Rd1!@Dw!9>iV@GP!i&oeR+!o`VPWV2c2b!%>90KQ8 z;_L*a^_@Zq$`#7cdxSD`l~7i^ER>h_3FXL1xAZ!sHzNHYq@RTJbC7-+(yv4MSCIZK zq~DA5D09W9NdG0$SJtHOiEpn5B8N=ma4&LLj~sR*htH8iWot!zAEby2LltpxrXnt_ zP{dC!DdO@GTwtTf{#4w8^u3Ti3h9R-{bZz{h4hP&er0P#JQbvfO+yv2bEYB=tx&|L zFDatpNNsu_q$dS#Li$^fz7x`SMf#pdAK6+Fqk|MNbEqPg&O}}-6tVp!MVvTNo4&4S zNKqem&zP9L(S4(1rPrW4x_1c-2~UfsKO>k`<%f9Die zgxGil<3Apb*w~aFw=+Wj{yJB9LSjr@LKL!(i;0fv8=caV5xR5<=;R8IPqalRM90L& zAUz@L-LprJNEeKZl8~67J^gO+Z=2E^5tu_@Kqp;i02$Bx6B6R15>jrxv7JA{5uv*) zLe~_ekBVjnF$pQR+<0Raze zc{urP!n@re^Y5D&n-G^6o7nHR_BXkTKnW?gckeX__%r_)S%gNllyHB5 zz&FrO<{xBD1c?*l5)vg65=M>wfIlTR$VLzn5))I}_v?4#jW+^`n(!23;}lz;I217$ z;kWhcC$a2M6CUI1?Q3qOk4uP61eN=Blvv){&&3{5mgwkUPhW3+R7zq>Vtibp3ME8{ z`ozZ=`o{F}@@O{L6+l|W$3k4W!c)Tf_%&_p;n8{kAS8&12~l9A+VE&os6M2rr_T-X z2#o0qUN#tFVrs)vQu;;@v9@aBZA1w%Da<`Swzm9~81mf^Ys*GWYz&Wy0=p(?$w5ET z2MlIw-n!M0l$gXQD|oFY7~$G8z^`>!Vl?O&?-oq@$I2M+H-*Gl(Nx@nW&Wt&gjg_Q zd|ardUa(vKsOb1;OWo9HA9bI^I+;VhDrE&#zJ*bzFt{j#DOAm$8P63UkNQSwXe?JK zqUw$3u02lC#&g4l4U^-M1?l~3#vV`4i4==7CZ2rqNwIF-IyqK&<&{_Dc<}YtUl$xJd{FkZcogG} zjTkHJ-o0BKJa|x!4bGfCDNdh0EzX=dBPuE?#JO|l#P{Ewmt%t;fBaGW^2;w`#U(|& zgt5Yr%WiVEPbYMACUkUYm&+%kqnnG4?tXN1Pl?vbCK05(C59^d#7yO=SfP9>UQ)h9 z|6SY9h(72Lll+k$o$d0TNN+@X8`38r{aB=*iS+j({bNY~GSa_;^e1cjnZL#aBkDeZ;&v~S-YjYx=gQmfeBze}G!eeS?}dtLkX{_Q*6(b2C}tJ^RhZWqwKOP6k4 z`n2}*y}c#g+jr{RtsCOD_UqWEN1q;|L%LKy#fQOodPMzedDDcJkA59PuV`XVPU^n#8UyH-|NGCdCpEWED&&5O- z523^FpL!Z0HAd`m8wW=1()NbUlK*c!SHu2VWfNX*p}47I$Bvy~(*(kFZQ8UcWfcg?{Ia^XJch_3gLcevQ88 z^f%vp^Cj$)7cN{lk9p~tPe1+irM-LimS7)1kMQtta6W5aZoOeX+>$~%{2uzTuGul) z(6wvV&ag=MP~&;lm2n6l6T6!5D%5XOL#~OE0}Nf9uw*^D*p;D=I1)lAD_wyKLFAB#f&G z+wCwt+O};Qg0+o1gM))fJO9|&*zU|1?%xIf4?p~%U@WtubLY;Xpy9H!XU{5F)2*TN zp+kq1k3arc!ioBku(NJXojRp_^2sOioj7R*V;<=S&t3TLyYH&NcbAc;^XH#`R=)rK z`yW2|;Dgt`_~MI`DC;Mt0iF+_y@djXWlZ~f;m3GNL0L71@N0&2)eP%IGlZYCqOH04 zPNU&LoA77`Fe{otohzEr{51QIz`twPuBE8Q0PsXHaoM?Zr^JE$f%PVZb%1py$uESF zZ31mr+DDHbRcP2YSRb_6KG=4c=G}MSl{l~t(f$?I1J>%fgj@6A{WAQk8ICqgCE@k9 z-*y)-UR2NxN&YvR&0WdIG^_)xn<;O+@rHsrS1@LlZJ2eyI>EY{G=zQMzI_VY%JJjJ zrJFcV29V#_PFP2TZOgZcl72!_q7EvG;T=Wk^EU5MRg~UkxSx5yqCEShqWpOA;!(5} zw*TvSB>Zo^_122Oz`#(9;g>;PDyR>M17!~DfOI83tP8?UH|zhi&pwleZql6eCcNYY z;zGDdfAZ*>bBYrCp`zH{$NAz|f;T~D5V8+A>{gUJfJ4`9iW2a;qAdFqx`FEIRo4SN z;z;-*>lMuqe$8lgq1k_=ovaJ)(82DyrJR3Hcmbx-?MFKHroZCw@Ls1XQ*v=?h8p4D8?p`MvU(qK08P0xzX(?yipOI(KMv23} z6(t@x!~utm-?+!Ps{1>HJaQFe+Wqv?PYU{(I)*rCM#H0_I?-@($K&$l%gT}09#huO zOHdw}8KwL)$0h;0^D9Le@r9xcJ*6m#!~y5*%k~VO3D?>)WfIymWl~qP1GeX0;3u}} zU!iAf00#*_>U$~HE&?Fei-`;6A#Du@+T?rkb$vWE{vxlFmrfqoq&z)4Tv_XgP#({Z zlsFK9@#VM|z=cE7Nkth1m<9lcn)XZ_T<_g1V0+-Z)=mgNx=gAKtCc`x}NZEYFHLu_*z z9vUvJ1NH~*b)w-yoA6UkZeAFzy!bb(@+@#z4;-GftMKQaSCokrz`=qGNAAYto_AeM`)fnQSnfiEWZN(iAx`_jytp#Dq%kwPC zi+5R-XXXHhSrN*Qm1mWY(42`w3UGjqO&R6Zo+*>qo}PN$j6Bnbd7Nu7yzH zuP>L{5q^yCmxhLh24IX*OgtzTX_IG&2gf|Li3|PM*J|T3hOxipn1Rphg<;B;1!2ld zz~KepumL!{xiUw&a30Ka9Zxy%oPjzqvwsE-+8CqTTWaF^^ryVg_}^l&bY)#=hV7Mb z6E?!G;X>I@dCz$bvZDKSbxS}blIyi@t?qr(bua35pH_6(WCry=+u?(SP9I0#r4zB`-P4j^R+5+1%abSC^Upso@zHRgeKkCY6M2hiokw0#b{3nIGT`tA zaFFd8I8Y{O?fD7Fq*ZxQ%0sy}#XM z3l=PpIJomyeO&6-3EwFb*cN{4`DpixHDe66=TcXDu9xnb;~&D$x*srL0P8_{=9y>Y z*o$KttPd!&X3eU>;aYfHt4;_HWzr_fq~B`Kz=2N#v~I|&9qELmV%K)s_|PQB<%eNx_ zHuIw)Pic8mw!Zh+B<0OTHuTTx7=!)ubMs@Atq)95K6!VGa`DF>kD|V>d;I}>DV5^l z;vcX_NxA#(yMMg%&O4Q?tSm`)%qt}?5eK#luKN%+;!z(Lu0gOLCf{?6#J0lqi0zn9 z(vM>#_7lXVfd?e`=`+^X?_K|4UTC{dV2$$R-~RTuUkNAnjY`8dt>JLT9d{_$yC&;_ zeFk}+V;>CbN&o|`CaRuY+K}i@Y0jm zFLsRW6dG}5-n@CT9*6_wD%O^j(W6I8f7StU&dnem(OiYYov)L5vPLcJ%aHi34 zpsn$hRwr6JVf!HLnoU09oPm7BaUknXTi*cuRJXN&xt>SLPvE^2Du4jcu$b+6+qP{I z2hxY@hG-uWht$+mWze8OlDD9fm++I;q&aaR+-wJwKlJAuf&9a<_I9)bwgI*Y=1Un2 z*ndSn#s2>OHq`qXtUEaYG<81I>s-$x#}670a{QywmGGQAc~ZiIx>Yc?;I3lX9#G#3 z_)YQv`zX?x@oD%@94JRgQ_BCBUw&D6@x>QqANa3-{Y$3f8Ug6!glrp+K5`yl-wD5a z0W|d<*Q>v2M|e5@q5MaCT*h~{H`;`S^-j3}K9yq$=t-n(MO&Bs8)Xgon>x2C{@LdnMDL1JnyxvE`ukk5ucOE7Vnjvh&i#)`(aPPhM zDv((U`)T)wuxW;AC}${(_>g}%C!!(j#B25H)m&qI0-w$PUf7AFgkKx~gWko&L6eIb zE*cKBNpH#~^xblvK%Qb>>rP+7%6G!gy3xiE)a#J%$xEa;+Yn^N!+_(Dz+MBtJO5Kg zxYtKRbwa$j#y)P`I0gH1C4Xx)cefdjyhL87Kl=c}uIWcGM|$i}z%Jou8QT08ea|xT zCHo-a!8S-bQGQU?u|IOJ6Vi6emMzL7k31szne^5S@h0!E?Qq=0ck&GLV_yK7`7}PQ z{-bm!?0ni09`}Bc@N0%RXy#gV!aT4iTINF@V;bT{c*$GaAv=kS20O;5PyIoDSD~)` zmFqufUvmD7{=1mCkp8qaJZNip&?ZeOU)UCCSU2=zJy3SCowCj-i>OPW4vM&t?kMAr z$eCJ*>$)WT8vkRg(3NzexmKNUe9!R@@uFUihP*|4&z?O}?ve&<1N%;nUnu{`2kej7cap}ObCUL~2aW}_df+={K4mTC80HjG zuK}F@)36f{$^Y)WQJ>GXcdgyJ+vIh=GY;#5JWo0kNAf!O=vRypoTw}ItK4Jpd-^8A z_gl{mh`>Dv|C5GgaPI^6Y5eI&DMaV8efI2X(M0(*YWD0?_&%pnwc(QQ|2f;!m7j;p z#@8<>56_>pwfwaF-QX@{_INLI*{A-DUEqRKQEd;G?dh_cxNKjS-O*)7x$FX$t*EvK zZSK?3!PsE_;65$x@8S5ChWvchu_9`EAq-Z*m5VU$58tU#slOhG>>7MnmOti#di41T z>FMc1G2V~GntwF>^)MWB-vm>`r_B4`Rf;kTx}E_asya5V1yiRG4BgH+tPOwoy#(o6 zFc8-cI1S!}x!p{(=_<-Ij5&XVye&sxa1L_m1jgrUuue7&W8hfC4}uB6c;oyO=s2h+ z<65W<>$lW-Q(t`S2SquARXKc*#OGVYzuI#vWcXT?Sw;Ct8Oiw)VW81;7_Kq@uaK)h zK;|BW+>>nxD z*%wh(b1cho3d88;GZwlk>O84yqmGCAPU@(r-=W^0IyOF6LmvJeIS0TTG#m4UY3zU5 zuW_EsaygDBO>b$PNQ z`xMMyQ!&mRNjNlESpOUY6BhPAZ>*dl*R-i~=9;`#K4F*u7^wH8{#^1SV4$vzIv(;P zbyU=KQcpMrZ3NFgSDkcZKaO>mYxQ@t&Wz$gi zO8qf)e(wCpy)4wxP}fHt6Zx^nHktIIRzAl;ntqY}D#vNs_)UX_DY&l8wZOGl&!o;5 z-_j`y(Z<|iAU}?*$B)>*FWUt7(vTnP>FGMMeCShBv92)E9S)XFKBvux`ZnrFs4t|R zYRf~pzo|1k`!jAPKM9>DVBmfpwh8KN`DplaT!DK;vI`0drg02Pqrt&-6VieY*Vn0Q zqK<>QGU}PA-=Ln1IwtBis3W6(Y2IYj{PXTig)m5dgx*!teKSAz@+kvoIJTj2hl8-N z{&(CPrBL7XGGO4ECfCNPVJ140?!E ze0MpLvVik_j?alVVId7@zrQw9>J6!{qVASDL+YMayYz)@6V#7TS6B!gl|};=<}RbD zyTwz(|7=_Mwl^E{e;V5&!Y5mzy$*fOFF6Q@yDU;PcPA@Mh11{_>w%xcE~Y5ZNfoAde9IK(uwtOt>@^@e@UGw zb#=vnf%?*V&lU2I<(HI{q(1)m<0GjX;&_~Jkmj6Mb56~5Q^G-7P#!Ui5B0a)2cWfy zhWL^3T)fth)sbUttXE`Xy=4aJaR2@HOSwn6%l?n@pS(bNkQZ4tVd29z@$Knj$~UJ! zM4PC`k7yI*M?MV|tnokR<6P(9nl5R~`4!rtoNuvh5+<#F-0OyQ@%D-&rSi-%<@^^P z*776T1ohYC$43{8Vet+2|B$U5Z+B$*&_#S66~$5AY^j^ZnF`8%_uVJwcZ7*@k?nwR zkOr(D(&h)}3FY9E)0NkXqUBxyjUU&{?Wer_k6fkV3- zXQ@l1UIO2lDqMdh3^QlWlys*&U_Z#bH6CDDlnYv0ML$suz04Hwaz4gLJX?o*o_=di z)seIU?U&;cpgq*_aE%@x{41;r>etXO%W^m#Al+F$4aa00qiHt!s-Hp6zag*H&{uqe zvN;v_tw-`7+aUAe*pBq(S}u8zYw6T$uze6tZS9J6K)JwlgoU)A+@{PVoZGi=zaIs+ z`mMqdF55r!x2gD!ZY0ZQo~&oWfO7&AoGYLV9z0mWMi^)qhi!oI$Tu7(QC@IgBG$s6 zM82FWT+burFXa#R(NAN3C$T2aKA$p&x&@qBAa%@a7le-w>7cFga=c8P3dilhVHFC! z-m(dwEMMbi(v^mA(6BuAM>r!v$_DOLCGO-o))#3_yeX5h_VU#4EL)b(av*D@{BH;j zZ48WW4itRvDA$TPF65dM`SDMbEz2jqTK`L4BEHO%hBA+Bj%}NGlE=7zhkGyZU4WDi ze-Lk$&8H*ruTOV(`m+vbD0?aUSkE{Ug8cUl*29({53Zm5(TCrf`29h{_Vrux?W%B9 zcf>cl9yQ_`=7badKr0~0{>lLJLKG${Q4s1AjuflabIH;=2nkl9*AeFmIvdK zr#Xhx#xq)*qAW|nyoqxrt|7dSVT}R%I`L@ZV?q4^%VJxjT%sYrGA*A}Oiwrm-l`7C zq@U~ON7!2^o7j#BE5{Dx?Za=bQ&!}tW5da=`5WhtoWF9ez`2SZbETDli@H|M$q768 zpXENYAYP7fe!v{;QNYYRI2Y&Ki)#^__i^57#=Mhj)ErY0Zptk_oWpPq^~yhHD$K+E zsep*(nhw_yIA^@p=( zq@J5HjC44)`$=U>VT7Dda_r7=JLe6YJIzn;FUv?isVEyTuf=!XN~3^^`lTOMJU7X-Zkmy8LYC8s+7?`^){@kIfmV?0@}f7Qb0bk8fAxSdH?Fd_%d- zF&FED^3)v`y4ja&X=yXQR{x}(Htsr!ev;+0KjJ)rc~dTEuak-maK&doNtSW=YMT(R)@plykFuva|=<^A!R=9Q^X}6b7ej{JmGoixc?A$TcjoB zWzNF=4^z_fYXaSaEV6qz#87C25BS@@1xN(GATMKIyN?baR1SxU5>xr|8w-< z=;IXHnYX^V{sw(VeOG-Cy-lB_pR8Y_->LsVU#)K(bX(B(LBoQl2md4Z+2Ad~hk`#1 z{yx|@q-#h-$i$HJkb6T`g}fH>VaS&uKZN)i{0+Sgp@t~KK*ODe6vIqIfuY#2%W&G@ z85$EhG;~hrGodesz7~2g^lYdwnv7$O(~TRAUl@CvVoe{Jem41=yPMaWM}>_K%Ltnh zc7K?crG=%V38YJ2OSBT89Xs0-mt^)mElLjFNS8JH-`p< zb`Q0L_6VX5X;e!alLIwDz&TxYgQ5mUt%(A1kWv#N%jW5e^{ez- z^{s+JgQ9~51H4mS@o zPctt!Hw)_(W(vy*n;ljbwkPb?o$@FU@KBIZZjAMrxOj)=VxVUdF(Cq%A~+!nbv z@^s|c$jZoHBZH%&qJ~E;0(HM7eQiQ;Gj9idoPMbOA^l_er}b@uBZ4=Dyb%&<=w}#f z$S`;q?=TuoiKZ`1ZOkjfh5*`@)(+MOtWQ`SsLhTM<5Aw$2*0SgQLCfYM;(g7aa&>& z@@%8O1ylXm`i1)E^}F?_(b|kb1A=A+tqfWnbSmhZpq9big2x0e41O-;V93WI)gc27 zYYZn1}M*(B=_v+rPrU3O^ryIoyCl{Nf`f zMHEFWjd&%ZEaL5mqYOa^2pbrU34(e`5FccY{HS9MWGgKJ- zLPNkU!t|*r+MH;9+kDdOG`A0%7PcyEQ`j3}yTbN`9SA!d_ET6#O9X0nfMpO`_HfH+ z%Q(wK%d?h^mQ9vd(Y^z$y-<@w(6&cg$64p2ZGUV%Wj$kcTF+T4trx6S)@p0N@Im28 zXz`=N_lMsck&YVmK->5}a#~bz)IXvQ66RciyXJ%#r(dbxsMiGtL5|G{zB_n%@XFw| z!5;;m4n7y`9pW1j5YjJXe#pxqZ-;~$h8Z4(WVk)_@z7^Ow}l>ptolCm=g`)u;eN&; z#u3H|#>tQmD~&siM~&W)0GlAYPNR)inSL>~GT&_OfSTwjxxJrxi1|))3Th?KJm37P z`F-;_^S72CEtf4@t#^jc34c7iQAGO)TLb_s#Mv^iM(c+JoeJ(8G9)B7Bsp}uX_sj) zYWI-oD9ZT6)ETWP-aN&;*8Hw{LfE#jiIzf3u63pLd+WpqOJuVsYt+!Fzel}9yqDv= z4_Jfsh58Npu0i(&y%4lF$QjfuI2jV5U&zpqA44V^+8P^~+M6Ox{VgTdJ>g9wLL){+ z*rLP}I5!Y!p9}g|&?`Y(gWd?*9<&RoKMDFaNC^rIP6^I~TzNM5m*6fTks)`Y2iO#{ zJ>;8^%OPHdSi?xe-wj(0yA9_Iw}o~MO$!}u9B-UrTw#0(GV?oQU-JO-aB~ST=or>D zY)#lRknus50?Pm^3fu_%VQtdy(I3~JMc)$;WC-dPG&*Qn(7d2!K~Ds|9JD*=Ltyc9 z(2c?4f`1HtJ0!|5$#B^)6;kQA@k^tZX@q$kxUD0k#~l_udX1ZzZyD}~fHfRBjSHF> zlopg5WDhzPbUf&c<(%b$rP|_UZDDPL_8JITY_Nt~W37Y0cjK&S)-0sFAd(nuj(ry4%qZ9JC(s;pGWvoVTIC53w6OrrC(}5~~J%3T)FADrcfxjs57X|*Jz<-zm{|7%;Q!oGk literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w64.exe b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/w64.exe new file mode 100644 index 0000000000000000000000000000000000000000..fd37d9ee468d5fcab4ccd51d4e85c48607efd310 GIT binary patch literal 94208 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%0A+m!ns>B!NUlDz;pPF&Aoq22e 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[^-]+) +-(?P\d+[^-]*) +(-(?P\d+[^-]*))? +-(?P\w+\d+(\.\w+\d+)*) +-(?P\w+) +-(?P\w+(\.\w+)*) +\.whl$ +''', re.IGNORECASE | re.VERBOSE) + +NAME_VERSION_RE = re.compile(r''' +(?P[^-]+) +-(?P\d+[^-]*) +(-(?P\d+[^-]*))?$ +''', re.IGNORECASE | re.VERBOSE) + +SHEBANG_RE = re.compile(br'\s*#![^\r\n]*') +SHEBANG_DETAIL_RE = re.compile(br'^(\s*#!("[^"]+"|\S+))\s+(.*)$') +SHEBANG_PYTHON = b'#!python' +SHEBANG_PYTHONW = b'#!pythonw' + +if os.sep == '/': + to_posix = lambda o: o +else: + to_posix = lambda o: o.replace(os.sep, '/') + + +class Mounter(object): + def __init__(self): + self.impure_wheels = {} + self.libs = {} + + def add(self, pathname, extensions): + self.impure_wheels[pathname] = extensions + self.libs.update(extensions) + + def remove(self, pathname): + extensions = self.impure_wheels.pop(pathname) + for k, v in extensions: + if k in self.libs: + del self.libs[k] + + def find_module(self, fullname, path=None): + if fullname in self.libs: + result = self + else: + result = None + return result + + def load_module(self, fullname): + if fullname in sys.modules: + result = sys.modules[fullname] + else: + if fullname not in self.libs: + raise ImportError('unable to find extension for %s' % fullname) + result = imp.load_dynamic(fullname, self.libs[fullname]) + result.__loader__ = self + parts = fullname.rsplit('.', 1) + if len(parts) > 1: + result.__package__ = parts[0] + return result + +_hook = Mounter() + + +class Wheel(object): + """ + Class to build and install from Wheel files (PEP 427). + """ + + wheel_version = (1, 1) + hash_kind = 'sha256' + + def __init__(self, filename=None, sign=False, verify=False): + """ + Initialise an instance using a (valid) filename. + """ + self.sign = sign + self.should_verify = verify + self.buildver = '' + self.pyver = [PYVER] + self.abi = ['none'] + self.arch = ['any'] + self.dirname = os.getcwd() + if filename is None: + self.name = 'dummy' + self.version = '0.1' + self._filename = self.filename + else: + m = NAME_VERSION_RE.match(filename) + if m: + info = m.groupdict('') + self.name = info['nm'] + # Reinstate the local version separator + self.version = info['vn'].replace('_', '-') + self.buildver = info['bn'] + self._filename = self.filename + else: + dirname, filename = os.path.split(filename) + m = FILENAME_RE.match(filename) + if not m: + raise DistlibException('Invalid name or ' + 'filename: %r' % filename) + if dirname: + self.dirname = os.path.abspath(dirname) + self._filename = filename + info = m.groupdict('') + self.name = info['nm'] + self.version = info['vn'] + self.buildver = info['bn'] + self.pyver = info['py'].split('.') + self.abi = info['bi'].split('.') + self.arch = info['ar'].split('.') + + @property + def filename(self): + """ + Build and return a filename from the various components. + """ + if self.buildver: + buildver = '-' + self.buildver + else: + buildver = '' + pyver = '.'.join(self.pyver) + abi = '.'.join(self.abi) + arch = '.'.join(self.arch) + # replace - with _ as a local version separator + version = self.version.replace('-', '_') + return '%s-%s%s-%s-%s-%s.whl' % (self.name, version, buildver, + pyver, abi, arch) + + @property + def exists(self): + path = os.path.join(self.dirname, self.filename) + return os.path.isfile(path) + + @property + def tags(self): + for pyver in self.pyver: + for abi in self.abi: + for arch in self.arch: + yield pyver, abi, arch + + @cached_property + def metadata(self): + pathname = os.path.join(self.dirname, self.filename) + name_ver = '%s-%s' % (self.name, self.version) + info_dir = '%s.dist-info' % name_ver + wrapper = codecs.getreader('utf-8') + with ZipFile(pathname, 'r') as zf: + wheel_metadata = self.get_wheel_metadata(zf) + wv = wheel_metadata['Wheel-Version'].split('.', 1) + file_version = tuple([int(i) for i in wv]) + if file_version < (1, 1): + fn = 'METADATA' + else: + fn = METADATA_FILENAME + try: + metadata_filename = posixpath.join(info_dir, fn) + with zf.open(metadata_filename) as bf: + wf = wrapper(bf) + result = Metadata(fileobj=wf) + except KeyError: + raise ValueError('Invalid wheel, because %s is ' + 'missing' % fn) + return result + + def get_wheel_metadata(self, zf): + name_ver = '%s-%s' % (self.name, self.version) + info_dir = '%s.dist-info' % name_ver + metadata_filename = posixpath.join(info_dir, 'WHEEL') + with zf.open(metadata_filename) as bf: + wf = codecs.getreader('utf-8')(bf) + message = message_from_file(wf) + return dict(message) + + @cached_property + def info(self): + pathname = os.path.join(self.dirname, self.filename) + with ZipFile(pathname, 'r') as zf: + result = self.get_wheel_metadata(zf) + return result + + def process_shebang(self, data): + m = SHEBANG_RE.match(data) + if m: + end = m.end() + shebang, data_after_shebang = data[:end], data[end:] + # Preserve any arguments after the interpreter + if b'pythonw' in shebang.lower(): + shebang_python = SHEBANG_PYTHONW + else: + shebang_python = SHEBANG_PYTHON + m = SHEBANG_DETAIL_RE.match(shebang) + if m: + args = b' ' + m.groups()[-1] + else: + args = b'' + shebang = shebang_python + args + data = shebang + data_after_shebang + else: + cr = data.find(b'\r') + lf = data.find(b'\n') + if cr < 0 or cr > lf: + term = b'\n' + else: + if data[cr:cr + 2] == b'\r\n': + term = b'\r\n' + else: + term = b'\r' + data = SHEBANG_PYTHON + term + data + return data + + def get_hash(self, data, hash_kind=None): + if hash_kind is None: + hash_kind = self.hash_kind + try: + hasher = getattr(hashlib, hash_kind) + except AttributeError: + raise DistlibException('Unsupported hash algorithm: %r' % hash_kind) + result = hasher(data).digest() + result = base64.urlsafe_b64encode(result).rstrip(b'=').decode('ascii') + return hash_kind, result + + def write_record(self, records, record_path, base): + records = list(records) # make a copy for sorting + p = to_posix(os.path.relpath(record_path, base)) + records.append((p, '', '')) + records.sort() + with CSVWriter(record_path) as writer: + for row in records: + writer.writerow(row) + + def write_records(self, info, libdir, archive_paths): + records = [] + distinfo, info_dir = info + hasher = getattr(hashlib, self.hash_kind) + for ap, p in archive_paths: + with open(p, 'rb') as f: + data = f.read() + digest = '%s=%s' % self.get_hash(data) + size = os.path.getsize(p) + records.append((ap, digest, size)) + + p = os.path.join(distinfo, 'RECORD') + self.write_record(records, p, libdir) + ap = to_posix(os.path.join(info_dir, 'RECORD')) + archive_paths.append((ap, p)) + + def build_zip(self, pathname, archive_paths): + with ZipFile(pathname, 'w', zipfile.ZIP_DEFLATED) as zf: + for ap, p in archive_paths: + logger.debug('Wrote %s to %s in wheel', p, ap) + zf.write(p, ap) + + def build(self, paths, tags=None, wheel_version=None): + """ + Build a wheel from files in specified paths, and use any specified tags + when determining the name of the wheel. + """ + if tags is None: + tags = {} + + libkey = list(filter(lambda o: o in paths, ('purelib', 'platlib')))[0] + if libkey == 'platlib': + is_pure = 'false' + default_pyver = [IMPVER] + default_abi = [ABI] + default_arch = [ARCH] + else: + is_pure = 'true' + default_pyver = [PYVER] + default_abi = ['none'] + default_arch = ['any'] + + self.pyver = tags.get('pyver', default_pyver) + self.abi = tags.get('abi', default_abi) + self.arch = tags.get('arch', default_arch) + + libdir = paths[libkey] + + name_ver = '%s-%s' % (self.name, self.version) + data_dir = '%s.data' % name_ver + info_dir = '%s.dist-info' % name_ver + + archive_paths = [] + + # First, stuff which is not in site-packages + for key in ('data', 'headers', 'scripts'): + if key not in paths: + continue + path = paths[key] + if os.path.isdir(path): + for root, dirs, files in os.walk(path): + for fn in files: + p = fsdecode(os.path.join(root, fn)) + rp = os.path.relpath(p, path) + ap = to_posix(os.path.join(data_dir, key, rp)) + archive_paths.append((ap, p)) + if key == 'scripts' and not p.endswith('.exe'): + with open(p, 'rb') as f: + data = f.read() + data = self.process_shebang(data) + with open(p, 'wb') as f: + f.write(data) + + # Now, stuff which is in site-packages, other than the + # distinfo stuff. + path = libdir + distinfo = None + for root, dirs, files in os.walk(path): + if root == path: + # At the top level only, save distinfo for later + # and skip it for now + for i, dn in enumerate(dirs): + dn = fsdecode(dn) + if dn.endswith('.dist-info'): + distinfo = os.path.join(root, dn) + del dirs[i] + break + assert distinfo, '.dist-info directory expected, not found' + + for fn in files: + # comment out next suite to leave .pyc files in + if fsdecode(fn).endswith(('.pyc', '.pyo')): + continue + p = os.path.join(root, fn) + rp = to_posix(os.path.relpath(p, path)) + archive_paths.append((rp, p)) + + # Now distinfo. Assumed to be flat, i.e. os.listdir is enough. + files = os.listdir(distinfo) + for fn in files: + if fn not in ('RECORD', 'INSTALLER', 'SHARED', 'WHEEL'): + p = fsdecode(os.path.join(distinfo, fn)) + ap = to_posix(os.path.join(info_dir, fn)) + archive_paths.append((ap, p)) + + wheel_metadata = [ + 'Wheel-Version: %d.%d' % (wheel_version or self.wheel_version), + 'Generator: distlib %s' % __version__, + 'Root-Is-Purelib: %s' % is_pure, + ] + for pyver, abi, arch in self.tags: + wheel_metadata.append('Tag: %s-%s-%s' % (pyver, abi, arch)) + p = os.path.join(distinfo, 'WHEEL') + with open(p, 'w') as f: + f.write('\n'.join(wheel_metadata)) + ap = to_posix(os.path.join(info_dir, 'WHEEL')) + archive_paths.append((ap, p)) + + # Now, at last, RECORD. + # Paths in here are archive paths - nothing else makes sense. + self.write_records((distinfo, info_dir), libdir, archive_paths) + # Now, ready to build the zip file + pathname = os.path.join(self.dirname, self.filename) + self.build_zip(pathname, archive_paths) + return pathname + + def install(self, paths, maker, **kwargs): + """ + Install a wheel to the specified paths. If kwarg ``warner`` is + specified, it should be a callable, which will be called with two + tuples indicating the wheel version of this software and the wheel + version in the file, if there is a discrepancy in the versions. + This can be used to issue any warnings to raise any exceptions. + If kwarg ``lib_only`` is True, only the purelib/platlib files are + installed, and the headers, scripts, data and dist-info metadata are + not written. + + The return value is a :class:`InstalledDistribution` instance unless + ``options.lib_only`` is True, in which case the return value is ``None``. + """ + + dry_run = maker.dry_run + warner = kwargs.get('warner') + lib_only = kwargs.get('lib_only', False) + + pathname = os.path.join(self.dirname, self.filename) + name_ver = '%s-%s' % (self.name, self.version) + data_dir = '%s.data' % name_ver + info_dir = '%s.dist-info' % name_ver + + metadata_name = posixpath.join(info_dir, METADATA_FILENAME) + wheel_metadata_name = posixpath.join(info_dir, 'WHEEL') + record_name = posixpath.join(info_dir, 'RECORD') + + wrapper = codecs.getreader('utf-8') + + with ZipFile(pathname, 'r') as zf: + with zf.open(wheel_metadata_name) as bwf: + wf = wrapper(bwf) + message = message_from_file(wf) + wv = message['Wheel-Version'].split('.', 1) + file_version = tuple([int(i) for i in wv]) + if (file_version != self.wheel_version) and warner: + warner(self.wheel_version, file_version) + + if message['Root-Is-Purelib'] == 'true': + libdir = paths['purelib'] + else: + libdir = paths['platlib'] + + records = {} + with zf.open(record_name) as bf: + with CSVReader(stream=bf) as reader: + for row in reader: + p = row[0] + records[p] = row + + data_pfx = posixpath.join(data_dir, '') + info_pfx = posixpath.join(info_dir, '') + script_pfx = posixpath.join(data_dir, 'scripts', '') + + # make a new instance rather than a copy of maker's, + # as we mutate it + fileop = FileOperator(dry_run=dry_run) + fileop.record = True # so we can rollback if needed + + bc = not sys.dont_write_bytecode # Double negatives. Lovely! + + outfiles = [] # for RECORD writing + + # for script copying/shebang processing + workdir = tempfile.mkdtemp() + # set target dir later + # we default add_launchers to False, as the + # Python Launcher should be used instead + maker.source_dir = workdir + maker.target_dir = None + try: + for zinfo in zf.infolist(): + arcname = zinfo.filename + if isinstance(arcname, text_type): + u_arcname = arcname + else: + u_arcname = arcname.decode('utf-8') + # The signature file won't be in RECORD, + # and we don't currently don't do anything with it + if u_arcname.endswith('/RECORD.jws'): + continue + row = records[u_arcname] + if row[2] and str(zinfo.file_size) != row[2]: + raise DistlibException('size mismatch for ' + '%s' % u_arcname) + if row[1]: + kind, value = row[1].split('=', 1) + with zf.open(arcname) as bf: + data = bf.read() + _, digest = self.get_hash(data, kind) + if digest != value: + raise DistlibException('digest mismatch for ' + '%s' % arcname) + + if lib_only and u_arcname.startswith((info_pfx, data_pfx)): + logger.debug('lib_only: skipping %s', u_arcname) + continue + is_script = (u_arcname.startswith(script_pfx) + and not u_arcname.endswith('.exe')) + + if u_arcname.startswith(data_pfx): + _, where, rp = u_arcname.split('/', 2) + outfile = os.path.join(paths[where], convert_path(rp)) + else: + # meant for site-packages. + if u_arcname in (wheel_metadata_name, record_name): + continue + outfile = os.path.join(libdir, convert_path(u_arcname)) + if not is_script: + with zf.open(arcname) as bf: + fileop.copy_stream(bf, outfile) + outfiles.append(outfile) + # Double check the digest of the written file + if not dry_run and row[1]: + with open(outfile, 'rb') as bf: + data = bf.read() + _, newdigest = self.get_hash(data, kind) + if newdigest != digest: + raise DistlibException('digest mismatch ' + 'on write for ' + '%s' % outfile) + if bc and outfile.endswith('.py'): + try: + pyc = fileop.byte_compile(outfile) + outfiles.append(pyc) + except Exception: + # Don't give up if byte-compilation fails, + # but log it and perhaps warn the user + logger.warning('Byte-compilation failed', + exc_info=True) + else: + fn = os.path.basename(convert_path(arcname)) + workname = os.path.join(workdir, fn) + with zf.open(arcname) as bf: + fileop.copy_stream(bf, workname) + + dn, fn = os.path.split(outfile) + maker.target_dir = dn + filenames = maker.make(fn) + fileop.set_executable_mode(filenames) + outfiles.extend(filenames) + + if lib_only: + logger.debug('lib_only: returning None') + dist = None + else: + # Generate scripts + + # Try to get pydist.json so we can see if there are + # any commands to generate. If this fails (e.g. because + # of a legacy wheel), log a warning but don't give up. + commands = None + file_version = self.info['Wheel-Version'] + if file_version == '1.0': + # Use legacy info + ep = posixpath.join(info_dir, 'entry_points.txt') + try: + with zf.open(ep) as bwf: + epdata = read_exports(bwf) + commands = {} + for key in ('console', 'gui'): + k = '%s_scripts' % key + if k in epdata: + commands['wrap_%s' % key] = d = {} + for v in epdata[k].values(): + s = '%s:%s' % (v.prefix, v.suffix) + if v.flags: + s += ' %s' % v.flags + d[v.name] = s + except Exception: + logger.warning('Unable to read legacy script ' + 'metadata, so cannot generate ' + 'scripts') + else: + try: + with zf.open(metadata_name) as bwf: + wf = wrapper(bwf) + commands = json.load(wf).get('extensions') + if commands: + commands = commands.get('python.commands') + except Exception: + logger.warning('Unable to read JSON metadata, so ' + 'cannot generate scripts') + if commands: + console_scripts = commands.get('wrap_console', {}) + gui_scripts = commands.get('wrap_gui', {}) + if console_scripts or gui_scripts: + script_dir = paths.get('scripts', '') + if not os.path.isdir(script_dir): + raise ValueError('Valid script path not ' + 'specified') + maker.target_dir = script_dir + for k, v in console_scripts.items(): + script = '%s = %s' % (k, v) + filenames = maker.make(script) + fileop.set_executable_mode(filenames) + + if gui_scripts: + options = {'gui': True } + for k, v in gui_scripts.items(): + script = '%s = %s' % (k, v) + filenames = maker.make(script, options) + fileop.set_executable_mode(filenames) + + p = os.path.join(libdir, info_dir) + dist = InstalledDistribution(p) + + # Write SHARED + paths = dict(paths) # don't change passed in dict + del paths['purelib'] + del paths['platlib'] + paths['lib'] = libdir + p = dist.write_shared_locations(paths, dry_run) + if p: + outfiles.append(p) + + # Write RECORD + dist.write_installed_files(outfiles, paths['prefix'], + dry_run) + return dist + except Exception: # pragma: no cover + logger.exception('installation failed.') + fileop.rollback() + raise + finally: + shutil.rmtree(workdir) + + def _get_dylib_cache(self): + global cache + if cache is None: + # Use native string to avoid issues on 2.x: see Python #20140. + base = os.path.join(get_cache_base(), str('dylib-cache'), + sys.version[:3]) + cache = Cache(base) + return cache + + def _get_extensions(self): + pathname = os.path.join(self.dirname, self.filename) + name_ver = '%s-%s' % (self.name, self.version) + info_dir = '%s.dist-info' % name_ver + arcname = posixpath.join(info_dir, 'EXTENSIONS') + wrapper = codecs.getreader('utf-8') + result = [] + with ZipFile(pathname, 'r') as zf: + try: + with zf.open(arcname) as bf: + wf = wrapper(bf) + extensions = json.load(wf) + cache = self._get_dylib_cache() + prefix = cache.prefix_to_dir(pathname) + cache_base = os.path.join(cache.base, prefix) + if not os.path.isdir(cache_base): + os.makedirs(cache_base) + for name, relpath in extensions.items(): + dest = os.path.join(cache_base, convert_path(relpath)) + if not os.path.exists(dest): + extract = True + else: + file_time = os.stat(dest).st_mtime + file_time = datetime.datetime.fromtimestamp(file_time) + info = zf.getinfo(relpath) + wheel_time = datetime.datetime(*info.date_time) + extract = wheel_time > file_time + if extract: + zf.extract(relpath, cache_base) + result.append((name, dest)) + except KeyError: + pass + return result + + def is_compatible(self): + """ + Determine if a wheel is compatible with the running system. + """ + return is_compatible(self) + + def is_mountable(self): + """ + Determine if a wheel is asserted as mountable by its metadata. + """ + return True # for now - metadata details TBD + + def mount(self, append=False): + pathname = os.path.abspath(os.path.join(self.dirname, self.filename)) + if not self.is_compatible(): + msg = 'Wheel %s not compatible with this Python.' % pathname + raise DistlibException(msg) + if not self.is_mountable(): + msg = 'Wheel %s is marked as not mountable.' % pathname + raise DistlibException(msg) + if pathname in sys.path: + logger.debug('%s already in path', pathname) + else: + if append: + sys.path.append(pathname) + else: + sys.path.insert(0, pathname) + extensions = self._get_extensions() + if extensions: + if _hook not in sys.meta_path: + sys.meta_path.append(_hook) + _hook.add(pathname, extensions) + + def unmount(self): + pathname = os.path.abspath(os.path.join(self.dirname, self.filename)) + if pathname not in sys.path: + logger.debug('%s not in path', pathname) + else: + sys.path.remove(pathname) + if pathname in _hook.impure_wheels: + _hook.remove(pathname) + if not _hook.impure_wheels: + if _hook in sys.meta_path: + sys.meta_path.remove(_hook) + + def verify(self): + pathname = os.path.join(self.dirname, self.filename) + name_ver = '%s-%s' % (self.name, self.version) + data_dir = '%s.data' % name_ver + info_dir = '%s.dist-info' % name_ver + + metadata_name = posixpath.join(info_dir, METADATA_FILENAME) + wheel_metadata_name = posixpath.join(info_dir, 'WHEEL') + record_name = posixpath.join(info_dir, 'RECORD') + + wrapper = codecs.getreader('utf-8') + + with ZipFile(pathname, 'r') as zf: + with zf.open(wheel_metadata_name) as bwf: + wf = wrapper(bwf) + message = message_from_file(wf) + wv = message['Wheel-Version'].split('.', 1) + file_version = tuple([int(i) for i in wv]) + # TODO version verification + + records = {} + with zf.open(record_name) as bf: + with CSVReader(stream=bf) as reader: + for row in reader: + p = row[0] + records[p] = row + + for zinfo in zf.infolist(): + arcname = zinfo.filename + if isinstance(arcname, text_type): + u_arcname = arcname + else: + u_arcname = arcname.decode('utf-8') + if '..' in u_arcname: + raise DistlibException('invalid entry in ' + 'wheel: %r' % u_arcname) + + # The signature file won't be in RECORD, + # and we don't currently don't do anything with it + if u_arcname.endswith('/RECORD.jws'): + continue + row = records[u_arcname] + if row[2] and str(zinfo.file_size) != row[2]: + raise DistlibException('size mismatch for ' + '%s' % u_arcname) + if row[1]: + kind, value = row[1].split('=', 1) + with zf.open(arcname) as bf: + data = bf.read() + _, digest = self.get_hash(data, kind) + if digest != value: + raise DistlibException('digest mismatch for ' + '%s' % arcname) + + def update(self, modifier, dest_dir=None, **kwargs): + """ + Update the contents of a wheel in a generic way. The modifier should + be a callable which expects a dictionary argument: its keys are + archive-entry paths, and its values are absolute filesystem paths + where the contents the corresponding archive entries can be found. The + modifier is free to change the contents of the files pointed to, add + new entries and remove entries, before returning. This method will + extract the entire contents of the wheel to a temporary location, call + the modifier, and then use the passed (and possibly updated) + dictionary to write a new wheel. If ``dest_dir`` is specified, the new + wheel is written there -- otherwise, the original wheel is overwritten. + + The modifier should return True if it updated the wheel, else False. + This method returns the same value the modifier returns. + """ + + def get_version(path_map, info_dir): + version = path = None + key = '%s/%s' % (info_dir, METADATA_FILENAME) + if key not in path_map: + key = '%s/PKG-INFO' % info_dir + if key in path_map: + path = path_map[key] + version = Metadata(path=path).version + return version, path + + def update_version(version, path): + updated = None + try: + v = NormalizedVersion(version) + i = version.find('-') + if i < 0: + updated = '%s+1' % version + else: + parts = [int(s) for s in version[i + 1:].split('.')] + parts[-1] += 1 + updated = '%s+%s' % (version[:i], + '.'.join(str(i) for i in parts)) + except UnsupportedVersionError: + logger.debug('Cannot update non-compliant (PEP-440) ' + 'version %r', version) + if updated: + md = Metadata(path=path) + md.version = updated + legacy = not path.endswith(METADATA_FILENAME) + md.write(path=path, legacy=legacy) + logger.debug('Version updated from %r to %r', version, + updated) + + pathname = os.path.join(self.dirname, self.filename) + name_ver = '%s-%s' % (self.name, self.version) + info_dir = '%s.dist-info' % name_ver + record_name = posixpath.join(info_dir, 'RECORD') + with tempdir() as workdir: + with ZipFile(pathname, 'r') as zf: + path_map = {} + for zinfo in zf.infolist(): + arcname = zinfo.filename + if isinstance(arcname, text_type): + u_arcname = arcname + else: + u_arcname = arcname.decode('utf-8') + if u_arcname == record_name: + continue + if '..' in u_arcname: + raise DistlibException('invalid entry in ' + 'wheel: %r' % u_arcname) + zf.extract(zinfo, workdir) + path = os.path.join(workdir, convert_path(u_arcname)) + path_map[u_arcname] = path + + # Remember the version. + original_version, _ = get_version(path_map, info_dir) + # Files extracted. Call the modifier. + modified = modifier(path_map, **kwargs) + if modified: + # Something changed - need to build a new wheel. + current_version, path = get_version(path_map, info_dir) + if current_version and (current_version == original_version): + # Add or update local version to signify changes. + update_version(current_version, path) + # Decide where the new wheel goes. + if dest_dir is None: + fd, newpath = tempfile.mkstemp(suffix='.whl', + prefix='wheel-update-', + dir=workdir) + os.close(fd) + else: + if not os.path.isdir(dest_dir): + raise DistlibException('Not a directory: %r' % dest_dir) + newpath = os.path.join(dest_dir, self.filename) + archive_paths = list(path_map.items()) + distinfo = os.path.join(workdir, info_dir) + info = distinfo, info_dir + self.write_records(info, workdir, archive_paths) + self.build_zip(newpath, archive_paths) + if dest_dir is None: + shutil.copyfile(newpath, pathname) + return modified + +def compatible_tags(): + """ + Return (pyver, abi, arch) tuples compatible with this Python. + """ + versions = [VER_SUFFIX] + major = VER_SUFFIX[0] + for minor in range(sys.version_info[1] - 1, - 1, -1): + versions.append(''.join([major, str(minor)])) + + abis = [] + for suffix, _, _ in imp.get_suffixes(): + if suffix.startswith('.abi'): + abis.append(suffix.split('.', 2)[1]) + abis.sort() + if ABI != 'none': + abis.insert(0, ABI) + abis.append('none') + result = [] + + arches = [ARCH] + if sys.platform == 'darwin': + m = re.match('(\w+)_(\d+)_(\d+)_(\w+)$', ARCH) + if m: + name, major, minor, arch = m.groups() + minor = int(minor) + matches = [arch] + if arch in ('i386', 'ppc'): + matches.append('fat') + if arch in ('i386', 'ppc', 'x86_64'): + matches.append('fat3') + if arch in ('ppc64', 'x86_64'): + matches.append('fat64') + if arch in ('i386', 'x86_64'): + matches.append('intel') + if arch in ('i386', 'x86_64', 'intel', 'ppc', 'ppc64'): + matches.append('universal') + while minor >= 0: + for match in matches: + s = '%s_%s_%s_%s' % (name, major, minor, match) + if s != ARCH: # already there + arches.append(s) + minor -= 1 + + # Most specific - our Python version, ABI and arch + for abi in abis: + for arch in arches: + result.append((''.join((IMP_PREFIX, versions[0])), abi, arch)) + + # where no ABI / arch dependency, but IMP_PREFIX dependency + for i, version in enumerate(versions): + result.append((''.join((IMP_PREFIX, version)), 'none', 'any')) + if i == 0: + result.append((''.join((IMP_PREFIX, version[0])), 'none', 'any')) + + # no IMP_PREFIX, ABI or arch dependency + for i, version in enumerate(versions): + result.append((''.join(('py', version)), 'none', 'any')) + if i == 0: + result.append((''.join(('py', version[0])), 'none', 'any')) + return set(result) + + +COMPATIBLE_TAGS = compatible_tags() + +del compatible_tags + + +def is_compatible(wheel, tags=None): + if not isinstance(wheel, Wheel): + wheel = Wheel(wheel) # assume it's a filename + result = False + if tags is None: + tags = COMPATIBLE_TAGS + for ver, abi, arch in tags: + if ver in wheel.pyver and abi in wheel.abi and arch in wheel.arch: + result = True + break + return result diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/wheel.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/distlib/wheel.pyc new file mode 100644 index 0000000000000000000000000000000000000000..10cafaf41abfcbf9987675a7abbd2b3483a95e58 GIT binary patch literal 30884 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�B6%4&6DUYRxM3RvC@dS|*YJMvyp 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' instead.", + "expected-tag-name-but-got-question-mark": + "Expected tag name. Got '?' instead. (HTML doesn't " + "support processing instructions.)", + "expected-tag-name": + "Expected tag name. Got something else instead", + "expected-closing-tag-but-got-right-bracket": + "Expected closing tag. Got '>' instead. Ignoring ''.", + "expected-closing-tag-but-got-eof": + "Expected closing tag. Unexpected end of file.", + "expected-closing-tag-but-got-char": + "Expected closing tag. Unexpected character '%(data)s' found.", + "eof-in-tag-name": + "Unexpected end of file in the tag name.", + "expected-attribute-name-but-got-eof": + "Unexpected end of file. Expected attribute name instead.", + "eof-in-attribute-name": + "Unexpected end of file in attribute name.", + "invalid-character-in-attribute-name": + "Invalid character in attribute name", + "duplicate-attribute": + "Dropped duplicate attribute on tag.", + "expected-end-of-tag-name-but-got-eof": + "Unexpected end of file. Expected = or end of tag.", + "expected-attribute-value-but-got-eof": + "Unexpected end of file. Expected attribute value.", + "expected-attribute-value-but-got-right-bracket": + "Expected attribute value. Got '>' instead.", + 'equals-in-unquoted-attribute-value': + "Unexpected = in unquoted attribute", + 'unexpected-character-in-unquoted-attribute-value': + "Unexpected character in unquoted attribute", + "invalid-character-after-attribute-name": + "Unexpected character after attribute name.", + "unexpected-character-after-attribute-value": + "Unexpected character after attribute value.", + "eof-in-attribute-value-double-quote": + "Unexpected end of file in attribute value (\").", + "eof-in-attribute-value-single-quote": + "Unexpected end of file in attribute value (').", + "eof-in-attribute-value-no-quotes": + "Unexpected end of file in attribute value.", + "unexpected-EOF-after-solidus-in-tag": + "Unexpected end of file in tag. Expected >", + "unexpected-character-after-solidus-in-tag": + "Unexpected character after / in tag. Expected >", + "expected-dashes-or-doctype": + "Expected '--' or 'DOCTYPE'. Not found.", + "unexpected-bang-after-double-dash-in-comment": + "Unexpected ! after -- in comment", + "unexpected-space-after-double-dash-in-comment": + "Unexpected space after -- in comment", + "incorrect-comment": + "Incorrect comment.", + "eof-in-comment": + "Unexpected end of file in comment.", + "eof-in-comment-end-dash": + "Unexpected end of file in comment (-)", + "unexpected-dash-after-double-dash-in-comment": + "Unexpected '-' after '--' found in comment.", + "eof-in-comment-double-dash": + "Unexpected end of file in comment (--).", + "eof-in-comment-end-space-state": + "Unexpected end of file in comment.", + "eof-in-comment-end-bang-state": + "Unexpected end of file in comment.", + "unexpected-char-in-comment": + "Unexpected character in comment found.", + "need-space-after-doctype": + "No space after literal string 'DOCTYPE'.", + "expected-doctype-name-but-got-right-bracket": + "Unexpected > character. Expected DOCTYPE name.", + "expected-doctype-name-but-got-eof": + "Unexpected end of file. Expected DOCTYPE name.", + "eof-in-doctype-name": + "Unexpected end of file in DOCTYPE name.", + "eof-in-doctype": + "Unexpected end of file in DOCTYPE.", + "expected-space-or-right-bracket-in-doctype": + "Expected space or '>'. Got '%(data)s'", + "unexpected-end-of-doctype": + "Unexpected end of DOCTYPE.", + "unexpected-char-in-doctype": + "Unexpected character in DOCTYPE.", + "eof-in-innerhtml": + "XXX innerHTML EOF", + "unexpected-doctype": + "Unexpected DOCTYPE. Ignored.", + "non-html-root": + "html needs to be the first start tag.", + "expected-doctype-but-got-eof": + "Unexpected End of file. Expected DOCTYPE.", + "unknown-doctype": + "Erroneous DOCTYPE.", + "expected-doctype-but-got-chars": + "Unexpected non-space characters. Expected DOCTYPE.", + "expected-doctype-but-got-start-tag": + "Unexpected start tag (%(name)s). Expected DOCTYPE.", + "expected-doctype-but-got-end-tag": + "Unexpected end tag (%(name)s). Expected DOCTYPE.", + "end-tag-after-implied-root": + "Unexpected end tag (%(name)s) after the (implied) root element.", + "expected-named-closing-tag-but-got-eof": + "Unexpected end of file. Expected end tag (%(name)s).", + "two-heads-are-not-better-than-one": + "Unexpected start tag head in existing head. Ignored.", + "unexpected-end-tag": + "Unexpected end tag (%(name)s). Ignored.", + "unexpected-start-tag-out-of-my-head": + "Unexpected start tag (%(name)s) that can be in head. Moved.", + "unexpected-start-tag": + "Unexpected start tag (%(name)s).", + "missing-end-tag": + "Missing end tag (%(name)s).", + "missing-end-tags": + "Missing end tags (%(name)s).", + "unexpected-start-tag-implies-end-tag": + "Unexpected start tag (%(startName)s) " + "implies end tag (%(endName)s).", + "unexpected-start-tag-treated-as": + "Unexpected start tag (%(originalName)s). Treated as %(newName)s.", + "deprecated-tag": + "Unexpected start tag %(name)s. Don't use it!", + "unexpected-start-tag-ignored": + "Unexpected start tag %(name)s. Ignored.", + "expected-one-end-tag-but-got-another": + "Unexpected end tag (%(gotName)s). " + "Missing end tag (%(expectedName)s).", + "end-tag-too-early": + "End tag (%(name)s) seen too early. Expected other end tag.", + "end-tag-too-early-named": + "Unexpected end tag (%(gotName)s). Expected end tag (%(expectedName)s).", + "end-tag-too-early-ignored": + "End tag (%(name)s) seen too early. Ignored.", + "adoption-agency-1.1": + "End tag (%(name)s) violates step 1, " + "paragraph 1 of the adoption agency algorithm.", + "adoption-agency-1.2": + "End tag (%(name)s) violates step 1, " + "paragraph 2 of the adoption agency algorithm.", + "adoption-agency-1.3": + "End tag (%(name)s) violates step 1, " + "paragraph 3 of the adoption agency algorithm.", + "adoption-agency-4.4": + "End tag (%(name)s) violates step 4, " + "paragraph 4 of the adoption agency algorithm.", + "unexpected-end-tag-treated-as": + "Unexpected end tag (%(originalName)s). Treated as %(newName)s.", + "no-end-tag": + "This element (%(name)s) has no end tag.", + "unexpected-implied-end-tag-in-table": + "Unexpected implied end tag (%(name)s) in the table phase.", + "unexpected-implied-end-tag-in-table-body": + "Unexpected implied end tag (%(name)s) in the table body phase.", + "unexpected-char-implies-table-voodoo": + "Unexpected non-space characters in " + "table context caused voodoo mode.", + "unexpected-hidden-input-in-table": + "Unexpected input with type hidden in table context.", + "unexpected-form-in-table": + "Unexpected form in table context.", + "unexpected-start-tag-implies-table-voodoo": + "Unexpected start tag (%(name)s) in " + "table context caused voodoo mode.", + "unexpected-end-tag-implies-table-voodoo": + "Unexpected end tag (%(name)s) in " + "table context caused voodoo mode.", + "unexpected-cell-in-table-body": + "Unexpected table cell start tag (%(name)s) " + "in the table body phase.", + "unexpected-cell-end-tag": + "Got table cell end tag (%(name)s) " + "while required end tags are missing.", + "unexpected-end-tag-in-table-body": + "Unexpected end tag (%(name)s) in the table body phase. Ignored.", + "unexpected-implied-end-tag-in-table-row": + "Unexpected implied end tag (%(name)s) in the table row phase.", + "unexpected-end-tag-in-table-row": + "Unexpected end tag (%(name)s) in the table row phase. Ignored.", + "unexpected-select-in-select": + "Unexpected select start tag in the select phase " + "treated as select end tag.", + "unexpected-input-in-select": + "Unexpected input start tag in the select phase.", + "unexpected-start-tag-in-select": + "Unexpected start tag token (%(name)s in the select phase. " + "Ignored.", + "unexpected-end-tag-in-select": + "Unexpected end tag (%(name)s) in the select phase. Ignored.", + "unexpected-table-element-start-tag-in-select-in-table": + "Unexpected table element start tag (%(name)s) in the select in table phase.", + "unexpected-table-element-end-tag-in-select-in-table": + "Unexpected table element end tag (%(name)s) in the select in table phase.", + "unexpected-char-after-body": + "Unexpected non-space characters in the after body phase.", + "unexpected-start-tag-after-body": + "Unexpected start tag token (%(name)s)" + " in the after body phase.", + "unexpected-end-tag-after-body": + "Unexpected end tag token (%(name)s)" + " in the after body phase.", + "unexpected-char-in-frameset": + "Unexpected characters in the frameset phase. Characters ignored.", + "unexpected-start-tag-in-frameset": + "Unexpected start tag token (%(name)s)" + " in the frameset phase. Ignored.", + "unexpected-frameset-in-frameset-innerhtml": + "Unexpected end tag token (frameset) " + "in the frameset phase (innerHTML).", + "unexpected-end-tag-in-frameset": + "Unexpected end tag token (%(name)s)" + " in the frameset phase. Ignored.", + "unexpected-char-after-frameset": + "Unexpected non-space characters in the " + "after frameset phase. Ignored.", + "unexpected-start-tag-after-frameset": + "Unexpected start tag (%(name)s)" + " in the after frameset phase. Ignored.", + "unexpected-end-tag-after-frameset": + "Unexpected end tag (%(name)s)" + " in the after frameset phase. Ignored.", + "unexpected-end-tag-after-body-innerhtml": + "Unexpected end tag after body(innerHtml)", + "expected-eof-but-got-char": + "Unexpected non-space characters. Expected end of file.", + "expected-eof-but-got-start-tag": + "Unexpected start tag (%(name)s)" + ". Expected end of file.", + "expected-eof-but-got-end-tag": + "Unexpected end tag (%(name)s)" + ". Expected end of file.", + "eof-in-table": + "Unexpected end of file. Expected table content.", + "eof-in-select": + "Unexpected end of file. Expected select content.", + "eof-in-frameset": + "Unexpected end of file. Expected frameset content.", + "eof-in-script-in-script": + "Unexpected end of file. Expected script content.", + "eof-in-foreign-lands": + "Unexpected end of file. Expected foreign content", + "non-void-element-with-trailing-solidus": + "Trailing solidus not allowed on element %(name)s", + "unexpected-html-element-in-foreign-content": + "Element %(name)s not allowed in a non-html context", + "unexpected-end-tag-before-html": + "Unexpected end tag (%(name)s) before html.", + "XXX-undefined-error": + "Undefined error (this sucks and should be fixed)", +} + +namespaces = { + "html": "http://www.w3.org/1999/xhtml", + "mathml": "http://www.w3.org/1998/Math/MathML", + "svg": "http://www.w3.org/2000/svg", + "xlink": "http://www.w3.org/1999/xlink", + "xml": "http://www.w3.org/XML/1998/namespace", + "xmlns": "http://www.w3.org/2000/xmlns/" +} + +scopingElements = frozenset([ + (namespaces["html"], "applet"), + (namespaces["html"], "caption"), + (namespaces["html"], "html"), + (namespaces["html"], "marquee"), + (namespaces["html"], "object"), + (namespaces["html"], "table"), + (namespaces["html"], "td"), + (namespaces["html"], "th"), + (namespaces["mathml"], "mi"), + (namespaces["mathml"], "mo"), + (namespaces["mathml"], "mn"), + (namespaces["mathml"], "ms"), + (namespaces["mathml"], "mtext"), + (namespaces["mathml"], "annotation-xml"), + (namespaces["svg"], "foreignObject"), + (namespaces["svg"], "desc"), + (namespaces["svg"], "title"), +]) + +formattingElements = frozenset([ + (namespaces["html"], "a"), + (namespaces["html"], "b"), + (namespaces["html"], "big"), + (namespaces["html"], "code"), + (namespaces["html"], "em"), + (namespaces["html"], "font"), + (namespaces["html"], "i"), + (namespaces["html"], "nobr"), + (namespaces["html"], "s"), + (namespaces["html"], "small"), + (namespaces["html"], "strike"), + (namespaces["html"], "strong"), + (namespaces["html"], "tt"), + (namespaces["html"], "u") +]) + +specialElements = frozenset([ + (namespaces["html"], "address"), + (namespaces["html"], "applet"), + (namespaces["html"], "area"), + (namespaces["html"], "article"), + (namespaces["html"], "aside"), + (namespaces["html"], "base"), + (namespaces["html"], "basefont"), + (namespaces["html"], "bgsound"), + (namespaces["html"], "blockquote"), + (namespaces["html"], "body"), + (namespaces["html"], "br"), + (namespaces["html"], "button"), + (namespaces["html"], "caption"), + (namespaces["html"], "center"), + (namespaces["html"], "col"), + (namespaces["html"], "colgroup"), + (namespaces["html"], "command"), + (namespaces["html"], "dd"), + (namespaces["html"], "details"), + (namespaces["html"], "dir"), + (namespaces["html"], "div"), + (namespaces["html"], "dl"), + (namespaces["html"], "dt"), + (namespaces["html"], "embed"), + (namespaces["html"], "fieldset"), + (namespaces["html"], "figure"), + (namespaces["html"], "footer"), + (namespaces["html"], "form"), + (namespaces["html"], "frame"), + (namespaces["html"], "frameset"), + (namespaces["html"], "h1"), + (namespaces["html"], "h2"), + (namespaces["html"], "h3"), + (namespaces["html"], "h4"), + (namespaces["html"], "h5"), + (namespaces["html"], "h6"), + (namespaces["html"], "head"), + (namespaces["html"], "header"), + (namespaces["html"], "hr"), + (namespaces["html"], "html"), + (namespaces["html"], "iframe"), + # Note that image is commented out in the spec as "this isn't an + # element that can end up on the stack, so it doesn't matter," + (namespaces["html"], "image"), + (namespaces["html"], "img"), + (namespaces["html"], "input"), + (namespaces["html"], "isindex"), + (namespaces["html"], "li"), + (namespaces["html"], "link"), + (namespaces["html"], "listing"), + (namespaces["html"], "marquee"), + (namespaces["html"], "menu"), + (namespaces["html"], "meta"), + (namespaces["html"], "nav"), + (namespaces["html"], "noembed"), + (namespaces["html"], "noframes"), + (namespaces["html"], "noscript"), + (namespaces["html"], "object"), + (namespaces["html"], "ol"), + (namespaces["html"], "p"), + (namespaces["html"], "param"), + (namespaces["html"], "plaintext"), + (namespaces["html"], "pre"), + (namespaces["html"], "script"), + (namespaces["html"], "section"), + (namespaces["html"], "select"), + (namespaces["html"], "style"), + (namespaces["html"], "table"), + (namespaces["html"], "tbody"), + (namespaces["html"], "td"), + (namespaces["html"], "textarea"), + (namespaces["html"], "tfoot"), + (namespaces["html"], "th"), + (namespaces["html"], "thead"), + (namespaces["html"], "title"), + (namespaces["html"], "tr"), + (namespaces["html"], "ul"), + (namespaces["html"], "wbr"), + (namespaces["html"], "xmp"), + (namespaces["svg"], "foreignObject") +]) + +htmlIntegrationPointElements = frozenset([ + (namespaces["mathml"], "annotaion-xml"), + (namespaces["svg"], "foreignObject"), + (namespaces["svg"], "desc"), + (namespaces["svg"], "title") +]) + +mathmlTextIntegrationPointElements = frozenset([ + (namespaces["mathml"], "mi"), + (namespaces["mathml"], "mo"), + (namespaces["mathml"], "mn"), + (namespaces["mathml"], "ms"), + (namespaces["mathml"], "mtext") +]) + +adjustForeignAttributes = { + "xlink:actuate": ("xlink", "actuate", namespaces["xlink"]), + "xlink:arcrole": ("xlink", "arcrole", namespaces["xlink"]), + "xlink:href": ("xlink", "href", namespaces["xlink"]), + "xlink:role": ("xlink", "role", namespaces["xlink"]), + "xlink:show": ("xlink", "show", namespaces["xlink"]), + "xlink:title": ("xlink", "title", namespaces["xlink"]), + "xlink:type": ("xlink", "type", namespaces["xlink"]), + "xml:base": ("xml", "base", namespaces["xml"]), + "xml:lang": ("xml", "lang", namespaces["xml"]), + "xml:space": ("xml", "space", namespaces["xml"]), + "xmlns": (None, "xmlns", namespaces["xmlns"]), + "xmlns:xlink": ("xmlns", "xlink", namespaces["xmlns"]) +} + +unadjustForeignAttributes = dict([((ns, local), qname) for qname, (prefix, local, ns) in + adjustForeignAttributes.items()]) + +spaceCharacters = frozenset([ + "\t", + "\n", + "\u000C", + " ", + "\r" +]) + +tableInsertModeElements = frozenset([ + "table", + "tbody", + "tfoot", + "thead", + "tr" +]) + +asciiLowercase = frozenset(string.ascii_lowercase) +asciiUppercase = frozenset(string.ascii_uppercase) +asciiLetters = frozenset(string.ascii_letters) +digits = frozenset(string.digits) +hexDigits = frozenset(string.hexdigits) + +asciiUpper2Lower = dict([(ord(c), ord(c.lower())) + for c in string.ascii_uppercase]) + +# Heading elements need to be ordered +headingElements = ( + "h1", + "h2", + "h3", + "h4", + "h5", + "h6" +) + +voidElements = frozenset([ + "base", + "command", + "event-source", + "link", + "meta", + "hr", + "br", + "img", + "embed", + "param", + "area", + "col", + "input", + "source", + "track" +]) + +cdataElements = frozenset(['title', 'textarea']) + +rcdataElements = frozenset([ + 'style', + 'script', + 'xmp', + 'iframe', + 'noembed', + 'noframes', + 'noscript' +]) + +booleanAttributes = { + "": frozenset(["irrelevant"]), + "style": frozenset(["scoped"]), + "img": frozenset(["ismap"]), + "audio": frozenset(["autoplay", "controls"]), + "video": frozenset(["autoplay", "controls"]), + "script": frozenset(["defer", "async"]), + "details": frozenset(["open"]), + "datagrid": frozenset(["multiple", "disabled"]), + "command": frozenset(["hidden", "disabled", "checked", "default"]), + "hr": frozenset(["noshade"]), + "menu": frozenset(["autosubmit"]), + "fieldset": frozenset(["disabled", "readonly"]), + "option": frozenset(["disabled", "readonly", "selected"]), + "optgroup": frozenset(["disabled", "readonly"]), + "button": frozenset(["disabled", "autofocus"]), + "input": frozenset(["disabled", "readonly", "required", "autofocus", "checked", "ismap"]), + "select": frozenset(["disabled", "readonly", "autofocus", "multiple"]), + "output": frozenset(["disabled", "readonly"]), +} + +# entitiesWindows1252 has to be _ordered_ and needs to have an index. It +# therefore can't be a frozenset. +entitiesWindows1252 = ( + 8364, # 0x80 0x20AC EURO SIGN + 65533, # 0x81 UNDEFINED + 8218, # 0x82 0x201A SINGLE LOW-9 QUOTATION MARK + 402, # 0x83 0x0192 LATIN SMALL LETTER F WITH HOOK + 8222, # 0x84 0x201E DOUBLE LOW-9 QUOTATION MARK + 8230, # 0x85 0x2026 HORIZONTAL ELLIPSIS + 8224, # 0x86 0x2020 DAGGER + 8225, # 0x87 0x2021 DOUBLE DAGGER + 710, # 0x88 0x02C6 MODIFIER LETTER CIRCUMFLEX ACCENT + 8240, # 0x89 0x2030 PER MILLE SIGN + 352, # 0x8A 0x0160 LATIN CAPITAL LETTER S WITH CARON + 8249, # 0x8B 0x2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK + 338, # 0x8C 0x0152 LATIN CAPITAL LIGATURE OE + 65533, # 0x8D UNDEFINED + 381, # 0x8E 0x017D LATIN CAPITAL LETTER Z WITH CARON + 65533, # 0x8F UNDEFINED + 65533, # 0x90 UNDEFINED + 8216, # 0x91 0x2018 LEFT SINGLE QUOTATION MARK + 8217, # 0x92 0x2019 RIGHT SINGLE QUOTATION MARK + 8220, # 0x93 0x201C LEFT DOUBLE QUOTATION MARK + 8221, # 0x94 0x201D RIGHT DOUBLE QUOTATION MARK + 8226, # 0x95 0x2022 BULLET + 8211, # 0x96 0x2013 EN DASH + 8212, # 0x97 0x2014 EM DASH + 732, # 0x98 0x02DC SMALL TILDE + 8482, # 0x99 0x2122 TRADE MARK SIGN + 353, # 0x9A 0x0161 LATIN SMALL LETTER S WITH CARON + 8250, # 0x9B 0x203A SINGLE RIGHT-POINTING ANGLE QUOTATION MARK + 339, # 0x9C 0x0153 LATIN SMALL LIGATURE OE + 65533, # 0x9D UNDEFINED + 382, # 0x9E 0x017E LATIN SMALL LETTER Z WITH CARON + 376 # 0x9F 0x0178 LATIN CAPITAL LETTER Y WITH DIAERESIS +) + +xmlEntities = frozenset(['lt;', 'gt;', 'amp;', 'apos;', 'quot;']) + +entities = { + "AElig": "\xc6", + "AElig;": "\xc6", + "AMP": "&", + "AMP;": "&", + "Aacute": "\xc1", + "Aacute;": "\xc1", + "Abreve;": "\u0102", + "Acirc": "\xc2", + "Acirc;": "\xc2", + "Acy;": "\u0410", + "Afr;": "\U0001d504", + "Agrave": "\xc0", + "Agrave;": "\xc0", + "Alpha;": "\u0391", + "Amacr;": "\u0100", + "And;": "\u2a53", + "Aogon;": "\u0104", + "Aopf;": "\U0001d538", + "ApplyFunction;": "\u2061", + "Aring": "\xc5", + "Aring;": "\xc5", + "Ascr;": "\U0001d49c", + "Assign;": "\u2254", + "Atilde": "\xc3", + "Atilde;": "\xc3", + "Auml": "\xc4", + "Auml;": "\xc4", + "Backslash;": "\u2216", + "Barv;": "\u2ae7", + "Barwed;": "\u2306", + "Bcy;": "\u0411", + "Because;": "\u2235", + "Bernoullis;": "\u212c", + "Beta;": "\u0392", + "Bfr;": "\U0001d505", + "Bopf;": "\U0001d539", + "Breve;": "\u02d8", + "Bscr;": "\u212c", + "Bumpeq;": "\u224e", + "CHcy;": "\u0427", + "COPY": "\xa9", + "COPY;": "\xa9", + "Cacute;": "\u0106", + "Cap;": "\u22d2", + "CapitalDifferentialD;": "\u2145", + "Cayleys;": "\u212d", + "Ccaron;": "\u010c", + "Ccedil": "\xc7", + "Ccedil;": "\xc7", + "Ccirc;": "\u0108", + "Cconint;": "\u2230", + "Cdot;": "\u010a", + "Cedilla;": "\xb8", + "CenterDot;": "\xb7", + "Cfr;": "\u212d", + "Chi;": "\u03a7", + "CircleDot;": "\u2299", + "CircleMinus;": "\u2296", + "CirclePlus;": "\u2295", + "CircleTimes;": "\u2297", + "ClockwiseContourIntegral;": "\u2232", + "CloseCurlyDoubleQuote;": "\u201d", + "CloseCurlyQuote;": "\u2019", + "Colon;": "\u2237", + "Colone;": "\u2a74", + "Congruent;": "\u2261", + "Conint;": "\u222f", + "ContourIntegral;": "\u222e", + "Copf;": "\u2102", + "Coproduct;": "\u2210", + "CounterClockwiseContourIntegral;": "\u2233", + "Cross;": "\u2a2f", + "Cscr;": "\U0001d49e", + "Cup;": "\u22d3", + "CupCap;": "\u224d", + "DD;": "\u2145", + "DDotrahd;": "\u2911", + "DJcy;": "\u0402", + "DScy;": "\u0405", + "DZcy;": "\u040f", + "Dagger;": "\u2021", + "Darr;": "\u21a1", + "Dashv;": "\u2ae4", + "Dcaron;": "\u010e", + "Dcy;": "\u0414", + "Del;": "\u2207", + "Delta;": "\u0394", + "Dfr;": "\U0001d507", + "DiacriticalAcute;": "\xb4", + "DiacriticalDot;": "\u02d9", + "DiacriticalDoubleAcute;": "\u02dd", + "DiacriticalGrave;": "`", + "DiacriticalTilde;": "\u02dc", + "Diamond;": "\u22c4", + "DifferentialD;": "\u2146", + "Dopf;": "\U0001d53b", + "Dot;": "\xa8", + "DotDot;": "\u20dc", + "DotEqual;": "\u2250", + "DoubleContourIntegral;": "\u222f", + "DoubleDot;": "\xa8", + "DoubleDownArrow;": "\u21d3", + "DoubleLeftArrow;": "\u21d0", + "DoubleLeftRightArrow;": "\u21d4", + "DoubleLeftTee;": "\u2ae4", + "DoubleLongLeftArrow;": "\u27f8", + "DoubleLongLeftRightArrow;": "\u27fa", + "DoubleLongRightArrow;": "\u27f9", + "DoubleRightArrow;": "\u21d2", + "DoubleRightTee;": "\u22a8", + "DoubleUpArrow;": "\u21d1", + "DoubleUpDownArrow;": "\u21d5", + "DoubleVerticalBar;": "\u2225", + "DownArrow;": "\u2193", + "DownArrowBar;": "\u2913", + "DownArrowUpArrow;": "\u21f5", + "DownBreve;": "\u0311", + "DownLeftRightVector;": "\u2950", + "DownLeftTeeVector;": "\u295e", + "DownLeftVector;": "\u21bd", + "DownLeftVectorBar;": "\u2956", + "DownRightTeeVector;": "\u295f", + "DownRightVector;": "\u21c1", + "DownRightVectorBar;": "\u2957", + "DownTee;": "\u22a4", + "DownTeeArrow;": "\u21a7", + "Downarrow;": "\u21d3", + "Dscr;": "\U0001d49f", + "Dstrok;": "\u0110", + "ENG;": "\u014a", + "ETH": "\xd0", + "ETH;": "\xd0", + "Eacute": "\xc9", + "Eacute;": "\xc9", + "Ecaron;": "\u011a", + "Ecirc": "\xca", + "Ecirc;": "\xca", + "Ecy;": "\u042d", + "Edot;": "\u0116", + "Efr;": "\U0001d508", + "Egrave": "\xc8", + "Egrave;": "\xc8", + "Element;": "\u2208", + "Emacr;": "\u0112", + "EmptySmallSquare;": "\u25fb", + "EmptyVerySmallSquare;": "\u25ab", + "Eogon;": "\u0118", + "Eopf;": "\U0001d53c", + "Epsilon;": "\u0395", + "Equal;": "\u2a75", + "EqualTilde;": "\u2242", + "Equilibrium;": "\u21cc", + "Escr;": "\u2130", + "Esim;": "\u2a73", + "Eta;": "\u0397", + "Euml": "\xcb", + "Euml;": "\xcb", + "Exists;": "\u2203", + "ExponentialE;": "\u2147", + "Fcy;": "\u0424", + "Ffr;": "\U0001d509", + "FilledSmallSquare;": "\u25fc", + "FilledVerySmallSquare;": "\u25aa", + "Fopf;": "\U0001d53d", + "ForAll;": "\u2200", + "Fouriertrf;": "\u2131", + "Fscr;": "\u2131", + "GJcy;": "\u0403", + "GT": ">", + "GT;": ">", + "Gamma;": "\u0393", + "Gammad;": "\u03dc", + "Gbreve;": "\u011e", + "Gcedil;": "\u0122", + "Gcirc;": "\u011c", + "Gcy;": "\u0413", + "Gdot;": "\u0120", + "Gfr;": "\U0001d50a", + "Gg;": "\u22d9", + "Gopf;": "\U0001d53e", + "GreaterEqual;": "\u2265", + "GreaterEqualLess;": "\u22db", + "GreaterFullEqual;": "\u2267", + "GreaterGreater;": "\u2aa2", + "GreaterLess;": "\u2277", + "GreaterSlantEqual;": "\u2a7e", + "GreaterTilde;": "\u2273", + "Gscr;": "\U0001d4a2", + "Gt;": "\u226b", + "HARDcy;": "\u042a", + "Hacek;": "\u02c7", + "Hat;": "^", + "Hcirc;": "\u0124", + "Hfr;": "\u210c", + "HilbertSpace;": "\u210b", + "Hopf;": "\u210d", + "HorizontalLine;": "\u2500", + "Hscr;": "\u210b", + "Hstrok;": "\u0126", + "HumpDownHump;": "\u224e", + "HumpEqual;": "\u224f", + "IEcy;": "\u0415", + "IJlig;": "\u0132", + "IOcy;": "\u0401", + "Iacute": "\xcd", + "Iacute;": "\xcd", + "Icirc": "\xce", + "Icirc;": "\xce", + "Icy;": "\u0418", + "Idot;": "\u0130", + "Ifr;": "\u2111", + "Igrave": "\xcc", + "Igrave;": "\xcc", + "Im;": "\u2111", + "Imacr;": "\u012a", + "ImaginaryI;": "\u2148", + "Implies;": "\u21d2", + "Int;": "\u222c", + "Integral;": "\u222b", + "Intersection;": "\u22c2", + "InvisibleComma;": "\u2063", + "InvisibleTimes;": "\u2062", + "Iogon;": "\u012e", + "Iopf;": "\U0001d540", + "Iota;": "\u0399", + "Iscr;": "\u2110", + "Itilde;": "\u0128", + "Iukcy;": "\u0406", + "Iuml": "\xcf", + "Iuml;": "\xcf", + "Jcirc;": "\u0134", + "Jcy;": "\u0419", + "Jfr;": "\U0001d50d", + "Jopf;": "\U0001d541", + "Jscr;": "\U0001d4a5", + "Jsercy;": "\u0408", + "Jukcy;": "\u0404", + "KHcy;": "\u0425", + "KJcy;": "\u040c", + "Kappa;": "\u039a", + "Kcedil;": "\u0136", + "Kcy;": "\u041a", + "Kfr;": "\U0001d50e", + "Kopf;": "\U0001d542", + "Kscr;": "\U0001d4a6", + "LJcy;": "\u0409", + "LT": "<", + "LT;": "<", + "Lacute;": "\u0139", + "Lambda;": "\u039b", + "Lang;": "\u27ea", + "Laplacetrf;": "\u2112", + "Larr;": "\u219e", + "Lcaron;": "\u013d", + "Lcedil;": "\u013b", + "Lcy;": "\u041b", + "LeftAngleBracket;": "\u27e8", + "LeftArrow;": "\u2190", + "LeftArrowBar;": "\u21e4", + "LeftArrowRightArrow;": "\u21c6", + "LeftCeiling;": "\u2308", + "LeftDoubleBracket;": "\u27e6", + "LeftDownTeeVector;": "\u2961", + "LeftDownVector;": "\u21c3", + "LeftDownVectorBar;": "\u2959", + "LeftFloor;": "\u230a", + "LeftRightArrow;": "\u2194", + "LeftRightVector;": "\u294e", + "LeftTee;": "\u22a3", + "LeftTeeArrow;": "\u21a4", + "LeftTeeVector;": "\u295a", + "LeftTriangle;": "\u22b2", + "LeftTriangleBar;": "\u29cf", + "LeftTriangleEqual;": "\u22b4", + "LeftUpDownVector;": "\u2951", + "LeftUpTeeVector;": "\u2960", + "LeftUpVector;": "\u21bf", + "LeftUpVectorBar;": "\u2958", + "LeftVector;": "\u21bc", + "LeftVectorBar;": "\u2952", + "Leftarrow;": "\u21d0", + "Leftrightarrow;": "\u21d4", + "LessEqualGreater;": "\u22da", + "LessFullEqual;": "\u2266", + "LessGreater;": "\u2276", + "LessLess;": "\u2aa1", + "LessSlantEqual;": "\u2a7d", + "LessTilde;": "\u2272", + "Lfr;": "\U0001d50f", + "Ll;": "\u22d8", + "Lleftarrow;": "\u21da", + "Lmidot;": "\u013f", + "LongLeftArrow;": "\u27f5", + "LongLeftRightArrow;": "\u27f7", + "LongRightArrow;": "\u27f6", + "Longleftarrow;": "\u27f8", + "Longleftrightarrow;": "\u27fa", + "Longrightarrow;": "\u27f9", + "Lopf;": "\U0001d543", + "LowerLeftArrow;": "\u2199", + "LowerRightArrow;": "\u2198", + "Lscr;": "\u2112", + "Lsh;": "\u21b0", + "Lstrok;": "\u0141", + "Lt;": "\u226a", + "Map;": "\u2905", + "Mcy;": "\u041c", + "MediumSpace;": "\u205f", + "Mellintrf;": "\u2133", + "Mfr;": "\U0001d510", + "MinusPlus;": "\u2213", + "Mopf;": "\U0001d544", + "Mscr;": "\u2133", + "Mu;": "\u039c", + "NJcy;": "\u040a", + "Nacute;": "\u0143", + "Ncaron;": "\u0147", + "Ncedil;": "\u0145", + "Ncy;": "\u041d", + "NegativeMediumSpace;": "\u200b", + "NegativeThickSpace;": "\u200b", + "NegativeThinSpace;": "\u200b", + "NegativeVeryThinSpace;": "\u200b", + "NestedGreaterGreater;": "\u226b", + "NestedLessLess;": "\u226a", + "NewLine;": "\n", + "Nfr;": "\U0001d511", + "NoBreak;": "\u2060", + "NonBreakingSpace;": "\xa0", + "Nopf;": "\u2115", + "Not;": "\u2aec", + "NotCongruent;": "\u2262", + "NotCupCap;": "\u226d", + "NotDoubleVerticalBar;": "\u2226", + "NotElement;": "\u2209", + "NotEqual;": "\u2260", + "NotEqualTilde;": "\u2242\u0338", + "NotExists;": "\u2204", + "NotGreater;": "\u226f", + "NotGreaterEqual;": "\u2271", + "NotGreaterFullEqual;": "\u2267\u0338", + "NotGreaterGreater;": "\u226b\u0338", + "NotGreaterLess;": "\u2279", + "NotGreaterSlantEqual;": "\u2a7e\u0338", + "NotGreaterTilde;": "\u2275", + "NotHumpDownHump;": "\u224e\u0338", + "NotHumpEqual;": "\u224f\u0338", + "NotLeftTriangle;": "\u22ea", + "NotLeftTriangleBar;": "\u29cf\u0338", + "NotLeftTriangleEqual;": "\u22ec", + "NotLess;": "\u226e", + "NotLessEqual;": "\u2270", + "NotLessGreater;": "\u2278", + "NotLessLess;": "\u226a\u0338", + "NotLessSlantEqual;": "\u2a7d\u0338", + "NotLessTilde;": "\u2274", + "NotNestedGreaterGreater;": "\u2aa2\u0338", + "NotNestedLessLess;": "\u2aa1\u0338", + "NotPrecedes;": "\u2280", + "NotPrecedesEqual;": "\u2aaf\u0338", + "NotPrecedesSlantEqual;": "\u22e0", + "NotReverseElement;": "\u220c", + "NotRightTriangle;": "\u22eb", + "NotRightTriangleBar;": "\u29d0\u0338", + "NotRightTriangleEqual;": "\u22ed", + "NotSquareSubset;": "\u228f\u0338", + "NotSquareSubsetEqual;": "\u22e2", + "NotSquareSuperset;": "\u2290\u0338", + "NotSquareSupersetEqual;": "\u22e3", + "NotSubset;": "\u2282\u20d2", + "NotSubsetEqual;": "\u2288", + "NotSucceeds;": "\u2281", + "NotSucceedsEqual;": "\u2ab0\u0338", + "NotSucceedsSlantEqual;": "\u22e1", + "NotSucceedsTilde;": "\u227f\u0338", + "NotSuperset;": "\u2283\u20d2", + "NotSupersetEqual;": "\u2289", + "NotTilde;": "\u2241", + "NotTildeEqual;": "\u2244", + "NotTildeFullEqual;": "\u2247", + "NotTildeTilde;": "\u2249", + "NotVerticalBar;": "\u2224", + "Nscr;": "\U0001d4a9", + "Ntilde": "\xd1", + "Ntilde;": "\xd1", + "Nu;": "\u039d", + "OElig;": "\u0152", + "Oacute": "\xd3", + "Oacute;": "\xd3", + "Ocirc": "\xd4", + "Ocirc;": "\xd4", + "Ocy;": "\u041e", + "Odblac;": "\u0150", + "Ofr;": "\U0001d512", + "Ograve": "\xd2", + "Ograve;": "\xd2", + "Omacr;": "\u014c", + "Omega;": "\u03a9", + "Omicron;": "\u039f", + "Oopf;": "\U0001d546", + "OpenCurlyDoubleQuote;": "\u201c", + "OpenCurlyQuote;": "\u2018", + "Or;": "\u2a54", + "Oscr;": "\U0001d4aa", + "Oslash": "\xd8", + "Oslash;": "\xd8", + "Otilde": "\xd5", + "Otilde;": "\xd5", + "Otimes;": "\u2a37", + "Ouml": "\xd6", + "Ouml;": "\xd6", + "OverBar;": "\u203e", + "OverBrace;": "\u23de", + "OverBracket;": "\u23b4", + "OverParenthesis;": "\u23dc", + "PartialD;": "\u2202", + "Pcy;": "\u041f", + "Pfr;": "\U0001d513", + "Phi;": "\u03a6", + "Pi;": "\u03a0", + "PlusMinus;": "\xb1", + "Poincareplane;": "\u210c", + "Popf;": "\u2119", + "Pr;": "\u2abb", + "Precedes;": "\u227a", + "PrecedesEqual;": "\u2aaf", + "PrecedesSlantEqual;": "\u227c", + "PrecedesTilde;": "\u227e", + "Prime;": "\u2033", + "Product;": "\u220f", + "Proportion;": "\u2237", + "Proportional;": "\u221d", + "Pscr;": "\U0001d4ab", + "Psi;": "\u03a8", + "QUOT": "\"", + "QUOT;": "\"", + "Qfr;": "\U0001d514", + "Qopf;": "\u211a", + "Qscr;": "\U0001d4ac", + "RBarr;": "\u2910", + "REG": "\xae", + "REG;": "\xae", + "Racute;": "\u0154", + "Rang;": "\u27eb", + "Rarr;": "\u21a0", + "Rarrtl;": "\u2916", + "Rcaron;": "\u0158", + "Rcedil;": "\u0156", + "Rcy;": "\u0420", + "Re;": "\u211c", + "ReverseElement;": "\u220b", + "ReverseEquilibrium;": "\u21cb", + "ReverseUpEquilibrium;": "\u296f", + "Rfr;": "\u211c", + "Rho;": "\u03a1", + "RightAngleBracket;": "\u27e9", + "RightArrow;": "\u2192", + "RightArrowBar;": "\u21e5", + "RightArrowLeftArrow;": "\u21c4", + "RightCeiling;": "\u2309", + "RightDoubleBracket;": "\u27e7", + "RightDownTeeVector;": "\u295d", + "RightDownVector;": "\u21c2", + "RightDownVectorBar;": "\u2955", + "RightFloor;": "\u230b", + "RightTee;": "\u22a2", + "RightTeeArrow;": "\u21a6", + "RightTeeVector;": "\u295b", + "RightTriangle;": "\u22b3", + "RightTriangleBar;": "\u29d0", + "RightTriangleEqual;": "\u22b5", + "RightUpDownVector;": "\u294f", + "RightUpTeeVector;": "\u295c", + "RightUpVector;": "\u21be", + "RightUpVectorBar;": "\u2954", + "RightVector;": "\u21c0", + "RightVectorBar;": "\u2953", + "Rightarrow;": "\u21d2", + "Ropf;": "\u211d", + "RoundImplies;": "\u2970", + "Rrightarrow;": "\u21db", + "Rscr;": "\u211b", + "Rsh;": "\u21b1", + "RuleDelayed;": "\u29f4", + "SHCHcy;": "\u0429", + "SHcy;": "\u0428", + "SOFTcy;": "\u042c", + "Sacute;": "\u015a", + "Sc;": "\u2abc", + "Scaron;": "\u0160", + "Scedil;": "\u015e", + "Scirc;": "\u015c", + "Scy;": "\u0421", + "Sfr;": "\U0001d516", + "ShortDownArrow;": "\u2193", + "ShortLeftArrow;": "\u2190", + "ShortRightArrow;": "\u2192", + "ShortUpArrow;": "\u2191", + "Sigma;": "\u03a3", + "SmallCircle;": "\u2218", + "Sopf;": "\U0001d54a", + "Sqrt;": "\u221a", + "Square;": "\u25a1", + "SquareIntersection;": "\u2293", + "SquareSubset;": "\u228f", + "SquareSubsetEqual;": "\u2291", + "SquareSuperset;": "\u2290", + "SquareSupersetEqual;": "\u2292", + "SquareUnion;": "\u2294", + "Sscr;": "\U0001d4ae", + "Star;": "\u22c6", + "Sub;": "\u22d0", + "Subset;": "\u22d0", + "SubsetEqual;": "\u2286", + "Succeeds;": "\u227b", + "SucceedsEqual;": "\u2ab0", + "SucceedsSlantEqual;": "\u227d", + "SucceedsTilde;": "\u227f", + "SuchThat;": "\u220b", + "Sum;": "\u2211", + "Sup;": "\u22d1", + "Superset;": "\u2283", + "SupersetEqual;": "\u2287", + "Supset;": "\u22d1", + "THORN": "\xde", + "THORN;": "\xde", + "TRADE;": "\u2122", + "TSHcy;": "\u040b", + "TScy;": "\u0426", + "Tab;": "\t", + "Tau;": "\u03a4", + "Tcaron;": "\u0164", + "Tcedil;": "\u0162", + "Tcy;": "\u0422", + "Tfr;": "\U0001d517", + "Therefore;": "\u2234", + "Theta;": "\u0398", + "ThickSpace;": "\u205f\u200a", + "ThinSpace;": "\u2009", + "Tilde;": "\u223c", + "TildeEqual;": "\u2243", + "TildeFullEqual;": "\u2245", + "TildeTilde;": "\u2248", + "Topf;": "\U0001d54b", + "TripleDot;": "\u20db", + "Tscr;": "\U0001d4af", + "Tstrok;": "\u0166", + "Uacute": "\xda", + "Uacute;": "\xda", + "Uarr;": "\u219f", + "Uarrocir;": "\u2949", + "Ubrcy;": "\u040e", + "Ubreve;": "\u016c", + "Ucirc": "\xdb", + "Ucirc;": "\xdb", + "Ucy;": "\u0423", + "Udblac;": "\u0170", + "Ufr;": "\U0001d518", + "Ugrave": "\xd9", + "Ugrave;": "\xd9", + "Umacr;": "\u016a", + "UnderBar;": "_", + "UnderBrace;": "\u23df", + "UnderBracket;": "\u23b5", + "UnderParenthesis;": "\u23dd", + "Union;": "\u22c3", + "UnionPlus;": "\u228e", + "Uogon;": "\u0172", + "Uopf;": "\U0001d54c", + "UpArrow;": "\u2191", + "UpArrowBar;": "\u2912", + "UpArrowDownArrow;": "\u21c5", + "UpDownArrow;": "\u2195", + "UpEquilibrium;": "\u296e", + "UpTee;": "\u22a5", + "UpTeeArrow;": "\u21a5", + "Uparrow;": "\u21d1", + "Updownarrow;": "\u21d5", + "UpperLeftArrow;": "\u2196", + "UpperRightArrow;": "\u2197", + "Upsi;": "\u03d2", + "Upsilon;": "\u03a5", + "Uring;": "\u016e", + "Uscr;": "\U0001d4b0", + "Utilde;": "\u0168", + "Uuml": "\xdc", + "Uuml;": "\xdc", + "VDash;": "\u22ab", + "Vbar;": "\u2aeb", + "Vcy;": "\u0412", + "Vdash;": "\u22a9", + "Vdashl;": "\u2ae6", + "Vee;": "\u22c1", + "Verbar;": "\u2016", + "Vert;": "\u2016", + "VerticalBar;": "\u2223", + "VerticalLine;": "|", + "VerticalSeparator;": "\u2758", + "VerticalTilde;": "\u2240", + "VeryThinSpace;": "\u200a", + "Vfr;": "\U0001d519", + "Vopf;": "\U0001d54d", + "Vscr;": "\U0001d4b1", + "Vvdash;": "\u22aa", + "Wcirc;": "\u0174", + "Wedge;": "\u22c0", + "Wfr;": "\U0001d51a", + "Wopf;": "\U0001d54e", + "Wscr;": "\U0001d4b2", + "Xfr;": "\U0001d51b", + "Xi;": "\u039e", + "Xopf;": "\U0001d54f", + "Xscr;": "\U0001d4b3", + "YAcy;": "\u042f", + "YIcy;": "\u0407", + "YUcy;": "\u042e", + "Yacute": "\xdd", + "Yacute;": "\xdd", + "Ycirc;": "\u0176", + "Ycy;": "\u042b", + "Yfr;": "\U0001d51c", + "Yopf;": "\U0001d550", + "Yscr;": "\U0001d4b4", + "Yuml;": "\u0178", + "ZHcy;": "\u0416", + "Zacute;": "\u0179", + "Zcaron;": "\u017d", + "Zcy;": "\u0417", + "Zdot;": "\u017b", + "ZeroWidthSpace;": "\u200b", + "Zeta;": "\u0396", + "Zfr;": "\u2128", + "Zopf;": "\u2124", + "Zscr;": "\U0001d4b5", + "aacute": "\xe1", + "aacute;": "\xe1", + "abreve;": "\u0103", + "ac;": "\u223e", + "acE;": "\u223e\u0333", + "acd;": "\u223f", + "acirc": "\xe2", + "acirc;": "\xe2", + "acute": "\xb4", + "acute;": "\xb4", + "acy;": "\u0430", + "aelig": "\xe6", + "aelig;": "\xe6", + "af;": "\u2061", + "afr;": "\U0001d51e", + "agrave": "\xe0", + "agrave;": "\xe0", + "alefsym;": "\u2135", + "aleph;": "\u2135", + "alpha;": "\u03b1", + "amacr;": "\u0101", + "amalg;": "\u2a3f", + "amp": "&", + "amp;": "&", + "and;": "\u2227", + "andand;": "\u2a55", + "andd;": "\u2a5c", + "andslope;": "\u2a58", + "andv;": "\u2a5a", + "ang;": "\u2220", + "ange;": "\u29a4", + "angle;": "\u2220", + "angmsd;": "\u2221", + "angmsdaa;": "\u29a8", + "angmsdab;": "\u29a9", + "angmsdac;": "\u29aa", + "angmsdad;": "\u29ab", + "angmsdae;": "\u29ac", + "angmsdaf;": "\u29ad", + "angmsdag;": "\u29ae", + "angmsdah;": "\u29af", + "angrt;": "\u221f", + "angrtvb;": "\u22be", + "angrtvbd;": "\u299d", + "angsph;": "\u2222", + "angst;": "\xc5", + "angzarr;": "\u237c", + "aogon;": "\u0105", + "aopf;": "\U0001d552", + "ap;": "\u2248", + "apE;": "\u2a70", + "apacir;": "\u2a6f", + "ape;": "\u224a", + "apid;": "\u224b", + "apos;": "'", + "approx;": "\u2248", + "approxeq;": "\u224a", + "aring": "\xe5", + "aring;": "\xe5", + "ascr;": "\U0001d4b6", + "ast;": "*", + "asymp;": "\u2248", + "asympeq;": "\u224d", + "atilde": "\xe3", + "atilde;": "\xe3", + "auml": "\xe4", + "auml;": "\xe4", + "awconint;": "\u2233", + "awint;": "\u2a11", + "bNot;": "\u2aed", + "backcong;": "\u224c", + "backepsilon;": "\u03f6", + "backprime;": "\u2035", + "backsim;": "\u223d", + "backsimeq;": "\u22cd", + "barvee;": "\u22bd", + "barwed;": "\u2305", + "barwedge;": "\u2305", + "bbrk;": "\u23b5", + "bbrktbrk;": "\u23b6", + "bcong;": "\u224c", + "bcy;": "\u0431", + "bdquo;": "\u201e", + "becaus;": "\u2235", + "because;": "\u2235", + "bemptyv;": "\u29b0", + "bepsi;": "\u03f6", + "bernou;": "\u212c", + "beta;": "\u03b2", + "beth;": "\u2136", + "between;": "\u226c", + "bfr;": "\U0001d51f", + "bigcap;": "\u22c2", + "bigcirc;": "\u25ef", + "bigcup;": "\u22c3", + "bigodot;": "\u2a00", + "bigoplus;": "\u2a01", + "bigotimes;": "\u2a02", + "bigsqcup;": "\u2a06", + "bigstar;": "\u2605", + "bigtriangledown;": "\u25bd", + "bigtriangleup;": "\u25b3", + "biguplus;": "\u2a04", + "bigvee;": "\u22c1", + "bigwedge;": "\u22c0", + "bkarow;": "\u290d", + "blacklozenge;": "\u29eb", + "blacksquare;": "\u25aa", + "blacktriangle;": "\u25b4", + "blacktriangledown;": "\u25be", + "blacktriangleleft;": "\u25c2", + "blacktriangleright;": "\u25b8", + "blank;": "\u2423", + "blk12;": "\u2592", + "blk14;": "\u2591", + "blk34;": "\u2593", + "block;": "\u2588", + "bne;": "=\u20e5", + "bnequiv;": "\u2261\u20e5", + "bnot;": "\u2310", + "bopf;": "\U0001d553", + "bot;": "\u22a5", + "bottom;": "\u22a5", + "bowtie;": "\u22c8", + "boxDL;": "\u2557", + "boxDR;": "\u2554", + "boxDl;": "\u2556", + "boxDr;": "\u2553", + "boxH;": "\u2550", + "boxHD;": "\u2566", + "boxHU;": "\u2569", + "boxHd;": "\u2564", + "boxHu;": "\u2567", + "boxUL;": "\u255d", + "boxUR;": "\u255a", + "boxUl;": "\u255c", + "boxUr;": "\u2559", + "boxV;": "\u2551", + "boxVH;": "\u256c", + "boxVL;": "\u2563", + "boxVR;": "\u2560", + "boxVh;": "\u256b", + "boxVl;": "\u2562", + "boxVr;": "\u255f", + "boxbox;": "\u29c9", + "boxdL;": "\u2555", + "boxdR;": "\u2552", + "boxdl;": "\u2510", + "boxdr;": "\u250c", + "boxh;": "\u2500", + "boxhD;": "\u2565", + "boxhU;": "\u2568", + "boxhd;": "\u252c", + "boxhu;": "\u2534", + "boxminus;": "\u229f", + "boxplus;": "\u229e", + "boxtimes;": "\u22a0", + "boxuL;": "\u255b", + "boxuR;": "\u2558", + "boxul;": "\u2518", + "boxur;": "\u2514", + "boxv;": "\u2502", + "boxvH;": "\u256a", + "boxvL;": "\u2561", + "boxvR;": "\u255e", + "boxvh;": "\u253c", + "boxvl;": "\u2524", + "boxvr;": "\u251c", + "bprime;": "\u2035", + "breve;": "\u02d8", + "brvbar": "\xa6", + "brvbar;": "\xa6", + "bscr;": "\U0001d4b7", + "bsemi;": "\u204f", + "bsim;": "\u223d", + "bsime;": "\u22cd", + "bsol;": "\\", + "bsolb;": "\u29c5", + "bsolhsub;": "\u27c8", + "bull;": "\u2022", + "bullet;": "\u2022", + "bump;": "\u224e", + "bumpE;": "\u2aae", + "bumpe;": "\u224f", + "bumpeq;": "\u224f", + "cacute;": "\u0107", + "cap;": "\u2229", + "capand;": "\u2a44", + "capbrcup;": "\u2a49", + "capcap;": "\u2a4b", + "capcup;": "\u2a47", + "capdot;": "\u2a40", + "caps;": "\u2229\ufe00", + "caret;": "\u2041", + "caron;": "\u02c7", + "ccaps;": "\u2a4d", + "ccaron;": "\u010d", + "ccedil": "\xe7", + "ccedil;": "\xe7", + "ccirc;": "\u0109", + "ccups;": "\u2a4c", + "ccupssm;": "\u2a50", + "cdot;": "\u010b", + "cedil": "\xb8", + "cedil;": "\xb8", + "cemptyv;": "\u29b2", + "cent": "\xa2", + "cent;": "\xa2", + "centerdot;": "\xb7", + "cfr;": "\U0001d520", + "chcy;": "\u0447", + "check;": "\u2713", + "checkmark;": "\u2713", + "chi;": "\u03c7", + "cir;": "\u25cb", + "cirE;": "\u29c3", + "circ;": "\u02c6", + "circeq;": "\u2257", + "circlearrowleft;": "\u21ba", + "circlearrowright;": "\u21bb", + "circledR;": "\xae", + "circledS;": "\u24c8", + "circledast;": "\u229b", + "circledcirc;": "\u229a", + "circleddash;": "\u229d", + "cire;": "\u2257", + "cirfnint;": "\u2a10", + "cirmid;": "\u2aef", + "cirscir;": "\u29c2", + "clubs;": "\u2663", + "clubsuit;": "\u2663", + "colon;": ":", + "colone;": "\u2254", + "coloneq;": "\u2254", + "comma;": ",", + "commat;": "@", + "comp;": "\u2201", + "compfn;": "\u2218", + "complement;": "\u2201", + "complexes;": "\u2102", + "cong;": "\u2245", + "congdot;": "\u2a6d", + "conint;": "\u222e", + "copf;": "\U0001d554", + "coprod;": "\u2210", + "copy": "\xa9", + "copy;": "\xa9", + "copysr;": "\u2117", + "crarr;": "\u21b5", + "cross;": "\u2717", + "cscr;": "\U0001d4b8", + "csub;": "\u2acf", + "csube;": "\u2ad1", + "csup;": "\u2ad0", + "csupe;": "\u2ad2", + "ctdot;": "\u22ef", + "cudarrl;": "\u2938", + "cudarrr;": "\u2935", + "cuepr;": "\u22de", + "cuesc;": "\u22df", + "cularr;": "\u21b6", + "cularrp;": "\u293d", + "cup;": "\u222a", + "cupbrcap;": "\u2a48", + "cupcap;": "\u2a46", + "cupcup;": "\u2a4a", + "cupdot;": "\u228d", + "cupor;": "\u2a45", + "cups;": "\u222a\ufe00", + "curarr;": "\u21b7", + "curarrm;": "\u293c", + "curlyeqprec;": "\u22de", + "curlyeqsucc;": "\u22df", + "curlyvee;": "\u22ce", + "curlywedge;": "\u22cf", + "curren": "\xa4", + "curren;": "\xa4", + "curvearrowleft;": "\u21b6", + "curvearrowright;": "\u21b7", + "cuvee;": "\u22ce", + "cuwed;": "\u22cf", + "cwconint;": "\u2232", + "cwint;": "\u2231", + "cylcty;": "\u232d", + "dArr;": "\u21d3", + "dHar;": "\u2965", + "dagger;": "\u2020", + "daleth;": "\u2138", + "darr;": "\u2193", + "dash;": "\u2010", + "dashv;": "\u22a3", + "dbkarow;": "\u290f", + "dblac;": "\u02dd", + "dcaron;": "\u010f", + "dcy;": "\u0434", + "dd;": "\u2146", + "ddagger;": "\u2021", + "ddarr;": "\u21ca", + "ddotseq;": "\u2a77", + "deg": "\xb0", + "deg;": "\xb0", + "delta;": "\u03b4", + "demptyv;": "\u29b1", + "dfisht;": "\u297f", + "dfr;": "\U0001d521", + "dharl;": "\u21c3", + "dharr;": "\u21c2", + "diam;": "\u22c4", + "diamond;": "\u22c4", + "diamondsuit;": "\u2666", + "diams;": "\u2666", + "die;": "\xa8", + "digamma;": "\u03dd", + "disin;": "\u22f2", + "div;": "\xf7", + "divide": "\xf7", + "divide;": "\xf7", + "divideontimes;": "\u22c7", + "divonx;": "\u22c7", + "djcy;": "\u0452", + "dlcorn;": "\u231e", + "dlcrop;": "\u230d", + "dollar;": "$", + "dopf;": "\U0001d555", + "dot;": "\u02d9", + "doteq;": "\u2250", + "doteqdot;": "\u2251", + "dotminus;": "\u2238", + "dotplus;": "\u2214", + "dotsquare;": "\u22a1", + "doublebarwedge;": "\u2306", + "downarrow;": "\u2193", + "downdownarrows;": "\u21ca", + "downharpoonleft;": "\u21c3", + "downharpoonright;": "\u21c2", + "drbkarow;": "\u2910", + "drcorn;": "\u231f", + "drcrop;": "\u230c", + "dscr;": "\U0001d4b9", + "dscy;": "\u0455", + "dsol;": "\u29f6", + "dstrok;": "\u0111", + "dtdot;": "\u22f1", + "dtri;": "\u25bf", + "dtrif;": "\u25be", + "duarr;": "\u21f5", + "duhar;": "\u296f", + "dwangle;": "\u29a6", + "dzcy;": "\u045f", + "dzigrarr;": "\u27ff", + "eDDot;": "\u2a77", + "eDot;": "\u2251", + "eacute": "\xe9", + "eacute;": "\xe9", + "easter;": "\u2a6e", + "ecaron;": "\u011b", + "ecir;": "\u2256", + "ecirc": "\xea", + "ecirc;": "\xea", + "ecolon;": "\u2255", + "ecy;": "\u044d", + "edot;": "\u0117", + "ee;": "\u2147", + "efDot;": "\u2252", + "efr;": "\U0001d522", + "eg;": "\u2a9a", + "egrave": "\xe8", + "egrave;": "\xe8", + "egs;": "\u2a96", + "egsdot;": "\u2a98", + "el;": "\u2a99", + "elinters;": "\u23e7", + "ell;": "\u2113", + "els;": "\u2a95", + "elsdot;": "\u2a97", + "emacr;": "\u0113", + "empty;": "\u2205", + "emptyset;": "\u2205", + "emptyv;": "\u2205", + "emsp13;": "\u2004", + "emsp14;": "\u2005", + "emsp;": "\u2003", + "eng;": "\u014b", + "ensp;": "\u2002", + "eogon;": "\u0119", + "eopf;": "\U0001d556", + "epar;": "\u22d5", + "eparsl;": "\u29e3", + "eplus;": "\u2a71", + "epsi;": "\u03b5", + "epsilon;": "\u03b5", + "epsiv;": "\u03f5", + "eqcirc;": "\u2256", + "eqcolon;": "\u2255", + "eqsim;": "\u2242", + "eqslantgtr;": "\u2a96", + "eqslantless;": "\u2a95", + "equals;": "=", + "equest;": "\u225f", + "equiv;": "\u2261", + "equivDD;": "\u2a78", + "eqvparsl;": "\u29e5", + "erDot;": "\u2253", + "erarr;": "\u2971", + "escr;": "\u212f", + "esdot;": "\u2250", + "esim;": "\u2242", + "eta;": "\u03b7", + "eth": "\xf0", + "eth;": "\xf0", + "euml": "\xeb", + "euml;": "\xeb", + "euro;": "\u20ac", + "excl;": "!", + "exist;": "\u2203", + "expectation;": "\u2130", + "exponentiale;": "\u2147", + "fallingdotseq;": "\u2252", + "fcy;": "\u0444", + "female;": "\u2640", + "ffilig;": "\ufb03", + "fflig;": "\ufb00", + "ffllig;": "\ufb04", + "ffr;": "\U0001d523", + "filig;": "\ufb01", + "fjlig;": "fj", + "flat;": "\u266d", + "fllig;": "\ufb02", + "fltns;": "\u25b1", + "fnof;": "\u0192", + "fopf;": "\U0001d557", + "forall;": "\u2200", + "fork;": "\u22d4", + "forkv;": "\u2ad9", + "fpartint;": "\u2a0d", + "frac12": "\xbd", + "frac12;": "\xbd", + "frac13;": "\u2153", + "frac14": "\xbc", + "frac14;": "\xbc", + "frac15;": "\u2155", + "frac16;": "\u2159", + "frac18;": "\u215b", + "frac23;": "\u2154", + "frac25;": "\u2156", + "frac34": "\xbe", + "frac34;": "\xbe", + "frac35;": "\u2157", + "frac38;": "\u215c", + "frac45;": "\u2158", + "frac56;": "\u215a", + "frac58;": "\u215d", + "frac78;": "\u215e", + "frasl;": "\u2044", + "frown;": "\u2322", + "fscr;": "\U0001d4bb", + "gE;": "\u2267", + "gEl;": "\u2a8c", + "gacute;": "\u01f5", + "gamma;": "\u03b3", + "gammad;": "\u03dd", + "gap;": "\u2a86", + "gbreve;": "\u011f", + "gcirc;": "\u011d", + "gcy;": "\u0433", + "gdot;": "\u0121", + "ge;": "\u2265", + "gel;": "\u22db", + "geq;": "\u2265", + "geqq;": "\u2267", + "geqslant;": "\u2a7e", + "ges;": "\u2a7e", + "gescc;": "\u2aa9", + "gesdot;": "\u2a80", + "gesdoto;": "\u2a82", + "gesdotol;": "\u2a84", + "gesl;": "\u22db\ufe00", + "gesles;": "\u2a94", + "gfr;": "\U0001d524", + "gg;": "\u226b", + "ggg;": "\u22d9", + "gimel;": "\u2137", + "gjcy;": "\u0453", + "gl;": "\u2277", + "glE;": "\u2a92", + "gla;": "\u2aa5", + "glj;": "\u2aa4", + "gnE;": "\u2269", + "gnap;": "\u2a8a", + "gnapprox;": "\u2a8a", + "gne;": "\u2a88", + "gneq;": "\u2a88", + "gneqq;": "\u2269", + "gnsim;": "\u22e7", + "gopf;": "\U0001d558", + "grave;": "`", + "gscr;": "\u210a", + "gsim;": "\u2273", + "gsime;": "\u2a8e", + "gsiml;": "\u2a90", + "gt": ">", + "gt;": ">", + "gtcc;": "\u2aa7", + "gtcir;": "\u2a7a", + "gtdot;": "\u22d7", + "gtlPar;": "\u2995", + "gtquest;": "\u2a7c", + "gtrapprox;": "\u2a86", + "gtrarr;": "\u2978", + "gtrdot;": "\u22d7", + "gtreqless;": "\u22db", + "gtreqqless;": "\u2a8c", + "gtrless;": "\u2277", + "gtrsim;": "\u2273", + "gvertneqq;": "\u2269\ufe00", + "gvnE;": "\u2269\ufe00", + "hArr;": "\u21d4", + "hairsp;": "\u200a", + "half;": "\xbd", + "hamilt;": "\u210b", + "hardcy;": "\u044a", + "harr;": "\u2194", + "harrcir;": "\u2948", + "harrw;": "\u21ad", + "hbar;": "\u210f", + "hcirc;": "\u0125", + "hearts;": "\u2665", + "heartsuit;": "\u2665", + "hellip;": "\u2026", + "hercon;": "\u22b9", + "hfr;": "\U0001d525", + "hksearow;": "\u2925", + "hkswarow;": "\u2926", + "hoarr;": "\u21ff", + "homtht;": "\u223b", + "hookleftarrow;": "\u21a9", + "hookrightarrow;": "\u21aa", + "hopf;": "\U0001d559", + "horbar;": "\u2015", + "hscr;": "\U0001d4bd", + "hslash;": "\u210f", + "hstrok;": "\u0127", + "hybull;": "\u2043", + "hyphen;": "\u2010", + "iacute": "\xed", + "iacute;": "\xed", + "ic;": "\u2063", + "icirc": "\xee", + "icirc;": "\xee", + "icy;": "\u0438", + "iecy;": "\u0435", + "iexcl": "\xa1", + "iexcl;": "\xa1", + "iff;": "\u21d4", + "ifr;": "\U0001d526", + "igrave": "\xec", + "igrave;": "\xec", + "ii;": "\u2148", + "iiiint;": "\u2a0c", + "iiint;": "\u222d", + "iinfin;": "\u29dc", + "iiota;": "\u2129", + "ijlig;": "\u0133", + "imacr;": "\u012b", + "image;": "\u2111", + "imagline;": "\u2110", + "imagpart;": "\u2111", + "imath;": "\u0131", + "imof;": "\u22b7", + "imped;": "\u01b5", + "in;": "\u2208", + "incare;": "\u2105", + "infin;": "\u221e", + "infintie;": "\u29dd", + "inodot;": "\u0131", + "int;": "\u222b", + "intcal;": "\u22ba", + "integers;": "\u2124", + "intercal;": "\u22ba", + "intlarhk;": "\u2a17", + "intprod;": "\u2a3c", + "iocy;": "\u0451", + "iogon;": "\u012f", + "iopf;": "\U0001d55a", + "iota;": "\u03b9", + "iprod;": "\u2a3c", + "iquest": "\xbf", + "iquest;": "\xbf", + "iscr;": "\U0001d4be", + "isin;": "\u2208", + "isinE;": "\u22f9", + "isindot;": "\u22f5", + "isins;": "\u22f4", + "isinsv;": "\u22f3", + "isinv;": "\u2208", + "it;": "\u2062", + "itilde;": "\u0129", + "iukcy;": "\u0456", + "iuml": "\xef", + "iuml;": "\xef", + "jcirc;": "\u0135", + "jcy;": "\u0439", + "jfr;": "\U0001d527", + "jmath;": "\u0237", + "jopf;": "\U0001d55b", + "jscr;": "\U0001d4bf", + "jsercy;": "\u0458", + "jukcy;": "\u0454", + "kappa;": "\u03ba", + "kappav;": "\u03f0", + "kcedil;": "\u0137", + "kcy;": "\u043a", + "kfr;": "\U0001d528", + "kgreen;": "\u0138", + "khcy;": "\u0445", + "kjcy;": "\u045c", + "kopf;": "\U0001d55c", + "kscr;": "\U0001d4c0", + "lAarr;": "\u21da", + "lArr;": "\u21d0", + "lAtail;": "\u291b", + "lBarr;": "\u290e", + "lE;": "\u2266", + "lEg;": "\u2a8b", + "lHar;": "\u2962", + "lacute;": "\u013a", + "laemptyv;": "\u29b4", + "lagran;": "\u2112", + "lambda;": "\u03bb", + "lang;": "\u27e8", + "langd;": "\u2991", + "langle;": "\u27e8", + "lap;": "\u2a85", + "laquo": "\xab", + "laquo;": "\xab", + "larr;": "\u2190", + "larrb;": "\u21e4", + "larrbfs;": "\u291f", + "larrfs;": "\u291d", + "larrhk;": "\u21a9", + "larrlp;": "\u21ab", + "larrpl;": "\u2939", + "larrsim;": "\u2973", + "larrtl;": "\u21a2", + "lat;": "\u2aab", + "latail;": "\u2919", + "late;": "\u2aad", + "lates;": "\u2aad\ufe00", + "lbarr;": "\u290c", + "lbbrk;": "\u2772", + "lbrace;": "{", + "lbrack;": "[", + "lbrke;": "\u298b", + "lbrksld;": "\u298f", + "lbrkslu;": "\u298d", + "lcaron;": "\u013e", + "lcedil;": "\u013c", + "lceil;": "\u2308", + "lcub;": "{", + "lcy;": "\u043b", + "ldca;": "\u2936", + "ldquo;": "\u201c", + "ldquor;": "\u201e", + "ldrdhar;": "\u2967", + "ldrushar;": "\u294b", + "ldsh;": "\u21b2", + "le;": "\u2264", + "leftarrow;": "\u2190", + "leftarrowtail;": "\u21a2", + "leftharpoondown;": "\u21bd", + "leftharpoonup;": "\u21bc", + "leftleftarrows;": "\u21c7", + "leftrightarrow;": "\u2194", + "leftrightarrows;": "\u21c6", + "leftrightharpoons;": "\u21cb", + "leftrightsquigarrow;": "\u21ad", + "leftthreetimes;": "\u22cb", + "leg;": "\u22da", + "leq;": "\u2264", + "leqq;": "\u2266", + "leqslant;": "\u2a7d", + "les;": "\u2a7d", + "lescc;": "\u2aa8", + "lesdot;": "\u2a7f", + "lesdoto;": "\u2a81", + "lesdotor;": "\u2a83", + "lesg;": "\u22da\ufe00", + "lesges;": "\u2a93", + "lessapprox;": "\u2a85", + "lessdot;": "\u22d6", + "lesseqgtr;": "\u22da", + "lesseqqgtr;": "\u2a8b", + "lessgtr;": "\u2276", + "lesssim;": "\u2272", + "lfisht;": "\u297c", + "lfloor;": "\u230a", + "lfr;": "\U0001d529", + "lg;": "\u2276", + "lgE;": "\u2a91", + "lhard;": "\u21bd", + "lharu;": "\u21bc", + "lharul;": "\u296a", + "lhblk;": "\u2584", + "ljcy;": "\u0459", + "ll;": "\u226a", + "llarr;": "\u21c7", + "llcorner;": "\u231e", + "llhard;": "\u296b", + "lltri;": "\u25fa", + "lmidot;": "\u0140", + "lmoust;": "\u23b0", + "lmoustache;": "\u23b0", + "lnE;": "\u2268", + "lnap;": "\u2a89", + "lnapprox;": "\u2a89", + "lne;": "\u2a87", + "lneq;": "\u2a87", + "lneqq;": "\u2268", + "lnsim;": "\u22e6", + "loang;": "\u27ec", + "loarr;": "\u21fd", + "lobrk;": "\u27e6", + "longleftarrow;": "\u27f5", + "longleftrightarrow;": "\u27f7", + "longmapsto;": "\u27fc", + "longrightarrow;": "\u27f6", + "looparrowleft;": "\u21ab", + "looparrowright;": "\u21ac", + "lopar;": "\u2985", + "lopf;": "\U0001d55d", + "loplus;": "\u2a2d", + "lotimes;": "\u2a34", + "lowast;": "\u2217", + "lowbar;": "_", + "loz;": "\u25ca", + "lozenge;": "\u25ca", + "lozf;": "\u29eb", + "lpar;": "(", + "lparlt;": "\u2993", + "lrarr;": "\u21c6", + "lrcorner;": "\u231f", + "lrhar;": "\u21cb", + "lrhard;": "\u296d", + "lrm;": "\u200e", + "lrtri;": "\u22bf", + "lsaquo;": "\u2039", + "lscr;": "\U0001d4c1", + "lsh;": "\u21b0", + "lsim;": "\u2272", + "lsime;": "\u2a8d", + "lsimg;": "\u2a8f", + "lsqb;": "[", + "lsquo;": "\u2018", + "lsquor;": "\u201a", + "lstrok;": "\u0142", + "lt": "<", + "lt;": "<", + "ltcc;": "\u2aa6", + "ltcir;": "\u2a79", + "ltdot;": "\u22d6", + "lthree;": "\u22cb", + "ltimes;": "\u22c9", + "ltlarr;": "\u2976", + "ltquest;": "\u2a7b", + "ltrPar;": "\u2996", + "ltri;": "\u25c3", + "ltrie;": "\u22b4", + "ltrif;": "\u25c2", + "lurdshar;": "\u294a", + "luruhar;": "\u2966", + "lvertneqq;": "\u2268\ufe00", + "lvnE;": "\u2268\ufe00", + "mDDot;": "\u223a", + "macr": "\xaf", + "macr;": "\xaf", + "male;": "\u2642", + "malt;": "\u2720", + "maltese;": "\u2720", + "map;": "\u21a6", + "mapsto;": "\u21a6", + "mapstodown;": "\u21a7", + "mapstoleft;": "\u21a4", + "mapstoup;": "\u21a5", + "marker;": "\u25ae", + "mcomma;": "\u2a29", + "mcy;": "\u043c", + "mdash;": "\u2014", + "measuredangle;": "\u2221", + "mfr;": "\U0001d52a", + "mho;": "\u2127", + "micro": "\xb5", + "micro;": "\xb5", + "mid;": "\u2223", + "midast;": "*", + "midcir;": "\u2af0", + "middot": "\xb7", + "middot;": "\xb7", + "minus;": "\u2212", + "minusb;": "\u229f", + "minusd;": "\u2238", + "minusdu;": "\u2a2a", + "mlcp;": "\u2adb", + "mldr;": "\u2026", + "mnplus;": "\u2213", + "models;": "\u22a7", + "mopf;": "\U0001d55e", + "mp;": "\u2213", + "mscr;": "\U0001d4c2", + "mstpos;": "\u223e", + "mu;": "\u03bc", + "multimap;": "\u22b8", + "mumap;": "\u22b8", + "nGg;": "\u22d9\u0338", + "nGt;": "\u226b\u20d2", + "nGtv;": "\u226b\u0338", + "nLeftarrow;": "\u21cd", + "nLeftrightarrow;": "\u21ce", + "nLl;": "\u22d8\u0338", + "nLt;": "\u226a\u20d2", + "nLtv;": "\u226a\u0338", + "nRightarrow;": "\u21cf", + "nVDash;": "\u22af", + "nVdash;": "\u22ae", + "nabla;": "\u2207", + "nacute;": "\u0144", + "nang;": "\u2220\u20d2", + "nap;": "\u2249", + "napE;": "\u2a70\u0338", + "napid;": "\u224b\u0338", + "napos;": "\u0149", + "napprox;": "\u2249", + "natur;": "\u266e", + "natural;": "\u266e", + "naturals;": "\u2115", + "nbsp": "\xa0", + "nbsp;": "\xa0", + "nbump;": "\u224e\u0338", + "nbumpe;": "\u224f\u0338", + "ncap;": "\u2a43", + "ncaron;": "\u0148", + "ncedil;": "\u0146", + "ncong;": "\u2247", + "ncongdot;": "\u2a6d\u0338", + "ncup;": "\u2a42", + "ncy;": "\u043d", + "ndash;": "\u2013", + "ne;": "\u2260", + "neArr;": "\u21d7", + "nearhk;": "\u2924", + "nearr;": "\u2197", + "nearrow;": "\u2197", + "nedot;": "\u2250\u0338", + "nequiv;": "\u2262", + "nesear;": "\u2928", + "nesim;": "\u2242\u0338", + "nexist;": "\u2204", + "nexists;": "\u2204", + "nfr;": "\U0001d52b", + "ngE;": "\u2267\u0338", + "nge;": "\u2271", + "ngeq;": "\u2271", + "ngeqq;": "\u2267\u0338", + "ngeqslant;": "\u2a7e\u0338", + "nges;": "\u2a7e\u0338", + "ngsim;": "\u2275", + "ngt;": "\u226f", + "ngtr;": "\u226f", + "nhArr;": "\u21ce", + "nharr;": "\u21ae", + "nhpar;": "\u2af2", + "ni;": "\u220b", + "nis;": "\u22fc", + "nisd;": "\u22fa", + "niv;": "\u220b", + "njcy;": "\u045a", + "nlArr;": "\u21cd", + "nlE;": "\u2266\u0338", + "nlarr;": "\u219a", + "nldr;": "\u2025", + "nle;": "\u2270", + "nleftarrow;": "\u219a", + "nleftrightarrow;": "\u21ae", + "nleq;": "\u2270", + "nleqq;": "\u2266\u0338", + "nleqslant;": "\u2a7d\u0338", + "nles;": "\u2a7d\u0338", + "nless;": "\u226e", + "nlsim;": "\u2274", + "nlt;": "\u226e", + "nltri;": "\u22ea", + "nltrie;": "\u22ec", + "nmid;": "\u2224", + "nopf;": "\U0001d55f", + "not": "\xac", + "not;": "\xac", + "notin;": "\u2209", + "notinE;": "\u22f9\u0338", + "notindot;": "\u22f5\u0338", + "notinva;": "\u2209", + "notinvb;": "\u22f7", + "notinvc;": "\u22f6", + "notni;": "\u220c", + "notniva;": "\u220c", + "notnivb;": "\u22fe", + "notnivc;": "\u22fd", + "npar;": "\u2226", + "nparallel;": "\u2226", + "nparsl;": "\u2afd\u20e5", + "npart;": "\u2202\u0338", + "npolint;": "\u2a14", + "npr;": "\u2280", + "nprcue;": "\u22e0", + "npre;": "\u2aaf\u0338", + "nprec;": "\u2280", + "npreceq;": "\u2aaf\u0338", + "nrArr;": "\u21cf", + "nrarr;": "\u219b", + "nrarrc;": "\u2933\u0338", + "nrarrw;": "\u219d\u0338", + "nrightarrow;": "\u219b", + "nrtri;": "\u22eb", + "nrtrie;": "\u22ed", + "nsc;": "\u2281", + "nsccue;": "\u22e1", + "nsce;": "\u2ab0\u0338", + "nscr;": "\U0001d4c3", + "nshortmid;": "\u2224", + "nshortparallel;": "\u2226", + "nsim;": "\u2241", + "nsime;": "\u2244", + "nsimeq;": "\u2244", + "nsmid;": "\u2224", + "nspar;": "\u2226", + "nsqsube;": "\u22e2", + "nsqsupe;": "\u22e3", + "nsub;": "\u2284", + "nsubE;": "\u2ac5\u0338", + "nsube;": "\u2288", + "nsubset;": "\u2282\u20d2", + "nsubseteq;": "\u2288", + "nsubseteqq;": "\u2ac5\u0338", + "nsucc;": "\u2281", + "nsucceq;": "\u2ab0\u0338", + "nsup;": "\u2285", + "nsupE;": "\u2ac6\u0338", + "nsupe;": "\u2289", + "nsupset;": "\u2283\u20d2", + "nsupseteq;": "\u2289", + "nsupseteqq;": "\u2ac6\u0338", + "ntgl;": "\u2279", + "ntilde": "\xf1", + "ntilde;": "\xf1", + "ntlg;": "\u2278", + "ntriangleleft;": "\u22ea", + "ntrianglelefteq;": "\u22ec", + "ntriangleright;": "\u22eb", + "ntrianglerighteq;": "\u22ed", + "nu;": "\u03bd", + "num;": "#", + "numero;": "\u2116", + "numsp;": "\u2007", + "nvDash;": "\u22ad", + "nvHarr;": "\u2904", + "nvap;": "\u224d\u20d2", + "nvdash;": "\u22ac", + "nvge;": "\u2265\u20d2", + "nvgt;": ">\u20d2", + "nvinfin;": "\u29de", + "nvlArr;": "\u2902", + "nvle;": "\u2264\u20d2", + "nvlt;": "<\u20d2", + "nvltrie;": "\u22b4\u20d2", + "nvrArr;": "\u2903", + "nvrtrie;": "\u22b5\u20d2", + "nvsim;": "\u223c\u20d2", + "nwArr;": "\u21d6", + "nwarhk;": "\u2923", + "nwarr;": "\u2196", + "nwarrow;": "\u2196", + "nwnear;": "\u2927", + "oS;": "\u24c8", + "oacute": "\xf3", + "oacute;": "\xf3", + "oast;": "\u229b", + "ocir;": "\u229a", + "ocirc": "\xf4", + "ocirc;": "\xf4", + "ocy;": "\u043e", + "odash;": "\u229d", + "odblac;": "\u0151", + "odiv;": "\u2a38", + "odot;": "\u2299", + "odsold;": "\u29bc", + "oelig;": "\u0153", + "ofcir;": "\u29bf", + "ofr;": "\U0001d52c", + "ogon;": "\u02db", + "ograve": "\xf2", + "ograve;": "\xf2", + "ogt;": "\u29c1", + "ohbar;": "\u29b5", + "ohm;": "\u03a9", + "oint;": "\u222e", + "olarr;": "\u21ba", + "olcir;": "\u29be", + "olcross;": "\u29bb", + "oline;": "\u203e", + "olt;": "\u29c0", + "omacr;": "\u014d", + "omega;": "\u03c9", + "omicron;": "\u03bf", + "omid;": "\u29b6", + "ominus;": "\u2296", + "oopf;": "\U0001d560", + "opar;": "\u29b7", + "operp;": "\u29b9", + "oplus;": "\u2295", + "or;": "\u2228", + "orarr;": "\u21bb", + "ord;": "\u2a5d", + "order;": "\u2134", + "orderof;": "\u2134", + "ordf": "\xaa", + "ordf;": "\xaa", + "ordm": "\xba", + "ordm;": "\xba", + "origof;": "\u22b6", + "oror;": "\u2a56", + "orslope;": "\u2a57", + "orv;": "\u2a5b", + "oscr;": "\u2134", + "oslash": "\xf8", + "oslash;": "\xf8", + "osol;": "\u2298", + "otilde": "\xf5", + "otilde;": "\xf5", + "otimes;": "\u2297", + "otimesas;": "\u2a36", + "ouml": "\xf6", + "ouml;": "\xf6", + "ovbar;": "\u233d", + "par;": "\u2225", + "para": "\xb6", + "para;": "\xb6", + "parallel;": "\u2225", + "parsim;": "\u2af3", + "parsl;": "\u2afd", + "part;": "\u2202", + "pcy;": "\u043f", + "percnt;": "%", + "period;": ".", + "permil;": "\u2030", + "perp;": "\u22a5", + "pertenk;": "\u2031", + "pfr;": "\U0001d52d", + "phi;": "\u03c6", + "phiv;": "\u03d5", + "phmmat;": "\u2133", + "phone;": "\u260e", + "pi;": "\u03c0", + "pitchfork;": "\u22d4", + "piv;": "\u03d6", + "planck;": "\u210f", + "planckh;": "\u210e", + "plankv;": "\u210f", + "plus;": "+", + "plusacir;": "\u2a23", + "plusb;": "\u229e", + "pluscir;": "\u2a22", + "plusdo;": "\u2214", + "plusdu;": "\u2a25", + "pluse;": "\u2a72", + "plusmn": "\xb1", + "plusmn;": "\xb1", + "plussim;": "\u2a26", + "plustwo;": "\u2a27", + "pm;": "\xb1", + "pointint;": "\u2a15", + "popf;": "\U0001d561", + "pound": "\xa3", + "pound;": "\xa3", + "pr;": "\u227a", + "prE;": "\u2ab3", + "prap;": "\u2ab7", + "prcue;": "\u227c", + "pre;": "\u2aaf", + "prec;": "\u227a", + "precapprox;": "\u2ab7", + "preccurlyeq;": "\u227c", + "preceq;": "\u2aaf", + "precnapprox;": "\u2ab9", + "precneqq;": "\u2ab5", + "precnsim;": "\u22e8", + "precsim;": "\u227e", + "prime;": "\u2032", + "primes;": "\u2119", + "prnE;": "\u2ab5", + "prnap;": "\u2ab9", + "prnsim;": "\u22e8", + "prod;": "\u220f", + "profalar;": "\u232e", + "profline;": "\u2312", + "profsurf;": "\u2313", + "prop;": "\u221d", + "propto;": "\u221d", + "prsim;": "\u227e", + "prurel;": "\u22b0", + "pscr;": "\U0001d4c5", + "psi;": "\u03c8", + "puncsp;": "\u2008", + "qfr;": "\U0001d52e", + "qint;": "\u2a0c", + "qopf;": "\U0001d562", + "qprime;": "\u2057", + "qscr;": "\U0001d4c6", + "quaternions;": "\u210d", + "quatint;": "\u2a16", + "quest;": "?", + "questeq;": "\u225f", + "quot": "\"", + "quot;": "\"", + "rAarr;": "\u21db", + "rArr;": "\u21d2", + "rAtail;": "\u291c", + "rBarr;": "\u290f", + "rHar;": "\u2964", + "race;": "\u223d\u0331", + "racute;": "\u0155", + "radic;": "\u221a", + "raemptyv;": "\u29b3", + "rang;": "\u27e9", + "rangd;": "\u2992", + "range;": "\u29a5", + "rangle;": "\u27e9", + "raquo": "\xbb", + "raquo;": "\xbb", + "rarr;": "\u2192", + "rarrap;": "\u2975", + "rarrb;": "\u21e5", + "rarrbfs;": "\u2920", + "rarrc;": "\u2933", + "rarrfs;": "\u291e", + "rarrhk;": "\u21aa", + "rarrlp;": "\u21ac", + "rarrpl;": "\u2945", + "rarrsim;": "\u2974", + "rarrtl;": "\u21a3", + "rarrw;": "\u219d", + "ratail;": "\u291a", + "ratio;": "\u2236", + "rationals;": "\u211a", + "rbarr;": "\u290d", + "rbbrk;": "\u2773", + "rbrace;": "}", + "rbrack;": "]", + "rbrke;": "\u298c", + "rbrksld;": "\u298e", + "rbrkslu;": "\u2990", + "rcaron;": "\u0159", + "rcedil;": "\u0157", + "rceil;": "\u2309", + "rcub;": "}", + "rcy;": "\u0440", + "rdca;": "\u2937", + "rdldhar;": "\u2969", + "rdquo;": "\u201d", + "rdquor;": "\u201d", + "rdsh;": "\u21b3", + "real;": "\u211c", + "realine;": "\u211b", + "realpart;": "\u211c", + "reals;": "\u211d", + "rect;": "\u25ad", + "reg": "\xae", + "reg;": "\xae", + "rfisht;": "\u297d", + "rfloor;": "\u230b", + "rfr;": "\U0001d52f", + "rhard;": "\u21c1", + "rharu;": "\u21c0", + "rharul;": "\u296c", + "rho;": "\u03c1", + "rhov;": "\u03f1", + "rightarrow;": "\u2192", + "rightarrowtail;": "\u21a3", + "rightharpoondown;": "\u21c1", + "rightharpoonup;": "\u21c0", + "rightleftarrows;": "\u21c4", + "rightleftharpoons;": "\u21cc", + "rightrightarrows;": "\u21c9", + "rightsquigarrow;": "\u219d", + "rightthreetimes;": "\u22cc", + "ring;": "\u02da", + "risingdotseq;": "\u2253", + "rlarr;": "\u21c4", + "rlhar;": "\u21cc", + "rlm;": "\u200f", + "rmoust;": "\u23b1", + "rmoustache;": "\u23b1", + "rnmid;": "\u2aee", + "roang;": "\u27ed", + "roarr;": "\u21fe", + "robrk;": "\u27e7", + "ropar;": "\u2986", + "ropf;": "\U0001d563", + "roplus;": "\u2a2e", + "rotimes;": "\u2a35", + "rpar;": ")", + "rpargt;": "\u2994", + "rppolint;": "\u2a12", + "rrarr;": "\u21c9", + "rsaquo;": "\u203a", + "rscr;": "\U0001d4c7", + "rsh;": "\u21b1", + "rsqb;": "]", + "rsquo;": "\u2019", + "rsquor;": "\u2019", + "rthree;": "\u22cc", + "rtimes;": "\u22ca", + "rtri;": "\u25b9", + "rtrie;": "\u22b5", + "rtrif;": "\u25b8", + "rtriltri;": "\u29ce", + "ruluhar;": "\u2968", + "rx;": "\u211e", + "sacute;": "\u015b", + "sbquo;": "\u201a", + "sc;": "\u227b", + "scE;": "\u2ab4", + "scap;": "\u2ab8", + "scaron;": "\u0161", + "sccue;": "\u227d", + "sce;": "\u2ab0", + "scedil;": "\u015f", + "scirc;": "\u015d", + "scnE;": "\u2ab6", + "scnap;": "\u2aba", + "scnsim;": "\u22e9", + "scpolint;": "\u2a13", + "scsim;": "\u227f", + "scy;": "\u0441", + "sdot;": "\u22c5", + "sdotb;": "\u22a1", + "sdote;": "\u2a66", + "seArr;": "\u21d8", + "searhk;": "\u2925", + "searr;": "\u2198", + "searrow;": "\u2198", + "sect": "\xa7", + "sect;": "\xa7", + "semi;": ";", + "seswar;": "\u2929", + "setminus;": "\u2216", + "setmn;": "\u2216", + "sext;": "\u2736", + "sfr;": "\U0001d530", + "sfrown;": "\u2322", + "sharp;": "\u266f", + "shchcy;": "\u0449", + "shcy;": "\u0448", + "shortmid;": "\u2223", + "shortparallel;": "\u2225", + "shy": "\xad", + "shy;": "\xad", + "sigma;": "\u03c3", + "sigmaf;": "\u03c2", + "sigmav;": "\u03c2", + "sim;": "\u223c", + "simdot;": "\u2a6a", + "sime;": "\u2243", + "simeq;": "\u2243", + "simg;": "\u2a9e", + "simgE;": "\u2aa0", + "siml;": "\u2a9d", + "simlE;": "\u2a9f", + "simne;": "\u2246", + "simplus;": "\u2a24", + "simrarr;": "\u2972", + "slarr;": "\u2190", + "smallsetminus;": "\u2216", + "smashp;": "\u2a33", + "smeparsl;": "\u29e4", + "smid;": "\u2223", + "smile;": "\u2323", + "smt;": "\u2aaa", + "smte;": "\u2aac", + "smtes;": "\u2aac\ufe00", + "softcy;": "\u044c", + "sol;": "/", + "solb;": "\u29c4", + "solbar;": "\u233f", + "sopf;": "\U0001d564", + "spades;": "\u2660", + "spadesuit;": "\u2660", + "spar;": "\u2225", + "sqcap;": "\u2293", + "sqcaps;": "\u2293\ufe00", + "sqcup;": "\u2294", + "sqcups;": "\u2294\ufe00", + "sqsub;": "\u228f", + "sqsube;": "\u2291", + "sqsubset;": "\u228f", + "sqsubseteq;": "\u2291", + "sqsup;": "\u2290", + "sqsupe;": "\u2292", + "sqsupset;": "\u2290", + "sqsupseteq;": "\u2292", + "squ;": "\u25a1", + "square;": "\u25a1", + "squarf;": "\u25aa", + "squf;": "\u25aa", + "srarr;": "\u2192", + "sscr;": "\U0001d4c8", + "ssetmn;": "\u2216", + "ssmile;": "\u2323", + "sstarf;": "\u22c6", + "star;": "\u2606", + "starf;": "\u2605", + "straightepsilon;": "\u03f5", + "straightphi;": "\u03d5", + "strns;": "\xaf", + "sub;": "\u2282", + "subE;": "\u2ac5", + "subdot;": "\u2abd", + "sube;": "\u2286", + "subedot;": "\u2ac3", + "submult;": "\u2ac1", + "subnE;": "\u2acb", + "subne;": "\u228a", + "subplus;": "\u2abf", + "subrarr;": "\u2979", + "subset;": "\u2282", + "subseteq;": "\u2286", + "subseteqq;": "\u2ac5", + "subsetneq;": "\u228a", + "subsetneqq;": "\u2acb", + "subsim;": "\u2ac7", + "subsub;": "\u2ad5", + "subsup;": "\u2ad3", + "succ;": "\u227b", + "succapprox;": "\u2ab8", + "succcurlyeq;": "\u227d", + "succeq;": "\u2ab0", + "succnapprox;": "\u2aba", + "succneqq;": "\u2ab6", + "succnsim;": "\u22e9", + "succsim;": "\u227f", + "sum;": "\u2211", + "sung;": "\u266a", + "sup1": "\xb9", + "sup1;": "\xb9", + "sup2": "\xb2", + "sup2;": "\xb2", + "sup3": "\xb3", + "sup3;": "\xb3", + "sup;": "\u2283", + "supE;": "\u2ac6", + "supdot;": "\u2abe", + "supdsub;": "\u2ad8", + "supe;": "\u2287", + "supedot;": "\u2ac4", + "suphsol;": "\u27c9", + "suphsub;": "\u2ad7", + "suplarr;": "\u297b", + "supmult;": "\u2ac2", + "supnE;": "\u2acc", + "supne;": "\u228b", + "supplus;": "\u2ac0", + "supset;": "\u2283", + "supseteq;": "\u2287", + "supseteqq;": "\u2ac6", + "supsetneq;": "\u228b", + "supsetneqq;": "\u2acc", + "supsim;": "\u2ac8", + "supsub;": "\u2ad4", + "supsup;": "\u2ad6", + "swArr;": "\u21d9", + "swarhk;": "\u2926", + "swarr;": "\u2199", + "swarrow;": "\u2199", + "swnwar;": "\u292a", + "szlig": "\xdf", + "szlig;": "\xdf", + "target;": "\u2316", + "tau;": "\u03c4", + "tbrk;": "\u23b4", + "tcaron;": "\u0165", + "tcedil;": "\u0163", + "tcy;": "\u0442", + "tdot;": "\u20db", + "telrec;": "\u2315", + "tfr;": "\U0001d531", + "there4;": "\u2234", + "therefore;": "\u2234", + "theta;": "\u03b8", + "thetasym;": "\u03d1", + "thetav;": "\u03d1", + "thickapprox;": "\u2248", + "thicksim;": "\u223c", + "thinsp;": "\u2009", + "thkap;": "\u2248", + "thksim;": "\u223c", + "thorn": "\xfe", + "thorn;": "\xfe", + "tilde;": "\u02dc", + "times": "\xd7", + "times;": "\xd7", + "timesb;": "\u22a0", + "timesbar;": "\u2a31", + "timesd;": "\u2a30", + "tint;": "\u222d", + "toea;": "\u2928", + "top;": "\u22a4", + "topbot;": "\u2336", + "topcir;": "\u2af1", + "topf;": "\U0001d565", + "topfork;": "\u2ada", + "tosa;": "\u2929", + "tprime;": "\u2034", + "trade;": "\u2122", + "triangle;": "\u25b5", + "triangledown;": "\u25bf", + "triangleleft;": "\u25c3", + "trianglelefteq;": "\u22b4", + "triangleq;": "\u225c", + "triangleright;": "\u25b9", + "trianglerighteq;": "\u22b5", + "tridot;": "\u25ec", + "trie;": "\u225c", + "triminus;": "\u2a3a", + "triplus;": "\u2a39", + "trisb;": "\u29cd", + "tritime;": "\u2a3b", + "trpezium;": "\u23e2", + "tscr;": "\U0001d4c9", + "tscy;": "\u0446", + "tshcy;": "\u045b", + "tstrok;": "\u0167", + "twixt;": "\u226c", + "twoheadleftarrow;": "\u219e", + "twoheadrightarrow;": "\u21a0", + "uArr;": "\u21d1", + "uHar;": "\u2963", + "uacute": "\xfa", + "uacute;": "\xfa", + "uarr;": "\u2191", + "ubrcy;": "\u045e", + "ubreve;": "\u016d", + "ucirc": "\xfb", + "ucirc;": "\xfb", + "ucy;": "\u0443", + "udarr;": "\u21c5", + "udblac;": "\u0171", + "udhar;": "\u296e", + "ufisht;": "\u297e", + "ufr;": "\U0001d532", + "ugrave": "\xf9", + "ugrave;": "\xf9", + "uharl;": "\u21bf", + "uharr;": "\u21be", + "uhblk;": "\u2580", + "ulcorn;": "\u231c", + "ulcorner;": "\u231c", + "ulcrop;": "\u230f", + "ultri;": "\u25f8", + "umacr;": "\u016b", + "uml": "\xa8", + "uml;": "\xa8", + "uogon;": "\u0173", + "uopf;": "\U0001d566", + "uparrow;": "\u2191", + "updownarrow;": "\u2195", + "upharpoonleft;": "\u21bf", + "upharpoonright;": "\u21be", + "uplus;": "\u228e", + "upsi;": "\u03c5", + "upsih;": "\u03d2", + "upsilon;": "\u03c5", + "upuparrows;": "\u21c8", + "urcorn;": "\u231d", + "urcorner;": "\u231d", + "urcrop;": "\u230e", + "uring;": "\u016f", + "urtri;": "\u25f9", + "uscr;": "\U0001d4ca", + "utdot;": "\u22f0", + "utilde;": "\u0169", + "utri;": "\u25b5", + "utrif;": "\u25b4", + "uuarr;": "\u21c8", + "uuml": "\xfc", + "uuml;": "\xfc", + "uwangle;": "\u29a7", + "vArr;": "\u21d5", + "vBar;": "\u2ae8", + "vBarv;": "\u2ae9", + "vDash;": "\u22a8", + "vangrt;": "\u299c", + "varepsilon;": "\u03f5", + "varkappa;": "\u03f0", + "varnothing;": "\u2205", + "varphi;": "\u03d5", + "varpi;": "\u03d6", + "varpropto;": "\u221d", + "varr;": "\u2195", + "varrho;": "\u03f1", + "varsigma;": "\u03c2", + "varsubsetneq;": "\u228a\ufe00", + "varsubsetneqq;": "\u2acb\ufe00", + "varsupsetneq;": "\u228b\ufe00", + "varsupsetneqq;": "\u2acc\ufe00", + "vartheta;": "\u03d1", + "vartriangleleft;": "\u22b2", + "vartriangleright;": "\u22b3", + "vcy;": "\u0432", + "vdash;": "\u22a2", + "vee;": "\u2228", + "veebar;": "\u22bb", + "veeeq;": "\u225a", + "vellip;": "\u22ee", + "verbar;": "|", + "vert;": "|", + "vfr;": "\U0001d533", + "vltri;": "\u22b2", + "vnsub;": "\u2282\u20d2", + "vnsup;": "\u2283\u20d2", + "vopf;": "\U0001d567", + "vprop;": "\u221d", + "vrtri;": "\u22b3", + "vscr;": "\U0001d4cb", + "vsubnE;": "\u2acb\ufe00", + "vsubne;": "\u228a\ufe00", + "vsupnE;": "\u2acc\ufe00", + "vsupne;": "\u228b\ufe00", + "vzigzag;": "\u299a", + "wcirc;": "\u0175", + "wedbar;": "\u2a5f", + "wedge;": "\u2227", + "wedgeq;": "\u2259", + "weierp;": "\u2118", + "wfr;": "\U0001d534", + "wopf;": "\U0001d568", + "wp;": "\u2118", + "wr;": "\u2240", + "wreath;": "\u2240", + "wscr;": "\U0001d4cc", + "xcap;": "\u22c2", + "xcirc;": "\u25ef", + "xcup;": "\u22c3", + "xdtri;": "\u25bd", + "xfr;": "\U0001d535", + "xhArr;": "\u27fa", + "xharr;": "\u27f7", + "xi;": "\u03be", + "xlArr;": "\u27f8", + "xlarr;": "\u27f5", + "xmap;": "\u27fc", + "xnis;": "\u22fb", + "xodot;": "\u2a00", + "xopf;": "\U0001d569", + "xoplus;": "\u2a01", + "xotime;": "\u2a02", + "xrArr;": "\u27f9", + "xrarr;": "\u27f6", + "xscr;": "\U0001d4cd", + "xsqcup;": "\u2a06", + "xuplus;": "\u2a04", + "xutri;": "\u25b3", + "xvee;": "\u22c1", + "xwedge;": "\u22c0", + "yacute": "\xfd", + "yacute;": "\xfd", + "yacy;": "\u044f", + "ycirc;": "\u0177", + "ycy;": "\u044b", + "yen": "\xa5", + "yen;": "\xa5", + "yfr;": "\U0001d536", + "yicy;": "\u0457", + "yopf;": "\U0001d56a", + "yscr;": "\U0001d4ce", + "yucy;": "\u044e", + "yuml": "\xff", + "yuml;": "\xff", + "zacute;": "\u017a", + "zcaron;": "\u017e", + "zcy;": "\u0437", + "zdot;": "\u017c", + "zeetrf;": "\u2128", + "zeta;": "\u03b6", + "zfr;": "\U0001d537", + "zhcy;": "\u0436", + "zigrarr;": "\u21dd", + "zopf;": "\U0001d56b", + "zscr;": "\U0001d4cf", + "zwj;": "\u200d", + "zwnj;": "\u200c", +} + +replacementCharacters = { + 0x0: "\uFFFD", + 0x0d: "\u000D", + 0x80: "\u20AC", + 0x81: "\u0081", + 0x81: "\u0081", + 0x82: "\u201A", + 0x83: "\u0192", + 0x84: "\u201E", + 0x85: "\u2026", + 0x86: "\u2020", + 0x87: "\u2021", + 0x88: "\u02C6", + 0x89: "\u2030", + 0x8A: "\u0160", + 0x8B: "\u2039", + 0x8C: "\u0152", + 0x8D: "\u008D", + 0x8E: "\u017D", + 0x8F: "\u008F", + 0x90: "\u0090", + 0x91: "\u2018", + 0x92: "\u2019", + 0x93: "\u201C", + 0x94: "\u201D", + 0x95: "\u2022", + 0x96: "\u2013", + 0x97: "\u2014", + 0x98: "\u02DC", + 0x99: "\u2122", + 0x9A: "\u0161", + 0x9B: "\u203A", + 0x9C: "\u0153", + 0x9D: "\u009D", + 0x9E: "\u017E", + 0x9F: "\u0178", +} + +encodings = { + '437': 'cp437', + '850': 'cp850', + '852': 'cp852', + '855': 'cp855', + '857': 'cp857', + '860': 'cp860', + '861': 'cp861', + '862': 'cp862', + '863': 'cp863', + '865': 'cp865', + '866': 'cp866', + '869': 'cp869', + 'ansix341968': 'ascii', + 'ansix341986': 'ascii', + 'arabic': 'iso8859-6', + 'ascii': 'ascii', + 'asmo708': 'iso8859-6', + 'big5': 'big5', + 'big5hkscs': 'big5hkscs', + 'chinese': 'gbk', + 'cp037': 'cp037', + 'cp1026': 'cp1026', + 'cp154': 'ptcp154', + 'cp367': 'ascii', + 'cp424': 'cp424', + 'cp437': 'cp437', + 'cp500': 'cp500', + 'cp775': 'cp775', + 'cp819': 'windows-1252', + 'cp850': 'cp850', + 'cp852': 'cp852', + 'cp855': 'cp855', + 'cp857': 'cp857', + 'cp860': 'cp860', + 'cp861': 'cp861', + 'cp862': 'cp862', + 'cp863': 'cp863', + 'cp864': 'cp864', + 'cp865': 'cp865', + 'cp866': 'cp866', + 'cp869': 'cp869', + 'cp936': 'gbk', + 'cpgr': 'cp869', + 'cpis': 'cp861', + 'csascii': 'ascii', + 'csbig5': 'big5', + 'cseuckr': 'cp949', + 'cseucpkdfmtjapanese': 'euc_jp', + 'csgb2312': 'gbk', + 'cshproman8': 'hp-roman8', + 'csibm037': 'cp037', + 'csibm1026': 'cp1026', + 'csibm424': 'cp424', + 'csibm500': 'cp500', + 'csibm855': 'cp855', + 'csibm857': 'cp857', + 'csibm860': 'cp860', + 'csibm861': 'cp861', + 'csibm863': 'cp863', + 'csibm864': 'cp864', + 'csibm865': 'cp865', + 'csibm866': 'cp866', + 'csibm869': 'cp869', + 'csiso2022jp': 'iso2022_jp', + 'csiso2022jp2': 'iso2022_jp_2', + 'csiso2022kr': 'iso2022_kr', + 'csiso58gb231280': 'gbk', + 'csisolatin1': 'windows-1252', + 'csisolatin2': 'iso8859-2', + 'csisolatin3': 'iso8859-3', + 'csisolatin4': 'iso8859-4', + 'csisolatin5': 'windows-1254', + 'csisolatin6': 'iso8859-10', + 'csisolatinarabic': 'iso8859-6', + 'csisolatincyrillic': 'iso8859-5', + 'csisolatingreek': 'iso8859-7', + 'csisolatinhebrew': 'iso8859-8', + 'cskoi8r': 'koi8-r', + 'csksc56011987': 'cp949', + 'cspc775baltic': 'cp775', + 'cspc850multilingual': 'cp850', + 'cspc862latinhebrew': 'cp862', + 'cspc8codepage437': 'cp437', + 'cspcp852': 'cp852', + 'csptcp154': 'ptcp154', + 'csshiftjis': 'shift_jis', + 'csunicode11utf7': 'utf-7', + 'cyrillic': 'iso8859-5', + 'cyrillicasian': 'ptcp154', + 'ebcdiccpbe': 'cp500', + 'ebcdiccpca': 'cp037', + 'ebcdiccpch': 'cp500', + 'ebcdiccphe': 'cp424', + 'ebcdiccpnl': 'cp037', + 'ebcdiccpus': 'cp037', + 'ebcdiccpwt': 'cp037', + 'ecma114': 'iso8859-6', + 'ecma118': 'iso8859-7', + 'elot928': 'iso8859-7', + 'eucjp': 'euc_jp', + 'euckr': 'cp949', + 'extendedunixcodepackedformatforjapanese': 'euc_jp', + 'gb18030': 'gb18030', + 'gb2312': 'gbk', + 'gb231280': 'gbk', + 'gbk': 'gbk', + 'greek': 'iso8859-7', + 'greek8': 'iso8859-7', + 'hebrew': 'iso8859-8', + 'hproman8': 'hp-roman8', + 'hzgb2312': 'hz', + 'ibm037': 'cp037', + 'ibm1026': 'cp1026', + 'ibm367': 'ascii', + 'ibm424': 'cp424', + 'ibm437': 'cp437', + 'ibm500': 'cp500', + 'ibm775': 'cp775', + 'ibm819': 'windows-1252', + 'ibm850': 'cp850', + 'ibm852': 'cp852', + 'ibm855': 'cp855', + 'ibm857': 'cp857', + 'ibm860': 'cp860', + 'ibm861': 'cp861', + 'ibm862': 'cp862', + 'ibm863': 'cp863', + 'ibm864': 'cp864', + 'ibm865': 'cp865', + 'ibm866': 'cp866', + 'ibm869': 'cp869', + 'iso2022jp': 'iso2022_jp', + 'iso2022jp2': 'iso2022_jp_2', + 'iso2022kr': 'iso2022_kr', + 'iso646irv1991': 'ascii', + 'iso646us': 'ascii', + 'iso88591': 'windows-1252', + 'iso885910': 'iso8859-10', + 'iso8859101992': 'iso8859-10', + 'iso885911987': 'windows-1252', + 'iso885913': 'iso8859-13', + 'iso885914': 'iso8859-14', + 'iso8859141998': 'iso8859-14', + 'iso885915': 'iso8859-15', + 'iso885916': 'iso8859-16', + 'iso8859162001': 'iso8859-16', + 'iso88592': 'iso8859-2', + 'iso885921987': 'iso8859-2', + 'iso88593': 'iso8859-3', + 'iso885931988': 'iso8859-3', + 'iso88594': 'iso8859-4', + 'iso885941988': 'iso8859-4', + 'iso88595': 'iso8859-5', + 'iso885951988': 'iso8859-5', + 'iso88596': 'iso8859-6', + 'iso885961987': 'iso8859-6', + 'iso88597': 'iso8859-7', + 'iso885971987': 'iso8859-7', + 'iso88598': 'iso8859-8', + 'iso885981988': 'iso8859-8', + 'iso88599': 'windows-1254', + 'iso885991989': 'windows-1254', + 'isoceltic': 'iso8859-14', + 'isoir100': 'windows-1252', + 'isoir101': 'iso8859-2', + 'isoir109': 'iso8859-3', + 'isoir110': 'iso8859-4', + 'isoir126': 'iso8859-7', + 'isoir127': 'iso8859-6', + 'isoir138': 'iso8859-8', + 'isoir144': 'iso8859-5', + 'isoir148': 'windows-1254', + 'isoir149': 'cp949', + 'isoir157': 'iso8859-10', + 'isoir199': 'iso8859-14', + 'isoir226': 'iso8859-16', + 'isoir58': 'gbk', + 'isoir6': 'ascii', + 'koi8r': 'koi8-r', + 'koi8u': 'koi8-u', + 'korean': 'cp949', + 'ksc5601': 'cp949', + 'ksc56011987': 'cp949', + 'ksc56011989': 'cp949', + 'l1': 'windows-1252', + 'l10': 'iso8859-16', + 'l2': 'iso8859-2', + 'l3': 'iso8859-3', + 'l4': 'iso8859-4', + 'l5': 'windows-1254', + 'l6': 'iso8859-10', + 'l8': 'iso8859-14', + 'latin1': 'windows-1252', + 'latin10': 'iso8859-16', + 'latin2': 'iso8859-2', + 'latin3': 'iso8859-3', + 'latin4': 'iso8859-4', + 'latin5': 'windows-1254', + 'latin6': 'iso8859-10', + 'latin8': 'iso8859-14', + 'latin9': 'iso8859-15', + 'ms936': 'gbk', + 'mskanji': 'shift_jis', + 'pt154': 'ptcp154', + 'ptcp154': 'ptcp154', + 'r8': 'hp-roman8', + 'roman8': 'hp-roman8', + 'shiftjis': 'shift_jis', + 'tis620': 'cp874', + 'unicode11utf7': 'utf-7', + 'us': 'ascii', + 'usascii': 'ascii', + 'utf16': 'utf-16', + 'utf16be': 'utf-16-be', + 'utf16le': 'utf-16-le', + 'utf8': 'utf-8', + 'windows1250': 'cp1250', + 'windows1251': 'cp1251', + 'windows1252': 'cp1252', + 'windows1253': 'cp1253', + 'windows1254': 'cp1254', + 'windows1255': 'cp1255', + 'windows1256': 'cp1256', + 'windows1257': 'cp1257', + 'windows1258': 'cp1258', + 'windows936': 'gbk', + 'x-x-big5': 'big5'} + +tokenTypes = { + "Doctype": 0, + "Characters": 1, + "SpaceCharacters": 2, + "StartTag": 3, + "EndTag": 4, + "EmptyTag": 5, + "Comment": 6, + "ParseError": 7 +} + +tagTokenTypes = frozenset([tokenTypes["StartTag"], tokenTypes["EndTag"], + tokenTypes["EmptyTag"]]) + + +prefixes = dict([(v, k) for k, v in namespaces.items()]) +prefixes["http://www.w3.org/1998/Math/MathML"] = "math" + + +class DataLossWarning(UserWarning): + pass + + +class ReparseException(Exception): + pass diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/constants.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/constants.pyc new file mode 100644 index 0000000000000000000000000000000000000000..74a70bd742235a1c952e73265d4719f7d2a00879 GIT binary patch literal 85321 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

    Do6;di+jNag znCd!Pa3DSCPTQ3hwt==q_aVbpu;&5o@fxGIvy#g`T38@vJOMJVloAt}IJ4MV3*b ztnC~6^13LicSDxfNm&nW$V#&O7Eo>Xyv)Qx-&{S(|i1<2$ z?-o10|K2v`vwaGEDeoF9l^cAs`Tus@`-sDRMBLAMltlfn7o+^9mVzT5?$JITHrE+8 z*BSQa9yZq*?)~O(pk(C@{H^@2|BXNYgsB&?2$g@v)W71N-{7C$U*n%&=bvxz&oA@Oukg?RWP9KEP5kL&-QOi_e`@8wF*Sxi z-`sf*R^E#}*ukR!SnPcO-NU}`*~iJYIc+$yKuT?*dN;1Bw7G!0_WW_1rFN-4=?1Yr zB|JDz-hx0ge1Q;FYmsCNpRhswUH)87tIcRvi<8ih3NWd+)xgX8ebrR-*8n3C{VCs6 zboBLJ-u_4hzJUUy{gLVc$gMxM*sr2k-@qYUD*0m^IhCQ>Lv75dAAyc7O$!ovyG<&p zwDF$2Qb#x^O&|9z2I0PAcD0VD9NR<;==tmTr&IfB&3ZaONx=fz97Y?DLX`g$$Z578 zgW`~8!t!F~PvK=B+*IlV`e@`A?9l`&iXpUNV=;XVT{S87h1ReN;7e_4yKXB0xUvJ4 zp$hzzT(jZwSog1ooySEkX~}VWEg%8o)2>x}>U4`nsO6@2GhbJBJX)^|q?vMTr2+7% z1mQfJ-5|Of`s;Ok*eYKuYJOycc$KsDgv}>7h_VQ85W`ZH>R2L?^wn;c^hHmU)i+j-k(qZ@z*c>9shmpZ!Pn;=l)%7|CIbq zKL!4GjP%Z0#psIEFWk%YuYBo$zq;xEdw=)7P4~wCzKW9Zzprlk2ls~m?z{iqZ9jL< zz45>Mvr@5i{_j^e{ZiH@bJ*@L>c3yUm;e1D{{Qvx`)h*ybNv3={jrC?-@o^7`lsl( zSna#1yBN5Ofx8&Ei-EfsxQl_i7`TgpyBN5Ofx8&Ei-EfsxQl_i7`Tgp|5prjTi5>n mt^KUp`TLLHZq1(s2EKBK{p~B8{^7m9xT)vfuWb6-&;1{e?|&Nr literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5b0c0ac1d527e757226f3d733cdf819655de9870 GIT binary patch literal 153 zcmZSn%*&OmSsb3s00oRd+5w1*S%5?e14FO|NW@PANHCxg#ZEvm{gT`Q{esK_-K5gY zoD|(eCrAIXbdUfT$Cst%rQ{dsXO!gTnC4_A>8EApl%y6F>&M4u=4F<|$LkeTmT&-# SvB}L(Da}c>16fuK#0&s@k0M?G literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.py new file mode 100644 index 0000000..c7dbaed --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.py @@ -0,0 +1,12 @@ +from __future__ import absolute_import, division, unicode_literals + + +class Filter(object): + def __init__(self, source): + self.source = source + + def __iter__(self): + return iter(self.source) + + def __getattr__(self, name): + return getattr(self.source, name) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/_base.pyc new file mode 100644 index 0000000000000000000000000000000000000000..57c82b5661f54c44e94b263f5d8a23e92dcf16ec GIT binary patch literal 1076 zcmcJNO;6k~5QfL`LJJjYe?V_s!U1xkr>Y-R>Jg;up<*v?5__qU^P$*TsS>y4ANLP* z-r2BK@32}s<4MNvQ89Dx+4@N|Uk~ zxdp8iSxt{bTcX?50oesD^8+sR*e}O!=`BxH9s4jPXM8*KV@j_%XZ^-U-*@R9FQ(2n zy>%w|jr}w>E=N&X@DyEGmk4qmyD5I=s7UQl41PGTCm-y2b@laTbBBZs zvvHm6$KqFN!)5Swv6j=s!qioC7sGEc!5H89WDGouP$bm=2LsDJabjqqdqrEt7Vn7n zgfMMKh!-U`dl^>NF$S0S#0mrq+_bRbGWV=(^EUe*_Z7dtbE!&cCPuXoi`QM%x@Sgz z!ve<4n#N!`(@Uq$*8pK-(y@Hp_I3)qEYXD}&Re4FADBeX(F7%olO}`Ip*qq>`Z`BE nqpYVijX>cPm2$msOd7SX?_HB*ix)r>V?OSz_yl2b?Y;gB-e=>s literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py new file mode 100644 index 0000000..fed6996 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py @@ -0,0 +1,20 @@ +from __future__ import absolute_import, division, unicode_literals + +from . import _base + +try: + from collections import OrderedDict +except ImportError: + from ordereddict import OrderedDict + + +class Filter(_base.Filter): + def __iter__(self): + for token in _base.Filter.__iter__(self): + if token["type"] in ("StartTag", "EmptyTag"): + attrs = OrderedDict() + for name, value in sorted(token["data"].items(), + key=lambda x: x[0]): + attrs[name] = value + token["data"] = attrs + yield token diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a38b50d58e88ee4f7700e2d8415b436c3f72382d GIT binary patch literal 1367 zcmcgrO>fgc5PfSWX&WdMQB|tMg_}8)oDi3)f~rO0(jo^Dh^WlQyJ?-QKk8jajnoJs z5Pz6Iz|1z6|z@LqMHyO{Mc z6;M5V1HJ+u#(k&_45Lj#kukI=q{ZE*MNVvK8mE&iugcmvc2U_PvsqcV9a5SiOG~8_ zlQ~^WV>3aLg2@>yiE{Gj!~CJ^0u$*W&>R8e9g-f>2T= z;-L?dvJXe*FJ<5FB;0(417-rV0JoHsz{$lND}h^zAh1vA&3mYqa3N>B3UKoruH&~m z*q?RTO2t{%M2M4%J$wwX3b7(DdMR#*!|NC$7Aa~6hXq)AC$1l2L^#_5o;4i;#Y`QPN3*1I+c(XT_NXe1x;&vy=&gA4Y6FYndTwU0!y-iM-B> zeM8H@<<+3ds)I?B8Fe6!U!E^6+2Frqp$k>kgDaPtXC|8rroQ}kAWd~8C)#DHG}5^` zn-JypX|?ox9~zlYlssZmEMMjE{5`vfnTle_GeX73*a?zKX`zU->_BYg@1_=@Fy1Ovs~PCkVwZv9KHd1SBpi AIsgCw literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py new file mode 100644 index 0000000..ca33b70 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py @@ -0,0 +1,65 @@ +from __future__ import absolute_import, division, unicode_literals + +from . import _base + + +class Filter(_base.Filter): + def __init__(self, source, encoding): + _base.Filter.__init__(self, source) + self.encoding = encoding + + def __iter__(self): + state = "pre_head" + meta_found = (self.encoding is None) + pending = [] + + for token in _base.Filter.__iter__(self): + type = token["type"] + if type == "StartTag": + if token["name"].lower() == "head": + state = "in_head" + + elif type == "EmptyTag": + if token["name"].lower() == "meta": + # replace charset with actual encoding + has_http_equiv_content_type = False + for (namespace, name), value in token["data"].items(): + if namespace is not None: + continue + elif name.lower() == 'charset': + token["data"][(namespace, name)] = self.encoding + meta_found = True + break + elif name == 'http-equiv' and value.lower() == 'content-type': + has_http_equiv_content_type = True + else: + if has_http_equiv_content_type and (None, "content") in token["data"]: + token["data"][(None, "content")] = 'text/html; charset=%s' % self.encoding + meta_found = True + + elif token["name"].lower() == "head" and not meta_found: + # insert meta into empty head + yield {"type": "StartTag", "name": "head", + "data": token["data"]} + yield {"type": "EmptyTag", "name": "meta", + "data": {(None, "charset"): self.encoding}} + yield {"type": "EndTag", "name": "head"} + meta_found = True + continue + + elif type == "EndTag": + if token["name"].lower() == "head" and pending: + # insert meta into head (if necessary) and flush pending queue + yield pending.pop(0) + if not meta_found: + yield {"type": "EmptyTag", "name": "meta", + "data": {(None, "charset"): self.encoding}} + while pending: + yield pending.pop(0) + meta_found = True + state = "post_head" + + if state == "in_head": + pending.append(token) + else: + yield token diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.pyc new file mode 100644 index 0000000000000000000000000000000000000000..10d5b00a86f9b83248f1e1b00718ea1b934c2741 GIT binary patch literal 2226 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 + # element, or if there is no more content in the parent + # element. + if type == "StartTag": + return next["name"] in ('option', 'optgroup') + else: + return type == "EndTag" or type is None + elif tagname in ('rt', 'rp'): + # An rt element's end tag may be omitted if the rt element is + # immediately followed by an rt or rp element, or if there is + # no more content in the parent element. + # An rp element's end tag may be omitted if the rp element is + # immediately followed by an rt or rp element, or if there is + # no more content in the parent element. + if type == "StartTag": + return next["name"] in ('rt', 'rp') + else: + return type == "EndTag" or type is None + elif tagname == 'colgroup': + # A colgroup element's end tag may be omitted if the colgroup + # element is not immediately followed by a space character or + # a comment. + if type in ("Comment", "SpaceCharacters"): + return False + elif type == "StartTag": + # XXX: we also look for an immediately following colgroup + # element. See is_optional_start. + return next["name"] != 'colgroup' + else: + return True + elif tagname in ('thead', 'tbody'): + # A thead element's end tag may be omitted if the thead element + # is immediately followed by a tbody or tfoot element. + # A tbody element's end tag may be omitted if the tbody element + # is immediately followed by a tbody or tfoot element, or if + # there is no more content in the parent element. + # A tfoot element's end tag may be omitted if the tfoot element + # is immediately followed by a tbody element, or if there is no + # more content in the parent element. + # XXX: we never omit the end tag when the following element is + # a tbody. See is_optional_start. + if type == "StartTag": + return next["name"] in ['tbody', 'tfoot'] + elif tagname == 'tbody': + return type == "EndTag" or type is None + else: + return False + elif tagname == 'tfoot': + # A tfoot element's end tag may be omitted if the tfoot element + # is immediately followed by a tbody element, or if there is no + # more content in the parent element. + # XXX: we never omit the end tag when the following element is + # a tbody. See is_optional_start. + if type == "StartTag": + return next["name"] == 'tbody' + else: + return type == "EndTag" or type is None + elif tagname in ('td', 'th'): + # A td element's end tag may be omitted if the td element is + # immediately followed by a td or th element, or if there is + # no more content in the parent element. + # A th element's end tag may be omitted if the th element is + # immediately followed by a td or th element, or if there is + # no more content in the parent element. + if type == "StartTag": + return next["name"] in ('td', 'th') + else: + return type == "EndTag" or type is None + return False diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/optionaltags.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/optionaltags.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f0253eec5c74ea4fd940f14fbed28375c90eb1a8 GIT binary patch literal 4346 zcmds4&2JQC7=LDGcT3wXln<*l7;k1VU<2|k@(qy-CR5UeMqH;mv)iGwJKLFeDot7w z0vb;y25;QFdr?o`Jn6-F_vHUzJQzLr{C@9tcUnO(fs2%RKcDZ1;CMahTBWiiPn#h{;zbt5EicZ4GxDT2aMt*#x#72Y8u-TNqU(3U9MD&~ zfnG9(y>Z~})*;Foo5pHnz-M?DPu0YASjB_s80ec$^u}-k5xU_W!v$n{J}!iUjRvx* z(LjP_`*aXzzdEm`-^2e8dUB@tgB;$1N%i&*8| zLy7^!DY66E?tLOp5a4GbzewaC2f#aVHw#kTc>?buu!^A~S<0_E8b0Z6j8L;LsNI9# zOC-75p*(%z_YBFZGnIOMTJ2VdESM1qmc##-l1?Y=njAH7w&yp)OG|$0H`OZ{gKa7F zgRQX$zg_9{%o+l77>2{p1pUP%SmR~ZOrxI3;l9kQ#Wt>+N!(78yqBZ=>W0^bH~=(c z%2g{#OwMwYvMN1EW(%|>cZ%}<2O7|9yYNq<4t4%r7n`h94Q9HL<{?YvRqZHYAuE}h zejBOop}2YQkB2m=>-Ws-saI2?ujrQ@1$j-onyYD8t~q5^)LNCR^3KwTQ>)ZAXLm{~ zZrQiQpXs%nxq=F#|KGzf~U(owRz_edz=*)=>qr~ zBD~iol*sZ9O`xd~a{MIGzbl}BzKI^3!W}CC^Dg~{P?pr!1yW4j9~_Xg`S=GfPm}bo z19ER!asz38FOcYdO7w$F=aZ}|RvD&qpvnYiwxJ&-R9~5EM1PwcKP;fX&pH6~v)j!Rqs*iik=SN34h1WNi(z)oE*u1i@`>npG^Y#ViPNyz6>I8q`uS z_k$n}vy5dbosQb+n4OLj81Xd}tVwCh`@ zTG>$+^m##rvapF)oUM@lqN)buJSI8&XyHj}t(02(44TEZ)-Y@r!zK|B-z>4r+Wv(` z_YX%uT_0dMf4s{r5!?^l`q-n#cclF=!T-|rHpHJM0Ib>2ar;pKb8RNr(58d9cVf(xr_=NJ9(=Ti3FlgXo zHEqt*4%+ulyr$8r!x!4yC| e#HU9;a!VhA#`6=A#yVroa~A9~@Y`RSbpHm)!G|FL literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.py new file mode 100644 index 0000000..b206b54 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.py @@ -0,0 +1,12 @@ +from __future__ import absolute_import, division, unicode_literals + +from . import _base +from ..sanitizer import HTMLSanitizerMixin + + +class Filter(_base.Filter, HTMLSanitizerMixin): + def __iter__(self): + for token in _base.Filter.__iter__(self): + token = self.sanitize_token(token) + if token: + yield token diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/sanitizer.pyc new file mode 100644 index 0000000000000000000000000000000000000000..59fc6d5dcb11dfa35ba3fa08b5192c4a87a9d4a7 GIT binary patch literal 890 zcmb_aO>fjN5PeQI$x;crv?nBPT*9H`gt(xJ7F2PdMam*7B9O@@Uhv|45Id`a$_f54 ze}Eb9vi$>%lF7`AGxOfF!@qa;s>k-S!uAU3{o-=~`;n5GZUF-{0);>mpa{@}C_;!j zKpnzN&_pOAswb!;m>5lhBB45lim;kOC0Nqh1b=|vz=vXrdWv~^hX!b#n(|DyPoZ4c z&Wuh;-Spky+?23dueH@(>ttWPEc-qs3apmI6Jrvb&;5jo*Klv9Tk+asO0J&40V{!3 zfNK&c@aoee{1RNOLR<@mxD*%;IldR)4?*`O_1`qUNGH@N=e9Yk@Uo?3iBh_IgxD>A z>AG*KO__w_f2=Y~FMNX&f|P@ONg;DhpY^&wT8!G%N9F0s+w~U){3F+@t-B%n>KgOZ z=tZ{lhS==?tl>%jBWI_06D$Xa2V!5uVzXb2NZFQ+B9eQ)Xu5hdRQlgMk(+R9l-Qw! z9?LGo;=-S!ErI3e#(@dYC*-_ex%bMK?62cPw^NvV-?`xpPoLcuS-+FdH?|xz9m|G3 J3}#{${sXxUyXyb| literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.py new file mode 100644 index 0000000..dfc60ee --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.py @@ -0,0 +1,38 @@ +from __future__ import absolute_import, division, unicode_literals + +import re + +from . import _base +from ..constants import rcdataElements, spaceCharacters +spaceCharacters = "".join(spaceCharacters) + +SPACES_REGEX = re.compile("[%s]+" % spaceCharacters) + + +class Filter(_base.Filter): + + spacePreserveElements = frozenset(["pre", "textarea"] + list(rcdataElements)) + + def __iter__(self): + preserve = 0 + for token in _base.Filter.__iter__(self): + type = token["type"] + if type == "StartTag" \ + and (preserve or token["name"] in self.spacePreserveElements): + preserve += 1 + + elif type == "EndTag" and preserve: + preserve -= 1 + + elif not preserve and type == "SpaceCharacters" and token["data"]: + # Test on token["data"] above to not introduce spaces where there were not + token["data"] = " " + + elif not preserve and type == "Characters": + token["data"] = collapse_spaces(token["data"]) + + yield token + + +def collapse_spaces(text): + return SPACES_REGEX.sub(' ', text) diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.pyc b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/filters/whitespace.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3ce0d829b614e28f959c0399488183e461a15919 GIT binary patch literal 1636 zcmb_cU5*C`i0SGN8pz2p%FtvN60Z(KsS7Q8bKa+PmZQ{4m|K zB+>3uI0Gl(6dWQK;22zh`f9wa;CWX&(MZ9Y-6H8PN8C@*y;Lp_)+6+K{$W+9=A$^c>qMza^Ybxn zf0ISJcD3!iNs6+mTknUg%ZszZ6?Nrr@usVatjTv$W1NZVXAM)zk!m{aKKnJXP3_uTg zVYmrJM(>b4(PRPu!R_Az1dN-OPD6@T(p`rZo7Qyb$eY(bZB3e?Yy`%aA^2asV5%+@ zy?#%gXsc+e>6`&n^yKBAbio_Ws%dr+&^gl;&?`;t3p!Wij>R^h8T)V95bg|2%70KqWV15SGr2Rv@_Qi|WoNY)m)-tL6=3(_|@A+Ol$KuJ=4lbR!)=N*q z>Ie19jGpJjlpk<^$HIAsp8cDqM`Xo#_-E;fXsfg|LTd*emQ@Y|repO#)(`^JcEIuD zZp`wE(>dsj0DFWmGD=B;u}KpD0c&Iip0>uB_RRceI}Sq?B*H!6)xwv}qA8lgbywK@Fn#>!`?C`$mDla!)R*=PTdWrw znL4-l^^_}>^q)6xqJ0j8>31KpAQh^a8mkG*slLtMM|!I7sC#-2zg?pMksAdjNmAB% zXR#gecGK2xP34T2l5OF9gxVuarewP6;F{Y254iLW`9ghP%LM>=py>z~0A2QT&({ER zkB0&``M4*!ztsq`div;Sxk{qtcgr6=&bw~izXQSqU$Lt`u8#=-_yEaJ6RA1IatHFJ z^IgjzN3cZbDv~D%qBYzUD^RD9kkys*DL+R&_LxHib3OZ5#t|5mH~Z fbiLHb&^+wN)7Y|t6 literal 0 HcmV?d00001 diff --git a/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/html5parser.py b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/html5parser.py new file mode 100644 index 0000000..40f3d09 --- /dev/null +++ b/mailman3/venv/lib/python2.7/site-packages/pip/_vendor/html5lib/html5parser.py @@ -0,0 +1,2724 @@ +from __future__ import absolute_import, division, unicode_literals +from pip._vendor.six import with_metaclass + +import types + +from . import inputstream +from . import tokenizer + +from . import treebuilders +from .treebuilders._base import Marker + +from . import utils +from . import constants +from .constants import spaceCharacters, asciiUpper2Lower +from .constants import specialElements +from .constants import headingElements +from .constants import cdataElements, rcdataElements +from .constants import tokenTypes, ReparseException, namespaces +from .constants import htmlIntegrationPointElements, mathmlTextIntegrationPointElements +from .constants import adjustForeignAttributes as adjustForeignAttributesMap +from .constants import E + + +def parse(doc, treebuilder="etree", encoding=None, + namespaceHTMLElements=True): + """Parse a string or file-like object into a tree""" + tb = treebuilders.getTreeBuilder(treebuilder) + p = HTMLParser(tb, namespaceHTMLElements=namespaceHTMLElements) + return p.parse(doc, encoding=encoding) + + +def parseFragment(doc, container="div", treebuilder="etree", encoding=None, + namespaceHTMLElements=True): + tb = treebuilders.getTreeBuilder(treebuilder) + p = HTMLParser(tb, namespaceHTMLElements=namespaceHTMLElements) + return p.parseFragment(doc, container=container, encoding=encoding) + + +def method_decorator_metaclass(function): + class Decorated(type): + def __new__(meta, classname, bases, classDict): + for attributeName, attribute in classDict.items(): + if isinstance(attribute, types.FunctionType): + attribute = function(attribute) + + classDict[attributeName] = attribute + return type.__new__(meta, classname, bases, classDict) + return Decorated + + +class HTMLParser(object): + """HTML parser. Generates a tree structure from a stream of (possibly + malformed) HTML""" + + def __init__(self, tree=None, tokenizer=tokenizer.HTMLTokenizer, + strict=False, namespaceHTMLElements=True, debug=False): + """ + strict - raise an exception when a parse error is encountered + + tree - a treebuilder class controlling the type of tree that will be + returned. Built in treebuilders can be accessed through + html5lib.treebuilders.getTreeBuilder(treeType) + + tokenizer - a class that provides a stream of tokens to the treebuilder. + This may be replaced for e.g. a sanitizer which converts some tags to + text + """ + + # Raise an exception on the first error encountered + self.strict = strict + + if tree is None: + tree = treebuilders.getTreeBuilder("etree") + self.tree = tree(namespaceHTMLElements) + self.tokenizer_class = tokenizer + self.errors = [] + + self.phases = dict([(name, cls(self, self.tree)) for name, cls in + getPhases(debug).items()]) + + def _parse(self, stream, innerHTML=False, container="div", + encoding=None, parseMeta=True, useChardet=True, **kwargs): + + self.innerHTMLMode = innerHTML + self.container = container + self.tokenizer = self.tokenizer_class(stream, encoding=encoding, + parseMeta=parseMeta, + useChardet=useChardet, + parser=self, **kwargs) + self.reset() + + while True: + try: + self.mainLoop() + break + except ReparseException: + self.reset() + + def reset(self): + self.tree.reset() + self.firstStartTag = False + self.errors = [] + self.log = [] # only used with debug mode + # "quirks" / "limited quirks" / "no quirks" + self.compatMode = "no quirks" + + if self.innerHTMLMode: + self.innerHTML = self.container.lower() + + if self.innerHTML in cdataElements: + self.tokenizer.state = self.tokenizer.rcdataState + elif self.innerHTML in rcdataElements: + self.tokenizer.state = self.tokenizer.rawtextState + elif self.innerHTML == 'plaintext': + self.tokenizer.state = self.tokenizer.plaintextState + else: + # state already is data state + # self.tokenizer.state = self.tokenizer.dataState + pass + self.phase = self.phases["beforeHtml"] + self.phase.insertHtmlElement() + self.resetInsertionMode() + else: + self.innerHTML = False + self.phase = self.phases["initial"] + + self.lastPhase = None + + self.beforeRCDataPhase = None + + self.framesetOK = True + + @property + def documentEncoding(self): + """The name of the character encoding + that was used to decode the input stream, + or :obj:`None` if that is not determined yet. + + """ + if not hasattr(self, 'tokenizer'): + return None + return self.tokenizer.stream.charEncoding[0] + + def isHTMLIntegrationPoint(self, element): + if (element.name == "annotation-xml" and + element.namespace == namespaces["mathml"]): + return ("encoding" in element.attributes and + element.attributes["encoding"].translate( + asciiUpper2Lower) in + ("text/html", "application/xhtml+xml")) + else: + return (element.namespace, element.name) in htmlIntegrationPointElements + + def isMathMLTextIntegrationPoint(self, element): + return (element.namespace, element.name) in mathmlTextIntegrationPointElements + + def mainLoop(self): + CharactersToken = tokenTypes["Characters"] + SpaceCharactersToken = tokenTypes["SpaceCharacters"] + StartTagToken = tokenTypes["StartTag"] + EndTagToken = tokenTypes["EndTag"] + CommentToken = tokenTypes["Comment"] + DoctypeToken = tokenTypes["Doctype"] + ParseErrorToken = tokenTypes["ParseError"] + + for token in self.normalizedTokens(): + new_token = token + while new_token is not None: + currentNode = self.tree.openElements[-1] if self.tree.openElements else None + currentNodeNamespace = currentNode.namespace if currentNode else None + currentNodeName = currentNode.name if currentNode else None + + type = new_token["type"] + + if type == ParseErrorToken: + self.parseError(new_token["data"], new_token.get("datavars", {})) + new_token = None + else: + if (len(self.tree.openElements) == 0 or + currentNodeNamespace == self.tree.defaultNamespace or + (self.isMathMLTextIntegrationPoint(currentNode) and + ((type == StartTagToken and + token["name"] not in frozenset(["mglyph", "malignmark"])) or + type in (CharactersToken, SpaceCharactersToken))) or + (currentNodeNamespace == namespaces["mathml"] and + currentNodeName == "annotation-xml" and + token["name"] == "svg") or + (self.isHTMLIntegrationPoint(currentNode) and + type in (StartTagToken, CharactersToken, SpaceCharactersToken))): + phase = self.phase + else: + phase = self.phases["inForeignContent"] + + if type == CharactersToken: + new_token = phase.processCharacters(new_token) + elif type == SpaceCharactersToken: + new_token = phase.processSpaceCharacters(new_token) + elif type == StartTagToken: + new_token = phase.processStartTag(new_token) + elif type == EndTagToken: + new_token = phase.processEndTag(new_token) + elif type == CommentToken: + new_token = phase.processComment(new_token) + elif type == DoctypeToken: + new_token = phase.processDoctype(new_token) + + if (type == StartTagToken and token["selfClosing"] + and not token["selfClosingAcknowledged"]): + self.parseError("non-void-element-with-trailing-solidus", + {"name": token["name"]}) + + # When the loop finishes it's EOF + reprocess = True + phases = [] + while reprocess: + phases.append(self.phase) + reprocess = self.phase.processEOF() + if reprocess: + assert self.phase not in phases + + def normalizedTokens(self): + for token in self.tokenizer: + yield self.normalizeToken(token) + + def parse(self, stream, encoding=None, parseMeta=True, useChardet=True): + """Parse a HTML document into a well-formed tree + + stream - a filelike object or string containing the HTML to be parsed + + The optional encoding parameter must be a string that indicates + the encoding. If specified, that encoding will be used, + regardless of any BOM or later declaration (such as in a meta + element) + """ + self._parse(stream, innerHTML=False, encoding=encoding, + parseMeta=parseMeta, useChardet=useChardet) + return self.tree.getDocument() + + def parseFragment(self, stream, container="div", encoding=None, + parseMeta=False, useChardet=True): + """Parse a HTML fragment into a well-formed tree fragment + + container - name of the element we're setting the innerHTML property + if set to None, default to 'div' + + stream - a filelike object or string containing the HTML to be parsed + + The optional encoding parameter must be a string that indicates + the encoding. If specified, that encoding will be used, + regardless of any BOM or later declaration (such as in a meta + element) + """ + self._parse(stream, True, container=container, encoding=encoding) + return self.tree.getFragment() + + def parseError(self, errorcode="XXX-undefined-error", datavars={}): + # XXX The idea is to make errorcode mandatory. + self.errors.append((self.tokenizer.stream.position(), errorcode, datavars)) + if self.strict: + raise ParseError(E[errorcode] % datavars) + + def normalizeToken(self, token): + """ HTML5 specific normalizations to the token stream """ + + if token["type"] == tokenTypes["StartTag"]: + token["data"] = dict(token["data"][::-1]) + + return token + + def adjustMathMLAttributes(self, token): + replacements = {"definitionurl": "definitionURL"} + for k, v in replacements.items(): + if k in token["data"]: + token["data"][v] = token["data"][k] + del token["data"][k] + + def adjustSVGAttributes(self, token): + replacements = { + "attributename": "attributeName", + "attributetype": "attributeType", + "basefrequency": "baseFrequency", + "baseprofile": "baseProfile", + "calcmode": "calcMode", + "clippathunits": "clipPathUnits", + "contentscripttype": "contentScriptType", + "contentstyletype": "contentStyleType", + "diffuseconstant": "diffuseConstant", + "edgemode": "edgeMode", + "externalresourcesrequired": "externalResourcesRequired", + "filterres": "filterRes", + "filterunits": "filterUnits", + "glyphref": "glyphRef", + "gradienttransform": "gradientTransform", + "gradientunits": "gradientUnits", + "kernelmatrix": "kernelMatrix", + "kernelunitlength": "kernelUnitLength", + "keypoints": "keyPoints", + "keysplines": "keySplines", + "keytimes": "keyTimes", + "lengthadjust": "lengthAdjust", + "limitingconeangle": "limitingConeAngle", + "markerheight": "markerHeight", + "markerunits": "markerUnits", + "markerwidth": "markerWidth", + "maskcontentunits": "maskContentUnits", + "maskunits": "maskUnits", + "numoctaves": "numOctaves", + "pathlength": "pathLength", + "patterncontentunits": "patternContentUnits", + "patterntransform": "patternTransform", + "patternunits": "patternUnits", + "pointsatx": "pointsAtX", + "pointsaty": "pointsAtY", + "pointsatz": "pointsAtZ", + "preservealpha": "preserveAlpha", + "preserveaspectratio": "preserveAspectRatio", + "primitiveunits": "primitiveUnits", + "refx": "refX", + "refy": "refY", + "repeatcount": "repeatCount", + "repeatdur": "repeatDur", + "requiredextensions": "requiredExtensions", + "requiredfeatures": "requiredFeatures", + "specularconstant": "specularConstant", + "specularexponent": "specularExponent", + "spreadmethod": "spreadMethod", + "startoffset": "startOffset", + "stddeviation": "stdDeviation", + "stitchtiles": "stitchTiles", + "surfacescale": "surfaceScale", + "systemlanguage": "systemLanguage", + "tablevalues": "tableValues", + "targetx": "targetX", + "targety": "targetY", + "textlength": "textLength", + "viewbox": "viewBox", + "viewtarget": "viewTarget", + "xchannelselector": "xChannelSelector", + "ychannelselector": "yChannelSelector", + "zoomandpan": "zoomAndPan" + } + for originalName in list(token["data"].keys()): + if originalName in replacements: + svgName = replacements[originalName] + token["data"][svgName] = token["data"][originalName] + del token["data"][originalName] + + def adjustForeignAttributes(self, token): + replacements = adjustForeignAttributesMap + + for originalName in token["data"].keys(): + if originalName in replacements: + foreignName = replacements[originalName] + token["data"][foreignName] = token["data"][originalName] + del token["data"][originalName] + + def reparseTokenNormal(self, token): + self.parser.phase() + + def resetInsertionMode(self): + # The name of this method is mostly historical. (It's also used in the + # specification.) + last = False + newModes = { + "select": "inSelect", + "td": "inCell", + "th": "inCell", + "tr": "inRow", + "tbody": "inTableBody", + "thead": "inTableBody", + "tfoot": "inTableBody", + "caption": "inCaption", + "colgroup": "inColumnGroup", + "table": "inTable", + "head": "inBody", + "body": "inBody", + "frameset": "inFrameset", + "html": "beforeHead" + } + for node in self.tree.openElements[::-1]: + nodeName = node.name + new_phase = None + if node == self.tree.openElements[0]: + assert self.innerHTML + last = True + nodeName = self.innerHTML + # Check for conditions that should only happen in the innerHTML + # case + if nodeName in ("select", "colgroup", "head", "html"): + assert self.innerHTML + + if not last and node.namespace != self.tree.defaultNamespace: + continue + + if nodeName in newModes: + new_phase = self.phases[newModes[nodeName]] + break + elif last: + new_phase = self.phases["inBody"] + break + + self.phase = new_phase + + def parseRCDataRawtext(self, token, contentType): + """Generic RCDATA/RAWTEXT Parsing algorithm + contentType - RCDATA or RAWTEXT + """ + assert contentType in ("RAWTEXT", "RCDATA") + + self.tree.insertElement(token) + + if contentType == "RAWTEXT": + self.tokenizer.state = self.tokenizer.rawtextState + else: + self.tokenizer.state = self.tokenizer.rcdataState + + self.originalPhase = self.phase + + self.phase = self.phases["text"] + + +def getPhases(debug): + def log(function): + """Logger that records which phase processes each token""" + type_names = dict((value, key) for key, value in + constants.tokenTypes.items()) + + def wrapped(self, *args, **kwargs): + if function.__name__.startswith("process") and len(args) > 0: + token = args[0] + try: + info = {"type": type_names[token['type']]} + except: + raise + if token['type'] in constants.tagTokenTypes: + info["name"] = token['name'] + + self.parser.log.append((self.parser.tokenizer.state.__name__, + self.parser.phase.__class__.__name__, + self.__class__.__name__, + function.__name__, + info)) + return function(self, *args, **kwargs) + else: + return function(self, *args, **kwargs) + return wrapped + + def getMetaclass(use_metaclass, metaclass_func): + if use_metaclass: + return method_decorator_metaclass(metaclass_func) + else: + return type + + class Phase(with_metaclass(getMetaclass(debug, log))): + """Base class for helper object that implements each phase of processing + """ + + def __init__(self, parser, tree): + self.parser = parser + self.tree = tree + + def processEOF(self): + raise NotImplementedError + + def processComment(self, token): + # For most phases the following is correct. Where it's not it will be + # overridden. + self.tree.insertComment(token, self.tree.openElements[-1]) + + def processDoctype(self, token): + self.parser.parseError("unexpected-doctype") + + def processCharacters(self, token): + self.tree.insertText(token["data"]) + + def processSpaceCharacters(self, token): + self.tree.insertText(token["data"]) + + def processStartTag(self, token): + return self.startTagHandler[token["name"]](token) + + def startTagHtml(self, token): + if not self.parser.firstStartTag and token["name"] == "html": + self.parser.parseError("non-html-root") + # XXX Need a check here to see if the first start tag token emitted is + # this token... If it's not, invoke self.parser.parseError(). + for attr, value in token["data"].items(): + if attr not in self.tree.openElements[0].attributes: + self.tree.openElements[0].attributes[attr] = value + self.parser.firstStartTag = False + + def processEndTag(self, token): + return self.endTagHandler[token["name"]](token) + + class InitialPhase(Phase): + def processSpaceCharacters(self, token): + pass + + def processComment(self, token): + self.tree.insertComment(token, self.tree.document) + + def processDoctype(self, token): + name = token["name"] + publicId = token["publicId"] + systemId = token["systemId"] + correct = token["correct"] + + if (name != "html" or publicId is not None or + systemId is not None and systemId != "about:legacy-compat"): + self.parser.parseError("unknown-doctype") + + if publicId is None: + publicId = "" + + self.tree.insertDoctype(token) + + if publicId != "": + publicId = publicId.translate(asciiUpper2Lower) + + if (not correct or token["name"] != "html" + or publicId.startswith( + ("+//silmaril//dtd html pro v0r11 19970101//", + "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", + "-//as//dtd html 3.0 aswedit + extensions//", + "-//ietf//dtd html 2.0 level 1//", + "-//ietf//dtd html 2.0 level 2//", + "-//ietf//dtd html 2.0 strict level 1//", + "-//ietf//dtd html 2.0 strict level 2//", + "-//ietf//dtd html 2.0 strict//", + "-//ietf//dtd html 2.0//", + "-//ietf//dtd html 2.1e//", + "-//ietf//dtd html 3.0//", + "-//ietf//dtd html 3.2 final//", + "-//ietf//dtd html 3.2//", + "-//ietf//dtd html 3//", + "-//ietf//dtd html level 0//", + "-//ietf//dtd html level 1//", + "-//ietf//dtd html level 2//", + "-//ietf//dtd html level 3//", + "-//ietf//dtd html strict level 0//", + "-//ietf//dtd html strict level 1//", + "-//ietf//dtd html strict level 2//", + "-//ietf//dtd html strict level 3//", + "-//ietf//dtd html strict//", + "-//ietf//dtd html//", + "-//metrius//dtd metrius presentational//", + "-//microsoft//dtd internet explorer 2.0 html strict//", + "-//microsoft//dtd internet explorer 2.0 html//", + "-//microsoft//dtd internet explorer 2.0 tables//", + "-//microsoft//dtd internet explorer 3.0 html strict//", + "-//microsoft//dtd internet explorer 3.0 html//", + "-//microsoft//dtd internet explorer 3.0 tables//", + "-//netscape comm. corp.//dtd html//", + "-//netscape comm. corp.//dtd strict html//", + "-//o'reilly and associates//dtd html 2.0//", + "-//o'reilly and associates//dtd html extended 1.0//", + "-//o'reilly and associates//dtd html extended relaxed 1.0//", + "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", + "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", + "-//spyglass//dtd html 2.0 extended//", + "-//sq//dtd html 2.0 hotmetal + extensions//", + "-//sun microsystems corp.//dtd hotjava html//", + "-//sun microsystems corp.//dtd hotjava strict html//", + "-//w3c//dtd html 3 1995-03-24//", + "-//w3c//dtd html 3.2 draft//", + "-//w3c//dtd html 3.2 final//", + "-//w3c//dtd html 3.2//", + "-//w3c//dtd html 3.2s draft//", + "-//w3c//dtd html 4.0 frameset//", + "-//w3c//dtd html 4.0 transitional//", + "-//w3c//dtd html experimental 19960712//", + "-//w3c//dtd html experimental 970421//", + "-//w3c//dtd w3 html//", + "-//w3o//dtd w3 html 3.0//", + "-//webtechs//dtd mozilla html 2.0//", + "-//webtechs//dtd mozilla html//")) + or publicId in + ("-//w3o//dtd w3 html strict 3.0//en//", + "-/w3c/dtd html 4.0 transitional/en", + "html") + or publicId.startswith( + ("-//w3c//dtd html 4.01 frameset//", + "-//w3c//dtd html 4.01 transitional//")) and + systemId is None + or systemId and systemId.lower() == "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"): + self.parser.compatMode = "quirks" + elif (publicId.startswith( + ("-//w3c//dtd xhtml 1.0 frameset//", + "-//w3c//dtd xhtml 1.0 transitional//")) + or publicId.startswith( + ("-//w3c//dtd html 4.01 frameset//", + "-//w3c//dtd html 4.01 transitional//")) and + systemId is not None): + self.parser.compatMode = "limited quirks" + + self.parser.phase = self.parser.phases["beforeHtml"] + + def anythingElse(self): + self.parser.compatMode = "quirks" + self.parser.phase = self.parser.phases["beforeHtml"] + + def processCharacters(self, token): + self.parser.parseError("expected-doctype-but-got-chars") + self.anythingElse() + return token + + def processStartTag(self, token): + self.parser.parseError("expected-doctype-but-got-start-tag", + {"name": token["name"]}) + self.anythingElse() + return token + + def processEndTag(self, token): + self.parser.parseError("expected-doctype-but-got-end-tag", + {"name": token["name"]}) + self.anythingElse() + return token + + def processEOF(self): + self.parser.parseError("expected-doctype-but-got-eof") + self.anythingElse() + return True + + class BeforeHtmlPhase(Phase): + # helper methods + def insertHtmlElement(self): + self.tree.insertRoot(impliedTagToken("html", "StartTag")) + self.parser.phase = self.parser.phases["beforeHead"] + + # other + def processEOF(self): + self.insertHtmlElement() + return True + + def processComment(self, token): + self.tree.insertComment(token, self.tree.document) + + def processSpaceCharacters(self, token): + pass + + def processCharacters(self, token): + self.insertHtmlElement() + return token + + def processStartTag(self, token): + if token["name"] == "html": + self.parser.firstStartTag = True + self.insertHtmlElement() + return token + + def processEndTag(self, token): + if token["name"] not in ("head", "body", "html", "br"): + self.parser.parseError("unexpected-end-tag-before-html", + {"name": token["name"]}) + else: + self.insertHtmlElement() + return token + + class BeforeHeadPhase(Phase): + def __init__(self, parser, tree): + Phase.__init__(self, parser, tree) + + self.startTagHandler = utils.MethodDispatcher([ + ("html", self.startTagHtml), + ("head", self.startTagHead) + ]) + self.startTagHandler.default = self.startTagOther + + self.endTagHandler = utils.MethodDispatcher([ + (("head", "body", "html", "br"), self.endTagImplyHead) + ]) + self.endTagHandler.default = self.endTagOther + + def processEOF(self): + self.startTagHead(impliedTagToken("head", "StartTag")) + return True + + def processSpaceCharacters(self, token): + pass + + def processCharacters(self, token): + self.startTagHead(impliedTagToken("head", "StartTag")) + return token + + def startTagHtml(self, token): + return self.parser.phases["inBody"].processStartTag(token) + + def startTagHead(self, token): + self.tree.insertElement(token) + self.tree.headPointer = self.tree.openElements[-1] + self.parser.phase = self.parser.phases["inHead"] + + def startTagOther(self, token): + self.startTagHead(impliedTagToken("head", "StartTag")) + return token + + def endTagImplyHead(self, token): + self.startTagHead(impliedTagToken("head", "StartTag")) + return token + + def endTagOther(self, token): + self.parser.parseError("end-tag-after-implied-root", + {"name": token["name"]}) + + class InHeadPhase(Phase): + def __init__(self, parser, tree): + Phase.__init__(self, parser, tree) + + self.startTagHandler = utils.MethodDispatcher([ + ("html", self.startTagHtml), + ("title", self.startTagTitle), + (("noscript", "noframes", "style"), self.startTagNoScriptNoFramesStyle), + ("script", self.startTagScript), + (("base", "basefont", "bgsound", "command", "link"), + self.startTagBaseLinkCommand), + ("meta", self.startTagMeta), + ("head", self.startTagHead) + ]) + self.startTagHandler.default = self.startTagOther + + self. endTagHandler = utils.MethodDispatcher([ + ("head", self.endTagHead), + (("br", "html", "body"), self.endTagHtmlBodyBr) + ]) + self.endTagHandler.default = self.endTagOther + + # the real thing + def processEOF(self): + self.anythingElse() + return True + + def processCharacters(self, token): + self.anythingElse() + return token + + def startTagHtml(self, token): + return self.parser.phases["inBody"].processStartTag(token) + + def startTagHead(self, token): + self.parser.parseError("two-heads-are-not-better-than-one") + + def startTagBaseLinkCommand(self, token): + self.tree.insertElement(token) + self.tree.openElements.pop() + token["selfClosingAcknowledged"] = True + + def startTagMeta(self, token): + self.tree.insertElement(token) + self.tree.openElements.pop() + token["selfClosingAcknowledged"] = True + + attributes = token["data"] + if self.parser.tokenizer.stream.charEncoding[1] == "tentative": + if "charset" in attributes: + self.parser.tokenizer.stream.changeEncoding(attributes["charset"]) + elif ("content" in attributes and + "http-equiv" in attributes and + attributes["http-equiv"].lower() == "content-type"): + # Encoding it as UTF-8 here is a hack, as really we should pass + # the abstract Unicode string, and just use the + # ContentAttrParser on that, but using UTF-8 allows all chars + # to be encoded and as a ASCII-superset works. + data = inputstream.EncodingBytes(attributes["content"].encode("utf-8")) + parser = inputstream.ContentAttrParser(data) + codec = parser.parse() + self.parser.tokenizer.stream.changeEncoding(codec) + + def startTagTitle(self, token): + self.parser.parseRCDataRawtext(token, "RCDATA") + + def startTagNoScriptNoFramesStyle(self, token): + # Need to decide whether to implement the scripting-disabled case + self.parser.parseRCDataRawtext(token, "RAWTEXT") + + def startTagScript(self, token): + self.tree.insertElement(token) + self.parser.tokenizer.state = self.parser.tokenizer.scriptDataState + self.parser.originalPhase = self.parser.phase + self.parser.phase = self.parser.phases["text"] + + def startTagOther(self, token): + self.anythingElse() + return token + + def endTagHead(self, token): + node = self.parser.tree.openElements.pop() + assert node.name == "head", "Expected head got %s" % node.name + self.parser.phase = self.parser.phases["afterHead"] + + def endTagHtmlBodyBr(self, token): + self.anythingElse() + return token + + def endTagOther(self, token): + self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) + + def anythingElse(self): + self.endTagHead(impliedTagToken("head")) + + # XXX If we implement a parser for which scripting is disabled we need to + # implement this phase. + # + # class InHeadNoScriptPhase(Phase): + class AfterHeadPhase(Phase): + def __init__(self, parser, tree): + Phase.__init__(self, parser, tree) + + self.startTagHandler = utils.MethodDispatcher([ + ("html", self.startTagHtml), + ("body", self.startTagBody), + ("frameset", self.startTagFrameset), + (("base", "basefont", "bgsound", "link", "meta", "noframes", "script", + "style", "title"), + self.startTagFromHead), + ("head", self.startTagHead) + ]) + self.startTagHandler.default = self.startTagOther + self.endTagHandler = utils.MethodDispatcher([(("body", "html", "br"), + self.endTagHtmlBodyBr)]) + self.endTagHandler.default = self.endTagOther + + def processEOF(self): + self.anythingElse() + return True + + def processCharacters(self, token): + self.anythingElse() + return token + + def startTagHtml(self, token): + return self.parser.phases["inBody"].processStartTag(token) + + def startTagBody(self, token): + self.parser.framesetOK = False + self.tree.insertElement(token) + self.parser.phase = self.parser.phases["inBody"] + + def startTagFrameset(self, token): + self.tree.insertElement(token) + self.parser.phase = self.parser.phases["inFrameset"] + + def startTagFromHead(self, token): + self.parser.parseError("unexpected-start-tag-out-of-my-head", + {"name": token["name"]}) + self.tree.openElements.append(self.tree.headPointer) + self.parser.phases["inHead"].processStartTag(token) + for node in self.tree.openElements[::-1]: + if node.name == "head": + self.tree.openElements.remove(node) + break + + def startTagHead(self, token): + self.parser.parseError("unexpected-start-tag", {"name": token["name"]}) + + def startTagOther(self, token): + self.anythingElse() + return token + + def endTagHtmlBodyBr(self, token): + self.anythingElse() + return token + + def endTagOther(self, token): + self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) + + def anythingElse(self): + self.tree.insertElement(impliedTagToken("body", "StartTag")) + self.parser.phase = self.parser.phases["inBody"] + self.parser.framesetOK = True + + class InBodyPhase(Phase): + # http://www.whatwg.org/specs/web-apps/current-work/#parsing-main-inbody + # the really-really-really-very crazy mode + def __init__(self, parser, tree): + Phase.__init__(self, parser, tree) + + # Keep a ref to this for special handling of whitespace in
    +            self.processSpaceCharactersNonPre = self.processSpaceCharacters
    +
    +            self.startTagHandler = utils.MethodDispatcher([
    +                ("html", self.startTagHtml),
    +                (("base", "basefont", "bgsound", "command", "link", "meta",
    +                  "script", "style", "title"),
    +                 self.startTagProcessInHead),
    +                ("body", self.startTagBody),
    +                ("frameset", self.startTagFrameset),
    +                (("address", "article", "aside", "blockquote", "center", "details",
    +                  "details", "dir", "div", "dl", "fieldset", "figcaption", "figure",
    +                  "footer", "header", "hgroup", "main", "menu", "nav", "ol", "p",
    +                  "section", "summary", "ul"),
    +                 self.startTagCloseP),
    +                (headingElements, self.startTagHeading),
    +                (("pre", "listing"), self.startTagPreListing),
    +                ("form", self.startTagForm),
    +                (("li", "dd", "dt"), self.startTagListItem),
    +                ("plaintext", self.startTagPlaintext),
    +                ("a", self.startTagA),
    +                (("b", "big", "code", "em", "font", "i", "s", "small", "strike",
    +                  "strong", "tt", "u"), self.startTagFormatting),
    +                ("nobr", self.startTagNobr),
    +                ("button", self.startTagButton),
    +                (("applet", "marquee", "object"), self.startTagAppletMarqueeObject),
    +                ("xmp", self.startTagXmp),
    +                ("table", self.startTagTable),
    +                (("area", "br", "embed", "img", "keygen", "wbr"),
    +                 self.startTagVoidFormatting),
    +                (("param", "source", "track"), self.startTagParamSource),
    +                ("input", self.startTagInput),
    +                ("hr", self.startTagHr),
    +                ("image", self.startTagImage),
    +                ("isindex", self.startTagIsIndex),
    +                ("textarea", self.startTagTextarea),
    +                ("iframe", self.startTagIFrame),
    +                (("noembed", "noframes", "noscript"), self.startTagRawtext),
    +                ("select", self.startTagSelect),
    +                (("rp", "rt"), self.startTagRpRt),
    +                (("option", "optgroup"), self.startTagOpt),
    +                (("math"), self.startTagMath),
    +                (("svg"), self.startTagSvg),
    +                (("caption", "col", "colgroup", "frame", "head",
    +                  "tbody", "td", "tfoot", "th", "thead",
    +                  "tr"), self.startTagMisplaced)
    +            ])
    +            self.startTagHandler.default = self.startTagOther
    +
    +            self.endTagHandler = utils.MethodDispatcher([
    +                ("body", self.endTagBody),
    +                ("html", self.endTagHtml),
    +                (("address", "article", "aside", "blockquote", "button", "center",
    +                  "details", "dialog", "dir", "div", "dl", "fieldset", "figcaption", "figure",
    +                  "footer", "header", "hgroup", "listing", "main", "menu", "nav", "ol", "pre",
    +                  "section", "summary", "ul"), self.endTagBlock),
    +                ("form", self.endTagForm),
    +                ("p", self.endTagP),
    +                (("dd", "dt", "li"), self.endTagListItem),
    +                (headingElements, self.endTagHeading),
    +                (("a", "b", "big", "code", "em", "font", "i", "nobr", "s", "small",
    +                  "strike", "strong", "tt", "u"), self.endTagFormatting),
    +                (("applet", "marquee", "object"), self.endTagAppletMarqueeObject),
    +                ("br", self.endTagBr),
    +            ])
    +            self.endTagHandler.default = self.endTagOther
    +
    +        def isMatchingFormattingElement(self, node1, node2):
    +            if node1.name != node2.name or node1.namespace != node2.namespace:
    +                return False
    +            elif len(node1.attributes) != len(node2.attributes):
    +                return False
    +            else:
    +                attributes1 = sorted(node1.attributes.items())
    +                attributes2 = sorted(node2.attributes.items())
    +                for attr1, attr2 in zip(attributes1, attributes2):
    +                    if attr1 != attr2:
    +                        return False
    +            return True
    +
    +        # helper
    +        def addFormattingElement(self, token):
    +            self.tree.insertElement(token)
    +            element = self.tree.openElements[-1]
    +
    +            matchingElements = []
    +            for node in self.tree.activeFormattingElements[::-1]:
    +                if node is Marker:
    +                    break
    +                elif self.isMatchingFormattingElement(node, element):
    +                    matchingElements.append(node)
    +
    +            assert len(matchingElements) <= 3
    +            if len(matchingElements) == 3:
    +                self.tree.activeFormattingElements.remove(matchingElements[-1])
    +            self.tree.activeFormattingElements.append(element)
    +
    +        # the real deal
    +        def processEOF(self):
    +            allowed_elements = frozenset(("dd", "dt", "li", "p", "tbody", "td",
    +                                          "tfoot", "th", "thead", "tr", "body",
    +                                          "html"))
    +            for node in self.tree.openElements[::-1]:
    +                if node.name not in allowed_elements:
    +                    self.parser.parseError("expected-closing-tag-but-got-eof")
    +                    break
    +            # Stop parsing
    +
    +        def processSpaceCharactersDropNewline(self, token):
    +            # Sometimes (start of 
    , , and 

    KA>*u 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�}x-x4&Y%GafEs@x00+Txj>5Xe_&`V;1}n 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�h1lrC+QNC_uttBgwyQsb-Ytb^fdzn@HsIOUjH!d9FH#5LuJDG~iZK=PWzXojwd>1m828C>FDlU>9&y8*Ef>Wj6;o z#Wgy(2Ysvy@2Ma1ibNNU15%KhjC?^s9{T>U$vr8du1IC-QP+7*x4*Hv1z~jLJNht~ z2I-7lIf>lbWrl2|t>(!7?$JW$u|U0owWQHcn`-Cv>VjVXyWGVL-$xF~lboZ9=h8(P zZ+yqe*UqtsHODRW16rsb%U1+kGCug)F-c__GLnN)&S9Vam0w+uqLiW>AylI_^=V8C zTGNrP^q?<;h+s4mn8Hlv@)L_$!CE%5m7V;-pB&``XSu{RZgZcAWc>C(Dh`6ox1pv_|CaZYoNOI+m^PkBv1oN+@kQjvii)Fa~4sn7D+~5Jv3An1il8Q{^rU+#Tp%#s3MJIYQl(9@@K1*1~b`Efy z^IYR!9`TyQ*W6#ykcC_XQHBs|(}Xs3p%;T0!xVmCF>BbwE)H{=E8OD+iLP6>lZuRd zK_N=>6?JG#Yr4{x;e5{=7P69!#Bh*PT;VRyNcfNEIiHh*!jz*L^=VF9I@6OujARnC z_=%-Nvz0v@;Vf6V!(-m?!3}dJ>BvDrN>Y(pG@>=%(Vr1aWIFR%!dkZQ2S+)>74Gtk zgg0FepOcMz6epM(G^90M>C14wXAX;5$94|v;)Y3|g)GSk46gN;a6GTJFCCWr`Dn!&SP;dAhN}&>*&>eL~;2sVd60MKDIA}!MzX;ljth~yQeR6cb44ZKLT;^G)#wiumn~@7Ho!Lj4cv!@jrpR zPyk2aTlf(!z-6#NB{-o8y8Oji1UEq#OeKba*ufA1Gbl%4qv0_a4HMykmF#Wo444B8 zUv|+Wsc_%a7xLh|KWhQ| z861MI;RJjKKf*8YJ6wiRD2FPrL*F0CA+{0PpacB>xUckq4VUic@Q?~jy6!t1b{@ugswzzW#ilh1zCt;WxUY}gDRLLTga zLvRdE!C5#5zd>UPL;1dQ0(%;MfI|2ceuGPJj=qnP zgBV|OayMrxb(K&D|3DM8gHHpWH{p5+f*YYP+ztcaUKk9+AQJR23gTfrB*J8v1~Xwc zyasPTDx|?`$b@Xz0w2RJ*arvUEBFRZ!C5GTBKQLgUCf3+rJMY=iBv3--Z5_!5r7 zNf_3RHN#Q&J^qhy4lclDC zFbYP)lkhZ5g+EG|5A1As4Hm##un3mHN_ZF6!Uos`AHyEl4@clM`~(-F465K?Xohys zn#eu$gy-4oH)3yrJ7FN)2MQ}_zLfiv(EoQFTb z1hvoz9`Sk4`8N{>+yZyP0}uhx5DN(~8K%Rlun1N_CTxUU_!Pc^@8CBmhH`K~Gx)SH zHxL5-;10MShQbKY!{aa-Ccq%xsV@&>&*MJ_GhjBn1`FU#SO}?*4w>*ijg! z68x#y$DiS|8}=ob1B>BZsO?AIuv_3G$b;Rm4-UeY@C}>-`we{FW&NJP{~3zlPbdKk zRDlEPp&71#)<)bA0{!3)7zl%57(~Kj5DVkrDR>5+g=z3Qtb`5lF&u=$a00%ELMVb_ zC;6AM3LnEx*bkq>VK@Olz_0KJlt4MyVC{qS$!E_x{J+2jZJ@QY58x(v0QB%A%z(M@ z7A%ET(3nI&*ev(}a$y(jh0oy#9Eb1VC-?>KzmEOJXTIO@FF^^EK_%3}U*LjP=m5Vf ze13xKAW-Z(XEC-Aegz}gzybBp3jQAUGz3Dw7~;c*!tF2s?uF7I<{BFT(GUw`U;_WWFX1Shgzw=e_yv9k1C&7})IuY) zK@{&Bwpf=Ae7_Fz!snGO@Dc2Uz0jTd1K3-zw?Y`)1%qHP9OBwg?AO?lSUnua_kDtS z!5<5&`FuD5`y=&<*vT;aDL#9_H2mrCGQ0{4U@@e@yRZ(jVKd~yE;vs=Py2E9;va&q z;W&H?Kf-zV9SmTGDsaGR&Zh?Ky!i~ei`K;-u7w*R6z+g~Asj})V-ODsaDit&g`Et~ z!wg7<*I)^(gksvfhc#k1V7tD?J0H6pcEZq6

OniG9jWH4 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%0D24)WxGoh$o03MDuy(`zJPApX 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