From 48256a4045a02137416ac08b116347ebebe9cd1d Mon Sep 17 00:00:00 2001 From: Mateusz Skoczek Date: Thu, 6 Aug 2020 18:00:05 +0200 Subject: [PATCH] 3.0 Release Preview 1 --- ...office i losobolew.iml => GeneratorCSV.iml} | 6 +- .idea/encodings.xml | 8 - .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 2 +- .idea/modules.xml | 2 +- .idea/vcs.xml | 6 - .idea/workspace.xml | 152 +- __pycache__/format.cpython-36.pyc | Bin 0 -> 2070 bytes __pycache__/format.cpython-38.pyc | Bin 0 -> 2019 bytes __pycache__/moduly.cpython-36.pyc | Bin 0 -> 1689 bytes __pycache__/moduly.cpython-38.pyc | Bin 0 -> 1720 bytes changelog.txt | 8 + config.cfg | 1 + format.py | 141 + generator.py | 642 +- instrukcja.txt | 107 + moduly.py | 51 + pliki_zrodlowe/lista nauczycieli.txt | 3 - pliki_zrodlowe/lista.txt | 3 - venv/Lib/site-packages/easy-install.pth | 2 - .../pip-10.0.1-py3.7.egg/EGG-INFO/PKG-INFO | 69 - .../pip-10.0.1-py3.7.egg/EGG-INFO/SOURCES.txt | 347 - .../EGG-INFO/dependency_links.txt | 1 - .../EGG-INFO/entry_points.txt | 5 - .../EGG-INFO/not-zip-safe | 1 - .../EGG-INFO/requires.txt | 8 - .../EGG-INFO/top_level.txt | 1 - .../pip-10.0.1-py3.7.egg/pip/__init__.py | 1 - .../pip-10.0.1-py3.7.egg/pip/__main__.py | 19 - .../pip/_internal/__init__.py | 246 - .../pip/_internal/basecommand.py | 373 - .../pip/_internal/baseparser.py | 240 - .../pip/_internal/build_env.py | 92 - .../pip/_internal/cache.py | 202 - .../pip/_internal/cmdoptions.py | 609 -- .../pip/_internal/commands/__init__.py | 79 - .../pip/_internal/commands/check.py | 42 - .../pip/_internal/commands/completion.py | 94 - .../pip/_internal/commands/configuration.py | 227 - .../pip/_internal/commands/download.py | 233 - .../pip/_internal/commands/freeze.py | 96 - .../pip/_internal/commands/hash.py | 57 - .../pip/_internal/commands/help.py | 36 - .../pip/_internal/commands/install.py | 502 -- .../pip/_internal/commands/list.py | 343 - .../pip/_internal/commands/search.py | 135 - .../pip/_internal/commands/show.py | 164 - .../pip/_internal/commands/uninstall.py | 71 - .../pip/_internal/commands/wheel.py | 179 - .../pip/_internal/compat.py | 235 - .../pip/_internal/configuration.py | 378 - .../pip/_internal/download.py | 922 -- .../pip/_internal/exceptions.py | 249 - .../pip/_internal/index.py | 1117 --- .../pip/_internal/locations.py | 194 - .../pip/_internal/models/__init__.py | 4 - .../pip/_internal/models/index.py | 15 - .../pip/_internal/operations/__init__.py | 0 .../pip/_internal/operations/check.py | 106 - .../pip/_internal/operations/freeze.py | 252 - .../pip/_internal/operations/prepare.py | 380 - .../pip/_internal/pep425tags.py | 317 - .../pip/_internal/req/__init__.py | 69 - .../pip/_internal/req/req_file.py | 338 - .../pip/_internal/req/req_install.py | 1115 --- .../pip/_internal/req/req_set.py | 164 - .../pip/_internal/req/req_uninstall.py | 455 - .../pip/_internal/resolve.py | 354 - .../pip/_internal/status_codes.py | 8 - .../pip/_internal/utils/__init__.py | 0 .../pip/_internal/utils/appdirs.py | 258 - .../pip/_internal/utils/deprecation.py | 77 - .../pip/_internal/utils/encoding.py | 33 - .../pip/_internal/utils/filesystem.py | 28 - .../pip/_internal/utils/glibc.py | 84 - .../pip/_internal/utils/hashes.py | 94 - .../pip/_internal/utils/logging.py | 132 - .../pip/_internal/utils/misc.py | 851 -- .../pip/_internal/utils/outdated.py | 163 - .../pip/_internal/utils/packaging.py | 70 - .../pip/_internal/utils/setuptools_build.py | 8 - .../pip/_internal/utils/temp_dir.py | 82 - .../pip/_internal/utils/typing.py | 29 - .../pip/_internal/utils/ui.py | 421 - .../pip/_internal/vcs/__init__.py | 471 - .../pip/_internal/vcs/bazaar.py | 113 - .../pip/_internal/vcs/git.py | 311 - .../pip/_internal/vcs/mercurial.py | 105 - .../pip/_internal/vcs/subversion.py | 271 - .../pip/_internal/wheel.py | 817 -- .../pip/_vendor/__init__.py | 109 - .../pip/_vendor/appdirs.py | 604 -- .../pip/_vendor/cachecontrol/__init__.py | 11 - .../pip/_vendor/cachecontrol/_cmd.py | 60 - .../pip/_vendor/cachecontrol/adapter.py | 134 - .../pip/_vendor/cachecontrol/cache.py | 39 - .../_vendor/cachecontrol/caches/__init__.py | 2 - .../_vendor/cachecontrol/caches/file_cache.py | 133 - .../cachecontrol/caches/redis_cache.py | 43 - .../pip/_vendor/cachecontrol/compat.py | 29 - .../pip/_vendor/cachecontrol/controller.py | 373 - .../pip/_vendor/cachecontrol/filewrapper.py | 78 - .../pip/_vendor/cachecontrol/heuristics.py | 138 - .../pip/_vendor/cachecontrol/serialize.py | 194 - .../pip/_vendor/cachecontrol/wrapper.py | 27 - .../pip/_vendor/certifi/__init__.py | 3 - .../pip/_vendor/certifi/__main__.py | 2 - .../pip/_vendor/certifi/cacert.pem | 4433 ---------- .../pip/_vendor/certifi/core.py | 37 - .../pip/_vendor/chardet/__init__.py | 39 - .../pip/_vendor/chardet/big5freq.py | 386 - .../pip/_vendor/chardet/big5prober.py | 47 - .../pip/_vendor/chardet/chardistribution.py | 233 - .../pip/_vendor/chardet/charsetgroupprober.py | 106 - .../pip/_vendor/chardet/charsetprober.py | 145 - .../pip/_vendor/chardet/cli/__init__.py | 1 - .../pip/_vendor/chardet/cli/chardetect.py | 85 - .../pip/_vendor/chardet/codingstatemachine.py | 88 - .../pip/_vendor/chardet/compat.py | 34 - .../pip/_vendor/chardet/cp949prober.py | 49 - .../pip/_vendor/chardet/enums.py | 76 - .../pip/_vendor/chardet/escprober.py | 101 - .../pip/_vendor/chardet/escsm.py | 246 - .../pip/_vendor/chardet/eucjpprober.py | 92 - .../pip/_vendor/chardet/euckrfreq.py | 195 - .../pip/_vendor/chardet/euckrprober.py | 47 - .../pip/_vendor/chardet/euctwfreq.py | 387 - .../pip/_vendor/chardet/euctwprober.py | 46 - .../pip/_vendor/chardet/gb2312freq.py | 283 - .../pip/_vendor/chardet/gb2312prober.py | 46 - .../pip/_vendor/chardet/hebrewprober.py | 292 - .../pip/_vendor/chardet/jisfreq.py | 325 - .../pip/_vendor/chardet/jpcntx.py | 233 - .../pip/_vendor/chardet/langbulgarianmodel.py | 228 - .../pip/_vendor/chardet/langcyrillicmodel.py | 333 - .../pip/_vendor/chardet/langgreekmodel.py | 225 - .../pip/_vendor/chardet/langhebrewmodel.py | 200 - .../pip/_vendor/chardet/langhungarianmodel.py | 225 - .../pip/_vendor/chardet/langthaimodel.py | 199 - .../pip/_vendor/chardet/langturkishmodel.py | 193 - .../pip/_vendor/chardet/latin1prober.py | 145 - .../pip/_vendor/chardet/mbcharsetprober.py | 91 - .../pip/_vendor/chardet/mbcsgroupprober.py | 54 - .../pip/_vendor/chardet/mbcssm.py | 572 -- .../pip/_vendor/chardet/sbcharsetprober.py | 132 - .../pip/_vendor/chardet/sbcsgroupprober.py | 73 - .../pip/_vendor/chardet/sjisprober.py | 92 - .../pip/_vendor/chardet/universaldetector.py | 286 - .../pip/_vendor/chardet/utf8prober.py | 82 - .../pip/_vendor/chardet/version.py | 9 - .../pip/_vendor/colorama/__init__.py | 7 - .../pip/_vendor/colorama/ansi.py | 102 - .../pip/_vendor/colorama/ansitowin32.py | 236 - .../pip/_vendor/colorama/initialise.py | 82 - .../pip/_vendor/colorama/win32.py | 156 - .../pip/_vendor/colorama/winterm.py | 162 - .../pip/_vendor/distlib/__init__.py | 23 - .../pip/_vendor/distlib/_backport/__init__.py | 6 - .../pip/_vendor/distlib/_backport/misc.py | 41 - .../pip/_vendor/distlib/_backport/shutil.py | 761 -- .../_vendor/distlib/_backport/sysconfig.cfg | 84 - .../_vendor/distlib/_backport/sysconfig.py | 788 -- .../pip/_vendor/distlib/_backport/tarfile.py | 2607 ------ .../pip/_vendor/distlib/compat.py | 1120 --- .../pip/_vendor/distlib/database.py | 1336 --- .../pip/_vendor/distlib/index.py | 516 -- .../pip/_vendor/distlib/locators.py | 1292 --- .../pip/_vendor/distlib/manifest.py | 393 - .../pip/_vendor/distlib/markers.py | 131 - .../pip/_vendor/distlib/metadata.py | 1091 --- .../pip/_vendor/distlib/resources.py | 355 - .../pip/_vendor/distlib/scripts.py | 415 - .../pip/_vendor/distlib/t32.exe | Bin 92672 -> 0 bytes .../pip/_vendor/distlib/t64.exe | Bin 102400 -> 0 bytes .../pip/_vendor/distlib/util.py | 1755 ---- .../pip/_vendor/distlib/version.py | 736 -- .../pip/_vendor/distlib/w32.exe | Bin 89088 -> 0 bytes .../pip/_vendor/distlib/w64.exe | Bin 99328 -> 0 bytes .../pip/_vendor/distlib/wheel.py | 984 --- .../pip/_vendor/distro.py | 1104 --- .../pip/_vendor/html5lib/__init__.py | 35 - .../pip/_vendor/html5lib/_ihatexml.py | 288 - .../pip/_vendor/html5lib/_inputstream.py | 923 -- .../pip/_vendor/html5lib/_tokenizer.py | 1721 ---- .../pip/_vendor/html5lib/_trie/__init__.py | 14 - .../pip/_vendor/html5lib/_trie/_base.py | 37 - .../pip/_vendor/html5lib/_trie/datrie.py | 44 - .../pip/_vendor/html5lib/_trie/py.py | 67 - .../pip/_vendor/html5lib/_utils.py | 124 - .../pip/_vendor/html5lib/constants.py | 2947 ------- .../pip/_vendor/html5lib/filters/__init__.py | 0 .../filters/alphabeticalattributes.py | 29 - .../pip/_vendor/html5lib/filters/base.py | 12 - .../html5lib/filters/inject_meta_charset.py | 73 - .../pip/_vendor/html5lib/filters/lint.py | 93 - .../_vendor/html5lib/filters/optionaltags.py | 207 - .../pip/_vendor/html5lib/filters/sanitizer.py | 896 -- .../_vendor/html5lib/filters/whitespace.py | 38 - .../pip/_vendor/html5lib/html5parser.py | 2791 ------ .../pip/_vendor/html5lib/serializer.py | 409 - .../_vendor/html5lib/treeadapters/__init__.py | 30 - .../_vendor/html5lib/treeadapters/genshi.py | 54 - .../pip/_vendor/html5lib/treeadapters/sax.py | 50 - .../_vendor/html5lib/treebuilders/__init__.py | 88 - .../pip/_vendor/html5lib/treebuilders/base.py | 417 - .../pip/_vendor/html5lib/treebuilders/dom.py | 236 - .../_vendor/html5lib/treebuilders/etree.py | 340 - .../html5lib/treebuilders/etree_lxml.py | 366 - .../_vendor/html5lib/treewalkers/__init__.py | 154 - .../pip/_vendor/html5lib/treewalkers/base.py | 252 - .../pip/_vendor/html5lib/treewalkers/dom.py | 43 - .../pip/_vendor/html5lib/treewalkers/etree.py | 130 - .../html5lib/treewalkers/etree_lxml.py | 213 - .../_vendor/html5lib/treewalkers/genshi.py | 69 - .../pip/_vendor/idna/__init__.py | 2 - .../pip/_vendor/idna/codec.py | 118 - .../pip/_vendor/idna/compat.py | 12 - .../pip/_vendor/idna/core.py | 387 - .../pip/_vendor/idna/idnadata.py | 1585 ---- .../pip/_vendor/idna/intranges.py | 53 - .../pip/_vendor/idna/package_data.py | 2 - .../pip/_vendor/idna/uts46data.py | 7634 ----------------- .../pip/_vendor/ipaddress.py | 2419 ------ .../pip/_vendor/lockfile/__init__.py | 347 - .../pip/_vendor/lockfile/linklockfile.py | 73 - .../pip/_vendor/lockfile/mkdirlockfile.py | 84 - .../pip/_vendor/lockfile/pidlockfile.py | 190 - .../pip/_vendor/lockfile/sqlitelockfile.py | 156 - .../pip/_vendor/lockfile/symlinklockfile.py | 70 - .../pip/_vendor/msgpack/__init__.py | 66 - .../pip/_vendor/msgpack/_version.py | 1 - .../pip/_vendor/msgpack/exceptions.py | 41 - .../pip/_vendor/msgpack/fallback.py | 977 --- .../pip/_vendor/packaging/__about__.py | 21 - .../pip/_vendor/packaging/__init__.py | 14 - .../pip/_vendor/packaging/_compat.py | 30 - .../pip/_vendor/packaging/_structures.py | 70 - .../pip/_vendor/packaging/markers.py | 301 - .../pip/_vendor/packaging/requirements.py | 130 - .../pip/_vendor/packaging/specifiers.py | 774 -- .../pip/_vendor/packaging/utils.py | 63 - .../pip/_vendor/packaging/version.py | 441 - .../pip/_vendor/pkg_resources/__init__.py | 3125 ------- .../pip/_vendor/pkg_resources/py31compat.py | 22 - .../pip/_vendor/progress/__init__.py | 127 - .../pip/_vendor/progress/bar.py | 88 - .../pip/_vendor/progress/counter.py | 48 - .../pip/_vendor/progress/helpers.py | 91 - .../pip/_vendor/progress/spinner.py | 44 - .../pip/_vendor/pyparsing.py | 5720 ------------ .../pip/_vendor/pytoml/__init__.py | 3 - .../pip/_vendor/pytoml/core.py | 13 - .../pip/_vendor/pytoml/parser.py | 374 - .../pip/_vendor/pytoml/writer.py | 127 - .../pip/_vendor/requests/__init__.py | 123 - .../pip/_vendor/requests/__version__.py | 14 - .../pip/_vendor/requests/_internal_utils.py | 42 - .../pip/_vendor/requests/adapters.py | 525 -- .../pip/_vendor/requests/api.py | 152 - .../pip/_vendor/requests/auth.py | 293 - .../pip/_vendor/requests/certs.py | 18 - .../pip/_vendor/requests/compat.py | 73 - .../pip/_vendor/requests/cookies.py | 542 -- .../pip/_vendor/requests/exceptions.py | 122 - .../pip/_vendor/requests/help.py | 120 - .../pip/_vendor/requests/hooks.py | 34 - .../pip/_vendor/requests/models.py | 948 -- .../pip/_vendor/requests/packages.py | 16 - .../pip/_vendor/requests/sessions.py | 737 -- .../pip/_vendor/requests/status_codes.py | 91 - .../pip/_vendor/requests/structures.py | 105 - .../pip/_vendor/requests/utils.py | 904 -- .../pip/_vendor/retrying.py | 267 - .../pip-10.0.1-py3.7.egg/pip/_vendor/six.py | 891 -- .../pip/_vendor/urllib3/__init__.py | 97 - .../pip/_vendor/urllib3/_collections.py | 319 - .../pip/_vendor/urllib3/connection.py | 373 - .../pip/_vendor/urllib3/connectionpool.py | 905 -- .../pip/_vendor/urllib3/contrib/__init__.py | 0 .../contrib/_securetransport/__init__.py | 0 .../contrib/_securetransport/bindings.py | 593 -- .../contrib/_securetransport/low_level.py | 343 - .../pip/_vendor/urllib3/contrib/appengine.py | 296 - .../pip/_vendor/urllib3/contrib/ntlmpool.py | 112 - .../pip/_vendor/urllib3/contrib/pyopenssl.py | 455 - .../urllib3/contrib/securetransport.py | 810 -- .../pip/_vendor/urllib3/contrib/socks.py | 188 - .../pip/_vendor/urllib3/exceptions.py | 246 - .../pip/_vendor/urllib3/fields.py | 178 - .../pip/_vendor/urllib3/filepost.py | 94 - .../pip/_vendor/urllib3/packages/__init__.py | 5 - .../urllib3/packages/backports/__init__.py | 0 .../urllib3/packages/backports/makefile.py | 53 - .../_vendor/urllib3/packages/ordered_dict.py | 259 - .../pip/_vendor/urllib3/packages/six.py | 868 -- .../packages/ssl_match_hostname/__init__.py | 19 - .../ssl_match_hostname/_implementation.py | 157 - .../pip/_vendor/urllib3/poolmanager.py | 440 - .../pip/_vendor/urllib3/request.py | 148 - .../pip/_vendor/urllib3/response.py | 626 -- .../pip/_vendor/urllib3/util/__init__.py | 54 - .../pip/_vendor/urllib3/util/connection.py | 130 - .../pip/_vendor/urllib3/util/request.py | 118 - .../pip/_vendor/urllib3/util/response.py | 81 - .../pip/_vendor/urllib3/util/retry.py | 401 - .../pip/_vendor/urllib3/util/selectors.py | 581 -- .../pip/_vendor/urllib3/util/ssl_.py | 341 - .../pip/_vendor/urllib3/util/timeout.py | 242 - .../pip/_vendor/urllib3/util/url.py | 230 - .../pip/_vendor/urllib3/util/wait.py | 40 - .../pip/_vendor/webencodings/__init__.py | 342 - .../pip/_vendor/webencodings/labels.py | 231 - .../pip/_vendor/webencodings/mklabels.py | 59 - .../pip/_vendor/webencodings/tests.py | 153 - .../_vendor/webencodings/x_user_defined.py | 325 - .../site-packages/setuptools-39.1.0-py3.7.egg | Bin 563215 -> 0 bytes venv/Lib/site-packages/setuptools.pth | 1 - venv/Scripts/Activate.ps1 | 51 - venv/Scripts/activate | 76 - venv/Scripts/activate.bat | 45 - venv/Scripts/deactivate.bat | 21 - venv/Scripts/easy_install-3.7-script.py | 12 - venv/Scripts/easy_install-3.7.exe | Bin 74752 -> 0 bytes venv/Scripts/easy_install-script.py | 12 - venv/Scripts/easy_install.exe | Bin 74752 -> 0 bytes venv/Scripts/pip-script.py | 12 - venv/Scripts/pip.exe | Bin 74752 -> 0 bytes venv/Scripts/pip3-script.py | 12 - venv/Scripts/pip3.7-script.py | 12 - venv/Scripts/pip3.7.exe | Bin 74752 -> 0 bytes venv/Scripts/pip3.exe | Bin 74752 -> 0 bytes venv/Scripts/python.exe | Bin 522768 -> 0 bytes venv/Scripts/python.pdb | Bin 6238208 -> 0 bytes venv/Scripts/pythonw.exe | Bin 522256 -> 0 bytes venv/Scripts/pythonw.pdb | Bin 6270976 -> 0 bytes venv/pyvenv.cfg | 3 - 336 files changed, 734 insertions(+), 101640 deletions(-) rename .idea/{Generator plików csv dla office i losobolew.iml => GeneratorCSV.iml} (56%) delete mode 100644 .idea/encodings.xml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml delete mode 100644 .idea/vcs.xml create mode 100644 __pycache__/format.cpython-36.pyc create mode 100644 __pycache__/format.cpython-38.pyc create mode 100644 __pycache__/moduly.cpython-36.pyc create mode 100644 __pycache__/moduly.cpython-38.pyc create mode 100644 config.cfg create mode 100644 format.py create mode 100644 instrukcja.txt create mode 100644 moduly.py delete mode 100644 pliki_zrodlowe/lista nauczycieli.txt delete mode 100644 pliki_zrodlowe/lista.txt delete mode 100644 venv/Lib/site-packages/easy-install.pth delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/PKG-INFO delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/SOURCES.txt delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/dependency_links.txt delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/entry_points.txt delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/not-zip-safe delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/requires.txt delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/top_level.txt delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__main__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/basecommand.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/baseparser.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/build_env.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cache.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cmdoptions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/check.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/completion.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/configuration.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/download.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/freeze.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/hash.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/help.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/install.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/list.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/search.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/show.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/uninstall.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/wheel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/configuration.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/download.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/exceptions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/index.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/locations.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/index.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/check.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/freeze.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/prepare.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/pep425tags.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_file.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_install.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_set.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_uninstall.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/resolve.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/status_codes.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/appdirs.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/deprecation.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/encoding.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/filesystem.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/glibc.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/hashes.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/logging.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/misc.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/outdated.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/packaging.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/setuptools_build.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/temp_dir.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/typing.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/ui.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/bazaar.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/git.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/mercurial.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/subversion.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/wheel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/appdirs.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/_cmd.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/adapter.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/cache.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/file_cache.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/redis_cache.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/controller.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/filewrapper.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/heuristics.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/serialize.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/wrapper.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__main__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/cacert.pem delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/core.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5freq.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5prober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/chardistribution.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetgroupprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/chardetect.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/codingstatemachine.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cp949prober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/enums.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escsm.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/eucjpprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrfreq.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwfreq.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312freq.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312prober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/hebrewprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jisfreq.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jpcntx.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langbulgarianmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langcyrillicmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langgreekmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhebrewmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhungarianmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langthaimodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langturkishmodel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/latin1prober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcharsetprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcsgroupprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcssm.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcharsetprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcsgroupprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sjisprober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/universaldetector.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/utf8prober.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/version.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansi.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansitowin32.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/initialise.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/win32.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/winterm.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/misc.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/shutil.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.cfg delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/tarfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/database.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/index.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/locators.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/manifest.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/markers.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/metadata.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/resources.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/scripts.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t32.exe delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t64.exe delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/util.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/version.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w32.exe delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w64.exe delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/wheel.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distro.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_ihatexml.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_inputstream.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_tokenizer.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/_base.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/datrie.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/py.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_utils.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/constants.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/alphabeticalattributes.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/base.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/inject_meta_charset.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/lint.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/optionaltags.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/sanitizer.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/whitespace.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/html5parser.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/serializer.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/genshi.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/sax.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/base.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/dom.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree_lxml.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/base.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/dom.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree_lxml.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/genshi.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/codec.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/core.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/idnadata.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/intranges.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/package_data.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/uts46data.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/ipaddress.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/linklockfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/mkdirlockfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/pidlockfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/sqlitelockfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/symlinklockfile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/_version.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/exceptions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/fallback.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__about__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_structures.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/markers.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/requirements.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/specifiers.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/utils.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/version.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/py31compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/bar.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/counter.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/helpers.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/spinner.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pyparsing.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/core.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/parser.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/writer.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__version__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/_internal_utils.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/adapters.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/api.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/auth.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/certs.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/compat.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/cookies.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/exceptions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/help.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/hooks.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/models.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/packages.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/sessions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/status_codes.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/structures.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/utils.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/retrying.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/six.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/_collections.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connection.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connectionpool.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/bindings.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/low_level.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/appengine.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/ntlmpool.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/pyopenssl.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/securetransport.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/socks.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/exceptions.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/fields.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/filepost.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/makefile.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ordered_dict.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/six.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/poolmanager.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/request.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/response.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/connection.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/request.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/response.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/retry.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/selectors.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/ssl_.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/timeout.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/url.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/wait.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/__init__.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/labels.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/mklabels.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/tests.py delete mode 100644 venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/x_user_defined.py delete mode 100644 venv/Lib/site-packages/setuptools-39.1.0-py3.7.egg delete mode 100644 venv/Lib/site-packages/setuptools.pth delete mode 100644 venv/Scripts/Activate.ps1 delete mode 100644 venv/Scripts/activate delete mode 100644 venv/Scripts/activate.bat delete mode 100644 venv/Scripts/deactivate.bat delete mode 100644 venv/Scripts/easy_install-3.7-script.py delete mode 100644 venv/Scripts/easy_install-3.7.exe delete mode 100644 venv/Scripts/easy_install-script.py delete mode 100644 venv/Scripts/easy_install.exe delete mode 100644 venv/Scripts/pip-script.py delete mode 100644 venv/Scripts/pip.exe delete mode 100644 venv/Scripts/pip3-script.py delete mode 100644 venv/Scripts/pip3.7-script.py delete mode 100644 venv/Scripts/pip3.7.exe delete mode 100644 venv/Scripts/pip3.exe delete mode 100644 venv/Scripts/python.exe delete mode 100644 venv/Scripts/python.pdb delete mode 100644 venv/Scripts/pythonw.exe delete mode 100644 venv/Scripts/pythonw.pdb delete mode 100644 venv/pyvenv.cfg diff --git a/.idea/Generator plików csv dla office i losobolew.iml b/.idea/GeneratorCSV.iml similarity index 56% rename from .idea/Generator plików csv dla office i losobolew.iml rename to .idea/GeneratorCSV.iml index c34fd79..a94fbfe 100644 --- a/.idea/Generator plików csv dla office i losobolew.iml +++ b/.idea/GeneratorCSV.iml @@ -1,10 +1,8 @@ - - - - + + diff --git a/.idea/encodings.xml b/.idea/encodings.xml deleted file mode 100644 index 5919dfa..0000000 --- a/.idea/encodings.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..20fc29e --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 4ba6285..adbabba 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,5 +3,5 @@ - + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml index cadc2be..1b13c30 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 2e3f692..0000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 5dab989..aaff619 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,29 +1,13 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + - + + + + + + + + + + - - 1550241847000 + + 1574872723273 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + \ No newline at end of file diff --git a/__pycache__/format.cpython-36.pyc b/__pycache__/format.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..14c6217d47956ff78f6aa4560e6f5f12594afe2e GIT binary patch literal 2070 zcmbVN%~K;)5P$vVlMu297!pK8MKp@I?yhbX<;Rww*4AP?;4YeivWD~!Lc&aVGZbWM za$>#nZ|I-lpYcvsdCEnrJZ@QP_k_gV6)w)y^y}$)uRnj?b9-VU=l=f7?$6Ug{3@Qh zB=Ps?iS7_VfzTE;K#9ghRoNkmYL(Rpc{~UU7b|*I2#<|=OyURV93bG`AkY#ab##Sn`6K~Lo z<>86rW4Q5#k&bFjF7@a$ya}!u-$eua$2JNy)&6cBn z8t%dyIEgRd6i(v|zKBJf#S)fr4qw7~d>I$;6a8axeq8tNKQgRfyR6+l^6RbQL?zz3hRmA+S%}}#bZpu8U_h`omYwRtjF2mYAV$Rl5 zK}fho*jkAR%_uW$Ef6x`5Mp_WDT^>wWb6?NjpO3BIJOBNTsga%l}oW!#ihwIqLzrO znCdMSRG7TYztO4KOSmRa+cs4U$4Q zYIi;9J|w&aSLS{Qvdys34A|3%JCQwir3q6~-KDot>bW<$mRaf_Q@c{C2}b0RXowzM zz*)cmyMSHn$?jwfslP6YP16g`a{^8%EcO44WXAfzEj zS8_46>^8Ue(WV$`gC5Nj*Z-5|UH>m0damLQ%OIk2kG%GY|G843%4SE_YKno7 zRbJa(r{f1$8Kd8uM`JGEQHdX)hAN?!sw_q+l6KIAj+FuBQu8&iG2w)aTNa1&{>00`rCq^DskC2}*_weCOzU-k2Flay0D~TLj3h|`ve=^R_F!o*PmR-lS-TXh$aI`%D literal 0 HcmV?d00001 diff --git a/__pycache__/format.cpython-38.pyc b/__pycache__/format.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4cdd0af50da72ebf8ddab98f7992a21c49367ba2 GIT binary patch literal 2019 zcmZ`)-A^P%5bx^wWLZ935LiS+MRfJV^DF9U^dg*w9N9C$JC#7pur;iEyUZ*-gSeAf zU(oma6Tml~{SWlN=qD2sll8?XUyM%(3`35sqL=%RrRlG?v9KU1P%X>U$%dm z5aL&Ud3Z>Axk*p*1_=}hEwKqG(fUqoO0?0T*+LgRnr-xPh-L>1I83vPupuhN9-S1` z8t`;BT$-ooS)nKSokS{faSRA2a75OdmYPk;#}RZPwb;v%Tov0(U6~8=CBBzsacrkf zE|2I0dbEG>eEQh~Zk&+FEZ2UH` zAt)b9)xTh&$9dK8jpD5I_zHSv^)HRy5Wo5?JQkd+p2NZ>q2-4gn{xe*hCsuPhMES{ z5Ng=fP}lI4hK7dw8k!nf8um0q8e$D?4N60zA=PlGp`#(IxY}xkk#>@HtC4D}5vAHu zK~xX5z1xUTTS=;D6WrGJPAfpg?l&i*gS}97zKj|n#@S)qilcDTO|oX(>TLQkV%7*+ zol~J+rrm$OOXAjztvgY;sv2L1TWe7iZhfNS`(ZQfEVNZzSHa%TKOSy<97drE(par* z+}qlX)n1S;w>!GH(N@7BX17~G5{!_sWS)e868LfyW}zTU(uZ-HeaX7(vIy!G+Hrwy z44kuQ==L@(azTVxCUOy>Q5tg16FuMri|< zCMl=3dV$v!7B8}Ro}gDD8ABdQDzqHq?3+%Iql>N*`!uac-(8rH6cHhczcZLbkB z>Vz{W`k>yVRgEcpJ{S}SX+YheMGk6)N&w2jl=BRMopYMG0jTM3sj>mr{uykdYA zyJ|A4;lO~aKtG#=c3t}`S?6vo3!_W3dCr#gxZa33afxYe#1CKEP?G8$(p^XoXC}*dmq9g1QNUe`s~>FGS>iF3_en zVm|<7=aOtWbPe3Ds2$KspvO^DdvI8b?liRs^vhzJb^qV*^_yMS9sEao&upxu4rd63B1v<{rP*oi5$iv6qVzIG{tL$c z)qc;t+K+hUkHv5`lZAq*v5!8@X(vwNouFR{+#S?QEM8;5Up@5} zi$@A~Xkg(3`Zr<93+h6)EPy1wjq=)ZVGbtgnSmM0r-JrLI|@Z>a-blgn6Z;!Dm literal 0 HcmV?d00001 diff --git a/__pycache__/moduly.cpython-36.pyc b/__pycache__/moduly.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d94317453ba9ae5815eb41511683f4b5882d24f1 GIT binary patch literal 1689 zcmai!%WfP+6o#w%GTn3W-HB}o;2422n~20t3+ch;Sg#GK=<9$sSKn_o%7| zJfrdgPaGbA4VNci&5DcIV828u3nW&4fNZir{M9uw78|Q(ftDDdQc!o$a@%G2$_Ex%e9RF493CIB%awi!_Kl(<%nWr;`w#DS<+d)%-Rw&)L?*N& zrS|xKJFh!ByqmF>NX5?px=6B%+L-&(|AoZ+$GekX!fTocHB$d9#zXhP<@S#GuCB-_Ex5@~!QG^8~us-TuxvU$w1jiFfj zRluN@6GcY!z-)!U#~X%=8TTN)096m^v6${X4ZD3X6b!|zt*&64UaWVt?gS)Z$B%B{YKLdtqp(Qx9z^ybkovTn%=YYtEQ2qp9?vDqG`h# zMjBy2bs%^ziCerrtG%4>=h`>rH7nPxtXf%%ihnn(+_bW8Xmby;q%C*v@jU0^Bi_xv;9?pZD_=)J5ODwhiYsV&7LX=X&jRuZ zDkfcwkTw)$bcvWiWKPEyE2z7uyJ^i5ql>8FHX&q}%w6+9riYJ^HbHFrBQTlYaYUMX ztfag}qTB_vRwbmSAf1ObIA`^ZRRsv0uz70o&Z$WuMFx6Kmm_Cm^VBm|lMd>>cJi(+ zCs`{_@^+VNx1Hj=WG`vw+LgJehuXiJ#4?V&)-aY)&~0P)>&~;HnCr#!~%(xAHW+Hh`+i9aM;kTKL1yztGZ5CojM;63{(iN zCv(4j{-;mK@1}9~a?p4ek2Ho6MiUazLY>HkI*HfuqY@>|W!^&)1v(s1?RfWSpIxl6)M@sGS%~oD_bhwzY`Gm8c4nDL2{y;<-BTwIgS$K2xPRehJ)_uPEL7MW_Ws!Zs z+xgaXS7hrV?mT_`VD){TauMg5Xsmp)+R0ci*}B}_($xhs+09m*Wb0UHB28$7hO|aS z71T6;{`chqLOjJPTn22{a-zr{-Er=b^nyon+OCL8l$blms_bDcJ|n5~sa+AeRCl$P zb$O~sZnYA=l;yXwUdoCXis|ZZLA!b zDu%$%Y}zOs|7_Z?Xee@kjbqNCvqKdHBRRm1a==Isu&Z1!k_7B24~#?s`^pDbSq)rL zCGbGOfeOHbYzY2Ph2UW}0xqjEc$AHSE2;t>XXn6GRRy1C6X2SvfhXA%ct8z+pJUI1 z2h||>0(${Gq=vvR7Cfwm!7s6C_(#+T_#&GD3tr^RQ#*7T0`;q802-*=j>So%`a z+m?RTG_v$#AxDoiZCJ;iMk-Jp2;NQNCa;fbFXx-N_Km$_<*JoyR%WB(-E}KBtjt+? z-O3wLsTlrRU$6A_YG1GQb+)h9`+B3VbN@}YvE?jj$&K4Q&$;-Bce49j3}a#Ct1tvf z_y4!Jgr3hNrAb+Hj*2t%2w*D6Au5TYj7|}gjLd2KVg_v&Z8xo1VssKMoGPU4lsR)A z$c*rj)+UkdcqAwD+m1+ckCl`+Nt8Q*-l~LZ6{O?v24}p!@u~pn6E2;YQgmXfN>P;l zpwp2vzj9(u(1|GxbzeJqN0*bV87FzG!?oK=v1hWIv~umrT+~DDFD9{!Bd@s~%P8oy zxNODEC=^+{n=zS3K`Pqlu@zM@2nESDN^-lMC24~OBCIVbO!UYwge*+e(m~!v , +# + +# Przykład: +# 1a BS Nowak, Adam 1234567u +# + + +# Format danych dla nauczycieli: +# , +# + +# Przykład: +# Nowak, Adam 1234567 +# + + + + +# Inne: +# - skrypt akceptuje prefix 'ks.', nieuwzględnia go w przetwarzaniu +# - skrypt akceptuje nazwiska holenderskie (typu 'van X', 'van der X' itp.) i uwzględnia je w przetwarzaniu +# - skrypt nie akceptuje nazwisk złożonych (np. Nowak-Kowalska) +# - skrypt wymaga kodowania ANSI diff --git a/generator.py b/generator.py index e1b7d77..7e6a14f 100644 --- a/generator.py +++ b/generator.py @@ -1,308 +1,412 @@ -""" -Generator plików csv dla office i losobolew -Mateusz Skoczek -Zespół Szkół Ponadgimnazjalnych im. T. Kościuszki w Sobolewie -luty 2019 -""" +# GeneratorCSV +# Wersja 3.0 +# by Mateusz Skoczek +# luty 2019 - grudzień 2019 +# dla ZSP Sobolew -## Import bibliotek ## -import time as tm + + + + +## Defincja błędów ############################################################################## + +# E001 - Brak pliku składowego +E001x00 = "Brak pliku formatu 'moduly.py'.\nPrzywróć plik. (E001x00)" +E001x01 = "Brak pliku formatu 'format.py'.\nPrzywróć plik. (E001x01)" +E001x02 = "Brak pliku konfiguracyjnego 'config.cfg'.\nPrzywróć plik. (E001x02)" +E001x03 = "Brak pliku 'instrukcja.txt'.\nPrzywróć plik. (E001x03)" + +# E002 - Błąd pliku składowego +E002x02 = "Nieokreślony błąd pliku konfiguracyjnego 'config.cfg'.\nPrzywróć domyślny plik lub popraw ustawienia. (E002x02)" +E002x021 = "Błąd pliku konfiguracyjnego 'config.cfg'.\nPodane kodowanie nie jest obsługiwane\nPrzywróć domyślny plik lub popraw ustawienia. (E002x021)" + +# E003 - Błąd lokalizacji plików I/O +E003x01 = "Nie podano lokalizacji plików do importu. (E003x01)" +E003x02 = "Nie podano lokalizacji zapisu wygenerowanych plików. (E003x02)" +E003x111 = "Plik podany w sciezce 1 nie istnieje (E003x111)" +E003x112 = "Plik podany w sciezce 2 nie istnieje (E003x112)" +E003x113 = "Plik podany w sciezce 3 nie istnieje (E003x113)" +E003x114 = "Plik podany w sciezce 4 nie istnieje (E003x114)" + +#_______________________________________________________________________________________________# + + + + + + + + + + +## Import bibliotek zewnętrznych ################################################################ + +import tkinter as tk import codecs as cd +import os +import time as tm +import sys as ss -###################### +# Definicja składowych biblioteki interfejsu graficznego +from tkinter import filedialog as TKfld +from tkinter import messagebox as TKmsb + +#_______________________________________________________________________________________________# -## Określanie kodowania plików ## - - -code = 'utf-8' - -################################# -## Funkcje ## -# Konwertowanie liter # +## Weryfikacja istnienia plików składowych programu ############################################# -def duze_na_male(text): - # Funkcja zmienia duże litery na małe +try: + x = open('moduly.py') +except FileNotFoundError: + Message = 'Wystąpił błąd!\n' + E001x00 + tk.showerror('Błąd', Message) + ss.exit(0) - return text.lower() +try: + x = open('format.py') +except FileNotFoundError: + Message = 'Wystąpił błąd!\n' + E001x01 + tk.showerror('Błąd', Message) + ss.exit(0) -def polskie_na_lacinskie(text): - # Funkcja zamienia małe polskie litery na małe łacińskie litery - # oraz duże polskie litery na małe łacińskie litery - - text1 = text.replace('ę', 'e') - text2 = text1.replace('ó', 'o') - text3 = text2.replace('ą', 'a') - text4 = text3.replace('ś', 's') - text5 = text4.replace('ł', 'l') - text6 = text5.replace('ż', 'z') - text7 = text6.replace('ź', 'z') - text8 = text7.replace('ć', 'c') - text9 = text8.replace('ń', 'n') - text10 = text9.replace('Ę', 'e') - text11 = text10.replace('Ó', 'o') - text12 = text11.replace('Ą', 'a') - text13 = text12.replace('Ś', 's') - text14 = text13.replace('Ł', 'l') - text15 = text14.replace('Ż', 'z') - text16 = text15.replace('Ź', 'z') - text17 = text16.replace('Ć', 'c') - text = text17.replace('Ń', 'n') - return text - -def konwersja_liter(text): - # Funkcja zamienia jednocześnie duże litery na małe oraz polskie na łacińskie - # Wymaga funkcji: 'duze_na_male' i 'polskie_na_lacinskie' - - text = duze_na_male(text) - text = polskie_na_lacinskie(text) - return text +#_______________________________________________________________________________________________# -# Funkcje tworzące # - -def inicjaly(imie, nazwisko): - # Funkcja tworzy inicjały z podanego imienia i nazwiska - - nazwisko_tab = nazwisko.split(' ') - nazwisko_inicjaly = '' - for fragment_nazwiska in nazwisko_tab: - nazwisko_inicjaly += fragment_nazwiska[0] - return imie[0] + nazwisko_inicjaly -# Inne # -def ostrzezenie(czy_uczniowie): - # Ostrzeżenie przed rozpoczęciem generowania plików - if czy_uczniowie == True: - print("Upewnij się, że w folderze 'pliki_zrodlowe' znajduje się plik 'lista.txt' z danymi uczniów") + + + + +## Import modułów programu ###################################################################### + +# Import modułów składowych programu +from moduly import ErrorDialog as MDerr +from moduly import FileCheck as MDfck +from moduly import PolishLetterRemover as MDplr +from moduly import ClassTagCreator as MDctc + +# Import skryptu przetwarzającego dane +import format as ft + +#_______________________________________________________________________________________________# + + + + + + + + + + + +## Weryfikacja istnienia plików składowych ###################################################### + +MDfck('format.py', E001x01) +MDfck('config.cfg', E001x02) +MDfck('instrukcja.txt', E001x03) + +#_______________________________________________________________________________________________# + + + + + + + + + + + +## Wczytywanie pliku konfiguracyjnego ########################################################### + +try: + with open('config.cfg', 'r') as config: + config = config.read().split('\n') + Kodowanie = str(config[0].strip('Kodowanie: ')) + TypyKodowania = ['utf-8', 'cp1252', 'iso-8859-1'] + if Kodowanie not in TypyKodowania: + MDerr(E002x021) +except: + MDerr(E002x02) + +#_______________________________________________________________________________________________# + + + + + + + + + + + +## Inicjacja skryptu przetwarzającego dane ###################################################### + +def Main(): + if TKmsb.askokcancel('Ostrzeżenie', "Czy na pewno chcesz rozpocząć generowanie?\nProgram utworzy w podanej lokalizacji pliki 'email.csv' i 'office.csv'.\nJeżeli w podanej lokalizacji istnieją pliki o takich nazwach zostaną one nadpisane."): + sciezka1 = Pole1.get() + sciezka1_puste = True + sciezka2 = Pole2.get() + sciezka2_puste = True + sciezka3 = Pole3.get() + sciezka3_puste = True + sciezka4 = Pole3.get() + sciezka4_puste = True + sciezkaExport = PoleExport.get() + sciezkaExport_puste = True + + if sciezka1 != '': + sciezka1_puste = False + if sciezka2 != '': + sciezka2_puste = False + if sciezka3 != '': + sciezka3_puste = False + if sciezka4 != '': + sciezka4_puste = False + if sciezkaExport != '': + sciezkaExport_puste = False + + if sciezka1_puste and sciezka2_puste and sciezka3_puste and sciezka4_puste: + MDerr(E003x01) + if sciezkaExport_puste: + MDerr(E003x02) + + KontenerDanych = [] + if not sciezka1_puste: + try: + x = open(sciezka1) + except FileNotFoundError: + MDerr(E003x111) + else: + with open(sciezka1, 'r') as plik1: + KontenerDanych += ft.przetworz(plik1.read()) + if not sciezka2_puste: + try: + x = open(sciezka2) + except FileNotFoundError: + MDerr(E003x112) + else: + with open(sciezka2, 'r') as plik2: + KontenerDanych += ft.przetworz(plik2.read()) + if not sciezka3_puste: + try: + x = open(sciezka3) + except FileNotFoundError: + MDerr(E003x113) + else: + with open(sciezka3, 'r') as plik3: + KontenerDanych += ft.przetworz(plik3.read()) + if not sciezka4_puste: + try: + x = open(sciezka4) + except FileNotFoundError: + MDerr(E003x114) + else: + with open(sciezka4, 'r') as plik4: + KontenerDanych += ft.przetworz(plik4.read()) + + KontenerEmail = [] + KontenerOffice = [] + for osoba in KontenerDanych: + if osoba[-1]: + Klasa = osoba[0] + Imie = osoba[2] + Inicjaly = Imie[0] + Nazwisko = '' + NazwiskoDoEmaila = '' + for x in osoba[1]: + Nazwisko += x + ' ' + NazwiskoDoEmaila += ('.' + x) + Inicjaly += x[0] + Nazwisko = Nazwisko[:-1] + ZnacznikKlasy = MDctc(Klasa) + Login = osoba[3] + Adres = MDplr(Imie).lower() + MDplr(NazwiskoDoEmaila).lower() + ZnacznikKlasy + '@losobolew.pl' + Email = Adres + ',' + Login + ':' + MDplr(Inicjaly) + ',500' + Office = Adres + ',' + Imie + ',' + Nazwisko + ',' + Imie + ' ' + Nazwisko + ',uczeń,' + Klasa + ',,,,,,,,,Rzeczypospolita Polska' + KontenerEmail.append(Email) + KontenerOffice.append(Office) + else: + Imie = osoba[1] + Inicjaly = Imie[0] + Nazwisko = '' + NazwiskoDoEmaila = '' + for x in osoba[0]: + Nazwisko += x + ' ' + NazwiskoDoEmaila += ('.' + x) + Inicjaly += x[0] + Nazwisko = Nazwisko[:-1] + Login = osoba[2] + Adres = MDplr(Imie).lower() + MDplr(NazwiskoDoEmaila).lower() + '@losobolew.pl' + Email = Adres + ',' + Login + ':' + MDplr(Inicjaly) + ',500' + Office = Adres + ',' + Imie + ',' + Nazwisko + ',' + Imie + ' ' + Nazwisko + ',nauczyciel,,,,,,,,,,Rzeczpospolita Polska' + KontenerEmail.append(Email) + KontenerOffice.append(Office) + sciezkaEmail = sciezkaExport + '/email.csv' + sciezkaOffice = sciezkaExport + '/office.csv' + with cd.open(sciezkaEmail, 'w', Kodowanie) as plikEmail: + for x in KontenerEmail: + plikEmail.writelines(x + '\n') + plikEmail.close() + with cd.open(sciezkaOffice, 'w', Kodowanie) as plikOffice: + for x in KontenerOffice: + plikOffice.writelines(x + '\n') + plikOffice.close() + TKmsb.showinfo('Zakończono', 'Operacja zakończona pomyślnie') + ss.exit(0) else: - print("Upewnij się, że w folderze 'pliki_zrodlowe' znajduje się plik 'lista nauczycieli.txt' z danymi nauczycieli") - print("Jeżeli w folderze 'pliki_wyjsciowe' znajdują się pliki 'konta.csv' i 'office.csv' zostaną one usunięte") - print() - czekaj = input('Naciśnij ENTER, gdy będziesz gotowy') + ss.exit(0) -############# + +#_______________________________________________________________________________________________# -## Komponenty ## - -def uczniowie(): - ostrzezenie(True) - - - try: - listatxt = open('pliki_zrodlowe/lista.txt') - except FileNotFoundError: - print() - print("BŁĄD! Plik 'lista.txt' nie został znaleziony") - print() - print() - print('############################') - print() - print() - - uczniowie() - - - try: - zawartosc_lista = listatxt.read() - finally: - listatxt.close() - - kontacsv = cd.open('pliki_wyjsciowe/konta.csv', 'w', code) - officecsv = cd.open('pliki_wyjsciowe/office.csv', 'w', code) - - ciagi_danych_lista = zawartosc_lista.split('\n\n') - - for ciag_danych in ciagi_danych_lista: - dane = ciag_danych.split('\n') - - klasa = dane[0] - imie = ((dane[1]).split(', '))[1] - nazwisko = ((dane[1]).split(', '))[0] - login = dane[3] - - imie_male = konwersja_liter(imie) - nazwisko_male = konwersja_liter(nazwisko).replace(' ', '.') - - rok = tm.localtime()[0] - nr_klasy = klasa[0] - lit_klasy = klasa[1] - szkola = klasa.split(' ')[1] - - if klasa[3:] == 'LO': - numer_klasy = int(klasa[0]) - - if numer_klasy == 1: - rok_ukoncz = '2021' - elif numer_klasy == 2: - rok_ukoncz = '2020' - elif numer_klasy == 3: - rok_ukoncz = '2019' - - znacznik_klasy = rok_ukoncz + klasa[1] - elif klasa[3:] == 'BS': - numer_klasy = int(klasa[0]) - - if numer_klasy == 1: - rok_ukoncz = '2021' - elif numer_klasy == 2: - rok_ukoncz = '2020' - elif numer_klasy == 3: - rok_ukoncz = '2019' - - znacznik_klasy = rok_ukoncz + 'bs' - elif klasa[3:] == 'ZSZ': - znacznik_klasy = '2019zsz' - elif klasa[3:] == 'LOD': - numer_klasy = int(klasa[0]) - - if numer_klasy == 3: - rok_ukoncz = '2020' - elif numer_klasy == 5: - rok_ukoncz = '2019' - - znacznik_klasy = rok_ukoncz + 'lod' - - haslo = login + ':' + inicjaly(imie, nazwisko) - - email = imie_male + '.' + nazwisko_male + znacznik_klasy + '@losobolew.pl' - - dane_do_konta = email + ',' + haslo + ',500\n' - - # ,,500 - - # email: - # LO: .()@losobolew.pl - # BS: .(bs)@losobolew.pl - # ZSZ: .(zsz)@losobolew.pl - # LOD: .(lod)@losobolew.pl - - kontacsv.write(dane_do_konta) - - - ############## - - - nazwa = imie + ' ' + nazwisko - stanowisko = 'uczeń' - kraj = 'Rzeczpospolita Polska' - - officecsv.write(email + ',' + imie + ',' + nazwisko + ',' + nazwa + ',' + stanowisko + ',' + klasa + ',,,,,,,,,' + kraj + '\n') - kontacsv.close() - officecsv.close() - - print() - print() - print('############################') - print() - print() - - print('Pliki zostały wygenerowane pomyślnie') - print() - czekaj = input('Naciśnij ENTER aby wyjść') - -def nauczyciele(): - ostrzezenie(False) - - - try: - listatxt = open('pliki_zrodlowe/lista nauczycieli.txt') - except FileNotFoundError: - print() - print("BŁĄD! Plik 'lista nauczycieli.txt' nie został znaleziony") - print() - print() - print('############################') - print() - print() - - nauczyciele() - - - try: - zawartosc_lista = listatxt.read() - finally: - listatxt.close() - - kontacsv = cd.open('pliki_wyjsciowe/konta.csv', 'w', code) - officecsv = cd.open('pliki_wyjsciowe/office.csv', 'w', code) - - ciagi_danych_lista = zawartosc_lista.split('\n\n') - - for ciag_danych in ciagi_danych_lista: - ciag_danych = ciag_danych.strip('*') - nazwisko_i_reszta = ciag_danych.split(', ') - nazwisko = nazwisko_i_reszta[0] - nazwisko_male = konwersja_liter(nazwisko).replace(' ', '.') - reszta = nazwisko_i_reszta[1].split(' ') - imie = reszta[-4] - imie_male = konwersja_liter(imie) - haslo = reszta[-2] + ':' + inicjaly(imie, nazwisko) - email = imie_male + '.' + nazwisko_male + '@losobolew.pl' - - kontacsv.write(email + ',' + haslo + ',500\n') - - - ################# - - - nazwa = imie + ' ' + nazwisko - stanowisko = 'nauczyciel' - kraj = 'Rzeczpospolita Polska' - - officecsv.write(email + ',' + imie + ',' + nazwisko + ',' + nazwa + ',' + stanowisko + ',,,,,,,,,,' + kraj + '\n') - kontacsv.close() - officecsv.close() - - print() - print() - print('############################') - print() - print() - - print('Pliki zostały wygenerowane pomyślnie') - print() - czekaj = input('Naciśnij ENTER aby wyjść') - -################ -## START ## -print('### GENERATOR PLIKÓW CSV ###') -print() -print('1 - Uczniowie') -print('2 - Nauczyciele') -print() -wybor = input('Wybór: ') -print() -print() -print('############################') -print() -print() -if wybor == '1': - uczniowie() -else: - nauczyciele() \ No newline at end of file + +## Inicjacja okna ############################################################################### +def GUI(): + # Stałe + SzerokoscOpisu = 17 + SzerokoscPola = 91 + + # Tworzenie okna + OknoGlowne = tk.Tk() + OknoGlowne.title('GeneratorCSV') + OknoGlowne.resizable(width = False, height = False) + + # Nazwa programu + Tytul = tk.Label(OknoGlowne, text = 'GeneratorCSV', font = ('Segoe UI Semilight', 20), borderwidth = 7, justify = 'center', bg = 'Gainsboro', width = 47) + Tytul.grid(row = 0) + + + # Tworzenie frame dla ścieżek plików do importu + Ramka1 = tk.LabelFrame(OknoGlowne, text = 'Pliki do importu zawierające dane') + Ramka1.grid(row = 1) + + # Ścieżka pliku do importu 1 + wiersz1 = 0 + text1 = tk.StringVar() + OpisPola1 = tk.Label(Ramka1, text = 'Plik z danymi (1)', justify = 'left', width = SzerokoscOpisu) + OpisPola1.grid(row = wiersz1, column = 0) + Pole1 = tk.Entry(Ramka1, textvariable = text1, width = SzerokoscPola) + Pole1.grid(row = wiersz1, column = 1) + def Browse1_Dialog(): + Browse1.filename = TKfld.askopenfilename(initialdir="/", title="Wybierz plik", filetypes=(("Pliki txt", "*.txt"), ("Wszystkie pliki", "*.*"))) + Pole1.delete(0, 'end') + Pole1.insert(0, Browse1.filename) + Browse1 = tk.Button(Ramka1, text = '...', command = Browse1_Dialog, background = 'silver', relief = 'flat') + Browse1.grid(row = wiersz1, column = 2, padx = 5, pady = 3) + + # Ścieżka pliku do importu 2 + wiersz2 = 1 + text2 = tk.StringVar() + OpisPola2 = tk.Label(Ramka1, text = 'Plik z danymi (2)', justify = 'left', width = SzerokoscOpisu) + OpisPola2.grid(row = wiersz2, column = 0) + Pole2 = tk.Entry(Ramka1, textvariable = text2, width = SzerokoscPola) + Pole2.grid(row = wiersz2, column = 1) + def Browse2_Dialog(): + Browse2.filename = TKfld.askopenfilename(initialdir="/", title="Wybierz plik", filetypes=(("Pliki txt", "*.txt"), ("Wszystkie pliki", "*.*"))) + Pole2.delete(0, 'end') + Pole2.insert(0, Browse2.filename) + Browse2 = tk.Button(Ramka1, text = '...', command = Browse2_Dialog, background = 'silver', relief = 'flat') + Browse2.grid(row = wiersz2, column = 2, padx = 5, pady = 3) + + # Ścieżka pliku do importu 3 + wiersz3 = 2 + text3 = tk.StringVar() + OpisPola3 = tk.Label(Ramka1, text = 'Plik z danymi (3)', justify = 'left', width = SzerokoscOpisu) + OpisPola3.grid(row = wiersz3, column = 0) + Pole3 = tk.Entry(Ramka1, textvariable = text3, width = SzerokoscPola) + Pole3.grid(row = wiersz3, column = 1) + def Browse3_Dialog(): + Browse3.filename = TKfld.askopenfilename(initialdir="/", title="Wybierz plik", filetypes=(("Pliki txt", "*.txt"), ("Wszystkie pliki", "*.*"))) + Pole3.delete(0, 'end') + Pole3.insert(0, Browse3.filename) + Browse3 = tk.Button(Ramka1, text = '...', command = Browse3_Dialog, background = 'silver', relief = 'flat') + Browse3.grid(row = wiersz3, column = 2, padx = 5, pady = 3) + + # Ścieżka pliku do importu 4 + wiersz4 = 3 + text4 = tk.StringVar() + OpisPola4 = tk.Label(Ramka1, text = 'Plik z danymi (4)', justify = 'left', width = SzerokoscOpisu) + OpisPola4.grid(row = wiersz4, column = 0) + Pole4 = tk.Entry(Ramka1, textvariable = text3, width = SzerokoscPola) + Pole4.grid(row = wiersz4, column = 1) + def Browse4_Dialog(): + Browse4.filename = TKfld.askopenfilename(initialdir="/", title="Wybierz plik", filetypes=(("Pliki txt", "*.txt"), ("Wszystkie pliki", "*.*"))) + Pole4.delete(0, 'end') + Pole4.insert(0, Browse4.filename) + Browse4 = tk.Button(Ramka1, text = '...', command = Browse4_Dialog, background = 'silver', relief = 'flat') + Browse4.grid(row = wiersz4, column = 2, padx = 5, pady = 3) + + + # Tworzenie frame dla plików export + Ramka2 = tk.LabelFrame(OknoGlowne, text = 'Ustawienia eksportu') + Ramka2.grid(row = 2) + + # Ścieżka folderu do zapisu wygenerowanych plików + text4 = tk.StringVar() + OpisPolaExport = tk.Label(Ramka2, text = 'Lokalizacja', justify = 'left', width = SzerokoscOpisu) + OpisPolaExport.grid(row = 0, column = 0) + PoleExport = tk.Entry(Ramka2, textvariable = text4, width = SzerokoscPola) + PoleExport.grid(row = 0, column = 1) + def BrowseExport_Dialog(): + BrowseExport.filename = TKfld.askdirectory() + PoleExport.delete(0, 'end') + PoleExport.insert(0, BrowseExport.filename) + BrowseExport = tk.Button(Ramka2, text = '...', command = BrowseExport_Dialog, background = 'silver', relief = 'flat') + BrowseExport.grid(row = 0, column = 2, padx = 5, pady = 3) + + + # Przycisk START + Przycisk = tk.Button(OknoGlowne, text = 'START', justify = 'center', width = 50, command = Main, relief = 'flat', background = 'silver') + Przycisk.grid(row = 3, pady = 15) + + + # Pasek dolny + PasekDolny = tk.LabelFrame(OknoGlowne, bd = 0, background = 'Gainsboro') + PasekDolny.grid(row = 4) + InfoLabel = tk.Label(PasekDolny, text = 'GeneratorCSV 3.0 | © Mateusz Skoczek 2019 dla ZSP Sobolew', justify = 'left', width = 93, anchor = 'w', background = 'Gainsboro') + InfoLabel.grid(row= 0, column = 0) + def InfoOpen(): + try: + x = open('instrukcja.txt') + except FileNotFoundError: + MDerr(E001x03) + else: + os.system("notepad instrukcja.txt") + Przycisk = tk.Button(PasekDolny, text = 'Instrukcja', justify = 'center', foreground = 'blue', relief = 'flat', command = InfoOpen, background = 'Gainsboro') + Przycisk.grid(row = 0, column = 1) + + + tk.mainloop() + +GUI() + +#_______________________________________________________________________________________________# diff --git a/instrukcja.txt b/instrukcja.txt new file mode 100644 index 0000000..ae55ab1 --- /dev/null +++ b/instrukcja.txt @@ -0,0 +1,107 @@ +Program tworzy pliki .csv potrzebne do stworzenia kont uczniów i nauczycieli na szkolnej poczcie i Office 365. +Obecnie program obsługuje tylko 4 pliki z danymi. Program tworzy pliki 'email.csv' do eksportu dla szkolnej poczty oraz 'office.csv' do eksportu dla kont office. +Obecna wersja: 3.0 +Autorzy: Mateusz Skoczek +dla ZSP Sobolew +luty 2019 - grudzień 2019 + + + + + +Format domyślny plików z danymi: + +Legenda: +X - Dane nieznaczące +Q - Pusta linia + +Uczniowie: +# , +# + +# Przykład: +# 1a BS Nowak, Adam 1234567u +# + +Nauczyciele: +# , +# + +# Przykład: +# Nowak, Adam 1234567 +# + +Format można edytować w pliku 'format.py'. Więcej info na dole. + + + + + +Format domyślny pliku 'office.csv': +Uczniowie: +# ,,,,uczeń,,,,,,,,,,Rzeczpospolita Polska + +# Przykład: +# adam.nowak@losobolew.pl,Adam,Nowak,Adam Nowak,uczeń,1a BS,,,,,,,,,Rzeczpospolita Polska + +Nauczyciele: +# ,,,,nauczyciel,,,,,,,,,,Rzeczpospolita Polska + +# Przykład: +# adam.nowak@losobolew.pl,Adam,Nowak,Adam Nowak,nauczyciel,,,,,,,,,,Rzeczpospolita Polska + + + + + +Format domyślny pliku 'email.csv': +Uczniowie: +# ,,500 +| +v +# .@losobolew.pl,:,500 + +# Przykład: +# adam.nowak2021bs@losobolew.pl,1234567u,500 + +Nauczyciele: +# ,,500 +| +v +# .@losobolew.pl,:,500 + +# Przykład: +# adam.nowak@losobolew.pl,1234567,500 + + + + + +Dalsze pojęcia: +błąd programu - błąd programu objawiający się komunikatem +krytyczny błąd programu - nieoczekiwany błąd programu nieobjawiający się komunikatem + + + + + +Pliki: + +changelog.txt +Informacje o zmianach w poszczególnych wersjach programu. + +generator.py +Główny plik programu. Jakiekolwiek naruszenie jego zawartości może spowodować krytyczny błąd programu. + +instrukcja.txt +Plik z instrukcją użytkowania. Usunięcie tego pliku spowoduje błąd programu. + +config.cfg +Plik zawiera ukryte ustawienia programu. Można go edytować, ale należy robić to z rozwagą. Usunięcie go spowoduje błąd programu. +1: Obsługiwane kodowania: 'utf-8', 'cp1252', 'iso-8859-1' + +moduly.py +Plik zawierający moduły niezbędne do działania programu. Usunięcie pliku spowoduje błąd programu. Naruszenie jego zawartości może spowodować krytyczny błąd programu. + +format.py +Plik ten jest skryptem przetwarzającym dane. W razie zmiany formatu pliku z danymi należy go edytować, lecz nie powinna tego robić osoba początkująca, gdyż błędny kod może spowodować krytyczny błąd programu lub niepożądane wyniki. Usunięcie pliku spowoduje błąd programu. \ No newline at end of file diff --git a/moduly.py b/moduly.py new file mode 100644 index 0000000..d98987d --- /dev/null +++ b/moduly.py @@ -0,0 +1,51 @@ +import sys as ss +import time as tm +from tkinter import messagebox as TKmsb + +def ErrorDialog(KodBledu): + Message = 'Wystąpił błąd!\n' + KodBledu + TKmsb.showerror('Błąd', Message) + ss.exit(0) + +def FileCheck(Plik, KodBledu): + try: + x = open(Plik) + except FileNotFoundError: + ErrorDialog(KodBledu) + +def PolishLetterRemover(text): + text1 = text.replace('ę', 'e') + text2 = text1.replace('ó', 'o') + text3 = text2.replace('ą', 'a') + text4 = text3.replace('ś', 's') + text5 = text4.replace('ł', 'l') + text6 = text5.replace('ż', 'z') + text7 = text6.replace('ź', 'z') + text8 = text7.replace('ć', 'c') + text9 = text8.replace('ń', 'n') + text10 = text9.replace('Ę', 'E') + text11 = text10.replace('Ó', 'O') + text12 = text11.replace('Ą', 'A') + text13 = text12.replace('Ś', 'S') + text14 = text13.replace('Ł', 'L') + text15 = text14.replace('Ż', 'Z') + text16 = text15.replace('Ź', 'Z') + text17 = text16.replace('Ć', 'C') + text = text17.replace('Ń', 'N') + return text + +def ClassTagCreator(Klasa): + czas = tm.localtime() + miesiac = czas[1] + if miesiac >= 9: + rokpodst = czas[0] + else: + rokpodst = czas[0] - 1 + nrklasy = int(Klasa[0]) + literaklasy = Klasa[1] + szkola = Klasa.split(' ')[1] + if szkola == 'BS': + znacznik = str((4 - nrklasy) + rokpodst) + szkola + else: + znacznik = str((5 - nrklasy) + rokpodst) + literaklasy + return znacznik \ No newline at end of file diff --git a/pliki_zrodlowe/lista nauczycieli.txt b/pliki_zrodlowe/lista nauczycieli.txt deleted file mode 100644 index 0885cd4..0000000 --- a/pliki_zrodlowe/lista nauczycieli.txt +++ /dev/null @@ -1,3 +0,0 @@ -Nowak, Adam 1 1234567 ******** - -Kowalski, Jan 97 7654321 ******** \ No newline at end of file diff --git a/pliki_zrodlowe/lista.txt b/pliki_zrodlowe/lista.txt deleted file mode 100644 index 99e20d5..0000000 --- a/pliki_zrodlowe/lista.txt +++ /dev/null @@ -1,3 +0,0 @@ -1a BS Nowak, Adam 1 1234567u ******** - -1a BS Kowalski, Jan 2 7654321u ******** \ No newline at end of file diff --git a/venv/Lib/site-packages/easy-install.pth b/venv/Lib/site-packages/easy-install.pth deleted file mode 100644 index df3a2b7..0000000 --- a/venv/Lib/site-packages/easy-install.pth +++ /dev/null @@ -1,2 +0,0 @@ -./setuptools-39.1.0-py3.7.egg -./pip-10.0.1-py3.7.egg diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/PKG-INFO b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/PKG-INFO deleted file mode 100644 index 3d89856..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/PKG-INFO +++ /dev/null @@ -1,69 +0,0 @@ -Metadata-Version: 2.1 -Name: pip -Version: 10.0.1 -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 -Description: pip - === - - The `PyPA recommended`_ tool for installing Python packages. - - .. image:: https://img.shields.io/pypi/v/pip.svg - :target: https://pypi.org/project/pip/ - - .. image:: https://img.shields.io/travis/pypa/pip/master.svg - :target: http://travis-ci.org/pypa/pip - - .. image:: https://img.shields.io/appveyor/ci/pypa/pip.svg - :target: https://ci.appveyor.com/project/pypa/pip/history - - .. image:: https://readthedocs.org/projects/pip/badge/?version=latest - :target: https://pip.pypa.io/en/latest - - * `Installation`_ - * `Documentation`_ - * `Changelog`_ - * `GitHub Page`_ - * `Issue Tracking`_ - * `User mailing list`_ - * `Dev mailing list`_ - * User IRC: #pypa on Freenode. - * Dev IRC: #pypa-dev on Freenode. - - 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 recommended: https://packaging.python.org/en/latest/current/ - .. _Installation: https://pip.pypa.io/en/stable/installing.html - .. _Documentation: https://pip.pypa.io/en/stable/ - .. _Changelog: https://pip.pypa.io/en/stable/news.html - .. _GitHub Page: https://github.com/pypa/pip - .. _Issue Tracking: https://github.com/pypa/pip/issues - .. _User mailing list: http://groups.google.com/group/python-virtualenv - .. _Dev mailing list: http://groups.google.com/group/pypa-dev - .. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ - -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 -Classifier: Programming Language :: Python :: 2 -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 :: 3.6 -Classifier: Programming Language :: Python :: Implementation :: CPython -Classifier: Programming Language :: Python :: Implementation :: PyPy -Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.* -Provides-Extra: testing diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/SOURCES.txt b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/SOURCES.txt deleted file mode 100644 index 677a8e6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/SOURCES.txt +++ /dev/null @@ -1,347 +0,0 @@ -AUTHORS.txt -LICENSE.txt -MANIFEST.in -NEWS.rst -README.rst -pyproject.toml -setup.cfg -setup.py -docs/Makefile -docs/__init__.py -docs/conf.py -docs/configuration.rst -docs/cookbook.rst -docs/development.rst -docs/docutils.conf -docs/index.rst -docs/installing.rst -docs/logic.rst -docs/make.bat -docs/news.rst -docs/pipext.py -docs/quickstart.rst -docs/usage.rst -docs/user_guide.rst -docs/man/pip.rst -docs/man/commands/check.rst -docs/man/commands/config.rst -docs/man/commands/download.rst -docs/man/commands/freeze.rst -docs/man/commands/hash.rst -docs/man/commands/help.rst -docs/man/commands/install.rst -docs/man/commands/list.rst -docs/man/commands/search.rst -docs/man/commands/show.rst -docs/man/commands/uninstall.rst -docs/man/commands/wheel.rst -docs/reference/index.rst -docs/reference/pip.rst -docs/reference/pip_check.rst -docs/reference/pip_config.rst -docs/reference/pip_download.rst -docs/reference/pip_freeze.rst -docs/reference/pip_hash.rst -docs/reference/pip_install.rst -docs/reference/pip_list.rst -docs/reference/pip_search.rst -docs/reference/pip_show.rst -docs/reference/pip_uninstall.rst -docs/reference/pip_wheel.rst -src/pip/__init__.py -src/pip/__main__.py -src/pip.egg-info/PKG-INFO -src/pip.egg-info/SOURCES.txt -src/pip.egg-info/dependency_links.txt -src/pip.egg-info/entry_points.txt -src/pip.egg-info/not-zip-safe -src/pip.egg-info/requires.txt -src/pip.egg-info/top_level.txt -src/pip/_internal/__init__.py -src/pip/_internal/basecommand.py -src/pip/_internal/baseparser.py -src/pip/_internal/build_env.py -src/pip/_internal/cache.py -src/pip/_internal/cmdoptions.py -src/pip/_internal/compat.py -src/pip/_internal/configuration.py -src/pip/_internal/download.py -src/pip/_internal/exceptions.py -src/pip/_internal/index.py -src/pip/_internal/locations.py -src/pip/_internal/pep425tags.py -src/pip/_internal/resolve.py -src/pip/_internal/status_codes.py -src/pip/_internal/wheel.py -src/pip/_internal/commands/__init__.py -src/pip/_internal/commands/check.py -src/pip/_internal/commands/completion.py -src/pip/_internal/commands/configuration.py -src/pip/_internal/commands/download.py -src/pip/_internal/commands/freeze.py -src/pip/_internal/commands/hash.py -src/pip/_internal/commands/help.py -src/pip/_internal/commands/install.py -src/pip/_internal/commands/list.py -src/pip/_internal/commands/search.py -src/pip/_internal/commands/show.py -src/pip/_internal/commands/uninstall.py -src/pip/_internal/commands/wheel.py -src/pip/_internal/models/__init__.py -src/pip/_internal/models/index.py -src/pip/_internal/operations/__init__.py -src/pip/_internal/operations/check.py -src/pip/_internal/operations/freeze.py -src/pip/_internal/operations/prepare.py -src/pip/_internal/req/__init__.py -src/pip/_internal/req/req_file.py -src/pip/_internal/req/req_install.py -src/pip/_internal/req/req_set.py -src/pip/_internal/req/req_uninstall.py -src/pip/_internal/utils/__init__.py -src/pip/_internal/utils/appdirs.py -src/pip/_internal/utils/deprecation.py -src/pip/_internal/utils/encoding.py -src/pip/_internal/utils/filesystem.py -src/pip/_internal/utils/glibc.py -src/pip/_internal/utils/hashes.py -src/pip/_internal/utils/logging.py -src/pip/_internal/utils/misc.py -src/pip/_internal/utils/outdated.py -src/pip/_internal/utils/packaging.py -src/pip/_internal/utils/setuptools_build.py -src/pip/_internal/utils/temp_dir.py -src/pip/_internal/utils/typing.py -src/pip/_internal/utils/ui.py -src/pip/_internal/vcs/__init__.py -src/pip/_internal/vcs/bazaar.py -src/pip/_internal/vcs/git.py -src/pip/_internal/vcs/mercurial.py -src/pip/_internal/vcs/subversion.py -src/pip/_vendor/README.rst -src/pip/_vendor/__init__.py -src/pip/_vendor/appdirs.py -src/pip/_vendor/distro.py -src/pip/_vendor/ipaddress.py -src/pip/_vendor/pyparsing.py -src/pip/_vendor/retrying.py -src/pip/_vendor/six.py -src/pip/_vendor/vendor.txt -src/pip/_vendor/cachecontrol/__init__.py -src/pip/_vendor/cachecontrol/_cmd.py -src/pip/_vendor/cachecontrol/adapter.py -src/pip/_vendor/cachecontrol/cache.py -src/pip/_vendor/cachecontrol/compat.py -src/pip/_vendor/cachecontrol/controller.py -src/pip/_vendor/cachecontrol/filewrapper.py -src/pip/_vendor/cachecontrol/heuristics.py -src/pip/_vendor/cachecontrol/serialize.py -src/pip/_vendor/cachecontrol/wrapper.py -src/pip/_vendor/cachecontrol/caches/__init__.py -src/pip/_vendor/cachecontrol/caches/file_cache.py -src/pip/_vendor/cachecontrol/caches/redis_cache.py -src/pip/_vendor/certifi/__init__.py -src/pip/_vendor/certifi/__main__.py -src/pip/_vendor/certifi/cacert.pem -src/pip/_vendor/certifi/core.py -src/pip/_vendor/chardet/__init__.py -src/pip/_vendor/chardet/big5freq.py -src/pip/_vendor/chardet/big5prober.py -src/pip/_vendor/chardet/chardistribution.py -src/pip/_vendor/chardet/charsetgroupprober.py -src/pip/_vendor/chardet/charsetprober.py -src/pip/_vendor/chardet/codingstatemachine.py -src/pip/_vendor/chardet/compat.py -src/pip/_vendor/chardet/cp949prober.py -src/pip/_vendor/chardet/enums.py -src/pip/_vendor/chardet/escprober.py -src/pip/_vendor/chardet/escsm.py -src/pip/_vendor/chardet/eucjpprober.py -src/pip/_vendor/chardet/euckrfreq.py -src/pip/_vendor/chardet/euckrprober.py -src/pip/_vendor/chardet/euctwfreq.py -src/pip/_vendor/chardet/euctwprober.py -src/pip/_vendor/chardet/gb2312freq.py -src/pip/_vendor/chardet/gb2312prober.py -src/pip/_vendor/chardet/hebrewprober.py -src/pip/_vendor/chardet/jisfreq.py -src/pip/_vendor/chardet/jpcntx.py -src/pip/_vendor/chardet/langbulgarianmodel.py -src/pip/_vendor/chardet/langcyrillicmodel.py -src/pip/_vendor/chardet/langgreekmodel.py -src/pip/_vendor/chardet/langhebrewmodel.py -src/pip/_vendor/chardet/langhungarianmodel.py -src/pip/_vendor/chardet/langthaimodel.py -src/pip/_vendor/chardet/langturkishmodel.py -src/pip/_vendor/chardet/latin1prober.py -src/pip/_vendor/chardet/mbcharsetprober.py -src/pip/_vendor/chardet/mbcsgroupprober.py -src/pip/_vendor/chardet/mbcssm.py -src/pip/_vendor/chardet/sbcharsetprober.py -src/pip/_vendor/chardet/sbcsgroupprober.py -src/pip/_vendor/chardet/sjisprober.py -src/pip/_vendor/chardet/universaldetector.py -src/pip/_vendor/chardet/utf8prober.py -src/pip/_vendor/chardet/version.py -src/pip/_vendor/chardet/cli/__init__.py -src/pip/_vendor/chardet/cli/chardetect.py -src/pip/_vendor/colorama/__init__.py -src/pip/_vendor/colorama/ansi.py -src/pip/_vendor/colorama/ansitowin32.py -src/pip/_vendor/colorama/initialise.py -src/pip/_vendor/colorama/win32.py -src/pip/_vendor/colorama/winterm.py -src/pip/_vendor/distlib/__init__.py -src/pip/_vendor/distlib/compat.py -src/pip/_vendor/distlib/database.py -src/pip/_vendor/distlib/index.py -src/pip/_vendor/distlib/locators.py -src/pip/_vendor/distlib/manifest.py -src/pip/_vendor/distlib/markers.py -src/pip/_vendor/distlib/metadata.py -src/pip/_vendor/distlib/resources.py -src/pip/_vendor/distlib/scripts.py -src/pip/_vendor/distlib/t32.exe -src/pip/_vendor/distlib/t64.exe -src/pip/_vendor/distlib/util.py -src/pip/_vendor/distlib/version.py -src/pip/_vendor/distlib/w32.exe -src/pip/_vendor/distlib/w64.exe -src/pip/_vendor/distlib/wheel.py -src/pip/_vendor/distlib/_backport/__init__.py -src/pip/_vendor/distlib/_backport/misc.py -src/pip/_vendor/distlib/_backport/shutil.py -src/pip/_vendor/distlib/_backport/sysconfig.cfg -src/pip/_vendor/distlib/_backport/sysconfig.py -src/pip/_vendor/distlib/_backport/tarfile.py -src/pip/_vendor/html5lib/__init__.py -src/pip/_vendor/html5lib/_ihatexml.py -src/pip/_vendor/html5lib/_inputstream.py -src/pip/_vendor/html5lib/_tokenizer.py -src/pip/_vendor/html5lib/_utils.py -src/pip/_vendor/html5lib/constants.py -src/pip/_vendor/html5lib/html5parser.py -src/pip/_vendor/html5lib/serializer.py -src/pip/_vendor/html5lib/_trie/__init__.py -src/pip/_vendor/html5lib/_trie/_base.py -src/pip/_vendor/html5lib/_trie/datrie.py -src/pip/_vendor/html5lib/_trie/py.py -src/pip/_vendor/html5lib/filters/__init__.py -src/pip/_vendor/html5lib/filters/alphabeticalattributes.py -src/pip/_vendor/html5lib/filters/base.py -src/pip/_vendor/html5lib/filters/inject_meta_charset.py -src/pip/_vendor/html5lib/filters/lint.py -src/pip/_vendor/html5lib/filters/optionaltags.py -src/pip/_vendor/html5lib/filters/sanitizer.py -src/pip/_vendor/html5lib/filters/whitespace.py -src/pip/_vendor/html5lib/treeadapters/__init__.py -src/pip/_vendor/html5lib/treeadapters/genshi.py -src/pip/_vendor/html5lib/treeadapters/sax.py -src/pip/_vendor/html5lib/treebuilders/__init__.py -src/pip/_vendor/html5lib/treebuilders/base.py -src/pip/_vendor/html5lib/treebuilders/dom.py -src/pip/_vendor/html5lib/treebuilders/etree.py -src/pip/_vendor/html5lib/treebuilders/etree_lxml.py -src/pip/_vendor/html5lib/treewalkers/__init__.py -src/pip/_vendor/html5lib/treewalkers/base.py -src/pip/_vendor/html5lib/treewalkers/dom.py -src/pip/_vendor/html5lib/treewalkers/etree.py -src/pip/_vendor/html5lib/treewalkers/etree_lxml.py -src/pip/_vendor/html5lib/treewalkers/genshi.py -src/pip/_vendor/idna/__init__.py -src/pip/_vendor/idna/codec.py -src/pip/_vendor/idna/compat.py -src/pip/_vendor/idna/core.py -src/pip/_vendor/idna/idnadata.py -src/pip/_vendor/idna/intranges.py -src/pip/_vendor/idna/package_data.py -src/pip/_vendor/idna/uts46data.py -src/pip/_vendor/lockfile/__init__.py -src/pip/_vendor/lockfile/linklockfile.py -src/pip/_vendor/lockfile/mkdirlockfile.py -src/pip/_vendor/lockfile/pidlockfile.py -src/pip/_vendor/lockfile/sqlitelockfile.py -src/pip/_vendor/lockfile/symlinklockfile.py -src/pip/_vendor/msgpack/__init__.py -src/pip/_vendor/msgpack/_version.py -src/pip/_vendor/msgpack/exceptions.py -src/pip/_vendor/msgpack/fallback.py -src/pip/_vendor/packaging/__about__.py -src/pip/_vendor/packaging/__init__.py -src/pip/_vendor/packaging/_compat.py -src/pip/_vendor/packaging/_structures.py -src/pip/_vendor/packaging/markers.py -src/pip/_vendor/packaging/requirements.py -src/pip/_vendor/packaging/specifiers.py -src/pip/_vendor/packaging/utils.py -src/pip/_vendor/packaging/version.py -src/pip/_vendor/pkg_resources/__init__.py -src/pip/_vendor/pkg_resources/py31compat.py -src/pip/_vendor/progress/__init__.py -src/pip/_vendor/progress/bar.py -src/pip/_vendor/progress/counter.py -src/pip/_vendor/progress/helpers.py -src/pip/_vendor/progress/spinner.py -src/pip/_vendor/pytoml/__init__.py -src/pip/_vendor/pytoml/core.py -src/pip/_vendor/pytoml/parser.py -src/pip/_vendor/pytoml/writer.py -src/pip/_vendor/requests/__init__.py -src/pip/_vendor/requests/__version__.py -src/pip/_vendor/requests/_internal_utils.py -src/pip/_vendor/requests/adapters.py -src/pip/_vendor/requests/api.py -src/pip/_vendor/requests/auth.py -src/pip/_vendor/requests/certs.py -src/pip/_vendor/requests/compat.py -src/pip/_vendor/requests/cookies.py -src/pip/_vendor/requests/exceptions.py -src/pip/_vendor/requests/help.py -src/pip/_vendor/requests/hooks.py -src/pip/_vendor/requests/models.py -src/pip/_vendor/requests/packages.py -src/pip/_vendor/requests/sessions.py -src/pip/_vendor/requests/status_codes.py -src/pip/_vendor/requests/structures.py -src/pip/_vendor/requests/utils.py -src/pip/_vendor/urllib3/__init__.py -src/pip/_vendor/urllib3/_collections.py -src/pip/_vendor/urllib3/connection.py -src/pip/_vendor/urllib3/connectionpool.py -src/pip/_vendor/urllib3/exceptions.py -src/pip/_vendor/urllib3/fields.py -src/pip/_vendor/urllib3/filepost.py -src/pip/_vendor/urllib3/poolmanager.py -src/pip/_vendor/urllib3/request.py -src/pip/_vendor/urllib3/response.py -src/pip/_vendor/urllib3/contrib/__init__.py -src/pip/_vendor/urllib3/contrib/appengine.py -src/pip/_vendor/urllib3/contrib/ntlmpool.py -src/pip/_vendor/urllib3/contrib/pyopenssl.py -src/pip/_vendor/urllib3/contrib/securetransport.py -src/pip/_vendor/urllib3/contrib/socks.py -src/pip/_vendor/urllib3/contrib/_securetransport/__init__.py -src/pip/_vendor/urllib3/contrib/_securetransport/bindings.py -src/pip/_vendor/urllib3/contrib/_securetransport/low_level.py -src/pip/_vendor/urllib3/packages/__init__.py -src/pip/_vendor/urllib3/packages/ordered_dict.py -src/pip/_vendor/urllib3/packages/six.py -src/pip/_vendor/urllib3/packages/backports/__init__.py -src/pip/_vendor/urllib3/packages/backports/makefile.py -src/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py -src/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py -src/pip/_vendor/urllib3/util/__init__.py -src/pip/_vendor/urllib3/util/connection.py -src/pip/_vendor/urllib3/util/request.py -src/pip/_vendor/urllib3/util/response.py -src/pip/_vendor/urllib3/util/retry.py -src/pip/_vendor/urllib3/util/selectors.py -src/pip/_vendor/urllib3/util/ssl_.py -src/pip/_vendor/urllib3/util/timeout.py -src/pip/_vendor/urllib3/util/url.py -src/pip/_vendor/urllib3/util/wait.py -src/pip/_vendor/webencodings/__init__.py -src/pip/_vendor/webencodings/labels.py -src/pip/_vendor/webencodings/mklabels.py -src/pip/_vendor/webencodings/tests.py -src/pip/_vendor/webencodings/x_user_defined.py \ No newline at end of file diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/dependency_links.txt b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/dependency_links.txt deleted file mode 100644 index d3f5a12..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/entry_points.txt b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/entry_points.txt deleted file mode 100644 index a2dc6c6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/entry_points.txt +++ /dev/null @@ -1,5 +0,0 @@ -[console_scripts] -pip = pip._internal:main -pip3 = pip._internal:main -pip3.7 = pip._internal:main - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/not-zip-safe b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/not-zip-safe deleted file mode 100644 index d3f5a12..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/not-zip-safe +++ /dev/null @@ -1 +0,0 @@ - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/requires.txt b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/requires.txt deleted file mode 100644 index aa028fa..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/requires.txt +++ /dev/null @@ -1,8 +0,0 @@ - -[testing] -pytest -mock -pretend -scripttest>=1.3 -virtualenv>=1.10 -freezegun diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/top_level.txt b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/top_level.txt deleted file mode 100644 index 4660be2..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/EGG-INFO/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__init__.py deleted file mode 100644 index 0a3b850..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__init__.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "10.0.1" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__main__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__main__.py deleted file mode 100644 index a128ee3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/__main__.py +++ /dev/null @@ -1,19 +0,0 @@ -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) - -from pip._internal import main as _main # noqa - -if __name__ == '__main__': - sys.exit(_main()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/__init__.py deleted file mode 100644 index d713b0d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/__init__.py +++ /dev/null @@ -1,246 +0,0 @@ -#!/usr/bin/env python -from __future__ import absolute_import - -import locale -import logging -import os -import optparse -import warnings - -import sys - -# 2016-06-17 barry@debian.org: urllib3 1.14 added optional support for socks, -# but if invoked (i.e. imported), it will issue a warning to stderr if socks -# isn't available. requests unconditionally imports urllib3's socks contrib -# module, triggering this warning. The warning breaks DEP-8 tests (because of -# the stderr output) and is just plain annoying in normal usage. I don't want -# to add socks as yet another dependency for pip, nor do I want to allow-stder -# in the DEP-8 tests, so just suppress the warning. pdb tells me this has to -# be done before the import of pip.vcs. -from pip._vendor.urllib3.exceptions import DependencyWarning -warnings.filterwarnings("ignore", category=DependencyWarning) # noqa - -# We want to inject the use of SecureTransport as early as possible so that any -# references or sessions or what have you are ensured to have it, however we -# only want to do this in the case that we're running on macOS and the linked -# OpenSSL is too old to handle TLSv1.2 -try: - import ssl -except ImportError: - pass -else: - # Checks for OpenSSL 1.0.1 on MacOS - if sys.platform == "darwin" and ssl.OPENSSL_VERSION_NUMBER < 0x1000100f: - try: - from pip._vendor.urllib3.contrib import securetransport - except (ImportError, OSError): - pass - else: - securetransport.inject_into_urllib3() - -from pip import __version__ -from pip._internal import cmdoptions -from pip._internal.exceptions import CommandError, PipError -from pip._internal.utils.misc import get_installed_distributions, get_prog -from pip._internal.utils import deprecation -from pip._internal.vcs import git, mercurial, subversion, bazaar # noqa -from pip._internal.baseparser import ( - ConfigOptionParser, UpdatingDefaultsHelpFormatter, -) -from pip._internal.commands import get_summaries, get_similar_commands -from pip._internal.commands import commands_dict -from pip._vendor.urllib3.exceptions import InsecureRequestWarning - -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, zsh or fish). - """ - # 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 show and uninstall - should_list_installed = ( - subcommand_name in ['show', 'uninstall'] and - not current.startswith('-') - ) - if should_list_installed: - 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]() - - for opt in subcommand.parser.option_list_all: - if opt.help != optparse.SUPPRESS_HELP: - for opt_str in opt._long_opts + opt._short_opts: - options.append((opt_str, opt.nargs)) - - # 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] and option[0][:2] == "--": - 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) - - for opt in opts: - if opt.help != optparse.SUPPRESS_HELP: - subcommands += opt._long_opts + opt._short_opts - - 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._internal.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) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/basecommand.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/basecommand.py deleted file mode 100644 index e900928..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/basecommand.py +++ /dev/null @@ -1,373 +0,0 @@ -"""Base Command class, and related routines""" -from __future__ import absolute_import - -import logging -import logging.config -import optparse -import os -import sys -import warnings - -from pip._internal import cmdoptions -from pip._internal.baseparser import ( - ConfigOptionParser, UpdatingDefaultsHelpFormatter, -) -from pip._internal.compat import WINDOWS -from pip._internal.download import PipSession -from pip._internal.exceptions import ( - BadCommand, CommandError, InstallationError, PreviousBuildDirError, - UninstallationError, -) -from pip._internal.index import PackageFinder -from pip._internal.locations import running_under_virtualenv -from pip._internal.req.req_file import parse_requirements -from pip._internal.req.req_install import InstallRequirement -from pip._internal.status_codes import ( - ERROR, PREVIOUS_BUILD_DIR_ERROR, SUCCESS, UNKNOWN_ERROR, - VIRTUALENV_NOT_FOUND, -) -from pip._internal.utils import deprecation -from pip._internal.utils.logging import IndentingFormatter -from pip._internal.utils.misc import get_prog, normalize_path -from pip._internal.utils.outdated import pip_version_check -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import Optional - -__all__ = ['Command'] - -logger = logging.getLogger(__name__) - - -class Command(object): - name = None # type: Optional[str] - usage = None # type: Optional[str] - hidden = False # type: bool - ignore_require_venv = False # type: bool - log_streams = ("ext://sys.stdout", "ext://sys.stderr") - - def __init__(self, isolated=False): - parser_kw = { - 'usage': self.usage, - 'prog': '%s %s' % (get_prog(), self.name), - 'formatter': UpdatingDefaultsHelpFormatter(), - 'add_help_option': False, - 'name': self.name, - 'description': self.__doc__, - 'isolated': isolated, - } - - self.parser = ConfigOptionParser(**parser_kw) - - # Commands should add options to this option group - optgroup_name = '%s Options' % self.name.capitalize() - self.cmd_opts = optparse.OptionGroup(self.parser, optgroup_name) - - # Add the general options - gen_opts = cmdoptions.make_option_group( - cmdoptions.general_group, - self.parser, - ) - self.parser.add_option_group(gen_opts) - - def _build_session(self, options, retries=None, timeout=None): - session = PipSession( - cache=( - normalize_path(os.path.join(options.cache_dir, "http")) - if options.cache_dir else None - ), - retries=retries if retries is not None else options.retries, - insecure_hosts=options.trusted_hosts, - ) - - # Handle custom ca-bundles from the user - if options.cert: - session.verify = options.cert - - # Handle SSL client certificate - if options.client_cert: - session.cert = options.client_cert - - # Handle timeouts - if options.timeout or timeout: - session.timeout = ( - timeout if timeout is not None else options.timeout - ) - - # Handle configured proxies - if options.proxy: - session.proxies = { - "http": options.proxy, - "https": options.proxy, - } - - # Determine if we can prompt the user for authentication or not - session.auth.prompting = not options.no_input - - return session - - def parse_args(self, args): - # factored out for testability - return self.parser.parse_args(args) - - def main(self, args): - options, args = self.parse_args(args) - - # Set verbosity so that it can be used elsewhere. - self.verbosity = options.verbose - options.quiet - - if self.verbosity >= 1: - level = "DEBUG" - elif self.verbosity == -1: - level = "WARNING" - elif self.verbosity == -2: - level = "ERROR" - elif self.verbosity <= -3: - level = "CRITICAL" - else: - level = "INFO" - - # The root logger should match the "console" level *unless* we - # specified "--log" to send debug logs to a file. - root_level = level - if options.log: - root_level = "DEBUG" - - logger_class = "pip._internal.utils.logging.ColorizedStreamHandler" - handler_class = "pip._internal.utils.logging.BetterRotatingFileHandler" - - logging.config.dictConfig({ - "version": 1, - "disable_existing_loggers": False, - "filters": { - "exclude_warnings": { - "()": "pip._internal.utils.logging.MaxLevelFilter", - "level": logging.WARNING, - }, - }, - "formatters": { - "indent": { - "()": IndentingFormatter, - "format": "%(message)s", - }, - }, - "handlers": { - "console": { - "level": level, - "class": logger_class, - "no_color": options.no_color, - "stream": self.log_streams[0], - "filters": ["exclude_warnings"], - "formatter": "indent", - }, - "console_errors": { - "level": "WARNING", - "class": logger_class, - "no_color": options.no_color, - "stream": self.log_streams[1], - "formatter": "indent", - }, - "user_log": { - "level": "DEBUG", - "class": handler_class, - "filename": options.log or "/dev/null", - "delay": True, - "formatter": "indent", - }, - }, - "root": { - "level": root_level, - "handlers": list(filter(None, [ - "console", - "console_errors", - "user_log" if options.log else None, - ])), - }, - # Disable any logging besides WARNING unless we have DEBUG level - # logging enabled. These use both pip._vendor and the bare names - # for the case where someone unbundles our libraries. - "loggers": { - name: { - "level": ( - "WARNING" if level in ["INFO", "ERROR"] else "DEBUG" - ) - } for name in [ - "pip._vendor", "distlib", "requests", "urllib3" - ] - }, - }) - - if sys.version_info[:2] == (3, 3): - warnings.warn( - "Python 3.3 supported has been deprecated and support for it " - "will be dropped in the future. Please upgrade your Python.", - deprecation.RemovedInPip11Warning, - ) - - # TODO: try to get these passing down from the command? - # without resorting to os.environ to hold these. - - if options.no_input: - os.environ['PIP_NO_INPUT'] = '1' - - if options.exists_action: - os.environ['PIP_EXISTS_ACTION'] = ' '.join(options.exists_action) - - if options.require_venv and not self.ignore_require_venv: - # If a venv is required check if it can really be found - if not running_under_virtualenv(): - logger.critical( - 'Could not find an activated virtualenv (required).' - ) - sys.exit(VIRTUALENV_NOT_FOUND) - - original_root_handlers = set(logging.root.handlers) - - try: - status = self.run(options, args) - # FIXME: all commands should return an exit status - # and when it is done, isinstance is not needed anymore - if isinstance(status, int): - return status - except PreviousBuildDirError as exc: - logger.critical(str(exc)) - logger.debug('Exception information:', exc_info=True) - - return PREVIOUS_BUILD_DIR_ERROR - except (InstallationError, UninstallationError, BadCommand) as exc: - logger.critical(str(exc)) - logger.debug('Exception information:', exc_info=True) - - return ERROR - except CommandError as exc: - logger.critical('ERROR: %s', exc) - logger.debug('Exception information:', exc_info=True) - - return ERROR - except KeyboardInterrupt: - logger.critical('Operation cancelled by user') - logger.debug('Exception information:', exc_info=True) - - return ERROR - except: - logger.critical('Exception:', exc_info=True) - - return UNKNOWN_ERROR - finally: - # Check if we're using the latest version of pip available - if (not options.disable_pip_version_check and not - getattr(options, "no_index", False)): - with self._build_session( - options, - retries=0, - timeout=min(5, options.timeout)) as session: - pip_version_check(session, options) - # Avoid leaking loggers - for handler in set(logging.root.handlers) - original_root_handlers: - # this method benefit from the Logger class internal lock - logging.root.removeHandler(handler) - - return SUCCESS - - -class RequirementCommand(Command): - - @staticmethod - def populate_requirement_set(requirement_set, args, options, finder, - session, name, wheel_cache): - """ - Marshal cmd line args into a requirement set. - """ - # NOTE: As a side-effect, options.require_hashes and - # requirement_set.require_hashes may be updated - - for filename in options.constraints: - for req_to_add in parse_requirements( - filename, - constraint=True, finder=finder, options=options, - session=session, wheel_cache=wheel_cache): - req_to_add.is_direct = True - requirement_set.add_requirement(req_to_add) - - for req in args: - req_to_add = InstallRequirement.from_line( - req, None, isolated=options.isolated_mode, - wheel_cache=wheel_cache - ) - req_to_add.is_direct = True - requirement_set.add_requirement(req_to_add) - - for req in options.editables: - req_to_add = InstallRequirement.from_editable( - req, - isolated=options.isolated_mode, - wheel_cache=wheel_cache - ) - req_to_add.is_direct = True - requirement_set.add_requirement(req_to_add) - - for filename in options.requirements: - for req_to_add in parse_requirements( - filename, - finder=finder, options=options, session=session, - wheel_cache=wheel_cache): - req_to_add.is_direct = True - requirement_set.add_requirement(req_to_add) - # If --require-hashes was a line in a requirements file, tell - # RequirementSet about it: - requirement_set.require_hashes = options.require_hashes - - if not (args or options.editables or options.requirements): - opts = {'name': name} - if options.find_links: - raise CommandError( - 'You must give at least one requirement to %(name)s ' - '(maybe you meant "pip %(name)s %(links)s"?)' % - dict(opts, links=' '.join(options.find_links))) - else: - raise CommandError( - 'You must give at least one requirement to %(name)s ' - '(see "pip help %(name)s")' % opts) - - # On Windows, any operation modifying pip should be run as: - # python -m pip ... - # See https://github.com/pypa/pip/issues/1299 for more discussion - should_show_use_python_msg = ( - WINDOWS and - requirement_set.has_requirement("pip") and - os.path.basename(sys.argv[0]).startswith("pip") - ) - if should_show_use_python_msg: - new_command = [ - sys.executable, "-m", "pip" - ] + sys.argv[1:] - raise CommandError( - 'To modify pip, please run the following command:\n{}' - .format(" ".join(new_command)) - ) - - def _build_package_finder(self, options, session, - platform=None, python_versions=None, - abi=None, implementation=None): - """ - Create a package finder appropriate to this requirement command. - """ - index_urls = [options.index_url] + options.extra_index_urls - if options.no_index: - logger.debug('Ignoring indexes: %s', ','.join(index_urls)) - index_urls = [] - - return PackageFinder( - find_links=options.find_links, - format_control=options.format_control, - index_urls=index_urls, - trusted_hosts=options.trusted_hosts, - allow_all_prereleases=options.pre, - process_dependency_links=options.process_dependency_links, - session=session, - platform=platform, - versions=python_versions, - abi=abi, - implementation=implementation, - ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/baseparser.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/baseparser.py deleted file mode 100644 index ed28a1b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/baseparser.py +++ /dev/null @@ -1,240 +0,0 @@ -"""Base option parser setup""" -from __future__ import absolute_import - -import logging -import optparse -import sys -import textwrap -from distutils.util import strtobool - -from pip._vendor.six import string_types - -from pip._internal.compat import get_terminal_size -from pip._internal.configuration import Configuration, ConfigurationError - -logger = logging.getLogger(__name__) - - -class PrettyHelpFormatter(optparse.IndentedHelpFormatter): - """A prettier/less verbose help formatter for optparse.""" - - def __init__(self, *args, **kwargs): - # help position must be aligned with __init__.parseopts.description - kwargs['max_help_position'] = 30 - kwargs['indent_increment'] = 1 - kwargs['width'] = get_terminal_size()[0] - 2 - optparse.IndentedHelpFormatter.__init__(self, *args, **kwargs) - - def format_option_strings(self, option): - return self._format_option_strings(option, ' <%s>', ', ') - - def _format_option_strings(self, option, mvarfmt=' <%s>', optsep=', '): - """ - Return a comma-separated list of option strings and metavars. - - :param option: tuple of (short opt, long opt), e.g: ('-f', '--format') - :param mvarfmt: metavar format string - evaluated as mvarfmt % metavar - :param optsep: separator - """ - opts = [] - - if option._short_opts: - opts.append(option._short_opts[0]) - if option._long_opts: - opts.append(option._long_opts[0]) - if len(opts) > 1: - opts.insert(1, optsep) - - if option.takes_value(): - metavar = option.metavar or option.dest.lower() - opts.append(mvarfmt % metavar.lower()) - - return ''.join(opts) - - def format_heading(self, heading): - if heading == 'Options': - return '' - return heading + ':\n' - - def format_usage(self, usage): - """ - Ensure there is only one newline between usage and the first heading - if there is no description. - """ - msg = '\nUsage: %s\n' % self.indent_lines(textwrap.dedent(usage), " ") - return msg - - def format_description(self, description): - # leave full control over description to us - if description: - if hasattr(self.parser, 'main'): - label = 'Commands' - else: - label = 'Description' - # some doc strings have initial newlines, some don't - description = description.lstrip('\n') - # some doc strings have final newlines and spaces, some don't - description = description.rstrip() - # dedent, then reindent - description = self.indent_lines(textwrap.dedent(description), " ") - description = '%s:\n%s\n' % (label, description) - return description - else: - return '' - - def format_epilog(self, epilog): - # leave full control over epilog to us - if epilog: - return epilog - else: - return '' - - def indent_lines(self, text, indent): - new_lines = [indent + line for line in text.split('\n')] - return "\n".join(new_lines) - - -class UpdatingDefaultsHelpFormatter(PrettyHelpFormatter): - """Custom help formatter for use in ConfigOptionParser. - - This is updates the defaults before expanding them, allowing - them to show up correctly in the help listing. - """ - - def expand_default(self, option): - if self.parser is not None: - self.parser._update_defaults(self.parser.defaults) - return optparse.IndentedHelpFormatter.expand_default(self, option) - - -class CustomOptionParser(optparse.OptionParser): - - def insert_option_group(self, idx, *args, **kwargs): - """Insert an OptionGroup at a given position.""" - group = self.add_option_group(*args, **kwargs) - - self.option_groups.pop() - self.option_groups.insert(idx, group) - - return group - - @property - def option_list_all(self): - """Get a list of all options, including those in option groups.""" - res = self.option_list[:] - for i in self.option_groups: - res.extend(i.option_list) - - return res - - -class ConfigOptionParser(CustomOptionParser): - """Custom option parser which updates its defaults by checking the - configuration files and environmental variables""" - - def __init__(self, *args, **kwargs): - self.name = kwargs.pop('name') - - isolated = kwargs.pop("isolated", False) - self.config = Configuration(isolated) - - assert self.name - optparse.OptionParser.__init__(self, *args, **kwargs) - - def check_default(self, option, key, val): - try: - return option.check_value(key, val) - except optparse.OptionValueError as exc: - print("An error occurred during configuration: %s" % exc) - sys.exit(3) - - def _get_ordered_configuration_items(self): - # Configuration gives keys in an unordered manner. Order them. - override_order = ["global", self.name, ":env:"] - - # Pool the options into different groups - section_items = {name: [] for name in override_order} - for section_key, val in self.config.items(): - # ignore empty values - if not val: - logger.debug( - "Ignoring configuration key '%s' as it's value is empty.", - section_key - ) - continue - - section, key = section_key.split(".", 1) - if section in override_order: - section_items[section].append((key, val)) - - # Yield each group in their override order - for section in override_order: - for key, val in section_items[section]: - yield key, val - - def _update_defaults(self, defaults): - """Updates the given defaults with values from the config files and - the environ. Does a little special handling for certain types of - options (lists).""" - - # Accumulate complex default state. - self.values = optparse.Values(self.defaults) - late_eval = set() - # Then set the options with those values - for key, val in self._get_ordered_configuration_items(): - # '--' because configuration supports only long names - option = self.get_option('--' + key) - - # Ignore options not present in this parser. E.g. non-globals put - # in [global] by users that want them to apply to all applicable - # commands. - if option is None: - continue - - if option.action in ('store_true', 'store_false', 'count'): - val = strtobool(val) - elif option.action == 'append': - val = val.split() - val = [self.check_default(option, key, v) for v in val] - elif option.action == 'callback': - late_eval.add(option.dest) - opt_str = option.get_opt_string() - val = option.convert_value(opt_str, val) - # From take_action - args = option.callback_args or () - kwargs = option.callback_kwargs or {} - option.callback(option, opt_str, val, self, *args, **kwargs) - else: - val = self.check_default(option, key, val) - - defaults[option.dest] = val - - for key in late_eval: - defaults[key] = getattr(self.values, key) - self.values = None - return defaults - - def get_default_values(self): - """Overriding to make updating the defaults after instantiation of - the option parser possible, _update_defaults() does the dirty work.""" - if not self.process_default_values: - # Old, pre-Optik 1.5 behaviour. - return optparse.Values(self.defaults) - - # Load the configuration, or error out in case of an error - try: - self.config.load() - except ConfigurationError as err: - self.exit(2, err.args[0]) - - defaults = self._update_defaults(self.defaults.copy()) # ours - for option in self._get_all_options(): - default = defaults.get(option.dest) - if isinstance(default, string_types): - opt_str = option.get_opt_string() - defaults[option.dest] = option.check_value(opt_str, default) - return optparse.Values(defaults) - - def error(self, msg): - self.print_usage(sys.stderr) - self.exit(2, "%s\n" % msg) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/build_env.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/build_env.py deleted file mode 100644 index 8ad7735..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/build_env.py +++ /dev/null @@ -1,92 +0,0 @@ -"""Build Environment used for isolation during sdist building -""" - -import os -from distutils.sysconfig import get_python_lib -from sysconfig import get_paths - -from pip._internal.utils.temp_dir import TempDirectory - - -class BuildEnvironment(object): - """Creates and manages an isolated environment to install build deps - """ - - def __init__(self, no_clean): - self._temp_dir = TempDirectory(kind="build-env") - self._no_clean = no_clean - - @property - def path(self): - return self._temp_dir.path - - def __enter__(self): - self._temp_dir.create() - - self.save_path = os.environ.get('PATH', None) - self.save_pythonpath = os.environ.get('PYTHONPATH', None) - self.save_nousersite = os.environ.get('PYTHONNOUSERSITE', None) - - install_scheme = 'nt' if (os.name == 'nt') else 'posix_prefix' - install_dirs = get_paths(install_scheme, vars={ - 'base': self.path, - 'platbase': self.path, - }) - - scripts = install_dirs['scripts'] - if self.save_path: - os.environ['PATH'] = scripts + os.pathsep + self.save_path - else: - os.environ['PATH'] = scripts + os.pathsep + os.defpath - - # Note: prefer distutils' sysconfig to get the - # library paths so PyPy is correctly supported. - purelib = get_python_lib(plat_specific=0, prefix=self.path) - platlib = get_python_lib(plat_specific=1, prefix=self.path) - if purelib == platlib: - lib_dirs = purelib - else: - lib_dirs = purelib + os.pathsep + platlib - if self.save_pythonpath: - os.environ['PYTHONPATH'] = lib_dirs + os.pathsep + \ - self.save_pythonpath - else: - os.environ['PYTHONPATH'] = lib_dirs - - os.environ['PYTHONNOUSERSITE'] = '1' - - return self.path - - def __exit__(self, exc_type, exc_val, exc_tb): - if not self._no_clean: - self._temp_dir.cleanup() - - def restore_var(varname, old_value): - if old_value is None: - os.environ.pop(varname, None) - else: - os.environ[varname] = old_value - - restore_var('PATH', self.save_path) - restore_var('PYTHONPATH', self.save_pythonpath) - restore_var('PYTHONNOUSERSITE', self.save_nousersite) - - def cleanup(self): - self._temp_dir.cleanup() - - -class NoOpBuildEnvironment(BuildEnvironment): - """A no-op drop-in replacement for BuildEnvironment - """ - - def __init__(self, no_clean): - pass - - def __enter__(self): - pass - - def __exit__(self, exc_type, exc_val, exc_tb): - pass - - def cleanup(self): - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cache.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cache.py deleted file mode 100644 index 5547d73..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cache.py +++ /dev/null @@ -1,202 +0,0 @@ -"""Cache Management -""" - -import errno -import hashlib -import logging -import os - -from pip._vendor.packaging.utils import canonicalize_name - -from pip._internal import index -from pip._internal.compat import expanduser -from pip._internal.download import path_to_url -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.wheel import InvalidWheelFilename, Wheel - -logger = logging.getLogger(__name__) - - -class Cache(object): - """An abstract class - provides cache directories for data from links - - - :param cache_dir: The root of the cache. - :param format_control: A pip.index.FormatControl object to limit - binaries being read from the cache. - :param allowed_formats: which formats of files the cache should store. - ('binary' and 'source' are the only allowed values) - """ - - def __init__(self, cache_dir, format_control, allowed_formats): - super(Cache, self).__init__() - self.cache_dir = expanduser(cache_dir) if cache_dir else None - self.format_control = format_control - self.allowed_formats = allowed_formats - - _valid_formats = {"source", "binary"} - assert self.allowed_formats.union(_valid_formats) == _valid_formats - - def _get_cache_path_parts(self, link): - """Get parts of part that must be os.path.joined with cache_dir - """ - - # We want to generate an url to use as our cache key, we don't want to - # just re-use the URL because it might have other items in the fragment - # and we don't care about those. - key_parts = [link.url_without_fragment] - if link.hash_name is not None and link.hash is not None: - key_parts.append("=".join([link.hash_name, link.hash])) - key_url = "#".join(key_parts) - - # Encode our key url with sha224, we'll use this because it has similar - # security properties to sha256, but with a shorter total output (and - # thus less secure). However the differences don't make a lot of - # difference for our use case here. - hashed = hashlib.sha224(key_url.encode()).hexdigest() - - # We want to nest the directories some to prevent having a ton of top - # level directories where we might run out of sub directories on some - # FS. - parts = [hashed[:2], hashed[2:4], hashed[4:6], hashed[6:]] - - return parts - - def _get_candidates(self, link, package_name): - can_not_cache = ( - not self.cache_dir or - not package_name or - not link - ) - if can_not_cache: - return [] - - canonical_name = canonicalize_name(package_name) - formats = index.fmt_ctl_formats( - self.format_control, canonical_name - ) - if not self.allowed_formats.intersection(formats): - return [] - - root = self.get_path_for_link(link) - try: - return os.listdir(root) - except OSError as err: - if err.errno in {errno.ENOENT, errno.ENOTDIR}: - return [] - raise - - def get_path_for_link(self, link): - """Return a directory to store cached items in for link. - """ - raise NotImplementedError() - - def get(self, link, package_name): - """Returns a link to a cached item if it exists, otherwise returns the - passed link. - """ - raise NotImplementedError() - - def _link_for_candidate(self, link, candidate): - root = self.get_path_for_link(link) - path = os.path.join(root, candidate) - - return index.Link(path_to_url(path)) - - def cleanup(self): - pass - - -class SimpleWheelCache(Cache): - """A cache of wheels for future installs. - """ - - def __init__(self, cache_dir, format_control): - super(SimpleWheelCache, self).__init__( - cache_dir, format_control, {"binary"} - ) - - def get_path_for_link(self, link): - """Return a directory to store cached wheels for link - - Because there are M wheels for any one sdist, we provide a directory - to cache them in, and then consult that directory when looking up - cache hits. - - We only insert things into the cache if they have plausible version - numbers, so that we don't contaminate the cache with things that were - not unique. E.g. ./package might have dozens of installs done for it - and build a version of 0.0...and if we built and cached a wheel, we'd - end up using the same wheel even if the source has been edited. - - :param link: The link of the sdist for which this will cache wheels. - """ - parts = self._get_cache_path_parts(link) - - # Store wheels within the root cache_dir - return os.path.join(self.cache_dir, "wheels", *parts) - - def get(self, link, package_name): - candidates = [] - - for wheel_name in self._get_candidates(link, package_name): - try: - wheel = Wheel(wheel_name) - except InvalidWheelFilename: - continue - if not wheel.supported(): - # Built for a different python/arch/etc - continue - candidates.append((wheel.support_index_min(), wheel_name)) - - if not candidates: - return link - - return self._link_for_candidate(link, min(candidates)[1]) - - -class EphemWheelCache(SimpleWheelCache): - """A SimpleWheelCache that creates it's own temporary cache directory - """ - - def __init__(self, format_control): - self._temp_dir = TempDirectory(kind="ephem-wheel-cache") - self._temp_dir.create() - - super(EphemWheelCache, self).__init__( - self._temp_dir.path, format_control - ) - - def cleanup(self): - self._temp_dir.cleanup() - - -class WheelCache(Cache): - """Wraps EphemWheelCache and SimpleWheelCache into a single Cache - - This Cache allows for gracefully degradation, using the ephem wheel cache - when a certain link is not found in the simple wheel cache first. - """ - - def __init__(self, cache_dir, format_control): - super(WheelCache, self).__init__( - cache_dir, format_control, {'binary'} - ) - self._wheel_cache = SimpleWheelCache(cache_dir, format_control) - self._ephem_cache = EphemWheelCache(format_control) - - def get_path_for_link(self, link): - return self._wheel_cache.get_path_for_link(link) - - def get_ephem_path_for_link(self, link): - return self._ephem_cache.get_path_for_link(link) - - def get(self, link, package_name): - retval = self._wheel_cache.get(link, package_name) - if retval is link: - retval = self._ephem_cache.get(link, package_name) - return retval - - def cleanup(self): - self._wheel_cache.cleanup() - self._ephem_cache.cleanup() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cmdoptions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cmdoptions.py deleted file mode 100644 index 58854e3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/cmdoptions.py +++ /dev/null @@ -1,609 +0,0 @@ -""" -shared options and groups - -The principle here is to define options once, but *not* instantiate them -globally. One reason being that options with action='append' can carry state -between parses. pip parses general options twice internally, and shouldn't -pass on state. To be consistent, all options will follow this design. - -""" -from __future__ import absolute_import - -import warnings -from functools import partial -from optparse import SUPPRESS_HELP, Option, OptionGroup - -from pip._internal.index import ( - FormatControl, fmt_ctl_handle_mutual_exclude, fmt_ctl_no_binary, -) -from pip._internal.locations import USER_CACHE_DIR, src_prefix -from pip._internal.models import PyPI -from pip._internal.utils.hashes import STRONG_HASHES -from pip._internal.utils.typing import MYPY_CHECK_RUNNING -from pip._internal.utils.ui import BAR_TYPES - -if MYPY_CHECK_RUNNING: - from typing import Any - - -def make_option_group(group, parser): - """ - Return an OptionGroup object - group -- assumed to be dict with 'name' and 'options' keys - parser -- an optparse Parser - """ - option_group = OptionGroup(parser, group['name']) - for option in group['options']: - option_group.add_option(option()) - return option_group - - -def check_install_build_global(options, check_options=None): - """Disable wheels if per-setup.py call options are set. - - :param options: The OptionParser options to update. - :param check_options: The options to check, if not supplied defaults to - options. - """ - if check_options is None: - check_options = options - - def getname(n): - return getattr(check_options, n, None) - names = ["build_options", "global_options", "install_options"] - if any(map(getname, names)): - control = options.format_control - fmt_ctl_no_binary(control) - warnings.warn( - 'Disabling all use of wheels due to the use of --build-options ' - '/ --global-options / --install-options.', stacklevel=2, - ) - - -########### -# options # -########### - -help_ = partial( - Option, - '-h', '--help', - dest='help', - action='help', - help='Show help.', -) # type: Any - -isolated_mode = partial( - Option, - "--isolated", - dest="isolated_mode", - action="store_true", - default=False, - help=( - "Run pip in an isolated mode, ignoring environment variables and user " - "configuration." - ), -) - -require_virtualenv = partial( - Option, - # Run only if inside a virtualenv, bail if not. - '--require-virtualenv', '--require-venv', - dest='require_venv', - action='store_true', - default=False, - help=SUPPRESS_HELP -) # type: Any - -verbose = partial( - Option, - '-v', '--verbose', - dest='verbose', - action='count', - default=0, - help='Give more output. Option is additive, and can be used up to 3 times.' -) - -no_color = partial( - Option, - '--no-color', - dest='no_color', - action='store_true', - default=False, - help="Suppress colored output", -) - -version = partial( - Option, - '-V', '--version', - dest='version', - action='store_true', - help='Show version and exit.', -) # type: Any - -quiet = partial( - Option, - '-q', '--quiet', - dest='quiet', - action='count', - default=0, - help=( - 'Give less output. Option is additive, and can be used up to 3' - ' times (corresponding to WARNING, ERROR, and CRITICAL logging' - ' levels).' - ), -) # type: Any - -progress_bar = partial( - Option, - '--progress-bar', - dest='progress_bar', - type='choice', - choices=list(BAR_TYPES.keys()), - default='on', - help=( - 'Specify type of progress to be displayed [' + - '|'.join(BAR_TYPES.keys()) + '] (default: %default)' - ), -) # type: Any - -log = partial( - Option, - "--log", "--log-file", "--local-log", - dest="log", - metavar="path", - help="Path to a verbose appending log." -) # type: Any - -no_input = partial( - Option, - # Don't ask for input - '--no-input', - dest='no_input', - action='store_true', - default=False, - help=SUPPRESS_HELP -) # type: Any - -proxy = partial( - Option, - '--proxy', - dest='proxy', - type='str', - default='', - help="Specify a proxy in the form [user:passwd@]proxy.server:port." -) # type: Any - -retries = partial( - Option, - '--retries', - dest='retries', - type='int', - default=5, - help="Maximum number of retries each connection should attempt " - "(default %default times).", -) # type: Any - -timeout = partial( - Option, - '--timeout', '--default-timeout', - metavar='sec', - dest='timeout', - type='float', - default=15, - help='Set the socket timeout (default %default seconds).', -) # type: Any - -skip_requirements_regex = partial( - Option, - # A regex to be used to skip requirements - '--skip-requirements-regex', - dest='skip_requirements_regex', - type='str', - default='', - help=SUPPRESS_HELP, -) # type: Any - - -def exists_action(): - return Option( - # Option when path already exist - '--exists-action', - dest='exists_action', - type='choice', - choices=['s', 'i', 'w', 'b', 'a'], - default=[], - action='append', - metavar='action', - help="Default action when a path already exists: " - "(s)witch, (i)gnore, (w)ipe, (b)ackup, (a)bort).", - ) - - -cert = partial( - Option, - '--cert', - dest='cert', - type='str', - metavar='path', - help="Path to alternate CA bundle.", -) # type: Any - -client_cert = partial( - Option, - '--client-cert', - dest='client_cert', - type='str', - default=None, - metavar='path', - help="Path to SSL client certificate, a single file containing the " - "private key and the certificate in PEM format.", -) # type: Any - -index_url = partial( - Option, - '-i', '--index-url', '--pypi-url', - dest='index_url', - metavar='URL', - default=PyPI.simple_url, - help="Base URL of Python Package Index (default %default). " - "This should point to a repository compliant with PEP 503 " - "(the simple repository API) or a local directory laid out " - "in the same format.", -) # type: Any - - -def extra_index_url(): - return Option( - '--extra-index-url', - dest='extra_index_urls', - metavar='URL', - action='append', - default=[], - help="Extra URLs of package indexes to use in addition to " - "--index-url. Should follow the same rules as " - "--index-url.", - ) - - -no_index = partial( - Option, - '--no-index', - dest='no_index', - action='store_true', - default=False, - help='Ignore package index (only looking at --find-links URLs instead).', -) # type: Any - - -def find_links(): - return Option( - '-f', '--find-links', - dest='find_links', - action='append', - default=[], - metavar='url', - help="If a url or path to an html file, then parse for links to " - "archives. If a local path or file:// url that's a directory, " - "then look for archives in the directory listing.", - ) - - -def trusted_host(): - return Option( - "--trusted-host", - dest="trusted_hosts", - action="append", - metavar="HOSTNAME", - default=[], - help="Mark this host as trusted, even though it does not have valid " - "or any HTTPS.", - ) - - -# Remove after 1.5 -process_dependency_links = partial( - Option, - "--process-dependency-links", - dest="process_dependency_links", - action="store_true", - default=False, - help="Enable the processing of dependency links.", -) # type: Any - - -def constraints(): - return Option( - '-c', '--constraint', - dest='constraints', - action='append', - default=[], - metavar='file', - help='Constrain versions using the given constraints file. ' - 'This option can be used multiple times.' - ) - - -def requirements(): - return Option( - '-r', '--requirement', - dest='requirements', - action='append', - default=[], - metavar='file', - help='Install from the given requirements file. ' - 'This option can be used multiple times.' - ) - - -def editable(): - return Option( - '-e', '--editable', - dest='editables', - action='append', - default=[], - metavar='path/url', - help=('Install a project in editable mode (i.e. setuptools ' - '"develop mode") from a local project path or a VCS url.'), - ) - - -src = partial( - Option, - '--src', '--source', '--source-dir', '--source-directory', - dest='src_dir', - metavar='dir', - default=src_prefix, - help='Directory to check out editable projects into. ' - 'The default in a virtualenv is "/src". ' - 'The default for global installs is "/src".' -) # type: Any - - -def _get_format_control(values, option): - """Get a format_control object.""" - return getattr(values, option.dest) - - -def _handle_no_binary(option, opt_str, value, parser): - existing = getattr(parser.values, option.dest) - fmt_ctl_handle_mutual_exclude( - value, existing.no_binary, existing.only_binary, - ) - - -def _handle_only_binary(option, opt_str, value, parser): - existing = getattr(parser.values, option.dest) - fmt_ctl_handle_mutual_exclude( - value, existing.only_binary, existing.no_binary, - ) - - -def no_binary(): - return Option( - "--no-binary", dest="format_control", action="callback", - callback=_handle_no_binary, type="str", - default=FormatControl(set(), set()), - help="Do not use binary packages. Can be supplied multiple times, and " - "each time adds to the existing value. Accepts either :all: to " - "disable all binary packages, :none: to empty the set, or one or " - "more package names with commas between them. Note that some " - "packages are tricky to compile and may fail to install when " - "this option is used on them.", - ) - - -def only_binary(): - return Option( - "--only-binary", dest="format_control", action="callback", - callback=_handle_only_binary, type="str", - default=FormatControl(set(), set()), - help="Do not use source packages. Can be supplied multiple times, and " - "each time adds to the existing value. Accepts either :all: to " - "disable all source packages, :none: to empty the set, or one or " - "more package names with commas between them. Packages without " - "binary distributions will fail to install when this option is " - "used on them.", - ) - - -cache_dir = partial( - Option, - "--cache-dir", - dest="cache_dir", - default=USER_CACHE_DIR, - metavar="dir", - help="Store the cache data in ." -) - -no_cache = partial( - Option, - "--no-cache-dir", - dest="cache_dir", - action="store_false", - help="Disable the cache.", -) - -no_deps = partial( - Option, - '--no-deps', '--no-dependencies', - dest='ignore_dependencies', - action='store_true', - default=False, - help="Don't install package dependencies.", -) # type: Any - -build_dir = partial( - Option, - '-b', '--build', '--build-dir', '--build-directory', - dest='build_dir', - metavar='dir', - help='Directory to unpack packages into and build in. Note that ' - 'an initial build still takes place in a temporary directory. ' - 'The location of temporary directories can be controlled by setting ' - 'the TMPDIR environment variable (TEMP on Windows) appropriately. ' - 'When passed, build directories are not cleaned in case of failures.' -) # type: Any - -ignore_requires_python = partial( - Option, - '--ignore-requires-python', - dest='ignore_requires_python', - action='store_true', - help='Ignore the Requires-Python information.' -) # type: Any - -no_build_isolation = partial( - Option, - '--no-build-isolation', - dest='build_isolation', - action='store_false', - default=True, - help='Disable isolation when building a modern source distribution. ' - 'Build dependencies specified by PEP 518 must be already installed ' - 'if this option is used.' -) # type: Any - -install_options = partial( - Option, - '--install-option', - dest='install_options', - action='append', - metavar='options', - help="Extra arguments to be supplied to the setup.py install " - "command (use like --install-option=\"--install-scripts=/usr/local/" - "bin\"). Use multiple --install-option options to pass multiple " - "options to setup.py install. If you are using an option with a " - "directory path, be sure to use absolute path.", -) # type: Any - -global_options = partial( - Option, - '--global-option', - dest='global_options', - action='append', - metavar='options', - help="Extra global options to be supplied to the setup.py " - "call before the install command.", -) # type: Any - -no_clean = partial( - Option, - '--no-clean', - action='store_true', - default=False, - help="Don't clean up build directories)." -) # type: Any - -pre = partial( - Option, - '--pre', - action='store_true', - default=False, - help="Include pre-release and development versions. By default, " - "pip only finds stable versions.", -) # type: Any - -disable_pip_version_check = partial( - Option, - "--disable-pip-version-check", - dest="disable_pip_version_check", - action="store_true", - default=False, - help="Don't periodically check PyPI to determine whether a new version " - "of pip is available for download. Implied with --no-index.", -) # type: Any - - -# Deprecated, Remove later -always_unzip = partial( - Option, - '-Z', '--always-unzip', - dest='always_unzip', - action='store_true', - help=SUPPRESS_HELP, -) # type: Any - - -def _merge_hash(option, opt_str, value, parser): - """Given a value spelled "algo:digest", append the digest to a list - pointed to in a dict by the algo name.""" - if not parser.values.hashes: - parser.values.hashes = {} - try: - algo, digest = value.split(':', 1) - except ValueError: - parser.error('Arguments to %s must be a hash name ' - 'followed by a value, like --hash=sha256:abcde...' % - opt_str) - if algo not in STRONG_HASHES: - parser.error('Allowed hash algorithms for %s are %s.' % - (opt_str, ', '.join(STRONG_HASHES))) - parser.values.hashes.setdefault(algo, []).append(digest) - - -hash = partial( - Option, - '--hash', - # Hash values eventually end up in InstallRequirement.hashes due to - # __dict__ copying in process_line(). - dest='hashes', - action='callback', - callback=_merge_hash, - type='string', - help="Verify that the package's archive matches this " - 'hash before installing. Example: --hash=sha256:abcdef...', -) # type: Any - - -require_hashes = partial( - Option, - '--require-hashes', - dest='require_hashes', - action='store_true', - default=False, - help='Require a hash to check each requirement against, for ' - 'repeatable installs. This option is implied when any package in a ' - 'requirements file has a --hash option.', -) # type: Any - - -########## -# groups # -########## - -general_group = { - 'name': 'General Options', - 'options': [ - help_, - isolated_mode, - require_virtualenv, - verbose, - version, - quiet, - log, - no_input, - proxy, - retries, - timeout, - skip_requirements_regex, - exists_action, - trusted_host, - cert, - client_cert, - cache_dir, - no_cache, - disable_pip_version_check, - no_color, - ] -} - -index_group = { - 'name': 'Package Index Options', - 'options': [ - index_url, - extra_index_url, - no_index, - find_links, - process_dependency_links, - ] -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/__init__.py deleted file mode 100644 index d44e6f1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/__init__.py +++ /dev/null @@ -1,79 +0,0 @@ -""" -Package containing all pip commands -""" -from __future__ import absolute_import - -from pip._internal.commands.completion import CompletionCommand -from pip._internal.commands.configuration import ConfigurationCommand -from pip._internal.commands.download import DownloadCommand -from pip._internal.commands.freeze import FreezeCommand -from pip._internal.commands.hash import HashCommand -from pip._internal.commands.help import HelpCommand -from pip._internal.commands.list import ListCommand -from pip._internal.commands.check import CheckCommand -from pip._internal.commands.search import SearchCommand -from pip._internal.commands.show import ShowCommand -from pip._internal.commands.install import InstallCommand -from pip._internal.commands.uninstall import UninstallCommand -from pip._internal.commands.wheel import WheelCommand - -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import List, Type - from pip._internal.basecommand import Command - -commands_order = [ - InstallCommand, - DownloadCommand, - UninstallCommand, - FreezeCommand, - ListCommand, - ShowCommand, - CheckCommand, - ConfigurationCommand, - SearchCommand, - WheelCommand, - HashCommand, - CompletionCommand, - HelpCommand, -] # type: List[Type[Command]] - -commands_dict = {c.name: c for c in commands_order} - - -def get_summaries(ordered=True): - """Yields sorted (command name, command summary) tuples.""" - - if ordered: - cmditems = _sort_commands(commands_dict, commands_order) - else: - cmditems = commands_dict.items() - - for name, command_class in cmditems: - yield (name, command_class.summary) - - -def get_similar_commands(name): - """Command name auto-correct.""" - from difflib import get_close_matches - - name = name.lower() - - close_commands = get_close_matches(name, commands_dict.keys()) - - if close_commands: - return close_commands[0] - else: - return False - - -def _sort_commands(cmddict, order): - def keyfn(key): - try: - return order.index(key[1]) - except ValueError: - # unordered items should come last - return 0xff - - return sorted(cmddict.items(), key=keyfn) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/check.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/check.py deleted file mode 100644 index b1bf38a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/check.py +++ /dev/null @@ -1,42 +0,0 @@ -import logging - -from pip._internal.basecommand import Command -from pip._internal.operations.check import ( - check_package_set, create_package_set_from_installed, -) -from pip._internal.utils.misc import get_installed_distributions - -logger = logging.getLogger(__name__) - - -class CheckCommand(Command): - """Verify installed packages have compatible dependencies.""" - name = 'check' - usage = """ - %prog [options]""" - summary = 'Verify installed packages have compatible dependencies.' - - def run(self, options, args): - package_set = create_package_set_from_installed() - missing, conflicting = check_package_set(package_set) - - for project_name in missing: - version = package_set[project_name].version - for dependency in missing[project_name]: - logger.info( - "%s %s requires %s, which is not installed.", - project_name, version, dependency[0], - ) - - for project_name in conflicting: - version = package_set[project_name].version - for dep_name, dep_version, req in conflicting[project_name]: - logger.info( - "%s %s has requirement %s, but you have %s %s.", - project_name, version, req, dep_name, dep_version, - ) - - if missing or conflicting: - return 1 - else: - logger.info("No broken requirements found.") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/completion.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/completion.py deleted file mode 100644 index 8da1e83..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/completion.py +++ /dev/null @@ -1,94 +0,0 @@ -from __future__ import absolute_import - -import sys -import textwrap - -from pip._internal.basecommand import Command -from pip._internal.utils.misc import get_prog - -BASE_COMPLETION = """ -# pip %(shell)s completion start%(script)s# pip %(shell)s completion end -""" - -COMPLETION_SCRIPTS = { - 'bash': """ - _pip_completion() - { - COMPREPLY=( $( COMP_WORDS="${COMP_WORDS[*]}" \\ - COMP_CWORD=$COMP_CWORD \\ - PIP_AUTO_COMPLETE=1 $1 ) ) - } - complete -o default -F _pip_completion %(prog)s - """, - 'zsh': """ - function _pip_completion { - local words cword - read -Ac words - read -cn cword - reply=( $( COMP_WORDS="$words[*]" \\ - COMP_CWORD=$(( cword-1 )) \\ - PIP_AUTO_COMPLETE=1 $words[1] ) ) - } - compctl -K _pip_completion %(prog)s - """, - 'fish': """ - function __fish_complete_pip - set -lx COMP_WORDS (commandline -o) "" - set -lx COMP_CWORD ( \\ - math (contains -i -- (commandline -t) $COMP_WORDS)-1 \\ - ) - set -lx PIP_AUTO_COMPLETE 1 - string split \\ -- (eval $COMP_WORDS[1]) - end - complete -fa "(__fish_complete_pip)" -c %(prog)s - """, -} - - -class CompletionCommand(Command): - """A helper command to be used for command completion.""" - name = 'completion' - summary = 'A helper command used for command completion.' - ignore_require_venv = True - - def __init__(self, *args, **kw): - super(CompletionCommand, self).__init__(*args, **kw) - - cmd_opts = self.cmd_opts - - cmd_opts.add_option( - '--bash', '-b', - action='store_const', - const='bash', - dest='shell', - help='Emit completion code for bash') - cmd_opts.add_option( - '--zsh', '-z', - action='store_const', - const='zsh', - dest='shell', - help='Emit completion code for zsh') - cmd_opts.add_option( - '--fish', '-f', - action='store_const', - const='fish', - dest='shell', - help='Emit completion code for fish') - - self.parser.insert_option_group(0, cmd_opts) - - def run(self, options, args): - """Prints the completion code of the given shell""" - shells = COMPLETION_SCRIPTS.keys() - shell_options = ['--' + shell for shell in sorted(shells)] - if options.shell in shells: - script = textwrap.dedent( - COMPLETION_SCRIPTS.get(options.shell, '') % { - 'prog': get_prog(), - } - ) - print(BASE_COMPLETION % {'script': script, 'shell': options.shell}) - else: - sys.stderr.write( - 'ERROR: You must pass %s\n' % ' or '.join(shell_options) - ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/configuration.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/configuration.py deleted file mode 100644 index e10d9a9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/configuration.py +++ /dev/null @@ -1,227 +0,0 @@ -import logging -import os -import subprocess - -from pip._internal.basecommand import Command -from pip._internal.configuration import Configuration, kinds -from pip._internal.exceptions import PipError -from pip._internal.locations import venv_config_file -from pip._internal.status_codes import ERROR, SUCCESS -from pip._internal.utils.misc import get_prog - -logger = logging.getLogger(__name__) - - -class ConfigurationCommand(Command): - """Manage local and global configuration. - - Subcommands: - - list: List the active configuration (or from the file specified) - edit: Edit the configuration file in an editor - get: Get the value associated with name - set: Set the name=value - unset: Unset the value associated with name - - If none of --user, --global and --venv are passed, a virtual - environment configuration file is used if one is active and the file - exists. Otherwise, all modifications happen on the to the user file by - default. - """ - - name = 'config' - usage = """ - %prog [] list - %prog [] [--editor ] edit - - %prog [] get name - %prog [] set name value - %prog [] unset name - """ - - summary = "Manage local and global configuration." - - def __init__(self, *args, **kwargs): - super(ConfigurationCommand, self).__init__(*args, **kwargs) - - self.configuration = None - - self.cmd_opts.add_option( - '--editor', - dest='editor', - action='store', - default=None, - help=( - 'Editor to use to edit the file. Uses VISUAL or EDITOR ' - 'environment variables if not provided.' - ) - ) - - self.cmd_opts.add_option( - '--global', - dest='global_file', - action='store_true', - default=False, - help='Use the system-wide configuration file only' - ) - - self.cmd_opts.add_option( - '--user', - dest='user_file', - action='store_true', - default=False, - help='Use the user configuration file only' - ) - - self.cmd_opts.add_option( - '--venv', - dest='venv_file', - action='store_true', - default=False, - help='Use the virtualenv configuration file only' - ) - - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - handlers = { - "list": self.list_values, - "edit": self.open_in_editor, - "get": self.get_name, - "set": self.set_name_value, - "unset": self.unset_name - } - - # Determine action - if not args or args[0] not in handlers: - logger.error("Need an action ({}) to perform.".format( - ", ".join(sorted(handlers))) - ) - return ERROR - - action = args[0] - - # Determine which configuration files are to be loaded - # Depends on whether the command is modifying. - try: - load_only = self._determine_file( - options, need_value=(action in ["get", "set", "unset", "edit"]) - ) - except PipError as e: - logger.error(e.args[0]) - return ERROR - - # Load a new configuration - self.configuration = Configuration( - isolated=options.isolated_mode, load_only=load_only - ) - self.configuration.load() - - # Error handling happens here, not in the action-handlers. - try: - handlers[action](options, args[1:]) - except PipError as e: - logger.error(e.args[0]) - return ERROR - - return SUCCESS - - def _determine_file(self, options, need_value): - file_options = { - kinds.USER: options.user_file, - kinds.GLOBAL: options.global_file, - kinds.VENV: options.venv_file - } - - if sum(file_options.values()) == 0: - if not need_value: - return None - # Default to user, unless there's a virtualenv file. - elif os.path.exists(venv_config_file): - return kinds.VENV - else: - return kinds.USER - elif sum(file_options.values()) == 1: - # There's probably a better expression for this. - return [key for key in file_options if file_options[key]][0] - - raise PipError( - "Need exactly one file to operate upon " - "(--user, --venv, --global) to perform." - ) - - def list_values(self, options, args): - self._get_n_args(args, "list", n=0) - - for key, value in sorted(self.configuration.items()): - logger.info("%s=%r", key, value) - - def get_name(self, options, args): - key = self._get_n_args(args, "get [name]", n=1) - value = self.configuration.get_value(key) - - logger.info("%s", value) - - def set_name_value(self, options, args): - key, value = self._get_n_args(args, "set [name] [value]", n=2) - self.configuration.set_value(key, value) - - self._save_configuration() - - def unset_name(self, options, args): - key = self._get_n_args(args, "unset [name]", n=1) - self.configuration.unset_value(key) - - self._save_configuration() - - def open_in_editor(self, options, args): - editor = self._determine_editor(options) - - fname = self.configuration.get_file_to_edit() - if fname is None: - raise PipError("Could not determine appropriate file.") - - try: - subprocess.check_call([editor, fname]) - except subprocess.CalledProcessError as e: - raise PipError( - "Editor Subprocess exited with exit code {}" - .format(e.returncode) - ) - - def _get_n_args(self, args, example, n): - """Helper to make sure the command got the right number of arguments - """ - if len(args) != n: - msg = ( - 'Got unexpected number of arguments, expected {}. ' - '(example: "{} config {}")' - ).format(n, get_prog(), example) - raise PipError(msg) - - if n == 1: - return args[0] - else: - return args - - def _save_configuration(self): - # We successfully ran a modifying command. Need to save the - # configuration. - try: - self.configuration.save() - except Exception: - logger.error( - "Unable to save configuration. Please report this as a bug.", - exc_info=1 - ) - raise PipError("Internal Error.") - - def _determine_editor(self, options): - if options.editor is not None: - return options.editor - elif "VISUAL" in os.environ: - return os.environ["VISUAL"] - elif "EDITOR" in os.environ: - return os.environ["EDITOR"] - else: - raise PipError("Could not determine editor to use.") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/download.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/download.py deleted file mode 100644 index 916a470..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/download.py +++ /dev/null @@ -1,233 +0,0 @@ -from __future__ import absolute_import - -import logging -import os - -from pip._internal import cmdoptions -from pip._internal.basecommand import RequirementCommand -from pip._internal.exceptions import CommandError -from pip._internal.index import FormatControl -from pip._internal.operations.prepare import RequirementPreparer -from pip._internal.req import RequirementSet -from pip._internal.resolve import Resolver -from pip._internal.utils.filesystem import check_path_owner -from pip._internal.utils.misc import ensure_dir, normalize_path -from pip._internal.utils.temp_dir import TempDirectory - -logger = logging.getLogger(__name__) - - -class DownloadCommand(RequirementCommand): - """ - Download packages from: - - - PyPI (and other indexes) using requirement specifiers. - - VCS project urls. - - Local project directories. - - Local or remote source archives. - - pip also supports downloading from "requirements files", which provide - an easy way to specify a whole environment to be downloaded. - """ - name = 'download' - - usage = """ - %prog [options] [package-index-options] ... - %prog [options] -r [package-index-options] ... - %prog [options] ... - %prog [options] ... - %prog [options] ...""" - - summary = 'Download packages.' - - def __init__(self, *args, **kw): - super(DownloadCommand, self).__init__(*args, **kw) - - cmd_opts = self.cmd_opts - - cmd_opts.add_option(cmdoptions.constraints()) - cmd_opts.add_option(cmdoptions.requirements()) - cmd_opts.add_option(cmdoptions.build_dir()) - cmd_opts.add_option(cmdoptions.no_deps()) - cmd_opts.add_option(cmdoptions.global_options()) - cmd_opts.add_option(cmdoptions.no_binary()) - cmd_opts.add_option(cmdoptions.only_binary()) - cmd_opts.add_option(cmdoptions.src()) - cmd_opts.add_option(cmdoptions.pre()) - cmd_opts.add_option(cmdoptions.no_clean()) - cmd_opts.add_option(cmdoptions.require_hashes()) - cmd_opts.add_option(cmdoptions.progress_bar()) - cmd_opts.add_option(cmdoptions.no_build_isolation()) - - cmd_opts.add_option( - '-d', '--dest', '--destination-dir', '--destination-directory', - dest='download_dir', - metavar='dir', - default=os.curdir, - help=("Download packages into ."), - ) - - cmd_opts.add_option( - '--platform', - dest='platform', - metavar='platform', - default=None, - help=("Only download wheels compatible with . " - "Defaults to the platform of the running system."), - ) - - cmd_opts.add_option( - '--python-version', - dest='python_version', - metavar='python_version', - default=None, - help=("Only download wheels compatible with Python " - "interpreter version . If not specified, then the " - "current system interpreter minor version is used. A major " - "version (e.g. '2') can be specified to match all " - "minor revs of that major version. A minor version " - "(e.g. '34') can also be specified."), - ) - - cmd_opts.add_option( - '--implementation', - dest='implementation', - metavar='implementation', - default=None, - help=("Only download wheels compatible with Python " - "implementation , e.g. 'pp', 'jy', 'cp', " - " or 'ip'. If not specified, then the current " - "interpreter implementation is used. Use 'py' to force " - "implementation-agnostic wheels."), - ) - - cmd_opts.add_option( - '--abi', - dest='abi', - metavar='abi', - default=None, - help=("Only download wheels compatible with Python " - "abi , e.g. 'pypy_41'. If not specified, then the " - "current interpreter abi tag is used. Generally " - "you will need to specify --implementation, " - "--platform, and --python-version when using " - "this option."), - ) - - index_opts = cmdoptions.make_option_group( - cmdoptions.index_group, - self.parser, - ) - - self.parser.insert_option_group(0, index_opts) - self.parser.insert_option_group(0, cmd_opts) - - def run(self, options, args): - options.ignore_installed = True - # editable doesn't really make sense for `pip download`, but the bowels - # of the RequirementSet code require that property. - options.editables = [] - - if options.python_version: - python_versions = [options.python_version] - else: - python_versions = None - - dist_restriction_set = any([ - options.python_version, - options.platform, - options.abi, - options.implementation, - ]) - binary_only = FormatControl(set(), {':all:'}) - no_sdist_dependencies = ( - options.format_control != binary_only and - not options.ignore_dependencies - ) - if dist_restriction_set and no_sdist_dependencies: - raise CommandError( - "When restricting platform and interpreter constraints using " - "--python-version, --platform, --abi, or --implementation, " - "either --no-deps must be set, or --only-binary=:all: must be " - "set and --no-binary must not be set (or must be set to " - ":none:)." - ) - - options.src_dir = os.path.abspath(options.src_dir) - options.download_dir = normalize_path(options.download_dir) - - ensure_dir(options.download_dir) - - with self._build_session(options) as session: - finder = self._build_package_finder( - options=options, - session=session, - platform=options.platform, - python_versions=python_versions, - abi=options.abi, - implementation=options.implementation, - ) - build_delete = (not (options.no_clean or options.build_dir)) - if options.cache_dir and not check_path_owner(options.cache_dir): - logger.warning( - "The directory '%s' or its parent directory is not owned " - "by the current user and caching wheels has been " - "disabled. check the permissions and owner of that " - "directory. If executing pip with sudo, you may want " - "sudo's -H flag.", - options.cache_dir, - ) - options.cache_dir = None - - with TempDirectory( - options.build_dir, delete=build_delete, kind="download" - ) as directory: - - requirement_set = RequirementSet( - require_hashes=options.require_hashes, - ) - self.populate_requirement_set( - requirement_set, - args, - options, - finder, - session, - self.name, - None - ) - - preparer = RequirementPreparer( - build_dir=directory.path, - src_dir=options.src_dir, - download_dir=options.download_dir, - wheel_download_dir=None, - progress_bar=options.progress_bar, - build_isolation=options.build_isolation, - ) - - resolver = Resolver( - preparer=preparer, - finder=finder, - session=session, - wheel_cache=None, - use_user_site=False, - upgrade_strategy="to-satisfy-only", - force_reinstall=False, - ignore_dependencies=options.ignore_dependencies, - ignore_requires_python=False, - ignore_installed=True, - isolated=options.isolated_mode, - ) - resolver.resolve(requirement_set) - - downloaded = ' '.join([ - req.name for req in requirement_set.successfully_downloaded - ]) - if downloaded: - logger.info('Successfully downloaded %s', downloaded) - - # Clean up - if not options.no_clean: - requirement_set.cleanup_files() - - return requirement_set diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/freeze.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/freeze.py deleted file mode 100644 index ac562d7..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/freeze.py +++ /dev/null @@ -1,96 +0,0 @@ -from __future__ import absolute_import - -import sys - -from pip._internal import index -from pip._internal.basecommand import Command -from pip._internal.cache import WheelCache -from pip._internal.compat import stdlib_pkgs -from pip._internal.operations.freeze import freeze - -DEV_PKGS = {'pip', 'setuptools', 'distribute', 'wheel'} - - -class FreezeCommand(Command): - """ - Output installed packages in requirements format. - - packages are listed in a case-insensitive sorted order. - """ - name = 'freeze' - usage = """ - %prog [options]""" - summary = 'Output installed packages in requirements format.' - log_streams = ("ext://sys.stderr", "ext://sys.stderr") - - def __init__(self, *args, **kw): - super(FreezeCommand, self).__init__(*args, **kw) - - self.cmd_opts.add_option( - '-r', '--requirement', - dest='requirements', - action='append', - default=[], - metavar='file', - help="Use the order in the given requirements file and its " - "comments when generating output. This option can be " - "used multiple times.") - self.cmd_opts.add_option( - '-f', '--find-links', - dest='find_links', - action='append', - default=[], - metavar='URL', - help='URL for finding packages, which will be added to the ' - 'output.') - self.cmd_opts.add_option( - '-l', '--local', - dest='local', - action='store_true', - default=False, - help='If in a virtualenv that has global access, do not output ' - 'globally-installed packages.') - self.cmd_opts.add_option( - '--user', - dest='user', - action='store_true', - default=False, - help='Only output packages installed in user-site.') - self.cmd_opts.add_option( - '--all', - dest='freeze_all', - action='store_true', - help='Do not skip these packages in the output:' - ' %s' % ', '.join(DEV_PKGS)) - self.cmd_opts.add_option( - '--exclude-editable', - dest='exclude_editable', - action='store_true', - help='Exclude editable package from output.') - - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - format_control = index.FormatControl(set(), set()) - wheel_cache = WheelCache(options.cache_dir, format_control) - skip = set(stdlib_pkgs) - if not options.freeze_all: - skip.update(DEV_PKGS) - - freeze_kwargs = dict( - requirement=options.requirements, - find_links=options.find_links, - local_only=options.local, - user_only=options.user, - skip_regex=options.skip_requirements_regex, - isolated=options.isolated_mode, - wheel_cache=wheel_cache, - skip=skip, - exclude_editable=options.exclude_editable, - ) - - try: - for line in freeze(**freeze_kwargs): - sys.stdout.write(line + '\n') - finally: - wheel_cache.cleanup() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/hash.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/hash.py deleted file mode 100644 index 0ce1419..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/hash.py +++ /dev/null @@ -1,57 +0,0 @@ -from __future__ import absolute_import - -import hashlib -import logging -import sys - -from pip._internal.basecommand import Command -from pip._internal.status_codes import ERROR -from pip._internal.utils.hashes import FAVORITE_HASH, STRONG_HASHES -from pip._internal.utils.misc import read_chunks - -logger = logging.getLogger(__name__) - - -class HashCommand(Command): - """ - Compute a hash of a local package archive. - - These can be used with --hash in a requirements file to do repeatable - installs. - - """ - name = 'hash' - usage = '%prog [options] ...' - summary = 'Compute hashes of package archives.' - ignore_require_venv = True - - def __init__(self, *args, **kw): - super(HashCommand, self).__init__(*args, **kw) - self.cmd_opts.add_option( - '-a', '--algorithm', - dest='algorithm', - choices=STRONG_HASHES, - action='store', - default=FAVORITE_HASH, - help='The hash algorithm to use: one of %s' % - ', '.join(STRONG_HASHES)) - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - if not args: - self.parser.print_usage(sys.stderr) - return ERROR - - algorithm = options.algorithm - for path in args: - logger.info('%s:\n--hash=%s:%s', - path, algorithm, _hash_of_file(path, algorithm)) - - -def _hash_of_file(path, algorithm): - """Return the hash digest of a file.""" - with open(path, 'rb') as archive: - hash = hashlib.new(algorithm) - for chunk in read_chunks(archive): - hash.update(chunk) - return hash.hexdigest() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/help.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/help.py deleted file mode 100644 index f4a0e40..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/help.py +++ /dev/null @@ -1,36 +0,0 @@ -from __future__ import absolute_import - -from pip._internal.basecommand import SUCCESS, Command -from pip._internal.exceptions import CommandError - - -class HelpCommand(Command): - """Show help for commands""" - name = 'help' - usage = """ - %prog """ - summary = 'Show help for commands.' - ignore_require_venv = True - - def run(self, options, args): - from pip._internal.commands import commands_dict, get_similar_commands - - try: - # 'pip help' with no args is handled by pip.__init__.parseopt() - cmd_name = args[0] # the command we need help for - except IndexError: - return SUCCESS - - 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)) - - command = commands_dict[cmd_name]() - command.parser.print_help() - - return SUCCESS diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/install.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/install.py deleted file mode 100644 index 057a64e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/install.py +++ /dev/null @@ -1,502 +0,0 @@ -from __future__ import absolute_import - -import errno -import logging -import operator -import os -import shutil -from optparse import SUPPRESS_HELP - -from pip._internal import cmdoptions -from pip._internal.basecommand import RequirementCommand -from pip._internal.cache import WheelCache -from pip._internal.exceptions import ( - CommandError, InstallationError, PreviousBuildDirError, -) -from pip._internal.locations import distutils_scheme, virtualenv_no_global -from pip._internal.operations.check import check_install_conflicts -from pip._internal.operations.prepare import RequirementPreparer -from pip._internal.req import RequirementSet, install_given_reqs -from pip._internal.resolve import Resolver -from pip._internal.status_codes import ERROR -from pip._internal.utils.filesystem import check_path_owner -from pip._internal.utils.misc import ensure_dir, get_installed_version -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.wheel import WheelBuilder - -try: - import wheel -except ImportError: - wheel = None - - -logger = logging.getLogger(__name__) - - -class InstallCommand(RequirementCommand): - """ - Install packages from: - - - PyPI (and other indexes) using requirement specifiers. - - VCS project urls. - - Local project directories. - - Local or remote source archives. - - pip also supports installing from "requirements files", which provide - an easy way to specify a whole environment to be installed. - """ - name = 'install' - - usage = """ - %prog [options] [package-index-options] ... - %prog [options] -r [package-index-options] ... - %prog [options] [-e] ... - %prog [options] [-e] ... - %prog [options] ...""" - - summary = 'Install packages.' - - def __init__(self, *args, **kw): - super(InstallCommand, self).__init__(*args, **kw) - - cmd_opts = self.cmd_opts - - cmd_opts.add_option(cmdoptions.requirements()) - cmd_opts.add_option(cmdoptions.constraints()) - cmd_opts.add_option(cmdoptions.no_deps()) - cmd_opts.add_option(cmdoptions.pre()) - - cmd_opts.add_option(cmdoptions.editable()) - cmd_opts.add_option( - '-t', '--target', - dest='target_dir', - metavar='dir', - default=None, - help='Install packages into . ' - 'By default this will not replace existing files/folders in ' - '. Use --upgrade to replace existing packages in ' - 'with new versions.' - ) - cmd_opts.add_option( - '--user', - dest='use_user_site', - action='store_true', - help="Install to the Python user install directory for your " - "platform. Typically ~/.local/, or %APPDATA%\\Python on " - "Windows. (See the Python documentation for site.USER_BASE " - "for full details.)") - cmd_opts.add_option( - '--no-user', - dest='use_user_site', - action='store_false', - help=SUPPRESS_HELP) - cmd_opts.add_option( - '--root', - dest='root_path', - metavar='dir', - default=None, - help="Install everything relative to this alternate root " - "directory.") - cmd_opts.add_option( - '--prefix', - dest='prefix_path', - metavar='dir', - default=None, - help="Installation prefix where lib, bin and other top-level " - "folders are placed") - - cmd_opts.add_option(cmdoptions.build_dir()) - - cmd_opts.add_option(cmdoptions.src()) - - cmd_opts.add_option( - '-U', '--upgrade', - dest='upgrade', - action='store_true', - help='Upgrade all specified packages to the newest available ' - 'version. The handling of dependencies depends on the ' - 'upgrade-strategy used.' - ) - - cmd_opts.add_option( - '--upgrade-strategy', - dest='upgrade_strategy', - default='only-if-needed', - choices=['only-if-needed', 'eager'], - help='Determines how dependency upgrading should be handled ' - '[default: %default]. ' - '"eager" - dependencies are upgraded regardless of ' - 'whether the currently installed version satisfies the ' - 'requirements of the upgraded package(s). ' - '"only-if-needed" - are upgraded only when they do not ' - 'satisfy the requirements of the upgraded package(s).' - ) - - cmd_opts.add_option( - '--force-reinstall', - dest='force_reinstall', - action='store_true', - help='Reinstall all packages even if they are already ' - 'up-to-date.') - - cmd_opts.add_option( - '-I', '--ignore-installed', - dest='ignore_installed', - action='store_true', - help='Ignore the installed packages (reinstalling instead).') - - cmd_opts.add_option(cmdoptions.ignore_requires_python()) - cmd_opts.add_option(cmdoptions.no_build_isolation()) - - cmd_opts.add_option(cmdoptions.install_options()) - cmd_opts.add_option(cmdoptions.global_options()) - - cmd_opts.add_option( - "--compile", - action="store_true", - dest="compile", - default=True, - help="Compile Python source files to bytecode", - ) - - cmd_opts.add_option( - "--no-compile", - action="store_false", - dest="compile", - help="Do not compile Python source files to bytecode", - ) - - cmd_opts.add_option( - "--no-warn-script-location", - action="store_false", - dest="warn_script_location", - default=True, - help="Do not warn when installing scripts outside PATH", - ) - cmd_opts.add_option( - "--no-warn-conflicts", - action="store_false", - dest="warn_about_conflicts", - default=True, - help="Do not warn about broken dependencies", - ) - - cmd_opts.add_option(cmdoptions.no_binary()) - cmd_opts.add_option(cmdoptions.only_binary()) - cmd_opts.add_option(cmdoptions.no_clean()) - cmd_opts.add_option(cmdoptions.require_hashes()) - cmd_opts.add_option(cmdoptions.progress_bar()) - - index_opts = cmdoptions.make_option_group( - cmdoptions.index_group, - self.parser, - ) - - self.parser.insert_option_group(0, index_opts) - self.parser.insert_option_group(0, cmd_opts) - - def run(self, options, args): - cmdoptions.check_install_build_global(options) - - upgrade_strategy = "to-satisfy-only" - if options.upgrade: - upgrade_strategy = options.upgrade_strategy - - if options.build_dir: - options.build_dir = os.path.abspath(options.build_dir) - - options.src_dir = os.path.abspath(options.src_dir) - install_options = options.install_options or [] - if options.use_user_site: - if options.prefix_path: - raise CommandError( - "Can not combine '--user' and '--prefix' as they imply " - "different installation locations" - ) - if virtualenv_no_global(): - raise InstallationError( - "Can not perform a '--user' install. User site-packages " - "are not visible in this virtualenv." - ) - install_options.append('--user') - install_options.append('--prefix=') - - target_temp_dir = TempDirectory(kind="target") - if options.target_dir: - options.ignore_installed = True - options.target_dir = os.path.abspath(options.target_dir) - if (os.path.exists(options.target_dir) and not - os.path.isdir(options.target_dir)): - raise CommandError( - "Target path exists but is not a directory, will not " - "continue." - ) - - # Create a target directory for using with the target option - target_temp_dir.create() - install_options.append('--home=' + target_temp_dir.path) - - global_options = options.global_options or [] - - with self._build_session(options) as session: - finder = self._build_package_finder(options, session) - build_delete = (not (options.no_clean or options.build_dir)) - wheel_cache = WheelCache(options.cache_dir, options.format_control) - - if options.cache_dir and not check_path_owner(options.cache_dir): - logger.warning( - "The directory '%s' or its parent directory is not owned " - "by the current user and caching wheels has been " - "disabled. check the permissions and owner of that " - "directory. If executing pip with sudo, you may want " - "sudo's -H flag.", - options.cache_dir, - ) - options.cache_dir = None - - with TempDirectory( - options.build_dir, delete=build_delete, kind="install" - ) as directory: - requirement_set = RequirementSet( - require_hashes=options.require_hashes, - ) - - try: - self.populate_requirement_set( - requirement_set, args, options, finder, session, - self.name, wheel_cache - ) - preparer = RequirementPreparer( - build_dir=directory.path, - src_dir=options.src_dir, - download_dir=None, - wheel_download_dir=None, - progress_bar=options.progress_bar, - build_isolation=options.build_isolation, - ) - - resolver = Resolver( - preparer=preparer, - finder=finder, - session=session, - wheel_cache=wheel_cache, - use_user_site=options.use_user_site, - upgrade_strategy=upgrade_strategy, - force_reinstall=options.force_reinstall, - ignore_dependencies=options.ignore_dependencies, - ignore_requires_python=options.ignore_requires_python, - ignore_installed=options.ignore_installed, - isolated=options.isolated_mode, - ) - resolver.resolve(requirement_set) - - # If caching is disabled or wheel is not installed don't - # try to build wheels. - if wheel and options.cache_dir: - # build wheels before install. - wb = WheelBuilder( - finder, preparer, wheel_cache, - build_options=[], global_options=[], - ) - # Ignore the result: a failed wheel will be - # installed from the sdist/vcs whatever. - wb.build( - requirement_set.requirements.values(), - session=session, autobuilding=True - ) - - to_install = resolver.get_installation_order( - requirement_set - ) - - # Consistency Checking of the package set we're installing. - should_warn_about_conflicts = ( - not options.ignore_dependencies and - options.warn_about_conflicts - ) - if should_warn_about_conflicts: - self._warn_about_conflicts(to_install) - - # Don't warn about script install locations if - # --target has been specified - warn_script_location = options.warn_script_location - if options.target_dir: - warn_script_location = False - - installed = install_given_reqs( - to_install, - install_options, - global_options, - root=options.root_path, - home=target_temp_dir.path, - prefix=options.prefix_path, - pycompile=options.compile, - warn_script_location=warn_script_location, - use_user_site=options.use_user_site, - ) - - possible_lib_locations = get_lib_location_guesses( - user=options.use_user_site, - home=target_temp_dir.path, - root=options.root_path, - prefix=options.prefix_path, - isolated=options.isolated_mode, - ) - reqs = sorted(installed, key=operator.attrgetter('name')) - items = [] - for req in reqs: - item = req.name - try: - installed_version = get_installed_version( - req.name, possible_lib_locations - ) - if installed_version: - item += '-' + installed_version - except Exception: - pass - items.append(item) - installed = ' '.join(items) - if installed: - logger.info('Successfully installed %s', installed) - except EnvironmentError as error: - show_traceback = (self.verbosity >= 1) - - message = create_env_error_message( - error, show_traceback, options.use_user_site, - ) - logger.error(message, exc_info=show_traceback) - - return ERROR - except PreviousBuildDirError: - options.no_clean = True - raise - finally: - # Clean up - if not options.no_clean: - requirement_set.cleanup_files() - wheel_cache.cleanup() - - if options.target_dir: - self._handle_target_dir( - options.target_dir, target_temp_dir, options.upgrade - ) - return requirement_set - - def _handle_target_dir(self, target_dir, target_temp_dir, upgrade): - ensure_dir(target_dir) - - # Checking both purelib and platlib directories for installed - # packages to be moved to target directory - lib_dir_list = [] - - with target_temp_dir: - # Checking both purelib and platlib directories for installed - # packages to be moved to target directory - scheme = distutils_scheme('', home=target_temp_dir.path) - purelib_dir = scheme['purelib'] - platlib_dir = scheme['platlib'] - data_dir = scheme['data'] - - if os.path.exists(purelib_dir): - lib_dir_list.append(purelib_dir) - if os.path.exists(platlib_dir) and platlib_dir != purelib_dir: - lib_dir_list.append(platlib_dir) - if os.path.exists(data_dir): - lib_dir_list.append(data_dir) - - for lib_dir in lib_dir_list: - for item in os.listdir(lib_dir): - if lib_dir == data_dir: - ddir = os.path.join(data_dir, item) - if any(s.startswith(ddir) for s in lib_dir_list[:-1]): - continue - target_item_dir = os.path.join(target_dir, item) - if os.path.exists(target_item_dir): - if not upgrade: - logger.warning( - 'Target directory %s already exists. Specify ' - '--upgrade to force replacement.', - target_item_dir - ) - continue - if os.path.islink(target_item_dir): - logger.warning( - 'Target directory %s already exists and is ' - 'a link. Pip will not automatically replace ' - 'links, please remove if replacement is ' - 'desired.', - target_item_dir - ) - continue - if os.path.isdir(target_item_dir): - shutil.rmtree(target_item_dir) - else: - os.remove(target_item_dir) - - shutil.move( - os.path.join(lib_dir, item), - target_item_dir - ) - - def _warn_about_conflicts(self, to_install): - package_set, _dep_info = check_install_conflicts(to_install) - missing, conflicting = _dep_info - - # NOTE: There is some duplication here from pip check - for project_name in missing: - version = package_set[project_name][0] - for dependency in missing[project_name]: - logger.critical( - "%s %s requires %s, which is not installed.", - project_name, version, dependency[1], - ) - - for project_name in conflicting: - version = package_set[project_name][0] - for dep_name, dep_version, req in conflicting[project_name]: - logger.critical( - "%s %s has requirement %s, but you'll have %s %s which is " - "incompatible.", - project_name, version, req, dep_name, dep_version, - ) - - -def get_lib_location_guesses(*args, **kwargs): - scheme = distutils_scheme('', *args, **kwargs) - return [scheme['purelib'], scheme['platlib']] - - -def create_env_error_message(error, show_traceback, using_user_site): - """Format an error message for an EnvironmentError - - It may occur anytime during the execution of the install command. - """ - parts = [] - - # Mention the error if we are not going to show a traceback - parts.append("Could not install packages due to an EnvironmentError") - if not show_traceback: - parts.append(": ") - parts.append(str(error)) - else: - parts.append(".") - - # Spilt the error indication from a helper message (if any) - parts[-1] += "\n" - - # Suggest useful actions to the user: - # (1) using user site-packages or (2) verifying the permissions - if error.errno == errno.EACCES: - user_option_part = "Consider using the `--user` option" - permissions_part = "Check the permissions" - - if not using_user_site: - parts.extend([ - user_option_part, " or ", - permissions_part.lower(), - ]) - else: - parts.append(permissions_part) - parts.append(".\n") - - return "".join(parts).strip() + "\n" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/list.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/list.py deleted file mode 100644 index 1b46c6f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/list.py +++ /dev/null @@ -1,343 +0,0 @@ -from __future__ import absolute_import - -import json -import logging -import warnings - -from pip._vendor import six -from pip._vendor.six.moves import zip_longest - -from pip._internal.basecommand import Command -from pip._internal.cmdoptions import index_group, make_option_group -from pip._internal.exceptions import CommandError -from pip._internal.index import PackageFinder -from pip._internal.utils.deprecation import RemovedInPip11Warning -from pip._internal.utils.misc import ( - dist_is_editable, get_installed_distributions, -) -from pip._internal.utils.packaging import get_installer - -logger = logging.getLogger(__name__) - - -class ListCommand(Command): - """ - List installed packages, including editables. - - Packages are listed in a case-insensitive sorted order. - """ - name = 'list' - usage = """ - %prog [options]""" - summary = 'List installed packages.' - - def __init__(self, *args, **kw): - super(ListCommand, self).__init__(*args, **kw) - - cmd_opts = self.cmd_opts - - cmd_opts.add_option( - '-o', '--outdated', - action='store_true', - default=False, - help='List outdated packages') - cmd_opts.add_option( - '-u', '--uptodate', - action='store_true', - default=False, - help='List uptodate packages') - cmd_opts.add_option( - '-e', '--editable', - action='store_true', - default=False, - help='List editable projects.') - cmd_opts.add_option( - '-l', '--local', - action='store_true', - default=False, - help=('If in a virtualenv that has global access, do not list ' - 'globally-installed packages.'), - ) - self.cmd_opts.add_option( - '--user', - dest='user', - action='store_true', - default=False, - help='Only output packages installed in user-site.') - - cmd_opts.add_option( - '--pre', - action='store_true', - default=False, - help=("Include pre-release and development versions. By default, " - "pip only finds stable versions."), - ) - - cmd_opts.add_option( - '--format', - action='store', - dest='list_format', - default="columns", - choices=('legacy', 'columns', 'freeze', 'json'), - help="Select the output format among: columns (default), freeze, " - "json, or legacy.", - ) - - cmd_opts.add_option( - '--not-required', - action='store_true', - dest='not_required', - help="List packages that are not dependencies of " - "installed packages.", - ) - - cmd_opts.add_option( - '--exclude-editable', - action='store_false', - dest='include_editable', - help='Exclude editable package from output.', - ) - cmd_opts.add_option( - '--include-editable', - action='store_true', - dest='include_editable', - help='Include editable package from output.', - default=True, - ) - index_opts = make_option_group(index_group, self.parser) - - self.parser.insert_option_group(0, index_opts) - self.parser.insert_option_group(0, cmd_opts) - - def _build_package_finder(self, options, index_urls, session): - """ - Create a package finder appropriate to this list command. - """ - return PackageFinder( - find_links=options.find_links, - index_urls=index_urls, - allow_all_prereleases=options.pre, - trusted_hosts=options.trusted_hosts, - process_dependency_links=options.process_dependency_links, - session=session, - ) - - def run(self, options, args): - if options.list_format == "legacy": - warnings.warn( - "The legacy format has been deprecated and will be removed " - "in the future.", - RemovedInPip11Warning, - ) - - if options.outdated and options.uptodate: - raise CommandError( - "Options --outdated and --uptodate cannot be combined.") - - packages = get_installed_distributions( - local_only=options.local, - user_only=options.user, - editables_only=options.editable, - include_editables=options.include_editable, - ) - - if options.outdated: - packages = self.get_outdated(packages, options) - elif options.uptodate: - packages = self.get_uptodate(packages, options) - - if options.not_required: - packages = self.get_not_required(packages, options) - - self.output_package_listing(packages, options) - - def get_outdated(self, packages, options): - return [ - dist for dist in self.iter_packages_latest_infos(packages, options) - if dist.latest_version > dist.parsed_version - ] - - def get_uptodate(self, packages, options): - return [ - dist for dist in self.iter_packages_latest_infos(packages, options) - if dist.latest_version == dist.parsed_version - ] - - def get_not_required(self, packages, options): - dep_keys = set() - for dist in packages: - dep_keys.update(requirement.key for requirement in dist.requires()) - return {pkg for pkg in packages if pkg.key not in dep_keys} - - def iter_packages_latest_infos(self, packages, options): - index_urls = [options.index_url] + options.extra_index_urls - if options.no_index: - logger.debug('Ignoring indexes: %s', ','.join(index_urls)) - index_urls = [] - - dependency_links = [] - for dist in packages: - if dist.has_metadata('dependency_links.txt'): - dependency_links.extend( - dist.get_metadata_lines('dependency_links.txt'), - ) - - with self._build_session(options) as session: - finder = self._build_package_finder(options, index_urls, session) - finder.add_dependency_links(dependency_links) - - for dist in packages: - typ = 'unknown' - all_candidates = finder.find_all_candidates(dist.key) - if not options.pre: - # Remove prereleases - all_candidates = [candidate for candidate in all_candidates - if not candidate.version.is_prerelease] - - if not all_candidates: - continue - best_candidate = max(all_candidates, - key=finder._candidate_sort_key) - remote_version = best_candidate.version - if best_candidate.location.is_wheel: - typ = 'wheel' - else: - typ = 'sdist' - # This is dirty but makes the rest of the code much cleaner - dist.latest_version = remote_version - dist.latest_filetype = typ - yield dist - - def output_legacy(self, dist, options): - if options.verbose >= 1: - return '%s (%s, %s, %s)' % ( - dist.project_name, - dist.version, - dist.location, - get_installer(dist), - ) - elif dist_is_editable(dist): - return '%s (%s, %s)' % ( - dist.project_name, - dist.version, - dist.location, - ) - else: - return '%s (%s)' % (dist.project_name, dist.version) - - def output_legacy_latest(self, dist, options): - return '%s - Latest: %s [%s]' % ( - self.output_legacy(dist, options), - dist.latest_version, - dist.latest_filetype, - ) - - def output_package_listing(self, packages, options): - packages = sorted( - packages, - key=lambda dist: dist.project_name.lower(), - ) - if options.list_format == 'columns' and packages: - data, header = format_for_columns(packages, options) - self.output_package_listing_columns(data, header) - elif options.list_format == 'freeze': - for dist in packages: - if options.verbose >= 1: - logger.info("%s==%s (%s)", dist.project_name, - dist.version, dist.location) - else: - logger.info("%s==%s", dist.project_name, dist.version) - elif options.list_format == 'json': - logger.info(format_for_json(packages, options)) - elif options.list_format == "legacy": - for dist in packages: - if options.outdated: - logger.info(self.output_legacy_latest(dist, options)) - else: - logger.info(self.output_legacy(dist, options)) - - def output_package_listing_columns(self, data, header): - # insert the header first: we need to know the size of column names - if len(data) > 0: - data.insert(0, header) - - pkg_strings, sizes = tabulate(data) - - # Create and add a separator. - if len(data) > 0: - pkg_strings.insert(1, " ".join(map(lambda x: '-' * x, sizes))) - - for val in pkg_strings: - logger.info(val) - - -def tabulate(vals): - # From pfmoore on GitHub: - # https://github.com/pypa/pip/issues/3651#issuecomment-216932564 - assert len(vals) > 0 - - sizes = [0] * max(len(x) for x in vals) - for row in vals: - sizes = [max(s, len(str(c))) for s, c in zip_longest(sizes, row)] - - result = [] - for row in vals: - display = " ".join([str(c).ljust(s) if c is not None else '' - for s, c in zip_longest(sizes, row)]) - result.append(display) - - return result, sizes - - -def format_for_columns(pkgs, options): - """ - Convert the package data into something usable - by output_package_listing_columns. - """ - running_outdated = options.outdated - # Adjust the header for the `pip list --outdated` case. - if running_outdated: - header = ["Package", "Version", "Latest", "Type"] - else: - header = ["Package", "Version"] - - data = [] - if options.verbose >= 1 or any(dist_is_editable(x) for x in pkgs): - header.append("Location") - if options.verbose >= 1: - header.append("Installer") - - for proj in pkgs: - # if we're working on the 'outdated' list, separate out the - # latest_version and type - row = [proj.project_name, proj.version] - - if running_outdated: - row.append(proj.latest_version) - row.append(proj.latest_filetype) - - if options.verbose >= 1 or dist_is_editable(proj): - row.append(proj.location) - if options.verbose >= 1: - row.append(get_installer(proj)) - - data.append(row) - - return data, header - - -def format_for_json(packages, options): - data = [] - for dist in packages: - info = { - 'name': dist.project_name, - 'version': six.text_type(dist.version), - } - if options.verbose >= 1: - info['location'] = dist.location - info['installer'] = get_installer(dist) - if options.outdated: - info['latest_version'] = six.text_type(dist.latest_version) - info['latest_filetype'] = dist.latest_filetype - data.append(info) - return json.dumps(data) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/search.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/search.py deleted file mode 100644 index 83895ce..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/search.py +++ /dev/null @@ -1,135 +0,0 @@ -from __future__ import absolute_import - -import logging -import sys -import textwrap -from collections import OrderedDict - -from pip._vendor import pkg_resources -from pip._vendor.packaging.version import parse as parse_version -# NOTE: XMLRPC Client is not annotated in typeshed as on 2017-07-17, which is -# why we ignore the type on this import -from pip._vendor.six.moves import xmlrpc_client # type: ignore - -from pip._internal.basecommand import SUCCESS, Command -from pip._internal.compat import get_terminal_size -from pip._internal.download import PipXmlrpcTransport -from pip._internal.exceptions import CommandError -from pip._internal.models import PyPI -from pip._internal.status_codes import NO_MATCHES_FOUND -from pip._internal.utils.logging import indent_log - -logger = logging.getLogger(__name__) - - -class SearchCommand(Command): - """Search for PyPI packages whose name or summary contains .""" - name = 'search' - usage = """ - %prog [options] """ - summary = 'Search PyPI for packages.' - ignore_require_venv = True - - def __init__(self, *args, **kw): - super(SearchCommand, self).__init__(*args, **kw) - self.cmd_opts.add_option( - '-i', '--index', - dest='index', - metavar='URL', - default=PyPI.pypi_url, - help='Base URL of Python Package Index (default %default)') - - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - if not args: - raise CommandError('Missing required argument (search query).') - query = args - pypi_hits = self.search(query, options) - hits = transform_hits(pypi_hits) - - terminal_width = None - if sys.stdout.isatty(): - terminal_width = get_terminal_size()[0] - - print_results(hits, terminal_width=terminal_width) - if pypi_hits: - return SUCCESS - return NO_MATCHES_FOUND - - def search(self, query, options): - index_url = options.index - with self._build_session(options) as session: - transport = PipXmlrpcTransport(index_url, session) - pypi = xmlrpc_client.ServerProxy(index_url, transport) - hits = pypi.search({'name': query, 'summary': query}, 'or') - return hits - - -def transform_hits(hits): - """ - The list from pypi is really a list of versions. We want a list of - packages with the list of versions stored inline. This converts the - list from pypi into one we can use. - """ - packages = OrderedDict() - for hit in hits: - name = hit['name'] - summary = hit['summary'] - version = hit['version'] - - if name not in packages.keys(): - packages[name] = { - 'name': name, - 'summary': summary, - 'versions': [version], - } - else: - packages[name]['versions'].append(version) - - # if this is the highest version, replace summary and score - if version == highest_version(packages[name]['versions']): - packages[name]['summary'] = summary - - return list(packages.values()) - - -def print_results(hits, name_column_width=None, terminal_width=None): - if not hits: - return - if name_column_width is None: - name_column_width = max([ - len(hit['name']) + len(highest_version(hit.get('versions', ['-']))) - for hit in hits - ]) + 4 - - installed_packages = [p.project_name for p in pkg_resources.working_set] - for hit in hits: - name = hit['name'] - summary = hit['summary'] or '' - latest = highest_version(hit.get('versions', ['-'])) - if terminal_width is not None: - target_width = terminal_width - name_column_width - 5 - if target_width > 10: - # wrap and indent summary to fit terminal - summary = textwrap.wrap(summary, target_width) - summary = ('\n' + ' ' * (name_column_width + 3)).join(summary) - - line = '%-*s - %s' % (name_column_width, - '%s (%s)' % (name, latest), summary) - try: - logger.info(line) - if name in installed_packages: - dist = pkg_resources.get_distribution(name) - with indent_log(): - if dist.version == latest: - logger.info('INSTALLED: %s (latest)', dist.version) - else: - logger.info('INSTALLED: %s', dist.version) - logger.info('LATEST: %s', latest) - except UnicodeEncodeError: - pass - - -def highest_version(versions): - return max(versions, key=parse_version) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/show.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/show.py deleted file mode 100644 index bad9628..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/show.py +++ /dev/null @@ -1,164 +0,0 @@ -from __future__ import absolute_import - -import logging -import os -from email.parser import FeedParser # type: ignore - -from pip._vendor import pkg_resources -from pip._vendor.packaging.utils import canonicalize_name - -from pip._internal.basecommand import Command -from pip._internal.status_codes import ERROR, SUCCESS - -logger = logging.getLogger(__name__) - - -class ShowCommand(Command): - """Show information about one or more installed packages.""" - name = 'show' - usage = """ - %prog [options] ...""" - summary = 'Show information about installed packages.' - ignore_require_venv = True - - def __init__(self, *args, **kw): - super(ShowCommand, self).__init__(*args, **kw) - self.cmd_opts.add_option( - '-f', '--files', - dest='files', - action='store_true', - default=False, - help='Show the full list of installed files for each package.') - - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - if not args: - logger.warning('ERROR: Please provide a package name or names.') - return ERROR - query = args - - results = search_packages_info(query) - if not print_results( - results, list_files=options.files, verbose=options.verbose): - return ERROR - return SUCCESS - - -def search_packages_info(query): - """ - Gather details from installed distributions. Print distribution name, - version, location, and installed files. Installed files requires a - pip generated 'installed-files.txt' in the distributions '.egg-info' - directory. - """ - installed = {} - for p in pkg_resources.working_set: - installed[canonicalize_name(p.project_name)] = p - - query_names = [canonicalize_name(name) for name in query] - - for dist in [installed[pkg] for pkg in query_names if pkg in installed]: - package = { - 'name': dist.project_name, - 'version': dist.version, - 'location': dist.location, - 'requires': [dep.project_name for dep in dist.requires()], - } - file_list = None - metadata = None - if isinstance(dist, pkg_resources.DistInfoDistribution): - # RECORDs should be part of .dist-info metadatas - if dist.has_metadata('RECORD'): - lines = dist.get_metadata_lines('RECORD') - paths = [l.split(',')[0] for l in lines] - paths = [os.path.join(dist.location, p) for p in paths] - file_list = [os.path.relpath(p, dist.location) for p in paths] - - if dist.has_metadata('METADATA'): - metadata = dist.get_metadata('METADATA') - else: - # Otherwise use pip's log for .egg-info's - if dist.has_metadata('installed-files.txt'): - paths = dist.get_metadata_lines('installed-files.txt') - paths = [os.path.join(dist.egg_info, p) for p in paths] - file_list = [os.path.relpath(p, dist.location) for p in paths] - - if dist.has_metadata('PKG-INFO'): - metadata = dist.get_metadata('PKG-INFO') - - if dist.has_metadata('entry_points.txt'): - entry_points = dist.get_metadata_lines('entry_points.txt') - package['entry_points'] = entry_points - - if dist.has_metadata('INSTALLER'): - for line in dist.get_metadata_lines('INSTALLER'): - if line.strip(): - package['installer'] = line.strip() - break - - # @todo: Should pkg_resources.Distribution have a - # `get_pkg_info` method? - feed_parser = FeedParser() - feed_parser.feed(metadata) - pkg_info_dict = feed_parser.close() - for key in ('metadata-version', 'summary', - 'home-page', 'author', 'author-email', 'license'): - package[key] = pkg_info_dict.get(key) - - # It looks like FeedParser cannot deal with repeated headers - classifiers = [] - for line in metadata.splitlines(): - if line.startswith('Classifier: '): - classifiers.append(line[len('Classifier: '):]) - package['classifiers'] = classifiers - - if file_list: - package['files'] = sorted(file_list) - yield package - - -def print_results(distributions, list_files=False, verbose=False): - """ - Print the informations from installed distributions found. - """ - results_printed = False - for i, dist in enumerate(distributions): - results_printed = True - if i > 0: - logger.info("---") - - name = dist.get('name', '') - required_by = [ - pkg.project_name for pkg in pkg_resources.working_set - if name in [required.name for required in pkg.requires()] - ] - - logger.info("Name: %s", name) - logger.info("Version: %s", dist.get('version', '')) - logger.info("Summary: %s", dist.get('summary', '')) - logger.info("Home-page: %s", dist.get('home-page', '')) - logger.info("Author: %s", dist.get('author', '')) - logger.info("Author-email: %s", dist.get('author-email', '')) - logger.info("License: %s", dist.get('license', '')) - logger.info("Location: %s", dist.get('location', '')) - logger.info("Requires: %s", ', '.join(dist.get('requires', []))) - logger.info("Required-by: %s", ', '.join(required_by)) - - if verbose: - logger.info("Metadata-Version: %s", - dist.get('metadata-version', '')) - logger.info("Installer: %s", dist.get('installer', '')) - logger.info("Classifiers:") - for classifier in dist.get('classifiers', []): - logger.info(" %s", classifier) - logger.info("Entry-points:") - for entry in dist.get('entry_points', []): - logger.info(" %s", entry.strip()) - if list_files: - logger.info("Files:") - for line in dist.get('files', []): - logger.info(" %s", line.strip()) - if "files" not in dist: - logger.info("Cannot locate installed-files.txt") - return results_printed diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/uninstall.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/uninstall.py deleted file mode 100644 index 3bfa07f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/uninstall.py +++ /dev/null @@ -1,71 +0,0 @@ -from __future__ import absolute_import - -from pip._vendor.packaging.utils import canonicalize_name - -from pip._internal.basecommand import Command -from pip._internal.exceptions import InstallationError -from pip._internal.req import InstallRequirement, parse_requirements - - -class UninstallCommand(Command): - """ - Uninstall packages. - - pip is able to uninstall most installed packages. Known exceptions are: - - - Pure distutils packages installed with ``python setup.py install``, which - leave behind no metadata to determine what files were installed. - - Script wrappers installed by ``python setup.py develop``. - """ - name = 'uninstall' - usage = """ - %prog [options] ... - %prog [options] -r ...""" - summary = 'Uninstall packages.' - - def __init__(self, *args, **kw): - super(UninstallCommand, self).__init__(*args, **kw) - self.cmd_opts.add_option( - '-r', '--requirement', - dest='requirements', - action='append', - default=[], - metavar='file', - help='Uninstall all the packages listed in the given requirements ' - 'file. This option can be used multiple times.', - ) - self.cmd_opts.add_option( - '-y', '--yes', - dest='yes', - action='store_true', - help="Don't ask for confirmation of uninstall deletions.") - - self.parser.insert_option_group(0, self.cmd_opts) - - def run(self, options, args): - with self._build_session(options) as session: - reqs_to_uninstall = {} - for name in args: - req = InstallRequirement.from_line( - name, isolated=options.isolated_mode, - ) - if req.name: - reqs_to_uninstall[canonicalize_name(req.name)] = req - for filename in options.requirements: - for req in parse_requirements( - filename, - options=options, - session=session): - if req.name: - reqs_to_uninstall[canonicalize_name(req.name)] = req - if not reqs_to_uninstall: - raise InstallationError( - 'You must give at least one requirement to %(name)s (see ' - '"pip help %(name)s")' % dict(name=self.name) - ) - for req in reqs_to_uninstall.values(): - uninstall_pathset = req.uninstall( - auto_confirm=options.yes, verbose=self.verbosity > 0, - ) - if uninstall_pathset: - uninstall_pathset.commit() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/wheel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/wheel.py deleted file mode 100644 index ed8cdfc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/commands/wheel.py +++ /dev/null @@ -1,179 +0,0 @@ -# -*- coding: utf-8 -*- -from __future__ import absolute_import - -import logging -import os - -from pip._internal import cmdoptions -from pip._internal.basecommand import RequirementCommand -from pip._internal.cache import WheelCache -from pip._internal.exceptions import CommandError, PreviousBuildDirError -from pip._internal.operations.prepare import RequirementPreparer -from pip._internal.req import RequirementSet -from pip._internal.resolve import Resolver -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.wheel import WheelBuilder - -logger = logging.getLogger(__name__) - - -class WheelCommand(RequirementCommand): - """ - Build Wheel archives for your requirements and dependencies. - - Wheel is a built-package format, and offers the advantage of not - recompiling your software during every install. For more details, see the - wheel docs: https://wheel.readthedocs.io/en/latest/ - - Requirements: setuptools>=0.8, and wheel. - - 'pip wheel' uses the bdist_wheel setuptools extension from the wheel - package to build individual wheels. - - """ - - name = 'wheel' - usage = """ - %prog [options] ... - %prog [options] -r ... - %prog [options] [-e] ... - %prog [options] [-e] ... - %prog [options] ...""" - - summary = 'Build wheels from your requirements.' - - def __init__(self, *args, **kw): - super(WheelCommand, self).__init__(*args, **kw) - - cmd_opts = self.cmd_opts - - cmd_opts.add_option( - '-w', '--wheel-dir', - dest='wheel_dir', - metavar='dir', - default=os.curdir, - help=("Build wheels into , where the default is the " - "current working directory."), - ) - cmd_opts.add_option(cmdoptions.no_binary()) - cmd_opts.add_option(cmdoptions.only_binary()) - cmd_opts.add_option( - '--build-option', - dest='build_options', - metavar='options', - action='append', - help="Extra arguments to be supplied to 'setup.py bdist_wheel'.", - ) - cmd_opts.add_option(cmdoptions.no_build_isolation()) - cmd_opts.add_option(cmdoptions.constraints()) - cmd_opts.add_option(cmdoptions.editable()) - cmd_opts.add_option(cmdoptions.requirements()) - cmd_opts.add_option(cmdoptions.src()) - cmd_opts.add_option(cmdoptions.ignore_requires_python()) - cmd_opts.add_option(cmdoptions.no_deps()) - cmd_opts.add_option(cmdoptions.build_dir()) - cmd_opts.add_option(cmdoptions.progress_bar()) - - cmd_opts.add_option( - '--global-option', - dest='global_options', - action='append', - metavar='options', - help="Extra global options to be supplied to the setup.py " - "call before the 'bdist_wheel' command.") - - cmd_opts.add_option( - '--pre', - action='store_true', - default=False, - help=("Include pre-release and development versions. By default, " - "pip only finds stable versions."), - ) - - cmd_opts.add_option(cmdoptions.no_clean()) - cmd_opts.add_option(cmdoptions.require_hashes()) - - index_opts = cmdoptions.make_option_group( - cmdoptions.index_group, - self.parser, - ) - - self.parser.insert_option_group(0, index_opts) - self.parser.insert_option_group(0, cmd_opts) - - def run(self, options, args): - cmdoptions.check_install_build_global(options) - - index_urls = [options.index_url] + options.extra_index_urls - if options.no_index: - logger.debug('Ignoring indexes: %s', ','.join(index_urls)) - index_urls = [] - - if options.build_dir: - options.build_dir = os.path.abspath(options.build_dir) - - options.src_dir = os.path.abspath(options.src_dir) - - with self._build_session(options) as session: - finder = self._build_package_finder(options, session) - build_delete = (not (options.no_clean or options.build_dir)) - wheel_cache = WheelCache(options.cache_dir, options.format_control) - - with TempDirectory( - options.build_dir, delete=build_delete, kind="wheel" - ) as directory: - requirement_set = RequirementSet( - require_hashes=options.require_hashes, - ) - - try: - self.populate_requirement_set( - requirement_set, args, options, finder, session, - self.name, wheel_cache - ) - - preparer = RequirementPreparer( - build_dir=directory.path, - src_dir=options.src_dir, - download_dir=None, - wheel_download_dir=options.wheel_dir, - progress_bar=options.progress_bar, - build_isolation=options.build_isolation, - ) - - resolver = Resolver( - preparer=preparer, - finder=finder, - session=session, - wheel_cache=wheel_cache, - use_user_site=False, - upgrade_strategy="to-satisfy-only", - force_reinstall=False, - ignore_dependencies=options.ignore_dependencies, - ignore_requires_python=options.ignore_requires_python, - ignore_installed=True, - isolated=options.isolated_mode, - ) - resolver.resolve(requirement_set) - - # build wheels - wb = WheelBuilder( - finder, preparer, wheel_cache, - build_options=options.build_options or [], - global_options=options.global_options or [], - no_clean=options.no_clean, - ) - wheels_built_successfully = wb.build( - requirement_set.requirements.values(), session=session, - ) - if not wheels_built_successfully: - raise CommandError( - "Failed to build one or more wheels" - ) - except PreviousBuildDirError: - options.no_clean = True - raise - finally: - if not options.no_clean: - requirement_set.cleanup_files() - wheel_cache.cleanup() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/compat.py deleted file mode 100644 index 064717d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/compat.py +++ /dev/null @@ -1,235 +0,0 @@ -"""Stuff that differs in different Python versions and platform -distributions.""" -from __future__ import absolute_import, division - -import codecs -import locale -import logging -import os -import shutil -import sys - -from pip._vendor.six import text_type - -try: - import ipaddress -except ImportError: - try: - from pip._vendor import ipaddress # type: ignore - except ImportError: - import ipaddr as ipaddress # type: ignore - ipaddress.ip_address = ipaddress.IPAddress - ipaddress.ip_network = ipaddress.IPNetwork - - -__all__ = [ - "ipaddress", "uses_pycache", "console_to_str", "native_str", - "get_path_uid", "stdlib_pkgs", "WINDOWS", "samefile", "get_terminal_size", -] - - -logger = logging.getLogger(__name__) - -if sys.version_info >= (3, 4): - uses_pycache = True - from importlib.util import cache_from_source -else: - import imp - - try: - cache_from_source = imp.cache_from_source # type: ignore - except AttributeError: - # does not use __pycache__ - cache_from_source = None - - uses_pycache = cache_from_source is not None - - -if sys.version_info >= (3, 5): - backslashreplace_decode = "backslashreplace" -else: - # In version 3.4 and older, backslashreplace exists - # but does not support use for decoding. - # We implement our own replace handler for this - # situation, so that we can consistently use - # backslash replacement for all versions. - def backslashreplace_decode_fn(err): - raw_bytes = (err.object[i] for i in range(err.start, err.end)) - if sys.version_info[0] == 2: - # Python 2 gave us characters - convert to numeric bytes - raw_bytes = (ord(b) for b in raw_bytes) - return u"".join(u"\\x%x" % c for c in raw_bytes), err.end - codecs.register_error( - "backslashreplace_decode", - backslashreplace_decode_fn, - ) - backslashreplace_decode = "backslashreplace_decode" - - -def console_to_str(data): - """Return a string, safe for output, of subprocess output. - - We assume the data is in the locale preferred encoding. - If it won't decode properly, we warn the user but decode as - best we can. - - We also ensure that the output can be safely written to - standard output without encoding errors. - """ - - # First, get the encoding we assume. This is the preferred - # encoding for the locale, unless that is not found, or - # it is ASCII, in which case assume UTF-8 - encoding = locale.getpreferredencoding() - if (not encoding) or codecs.lookup(encoding).name == "ascii": - encoding = "utf-8" - - # Now try to decode the data - if we fail, warn the user and - # decode with replacement. - try: - s = data.decode(encoding) - except UnicodeDecodeError: - logger.warning( - "Subprocess output does not appear to be encoded as %s", - encoding, - ) - s = data.decode(encoding, errors=backslashreplace_decode) - - # Make sure we can print the output, by encoding it to the output - # encoding with replacement of unencodable characters, and then - # decoding again. - # We use stderr's encoding because it's less likely to be - # redirected and if we don't find an encoding we skip this - # step (on the assumption that output is wrapped by something - # that won't fail). - # The double getattr is to deal with the possibility that we're - # being called in a situation where sys.__stderr__ doesn't exist, - # or doesn't have an encoding attribute. Neither of these cases - # should occur in normal pip use, but there's no harm in checking - # in case people use pip in (unsupported) unusual situations. - output_encoding = getattr(getattr(sys, "__stderr__", None), - "encoding", None) - - if output_encoding: - s = s.encode(output_encoding, errors="backslashreplace") - s = s.decode(output_encoding) - - return s - - -if sys.version_info >= (3,): - def native_str(s, replace=False): - if isinstance(s, bytes): - return s.decode('utf-8', 'replace' if replace else 'strict') - return s - -else: - def native_str(s, replace=False): - # Replace is ignored -- unicode to UTF-8 can't fail - if isinstance(s, text_type): - return s.encode('utf-8') - return s - - -def get_path_uid(path): - """ - Return path's uid. - - Does not follow symlinks: - https://github.com/pypa/pip/pull/935#discussion_r5307003 - - Placed this function in compat due to differences on AIX and - Jython, that should eventually go away. - - :raises OSError: When path is a symlink or can't be read. - """ - if hasattr(os, 'O_NOFOLLOW'): - fd = os.open(path, os.O_RDONLY | os.O_NOFOLLOW) - file_uid = os.fstat(fd).st_uid - os.close(fd) - else: # AIX and Jython - # WARNING: time of check vulnerability, but best we can do w/o NOFOLLOW - if not os.path.islink(path): - # older versions of Jython don't have `os.fstat` - file_uid = os.stat(path).st_uid - else: - # raise OSError for parity with os.O_NOFOLLOW above - raise OSError( - "%s is a symlink; Will not return uid for symlinks" % path - ) - return file_uid - - -def expanduser(path): - """ - Expand ~ and ~user constructions. - - Includes a workaround for http://bugs.python.org/issue14768 - """ - expanded = os.path.expanduser(path) - if path.startswith('~/') and expanded.startswith('//'): - expanded = expanded[1:] - return expanded - - -# packages in the stdlib that may have installation metadata, but should not be -# considered 'installed'. this theoretically could be determined based on -# dist.location (py27:`sysconfig.get_paths()['stdlib']`, -# py26:sysconfig.get_config_vars('LIBDEST')), but fear platform variation may -# make this ineffective, so hard-coding -stdlib_pkgs = {"python", "wsgiref", "argparse"} - - -# windows detection, covers cpython and ironpython -WINDOWS = (sys.platform.startswith("win") or - (sys.platform == 'cli' and os.name == 'nt')) - - -def samefile(file1, file2): - """Provide an alternative for os.path.samefile on Windows/Python2""" - if hasattr(os.path, 'samefile'): - return os.path.samefile(file1, file2) - else: - path1 = os.path.normcase(os.path.abspath(file1)) - path2 = os.path.normcase(os.path.abspath(file2)) - return path1 == path2 - - -if hasattr(shutil, 'get_terminal_size'): - def get_terminal_size(): - """ - Returns a tuple (x, y) representing the width(x) and the height(y) - in characters of the terminal window. - """ - return tuple(shutil.get_terminal_size()) -else: - def get_terminal_size(): - """ - Returns a tuple (x, y) representing the width(x) and the height(y) - in characters of the terminal window. - """ - def ioctl_GWINSZ(fd): - try: - import fcntl - import termios - import struct - cr = struct.unpack_from( - 'hh', - fcntl.ioctl(fd, termios.TIOCGWINSZ, '12345678') - ) - except: - return None - if cr == (0, 0): - return None - return cr - cr = ioctl_GWINSZ(0) or ioctl_GWINSZ(1) or ioctl_GWINSZ(2) - if not cr: - try: - fd = os.open(os.ctermid(), os.O_RDONLY) - cr = ioctl_GWINSZ(fd) - os.close(fd) - except: - pass - if not cr: - cr = (os.environ.get('LINES', 25), os.environ.get('COLUMNS', 80)) - return int(cr[1]), int(cr[0]) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/configuration.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/configuration.py deleted file mode 100644 index 07af373..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/configuration.py +++ /dev/null @@ -1,378 +0,0 @@ -"""Configuration management setup - -Some terminology: -- name - As written in config files. -- value - Value associated with a name -- key - Name combined with it's section (section.name) -- variant - A single word describing where the configuration key-value pair came from -""" - -import locale -import logging -import os - -from pip._vendor import six -from pip._vendor.six.moves import configparser - -from pip._internal.exceptions import ConfigurationError -from pip._internal.locations import ( - legacy_config_file, new_config_file, running_under_virtualenv, - site_config_files, venv_config_file, -) -from pip._internal.utils.misc import ensure_dir, enum -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import Any, Dict, Iterable, List, NewType, Optional, Tuple - - RawConfigParser = configparser.RawConfigParser # Shorthand - Kind = NewType("Kind", str) - -logger = logging.getLogger(__name__) - - -# NOTE: Maybe use the optionx attribute to normalize keynames. -def _normalize_name(name): - # type: (str) -> str - """Make a name consistent regardless of source (environment or file) - """ - name = name.lower().replace('_', '-') - if name.startswith('--'): - name = name[2:] # only prefer long opts - return name - - -def _disassemble_key(name): - # type: (str) -> List[str] - return name.split(".", 1) - - -# The kinds of configurations there are. -kinds = enum( - USER="user", # User Specific - GLOBAL="global", # System Wide - VENV="venv", # Virtual Environment Specific - ENV="env", # from PIP_CONFIG_FILE - ENV_VAR="env-var", # from Environment Variables -) - - -class Configuration(object): - """Handles management of configuration. - - Provides an interface to accessing and managing configuration files. - - This class converts provides an API that takes "section.key-name" style - keys and stores the value associated with it as "key-name" under the - section "section". - - This allows for a clean interface wherein the both the section and the - key-name are preserved in an easy to manage form in the configuration files - and the data stored is also nice. - """ - - def __init__(self, isolated, load_only=None): - # type: (bool, Kind) -> None - super(Configuration, self).__init__() - - _valid_load_only = [kinds.USER, kinds.GLOBAL, kinds.VENV, None] - if load_only not in _valid_load_only: - raise ConfigurationError( - "Got invalid value for load_only - should be one of {}".format( - ", ".join(map(repr, _valid_load_only[:-1])) - ) - ) - self.isolated = isolated # type: bool - self.load_only = load_only # type: Optional[Kind] - - # The order here determines the override order. - self._override_order = [ - kinds.GLOBAL, kinds.USER, kinds.VENV, kinds.ENV, kinds.ENV_VAR - ] - - self._ignore_env_names = ["version", "help"] - - # Because we keep track of where we got the data from - self._parsers = { - variant: [] for variant in self._override_order - } # type: Dict[Kind, List[Tuple[str, RawConfigParser]]] - self._config = { - variant: {} for variant in self._override_order - } # type: Dict[Kind, Dict[str, Any]] - self._modified_parsers = [] # type: List[Tuple[str, RawConfigParser]] - - def load(self): - # type: () -> None - """Loads configuration from configuration files and environment - """ - self._load_config_files() - if not self.isolated: - self._load_environment_vars() - - def get_file_to_edit(self): - # type: () -> Optional[str] - """Returns the file with highest priority in configuration - """ - assert self.load_only is not None, \ - "Need to be specified a file to be editing" - - try: - return self._get_parser_to_modify()[0] - except IndexError: - return None - - def items(self): - # type: () -> Iterable[Tuple[str, Any]] - """Returns key-value pairs like dict.items() representing the loaded - configuration - """ - return self._dictionary.items() - - def get_value(self, key): - # type: (str) -> Any - """Get a value from the configuration. - """ - try: - return self._dictionary[key] - except KeyError: - raise ConfigurationError("No such key - {}".format(key)) - - def set_value(self, key, value): - # type: (str, Any) -> None - """Modify a value in the configuration. - """ - self._ensure_have_load_only() - - fname, parser = self._get_parser_to_modify() - - if parser is not None: - section, name = _disassemble_key(key) - - # Modify the parser and the configuration - if not parser.has_section(section): - parser.add_section(section) - parser.set(section, name, value) - - self._config[self.load_only][key] = value - self._mark_as_modified(fname, parser) - - def unset_value(self, key): - # type: (str) -> None - """Unset a value in the configuration. - """ - self._ensure_have_load_only() - - if key not in self._config[self.load_only]: - raise ConfigurationError("No such key - {}".format(key)) - - fname, parser = self._get_parser_to_modify() - - if parser is not None: - section, name = _disassemble_key(key) - - # Remove the key in the parser - modified_something = False - if parser.has_section(section): - # Returns whether the option was removed or not - modified_something = parser.remove_option(section, name) - - if modified_something: - # name removed from parser, section may now be empty - section_iter = iter(parser.items(section)) - try: - val = six.next(section_iter) - except StopIteration: - val = None - - if val is None: - parser.remove_section(section) - - self._mark_as_modified(fname, parser) - else: - raise ConfigurationError( - "Fatal Internal error [id=1]. Please report as a bug." - ) - - del self._config[self.load_only][key] - - def save(self): - # type: () -> None - """Save the currentin-memory state. - """ - self._ensure_have_load_only() - - for fname, parser in self._modified_parsers: - logger.info("Writing to %s", fname) - - # Ensure directory exists. - ensure_dir(os.path.dirname(fname)) - - with open(fname, "w") as f: - parser.write(f) # type: ignore - - # - # Private routines - # - - def _ensure_have_load_only(self): - # type: () -> None - if self.load_only is None: - raise ConfigurationError("Needed a specific file to be modifying.") - logger.debug("Will be working with %s variant only", self.load_only) - - @property - def _dictionary(self): - # type: () -> Dict[str, Any] - """A dictionary representing the loaded configuration. - """ - # NOTE: Dictionaries are not populated if not loaded. So, conditionals - # are not needed here. - retval = {} - - for variant in self._override_order: - retval.update(self._config[variant]) - - return retval - - def _load_config_files(self): - # type: () -> None - """Loads configuration from configuration files - """ - config_files = dict(self._iter_config_files()) - if config_files[kinds.ENV][0:1] == [os.devnull]: - logger.debug( - "Skipping loading configuration files due to " - "environment's PIP_CONFIG_FILE being os.devnull" - ) - return - - for variant, files in config_files.items(): - for fname in files: - # If there's specific variant set in `load_only`, load only - # that variant, not the others. - if self.load_only is not None and variant != self.load_only: - logger.debug( - "Skipping file '%s' (variant: %s)", fname, variant - ) - continue - - parser = self._load_file(variant, fname) - - # Keeping track of the parsers used - self._parsers[variant].append((fname, parser)) - - def _load_file(self, variant, fname): - # type: (Kind, str) -> RawConfigParser - logger.debug("For variant '%s', will try loading '%s'", variant, fname) - parser = self._construct_parser(fname) - - for section in parser.sections(): - items = parser.items(section) - self._config[variant].update(self._normalized_keys(section, items)) - - return parser - - def _construct_parser(self, fname): - # type: (str) -> RawConfigParser - parser = configparser.RawConfigParser() - # If there is no such file, don't bother reading it but create the - # parser anyway, to hold the data. - # Doing this is useful when modifying and saving files, where we don't - # need to construct a parser. - if os.path.exists(fname): - try: - parser.read(fname) - except UnicodeDecodeError: - raise ConfigurationError(( - "ERROR: " - "Configuration file contains invalid %s characters.\n" - "Please fix your configuration, located at %s\n" - ) % (locale.getpreferredencoding(False), fname)) - return parser - - def _load_environment_vars(self): - # type: () -> None - """Loads configuration from environment variables - """ - self._config[kinds.ENV_VAR].update( - self._normalized_keys(":env:", self._get_environ_vars()) - ) - - def _normalized_keys(self, section, items): - # type: (str, Iterable[Tuple[str, Any]]) -> Dict[str, Any] - """Normalizes items to construct a dictionary with normalized keys. - - This routine is where the names become keys and are made the same - regardless of source - configuration files or environment. - """ - normalized = {} - for name, val in items: - key = section + "." + _normalize_name(name) - normalized[key] = val - return normalized - - def _get_environ_vars(self): - # type: () -> Iterable[Tuple[str, str]] - """Returns a generator with all environmental vars with prefix PIP_""" - for key, val in os.environ.items(): - should_be_yielded = ( - key.startswith("PIP_") and - key[4:].lower() not in self._ignore_env_names - ) - if should_be_yielded: - yield key[4:].lower(), val - - # XXX: This is patched in the tests. - def _iter_config_files(self): - # type: () -> Iterable[Tuple[Kind, List[str]]] - """Yields variant and configuration files associated with it. - - This should be treated like items of a dictionary. - """ - # SMELL: Move the conditions out of this function - - # environment variables have the lowest priority - config_file = os.environ.get('PIP_CONFIG_FILE', None) - if config_file is not None: - yield kinds.ENV, [config_file] - else: - yield kinds.ENV, [] - - # at the base we have any global configuration - yield kinds.GLOBAL, list(site_config_files) - - # per-user configuration next - should_load_user_config = not self.isolated and not ( - config_file and os.path.exists(config_file) - ) - if should_load_user_config: - # The legacy config file is overridden by the new config file - yield kinds.USER, [legacy_config_file, new_config_file] - - # finally virtualenv configuration first trumping others - if running_under_virtualenv(): - yield kinds.VENV, [venv_config_file] - - def _get_parser_to_modify(self): - # type: () -> Tuple[str, RawConfigParser] - # Determine which parser to modify - parsers = self._parsers[self.load_only] - if not parsers: - # This should not happen if everything works correctly. - raise ConfigurationError( - "Fatal Internal error [id=2]. Please report as a bug." - ) - - # Use the highest priority parser. - return parsers[-1] - - # XXX: This is patched in the tests. - def _mark_as_modified(self, fname, parser): - # type: (str, RawConfigParser) -> None - file_parser_tuple = (fname, parser) - if file_parser_tuple not in self._modified_parsers: - self._modified_parsers.append(file_parser_tuple) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/download.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/download.py deleted file mode 100644 index e0e2d24..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/download.py +++ /dev/null @@ -1,922 +0,0 @@ -from __future__ import absolute_import - -import cgi -import email.utils -import getpass -import json -import logging -import mimetypes -import os -import platform -import re -import shutil -import sys - -from pip._vendor import requests, six, urllib3 -from pip._vendor.cachecontrol import CacheControlAdapter -from pip._vendor.cachecontrol.caches import FileCache -from pip._vendor.lockfile import LockError -from pip._vendor.requests.adapters import BaseAdapter, HTTPAdapter -from pip._vendor.requests.auth import AuthBase, HTTPBasicAuth -from pip._vendor.requests.models import CONTENT_CHUNK_SIZE, Response -from pip._vendor.requests.structures import CaseInsensitiveDict -from pip._vendor.requests.utils import get_netrc_auth -# NOTE: XMLRPC Client is not annotated in typeshed as on 2017-07-17, which is -# why we ignore the type on this import -from pip._vendor.six.moves import xmlrpc_client # type: ignore -from pip._vendor.six.moves.urllib import parse as urllib_parse -from pip._vendor.six.moves.urllib import request as urllib_request -from pip._vendor.six.moves.urllib.parse import unquote as urllib_unquote -from pip._vendor.urllib3.util import IS_PYOPENSSL - -import pip -from pip._internal.compat import WINDOWS -from pip._internal.exceptions import HashMismatch, InstallationError -from pip._internal.locations import write_delete_marker_file -from pip._internal.models import PyPI -from pip._internal.utils.encoding import auto_decode -from pip._internal.utils.filesystem import check_path_owner -from pip._internal.utils.glibc import libc_ver -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - ARCHIVE_EXTENSIONS, ask_path_exists, backup_dir, call_subprocess, consume, - display_path, format_size, get_installed_version, rmtree, splitext, - unpack_file, -) -from pip._internal.utils.setuptools_build import SETUPTOOLS_SHIM -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.utils.ui import DownloadProgressProvider -from pip._internal.vcs import vcs - -try: - import ssl # noqa -except ImportError: - ssl = None - -HAS_TLS = (ssl is not None) or IS_PYOPENSSL - -__all__ = ['get_file_content', - 'is_url', 'url_to_path', 'path_to_url', - 'is_archive_file', 'unpack_vcs_link', - 'unpack_file_url', 'is_vcs_url', 'is_file_url', - 'unpack_http_url', 'unpack_url'] - - -logger = logging.getLogger(__name__) - - -def user_agent(): - """ - Return a string representing the user agent. - """ - data = { - "installer": {"name": "pip", "version": pip.__version__}, - "python": platform.python_version(), - "implementation": { - "name": platform.python_implementation(), - }, - } - - if data["implementation"]["name"] == 'CPython': - data["implementation"]["version"] = platform.python_version() - elif data["implementation"]["name"] == 'PyPy': - if sys.pypy_version_info.releaselevel == 'final': - pypy_version_info = sys.pypy_version_info[:3] - else: - pypy_version_info = sys.pypy_version_info - data["implementation"]["version"] = ".".join( - [str(x) for x in pypy_version_info] - ) - elif data["implementation"]["name"] == 'Jython': - # Complete Guess - data["implementation"]["version"] = platform.python_version() - elif data["implementation"]["name"] == 'IronPython': - # Complete Guess - data["implementation"]["version"] = platform.python_version() - - if sys.platform.startswith("linux"): - from pip._vendor import distro - distro_infos = dict(filter( - lambda x: x[1], - zip(["name", "version", "id"], distro.linux_distribution()), - )) - libc = dict(filter( - lambda x: x[1], - zip(["lib", "version"], libc_ver()), - )) - if libc: - distro_infos["libc"] = libc - if distro_infos: - data["distro"] = distro_infos - - if sys.platform.startswith("darwin") and platform.mac_ver()[0]: - data["distro"] = {"name": "macOS", "version": platform.mac_ver()[0]} - - if platform.system(): - data.setdefault("system", {})["name"] = platform.system() - - if platform.release(): - data.setdefault("system", {})["release"] = platform.release() - - if platform.machine(): - data["cpu"] = platform.machine() - - if HAS_TLS: - data["openssl_version"] = ssl.OPENSSL_VERSION - - setuptools_version = get_installed_version("setuptools") - if setuptools_version is not None: - data["setuptools_version"] = setuptools_version - - return "{data[installer][name]}/{data[installer][version]} {json}".format( - data=data, - json=json.dumps(data, separators=(",", ":"), sort_keys=True), - ) - - -class MultiDomainBasicAuth(AuthBase): - - def __init__(self, prompting=True): - self.prompting = prompting - self.passwords = {} - - def __call__(self, req): - parsed = urllib_parse.urlparse(req.url) - - # Get the netloc without any embedded credentials - netloc = parsed.netloc.rsplit("@", 1)[-1] - - # Set the url of the request to the url without any credentials - req.url = urllib_parse.urlunparse(parsed[:1] + (netloc,) + parsed[2:]) - - # Use any stored credentials that we have for this netloc - username, password = self.passwords.get(netloc, (None, None)) - - # Extract credentials embedded in the url if we have none stored - if username is None: - username, password = self.parse_credentials(parsed.netloc) - - # Get creds from netrc if we still don't have them - if username is None and password is None: - netrc_auth = get_netrc_auth(req.url) - username, password = netrc_auth if netrc_auth else (None, None) - - if username or password: - # Store the username and password - self.passwords[netloc] = (username, password) - - # Send the basic auth with this request - req = HTTPBasicAuth(username or "", password or "")(req) - - # Attach a hook to handle 401 responses - req.register_hook("response", self.handle_401) - - return req - - def handle_401(self, resp, **kwargs): - # We only care about 401 responses, anything else we want to just - # pass through the actual response - if resp.status_code != 401: - return resp - - # We are not able to prompt the user so simply return the response - if not self.prompting: - return resp - - parsed = urllib_parse.urlparse(resp.url) - - # Prompt the user for a new username and password - username = six.moves.input("User for %s: " % parsed.netloc) - password = getpass.getpass("Password: ") - - # Store the new username and password to use for future requests - if username or password: - self.passwords[parsed.netloc] = (username, password) - - # Consume content and release the original connection to allow our new - # request to reuse the same one. - resp.content - resp.raw.release_conn() - - # Add our new username and password to the request - req = HTTPBasicAuth(username or "", password or "")(resp.request) - - # Send our new request - new_resp = resp.connection.send(req, **kwargs) - new_resp.history.append(resp) - - return new_resp - - def parse_credentials(self, netloc): - if "@" in netloc: - userinfo = netloc.rsplit("@", 1)[0] - if ":" in userinfo: - user, pwd = userinfo.split(":", 1) - return (urllib_unquote(user), urllib_unquote(pwd)) - return urllib_unquote(userinfo), None - return None, None - - -class LocalFSAdapter(BaseAdapter): - - def send(self, request, stream=None, timeout=None, verify=None, cert=None, - proxies=None): - pathname = url_to_path(request.url) - - resp = Response() - resp.status_code = 200 - resp.url = request.url - - try: - stats = os.stat(pathname) - except OSError as exc: - resp.status_code = 404 - resp.raw = exc - else: - modified = email.utils.formatdate(stats.st_mtime, usegmt=True) - content_type = mimetypes.guess_type(pathname)[0] or "text/plain" - resp.headers = CaseInsensitiveDict({ - "Content-Type": content_type, - "Content-Length": stats.st_size, - "Last-Modified": modified, - }) - - resp.raw = open(pathname, "rb") - resp.close = resp.raw.close - - return resp - - def close(self): - pass - - -class SafeFileCache(FileCache): - """ - A file based cache which is safe to use even when the target directory may - not be accessible or writable. - """ - - def __init__(self, *args, **kwargs): - super(SafeFileCache, self).__init__(*args, **kwargs) - - # Check to ensure that the directory containing our cache directory - # is owned by the user current executing pip. If it does not exist - # we will check the parent directory until we find one that does exist. - # If it is not owned by the user executing pip then we will disable - # the cache and log a warning. - if not check_path_owner(self.directory): - logger.warning( - "The directory '%s' or its parent directory is not owned by " - "the current user and the cache has been disabled. Please " - "check the permissions and owner of that directory. If " - "executing pip with sudo, you may want sudo's -H flag.", - self.directory, - ) - - # Set our directory to None to disable the Cache - self.directory = None - - def get(self, *args, **kwargs): - # If we don't have a directory, then the cache should be a no-op. - if self.directory is None: - return - - try: - return super(SafeFileCache, self).get(*args, **kwargs) - except (LockError, OSError, IOError): - # We intentionally silence this error, if we can't access the cache - # then we can just skip caching and process the request as if - # caching wasn't enabled. - pass - - def set(self, *args, **kwargs): - # If we don't have a directory, then the cache should be a no-op. - if self.directory is None: - return - - try: - return super(SafeFileCache, self).set(*args, **kwargs) - except (LockError, OSError, IOError): - # We intentionally silence this error, if we can't access the cache - # then we can just skip caching and process the request as if - # caching wasn't enabled. - pass - - def delete(self, *args, **kwargs): - # If we don't have a directory, then the cache should be a no-op. - if self.directory is None: - return - - try: - return super(SafeFileCache, self).delete(*args, **kwargs) - except (LockError, OSError, IOError): - # We intentionally silence this error, if we can't access the cache - # then we can just skip caching and process the request as if - # caching wasn't enabled. - pass - - -class InsecureHTTPAdapter(HTTPAdapter): - - def cert_verify(self, conn, url, verify, cert): - conn.cert_reqs = 'CERT_NONE' - conn.ca_certs = None - - -class PipSession(requests.Session): - - timeout = None - - def __init__(self, *args, **kwargs): - retries = kwargs.pop("retries", 0) - cache = kwargs.pop("cache", None) - insecure_hosts = kwargs.pop("insecure_hosts", []) - - super(PipSession, self).__init__(*args, **kwargs) - - # Attach our User Agent to the request - self.headers["User-Agent"] = user_agent() - - # Attach our Authentication handler to the session - self.auth = MultiDomainBasicAuth() - - # Create our urllib3.Retry instance which will allow us to customize - # how we handle retries. - retries = urllib3.Retry( - # Set the total number of retries that a particular request can - # have. - total=retries, - - # A 503 error from PyPI typically means that the Fastly -> Origin - # connection got interrupted in some way. A 503 error in general - # is typically considered a transient error so we'll go ahead and - # retry it. - # A 500 may indicate transient error in Amazon S3 - # A 520 or 527 - may indicate transient error in CloudFlare - status_forcelist=[500, 503, 520, 527], - - # Add a small amount of back off between failed requests in - # order to prevent hammering the service. - backoff_factor=0.25, - ) - - # We want to _only_ cache responses on securely fetched origins. We do - # this because we can't validate the response of an insecurely fetched - # origin, and we don't want someone to be able to poison the cache and - # require manual eviction from the cache to fix it. - if cache: - secure_adapter = CacheControlAdapter( - cache=SafeFileCache(cache, use_dir_lock=True), - max_retries=retries, - ) - else: - secure_adapter = HTTPAdapter(max_retries=retries) - - # Our Insecure HTTPAdapter disables HTTPS validation. It does not - # support caching (see above) so we'll use it for all http:// URLs as - # well as any https:// host that we've marked as ignoring TLS errors - # for. - insecure_adapter = InsecureHTTPAdapter(max_retries=retries) - - self.mount("https://", secure_adapter) - self.mount("http://", insecure_adapter) - - # Enable file:// urls - self.mount("file://", LocalFSAdapter()) - - # We want to use a non-validating adapter for any requests which are - # deemed insecure. - for host in insecure_hosts: - self.mount("https://{}/".format(host), insecure_adapter) - - def request(self, method, url, *args, **kwargs): - # Allow setting a default timeout on a session - kwargs.setdefault("timeout", self.timeout) - - # Dispatch the actual request - return super(PipSession, self).request(method, url, *args, **kwargs) - - -def get_file_content(url, comes_from=None, session=None): - """Gets the content of a file; it may be a filename, file: URL, or - http: URL. Returns (location, content). Content is unicode. - - :param url: File path or url. - :param comes_from: Origin description of requirements. - :param session: Instance of pip.download.PipSession. - """ - if session is None: - raise TypeError( - "get_file_content() missing 1 required keyword argument: 'session'" - ) - - match = _scheme_re.search(url) - if match: - scheme = match.group(1).lower() - if (scheme == 'file' and comes_from and - comes_from.startswith('http')): - raise InstallationError( - 'Requirements file %s references URL %s, which is local' - % (comes_from, url)) - if scheme == 'file': - path = url.split(':', 1)[1] - path = path.replace('\\', '/') - match = _url_slash_drive_re.match(path) - if match: - path = match.group(1) + ':' + path.split('|', 1)[1] - path = urllib_parse.unquote(path) - if path.startswith('/'): - path = '/' + path.lstrip('/') - url = path - else: - # FIXME: catch some errors - resp = session.get(url) - resp.raise_for_status() - return resp.url, resp.text - try: - with open(url, 'rb') as f: - content = auto_decode(f.read()) - except IOError as exc: - raise InstallationError( - 'Could not open requirements file: %s' % str(exc) - ) - return url, content - - -_scheme_re = re.compile(r'^(http|https|file):', re.I) -_url_slash_drive_re = re.compile(r'/*([a-z])\|', re.I) - - -def is_url(name): - """Returns true if the name looks like a URL""" - if ':' not in name: - return False - scheme = name.split(':', 1)[0].lower() - return scheme in ['http', 'https', 'file', 'ftp'] + vcs.all_schemes - - -def url_to_path(url): - """ - Convert a file: URL to a path. - """ - assert url.startswith('file:'), ( - "You can only turn file: urls into filenames (not %r)" % url) - - _, netloc, path, _, _ = urllib_parse.urlsplit(url) - - # if we have a UNC path, prepend UNC share notation - if netloc: - netloc = '\\\\' + netloc - - path = urllib_request.url2pathname(netloc + path) - return path - - -def path_to_url(path): - """ - Convert a path to a file: URL. The path will be made absolute and have - quoted path parts. - """ - path = os.path.normpath(os.path.abspath(path)) - url = urllib_parse.urljoin('file:', urllib_request.pathname2url(path)) - return url - - -def is_archive_file(name): - """Return True if `name` is a considered as an archive file.""" - ext = splitext(name)[1].lower() - if ext in ARCHIVE_EXTENSIONS: - return True - return False - - -def unpack_vcs_link(link, location): - vcs_backend = _get_used_vcs_backend(link) - vcs_backend.unpack(location) - - -def _get_used_vcs_backend(link): - for backend in vcs.backends: - if link.scheme in backend.schemes: - vcs_backend = backend(link.url) - return vcs_backend - - -def is_vcs_url(link): - return bool(_get_used_vcs_backend(link)) - - -def is_file_url(link): - return link.url.lower().startswith('file:') - - -def is_dir_url(link): - """Return whether a file:// Link points to a directory. - - ``link`` must not have any other scheme but file://. Call is_file_url() - first. - - """ - link_path = url_to_path(link.url_without_fragment) - return os.path.isdir(link_path) - - -def _progress_indicator(iterable, *args, **kwargs): - return iterable - - -def _download_url(resp, link, content_file, hashes, progress_bar): - try: - total_length = int(resp.headers['content-length']) - except (ValueError, KeyError, TypeError): - total_length = 0 - - cached_resp = getattr(resp, "from_cache", False) - if logger.getEffectiveLevel() > logging.INFO: - show_progress = False - elif cached_resp: - show_progress = False - elif total_length > (40 * 1000): - show_progress = True - elif not total_length: - show_progress = True - else: - show_progress = False - - show_url = link.show_url - - def resp_read(chunk_size): - try: - # Special case for urllib3. - for chunk in resp.raw.stream( - chunk_size, - # We use decode_content=False here because we don't - # want urllib3 to mess with the raw bytes we get - # from the server. If we decompress inside of - # urllib3 then we cannot verify the checksum - # because the checksum will be of the compressed - # file. This breakage will only occur if the - # server adds a Content-Encoding header, which - # depends on how the server was configured: - # - Some servers will notice that the file isn't a - # compressible file and will leave the file alone - # and with an empty Content-Encoding - # - Some servers will notice that the file is - # already compressed and will leave the file - # alone and will add a Content-Encoding: gzip - # header - # - Some servers won't notice anything at all and - # will take a file that's already been compressed - # and compress it again and set the - # Content-Encoding: gzip header - # - # By setting this not to decode automatically we - # hope to eliminate problems with the second case. - decode_content=False): - yield chunk - except AttributeError: - # Standard file-like object. - while True: - chunk = resp.raw.read(chunk_size) - if not chunk: - break - yield chunk - - def written_chunks(chunks): - for chunk in chunks: - content_file.write(chunk) - yield chunk - - progress_indicator = _progress_indicator - - if link.netloc == PyPI.netloc: - url = show_url - else: - url = link.url_without_fragment - - if show_progress: # We don't show progress on cached responses - progress_indicator = DownloadProgressProvider(progress_bar, - max=total_length) - if total_length: - logger.info("Downloading %s (%s)", url, format_size(total_length)) - else: - logger.info("Downloading %s", url) - elif cached_resp: - logger.info("Using cached %s", url) - else: - logger.info("Downloading %s", url) - - logger.debug('Downloading from URL %s', link) - - downloaded_chunks = written_chunks( - progress_indicator( - resp_read(CONTENT_CHUNK_SIZE), - CONTENT_CHUNK_SIZE - ) - ) - if hashes: - hashes.check_against_chunks(downloaded_chunks) - else: - consume(downloaded_chunks) - - -def _copy_file(filename, location, link): - copy = True - download_location = os.path.join(location, link.filename) - if os.path.exists(download_location): - response = ask_path_exists( - 'The file %s exists. (i)gnore, (w)ipe, (b)ackup, (a)abort' % - display_path(download_location), ('i', 'w', 'b', 'a')) - if response == 'i': - copy = False - elif response == 'w': - logger.warning('Deleting %s', display_path(download_location)) - os.remove(download_location) - elif response == 'b': - dest_file = backup_dir(download_location) - logger.warning( - 'Backing up %s to %s', - display_path(download_location), - display_path(dest_file), - ) - shutil.move(download_location, dest_file) - elif response == 'a': - sys.exit(-1) - if copy: - shutil.copy(filename, download_location) - logger.info('Saved %s', display_path(download_location)) - - -def unpack_http_url(link, location, download_dir=None, - session=None, hashes=None, progress_bar="on"): - if session is None: - raise TypeError( - "unpack_http_url() missing 1 required keyword argument: 'session'" - ) - - with TempDirectory(kind="unpack") as temp_dir: - # If a download dir is specified, is the file already downloaded there? - already_downloaded_path = None - if download_dir: - already_downloaded_path = _check_download_dir(link, - download_dir, - hashes) - - if already_downloaded_path: - from_path = already_downloaded_path - content_type = mimetypes.guess_type(from_path)[0] - else: - # let's download to a tmp dir - from_path, content_type = _download_http_url(link, - session, - temp_dir.path, - hashes, - progress_bar) - - # unpack the archive to the build dir location. even when only - # downloading archives, they have to be unpacked to parse dependencies - unpack_file(from_path, location, content_type, link) - - # a download dir is specified; let's copy the archive there - if download_dir and not already_downloaded_path: - _copy_file(from_path, download_dir, link) - - if not already_downloaded_path: - os.unlink(from_path) - - -def unpack_file_url(link, location, download_dir=None, hashes=None): - """Unpack link into location. - - If download_dir is provided and link points to a file, make a copy - of the link file inside download_dir. - """ - link_path = url_to_path(link.url_without_fragment) - - # If it's a url to a local directory - if is_dir_url(link): - if os.path.isdir(location): - rmtree(location) - shutil.copytree(link_path, location, symlinks=True) - if download_dir: - logger.info('Link is a directory, ignoring download_dir') - return - - # If --require-hashes is off, `hashes` is either empty, the - # link's embedded hash, or MissingHashes; it is required to - # match. If --require-hashes is on, we are satisfied by any - # hash in `hashes` matching: a URL-based or an option-based - # one; no internet-sourced hash will be in `hashes`. - if hashes: - hashes.check_against_path(link_path) - - # If a download dir is specified, is the file already there and valid? - already_downloaded_path = None - if download_dir: - already_downloaded_path = _check_download_dir(link, - download_dir, - hashes) - - if already_downloaded_path: - from_path = already_downloaded_path - else: - from_path = link_path - - content_type = mimetypes.guess_type(from_path)[0] - - # unpack the archive to the build dir location. even when only downloading - # archives, they have to be unpacked to parse dependencies - unpack_file(from_path, location, content_type, link) - - # a download dir is specified and not already downloaded - if download_dir and not already_downloaded_path: - _copy_file(from_path, download_dir, link) - - -def _copy_dist_from_dir(link_path, location): - """Copy distribution files in `link_path` to `location`. - - Invoked when user requests to install a local directory. E.g.: - - pip install . - pip install ~/dev/git-repos/python-prompt-toolkit - - """ - - # Note: This is currently VERY SLOW if you have a lot of data in the - # directory, because it copies everything with `shutil.copytree`. - # What it should really do is build an sdist and install that. - # See https://github.com/pypa/pip/issues/2195 - - if os.path.isdir(location): - rmtree(location) - - # build an sdist - setup_py = 'setup.py' - sdist_args = [sys.executable] - sdist_args.append('-c') - sdist_args.append(SETUPTOOLS_SHIM % setup_py) - sdist_args.append('sdist') - sdist_args += ['--dist-dir', location] - logger.info('Running setup.py sdist for %s', link_path) - - with indent_log(): - call_subprocess(sdist_args, cwd=link_path, show_stdout=False) - - # unpack sdist into `location` - sdist = os.path.join(location, os.listdir(location)[0]) - logger.info('Unpacking sdist %s into %s', sdist, location) - unpack_file(sdist, location, content_type=None, link=None) - - -class PipXmlrpcTransport(xmlrpc_client.Transport): - """Provide a `xmlrpclib.Transport` implementation via a `PipSession` - object. - """ - - def __init__(self, index_url, session, use_datetime=False): - xmlrpc_client.Transport.__init__(self, use_datetime) - index_parts = urllib_parse.urlparse(index_url) - self._scheme = index_parts.scheme - self._session = session - - def request(self, host, handler, request_body, verbose=False): - parts = (self._scheme, host, handler, None, None, None) - url = urllib_parse.urlunparse(parts) - try: - headers = {'Content-Type': 'text/xml'} - response = self._session.post(url, data=request_body, - headers=headers, stream=True) - response.raise_for_status() - self.verbose = verbose - return self.parse_response(response.raw) - except requests.HTTPError as exc: - logger.critical( - "HTTP error %s while getting %s", - exc.response.status_code, url, - ) - raise - - -def unpack_url(link, location, download_dir=None, - only_download=False, session=None, hashes=None, - progress_bar="on"): - """Unpack link. - If link is a VCS link: - if only_download, export into download_dir and ignore location - else unpack into location - for other types of link: - - unpack into location - - if download_dir, copy the file into download_dir - - if only_download, mark location for deletion - - :param hashes: A Hashes object, one of whose embedded hashes must match, - or HashMismatch will be raised. If the Hashes is empty, no matches are - required, and unhashable types of requirements (like VCS ones, which - would ordinarily raise HashUnsupported) are allowed. - """ - # non-editable vcs urls - if is_vcs_url(link): - unpack_vcs_link(link, location) - - # file urls - elif is_file_url(link): - unpack_file_url(link, location, download_dir, hashes=hashes) - - # http urls - else: - if session is None: - session = PipSession() - - unpack_http_url( - link, - location, - download_dir, - session, - hashes=hashes, - progress_bar=progress_bar - ) - if only_download: - write_delete_marker_file(location) - - -def _download_http_url(link, session, temp_dir, hashes, progress_bar): - """Download link url into temp_dir using provided session""" - target_url = link.url.split('#', 1)[0] - try: - resp = session.get( - target_url, - # We use Accept-Encoding: identity here because requests - # defaults to accepting compressed responses. This breaks in - # a variety of ways depending on how the server is configured. - # - Some servers will notice that the file isn't a compressible - # file and will leave the file alone and with an empty - # Content-Encoding - # - Some servers will notice that the file is already - # compressed and will leave the file alone and will add a - # Content-Encoding: gzip header - # - Some servers won't notice anything at all and will take - # a file that's already been compressed and compress it again - # and set the Content-Encoding: gzip header - # By setting this to request only the identity encoding We're - # hoping to eliminate the third case. Hopefully there does not - # exist a server which when given a file will notice it is - # already compressed and that you're not asking for a - # compressed file and will then decompress it before sending - # because if that's the case I don't think it'll ever be - # possible to make this work. - headers={"Accept-Encoding": "identity"}, - stream=True, - ) - resp.raise_for_status() - except requests.HTTPError as exc: - logger.critical( - "HTTP error %s while getting %s", exc.response.status_code, link, - ) - raise - - content_type = resp.headers.get('content-type', '') - filename = link.filename # fallback - # Have a look at the Content-Disposition header for a better guess - content_disposition = resp.headers.get('content-disposition') - if content_disposition: - type, params = cgi.parse_header(content_disposition) - # We use ``or`` here because we don't want to use an "empty" value - # from the filename param. - filename = params.get('filename') or filename - ext = splitext(filename)[1] - if not ext: - ext = mimetypes.guess_extension(content_type) - if ext: - filename += ext - if not ext and link.url != resp.url: - ext = os.path.splitext(resp.url)[1] - if ext: - filename += ext - file_path = os.path.join(temp_dir, filename) - with open(file_path, 'wb') as content_file: - _download_url(resp, link, content_file, hashes, progress_bar) - return file_path, content_type - - -def _check_download_dir(link, download_dir, hashes): - """ Check download_dir for previously downloaded file with correct hash - If a correct file is found return its path else None - """ - download_path = os.path.join(download_dir, link.filename) - if os.path.exists(download_path): - # If already downloaded, does its hash match? - logger.info('File was already downloaded %s', download_path) - if hashes: - try: - hashes.check_against_path(download_path) - except HashMismatch: - logger.warning( - 'Previously-downloaded file %s has bad hash. ' - 'Re-downloading.', - download_path - ) - os.unlink(download_path) - return None - return download_path - return None diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/exceptions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/exceptions.py deleted file mode 100644 index 28705c8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/exceptions.py +++ /dev/null @@ -1,249 +0,0 @@ -"""Exceptions used throughout package""" -from __future__ import absolute_import - -from itertools import chain, groupby, repeat - -from pip._vendor.six import iteritems - - -class PipError(Exception): - """Base pip exception""" - - -class ConfigurationError(PipError): - """General exception in configuration""" - - -class InstallationError(PipError): - """General exception during installation""" - - -class UninstallationError(PipError): - """General exception during uninstallation""" - - -class DistributionNotFound(InstallationError): - """Raised when a distribution cannot be found to satisfy a requirement""" - - -class RequirementsFileParseError(InstallationError): - """Raised when a general error occurs parsing a requirements file line.""" - - -class BestVersionAlreadyInstalled(PipError): - """Raised when the most up-to-date version of a package is already - installed.""" - - -class BadCommand(PipError): - """Raised when virtualenv or a command is not found""" - - -class CommandError(PipError): - """Raised when there is an error in command-line arguments""" - - -class PreviousBuildDirError(PipError): - """Raised when there's a previous conflicting build directory""" - - -class InvalidWheelFilename(InstallationError): - """Invalid wheel filename.""" - - -class UnsupportedWheel(InstallationError): - """Unsupported wheel.""" - - -class HashErrors(InstallationError): - """Multiple HashError instances rolled into one for reporting""" - - def __init__(self): - self.errors = [] - - def append(self, error): - self.errors.append(error) - - def __str__(self): - lines = [] - self.errors.sort(key=lambda e: e.order) - for cls, errors_of_cls in groupby(self.errors, lambda e: e.__class__): - lines.append(cls.head) - lines.extend(e.body() for e in errors_of_cls) - if lines: - return '\n'.join(lines) - - def __nonzero__(self): - return bool(self.errors) - - def __bool__(self): - return self.__nonzero__() - - -class HashError(InstallationError): - """ - A failure to verify a package against known-good hashes - - :cvar order: An int sorting hash exception classes by difficulty of - recovery (lower being harder), so the user doesn't bother fretting - about unpinned packages when he has deeper issues, like VCS - dependencies, to deal with. Also keeps error reports in a - deterministic order. - :cvar head: A section heading for display above potentially many - exceptions of this kind - :ivar req: The InstallRequirement that triggered this error. This is - pasted on after the exception is instantiated, because it's not - typically available earlier. - - """ - req = None - head = '' - - def body(self): - """Return a summary of me for display under the heading. - - This default implementation simply prints a description of the - triggering requirement. - - :param req: The InstallRequirement that provoked this error, with - populate_link() having already been called - - """ - return ' %s' % self._requirement_name() - - def __str__(self): - return '%s\n%s' % (self.head, self.body()) - - def _requirement_name(self): - """Return a description of the requirement that triggered me. - - This default implementation returns long description of the req, with - line numbers - - """ - return str(self.req) if self.req else 'unknown package' - - -class VcsHashUnsupported(HashError): - """A hash was provided for a version-control-system-based requirement, but - we don't have a method for hashing those.""" - - order = 0 - head = ("Can't verify hashes for these requirements because we don't " - "have a way to hash version control repositories:") - - -class DirectoryUrlHashUnsupported(HashError): - """A hash was provided for a version-control-system-based requirement, but - we don't have a method for hashing those.""" - - order = 1 - head = ("Can't verify hashes for these file:// requirements because they " - "point to directories:") - - -class HashMissing(HashError): - """A hash was needed for a requirement but is absent.""" - - order = 2 - head = ('Hashes are required in --require-hashes mode, but they are ' - 'missing from some requirements. Here is a list of those ' - 'requirements along with the hashes their downloaded archives ' - 'actually had. Add lines like these to your requirements files to ' - 'prevent tampering. (If you did not enable --require-hashes ' - 'manually, note that it turns on automatically when any package ' - 'has a hash.)') - - def __init__(self, gotten_hash): - """ - :param gotten_hash: The hash of the (possibly malicious) archive we - just downloaded - """ - self.gotten_hash = gotten_hash - - def body(self): - # Dodge circular import. - from pip._internal.utils.hashes import FAVORITE_HASH - - package = None - if self.req: - # In the case of URL-based requirements, display the original URL - # seen in the requirements file rather than the package name, - # so the output can be directly copied into the requirements file. - package = (self.req.original_link if self.req.original_link - # In case someone feeds something downright stupid - # to InstallRequirement's constructor. - else getattr(self.req, 'req', None)) - return ' %s --hash=%s:%s' % (package or 'unknown package', - FAVORITE_HASH, - self.gotten_hash) - - -class HashUnpinned(HashError): - """A requirement had a hash specified but was not pinned to a specific - version.""" - - order = 3 - head = ('In --require-hashes mode, all requirements must have their ' - 'versions pinned with ==. These do not:') - - -class HashMismatch(HashError): - """ - Distribution file hash values don't match. - - :ivar package_name: The name of the package that triggered the hash - mismatch. Feel free to write to this after the exception is raise to - improve its error message. - - """ - order = 4 - head = ('THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS ' - 'FILE. If you have updated the package versions, please update ' - 'the hashes. Otherwise, examine the package contents carefully; ' - 'someone may have tampered with them.') - - def __init__(self, allowed, gots): - """ - :param allowed: A dict of algorithm names pointing to lists of allowed - hex digests - :param gots: A dict of algorithm names pointing to hashes we - actually got from the files under suspicion - """ - self.allowed = allowed - self.gots = gots - - def body(self): - return ' %s:\n%s' % (self._requirement_name(), - self._hash_comparison()) - - def _hash_comparison(self): - """ - Return a comparison of actual and expected hash values. - - Example:: - - Expected sha256 abcdeabcdeabcdeabcdeabcdeabcdeabcdeabcdeabcde - or 123451234512345123451234512345123451234512345 - Got bcdefbcdefbcdefbcdefbcdefbcdefbcdefbcdefbcdef - - """ - def hash_then_or(hash_name): - # For now, all the decent hashes have 6-char names, so we can get - # away with hard-coding space literals. - return chain([hash_name], repeat(' or')) - - lines = [] - for hash_name, expecteds in iteritems(self.allowed): - prefix = hash_then_or(hash_name) - lines.extend((' Expected %s %s' % (next(prefix), e)) - for e in expecteds) - lines.append(' Got %s\n' % - self.gots[hash_name].hexdigest()) - prefix = ' or' - return '\n'.join(lines) - - -class UnsupportedPythonVersion(InstallationError): - """Unsupported python version according to Requires-Python package - metadata.""" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/index.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/index.py deleted file mode 100644 index 15e0bf3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/index.py +++ /dev/null @@ -1,1117 +0,0 @@ -"""Routines related to PyPI, indexes""" -from __future__ import absolute_import - -import cgi -import itertools -import logging -import mimetypes -import os -import posixpath -import re -import sys -import warnings -from collections import namedtuple - -from pip._vendor import html5lib, requests, six -from pip._vendor.distlib.compat import unescape -from pip._vendor.packaging import specifiers -from pip._vendor.packaging.utils import canonicalize_name -from pip._vendor.packaging.version import parse as parse_version -from pip._vendor.requests.exceptions import SSLError -from pip._vendor.six.moves.urllib import parse as urllib_parse -from pip._vendor.six.moves.urllib import request as urllib_request - -from pip._internal.compat import ipaddress -from pip._internal.download import HAS_TLS, is_url, path_to_url, url_to_path -from pip._internal.exceptions import ( - BestVersionAlreadyInstalled, DistributionNotFound, InvalidWheelFilename, - UnsupportedWheel, -) -from pip._internal.models import PyPI -from pip._internal.pep425tags import get_supported -from pip._internal.utils.deprecation import RemovedInPip11Warning -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - ARCHIVE_EXTENSIONS, SUPPORTED_EXTENSIONS, cached_property, normalize_path, - splitext, -) -from pip._internal.utils.packaging import check_requires_python -from pip._internal.wheel import Wheel, wheel_ext - -__all__ = ['FormatControl', 'fmt_ctl_handle_mutual_exclude', 'PackageFinder'] - - -SECURE_ORIGINS = [ - # protocol, hostname, port - # Taken from Chrome's list of secure origins (See: http://bit.ly/1qrySKC) - ("https", "*", "*"), - ("*", "localhost", "*"), - ("*", "127.0.0.0/8", "*"), - ("*", "::1/128", "*"), - ("file", "*", None), - # ssh is always secure. - ("ssh", "*", "*"), -] - - -logger = logging.getLogger(__name__) - - -class InstallationCandidate(object): - - def __init__(self, project, version, location): - self.project = project - self.version = parse_version(version) - self.location = location - self._key = (self.project, self.version, self.location) - - def __repr__(self): - return "".format( - self.project, self.version, self.location, - ) - - def __hash__(self): - return hash(self._key) - - def __lt__(self, other): - return self._compare(other, lambda s, o: s < o) - - def __le__(self, other): - return self._compare(other, lambda s, o: s <= o) - - def __eq__(self, other): - return self._compare(other, lambda s, o: s == o) - - def __ge__(self, other): - return self._compare(other, lambda s, o: s >= o) - - def __gt__(self, other): - return self._compare(other, lambda s, o: s > o) - - def __ne__(self, other): - return self._compare(other, lambda s, o: s != o) - - def _compare(self, other, method): - if not isinstance(other, InstallationCandidate): - return NotImplemented - - return method(self._key, other._key) - - -class PackageFinder(object): - """This finds packages. - - This is meant to match easy_install's technique for looking for - packages, by reading pages and looking for appropriate links. - """ - - def __init__(self, find_links, index_urls, allow_all_prereleases=False, - trusted_hosts=None, process_dependency_links=False, - session=None, format_control=None, platform=None, - versions=None, abi=None, implementation=None): - """Create a PackageFinder. - - :param format_control: A FormatControl object or None. Used to control - the selection of source packages / binary packages when consulting - the index and links. - :param platform: A string or None. If None, searches for packages - that are supported by the current system. Otherwise, will find - packages that can be built on the platform passed in. These - packages will only be downloaded for distribution: they will - not be built locally. - :param versions: A list of strings or None. This is passed directly - to pep425tags.py in the get_supported() method. - :param abi: A string or None. This is passed directly - to pep425tags.py in the get_supported() method. - :param implementation: A string or None. This is passed directly - to pep425tags.py in the get_supported() method. - """ - if session is None: - raise TypeError( - "PackageFinder() missing 1 required keyword argument: " - "'session'" - ) - - # Build find_links. If an argument starts with ~, it may be - # a local file relative to a home directory. So try normalizing - # it and if it exists, use the normalized version. - # This is deliberately conservative - it might be fine just to - # blindly normalize anything starting with a ~... - self.find_links = [] - for link in find_links: - if link.startswith('~'): - new_link = normalize_path(link) - if os.path.exists(new_link): - link = new_link - self.find_links.append(link) - - self.index_urls = index_urls - self.dependency_links = [] - - # These are boring links that have already been logged somehow: - self.logged_links = set() - - self.format_control = format_control or FormatControl(set(), set()) - - # Domains that we won't emit warnings for when not using HTTPS - self.secure_origins = [ - ("*", host, "*") - for host in (trusted_hosts if trusted_hosts else []) - ] - - # Do we want to allow _all_ pre-releases? - self.allow_all_prereleases = allow_all_prereleases - - # Do we process dependency links? - self.process_dependency_links = process_dependency_links - - # The Session we'll use to make requests - self.session = session - - # The valid tags to check potential found wheel candidates against - self.valid_tags = get_supported( - versions=versions, - platform=platform, - abi=abi, - impl=implementation, - ) - - # If we don't have TLS enabled, then WARN if anyplace we're looking - # relies on TLS. - if not HAS_TLS: - for link in itertools.chain(self.index_urls, self.find_links): - parsed = urllib_parse.urlparse(link) - if parsed.scheme == "https": - logger.warning( - "pip is configured with locations that require " - "TLS/SSL, however the ssl module in Python is not " - "available." - ) - break - - def get_formatted_locations(self): - lines = [] - if self.index_urls and self.index_urls != [PyPI.simple_url]: - lines.append( - "Looking in indexes: {}".format(", ".join(self.index_urls)) - ) - if self.find_links: - lines.append( - "Looking in links: {}".format(", ".join(self.find_links)) - ) - return "\n".join(lines) - - def add_dependency_links(self, links): - # # FIXME: this shouldn't be global list this, it should only - # # apply to requirements of the package that specifies the - # # dependency_links value - # # FIXME: also, we should track comes_from (i.e., use Link) - if self.process_dependency_links: - warnings.warn( - "Dependency Links processing has been deprecated and will be " - "removed in a future release.", - RemovedInPip11Warning, - ) - self.dependency_links.extend(links) - - @staticmethod - def _sort_locations(locations, expand_dir=False): - """ - Sort locations into "files" (archives) and "urls", and return - a pair of lists (files,urls) - """ - files = [] - urls = [] - - # puts the url for the given file path into the appropriate list - def sort_path(path): - url = path_to_url(path) - if mimetypes.guess_type(url, strict=False)[0] == 'text/html': - urls.append(url) - else: - files.append(url) - - for url in locations: - - is_local_path = os.path.exists(url) - is_file_url = url.startswith('file:') - - if is_local_path or is_file_url: - if is_local_path: - path = url - else: - path = url_to_path(url) - if os.path.isdir(path): - if expand_dir: - path = os.path.realpath(path) - for item in os.listdir(path): - sort_path(os.path.join(path, item)) - elif is_file_url: - urls.append(url) - elif os.path.isfile(path): - sort_path(path) - else: - logger.warning( - "Url '%s' is ignored: it is neither a file " - "nor a directory.", url, - ) - elif is_url(url): - # Only add url with clear scheme - urls.append(url) - else: - logger.warning( - "Url '%s' is ignored. It is either a non-existing " - "path or lacks a specific scheme.", url, - ) - - return files, urls - - def _candidate_sort_key(self, candidate): - """ - Function used to generate link sort key for link tuples. - The greater the return value, the more preferred it is. - If not finding wheels, then sorted by version only. - If finding wheels, then the sort order is by version, then: - 1. existing installs - 2. wheels ordered via Wheel.support_index_min(self.valid_tags) - 3. source archives - Note: it was considered to embed this logic into the Link - comparison operators, but then different sdist links - with the same version, would have to be considered equal - """ - support_num = len(self.valid_tags) - build_tag = tuple() - if candidate.location.is_wheel: - # can raise InvalidWheelFilename - wheel = Wheel(candidate.location.filename) - if not wheel.supported(self.valid_tags): - raise UnsupportedWheel( - "%s is not a supported wheel for this platform. It " - "can't be sorted." % wheel.filename - ) - pri = -(wheel.support_index_min(self.valid_tags)) - if wheel.build_tag is not None: - match = re.match(r'^(\d+)(.*)$', wheel.build_tag) - build_tag_groups = match.groups() - build_tag = (int(build_tag_groups[0]), build_tag_groups[1]) - else: # sdist - pri = -(support_num) - return (candidate.version, build_tag, pri) - - def _validate_secure_origin(self, logger, location): - # Determine if this url used a secure transport mechanism - parsed = urllib_parse.urlparse(str(location)) - origin = (parsed.scheme, parsed.hostname, parsed.port) - - # The protocol to use to see if the protocol matches. - # Don't count the repository type as part of the protocol: in - # cases such as "git+ssh", only use "ssh". (I.e., Only verify against - # the last scheme.) - protocol = origin[0].rsplit('+', 1)[-1] - - # Determine if our origin is a secure origin by looking through our - # hardcoded list of secure origins, as well as any additional ones - # configured on this PackageFinder instance. - for secure_origin in (SECURE_ORIGINS + self.secure_origins): - if protocol != secure_origin[0] and secure_origin[0] != "*": - continue - - try: - # We need to do this decode dance to ensure that we have a - # unicode object, even on Python 2.x. - addr = ipaddress.ip_address( - origin[1] - if ( - isinstance(origin[1], six.text_type) or - origin[1] is None - ) - else origin[1].decode("utf8") - ) - network = ipaddress.ip_network( - secure_origin[1] - if isinstance(secure_origin[1], six.text_type) - else secure_origin[1].decode("utf8") - ) - except ValueError: - # We don't have both a valid address or a valid network, so - # we'll check this origin against hostnames. - if (origin[1] and - origin[1].lower() != secure_origin[1].lower() and - secure_origin[1] != "*"): - continue - else: - # We have a valid address and network, so see if the address - # is contained within the network. - if addr not in network: - continue - - # Check to see if the port patches - if (origin[2] != secure_origin[2] and - secure_origin[2] != "*" and - secure_origin[2] is not None): - continue - - # If we've gotten here, then this origin matches the current - # secure origin and we should return True - return True - - # If we've gotten to this point, then the origin isn't secure and we - # will not accept it as a valid location to search. We will however - # log a warning that we are ignoring it. - logger.warning( - "The repository located at %s is not a trusted or secure host and " - "is being ignored. If this repository is available via HTTPS we " - "recommend you use HTTPS instead, otherwise you may silence " - "this warning and allow it anyway with '--trusted-host %s'.", - parsed.hostname, - parsed.hostname, - ) - - return False - - def _get_index_urls_locations(self, project_name): - """Returns the locations found via self.index_urls - - Checks the url_name on the main (first in the list) index and - use this url_name to produce all locations - """ - - def mkurl_pypi_url(url): - loc = posixpath.join( - url, - urllib_parse.quote(canonicalize_name(project_name))) - # For maximum compatibility with easy_install, ensure the path - # ends in a trailing slash. Although this isn't in the spec - # (and PyPI can handle it without the slash) some other index - # implementations might break if they relied on easy_install's - # behavior. - if not loc.endswith('/'): - loc = loc + '/' - return loc - - return [mkurl_pypi_url(url) for url in self.index_urls] - - def find_all_candidates(self, project_name): - """Find all available InstallationCandidate for project_name - - This checks index_urls, find_links and dependency_links. - All versions found are returned as an InstallationCandidate list. - - See _link_package_versions for details on which files are accepted - """ - index_locations = self._get_index_urls_locations(project_name) - index_file_loc, index_url_loc = self._sort_locations(index_locations) - fl_file_loc, fl_url_loc = self._sort_locations( - self.find_links, expand_dir=True, - ) - dep_file_loc, dep_url_loc = self._sort_locations(self.dependency_links) - - file_locations = (Link(url) for url in itertools.chain( - index_file_loc, fl_file_loc, dep_file_loc, - )) - - # We trust every url that the user has given us whether it was given - # via --index-url or --find-links - # We explicitly do not trust links that came from dependency_links - # We want to filter out any thing which does not have a secure origin. - url_locations = [ - link for link in itertools.chain( - (Link(url) for url in index_url_loc), - (Link(url) for url in fl_url_loc), - (Link(url) for url in dep_url_loc), - ) - if self._validate_secure_origin(logger, link) - ] - - logger.debug('%d location(s) to search for versions of %s:', - len(url_locations), project_name) - - for location in url_locations: - logger.debug('* %s', location) - - canonical_name = canonicalize_name(project_name) - formats = fmt_ctl_formats(self.format_control, canonical_name) - search = Search(project_name, canonical_name, formats) - find_links_versions = self._package_versions( - # We trust every directly linked archive in find_links - (Link(url, '-f') for url in self.find_links), - search - ) - - page_versions = [] - for page in self._get_pages(url_locations, project_name): - logger.debug('Analyzing links from page %s', page.url) - with indent_log(): - page_versions.extend( - self._package_versions(page.links, search) - ) - - dependency_versions = self._package_versions( - (Link(url) for url in self.dependency_links), search - ) - if dependency_versions: - logger.debug( - 'dependency_links found: %s', - ', '.join([ - version.location.url for version in dependency_versions - ]) - ) - - file_versions = self._package_versions(file_locations, search) - if file_versions: - file_versions.sort(reverse=True) - logger.debug( - 'Local files found: %s', - ', '.join([ - url_to_path(candidate.location.url) - for candidate in file_versions - ]) - ) - - # This is an intentional priority ordering - return ( - file_versions + find_links_versions + page_versions + - dependency_versions - ) - - def find_requirement(self, req, upgrade): - """Try to find a Link matching req - - Expects req, an InstallRequirement and upgrade, a boolean - Returns a Link if found, - Raises DistributionNotFound or BestVersionAlreadyInstalled otherwise - """ - all_candidates = self.find_all_candidates(req.name) - - # Filter out anything which doesn't match our specifier - compatible_versions = set( - req.specifier.filter( - # We turn the version object into a str here because otherwise - # when we're debundled but setuptools isn't, Python will see - # packaging.version.Version and - # pkg_resources._vendor.packaging.version.Version as different - # types. This way we'll use a str as a common data interchange - # format. If we stop using the pkg_resources provided specifier - # and start using our own, we can drop the cast to str(). - [str(c.version) for c in all_candidates], - prereleases=( - self.allow_all_prereleases - if self.allow_all_prereleases else None - ), - ) - ) - applicable_candidates = [ - # Again, converting to str to deal with debundling. - c for c in all_candidates if str(c.version) in compatible_versions - ] - - if applicable_candidates: - best_candidate = max(applicable_candidates, - key=self._candidate_sort_key) - else: - best_candidate = None - - if req.satisfied_by is not None: - installed_version = parse_version(req.satisfied_by.version) - else: - installed_version = None - - if installed_version is None and best_candidate is None: - logger.critical( - 'Could not find a version that satisfies the requirement %s ' - '(from versions: %s)', - req, - ', '.join( - sorted( - {str(c.version) for c in all_candidates}, - key=parse_version, - ) - ) - ) - - raise DistributionNotFound( - 'No matching distribution found for %s' % req - ) - - best_installed = False - if installed_version and ( - best_candidate is None or - best_candidate.version <= installed_version): - best_installed = True - - if not upgrade and installed_version is not None: - if best_installed: - logger.debug( - 'Existing installed version (%s) is most up-to-date and ' - 'satisfies requirement', - installed_version, - ) - else: - logger.debug( - 'Existing installed version (%s) satisfies requirement ' - '(most up-to-date version is %s)', - installed_version, - best_candidate.version, - ) - return None - - if best_installed: - # We have an existing version, and its the best version - logger.debug( - 'Installed version (%s) is most up-to-date (past versions: ' - '%s)', - installed_version, - ', '.join(sorted(compatible_versions, key=parse_version)) or - "none", - ) - raise BestVersionAlreadyInstalled - - logger.debug( - 'Using version %s (newest of versions: %s)', - best_candidate.version, - ', '.join(sorted(compatible_versions, key=parse_version)) - ) - return best_candidate.location - - def _get_pages(self, locations, project_name): - """ - Yields (page, page_url) from the given locations, skipping - locations that have errors. - """ - seen = set() - for location in locations: - if location in seen: - continue - seen.add(location) - - page = self._get_page(location) - if page is None: - continue - - yield page - - _py_version_re = re.compile(r'-py([123]\.?[0-9]?)$') - - def _sort_links(self, links): - """ - Returns elements of links in order, non-egg links first, egg links - second, while eliminating duplicates - """ - eggs, no_eggs = [], [] - seen = set() - for link in links: - if link not in seen: - seen.add(link) - if link.egg_fragment: - eggs.append(link) - else: - no_eggs.append(link) - return no_eggs + eggs - - def _package_versions(self, links, search): - result = [] - for link in self._sort_links(links): - v = self._link_package_versions(link, search) - if v is not None: - result.append(v) - return result - - def _log_skipped_link(self, link, reason): - if link not in self.logged_links: - logger.debug('Skipping link %s; %s', link, reason) - self.logged_links.add(link) - - def _link_package_versions(self, link, search): - """Return an InstallationCandidate or None""" - version = None - if link.egg_fragment: - egg_info = link.egg_fragment - ext = link.ext - else: - egg_info, ext = link.splitext() - if not ext: - self._log_skipped_link(link, 'not a file') - return - if ext not in SUPPORTED_EXTENSIONS: - self._log_skipped_link( - link, 'unsupported archive format: %s' % ext, - ) - return - if "binary" not in search.formats and ext == wheel_ext: - self._log_skipped_link( - link, 'No binaries permitted for %s' % search.supplied, - ) - return - if "macosx10" in link.path and ext == '.zip': - self._log_skipped_link(link, 'macosx10 one') - return - if ext == wheel_ext: - try: - wheel = Wheel(link.filename) - except InvalidWheelFilename: - self._log_skipped_link(link, 'invalid wheel filename') - return - if canonicalize_name(wheel.name) != search.canonical: - self._log_skipped_link( - link, 'wrong project name (not %s)' % search.supplied) - return - - if not wheel.supported(self.valid_tags): - self._log_skipped_link( - link, 'it is not compatible with this Python') - return - - version = wheel.version - - # This should be up by the search.ok_binary check, but see issue 2700. - if "source" not in search.formats and ext != wheel_ext: - self._log_skipped_link( - link, 'No sources permitted for %s' % search.supplied, - ) - return - - if not version: - version = egg_info_matches(egg_info, search.supplied, link) - if version is None: - self._log_skipped_link( - link, 'wrong project name (not %s)' % search.supplied) - return - - match = self._py_version_re.search(version) - if match: - version = version[:match.start()] - py_version = match.group(1) - if py_version != sys.version[:3]: - self._log_skipped_link( - link, 'Python version is incorrect') - return - try: - support_this_python = check_requires_python(link.requires_python) - except specifiers.InvalidSpecifier: - logger.debug("Package %s has an invalid Requires-Python entry: %s", - link.filename, link.requires_python) - support_this_python = True - - if not support_this_python: - logger.debug("The package %s is incompatible with the python" - "version in use. Acceptable python versions are:%s", - link, link.requires_python) - return - logger.debug('Found link %s, version: %s', link, version) - - return InstallationCandidate(search.supplied, version, link) - - def _get_page(self, link): - return HTMLPage.get_page(link, session=self.session) - - -def egg_info_matches( - egg_info, search_name, link, - _egg_info_re=re.compile(r'([a-z0-9_.]+)-([a-z0-9_.!+-]+)', re.I)): - """Pull the version part out of a string. - - :param egg_info: The string to parse. E.g. foo-2.1 - :param search_name: The name of the package this belongs to. None to - infer the name. Note that this cannot unambiguously parse strings - like foo-2-2 which might be foo, 2-2 or foo-2, 2. - :param link: The link the string came from, for logging on failure. - """ - match = _egg_info_re.search(egg_info) - if not match: - logger.debug('Could not parse version from link: %s', link) - return None - if search_name is None: - full_match = match.group(0) - return full_match[full_match.index('-'):] - name = match.group(0).lower() - # To match the "safe" name that pkg_resources creates: - name = name.replace('_', '-') - # project name and version must be separated by a dash - look_for = search_name.lower() + "-" - if name.startswith(look_for): - return match.group(0)[len(look_for):] - else: - return None - - -class HTMLPage(object): - """Represents one page, along with its URL""" - - def __init__(self, content, url, headers=None): - # Determine if we have any encoding information in our headers - encoding = None - if headers and "Content-Type" in headers: - content_type, params = cgi.parse_header(headers["Content-Type"]) - - if "charset" in params: - encoding = params['charset'] - - self.content = content - self.parsed = html5lib.parse( - self.content, - transport_encoding=encoding, - namespaceHTMLElements=False, - ) - self.url = url - self.headers = headers - - def __str__(self): - return self.url - - @classmethod - def get_page(cls, link, skip_archives=True, session=None): - if session is None: - raise TypeError( - "get_page() missing 1 required keyword argument: 'session'" - ) - - url = link.url - url = url.split('#', 1)[0] - - # Check for VCS schemes that do not support lookup as web pages. - from pip._internal.vcs import VcsSupport - for scheme in VcsSupport.schemes: - if url.lower().startswith(scheme) and url[len(scheme)] in '+:': - logger.debug('Cannot look at %s URL %s', scheme, link) - return None - - try: - if skip_archives: - filename = link.filename - for bad_ext in ARCHIVE_EXTENSIONS: - if filename.endswith(bad_ext): - content_type = cls._get_content_type( - url, session=session, - ) - if content_type.lower().startswith('text/html'): - break - else: - logger.debug( - 'Skipping page %s because of Content-Type: %s', - link, - content_type, - ) - return - - logger.debug('Getting page %s', url) - - # Tack index.html onto file:// URLs that point to directories - (scheme, netloc, path, params, query, fragment) = \ - urllib_parse.urlparse(url) - if (scheme == 'file' and - os.path.isdir(urllib_request.url2pathname(path))): - # add trailing slash if not present so urljoin doesn't trim - # final segment - if not url.endswith('/'): - url += '/' - url = urllib_parse.urljoin(url, 'index.html') - logger.debug(' file: URL is directory, getting %s', url) - - resp = session.get( - url, - headers={ - "Accept": "text/html", - "Cache-Control": "max-age=600", - }, - ) - resp.raise_for_status() - - # The check for archives above only works if the url ends with - # something that looks like an archive. However that is not a - # requirement of an url. Unless we issue a HEAD request on every - # url we cannot know ahead of time for sure if something is HTML - # or not. However we can check after we've downloaded it. - content_type = resp.headers.get('Content-Type', 'unknown') - if not content_type.lower().startswith("text/html"): - logger.debug( - 'Skipping page %s because of Content-Type: %s', - link, - content_type, - ) - return - - inst = cls(resp.content, resp.url, resp.headers) - except requests.HTTPError as exc: - cls._handle_fail(link, exc, url) - except SSLError as exc: - reason = "There was a problem confirming the ssl certificate: " - reason += str(exc) - cls._handle_fail(link, reason, url, meth=logger.info) - except requests.ConnectionError as exc: - cls._handle_fail(link, "connection error: %s" % exc, url) - except requests.Timeout: - cls._handle_fail(link, "timed out", url) - else: - return inst - - @staticmethod - def _handle_fail(link, reason, url, meth=None): - if meth is None: - meth = logger.debug - - meth("Could not fetch URL %s: %s - skipping", link, reason) - - @staticmethod - def _get_content_type(url, session): - """Get the Content-Type of the given url, using a HEAD request""" - scheme, netloc, path, query, fragment = urllib_parse.urlsplit(url) - if scheme not in {'http', 'https'}: - # FIXME: some warning or something? - # assertion error? - return '' - - resp = session.head(url, allow_redirects=True) - resp.raise_for_status() - - return resp.headers.get("Content-Type", "") - - @cached_property - def base_url(self): - bases = [ - x for x in self.parsed.findall(".//base") - if x.get("href") is not None - ] - if bases and bases[0].get("href"): - return bases[0].get("href") - else: - return self.url - - @property - def links(self): - """Yields all links in the page""" - for anchor in self.parsed.findall(".//a"): - if anchor.get("href"): - href = anchor.get("href") - url = self.clean_link( - urllib_parse.urljoin(self.base_url, href) - ) - pyrequire = anchor.get('data-requires-python') - pyrequire = unescape(pyrequire) if pyrequire else None - yield Link(url, self, requires_python=pyrequire) - - _clean_re = re.compile(r'[^a-z0-9$&+,/:;=?@.#%_\\|-]', re.I) - - def clean_link(self, url): - """Makes sure a link is fully encoded. That is, if a ' ' shows up in - the link, it will be rewritten to %20 (while not over-quoting - % or other characters).""" - return self._clean_re.sub( - lambda match: '%%%2x' % ord(match.group(0)), url) - - -class Link(object): - - def __init__(self, url, comes_from=None, requires_python=None): - """ - Object representing a parsed link from https://pypi.org/simple/* - - url: - url of the resource pointed to (href of the link) - comes_from: - instance of HTMLPage where the link was found, or string. - requires_python: - String containing the `Requires-Python` metadata field, specified - in PEP 345. This may be specified by a data-requires-python - attribute in the HTML link tag, as described in PEP 503. - """ - - # url can be a UNC windows share - if url.startswith('\\\\'): - url = path_to_url(url) - - self.url = url - self.comes_from = comes_from - self.requires_python = requires_python if requires_python else None - - def __str__(self): - if self.requires_python: - rp = ' (requires-python:%s)' % self.requires_python - else: - rp = '' - if self.comes_from: - return '%s (from %s)%s' % (self.url, self.comes_from, rp) - else: - return str(self.url) - - def __repr__(self): - return '' % self - - def __eq__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url == other.url - - def __ne__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url != other.url - - def __lt__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url < other.url - - def __le__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url <= other.url - - def __gt__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url > other.url - - def __ge__(self, other): - if not isinstance(other, Link): - return NotImplemented - return self.url >= other.url - - def __hash__(self): - return hash(self.url) - - @property - def filename(self): - _, netloc, path, _, _ = urllib_parse.urlsplit(self.url) - name = posixpath.basename(path.rstrip('/')) or netloc - name = urllib_parse.unquote(name) - assert name, ('URL %r produced no filename' % self.url) - return name - - @property - def scheme(self): - return urllib_parse.urlsplit(self.url)[0] - - @property - def netloc(self): - return urllib_parse.urlsplit(self.url)[1] - - @property - def path(self): - return urllib_parse.unquote(urllib_parse.urlsplit(self.url)[2]) - - def splitext(self): - return splitext(posixpath.basename(self.path.rstrip('/'))) - - @property - def ext(self): - return self.splitext()[1] - - @property - def url_without_fragment(self): - scheme, netloc, path, query, fragment = urllib_parse.urlsplit(self.url) - return urllib_parse.urlunsplit((scheme, netloc, path, query, None)) - - _egg_fragment_re = re.compile(r'[#&]egg=([^&]*)') - - @property - def egg_fragment(self): - match = self._egg_fragment_re.search(self.url) - if not match: - return None - return match.group(1) - - _subdirectory_fragment_re = re.compile(r'[#&]subdirectory=([^&]*)') - - @property - def subdirectory_fragment(self): - match = self._subdirectory_fragment_re.search(self.url) - if not match: - return None - return match.group(1) - - _hash_re = re.compile( - r'(sha1|sha224|sha384|sha256|sha512|md5)=([a-f0-9]+)' - ) - - @property - def hash(self): - match = self._hash_re.search(self.url) - if match: - return match.group(2) - return None - - @property - def hash_name(self): - match = self._hash_re.search(self.url) - if match: - return match.group(1) - return None - - @property - def show_url(self): - return posixpath.basename(self.url.split('#', 1)[0].split('?', 1)[0]) - - @property - def is_wheel(self): - return self.ext == wheel_ext - - @property - def is_artifact(self): - """ - Determines if this points to an actual artifact (e.g. a tarball) or if - it points to an "abstract" thing like a path or a VCS location. - """ - from pip._internal.vcs import vcs - - if self.scheme in vcs.all_schemes: - return False - - return True - - -FormatControl = namedtuple('FormatControl', 'no_binary only_binary') -"""This object has two fields, no_binary and only_binary. - -If a field is falsy, it isn't set. If it is {':all:'}, it should match all -packages except those listed in the other field. Only one field can be set -to {':all:'} at a time. The rest of the time exact package name matches -are listed, with any given package only showing up in one field at a time. -""" - - -def fmt_ctl_handle_mutual_exclude(value, target, other): - new = value.split(',') - while ':all:' in new: - other.clear() - target.clear() - target.add(':all:') - del new[:new.index(':all:') + 1] - if ':none:' not in new: - # Without a none, we want to discard everything as :all: covers it - return - for name in new: - if name == ':none:': - target.clear() - continue - name = canonicalize_name(name) - other.discard(name) - target.add(name) - - -def fmt_ctl_formats(fmt_ctl, canonical_name): - result = {"binary", "source"} - if canonical_name in fmt_ctl.only_binary: - result.discard('source') - elif canonical_name in fmt_ctl.no_binary: - result.discard('binary') - elif ':all:' in fmt_ctl.only_binary: - result.discard('source') - elif ':all:' in fmt_ctl.no_binary: - result.discard('binary') - return frozenset(result) - - -def fmt_ctl_no_binary(fmt_ctl): - fmt_ctl_handle_mutual_exclude( - ':all:', fmt_ctl.no_binary, fmt_ctl.only_binary, - ) - - -Search = namedtuple('Search', 'supplied canonical formats') -"""Capture key aspects of a search. - -:attribute supplied: The user supplied package. -:attribute canonical: The canonical package name. -:attribute formats: The formats allowed for this package. Should be a set - with 'binary' or 'source' or both in it. -""" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/locations.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/locations.py deleted file mode 100644 index ce8f7e9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/locations.py +++ /dev/null @@ -1,194 +0,0 @@ -"""Locations where we look for configs, install stuff, etc""" -from __future__ import absolute_import - -import os -import os.path -import platform -import site -import sys -import sysconfig -from distutils import sysconfig as distutils_sysconfig -from distutils.command.install import SCHEME_KEYS, install # type: ignore - -from pip._internal.compat import WINDOWS, expanduser -from pip._internal.utils import appdirs - -# Application Directories -USER_CACHE_DIR = appdirs.user_cache_dir("pip") - - -DELETE_MARKER_MESSAGE = '''\ -This file is placed here by pip to indicate the source was put -here by pip. - -Once this package is successfully installed this source code will be -deleted (unless you remove this file). -''' -PIP_DELETE_MARKER_FILENAME = 'pip-delete-this-directory.txt' - - -def write_delete_marker_file(directory): - """ - Write the pip delete marker file into this directory. - """ - filepath = os.path.join(directory, PIP_DELETE_MARKER_FILENAME) - with open(filepath, 'w') as marker_fp: - marker_fp.write(DELETE_MARKER_MESSAGE) - - -def running_under_virtualenv(): - """ - Return True if we're running inside a virtualenv, False otherwise. - - """ - if hasattr(sys, 'real_prefix'): - return True - elif sys.prefix != getattr(sys, "base_prefix", sys.prefix): - return True - - return False - - -def virtualenv_no_global(): - """ - Return True if in a venv and no system site packages. - """ - # this mirrors the logic in virtualenv.py for locating the - # no-global-site-packages.txt file - site_mod_dir = os.path.dirname(os.path.abspath(site.__file__)) - no_global_file = os.path.join(site_mod_dir, 'no-global-site-packages.txt') - if running_under_virtualenv() and os.path.isfile(no_global_file): - return True - - -if running_under_virtualenv(): - src_prefix = os.path.join(sys.prefix, 'src') -else: - # FIXME: keep src in cwd for now (it is not a temporary folder) - try: - src_prefix = os.path.join(os.getcwd(), 'src') - except OSError: - # In case the current working directory has been renamed or deleted - sys.exit( - "The folder you are executing pip from can no longer be found." - ) - -# under macOS + virtualenv sys.prefix is not properly resolved -# it is something like /path/to/python/bin/.. -# Note: using realpath due to tmp dirs on OSX being symlinks -src_prefix = os.path.abspath(src_prefix) - -# FIXME doesn't account for venv linked to global site-packages - -site_packages = sysconfig.get_path("purelib") -# This is because of a bug in PyPy's sysconfig module, see -# https://bitbucket.org/pypy/pypy/issues/2506/sysconfig-returns-incorrect-paths -# for more information. -if platform.python_implementation().lower() == "pypy": - site_packages = distutils_sysconfig.get_python_lib() -try: - # Use getusersitepackages if this is present, as it ensures that the - # value is initialised properly. - user_site = site.getusersitepackages() -except AttributeError: - user_site = site.USER_SITE -user_dir = expanduser('~') -if WINDOWS: - bin_py = os.path.join(sys.prefix, 'Scripts') - bin_user = os.path.join(user_site, 'Scripts') - # buildout uses 'bin' on Windows too? - if not os.path.exists(bin_py): - bin_py = os.path.join(sys.prefix, 'bin') - bin_user = os.path.join(user_site, 'bin') - - config_basename = 'pip.ini' - - legacy_storage_dir = os.path.join(user_dir, 'pip') - legacy_config_file = os.path.join( - legacy_storage_dir, - config_basename, - ) -else: - bin_py = os.path.join(sys.prefix, 'bin') - bin_user = os.path.join(user_site, 'bin') - - config_basename = 'pip.conf' - - legacy_storage_dir = os.path.join(user_dir, '.pip') - legacy_config_file = os.path.join( - legacy_storage_dir, - config_basename, - ) - # Forcing to use /usr/local/bin for standard macOS framework installs - # Also log to ~/Library/Logs/ for use with the Console.app log viewer - if sys.platform[:6] == 'darwin' and sys.prefix[:16] == '/System/Library/': - bin_py = '/usr/local/bin' - -site_config_files = [ - os.path.join(path, config_basename) - for path in appdirs.site_config_dirs('pip') -] - -venv_config_file = os.path.join(sys.prefix, config_basename) -new_config_file = os.path.join(appdirs.user_config_dir("pip"), config_basename) - - -def distutils_scheme(dist_name, user=False, home=None, root=None, - isolated=False, prefix=None): - """ - Return a distutils install scheme - """ - from distutils.dist import Distribution - - scheme = {} - - if isolated: - extra_dist_args = {"script_args": ["--no-user-cfg"]} - else: - extra_dist_args = {} - dist_args = {'name': dist_name} - dist_args.update(extra_dist_args) - - d = Distribution(dist_args) - d.parse_config_files() - i = d.get_command_obj('install', create=True) - # NOTE: setting user or home has the side-effect of creating the home dir - # or user base for installations during finalize_options() - # ideally, we'd prefer a scheme class that has no side-effects. - assert not (user and prefix), "user={} prefix={}".format(user, prefix) - i.user = user or i.user - if user: - i.prefix = "" - i.prefix = prefix or i.prefix - i.home = home or i.home - i.root = root or i.root - i.finalize_options() - for key in SCHEME_KEYS: - scheme[key] = getattr(i, 'install_' + key) - - # install_lib specified in setup.cfg should install *everything* - # into there (i.e. it takes precedence over both purelib and - # platlib). Note, i.install_lib is *always* set after - # finalize_options(); we only want to override here if the user - # has explicitly requested it hence going back to the config - if 'install_lib' in d.get_option_dict('install'): - scheme.update(dict(purelib=i.install_lib, platlib=i.install_lib)) - - if running_under_virtualenv(): - scheme['headers'] = os.path.join( - sys.prefix, - 'include', - 'site', - 'python' + sys.version[:3], - dist_name, - ) - - if root is not None: - path_no_drive = os.path.splitdrive( - os.path.abspath(scheme["headers"]))[1] - scheme["headers"] = os.path.join( - root, - path_no_drive[1:], - ) - - return scheme diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/__init__.py deleted file mode 100644 index 2d080a4..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/__init__.py +++ /dev/null @@ -1,4 +0,0 @@ -from pip._internal.models.index import Index, PyPI - - -__all__ = ["Index", "PyPI"] diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/index.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/index.py deleted file mode 100644 index 161de50..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/models/index.py +++ /dev/null @@ -1,15 +0,0 @@ -from pip._vendor.six.moves.urllib import parse as urllib_parse - - -class Index(object): - def __init__(self, url): - self.url = url - self.netloc = urllib_parse.urlsplit(url).netloc - self.simple_url = self.url_to_path('simple') - self.pypi_url = self.url_to_path('pypi') - - def url_to_path(self, path): - return urllib_parse.urljoin(self.url, path) - - -PyPI = Index('https://pypi.org/') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/check.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/check.py deleted file mode 100644 index bab6b9f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/check.py +++ /dev/null @@ -1,106 +0,0 @@ -"""Validation of dependencies of packages -""" - -from collections import namedtuple - -from pip._vendor.packaging.utils import canonicalize_name - -from pip._internal.operations.prepare import make_abstract_dist - -from pip._internal.utils.misc import get_installed_distributions -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from pip._internal.req.req_install import InstallRequirement - from typing import Any, Dict, Iterator, Set, Tuple, List - - # Shorthands - PackageSet = Dict[str, 'PackageDetails'] - Missing = Tuple[str, Any] - Conflicting = Tuple[str, str, Any] - - MissingDict = Dict[str, List[Missing]] - ConflictingDict = Dict[str, List[Conflicting]] - CheckResult = Tuple[MissingDict, ConflictingDict] - -PackageDetails = namedtuple('PackageDetails', ['version', 'requires']) - - -def create_package_set_from_installed(**kwargs): - # type: (**Any) -> PackageSet - """Converts a list of distributions into a PackageSet. - """ - # Default to using all packages installed on the system - if kwargs == {}: - kwargs = {"local_only": False, "skip": ()} - retval = {} - for dist in get_installed_distributions(**kwargs): - name = canonicalize_name(dist.project_name) - retval[name] = PackageDetails(dist.version, dist.requires()) - return retval - - -def check_package_set(package_set): - # type: (PackageSet) -> CheckResult - """Check if a package set is consistent - """ - missing = dict() - conflicting = dict() - - for package_name in package_set: - # Info about dependencies of package_name - missing_deps = set() # type: Set[Missing] - conflicting_deps = set() # type: Set[Conflicting] - - for req in package_set[package_name].requires: - name = canonicalize_name(req.project_name) # type: str - - # Check if it's missing - if name not in package_set: - missed = True - if req.marker is not None: - missed = req.marker.evaluate() - if missed: - missing_deps.add((name, req)) - continue - - # Check if there's a conflict - version = package_set[name].version # type: str - if not req.specifier.contains(version, prereleases=True): - conflicting_deps.add((name, version, req)) - - def str_key(x): - return str(x) - - if missing_deps: - missing[package_name] = sorted(missing_deps, key=str_key) - if conflicting_deps: - conflicting[package_name] = sorted(conflicting_deps, key=str_key) - - return missing, conflicting - - -def check_install_conflicts(to_install): - # type: (List[InstallRequirement]) -> Tuple[PackageSet, CheckResult] - """For checking if the dependency graph would be consistent after \ - installing given requirements - """ - # Start from the current state - state = create_package_set_from_installed() - _simulate_installation_of(to_install, state) - return state, check_package_set(state) - - -# NOTE from @pradyunsg -# This required a minor update in dependency link handling logic over at -# operations.prepare.IsSDist.dist() to get it working -def _simulate_installation_of(to_install, state): - # type: (List[InstallRequirement], PackageSet) -> None - """Computes the version of packages after installing to_install. - """ - - # Modify it as installing requirement_set would (assuming no errors) - for inst_req in to_install: - dist = make_abstract_dist(inst_req).dist(finder=None) - name = canonicalize_name(dist.key) - state[name] = PackageDetails(dist.version, dist.requires()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/freeze.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/freeze.py deleted file mode 100644 index 000102d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/freeze.py +++ /dev/null @@ -1,252 +0,0 @@ -from __future__ import absolute_import - -import collections -import logging -import os -import re -import warnings - -from pip._vendor import pkg_resources, six -from pip._vendor.packaging.utils import canonicalize_name -from pip._vendor.pkg_resources import RequirementParseError - -from pip._internal.exceptions import InstallationError -from pip._internal.req import InstallRequirement -from pip._internal.req.req_file import COMMENT_RE -from pip._internal.utils.deprecation import RemovedInPip11Warning -from pip._internal.utils.misc import ( - dist_is_editable, get_installed_distributions, -) - -logger = logging.getLogger(__name__) - - -def freeze( - requirement=None, - find_links=None, local_only=None, user_only=None, skip_regex=None, - isolated=False, - wheel_cache=None, - exclude_editable=False, - skip=()): - find_links = find_links or [] - skip_match = None - - if skip_regex: - skip_match = re.compile(skip_regex).search - - dependency_links = [] - - for dist in pkg_resources.working_set: - if dist.has_metadata('dependency_links.txt'): - dependency_links.extend( - dist.get_metadata_lines('dependency_links.txt') - ) - for link in find_links: - if '#egg=' in link: - dependency_links.append(link) - for link in find_links: - yield '-f %s' % link - installations = {} - for dist in get_installed_distributions(local_only=local_only, - skip=(), - user_only=user_only): - try: - req = FrozenRequirement.from_dist( - dist, - dependency_links - ) - except RequirementParseError: - logger.warning( - "Could not parse requirement: %s", - dist.project_name - ) - continue - if exclude_editable and req.editable: - continue - installations[req.name] = req - - if requirement: - # the options that don't get turned into an InstallRequirement - # should only be emitted once, even if the same option is in multiple - # requirements files, so we need to keep track of what has been emitted - # so that we don't emit it again if it's seen again - emitted_options = set() - # keep track of which files a requirement is in so that we can - # give an accurate warning if a requirement appears multiple times. - req_files = collections.defaultdict(list) - for req_file_path in requirement: - with open(req_file_path) as req_file: - for line in req_file: - if (not line.strip() or - line.strip().startswith('#') or - (skip_match and skip_match(line)) or - line.startswith(( - '-r', '--requirement', - '-Z', '--always-unzip', - '-f', '--find-links', - '-i', '--index-url', - '--pre', - '--trusted-host', - '--process-dependency-links', - '--extra-index-url'))): - line = line.rstrip() - if line not in emitted_options: - emitted_options.add(line) - yield line - continue - - if line.startswith('-e') or line.startswith('--editable'): - if line.startswith('-e'): - line = line[2:].strip() - else: - line = line[len('--editable'):].strip().lstrip('=') - line_req = InstallRequirement.from_editable( - line, - isolated=isolated, - wheel_cache=wheel_cache, - ) - else: - line_req = InstallRequirement.from_line( - COMMENT_RE.sub('', line).strip(), - isolated=isolated, - wheel_cache=wheel_cache, - ) - - if not line_req.name: - logger.info( - "Skipping line in requirement file [%s] because " - "it's not clear what it would install: %s", - req_file_path, line.strip(), - ) - logger.info( - " (add #egg=PackageName to the URL to avoid" - " this warning)" - ) - elif line_req.name not in installations: - # either it's not installed, or it is installed - # but has been processed already - if not req_files[line_req.name]: - logger.warning( - "Requirement file [%s] contains %s, but that " - "package is not installed", - req_file_path, - COMMENT_RE.sub('', line).strip(), - ) - else: - req_files[line_req.name].append(req_file_path) - else: - yield str(installations[line_req.name]).rstrip() - del installations[line_req.name] - req_files[line_req.name].append(req_file_path) - - # Warn about requirements that were included multiple times (in a - # single requirements file or in different requirements files). - for name, files in six.iteritems(req_files): - if len(files) > 1: - logger.warning("Requirement %s included multiple times [%s]", - name, ', '.join(sorted(set(files)))) - - yield( - '## The following requirements were added by ' - 'pip freeze:' - ) - for installation in sorted( - installations.values(), key=lambda x: x.name.lower()): - if canonicalize_name(installation.name) not in skip: - yield str(installation).rstrip() - - -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._internal.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: - warnings.warn( - "SVN editable detection based on dependency links " - "will be dropped in the future.", - RemovedInPip11Warning, - ) - 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' diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/prepare.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/prepare.py deleted file mode 100644 index c1e8158..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/operations/prepare.py +++ /dev/null @@ -1,380 +0,0 @@ -"""Prepares a distribution for installation -""" - -import itertools -import logging -import os -import sys -from copy import copy - -from pip._vendor import pkg_resources, requests - -from pip._internal.build_env import NoOpBuildEnvironment -from pip._internal.compat import expanduser -from pip._internal.download import ( - is_dir_url, is_file_url, is_vcs_url, unpack_url, url_to_path, -) -from pip._internal.exceptions import ( - DirectoryUrlHashUnsupported, HashUnpinned, InstallationError, - PreviousBuildDirError, VcsHashUnsupported, -) -from pip._internal.index import FormatControl -from pip._internal.req.req_install import InstallRequirement -from pip._internal.utils.hashes import MissingHashes -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - call_subprocess, display_path, normalize_path, -) -from pip._internal.utils.ui import open_spinner -from pip._internal.vcs import vcs - -logger = logging.getLogger(__name__) - - -def make_abstract_dist(req): - """Factory to make an abstract dist object. - - Preconditions: Either an editable req with a source_dir, or satisfied_by or - a wheel link, or a non-editable req with a source_dir. - - :return: A concrete DistAbstraction. - """ - if req.editable: - return IsSDist(req) - elif req.link and req.link.is_wheel: - return IsWheel(req) - else: - return IsSDist(req) - - -def _install_build_reqs(finder, prefix, build_requirements): - # NOTE: What follows is not a very good thing. - # Eventually, this should move into the BuildEnvironment class and - # that should handle all the isolation and sub-process invocation. - finder = copy(finder) - finder.format_control = FormatControl(set(), set([":all:"])) - urls = [ - finder.find_requirement( - InstallRequirement.from_line(r), upgrade=False).url - for r in build_requirements - ] - args = [ - sys.executable, '-m', 'pip', 'install', '--ignore-installed', - '--no-user', '--prefix', prefix, - ] + list(urls) - - with open_spinner("Installing build dependencies") as spinner: - call_subprocess(args, show_stdout=False, spinner=spinner) - - -class DistAbstraction(object): - """Abstracts out the wheel vs non-wheel Resolver.resolve() logic. - - The requirements for anything installable are as follows: - - we must be able to determine the requirement name - (or we can't correctly handle the non-upgrade case). - - we must be able to generate a list of run-time dependencies - without installing any additional packages (or we would - have to either burn time by doing temporary isolated installs - or alternatively violate pips 'don't start installing unless - all requirements are available' rule - neither of which are - desirable). - - for packages with setup requirements, we must also be able - to determine their requirements without installing additional - packages (for the same reason as run-time dependencies) - - we must be able to create a Distribution object exposing the - above metadata. - """ - - def __init__(self, req): - self.req = req - - def dist(self, finder): - """Return a setuptools Dist object.""" - raise NotImplementedError(self.dist) - - def prep_for_dist(self, finder): - """Ensure that we can get a Dist for this requirement.""" - raise NotImplementedError(self.dist) - - -class IsWheel(DistAbstraction): - - def dist(self, finder): - return list(pkg_resources.find_distributions( - self.req.source_dir))[0] - - def prep_for_dist(self, finder, build_isolation): - # FIXME:https://github.com/pypa/pip/issues/1112 - pass - - -class IsSDist(DistAbstraction): - - def dist(self, finder): - dist = self.req.get_dist() - # FIXME: shouldn't be globally added. - if finder and dist.has_metadata('dependency_links.txt'): - finder.add_dependency_links( - dist.get_metadata_lines('dependency_links.txt') - ) - return dist - - def prep_for_dist(self, finder, build_isolation): - # Before calling "setup.py egg_info", we need to set-up the build - # environment. - build_requirements, isolate = self.req.get_pep_518_info() - should_isolate = build_isolation and isolate - - minimum_requirements = ('setuptools', 'wheel') - missing_requirements = set(minimum_requirements) - set( - pkg_resources.Requirement(r).key - for r in build_requirements - ) - if missing_requirements: - def format_reqs(rs): - return ' and '.join(map(repr, sorted(rs))) - logger.warning( - "Missing build time requirements in pyproject.toml for %s: " - "%s.", self.req, format_reqs(missing_requirements) - ) - logger.warning( - "This version of pip does not implement PEP 517 so it cannot " - "build a wheel without %s.", format_reqs(minimum_requirements) - ) - - if should_isolate: - with self.req.build_env: - pass - _install_build_reqs(finder, self.req.build_env.path, - build_requirements) - else: - self.req.build_env = NoOpBuildEnvironment(no_clean=False) - - self.req.run_egg_info() - self.req.assert_source_matches_version() - - -class Installed(DistAbstraction): - - def dist(self, finder): - return self.req.satisfied_by - - def prep_for_dist(self, finder): - pass - - -class RequirementPreparer(object): - """Prepares a Requirement - """ - - def __init__(self, build_dir, download_dir, src_dir, wheel_download_dir, - progress_bar, build_isolation): - super(RequirementPreparer, self).__init__() - - self.src_dir = src_dir - self.build_dir = build_dir - - # Where still packed archives should be written to. If None, they are - # not saved, and are deleted immediately after unpacking. - self.download_dir = download_dir - - # Where still-packed .whl files should be written to. If None, they are - # written to the download_dir parameter. Separate to download_dir to - # permit only keeping wheel archives for pip wheel. - if wheel_download_dir: - wheel_download_dir = normalize_path(wheel_download_dir) - self.wheel_download_dir = wheel_download_dir - - # NOTE - # download_dir and wheel_download_dir overlap semantically and may - # be combined if we're willing to have non-wheel archives present in - # the wheelhouse output by 'pip wheel'. - - self.progress_bar = progress_bar - - # Is build isolation allowed? - self.build_isolation = build_isolation - - @property - def _download_should_save(self): - # TODO: Modify to reduce indentation needed - if self.download_dir: - self.download_dir = expanduser(self.download_dir) - if os.path.exists(self.download_dir): - return True - else: - logger.critical('Could not find download directory') - raise InstallationError( - "Could not find or access download directory '%s'" - % display_path(self.download_dir)) - return False - - def prepare_linked_requirement(self, req, session, finder, - upgrade_allowed, require_hashes): - """Prepare a requirement that would be obtained from req.link - """ - # TODO: Breakup into smaller functions - if req.link and req.link.scheme == 'file': - path = url_to_path(req.link.url) - logger.info('Processing %s', display_path(path)) - else: - logger.info('Collecting %s', req) - - with indent_log(): - # @@ if filesystem packages are not marked - # editable in a req, a non deterministic error - # occurs when the script attempts to unpack the - # build directory - req.ensure_has_source_dir(self.build_dir) - # If a checkout exists, it's unwise to keep going. version - # inconsistencies are logged later, but do not fail the - # installation. - # FIXME: this won't upgrade when there's an existing - # package unpacked in `req.source_dir` - # package unpacked in `req.source_dir` - if os.path.exists(os.path.join(req.source_dir, 'setup.py')): - raise PreviousBuildDirError( - "pip can't proceed with requirements '%s' due to a" - " pre-existing build directory (%s). This is " - "likely due to a previous installation that failed" - ". pip is being responsible and not assuming it " - "can delete this. Please delete it and try again." - % (req, req.source_dir) - ) - req.populate_link(finder, upgrade_allowed, require_hashes) - - # We can't hit this spot and have populate_link return None. - # req.satisfied_by is None here (because we're - # guarded) and upgrade has no impact except when satisfied_by - # is not None. - # Then inside find_requirement existing_applicable -> False - # If no new versions are found, DistributionNotFound is raised, - # otherwise a result is guaranteed. - assert req.link - link = req.link - - # Now that we have the real link, we can tell what kind of - # requirements we have and raise some more informative errors - # than otherwise. (For example, we can raise VcsHashUnsupported - # for a VCS URL rather than HashMissing.) - if require_hashes: - # We could check these first 2 conditions inside - # unpack_url and save repetition of conditions, but then - # we would report less-useful error messages for - # unhashable requirements, complaining that there's no - # hash provided. - if is_vcs_url(link): - raise VcsHashUnsupported() - elif is_file_url(link) and is_dir_url(link): - raise DirectoryUrlHashUnsupported() - if not req.original_link and not req.is_pinned: - # Unpinned packages are asking for trouble when a new - # version is uploaded. This isn't a security check, but - # it saves users a surprising hash mismatch in the - # future. - # - # file:/// URLs aren't pinnable, so don't complain - # about them not being pinned. - raise HashUnpinned() - - hashes = req.hashes(trust_internet=not require_hashes) - if require_hashes and not hashes: - # Known-good hashes are missing for this requirement, so - # shim it with a facade object that will provoke hash - # computation and then raise a HashMissing exception - # showing the user what the hash should be. - hashes = MissingHashes() - - try: - download_dir = self.download_dir - # We always delete unpacked sdists after pip ran. - autodelete_unpacked = True - if req.link.is_wheel and self.wheel_download_dir: - # when doing 'pip wheel` we download wheels to a - # dedicated dir. - download_dir = self.wheel_download_dir - if req.link.is_wheel: - if download_dir: - # When downloading, we only unpack wheels to get - # metadata. - autodelete_unpacked = True - else: - # When installing a wheel, we use the unpacked - # wheel. - autodelete_unpacked = False - unpack_url( - req.link, req.source_dir, - download_dir, autodelete_unpacked, - session=session, hashes=hashes, - progress_bar=self.progress_bar - ) - except requests.HTTPError as exc: - logger.critical( - 'Could not install requirement %s because of error %s', - req, - exc, - ) - raise InstallationError( - 'Could not install requirement %s because of HTTP ' - 'error %s for URL %s' % - (req, exc, req.link) - ) - abstract_dist = make_abstract_dist(req) - abstract_dist.prep_for_dist(finder, self.build_isolation) - if self._download_should_save: - # Make a .zip of the source_dir we already created. - if req.link.scheme in vcs.all_schemes: - req.archive(self.download_dir) - return abstract_dist - - def prepare_editable_requirement(self, req, require_hashes, use_user_site, - finder): - """Prepare an editable requirement - """ - assert req.editable, "cannot prepare a non-editable req as editable" - - logger.info('Obtaining %s', req) - - with indent_log(): - if require_hashes: - raise InstallationError( - 'The editable requirement %s cannot be installed when ' - 'requiring hashes, because there is no single file to ' - 'hash.' % req - ) - req.ensure_has_source_dir(self.src_dir) - req.update_editable(not self._download_should_save) - - abstract_dist = make_abstract_dist(req) - abstract_dist.prep_for_dist(finder, self.build_isolation) - - if self._download_should_save: - req.archive(self.download_dir) - req.check_if_exists(use_user_site) - - return abstract_dist - - def prepare_installed_requirement(self, req, require_hashes, skip_reason): - """Prepare an already-installed requirement - """ - assert req.satisfied_by, "req should have been satisfied but isn't" - assert skip_reason is not None, ( - "did not get skip reason skipped but req.satisfied_by " - "is set to %r" % (req.satisfied_by,) - ) - logger.info( - 'Requirement %s: %s (%s)', - skip_reason, req, req.satisfied_by.version - ) - with indent_log(): - if require_hashes: - logger.debug( - 'Since it is already installed, we are trusting this ' - 'package without checking its hash. To ensure a ' - 'completely repeatable environment, install into an ' - 'empty virtualenv.' - ) - abstract_dist = Installed(req) - - return abstract_dist diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/pep425tags.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/pep425tags.py deleted file mode 100644 index 5d31310..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/pep425tags.py +++ /dev/null @@ -1,317 +0,0 @@ -"""Generate and work with PEP 425 Compatibility Tags.""" -from __future__ import absolute_import - -import distutils.util -import logging -import platform -import re -import sys -import sysconfig -import warnings -from collections import OrderedDict - -import pip._internal.utils.glibc - -logger = logging.getLogger(__name__) - -_osx_arch_pat = re.compile(r'(.+)_(\d+)_(\d+)_(.+)') - - -def get_config_var(var): - try: - return sysconfig.get_config_var(var) - except IOError as e: # Issue #1074 - warnings.warn("{}".format(e), RuntimeWarning) - return None - - -def get_abbr_impl(): - """Return abbreviated implementation name.""" - if hasattr(sys, 'pypy_version_info'): - pyimpl = 'pp' - elif sys.platform.startswith('java'): - pyimpl = 'jy' - elif sys.platform == 'cli': - pyimpl = 'ip' - else: - pyimpl = 'cp' - return pyimpl - - -def get_impl_ver(): - """Return implementation version.""" - impl_ver = get_config_var("py_version_nodot") - if not impl_ver or get_abbr_impl() == 'pp': - impl_ver = ''.join(map(str, get_impl_version_info())) - return impl_ver - - -def get_impl_version_info(): - """Return sys.version_info-like tuple for use in decrementing the minor - version.""" - if get_abbr_impl() == 'pp': - # as per https://github.com/pypa/pip/issues/2882 - return (sys.version_info[0], sys.pypy_version_info.major, - sys.pypy_version_info.minor) - else: - return sys.version_info[0], sys.version_info[1] - - -def get_impl_tag(): - """ - Returns the Tag for this specific implementation. - """ - return "{}{}".format(get_abbr_impl(), get_impl_ver()) - - -def get_flag(var, fallback, expected=True, warn=True): - """Use a fallback method for determining SOABI flags if the needed config - var is unset or unavailable.""" - val = get_config_var(var) - if val is None: - if warn: - logger.debug("Config variable '%s' is unset, Python ABI tag may " - "be incorrect", var) - return fallback() - return val == expected - - -def get_abi_tag(): - """Return the ABI tag based on SOABI (if available) or emulate SOABI - (CPython 2, PyPy).""" - soabi = get_config_var('SOABI') - impl = get_abbr_impl() - if not soabi and impl in {'cp', 'pp'} and hasattr(sys, 'maxunicode'): - d = '' - m = '' - u = '' - if get_flag('Py_DEBUG', - lambda: hasattr(sys, 'gettotalrefcount'), - warn=(impl == 'cp')): - d = 'd' - if get_flag('WITH_PYMALLOC', - lambda: impl == 'cp', - warn=(impl == 'cp')): - m = 'm' - if get_flag('Py_UNICODE_SIZE', - lambda: sys.maxunicode == 0x10ffff, - expected=4, - warn=(impl == 'cp' and - sys.version_info < (3, 3))) \ - and sys.version_info < (3, 3): - u = 'u' - abi = '%s%s%s%s%s' % (impl, get_impl_ver(), d, m, u) - elif soabi and soabi.startswith('cpython-'): - abi = 'cp' + soabi.split('-')[1] - elif soabi: - abi = soabi.replace('.', '_').replace('-', '_') - else: - abi = None - return abi - - -def _is_running_32bit(): - return sys.maxsize == 2147483647 - - -def get_platform(): - """Return our platform name 'win32', 'linux_x86_64'""" - if sys.platform == 'darwin': - # distutils.util.get_platform() returns the release based on the value - # of MACOSX_DEPLOYMENT_TARGET on which Python was built, which may - # be significantly older than the user's current machine. - release, _, machine = platform.mac_ver() - split_ver = release.split('.') - - if machine == "x86_64" and _is_running_32bit(): - machine = "i386" - elif machine == "ppc64" and _is_running_32bit(): - machine = "ppc" - - return 'macosx_{}_{}_{}'.format(split_ver[0], split_ver[1], machine) - - # XXX remove distutils dependency - result = distutils.util.get_platform().replace('.', '_').replace('-', '_') - if result == "linux_x86_64" and _is_running_32bit(): - # 32 bit Python program (running on a 64 bit Linux): pip should only - # install and run 32 bit compiled extensions in that case. - result = "linux_i686" - - return result - - -def is_manylinux1_compatible(): - # Only Linux, and only x86-64 / i686 - if get_platform() not in {"linux_x86_64", "linux_i686"}: - return False - - # Check for presence of _manylinux module - try: - import _manylinux - return bool(_manylinux.manylinux1_compatible) - except (ImportError, AttributeError): - # Fall through to heuristic check below - pass - - # Check glibc version. CentOS 5 uses glibc 2.5. - return pip._internal.utils.glibc.have_compatible_glibc(2, 5) - - -def get_darwin_arches(major, minor, machine): - """Return a list of supported arches (including group arches) for - the given major, minor and machine architecture of an macOS machine. - """ - arches = [] - - def _supports_arch(major, minor, arch): - # Looking at the application support for macOS versions in the chart - # provided by https://en.wikipedia.org/wiki/OS_X#Versions it appears - # our timeline looks roughly like: - # - # 10.0 - Introduces ppc support. - # 10.4 - Introduces ppc64, i386, and x86_64 support, however the ppc64 - # and x86_64 support is CLI only, and cannot be used for GUI - # applications. - # 10.5 - Extends ppc64 and x86_64 support to cover GUI applications. - # 10.6 - Drops support for ppc64 - # 10.7 - Drops support for ppc - # - # Given that we do not know if we're installing a CLI or a GUI - # application, we must be conservative and assume it might be a GUI - # application and behave as if ppc64 and x86_64 support did not occur - # until 10.5. - # - # Note: The above information is taken from the "Application support" - # column in the chart not the "Processor support" since I believe - # that we care about what instruction sets an application can use - # not which processors the OS supports. - if arch == 'ppc': - return (major, minor) <= (10, 5) - if arch == 'ppc64': - return (major, minor) == (10, 5) - if arch == 'i386': - return (major, minor) >= (10, 4) - if arch == 'x86_64': - return (major, minor) >= (10, 5) - if arch in groups: - for garch in groups[arch]: - if _supports_arch(major, minor, garch): - return True - return False - - groups = OrderedDict([ - ("fat", ("i386", "ppc")), - ("intel", ("x86_64", "i386")), - ("fat64", ("x86_64", "ppc64")), - ("fat32", ("x86_64", "i386", "ppc")), - ]) - - if _supports_arch(major, minor, machine): - arches.append(machine) - - for garch in groups: - if machine in groups[garch] and _supports_arch(major, minor, garch): - arches.append(garch) - - arches.append('universal') - - return arches - - -def get_supported(versions=None, noarch=False, platform=None, - impl=None, abi=None): - """Return a list of supported tags for each version specified in - `versions`. - - :param versions: a list of string versions, of the form ["33", "32"], - or None. The first version will be assumed to support our ABI. - :param platform: specify the exact platform you want valid - tags for, or None. If None, use the local system platform. - :param impl: specify the exact implementation you want valid - tags for, or None. If None, use the local interpreter impl. - :param abi: specify the exact abi you want valid - tags for, or None. If None, use the local interpreter abi. - """ - supported = [] - - # Versions must be given with respect to the preference - if versions is None: - versions = [] - version_info = get_impl_version_info() - major = version_info[:-1] - # Support all previous minor Python versions. - for minor in range(version_info[-1], -1, -1): - versions.append(''.join(map(str, major + (minor,)))) - - impl = impl or get_abbr_impl() - - abis = [] - - abi = abi or get_abi_tag() - if abi: - abis[0:0] = [abi] - - abi3s = set() - import imp - for suffix in imp.get_suffixes(): - if suffix[0].startswith('.abi'): - abi3s.add(suffix[0].split('.', 2)[1]) - - abis.extend(sorted(list(abi3s))) - - abis.append('none') - - if not noarch: - arch = platform or get_platform() - if arch.startswith('macosx'): - # support macosx-10.6-intel on macosx-10.9-x86_64 - match = _osx_arch_pat.match(arch) - if match: - name, major, minor, actual_arch = match.groups() - tpl = '{}_{}_%i_%s'.format(name, major) - arches = [] - for m in reversed(range(int(minor) + 1)): - for a in get_darwin_arches(int(major), m, actual_arch): - arches.append(tpl % (m, a)) - else: - # arch pattern didn't match (?!) - arches = [arch] - elif platform is None and is_manylinux1_compatible(): - arches = [arch.replace('linux', 'manylinux1'), arch] - else: - arches = [arch] - - # Current version, current API (built specifically for our Python): - for abi in abis: - for arch in arches: - supported.append(('%s%s' % (impl, versions[0]), abi, arch)) - - # abi3 modules compatible with older version of Python - for version in versions[1:]: - # abi3 was introduced in Python 3.2 - if version in {'31', '30'}: - break - for abi in abi3s: # empty set if not Python 3 - for arch in arches: - supported.append(("%s%s" % (impl, version), abi, arch)) - - # Has binaries, does not use the Python API: - for arch in arches: - supported.append(('py%s' % (versions[0][0]), 'none', arch)) - - # No abi / arch, but requires our implementation: - supported.append(('%s%s' % (impl, versions[0]), 'none', 'any')) - # Tagged specifically as being cross-version compatible - # (with just the major version specified) - supported.append(('%s%s' % (impl, versions[0][0]), 'none', 'any')) - - # No abi / arch, generic Python - for i, version in enumerate(versions): - supported.append(('py%s' % (version,), 'none', 'any')) - if i == 0: - supported.append(('py%s' % (version[0]), 'none', 'any')) - - return supported - - -implementation_tag = get_impl_tag() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/__init__.py deleted file mode 100644 index 07ae607..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/__init__.py +++ /dev/null @@ -1,69 +0,0 @@ -from __future__ import absolute_import - -import logging - -from .req_install import InstallRequirement -from .req_set import RequirementSet -from .req_file import parse_requirements -from pip._internal.utils.logging import indent_log - - -__all__ = [ - "RequirementSet", "InstallRequirement", - "parse_requirements", "install_given_reqs", -] - -logger = logging.getLogger(__name__) - - -def install_given_reqs(to_install, install_options, global_options=(), - *args, **kwargs): - """ - Install everything in the given list. - - (to be called after having downloaded and unpacked the packages) - """ - - if to_install: - logger.info( - 'Installing collected packages: %s', - ', '.join([req.name for req in to_install]), - ) - - with indent_log(): - for requirement in to_install: - if requirement.conflicts_with: - logger.info( - 'Found existing installation: %s', - requirement.conflicts_with, - ) - with indent_log(): - uninstalled_pathset = requirement.uninstall( - auto_confirm=True - ) - try: - requirement.install( - install_options, - global_options, - *args, - **kwargs - ) - except: - should_rollback = ( - requirement.conflicts_with and - not requirement.install_succeeded - ) - # if install did not succeed, rollback previous uninstall - if should_rollback: - uninstalled_pathset.rollback() - raise - else: - should_commit = ( - requirement.conflicts_with and - requirement.install_succeeded - ) - if should_commit: - uninstalled_pathset.commit() - requirement.remove_temporary_source() - - return to_install diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_file.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_file.py deleted file mode 100644 index 9e6ef41..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_file.py +++ /dev/null @@ -1,338 +0,0 @@ -""" -Requirements file parsing -""" - -from __future__ import absolute_import - -import optparse -import os -import re -import shlex -import sys - -from pip._vendor.six.moves import filterfalse -from pip._vendor.six.moves.urllib import parse as urllib_parse - -from pip._internal import cmdoptions -from pip._internal.download import get_file_content -from pip._internal.exceptions import RequirementsFileParseError -from pip._internal.req.req_install import InstallRequirement - -__all__ = ['parse_requirements'] - -SCHEME_RE = re.compile(r'^(http|https|file):', re.I) -COMMENT_RE = re.compile(r'(^|\s)+#.*$') - -# Matches environment variable-style values in '${MY_VARIABLE_1}' with the -# variable name consisting of only uppercase letters, digits or the '_' -# (underscore). This follows the POSIX standard defined in IEEE Std 1003.1, -# 2013 Edition. -ENV_VAR_RE = re.compile(r'(?P\$\{(?P[A-Z0-9_]+)\})') - -SUPPORTED_OPTIONS = [ - cmdoptions.constraints, - cmdoptions.editable, - cmdoptions.requirements, - cmdoptions.no_index, - cmdoptions.index_url, - cmdoptions.find_links, - cmdoptions.extra_index_url, - cmdoptions.always_unzip, - cmdoptions.no_binary, - cmdoptions.only_binary, - cmdoptions.pre, - cmdoptions.process_dependency_links, - cmdoptions.trusted_host, - cmdoptions.require_hashes, -] - -# options to be passed to requirements -SUPPORTED_OPTIONS_REQ = [ - cmdoptions.install_options, - cmdoptions.global_options, - cmdoptions.hash, -] - -# the 'dest' string values -SUPPORTED_OPTIONS_REQ_DEST = [o().dest for o in SUPPORTED_OPTIONS_REQ] - - -def parse_requirements(filename, finder=None, comes_from=None, options=None, - session=None, constraint=False, wheel_cache=None): - """Parse a requirements file and yield InstallRequirement instances. - - :param filename: Path or url of requirements file. - :param finder: Instance of pip.index.PackageFinder. - :param comes_from: Origin description of requirements. - :param options: cli options. - :param session: Instance of pip.download.PipSession. - :param constraint: If true, parsing a constraint file rather than - requirements file. - :param wheel_cache: Instance of pip.wheel.WheelCache - """ - if session is None: - raise TypeError( - "parse_requirements() missing 1 required keyword argument: " - "'session'" - ) - - _, content = get_file_content( - filename, comes_from=comes_from, session=session - ) - - lines_enum = preprocess(content, options) - - for line_number, line in lines_enum: - req_iter = process_line(line, filename, line_number, finder, - comes_from, options, session, wheel_cache, - constraint=constraint) - for req in req_iter: - yield req - - -def preprocess(content, options): - """Split, filter, and join lines, and return a line iterator - - :param content: the content of the requirements file - :param options: cli options - """ - lines_enum = enumerate(content.splitlines(), start=1) - lines_enum = join_lines(lines_enum) - lines_enum = ignore_comments(lines_enum) - lines_enum = skip_regex(lines_enum, options) - lines_enum = expand_env_variables(lines_enum) - return lines_enum - - -def process_line(line, filename, line_number, finder=None, comes_from=None, - options=None, session=None, wheel_cache=None, - constraint=False): - """Process a single requirements line; This can result in creating/yielding - requirements, or updating the finder. - - For lines that contain requirements, the only options that have an effect - are from SUPPORTED_OPTIONS_REQ, and they are scoped to the - requirement. Other options from SUPPORTED_OPTIONS may be present, but are - ignored. - - For lines that do not contain requirements, the only options that have an - effect are from SUPPORTED_OPTIONS. Options from SUPPORTED_OPTIONS_REQ may - be present, but are ignored. These lines may contain multiple options - (although our docs imply only one is supported), and all our parsed and - affect the finder. - - :param constraint: If True, parsing a constraints file. - :param options: OptionParser options that we may update - """ - parser = build_parser(line) - defaults = parser.get_default_values() - defaults.index_url = None - if finder: - # `finder.format_control` will be updated during parsing - defaults.format_control = finder.format_control - args_str, options_str = break_args_options(line) - if sys.version_info < (2, 7, 3): - # Prior to 2.7.3, shlex cannot deal with unicode entries - options_str = options_str.encode('utf8') - opts, _ = parser.parse_args(shlex.split(options_str), defaults) - - # preserve for the nested code path - line_comes_from = '%s %s (line %s)' % ( - '-c' if constraint else '-r', filename, line_number, - ) - - # yield a line requirement - if args_str: - isolated = options.isolated_mode if options else False - if options: - cmdoptions.check_install_build_global(options, opts) - # get the options that apply to requirements - req_options = {} - for dest in SUPPORTED_OPTIONS_REQ_DEST: - if dest in opts.__dict__ and opts.__dict__[dest]: - req_options[dest] = opts.__dict__[dest] - yield InstallRequirement.from_line( - args_str, line_comes_from, constraint=constraint, - isolated=isolated, options=req_options, wheel_cache=wheel_cache - ) - - # yield an editable requirement - elif opts.editables: - isolated = options.isolated_mode if options else False - yield InstallRequirement.from_editable( - opts.editables[0], comes_from=line_comes_from, - constraint=constraint, isolated=isolated, wheel_cache=wheel_cache - ) - - # parse a nested requirements file - elif opts.requirements or opts.constraints: - if opts.requirements: - req_path = opts.requirements[0] - nested_constraint = False - else: - req_path = opts.constraints[0] - nested_constraint = True - # original file is over http - if SCHEME_RE.search(filename): - # do a url join so relative paths work - req_path = urllib_parse.urljoin(filename, req_path) - # original file and nested file are paths - elif not SCHEME_RE.search(req_path): - # do a join so relative paths work - req_path = os.path.join(os.path.dirname(filename), req_path) - # TODO: Why not use `comes_from='-r {} (line {})'` here as well? - parser = parse_requirements( - req_path, finder, comes_from, options, session, - constraint=nested_constraint, wheel_cache=wheel_cache - ) - for req in parser: - yield req - - # percolate hash-checking option upward - elif opts.require_hashes: - options.require_hashes = opts.require_hashes - - # set finder options - elif finder: - if opts.index_url: - finder.index_urls = [opts.index_url] - if opts.no_index is True: - finder.index_urls = [] - if opts.extra_index_urls: - finder.index_urls.extend(opts.extra_index_urls) - if opts.find_links: - # FIXME: it would be nice to keep track of the source - # of the find_links: support a find-links local path - # relative to a requirements file. - value = opts.find_links[0] - req_dir = os.path.dirname(os.path.abspath(filename)) - relative_to_reqs_file = os.path.join(req_dir, value) - if os.path.exists(relative_to_reqs_file): - value = relative_to_reqs_file - finder.find_links.append(value) - if opts.pre: - finder.allow_all_prereleases = True - if opts.process_dependency_links: - finder.process_dependency_links = True - if opts.trusted_hosts: - finder.secure_origins.extend( - ("*", host, "*") for host in opts.trusted_hosts) - - -def break_args_options(line): - """Break up the line into an args and options string. We only want to shlex - (and then optparse) the options, not the args. args can contain markers - which are corrupted by shlex. - """ - tokens = line.split(' ') - args = [] - options = tokens[:] - for token in tokens: - if token.startswith('-') or token.startswith('--'): - break - else: - args.append(token) - options.pop(0) - return ' '.join(args), ' '.join(options) - - -def build_parser(line): - """ - Return a parser for parsing requirement lines - """ - parser = optparse.OptionParser(add_help_option=False) - - option_factories = SUPPORTED_OPTIONS + SUPPORTED_OPTIONS_REQ - for option_factory in option_factories: - option = option_factory() - parser.add_option(option) - - # By default optparse sys.exits on parsing errors. We want to wrap - # that in our own exception. - def parser_exit(self, msg): - # add offending line - msg = 'Invalid requirement: %s\n%s' % (line, msg) - raise RequirementsFileParseError(msg) - parser.exit = parser_exit - - return parser - - -def join_lines(lines_enum): - """Joins a line ending in '\' with the previous line (except when following - comments). The joined line takes on the index of the first line. - """ - primary_line_number = None - new_line = [] - for line_number, line in lines_enum: - if not line.endswith('\\') or COMMENT_RE.match(line): - if COMMENT_RE.match(line): - # this ensures comments are always matched later - line = ' ' + line - if new_line: - new_line.append(line) - yield primary_line_number, ''.join(new_line) - new_line = [] - else: - yield line_number, line - else: - if not new_line: - primary_line_number = line_number - new_line.append(line.strip('\\')) - - # last line contains \ - if new_line: - yield primary_line_number, ''.join(new_line) - - # TODO: handle space after '\'. - - -def ignore_comments(lines_enum): - """ - Strips comments and filter empty lines. - """ - for line_number, line in lines_enum: - line = COMMENT_RE.sub('', line) - line = line.strip() - if line: - yield line_number, line - - -def skip_regex(lines_enum, options): - """ - Skip lines that match '--skip-requirements-regex' pattern - - Note: the regex pattern is only built once - """ - skip_regex = options.skip_requirements_regex if options else None - if skip_regex: - pattern = re.compile(skip_regex) - lines_enum = filterfalse(lambda e: pattern.search(e[1]), lines_enum) - return lines_enum - - -def expand_env_variables(lines_enum): - """Replace all environment variables that can be retrieved via `os.getenv`. - - The only allowed format for environment variables defined in the - requirement file is `${MY_VARIABLE_1}` to ensure two things: - - 1. Strings that contain a `$` aren't accidentally (partially) expanded. - 2. Ensure consistency across platforms for requirement files. - - These points are the result of a discusssion on the `github pull - request #3514 `_. - - Valid characters in variable names follow the `POSIX standard - `_ and are limited - to uppercase letter, digits and the `_` (underscore). - """ - for line_number, line in lines_enum: - for env_var, var_name in ENV_VAR_RE.findall(line): - value = os.getenv(var_name) - if not value: - continue - - line = line.replace(env_var, value) - - yield line_number, line diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_install.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_install.py deleted file mode 100644 index 9dd1523..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_install.py +++ /dev/null @@ -1,1115 +0,0 @@ -from __future__ import absolute_import - -import logging -import os -import re -import shutil -import sys -import sysconfig -import traceback -import warnings -import zipfile -from distutils.util import change_root -from email.parser import FeedParser # type: ignore - -from pip._vendor import pkg_resources, pytoml, six -from pip._vendor.packaging import specifiers -from pip._vendor.packaging.markers import Marker -from pip._vendor.packaging.requirements import InvalidRequirement, Requirement -from pip._vendor.packaging.utils import canonicalize_name -from pip._vendor.packaging.version import parse as parse_version -from pip._vendor.packaging.version import Version -from pip._vendor.pkg_resources import RequirementParseError, parse_requirements - -from pip._internal import wheel -from pip._internal.build_env import BuildEnvironment -from pip._internal.compat import native_str -from pip._internal.download import ( - is_archive_file, is_url, path_to_url, url_to_path, -) -from pip._internal.exceptions import InstallationError, UninstallationError -from pip._internal.locations import ( - PIP_DELETE_MARKER_FILENAME, running_under_virtualenv, -) -from pip._internal.req.req_uninstall import UninstallPathSet -from pip._internal.utils.deprecation import RemovedInPip11Warning -from pip._internal.utils.hashes import Hashes -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - _make_build_dir, ask_path_exists, backup_dir, call_subprocess, - display_path, dist_in_site_packages, dist_in_usersite, ensure_dir, - get_installed_version, is_installable_dir, read_text_file, rmtree, -) -from pip._internal.utils.setuptools_build import SETUPTOOLS_SHIM -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.utils.ui import open_spinner -from pip._internal.vcs import vcs -from pip._internal.wheel import Wheel, move_wheel_files - -logger = logging.getLogger(__name__) - -operators = specifiers.Specifier._operators.keys() - - -def _strip_extras(path): - m = re.match(r'^(.+)(\[[^\]]+\])$', path) - extras = None - if m: - path_no_extras = m.group(1) - extras = m.group(2) - else: - path_no_extras = path - - return path_no_extras, extras - - -class InstallRequirement(object): - """ - Represents something that may be installed later on, may have information - about where to fetch the relavant requirement and also contains logic for - installing the said requirement. - """ - - def __init__(self, req, comes_from, source_dir=None, editable=False, - link=None, update=True, markers=None, - isolated=False, options=None, wheel_cache=None, - constraint=False, extras=()): - assert req is None or isinstance(req, Requirement), req - self.req = req - self.comes_from = comes_from - self.constraint = constraint - if source_dir is not None: - self.source_dir = os.path.normpath(os.path.abspath(source_dir)) - else: - self.source_dir = None - self.editable = editable - - self._wheel_cache = wheel_cache - if link is not None: - self.link = self.original_link = link - else: - from pip._internal.index import Link - self.link = self.original_link = req and req.url and Link(req.url) - - if extras: - self.extras = extras - elif req: - self.extras = { - pkg_resources.safe_extra(extra) for extra in req.extras - } - else: - self.extras = set() - if markers is not None: - self.markers = markers - else: - self.markers = req and req.marker - self._egg_info_path = None - # This holds the pkg_resources.Distribution object if this requirement - # is already available: - self.satisfied_by = None - # This hold the pkg_resources.Distribution object if this requirement - # conflicts with another installed distribution: - self.conflicts_with = None - # Temporary build location - self._temp_build_dir = TempDirectory(kind="req-build") - # Used to store the global directory where the _temp_build_dir should - # have been created. Cf _correct_build_location method. - self._ideal_build_dir = None - # True if the editable should be updated: - self.update = update - # Set to True after successful installation - self.install_succeeded = None - # UninstallPathSet of uninstalled distribution (for possible rollback) - self.uninstalled_pathset = None - self.options = options if options else {} - # Set to True after successful preparation of this requirement - self.prepared = False - self.is_direct = False - - self.isolated = isolated - self.build_env = BuildEnvironment(no_clean=True) - - @classmethod - def from_editable(cls, editable_req, comes_from=None, isolated=False, - options=None, wheel_cache=None, constraint=False): - from pip._internal.index import Link - - name, url, extras_override = parse_editable(editable_req) - if url.startswith('file:'): - source_dir = url_to_path(url) - else: - source_dir = None - - if name is not None: - try: - req = Requirement(name) - except InvalidRequirement: - raise InstallationError("Invalid requirement: '%s'" % name) - else: - req = None - return cls( - req, comes_from, source_dir=source_dir, - editable=True, - link=Link(url), - constraint=constraint, - isolated=isolated, - options=options if options else {}, - wheel_cache=wheel_cache, - extras=extras_override or (), - ) - - @classmethod - def from_req(cls, req, comes_from=None, isolated=False, wheel_cache=None): - try: - req = Requirement(req) - except InvalidRequirement: - raise InstallationError("Invalid requirement: '%s'" % req) - if req.url: - raise InstallationError( - "Direct url requirement (like %s) are not allowed for " - "dependencies" % req - ) - return cls(req, comes_from, isolated=isolated, wheel_cache=wheel_cache) - - @classmethod - def from_line( - cls, name, comes_from=None, isolated=False, options=None, - wheel_cache=None, constraint=False): - """Creates an InstallRequirement from a name, which might be a - requirement, directory containing 'setup.py', filename, or URL. - """ - from pip._internal.index import Link - - if is_url(name): - marker_sep = '; ' - else: - marker_sep = ';' - if marker_sep in name: - name, markers = name.split(marker_sep, 1) - markers = markers.strip() - if not markers: - markers = None - else: - markers = Marker(markers) - else: - markers = None - name = name.strip() - req = None - path = os.path.normpath(os.path.abspath(name)) - link = None - extras = None - - if is_url(name): - link = Link(name) - else: - p, extras = _strip_extras(path) - looks_like_dir = os.path.isdir(p) and ( - os.path.sep in name or - (os.path.altsep is not None and os.path.altsep in name) or - name.startswith('.') - ) - if looks_like_dir: - if not is_installable_dir(p): - raise InstallationError( - "Directory %r is not installable. File 'setup.py' " - "not found." % name - ) - link = Link(path_to_url(p)) - elif is_archive_file(p): - if not os.path.isfile(p): - logger.warning( - 'Requirement %r looks like a filename, but the ' - 'file does not exist', - name - ) - link = Link(path_to_url(p)) - - # it's a local file, dir, or url - if link: - # Handle relative file URLs - if link.scheme == 'file' and re.search(r'\.\./', link.url): - link = Link( - path_to_url(os.path.normpath(os.path.abspath(link.path)))) - # wheel file - if link.is_wheel: - wheel = Wheel(link.filename) # can raise InvalidWheelFilename - req = "%s==%s" % (wheel.name, wheel.version) - else: - # set the req to the egg fragment. when it's not there, this - # will become an 'unnamed' requirement - req = link.egg_fragment - - # a requirement specifier - else: - req = name - - if extras: - extras = Requirement("placeholder" + extras.lower()).extras - else: - extras = () - if req is not None: - try: - req = Requirement(req) - except InvalidRequirement: - if os.path.sep in req: - add_msg = "It looks like a path." - add_msg += deduce_helpful_msg(req) - elif '=' in req and not any(op in req for op in operators): - add_msg = "= is not a valid operator. Did you mean == ?" - else: - add_msg = traceback.format_exc() - raise InstallationError( - "Invalid requirement: '%s'\n%s" % (req, add_msg)) - return cls( - req, comes_from, link=link, markers=markers, - isolated=isolated, - options=options if options else {}, - wheel_cache=wheel_cache, - constraint=constraint, - extras=extras, - ) - - def __str__(self): - if self.req: - s = str(self.req) - if self.link: - s += ' from %s' % self.link.url - else: - s = self.link.url if self.link else None - if self.satisfied_by is not None: - s += ' in %s' % display_path(self.satisfied_by.location) - if self.comes_from: - if isinstance(self.comes_from, six.string_types): - comes_from = self.comes_from - else: - comes_from = self.comes_from.from_path() - if comes_from: - s += ' (from %s)' % comes_from - return s - - def __repr__(self): - return '<%s object: %s editable=%r>' % ( - self.__class__.__name__, str(self), self.editable) - - def populate_link(self, finder, upgrade, require_hashes): - """Ensure that if a link can be found for this, that it is found. - - Note that self.link may still be None - if Upgrade is False and the - requirement is already installed. - - If require_hashes is True, don't use the wheel cache, because cached - wheels, always built locally, have different hashes than the files - downloaded from the index server and thus throw false hash mismatches. - Furthermore, cached wheels at present have undeterministic contents due - to file modification times. - """ - if self.link is None: - self.link = finder.find_requirement(self, upgrade) - if self._wheel_cache is not None and not require_hashes: - old_link = self.link - self.link = self._wheel_cache.get(self.link, self.name) - if old_link != self.link: - logger.debug('Using cached wheel link: %s', self.link) - - @property - def specifier(self): - return self.req.specifier - - @property - def is_pinned(self): - """Return whether I am pinned to an exact version. - - For example, some-package==1.2 is pinned; some-package>1.2 is not. - """ - specifiers = self.specifier - return (len(specifiers) == 1 and - next(iter(specifiers)).operator in {'==', '==='}) - - def from_path(self): - if self.req is None: - return None - s = str(self.req) - if self.comes_from: - if isinstance(self.comes_from, six.string_types): - comes_from = self.comes_from - else: - comes_from = self.comes_from.from_path() - if comes_from: - s += '->' + comes_from - return s - - def build_location(self, build_dir): - assert build_dir is not None - if self._temp_build_dir.path is not None: - return self._temp_build_dir.path - if self.req is None: - # for requirement via a path to a directory: the name of the - # package is not available yet so we create a temp directory - # Once run_egg_info will have run, we'll be able - # to fix it via _correct_build_location - # Some systems have /tmp as a symlink which confuses custom - # builds (such as numpy). Thus, we ensure that the real path - # is returned. - self._temp_build_dir.create() - self._ideal_build_dir = build_dir - - return self._temp_build_dir.path - if self.editable: - name = self.name.lower() - else: - name = self.name - # FIXME: Is there a better place to create the build_dir? (hg and bzr - # need this) - if not os.path.exists(build_dir): - logger.debug('Creating directory %s', build_dir) - _make_build_dir(build_dir) - return os.path.join(build_dir, name) - - def _correct_build_location(self): - """Move self._temp_build_dir to self._ideal_build_dir/self.req.name - - For some requirements (e.g. a path to a directory), the name of the - package is not available until we run egg_info, so the build_location - will return a temporary directory and store the _ideal_build_dir. - - This is only called by self.egg_info_path to fix the temporary build - directory. - """ - if self.source_dir is not None: - return - assert self.req is not None - assert self._temp_build_dir.path - assert self._ideal_build_dir.path - old_location = self._temp_build_dir.path - self._temp_build_dir.path = None - - new_location = self.build_location(self._ideal_build_dir) - if os.path.exists(new_location): - raise InstallationError( - 'A package already exists in %s; please remove it to continue' - % display_path(new_location)) - logger.debug( - 'Moving package %s from %s to new location %s', - self, display_path(old_location), display_path(new_location), - ) - shutil.move(old_location, new_location) - self._temp_build_dir.path = new_location - self._ideal_build_dir = None - self.source_dir = os.path.normpath(os.path.abspath(new_location)) - self._egg_info_path = None - - @property - def name(self): - if self.req is None: - return None - return native_str(pkg_resources.safe_name(self.req.name)) - - @property - def setup_py_dir(self): - return os.path.join( - self.source_dir, - self.link and self.link.subdirectory_fragment or '') - - @property - def setup_py(self): - assert self.source_dir, "No source dir for %s" % self - - setup_py = os.path.join(self.setup_py_dir, 'setup.py') - - # Python2 __file__ should not be unicode - if six.PY2 and isinstance(setup_py, six.text_type): - setup_py = setup_py.encode(sys.getfilesystemencoding()) - - return setup_py - - @property - def pyproject_toml(self): - assert self.source_dir, "No source dir for %s" % self - - pp_toml = os.path.join(self.setup_py_dir, 'pyproject.toml') - - # Python2 __file__ should not be unicode - if six.PY2 and isinstance(pp_toml, six.text_type): - pp_toml = pp_toml.encode(sys.getfilesystemencoding()) - - return pp_toml - - def get_pep_518_info(self): - """Get a list of the packages required to build the project, if any, - and a flag indicating whether pyproject.toml is present, indicating - that the build should be isolated. - - Build requirements can be specified in a pyproject.toml, as described - in PEP 518. If this file exists but doesn't specify build - requirements, pip will default to installing setuptools and wheel. - """ - if os.path.isfile(self.pyproject_toml): - with open(self.pyproject_toml) as f: - pp_toml = pytoml.load(f) - build_sys = pp_toml.get('build-system', {}) - return (build_sys.get('requires', ['setuptools', 'wheel']), True) - return (['setuptools', 'wheel'], False) - - def run_egg_info(self): - assert self.source_dir - if self.name: - logger.debug( - 'Running setup.py (path:%s) egg_info for package %s', - self.setup_py, self.name, - ) - else: - logger.debug( - 'Running setup.py (path:%s) egg_info for package from %s', - self.setup_py, self.link, - ) - - with indent_log(): - script = SETUPTOOLS_SHIM % self.setup_py - base_cmd = [sys.executable, '-c', script] - if self.isolated: - base_cmd += ["--no-user-cfg"] - egg_info_cmd = base_cmd + ['egg_info'] - # We can't put the .egg-info files at the root, because then the - # source code will be mistaken for an installed egg, causing - # problems - if self.editable: - egg_base_option = [] - else: - egg_info_dir = os.path.join(self.setup_py_dir, 'pip-egg-info') - ensure_dir(egg_info_dir) - egg_base_option = ['--egg-base', 'pip-egg-info'] - with self.build_env: - call_subprocess( - egg_info_cmd + egg_base_option, - cwd=self.setup_py_dir, - show_stdout=False, - command_desc='python setup.py egg_info') - - if not self.req: - if isinstance(parse_version(self.pkg_info()["Version"]), Version): - op = "==" - else: - op = "===" - self.req = Requirement( - "".join([ - self.pkg_info()["Name"], - op, - self.pkg_info()["Version"], - ]) - ) - self._correct_build_location() - else: - metadata_name = canonicalize_name(self.pkg_info()["Name"]) - if canonicalize_name(self.req.name) != metadata_name: - logger.warning( - 'Running setup.py (path:%s) egg_info for package %s ' - 'produced metadata for project name %s. Fix your ' - '#egg=%s fragments.', - self.setup_py, self.name, metadata_name, self.name - ) - self.req = Requirement(metadata_name) - - def egg_info_data(self, filename): - if self.satisfied_by is not None: - if not self.satisfied_by.has_metadata(filename): - return None - return self.satisfied_by.get_metadata(filename) - assert self.source_dir - filename = self.egg_info_path(filename) - if not os.path.exists(filename): - return None - data = read_text_file(filename) - return data - - def egg_info_path(self, filename): - if self._egg_info_path is None: - if self.editable: - base = self.source_dir - else: - base = os.path.join(self.setup_py_dir, 'pip-egg-info') - filenames = os.listdir(base) - if self.editable: - filenames = [] - for root, dirs, files in os.walk(base): - for dir in vcs.dirnames: - if dir in dirs: - dirs.remove(dir) - # Iterate over a copy of ``dirs``, since mutating - # a list while iterating over it can cause trouble. - # (See https://github.com/pypa/pip/pull/462.) - for dir in list(dirs): - # Don't search in anything that looks like a virtualenv - # environment - if ( - os.path.lexists( - os.path.join(root, dir, 'bin', 'python') - ) or - os.path.exists( - os.path.join( - root, dir, 'Scripts', 'Python.exe' - ) - )): - dirs.remove(dir) - # Also don't search through tests - elif dir == 'test' or dir == 'tests': - dirs.remove(dir) - filenames.extend([os.path.join(root, dir) - for dir in dirs]) - filenames = [f for f in filenames if f.endswith('.egg-info')] - - if not filenames: - raise InstallationError( - 'No files/directories in %s (from %s)' % (base, filename) - ) - assert filenames, \ - "No files/directories in %s (from %s)" % (base, filename) - - # if we have more than one match, we pick the toplevel one. This - # can easily be the case if there is a dist folder which contains - # an extracted tarball for testing purposes. - if len(filenames) > 1: - filenames.sort( - key=lambda x: x.count(os.path.sep) + - (os.path.altsep and x.count(os.path.altsep) or 0) - ) - self._egg_info_path = os.path.join(base, filenames[0]) - return os.path.join(self._egg_info_path, filename) - - def pkg_info(self): - p = FeedParser() - data = self.egg_info_data('PKG-INFO') - if not data: - logger.warning( - 'No PKG-INFO file found in %s', - display_path(self.egg_info_path('PKG-INFO')), - ) - p.feed(data or '') - return p.close() - - _requirements_section_re = re.compile(r'\[(.*?)\]') - - @property - def installed_version(self): - return get_installed_version(self.name) - - def assert_source_matches_version(self): - assert self.source_dir - version = self.pkg_info()['version'] - if self.req.specifier and version not in self.req.specifier: - logger.warning( - 'Requested %s, but installing version %s', - self, - version, - ) - else: - logger.debug( - 'Source in %s has version %s, which satisfies requirement %s', - display_path(self.source_dir), - version, - self, - ) - - def update_editable(self, obtain=True): - if not self.link: - logger.debug( - "Cannot update repository at %s; repository location is " - "unknown", - self.source_dir, - ) - return - assert self.editable - assert self.source_dir - if self.link.scheme == 'file': - # Static paths don't get updated - return - assert '+' in self.link.url, "bad url: %r" % self.link.url - if not self.update: - return - vc_type, url = self.link.url.split('+', 1) - backend = vcs.get_backend(vc_type) - if backend: - vcs_backend = backend(self.link.url) - if obtain: - vcs_backend.obtain(self.source_dir) - else: - vcs_backend.export(self.source_dir) - else: - assert 0, ( - 'Unexpected version control type (in %s): %s' - % (self.link, vc_type)) - - def uninstall(self, auto_confirm=False, verbose=False, - use_user_site=False): - """ - Uninstall the distribution currently satisfying this requirement. - - Prompts before removing or modifying files unless - ``auto_confirm`` is True. - - Refuses to delete or modify files outside of ``sys.prefix`` - - thus uninstallation within a virtual environment can only - modify that virtual environment, even if the virtualenv is - linked to global site-packages. - - """ - if not self.check_if_exists(use_user_site): - logger.warning("Skipping %s as it is not installed.", self.name) - return - dist = self.satisfied_by or self.conflicts_with - - uninstalled_pathset = UninstallPathSet.from_dist(dist) - uninstalled_pathset.remove(auto_confirm, verbose) - return uninstalled_pathset - - def archive(self, build_dir): - assert self.source_dir - create_archive = True - archive_name = '%s-%s.zip' % (self.name, self.pkg_info()["version"]) - archive_path = os.path.join(build_dir, archive_name) - if os.path.exists(archive_path): - response = ask_path_exists( - 'The file %s exists. (i)gnore, (w)ipe, (b)ackup, (a)bort ' % - display_path(archive_path), ('i', 'w', 'b', 'a')) - if response == 'i': - create_archive = False - elif response == 'w': - logger.warning('Deleting %s', display_path(archive_path)) - os.remove(archive_path) - elif response == 'b': - dest_file = backup_dir(archive_path) - logger.warning( - 'Backing up %s to %s', - display_path(archive_path), - display_path(dest_file), - ) - shutil.move(archive_path, dest_file) - elif response == 'a': - sys.exit(-1) - if create_archive: - zip = zipfile.ZipFile( - archive_path, 'w', zipfile.ZIP_DEFLATED, - allowZip64=True - ) - dir = os.path.normcase(os.path.abspath(self.setup_py_dir)) - for dirpath, dirnames, filenames in os.walk(dir): - if 'pip-egg-info' in dirnames: - dirnames.remove('pip-egg-info') - for dirname in dirnames: - dirname = os.path.join(dirpath, dirname) - name = self._clean_zip_name(dirname, dir) - zipdir = zipfile.ZipInfo(self.name + '/' + name + '/') - zipdir.external_attr = 0x1ED << 16 # 0o755 - zip.writestr(zipdir, '') - for filename in filenames: - if filename == PIP_DELETE_MARKER_FILENAME: - continue - filename = os.path.join(dirpath, filename) - name = self._clean_zip_name(filename, dir) - zip.write(filename, self.name + '/' + name) - zip.close() - logger.info('Saved %s', display_path(archive_path)) - - def _clean_zip_name(self, name, prefix): - assert name.startswith(prefix + os.path.sep), ( - "name %r doesn't start with prefix %r" % (name, prefix) - ) - name = name[len(prefix) + 1:] - name = name.replace(os.path.sep, '/') - return name - - def match_markers(self, extras_requested=None): - if not extras_requested: - # Provide an extra to safely evaluate the markers - # without matching any extra - extras_requested = ('',) - if self.markers is not None: - return any( - self.markers.evaluate({'extra': extra}) - for extra in extras_requested) - else: - return True - - def install(self, install_options, global_options=None, root=None, - home=None, prefix=None, warn_script_location=True, - use_user_site=False, pycompile=True): - global_options = global_options if global_options is not None else [] - if self.editable: - self.install_editable( - install_options, global_options, prefix=prefix, - ) - return - if self.is_wheel: - version = wheel.wheel_version(self.source_dir) - wheel.check_compatibility(version, self.name) - - self.move_wheel_files( - self.source_dir, root=root, prefix=prefix, home=home, - warn_script_location=warn_script_location, - use_user_site=use_user_site, pycompile=pycompile, - ) - self.install_succeeded = True - return - - # Extend the list of global and install options passed on to - # the setup.py call with the ones from the requirements file. - # Options specified in requirements file override those - # specified on the command line, since the last option given - # to setup.py is the one that is used. - global_options = list(global_options) + \ - self.options.get('global_options', []) - install_options = list(install_options) + \ - self.options.get('install_options', []) - - if self.isolated: - global_options = global_options + ["--no-user-cfg"] - - with TempDirectory(kind="record") as temp_dir: - record_filename = os.path.join(temp_dir.path, 'install-record.txt') - install_args = self.get_install_args( - global_options, record_filename, root, prefix, pycompile, - ) - msg = 'Running setup.py install for %s' % (self.name,) - with open_spinner(msg) as spinner: - with indent_log(): - with self.build_env: - call_subprocess( - install_args + install_options, - cwd=self.setup_py_dir, - show_stdout=False, - spinner=spinner, - ) - - if not os.path.exists(record_filename): - logger.debug('Record file %s not found', record_filename) - return - self.install_succeeded = True - - def prepend_root(path): - if root is None or not os.path.isabs(path): - return path - else: - return change_root(root, path) - - with open(record_filename) as f: - for line in f: - directory = os.path.dirname(line) - if directory.endswith('.egg-info'): - egg_info_dir = prepend_root(directory) - break - else: - logger.warning( - 'Could not find .egg-info directory in install record' - ' for %s', - self, - ) - # FIXME: put the record somewhere - # FIXME: should this be an error? - return - new_lines = [] - with open(record_filename) as f: - for line in f: - filename = line.strip() - if os.path.isdir(filename): - filename += os.path.sep - new_lines.append( - os.path.relpath(prepend_root(filename), egg_info_dir) - ) - new_lines.sort() - ensure_dir(egg_info_dir) - inst_files_path = os.path.join(egg_info_dir, 'installed-files.txt') - with open(inst_files_path, 'w') as f: - f.write('\n'.join(new_lines) + '\n') - - def ensure_has_source_dir(self, parent_dir): - """Ensure that a source_dir is set. - - This will create a temporary build dir if the name of the requirement - isn't known yet. - - :param parent_dir: The ideal pip parent_dir for the source_dir. - Generally src_dir for editables and build_dir for sdists. - :return: self.source_dir - """ - if self.source_dir is None: - self.source_dir = self.build_location(parent_dir) - return self.source_dir - - def get_install_args(self, global_options, record_filename, root, prefix, - pycompile): - install_args = [sys.executable, "-u"] - install_args.append('-c') - install_args.append(SETUPTOOLS_SHIM % self.setup_py) - install_args += list(global_options) + \ - ['install', '--record', record_filename] - install_args += ['--single-version-externally-managed'] - - if root is not None: - install_args += ['--root', root] - if prefix is not None: - install_args += ['--prefix', prefix] - - if pycompile: - install_args += ["--compile"] - else: - install_args += ["--no-compile"] - - if running_under_virtualenv(): - py_ver_str = 'python' + sysconfig.get_python_version() - install_args += ['--install-headers', - os.path.join(sys.prefix, 'include', 'site', - py_ver_str, self.name)] - - return install_args - - def remove_temporary_source(self): - """Remove the source files from this requirement, if they are marked - for deletion""" - if self.source_dir and os.path.exists( - os.path.join(self.source_dir, PIP_DELETE_MARKER_FILENAME)): - logger.debug('Removing source in %s', self.source_dir) - rmtree(self.source_dir) - self.source_dir = None - self._temp_build_dir.cleanup() - self.build_env.cleanup() - - def install_editable(self, install_options, - global_options=(), prefix=None): - logger.info('Running setup.py develop for %s', self.name) - - if self.isolated: - global_options = list(global_options) + ["--no-user-cfg"] - - if prefix: - prefix_param = ['--prefix={}'.format(prefix)] - install_options = list(install_options) + prefix_param - - with indent_log(): - # FIXME: should we do --install-headers here too? - with self.build_env: - call_subprocess( - [ - sys.executable, - '-c', - SETUPTOOLS_SHIM % self.setup_py - ] + - list(global_options) + - ['develop', '--no-deps'] + - list(install_options), - - cwd=self.setup_py_dir, - show_stdout=False, - ) - - self.install_succeeded = True - - def check_if_exists(self, use_user_site): - """Find an installed distribution that satisfies or conflicts - with this requirement, and set self.satisfied_by or - self.conflicts_with appropriately. - """ - if self.req is None: - return False - try: - # get_distribution() will resolve the entire list of requirements - # anyway, and we've already determined that we need the requirement - # in question, so strip the marker so that we don't try to - # evaluate it. - no_marker = Requirement(str(self.req)) - no_marker.marker = None - self.satisfied_by = pkg_resources.get_distribution(str(no_marker)) - if self.editable and self.satisfied_by: - self.conflicts_with = self.satisfied_by - # when installing editables, nothing pre-existing should ever - # satisfy - self.satisfied_by = None - return True - except pkg_resources.DistributionNotFound: - return False - except pkg_resources.VersionConflict: - existing_dist = pkg_resources.get_distribution( - self.req.name - ) - if use_user_site: - if dist_in_usersite(existing_dist): - self.conflicts_with = existing_dist - elif (running_under_virtualenv() and - dist_in_site_packages(existing_dist)): - raise InstallationError( - "Will not install to the user site because it will " - "lack sys.path precedence to %s in %s" % - (existing_dist.project_name, existing_dist.location) - ) - else: - self.conflicts_with = existing_dist - return True - - @property - def is_wheel(self): - return self.link and self.link.is_wheel - - def move_wheel_files(self, wheeldir, root=None, home=None, prefix=None, - warn_script_location=True, use_user_site=False, - pycompile=True): - move_wheel_files( - self.name, self.req, wheeldir, - user=use_user_site, - home=home, - root=root, - prefix=prefix, - pycompile=pycompile, - isolated=self.isolated, - warn_script_location=warn_script_location, - ) - - def get_dist(self): - """Return a pkg_resources.Distribution built from self.egg_info_path""" - egg_info = self.egg_info_path('').rstrip(os.path.sep) - base_dir = os.path.dirname(egg_info) - metadata = pkg_resources.PathMetadata(base_dir, egg_info) - dist_name = os.path.splitext(os.path.basename(egg_info))[0] - return pkg_resources.Distribution( - os.path.dirname(egg_info), - project_name=dist_name, - metadata=metadata, - ) - - @property - def has_hash_options(self): - """Return whether any known-good hashes are specified as options. - - These activate --require-hashes mode; hashes specified as part of a - URL do not. - - """ - return bool(self.options.get('hashes', {})) - - def hashes(self, trust_internet=True): - """Return a hash-comparer that considers my option- and URL-based - hashes to be known-good. - - Hashes in URLs--ones embedded in the requirements file, not ones - downloaded from an index server--are almost peers with ones from - flags. They satisfy --require-hashes (whether it was implicitly or - explicitly activated) but do not activate it. md5 and sha224 are not - allowed in flags, which should nudge people toward good algos. We - always OR all hashes together, even ones from URLs. - - :param trust_internet: Whether to trust URL-based (#md5=...) hashes - downloaded from the internet, as by populate_link() - - """ - good_hashes = self.options.get('hashes', {}).copy() - link = self.link if trust_internet else self.original_link - if link and link.hash: - good_hashes.setdefault(link.hash_name, []).append(link.hash) - return Hashes(good_hashes) - - -def _strip_postfix(req): - """ - Strip req postfix ( -dev, 0.2, etc ) - """ - # FIXME: use package_to_requirement? - match = re.search(r'^(.*?)(?:-dev|-\d.*)$', req) - if match: - # Strip off -dev, -0.2, etc. - warnings.warn( - "#egg cleanup for editable urls will be dropped in the future", - RemovedInPip11Warning, - ) - req = match.group(1) - return req - - -def parse_editable(editable_req): - """Parses an editable requirement into: - - a requirement name - - an URL - - extras - - editable options - Accepted requirements: - svn+http://blahblah@rev#egg=Foobar[baz]&subdirectory=version_subdir - .[some_extra] - """ - - from pip._internal.index import Link - - url = editable_req - - # If a file path is specified with extras, strip off the extras. - url_no_extras, extras = _strip_extras(url) - - if os.path.isdir(url_no_extras): - if not os.path.exists(os.path.join(url_no_extras, 'setup.py')): - raise InstallationError( - "Directory %r is not installable. File 'setup.py' not found." % - url_no_extras - ) - # Treating it as code that has already been checked out - url_no_extras = path_to_url(url_no_extras) - - if url_no_extras.lower().startswith('file:'): - package_name = Link(url_no_extras).egg_fragment - if extras: - return ( - package_name, - url_no_extras, - Requirement("placeholder" + extras.lower()).extras, - ) - else: - return package_name, url_no_extras, None - - for version_control in vcs: - if url.lower().startswith('%s:' % version_control): - url = '%s+%s' % (version_control, url) - break - - if '+' not in url: - raise InstallationError( - '%s should either be a path to a local project or a VCS url ' - 'beginning with svn+, git+, hg+, or bzr+' % - editable_req - ) - - vc_type = url.split('+', 1)[0].lower() - - if not vcs.get_backend(vc_type): - error_message = 'For --editable=%s only ' % editable_req + \ - ', '.join([backend.name + '+URL' for backend in vcs.backends]) + \ - ' is currently supported' - raise InstallationError(error_message) - - package_name = Link(url).egg_fragment - if not package_name: - raise InstallationError( - "Could not detect requirement name for '%s', please specify one " - "with #egg=your_package_name" % editable_req - ) - return _strip_postfix(package_name), url, None - - -def deduce_helpful_msg(req): - """Returns helpful msg in case requirements file does not exist, - or cannot be parsed. - - :params req: Requirements file path - """ - msg = "" - if os.path.exists(req): - msg = " It does exist." - # Try to parse and check if it is a requirements file. - try: - with open(req, 'r') as fp: - # parse first line only - next(parse_requirements(fp.read())) - msg += " The argument you provided " + \ - "(%s) appears to be a" % (req) + \ - " requirements file. If that is the" + \ - " case, use the '-r' flag to install" + \ - " the packages specified within it." - except RequirementParseError: - logger.debug("Cannot parse '%s' as requirements \ - file" % (req), exc_info=1) - else: - msg += " File '%s' does not exist." % (req) - return msg diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_set.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_set.py deleted file mode 100644 index 78b7d32..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_set.py +++ /dev/null @@ -1,164 +0,0 @@ -from __future__ import absolute_import - -import logging -from collections import OrderedDict - -from pip._internal.exceptions import InstallationError -from pip._internal.utils.logging import indent_log -from pip._internal.wheel import Wheel - -logger = logging.getLogger(__name__) - - -class RequirementSet(object): - - def __init__(self, require_hashes=False): - """Create a RequirementSet. - - :param wheel_cache: The pip wheel cache, for passing to - InstallRequirement. - """ - - self.requirements = OrderedDict() - self.require_hashes = require_hashes - - # Mapping of alias: real_name - self.requirement_aliases = {} - self.unnamed_requirements = [] - self.successfully_downloaded = [] - self.reqs_to_cleanup = [] - - def __str__(self): - reqs = [req for req in self.requirements.values() - if not req.comes_from] - reqs.sort(key=lambda req: req.name.lower()) - return ' '.join([str(req.req) for req in reqs]) - - def __repr__(self): - reqs = [req for req in self.requirements.values()] - reqs.sort(key=lambda req: req.name.lower()) - reqs_str = ', '.join([str(req.req) for req in reqs]) - return ('<%s object; %d requirement(s): %s>' - % (self.__class__.__name__, len(reqs), reqs_str)) - - def add_requirement(self, install_req, parent_req_name=None, - extras_requested=None): - """Add install_req as a requirement to install. - - :param parent_req_name: The name of the requirement that needed this - added. The name is used because when multiple unnamed requirements - resolve to the same name, we could otherwise end up with dependency - links that point outside the Requirements set. parent_req must - already be added. Note that None implies that this is a user - supplied requirement, vs an inferred one. - :param extras_requested: an iterable of extras used to evaluate the - environment markers. - :return: Additional requirements to scan. That is either [] if - the requirement is not applicable, or [install_req] if the - requirement is applicable and has just been added. - """ - name = install_req.name - if not install_req.match_markers(extras_requested): - logger.info("Ignoring %s: markers '%s' don't match your " - "environment", install_req.name, - install_req.markers) - return [], None - - # This check has to come after we filter requirements with the - # environment markers. - if install_req.link and install_req.link.is_wheel: - wheel = Wheel(install_req.link.filename) - if not wheel.supported(): - raise InstallationError( - "%s is not a supported wheel on this platform." % - wheel.filename - ) - - # This next bit is really a sanity check. - assert install_req.is_direct == (parent_req_name is None), ( - "a direct req shouldn't have a parent and also, " - "a non direct req should have a parent" - ) - - if not name: - # url or path requirement w/o an egg fragment - self.unnamed_requirements.append(install_req) - return [install_req], None - else: - try: - existing_req = self.get_requirement(name) - except KeyError: - existing_req = None - if (parent_req_name is None and existing_req and not - existing_req.constraint and - existing_req.extras == install_req.extras and not - existing_req.req.specifier == install_req.req.specifier): - raise InstallationError( - 'Double requirement given: %s (already in %s, name=%r)' - % (install_req, existing_req, name)) - if not existing_req: - # Add requirement - self.requirements[name] = install_req - # FIXME: what about other normalizations? E.g., _ vs. -? - if name.lower() != name: - self.requirement_aliases[name.lower()] = name - result = [install_req] - else: - # Assume there's no need to scan, and that we've already - # encountered this for scanning. - result = [] - if not install_req.constraint and existing_req.constraint: - if (install_req.link and not (existing_req.link and - install_req.link.path == existing_req.link.path)): - self.reqs_to_cleanup.append(install_req) - raise InstallationError( - "Could not satisfy constraints for '%s': " - "installation from path or url cannot be " - "constrained to a version" % name, - ) - # If we're now installing a constraint, mark the existing - # object for real installation. - existing_req.constraint = False - existing_req.extras = tuple( - sorted(set(existing_req.extras).union( - set(install_req.extras)))) - logger.debug("Setting %s extras to: %s", - existing_req, existing_req.extras) - # And now we need to scan this. - result = [existing_req] - # Canonicalise to the already-added object for the backref - # check below. - install_req = existing_req - - # We return install_req here to allow for the caller to add it to - # the dependency information for the parent package. - return result, install_req - - def has_requirement(self, project_name): - name = project_name.lower() - if (name in self.requirements and - not self.requirements[name].constraint or - name in self.requirement_aliases and - not self.requirements[self.requirement_aliases[name]].constraint): - return True - return False - - @property - def has_requirements(self): - return list(req for req in self.requirements.values() if not - req.constraint) or self.unnamed_requirements - - def get_requirement(self, project_name): - for name in project_name, project_name.lower(): - if name in self.requirements: - return self.requirements[name] - if name in self.requirement_aliases: - return self.requirements[self.requirement_aliases[name]] - raise KeyError("No project with the name %r" % project_name) - - def cleanup_files(self): - """Clean up files, remove builds.""" - logger.debug('Cleaning up...') - with indent_log(): - for req in self.reqs_to_cleanup: - req.remove_temporary_source() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_uninstall.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_uninstall.py deleted file mode 100644 index a47520f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/req/req_uninstall.py +++ /dev/null @@ -1,455 +0,0 @@ -from __future__ import absolute_import - -import csv -import functools -import logging -import os -import sys -import sysconfig - -from pip._vendor import pkg_resources - -from pip._internal.compat import WINDOWS, cache_from_source, uses_pycache -from pip._internal.exceptions import UninstallationError -from pip._internal.locations import bin_py, bin_user -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - FakeFile, ask, dist_in_usersite, dist_is_local, egg_link_path, is_local, - normalize_path, renames, -) -from pip._internal.utils.temp_dir import TempDirectory - -logger = logging.getLogger(__name__) - - -def _script_names(dist, script_name, is_gui): - """Create the fully qualified name of the files created by - {console,gui}_scripts for the given ``dist``. - Returns the list of file names - """ - if dist_in_usersite(dist): - bin_dir = bin_user - else: - bin_dir = bin_py - exe_name = os.path.join(bin_dir, script_name) - paths_to_remove = [exe_name] - if WINDOWS: - paths_to_remove.append(exe_name + '.exe') - paths_to_remove.append(exe_name + '.exe.manifest') - if is_gui: - paths_to_remove.append(exe_name + '-script.pyw') - else: - paths_to_remove.append(exe_name + '-script.py') - return paths_to_remove - - -def _unique(fn): - @functools.wraps(fn) - def unique(*args, **kw): - seen = set() - for item in fn(*args, **kw): - if item not in seen: - seen.add(item) - yield item - return unique - - -@_unique -def uninstallation_paths(dist): - """ - Yield all the uninstallation paths for dist based on RECORD-without-.pyc - - Yield paths to all the files in RECORD. For each .py file in RECORD, add - the .pyc in the same directory. - - UninstallPathSet.add() takes care of the __pycache__ .pyc. - """ - r = csv.reader(FakeFile(dist.get_metadata_lines('RECORD'))) - for row in r: - path = os.path.join(dist.location, row[0]) - yield path - if path.endswith('.py'): - dn, fn = os.path.split(path) - base = fn[:-3] - path = os.path.join(dn, base + '.pyc') - yield path - - -def compact(paths): - """Compact a path set to contain the minimal number of paths - necessary to contain all paths in the set. If /a/path/ and - /a/path/to/a/file.txt are both in the set, leave only the - shorter path.""" - - sep = os.path.sep - short_paths = set() - for path in sorted(paths, key=len): - should_add = any( - path.startswith(shortpath.rstrip("*")) and - path[len(shortpath.rstrip("*").rstrip(sep))] == sep - for shortpath in short_paths - ) - if not should_add: - short_paths.add(path) - return short_paths - - -def compress_for_output_listing(paths): - """Returns a tuple of 2 sets of which paths to display to user - - The first set contains paths that would be deleted. Files of a package - are not added and the top-level directory of the package has a '*' added - at the end - to signify that all it's contents are removed. - - The second set contains files that would have been skipped in the above - folders. - """ - - will_remove = list(paths) - will_skip = set() - - # Determine folders and files - folders = set() - files = set() - for path in will_remove: - if path.endswith(".pyc"): - continue - if path.endswith("__init__.py") or ".dist-info" in path: - folders.add(os.path.dirname(path)) - files.add(path) - - folders = compact(folders) - - # This walks the tree using os.walk to not miss extra folders - # that might get added. - for folder in folders: - for dirpath, _, dirfiles in os.walk(folder): - for fname in dirfiles: - if fname.endswith(".pyc"): - continue - - file_ = os.path.normcase(os.path.join(dirpath, fname)) - if os.path.isfile(file_) and file_ not in files: - # We are skipping this file. Add it to the set. - will_skip.add(file_) - - will_remove = files | { - os.path.join(folder, "*") for folder in folders - } - - return will_remove, will_skip - - -class UninstallPathSet(object): - """A set of file paths to be removed in the uninstallation of a - requirement.""" - def __init__(self, dist): - self.paths = set() - self._refuse = set() - self.pth = {} - self.dist = dist - self.save_dir = TempDirectory(kind="uninstall") - self._moved_paths = [] - - def _permitted(self, path): - """ - Return True if the given path is one we are permitted to - remove/modify, False otherwise. - - """ - return is_local(path) - - def add(self, path): - head, tail = os.path.split(path) - - # we normalize the head to resolve parent directory symlinks, but not - # the tail, since we only want to uninstall symlinks, not their targets - path = os.path.join(normalize_path(head), os.path.normcase(tail)) - - if not os.path.exists(path): - return - if self._permitted(path): - self.paths.add(path) - else: - self._refuse.add(path) - - # __pycache__ files can show up after 'installed-files.txt' is created, - # due to imports - if os.path.splitext(path)[1] == '.py' and uses_pycache: - self.add(cache_from_source(path)) - - def add_pth(self, pth_file, entry): - pth_file = normalize_path(pth_file) - if self._permitted(pth_file): - if pth_file not in self.pth: - self.pth[pth_file] = UninstallPthEntries(pth_file) - self.pth[pth_file].add(entry) - else: - self._refuse.add(pth_file) - - def _stash(self, path): - return os.path.join( - self.save_dir.path, os.path.splitdrive(path)[1].lstrip(os.path.sep) - ) - - def remove(self, auto_confirm=False, verbose=False): - """Remove paths in ``self.paths`` with confirmation (unless - ``auto_confirm`` is True).""" - - if not self.paths: - logger.info( - "Can't uninstall '%s'. No files were found to uninstall.", - self.dist.project_name, - ) - return - - dist_name_version = ( - self.dist.project_name + "-" + self.dist.version - ) - logger.info('Uninstalling %s:', dist_name_version) - - with indent_log(): - if auto_confirm or self._allowed_to_proceed(verbose): - self.save_dir.create() - - for path in sorted(compact(self.paths)): - new_path = self._stash(path) - logger.debug('Removing file or directory %s', path) - self._moved_paths.append(path) - renames(path, new_path) - for pth in self.pth.values(): - pth.remove() - - logger.info('Successfully uninstalled %s', dist_name_version) - - def _allowed_to_proceed(self, verbose): - """Display which files would be deleted and prompt for confirmation - """ - - def _display(msg, paths): - if not paths: - return - - logger.info(msg) - with indent_log(): - for path in sorted(compact(paths)): - logger.info(path) - - if not verbose: - will_remove, will_skip = compress_for_output_listing(self.paths) - else: - # In verbose mode, display all the files that are going to be - # deleted. - will_remove = list(self.paths) - will_skip = set() - - _display('Would remove:', will_remove) - _display('Would not remove (might be manually added):', will_skip) - _display('Would not remove (outside of prefix):', self._refuse) - - return ask('Proceed (y/n)? ', ('y', 'n')) == 'y' - - def rollback(self): - """Rollback the changes previously made by remove().""" - if self.save_dir.path is None: - logger.error( - "Can't roll back %s; was not uninstalled", - self.dist.project_name, - ) - return False - logger.info('Rolling back uninstall of %s', self.dist.project_name) - for path in self._moved_paths: - tmp_path = self._stash(path) - logger.debug('Replacing %s', path) - renames(tmp_path, path) - for pth in self.pth.values(): - pth.rollback() - - def commit(self): - """Remove temporary save dir: rollback will no longer be possible.""" - self.save_dir.cleanup() - self._moved_paths = [] - - @classmethod - def from_dist(cls, dist): - dist_path = normalize_path(dist.location) - if not dist_is_local(dist): - logger.info( - "Not uninstalling %s at %s, outside environment %s", - dist.key, - dist_path, - sys.prefix, - ) - return cls(dist) - - if dist_path in {p for p in {sysconfig.get_path("stdlib"), - sysconfig.get_path("platstdlib")} - if p}: - logger.info( - "Not uninstalling %s at %s, as it is in the standard library.", - dist.key, - dist_path, - ) - return cls(dist) - - paths_to_remove = cls(dist) - develop_egg_link = egg_link_path(dist) - develop_egg_link_egg_info = '{}.egg-info'.format( - pkg_resources.to_filename(dist.project_name)) - egg_info_exists = dist.egg_info and os.path.exists(dist.egg_info) - # Special case for distutils installed package - distutils_egg_info = getattr(dist._provider, 'path', None) - - # Uninstall cases order do matter as in the case of 2 installs of the - # same package, pip needs to uninstall the currently detected version - if (egg_info_exists and dist.egg_info.endswith('.egg-info') and - not dist.egg_info.endswith(develop_egg_link_egg_info)): - # if dist.egg_info.endswith(develop_egg_link_egg_info), we - # are in fact in the develop_egg_link case - paths_to_remove.add(dist.egg_info) - if dist.has_metadata('installed-files.txt'): - for installed_file in dist.get_metadata( - 'installed-files.txt').splitlines(): - path = os.path.normpath( - os.path.join(dist.egg_info, installed_file) - ) - paths_to_remove.add(path) - # FIXME: need a test for this elif block - # occurs with --single-version-externally-managed/--record outside - # of pip - elif dist.has_metadata('top_level.txt'): - if dist.has_metadata('namespace_packages.txt'): - namespaces = dist.get_metadata('namespace_packages.txt') - else: - namespaces = [] - for top_level_pkg in [ - p for p - in dist.get_metadata('top_level.txt').splitlines() - if p and p not in namespaces]: - path = os.path.join(dist.location, top_level_pkg) - paths_to_remove.add(path) - paths_to_remove.add(path + '.py') - paths_to_remove.add(path + '.pyc') - paths_to_remove.add(path + '.pyo') - - elif distutils_egg_info: - raise UninstallationError( - "Cannot uninstall {!r}. It is a distutils installed project " - "and thus we cannot accurately determine which files belong " - "to it which would lead to only a partial uninstall.".format( - dist.project_name, - ) - ) - - elif dist.location.endswith('.egg'): - # package installed by easy_install - # We cannot match on dist.egg_name because it can slightly vary - # i.e. setuptools-0.6c11-py2.6.egg vs setuptools-0.6rc11-py2.6.egg - paths_to_remove.add(dist.location) - easy_install_egg = os.path.split(dist.location)[1] - easy_install_pth = os.path.join(os.path.dirname(dist.location), - 'easy-install.pth') - paths_to_remove.add_pth(easy_install_pth, './' + easy_install_egg) - - elif egg_info_exists and dist.egg_info.endswith('.dist-info'): - for path in uninstallation_paths(dist): - paths_to_remove.add(path) - - elif develop_egg_link: - # develop egg - with open(develop_egg_link, 'r') as fh: - link_pointer = os.path.normcase(fh.readline().strip()) - assert (link_pointer == dist.location), ( - 'Egg-link %s does not match installed location of %s ' - '(at %s)' % (link_pointer, dist.project_name, dist.location) - ) - paths_to_remove.add(develop_egg_link) - easy_install_pth = os.path.join(os.path.dirname(develop_egg_link), - 'easy-install.pth') - paths_to_remove.add_pth(easy_install_pth, dist.location) - - else: - logger.debug( - 'Not sure how to uninstall: %s - Check: %s', - dist, dist.location, - ) - - # find distutils scripts= scripts - if dist.has_metadata('scripts') and dist.metadata_isdir('scripts'): - for script in dist.metadata_listdir('scripts'): - if dist_in_usersite(dist): - bin_dir = bin_user - else: - bin_dir = bin_py - paths_to_remove.add(os.path.join(bin_dir, script)) - if WINDOWS: - paths_to_remove.add(os.path.join(bin_dir, script) + '.bat') - - # find console_scripts - _scripts_to_remove = [] - console_scripts = dist.get_entry_map(group='console_scripts') - for name in console_scripts.keys(): - _scripts_to_remove.extend(_script_names(dist, name, False)) - # find gui_scripts - gui_scripts = dist.get_entry_map(group='gui_scripts') - for name in gui_scripts.keys(): - _scripts_to_remove.extend(_script_names(dist, name, True)) - - for s in _scripts_to_remove: - paths_to_remove.add(s) - - return paths_to_remove - - -class UninstallPthEntries(object): - def __init__(self, pth_file): - if not os.path.isfile(pth_file): - raise UninstallationError( - "Cannot remove entries from nonexistent file %s" % pth_file - ) - self.file = pth_file - self.entries = set() - self._saved_lines = None - - def add(self, entry): - entry = os.path.normcase(entry) - # On Windows, os.path.normcase converts the entry to use - # backslashes. This is correct for entries that describe absolute - # paths outside of site-packages, but all the others use forward - # slashes. - if WINDOWS and not os.path.splitdrive(entry)[0]: - entry = entry.replace('\\', '/') - self.entries.add(entry) - - def remove(self): - logger.debug('Removing pth entries from %s:', self.file) - with open(self.file, 'rb') as fh: - # windows uses '\r\n' with py3k, but uses '\n' with py2.x - lines = fh.readlines() - self._saved_lines = lines - if any(b'\r\n' in line for line in lines): - endline = '\r\n' - else: - endline = '\n' - # handle missing trailing newline - if lines and not lines[-1].endswith(endline.encode("utf-8")): - lines[-1] = lines[-1] + endline.encode("utf-8") - for entry in self.entries: - try: - logger.debug('Removing entry: %s', entry) - lines.remove((entry + endline).encode("utf-8")) - except ValueError: - pass - with open(self.file, 'wb') as fh: - fh.writelines(lines) - - def rollback(self): - if self._saved_lines is None: - logger.error( - 'Cannot roll back changes to %s, none were made', self.file - ) - return False - logger.debug('Rolling %s back to previous state', self.file) - with open(self.file, 'wb') as fh: - fh.writelines(self._saved_lines) - return True diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/resolve.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/resolve.py deleted file mode 100644 index 189827e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/resolve.py +++ /dev/null @@ -1,354 +0,0 @@ -"""Dependency Resolution - -The dependency resolution in pip is performed as follows: - -for top-level requirements: - a. only one spec allowed per project, regardless of conflicts or not. - otherwise a "double requirement" exception is raised - b. they override sub-dependency requirements. -for sub-dependencies - a. "first found, wins" (where the order is breadth first) -""" - -import logging -from collections import defaultdict -from itertools import chain - -from pip._internal.exceptions import ( - BestVersionAlreadyInstalled, DistributionNotFound, HashError, HashErrors, - UnsupportedPythonVersion, -) - -from pip._internal.req.req_install import InstallRequirement -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import dist_in_usersite, ensure_dir -from pip._internal.utils.packaging import check_dist_requires_python - -logger = logging.getLogger(__name__) - - -class Resolver(object): - """Resolves which packages need to be installed/uninstalled to perform \ - the requested operation without breaking the requirements of any package. - """ - - _allowed_strategies = {"eager", "only-if-needed", "to-satisfy-only"} - - def __init__(self, preparer, session, finder, wheel_cache, use_user_site, - ignore_dependencies, ignore_installed, ignore_requires_python, - force_reinstall, isolated, upgrade_strategy): - super(Resolver, self).__init__() - assert upgrade_strategy in self._allowed_strategies - - self.preparer = preparer - self.finder = finder - self.session = session - - # NOTE: This would eventually be replaced with a cache that can give - # information about both sdist and wheels transparently. - self.wheel_cache = wheel_cache - - self.require_hashes = None # This is set in resolve - - self.upgrade_strategy = upgrade_strategy - self.force_reinstall = force_reinstall - self.isolated = isolated - self.ignore_dependencies = ignore_dependencies - self.ignore_installed = ignore_installed - self.ignore_requires_python = ignore_requires_python - self.use_user_site = use_user_site - - self._discovered_dependencies = defaultdict(list) - - def resolve(self, requirement_set): - """Resolve what operations need to be done - - As a side-effect of this method, the packages (and their dependencies) - are downloaded, unpacked and prepared for installation. This - preparation is done by ``pip.operations.prepare``. - - Once PyPI has static dependency metadata available, it would be - possible to move the preparation to become a step separated from - dependency resolution. - """ - # make the wheelhouse - if self.preparer.wheel_download_dir: - ensure_dir(self.preparer.wheel_download_dir) - - # If any top-level requirement has a hash specified, enter - # hash-checking mode, which requires hashes from all. - root_reqs = ( - requirement_set.unnamed_requirements + - list(requirement_set.requirements.values()) - ) - self.require_hashes = ( - requirement_set.require_hashes or - any(req.has_hash_options for req in root_reqs) - ) - - # Display where finder is looking for packages - locations = self.finder.get_formatted_locations() - if locations: - logger.info(locations) - - # Actually prepare the files, and collect any exceptions. Most hash - # exceptions cannot be checked ahead of time, because - # req.populate_link() needs to be called before we can make decisions - # based on link type. - discovered_reqs = [] - hash_errors = HashErrors() - for req in chain(root_reqs, discovered_reqs): - try: - discovered_reqs.extend( - self._resolve_one(requirement_set, req) - ) - except HashError as exc: - exc.req = req - hash_errors.append(exc) - - if hash_errors: - raise hash_errors - - def _is_upgrade_allowed(self, req): - if self.upgrade_strategy == "to-satisfy-only": - return False - elif self.upgrade_strategy == "eager": - return True - else: - assert self.upgrade_strategy == "only-if-needed" - return req.is_direct - - def _set_req_to_reinstall(self, req): - """ - Set a requirement to be installed. - """ - # Don't uninstall the conflict if doing a user install and the - # conflict is not a user install. - if not self.use_user_site or dist_in_usersite(req.satisfied_by): - req.conflicts_with = req.satisfied_by - req.satisfied_by = None - - # XXX: Stop passing requirement_set for options - def _check_skip_installed(self, req_to_install): - """Check if req_to_install should be skipped. - - This will check if the req is installed, and whether we should upgrade - or reinstall it, taking into account all the relevant user options. - - After calling this req_to_install will only have satisfied_by set to - None if the req_to_install is to be upgraded/reinstalled etc. Any - other value will be a dist recording the current thing installed that - satisfies the requirement. - - Note that for vcs urls and the like we can't assess skipping in this - routine - we simply identify that we need to pull the thing down, - then later on it is pulled down and introspected to assess upgrade/ - reinstalls etc. - - :return: A text reason for why it was skipped, or None. - """ - if self.ignore_installed: - return None - - req_to_install.check_if_exists(self.use_user_site) - if not req_to_install.satisfied_by: - return None - - if self.force_reinstall: - self._set_req_to_reinstall(req_to_install) - return None - - if not self._is_upgrade_allowed(req_to_install): - if self.upgrade_strategy == "only-if-needed": - return 'not upgraded as not directly required' - return 'already satisfied' - - # Check for the possibility of an upgrade. For link-based - # requirements we have to pull the tree down and inspect to assess - # the version #, so it's handled way down. - if not req_to_install.link: - try: - self.finder.find_requirement(req_to_install, upgrade=True) - except BestVersionAlreadyInstalled: - # Then the best version is installed. - return 'already up-to-date' - except DistributionNotFound: - # No distribution found, so we squash the error. It will - # be raised later when we re-try later to do the install. - # Why don't we just raise here? - pass - - self._set_req_to_reinstall(req_to_install) - return None - - def _get_abstract_dist_for(self, req): - """Takes a InstallRequirement and returns a single AbstractDist \ - representing a prepared variant of the same. - """ - assert self.require_hashes is not None, ( - "require_hashes should have been set in Resolver.resolve()" - ) - - if req.editable: - return self.preparer.prepare_editable_requirement( - req, self.require_hashes, self.use_user_site, self.finder, - ) - - # satisfied_by is only evaluated by calling _check_skip_installed, - # so it must be None here. - assert req.satisfied_by is None - skip_reason = self._check_skip_installed(req) - - if req.satisfied_by: - return self.preparer.prepare_installed_requirement( - req, self.require_hashes, skip_reason - ) - - upgrade_allowed = self._is_upgrade_allowed(req) - abstract_dist = self.preparer.prepare_linked_requirement( - req, self.session, self.finder, upgrade_allowed, - self.require_hashes - ) - - # NOTE - # The following portion is for determining if a certain package is - # going to be re-installed/upgraded or not and reporting to the user. - # This should probably get cleaned up in a future refactor. - - # req.req is only avail after unpack for URL - # pkgs repeat check_if_exists to uninstall-on-upgrade - # (#14) - if not self.ignore_installed: - req.check_if_exists(self.use_user_site) - - if req.satisfied_by: - should_modify = ( - self.upgrade_strategy != "to-satisfy-only" or - self.force_reinstall or - self.ignore_installed or - req.link.scheme == 'file' - ) - if should_modify: - self._set_req_to_reinstall(req) - else: - logger.info( - 'Requirement already satisfied (use --upgrade to upgrade):' - ' %s', req, - ) - - return abstract_dist - - def _resolve_one(self, requirement_set, req_to_install): - """Prepare a single requirements file. - - :return: A list of additional InstallRequirements to also install. - """ - # Tell user what we are doing for this requirement: - # obtain (editable), skipping, processing (local url), collecting - # (remote url or package name) - if req_to_install.constraint or req_to_install.prepared: - return [] - - req_to_install.prepared = True - - # register tmp src for cleanup in case something goes wrong - requirement_set.reqs_to_cleanup.append(req_to_install) - - abstract_dist = self._get_abstract_dist_for(req_to_install) - - # Parse and return dependencies - dist = abstract_dist.dist(self.finder) - try: - check_dist_requires_python(dist) - except UnsupportedPythonVersion as err: - if self.ignore_requires_python: - logger.warning(err.args[0]) - else: - raise - - more_reqs = [] - - def add_req(subreq, extras_requested): - sub_install_req = InstallRequirement.from_req( - str(subreq), - req_to_install, - isolated=self.isolated, - wheel_cache=self.wheel_cache, - ) - parent_req_name = req_to_install.name - to_scan_again, add_to_parent = requirement_set.add_requirement( - sub_install_req, - parent_req_name=parent_req_name, - extras_requested=extras_requested, - ) - if parent_req_name and add_to_parent: - self._discovered_dependencies[parent_req_name].append( - add_to_parent - ) - more_reqs.extend(to_scan_again) - - with indent_log(): - # We add req_to_install before its dependencies, so that we - # can refer to it when adding dependencies. - if not requirement_set.has_requirement(req_to_install.name): - # 'unnamed' requirements will get added here - req_to_install.is_direct = True - requirement_set.add_requirement( - req_to_install, parent_req_name=None, - ) - - if not self.ignore_dependencies: - if req_to_install.extras: - logger.debug( - "Installing extra requirements: %r", - ','.join(req_to_install.extras), - ) - missing_requested = sorted( - set(req_to_install.extras) - set(dist.extras) - ) - for missing in missing_requested: - logger.warning( - '%s does not provide the extra \'%s\'', - dist, missing - ) - - available_requested = sorted( - set(dist.extras) & set(req_to_install.extras) - ) - for subreq in dist.requires(available_requested): - add_req(subreq, extras_requested=available_requested) - - if not req_to_install.editable and not req_to_install.satisfied_by: - # XXX: --no-install leads this to report 'Successfully - # downloaded' for only non-editable reqs, even though we took - # action on them. - requirement_set.successfully_downloaded.append(req_to_install) - - return more_reqs - - def get_installation_order(self, req_set): - """Create the installation order. - - The installation order is topological - requirements are installed - before the requiring thing. We break cycles at an arbitrary point, - and make no other guarantees. - """ - # The current implementation, which we may change at any point - # installs the user specified things in the order given, except when - # dependencies must come earlier to achieve topological order. - order = [] - ordered_reqs = set() - - def schedule(req): - if req.satisfied_by or req in ordered_reqs: - return - if req.constraint: - return - ordered_reqs.add(req) - for dep in self._discovered_dependencies[req.name]: - schedule(dep) - order.append(req) - - for install_req in req_set.requirements.values(): - schedule(install_req) - return order diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/status_codes.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/status_codes.py deleted file mode 100644 index 2b56931..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/status_codes.py +++ /dev/null @@ -1,8 +0,0 @@ -from __future__ import absolute_import - -SUCCESS = 0 -ERROR = 1 -UNKNOWN_ERROR = 2 -VIRTUALENV_NOT_FOUND = 3 -PREVIOUS_BUILD_DIR_ERROR = 4 -NO_MATCHES_FOUND = 23 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/appdirs.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/appdirs.py deleted file mode 100644 index 0eb87ca..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/appdirs.py +++ /dev/null @@ -1,258 +0,0 @@ -""" -This code was taken from https://github.com/ActiveState/appdirs and modified -to suit our purposes. -""" -from __future__ import absolute_import - -import os -import sys - -from pip._vendor.six import PY2, text_type - -from pip._internal.compat import WINDOWS, expanduser - - -def user_cache_dir(appname): - r""" - Return full path to the user-specific cache dir for this application. - - "appname" is the name of application. - - Typical user cache directories are: - macOS: ~/Library/Caches/ - Unix: ~/.cache/ (XDG default) - Windows: C:\Users\\AppData\Local\\Cache - - On Windows the only suggestion in the MSDN docs is that local settings go - in the `CSIDL_LOCAL_APPDATA` directory. This is identical to the - non-roaming app data dir (the default returned by `user_data_dir`). Apps - typically put cache data somewhere *under* the given dir here. Some - examples: - ...\Mozilla\Firefox\Profiles\\Cache - ...\Acme\SuperApp\Cache\1.0 - - OPINION: This function appends "Cache" to the `CSIDL_LOCAL_APPDATA` value. - """ - if WINDOWS: - # Get the base path - path = os.path.normpath(_get_win_folder("CSIDL_LOCAL_APPDATA")) - - # When using Python 2, return paths as bytes on Windows like we do on - # other operating systems. See helper function docs for more details. - if PY2 and isinstance(path, text_type): - path = _win_path_to_bytes(path) - - # Add our app name and Cache directory to it - path = os.path.join(path, appname, "Cache") - elif sys.platform == "darwin": - # Get the base path - path = expanduser("~/Library/Caches") - - # Add our app name to it - path = os.path.join(path, appname) - else: - # Get the base path - path = os.getenv("XDG_CACHE_HOME", expanduser("~/.cache")) - - # Add our app name to it - path = os.path.join(path, appname) - - return path - - -def user_data_dir(appname, roaming=False): - r""" - Return full path to the user-specific data dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "roaming" (boolean, default False) can be set True to use the Windows - roaming appdata directory. That means that for users on a Windows - network setup for roaming profiles, this user data will be - sync'd on login. See - - for a discussion of issues. - - Typical user data directories are: - macOS: ~/Library/Application Support/ - if it exists, else ~/.config/ - Unix: ~/.local/share/ # or in - $XDG_DATA_HOME, if defined - Win XP (not roaming): C:\Documents and Settings\\ ... - ...Application Data\ - Win XP (roaming): C:\Documents and Settings\\Local ... - ...Settings\Application Data\ - Win 7 (not roaming): C:\\Users\\AppData\Local\ - Win 7 (roaming): C:\\Users\\AppData\Roaming\ - - For Unix, we follow the XDG spec and support $XDG_DATA_HOME. - That means, by default "~/.local/share/". - """ - if WINDOWS: - const = roaming and "CSIDL_APPDATA" or "CSIDL_LOCAL_APPDATA" - path = os.path.join(os.path.normpath(_get_win_folder(const)), appname) - elif sys.platform == "darwin": - path = os.path.join( - expanduser('~/Library/Application Support/'), - appname, - ) if os.path.isdir(os.path.join( - expanduser('~/Library/Application Support/'), - appname, - ) - ) else os.path.join( - expanduser('~/.config/'), - appname, - ) - else: - path = os.path.join( - os.getenv('XDG_DATA_HOME', expanduser("~/.local/share")), - appname, - ) - - return path - - -def user_config_dir(appname, roaming=True): - """Return full path to the user-specific config dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "roaming" (boolean, default True) can be set False to not use the - Windows roaming appdata directory. That means that for users on a - Windows network setup for roaming profiles, this user data will be - sync'd on login. See - - for a discussion of issues. - - Typical user data directories are: - macOS: same as user_data_dir - Unix: ~/.config/ - Win *: same as user_data_dir - - For Unix, we follow the XDG spec and support $XDG_CONFIG_HOME. - That means, by default "~/.config/". - """ - if WINDOWS: - path = user_data_dir(appname, roaming=roaming) - elif sys.platform == "darwin": - path = user_data_dir(appname) - else: - path = os.getenv('XDG_CONFIG_HOME', expanduser("~/.config")) - path = os.path.join(path, appname) - - return path - - -# for the discussion regarding site_config_dirs locations -# see -def site_config_dirs(appname): - r"""Return a list of potential user-shared config dirs for this application. - - "appname" is the name of application. - - Typical user config directories are: - macOS: /Library/Application Support// - Unix: /etc or $XDG_CONFIG_DIRS[i]// for each value in - $XDG_CONFIG_DIRS - Win XP: C:\Documents and Settings\All Users\Application ... - ...Data\\ - Vista: (Fail! "C:\ProgramData" is a hidden *system* directory - on Vista.) - Win 7: Hidden, but writeable on Win 7: - C:\ProgramData\\ - """ - if WINDOWS: - path = os.path.normpath(_get_win_folder("CSIDL_COMMON_APPDATA")) - pathlist = [os.path.join(path, appname)] - elif sys.platform == 'darwin': - pathlist = [os.path.join('/Library/Application Support', appname)] - else: - # try looking in $XDG_CONFIG_DIRS - xdg_config_dirs = os.getenv('XDG_CONFIG_DIRS', '/etc/xdg') - if xdg_config_dirs: - pathlist = [ - os.path.join(expanduser(x), appname) - for x in xdg_config_dirs.split(os.pathsep) - ] - else: - pathlist = [] - - # always look in /etc directly as well - pathlist.append('/etc') - - return pathlist - - -# -- Windows support functions -- - -def _get_win_folder_from_registry(csidl_name): - """ - This is a fallback technique at best. I'm not sure if using the - registry for this guarantees us the correct answer for all CSIDL_* - names. - """ - import _winreg - - shell_folder_name = { - "CSIDL_APPDATA": "AppData", - "CSIDL_COMMON_APPDATA": "Common AppData", - "CSIDL_LOCAL_APPDATA": "Local AppData", - }[csidl_name] - - key = _winreg.OpenKey( - _winreg.HKEY_CURRENT_USER, - r"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" - ) - directory, _type = _winreg.QueryValueEx(key, shell_folder_name) - return directory - - -def _get_win_folder_with_ctypes(csidl_name): - csidl_const = { - "CSIDL_APPDATA": 26, - "CSIDL_COMMON_APPDATA": 35, - "CSIDL_LOCAL_APPDATA": 28, - }[csidl_name] - - buf = ctypes.create_unicode_buffer(1024) - ctypes.windll.shell32.SHGetFolderPathW(None, csidl_const, None, 0, buf) - - # Downgrade to short path name if have highbit chars. See - # . - has_high_char = False - for c in buf: - if ord(c) > 255: - has_high_char = True - break - if has_high_char: - buf2 = ctypes.create_unicode_buffer(1024) - if ctypes.windll.kernel32.GetShortPathNameW(buf.value, buf2, 1024): - buf = buf2 - - return buf.value - - -if WINDOWS: - try: - import ctypes - _get_win_folder = _get_win_folder_with_ctypes - except ImportError: - _get_win_folder = _get_win_folder_from_registry - - -def _win_path_to_bytes(path): - """Encode Windows paths to bytes. Only used on Python 2. - - Motivation is to be consistent with other operating systems where paths - are also returned as bytes. This avoids problems mixing bytes and Unicode - elsewhere in the codebase. For more details and discussion see - . - - If encoding using ASCII and MBCS fails, return the original Unicode path. - """ - for encoding in ('ASCII', 'MBCS'): - try: - return path.encode(encoding) - except (UnicodeEncodeError, LookupError): - pass - return path diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/deprecation.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/deprecation.py deleted file mode 100644 index c0e3884..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/deprecation.py +++ /dev/null @@ -1,77 +0,0 @@ -""" -A module that implements tooling to enable easy warnings about deprecations. -""" -from __future__ import absolute_import - -import logging -import warnings - -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import Any - - -class PipDeprecationWarning(Warning): - pass - - -class Pending(object): - pass - - -class RemovedInPip11Warning(PipDeprecationWarning): - pass - - -class RemovedInPip12Warning(PipDeprecationWarning, Pending): - pass - - -# Warnings <-> Logging Integration - - -_warnings_showwarning = None # type: Any - - -def _showwarning(message, category, filename, lineno, file=None, line=None): - if file is not None: - if _warnings_showwarning is not None: - _warnings_showwarning( - message, category, filename, lineno, file, line, - ) - else: - if issubclass(category, PipDeprecationWarning): - # We use a specially named logger which will handle all of the - # deprecation messages for pip. - logger = logging.getLogger("pip._internal.deprecations") - - # This is purposely using the % formatter here instead of letting - # the logging module handle the interpolation. This is because we - # want it to appear as if someone typed this entire message out. - log_message = "DEPRECATION: %s" % message - - # PipDeprecationWarnings that are Pending still have at least 2 - # versions to go until they are removed so they can just be - # warnings. Otherwise, they will be removed in the very next - # version of pip. We want these to be more obvious so we use the - # ERROR logging level. - if issubclass(category, Pending): - logger.warning(log_message) - else: - logger.error(log_message) - else: - _warnings_showwarning( - message, category, filename, lineno, file, line, - ) - - -def install_warning_logger(): - # Enable our Deprecation Warnings - warnings.simplefilter("default", PipDeprecationWarning, append=True) - - global _warnings_showwarning - - if _warnings_showwarning is None: - _warnings_showwarning = warnings.showwarning - warnings.showwarning = _showwarning diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/encoding.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/encoding.py deleted file mode 100644 index 831f3f6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/encoding.py +++ /dev/null @@ -1,33 +0,0 @@ -import codecs -import locale -import re -import sys - -BOMS = [ - (codecs.BOM_UTF8, 'utf8'), - (codecs.BOM_UTF16, 'utf16'), - (codecs.BOM_UTF16_BE, 'utf16-be'), - (codecs.BOM_UTF16_LE, 'utf16-le'), - (codecs.BOM_UTF32, 'utf32'), - (codecs.BOM_UTF32_BE, 'utf32-be'), - (codecs.BOM_UTF32_LE, 'utf32-le'), -] - -ENCODING_RE = re.compile(br'coding[:=]\s*([-\w.]+)') - - -def auto_decode(data): - """Check a bytes string for a BOM to correctly detect the encoding - - Fallback to locale.getpreferredencoding(False) like open() on Python3""" - for bom, encoding in BOMS: - if data.startswith(bom): - return data[len(bom):].decode(encoding) - # Lets check the first two lines as in PEP263 - for line in data.split(b'\n')[:2]: - if line[0:1] == b'#' and ENCODING_RE.search(line): - encoding = ENCODING_RE.search(line).groups()[0].decode('ascii') - return data.decode(encoding) - return data.decode( - locale.getpreferredencoding(False) or sys.getdefaultencoding(), - ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/filesystem.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/filesystem.py deleted file mode 100644 index 94fa2c6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/filesystem.py +++ /dev/null @@ -1,28 +0,0 @@ -import os -import os.path - -from pip._internal.compat import get_path_uid - - -def check_path_owner(path): - # If we don't have a way to check the effective uid of this process, then - # we'll just assume that we own the directory. - if not hasattr(os, "geteuid"): - return True - - previous = None - while path != previous: - if os.path.lexists(path): - # Check if path is writable by current user. - if os.geteuid() == 0: - # Special handling for root user in order to handle properly - # cases where users use sudo without -H flag. - try: - path_uid = get_path_uid(path) - except OSError: - return False - return path_uid == 0 - else: - return os.access(path, os.W_OK) - else: - previous, path = path, os.path.dirname(path) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/glibc.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/glibc.py deleted file mode 100644 index 5900a10..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/glibc.py +++ /dev/null @@ -1,84 +0,0 @@ -from __future__ import absolute_import - -import ctypes -import re -import warnings - - -def glibc_version_string(): - "Returns glibc version string, or None if not using glibc." - - # ctypes.CDLL(None) internally calls dlopen(NULL), and as the dlopen - # manpage says, "If filename is NULL, then the returned handle is for the - # main program". This way we can let the linker do the work to figure out - # which libc our process is actually using. - process_namespace = ctypes.CDLL(None) - try: - gnu_get_libc_version = process_namespace.gnu_get_libc_version - except AttributeError: - # Symbol doesn't exist -> therefore, we are not linked to - # glibc. - return None - - # Call gnu_get_libc_version, which returns a string like "2.5" - gnu_get_libc_version.restype = ctypes.c_char_p - version_str = gnu_get_libc_version() - # py2 / py3 compatibility: - if not isinstance(version_str, str): - version_str = version_str.decode("ascii") - - return version_str - - -# Separated out from have_compatible_glibc for easier unit testing -def check_glibc_version(version_str, required_major, minimum_minor): - # Parse string and check against requested version. - # - # We use a regexp instead of str.split because we want to discard any - # random junk that might come after the minor version -- this might happen - # in patched/forked versions of glibc (e.g. Linaro's version of glibc - # uses version strings like "2.20-2014.11"). See gh-3588. - m = re.match(r"(?P[0-9]+)\.(?P[0-9]+)", version_str) - if not m: - warnings.warn("Expected glibc version with 2 components major.minor," - " got: %s" % version_str, RuntimeWarning) - return False - return (int(m.group("major")) == required_major and - int(m.group("minor")) >= minimum_minor) - - -def have_compatible_glibc(required_major, minimum_minor): - version_str = glibc_version_string() - if version_str is None: - return False - return check_glibc_version(version_str, required_major, minimum_minor) - - -# platform.libc_ver regularly returns completely nonsensical glibc -# versions. E.g. on my computer, platform says: -# -# ~$ python2.7 -c 'import platform; print(platform.libc_ver())' -# ('glibc', '2.7') -# ~$ python3.5 -c 'import platform; print(platform.libc_ver())' -# ('glibc', '2.9') -# -# But the truth is: -# -# ~$ ldd --version -# ldd (Debian GLIBC 2.22-11) 2.22 -# -# This is unfortunate, because it means that the linehaul data on libc -# versions that was generated by pip 8.1.2 and earlier is useless and -# misleading. Solution: instead of using platform, use our code that actually -# works. -def libc_ver(): - """Try to determine the glibc version - - Returns a tuple of strings (lib, version) which default to empty strings - in case the lookup fails. - """ - glibc_version = glibc_version_string() - if glibc_version is None: - return ("", "") - else: - return ("glibc", glibc_version) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/hashes.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/hashes.py deleted file mode 100644 index 8cf6367..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/hashes.py +++ /dev/null @@ -1,94 +0,0 @@ -from __future__ import absolute_import - -import hashlib - -from pip._vendor.six import iteritems, iterkeys, itervalues - -from pip._internal.exceptions import ( - HashMismatch, HashMissing, InstallationError, -) -from pip._internal.utils.misc import read_chunks - -# The recommended hash algo of the moment. Change this whenever the state of -# the art changes; it won't hurt backward compatibility. -FAVORITE_HASH = 'sha256' - - -# Names of hashlib algorithms allowed by the --hash option and ``pip hash`` -# Currently, those are the ones at least as collision-resistant as sha256. -STRONG_HASHES = ['sha256', 'sha384', 'sha512'] - - -class Hashes(object): - """A wrapper that builds multiple hashes at once and checks them against - known-good values - - """ - def __init__(self, hashes=None): - """ - :param hashes: A dict of algorithm names pointing to lists of allowed - hex digests - """ - self._allowed = {} if hashes is None else hashes - - def check_against_chunks(self, chunks): - """Check good hashes against ones built from iterable of chunks of - data. - - Raise HashMismatch if none match. - - """ - gots = {} - for hash_name in iterkeys(self._allowed): - try: - gots[hash_name] = hashlib.new(hash_name) - except (ValueError, TypeError): - raise InstallationError('Unknown hash name: %s' % hash_name) - - for chunk in chunks: - for hash in itervalues(gots): - hash.update(chunk) - - for hash_name, got in iteritems(gots): - if got.hexdigest() in self._allowed[hash_name]: - return - self._raise(gots) - - def _raise(self, gots): - raise HashMismatch(self._allowed, gots) - - def check_against_file(self, file): - """Check good hashes against a file-like object - - Raise HashMismatch if none match. - - """ - return self.check_against_chunks(read_chunks(file)) - - def check_against_path(self, path): - with open(path, 'rb') as file: - return self.check_against_file(file) - - def __nonzero__(self): - """Return whether I know any known-good hashes.""" - return bool(self._allowed) - - def __bool__(self): - return self.__nonzero__() - - -class MissingHashes(Hashes): - """A workalike for Hashes used when we're missing a hash for a requirement - - It computes the actual hash of the requirement and raises a HashMissing - exception showing it to the user. - - """ - def __init__(self): - """Don't offer the ``hashes`` kwarg.""" - # Pass our favorite hash in to generate a "gotten hash". With the - # empty list, it will never match, so an error will always raise. - super(MissingHashes, self).__init__(hashes={FAVORITE_HASH: []}) - - def _raise(self, gots): - raise HashMissing(gots[FAVORITE_HASH].hexdigest()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/logging.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/logging.py deleted file mode 100644 index 1fb3e8a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/logging.py +++ /dev/null @@ -1,132 +0,0 @@ -from __future__ import absolute_import - -import contextlib -import logging -import logging.handlers -import os - -from pip._internal.compat import WINDOWS -from pip._internal.utils.misc import ensure_dir - -try: - import threading -except ImportError: - import dummy_threading as threading # type: ignore - - -try: - from pip._vendor import colorama -# Lots of different errors can come from this, including SystemError and -# ImportError. -except Exception: - colorama = None - - -_log_state = threading.local() -_log_state.indentation = 0 - - -@contextlib.contextmanager -def indent_log(num=2): - """ - A context manager which will cause the log output to be indented for any - log messages emitted inside it. - """ - _log_state.indentation += num - try: - yield - finally: - _log_state.indentation -= num - - -def get_indentation(): - return getattr(_log_state, 'indentation', 0) - - -class IndentingFormatter(logging.Formatter): - - def format(self, record): - """ - Calls the standard formatter, but will indent all of the log messages - by our current indentation level. - """ - formatted = logging.Formatter.format(self, record) - formatted = "".join([ - (" " * get_indentation()) + line - for line in formatted.splitlines(True) - ]) - return formatted - - -def _color_wrap(*colors): - def wrapped(inp): - return "".join(list(colors) + [inp, colorama.Style.RESET_ALL]) - return wrapped - - -class ColorizedStreamHandler(logging.StreamHandler): - - # Don't build up a list of colors if we don't have colorama - if colorama: - COLORS = [ - # This needs to be in order from highest logging level to lowest. - (logging.ERROR, _color_wrap(colorama.Fore.RED)), - (logging.WARNING, _color_wrap(colorama.Fore.YELLOW)), - ] - else: - COLORS = [] - - def __init__(self, stream=None, no_color=None): - logging.StreamHandler.__init__(self, stream) - self._no_color = no_color - - if WINDOWS and colorama: - self.stream = colorama.AnsiToWin32(self.stream) - - def should_color(self): - # Don't colorize things if we do not have colorama or if told not to - if not colorama or self._no_color: - return False - - real_stream = ( - self.stream if not isinstance(self.stream, colorama.AnsiToWin32) - else self.stream.wrapped - ) - - # If the stream is a tty we should color it - if hasattr(real_stream, "isatty") and real_stream.isatty(): - return True - - # If we have an ASNI term we should color it - if os.environ.get("TERM") == "ANSI": - return True - - # If anything else we should not color it - return False - - def format(self, record): - msg = logging.StreamHandler.format(self, record) - - if self.should_color(): - for level, color in self.COLORS: - if record.levelno >= level: - msg = color(msg) - break - - return msg - - -class BetterRotatingFileHandler(logging.handlers.RotatingFileHandler): - - def _open(self): - ensure_dir(os.path.dirname(self.baseFilename)) - return logging.handlers.RotatingFileHandler._open(self) - - -class MaxLevelFilter(logging.Filter): - - def __init__(self, level): - self.level = level - - def filter(self, record): - return record.levelno < self.level diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/misc.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/misc.py deleted file mode 100644 index db84a7c..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/misc.py +++ /dev/null @@ -1,851 +0,0 @@ -from __future__ import absolute_import - -import contextlib -import errno -import io -import locale -# we have a submodule named 'logging' which would shadow this if we used the -# regular name: -import logging as std_logging -import os -import posixpath -import re -import shutil -import stat -import subprocess -import sys -import tarfile -import zipfile -from collections import deque - -from pip._vendor import pkg_resources -# NOTE: retrying is not annotated in typeshed as on 2017-07-17, which is -# why we ignore the type on this import. -from pip._vendor.retrying import retry # type: ignore -from pip._vendor.six import PY2 -from pip._vendor.six.moves import input - -from pip._internal.compat import console_to_str, expanduser, stdlib_pkgs -from pip._internal.exceptions import InstallationError -from pip._internal.locations import ( - running_under_virtualenv, site_packages, user_site, virtualenv_no_global, - write_delete_marker_file, -) - -if PY2: - from io import BytesIO as StringIO -else: - from io import StringIO - -__all__ = ['rmtree', 'display_path', 'backup_dir', - 'ask', 'splitext', - 'format_size', 'is_installable_dir', - 'is_svn_page', 'file_contents', - 'split_leading_dir', 'has_leading_dir', - 'normalize_path', - 'renames', 'get_prog', - 'unzip_file', 'untar_file', 'unpack_file', 'call_subprocess', - 'captured_stdout', 'ensure_dir', - 'ARCHIVE_EXTENSIONS', 'SUPPORTED_EXTENSIONS', - 'get_installed_version'] - - -logger = std_logging.getLogger(__name__) - -BZ2_EXTENSIONS = ('.tar.bz2', '.tbz') -XZ_EXTENSIONS = ('.tar.xz', '.txz', '.tlz', '.tar.lz', '.tar.lzma') -ZIP_EXTENSIONS = ('.zip', '.whl') -TAR_EXTENSIONS = ('.tar.gz', '.tgz', '.tar') -ARCHIVE_EXTENSIONS = ( - ZIP_EXTENSIONS + BZ2_EXTENSIONS + TAR_EXTENSIONS + XZ_EXTENSIONS) -SUPPORTED_EXTENSIONS = ZIP_EXTENSIONS + TAR_EXTENSIONS -try: - import bz2 # noqa - SUPPORTED_EXTENSIONS += BZ2_EXTENSIONS -except ImportError: - logger.debug('bz2 module is not available') - -try: - # Only for Python 3.3+ - import lzma # noqa - SUPPORTED_EXTENSIONS += XZ_EXTENSIONS -except ImportError: - logger.debug('lzma module is not available') - - -def import_or_raise(pkg_or_module_string, ExceptionType, *args, **kwargs): - try: - return __import__(pkg_or_module_string) - except ImportError: - raise ExceptionType(*args, **kwargs) - - -def ensure_dir(path): - """os.path.makedirs without EEXIST.""" - try: - os.makedirs(path) - except OSError as e: - if e.errno != errno.EEXIST: - raise - - -def get_prog(): - try: - prog = os.path.basename(sys.argv[0]) - if prog in ('__main__.py', '-c'): - return "%s -m pip" % sys.executable - else: - return prog - except (AttributeError, TypeError, IndexError): - pass - return 'pip' - - -# Retry every half second for up to 3 seconds -@retry(stop_max_delay=3000, wait_fixed=500) -def rmtree(dir, ignore_errors=False): - shutil.rmtree(dir, ignore_errors=ignore_errors, - onerror=rmtree_errorhandler) - - -def rmtree_errorhandler(func, path, exc_info): - """On Windows, the files in .svn are read-only, so when rmtree() tries to - remove them, an exception is thrown. We catch that here, remove the - read-only attribute, and hopefully continue without problems.""" - # if file type currently read only - if os.stat(path).st_mode & stat.S_IREAD: - # convert to read/write - os.chmod(path, stat.S_IWRITE) - # use the original function to repeat the operation - func(path) - return - else: - raise - - -def display_path(path): - """Gives the display value for a given path, making it relative to cwd - if possible.""" - path = os.path.normcase(os.path.abspath(path)) - if sys.version_info[0] == 2: - path = path.decode(sys.getfilesystemencoding(), 'replace') - path = path.encode(sys.getdefaultencoding(), 'replace') - if path.startswith(os.getcwd() + os.path.sep): - path = '.' + path[len(os.getcwd()):] - return path - - -def backup_dir(dir, ext='.bak'): - """Figure out the name of a directory to back up the given dir to - (adding .bak, .bak2, etc)""" - n = 1 - extension = ext - while os.path.exists(dir + extension): - n += 1 - extension = ext + str(n) - return dir + extension - - -def ask_path_exists(message, options): - for action in os.environ.get('PIP_EXISTS_ACTION', '').split(): - if action in options: - return action - return ask(message, options) - - -def ask(message, options): - """Ask the message interactively, with the given possible responses""" - while 1: - if os.environ.get('PIP_NO_INPUT'): - raise Exception( - 'No input was expected ($PIP_NO_INPUT set); question: %s' % - message - ) - response = input(message) - response = response.strip().lower() - if response not in options: - print( - 'Your response (%r) was not one of the expected responses: ' - '%s' % (response, ', '.join(options)) - ) - else: - return response - - -def format_size(bytes): - if bytes > 1000 * 1000: - return '%.1fMB' % (bytes / 1000.0 / 1000) - elif bytes > 10 * 1000: - return '%ikB' % (bytes / 1000) - elif bytes > 1000: - return '%.1fkB' % (bytes / 1000.0) - else: - return '%ibytes' % bytes - - -def is_installable_dir(path): - """Return True if `path` is a directory containing a setup.py file.""" - if not os.path.isdir(path): - return False - setup_py = os.path.join(path, 'setup.py') - if os.path.isfile(setup_py): - return True - return False - - -def is_svn_page(html): - """ - Returns true if the page appears to be the index page of an svn repository - """ - return (re.search(r'[^<]*Revision \d+:', html) and - re.search(r'Powered by (?:<a[^>]*?>)?Subversion', html, re.I)) - - -def file_contents(filename): - with open(filename, 'rb') as fp: - return fp.read().decode('utf-8') - - -def read_chunks(file, size=io.DEFAULT_BUFFER_SIZE): - """Yield pieces of data from a file-like object until EOF.""" - while True: - chunk = file.read(size) - if not chunk: - break - yield chunk - - -def split_leading_dir(path): - path = path.lstrip('/').lstrip('\\') - if '/' in path and (('\\' in path and path.find('/') < path.find('\\')) or - '\\' not in path): - return path.split('/', 1) - elif '\\' in path: - return path.split('\\', 1) - else: - return path, '' - - -def has_leading_dir(paths): - """Returns true if all the paths have the same leading path name - (i.e., everything is in one subdirectory in an archive)""" - common_prefix = None - for path in paths: - prefix, rest = split_leading_dir(path) - if not prefix: - return False - elif common_prefix is None: - common_prefix = prefix - elif prefix != common_prefix: - return False - return True - - -def normalize_path(path, resolve_symlinks=True): - """ - Convert a path to its canonical, case-normalized, absolute version. - - """ - path = expanduser(path) - if resolve_symlinks: - path = os.path.realpath(path) - else: - path = os.path.abspath(path) - return os.path.normcase(path) - - -def splitext(path): - """Like os.path.splitext, but take off .tar too""" - base, ext = posixpath.splitext(path) - if base.lower().endswith('.tar'): - ext = base[-4:] + ext - base = base[:-4] - return base, ext - - -def renames(old, new): - """Like os.renames(), but handles renaming across devices.""" - # Implementation borrowed from os.renames(). - head, tail = os.path.split(new) - if head and tail and not os.path.exists(head): - os.makedirs(head) - - shutil.move(old, new) - - head, tail = os.path.split(old) - if head and tail: - try: - os.removedirs(head) - except OSError: - pass - - -def is_local(path): - """ - Return True if path is within sys.prefix, if we're running in a virtualenv. - - If we're not in a virtualenv, all paths are considered "local." - - """ - if not running_under_virtualenv(): - return True - return normalize_path(path).startswith(normalize_path(sys.prefix)) - - -def dist_is_local(dist): - """ - Return True if given Distribution object is installed locally - (i.e. within current virtualenv). - - Always True if we're not in a virtualenv. - - """ - return is_local(dist_location(dist)) - - -def dist_in_usersite(dist): - """ - Return True if given Distribution is installed in user site. - """ - norm_path = normalize_path(dist_location(dist)) - return norm_path.startswith(normalize_path(user_site)) - - -def dist_in_site_packages(dist): - """ - Return True if given Distribution is installed in - sysconfig.get_python_lib(). - """ - return normalize_path( - dist_location(dist) - ).startswith(normalize_path(site_packages)) - - -def dist_is_editable(dist): - """Is distribution an editable install?""" - for path_item in sys.path: - egg_link = os.path.join(path_item, dist.project_name + '.egg-link') - if os.path.isfile(egg_link): - return True - return False - - -def get_installed_distributions(local_only=True, - skip=stdlib_pkgs, - include_editables=True, - editables_only=False, - user_only=False): - """ - Return a list of installed Distribution objects. - - If ``local_only`` is True (default), only return installations - local to the current virtualenv, if in a virtualenv. - - ``skip`` argument is an iterable of lower-case project names to - ignore; defaults to stdlib_pkgs - - If ``include_editables`` is False, don't report editables. - - If ``editables_only`` is True , only report editables. - - If ``user_only`` is True , only report installations in the user - site directory. - - """ - if local_only: - local_test = dist_is_local - else: - def local_test(d): - return True - - if include_editables: - def editable_test(d): - return True - else: - def editable_test(d): - return not dist_is_editable(d) - - if editables_only: - def editables_only_test(d): - return dist_is_editable(d) - else: - def editables_only_test(d): - return True - - if user_only: - user_test = dist_in_usersite - else: - def user_test(d): - return True - - return [d for d in pkg_resources.working_set - if local_test(d) and - d.key not in skip and - editable_test(d) and - editables_only_test(d) and - user_test(d) - ] - - -def egg_link_path(dist): - """ - Return the path for the .egg-link file if it exists, otherwise, None. - - There's 3 scenarios: - 1) not in a virtualenv - try to find in site.USER_SITE, then site_packages - 2) in a no-global virtualenv - try to find in site_packages - 3) in a yes-global virtualenv - try to find in site_packages, then site.USER_SITE - (don't look in global location) - - For #1 and #3, there could be odd cases, where there's an egg-link in 2 - locations. - - This method will just return the first one found. - """ - sites = [] - if running_under_virtualenv(): - if virtualenv_no_global(): - sites.append(site_packages) - else: - sites.append(site_packages) - if user_site: - sites.append(user_site) - else: - if user_site: - sites.append(user_site) - sites.append(site_packages) - - for site in sites: - egglink = os.path.join(site, dist.project_name) + '.egg-link' - if os.path.isfile(egglink): - return egglink - - -def dist_location(dist): - """ - Get the site-packages location of this distribution. Generally - this is dist.location, except in the case of develop-installed - packages, where dist.location is the source code location, and we - want to know where the egg-link file is. - - """ - egg_link = egg_link_path(dist) - if egg_link: - return egg_link - return dist.location - - -def current_umask(): - """Get the current umask which involves having to set it temporarily.""" - mask = os.umask(0) - os.umask(mask) - return mask - - -def unzip_file(filename, location, flatten=True): - """ - Unzip the file (with path `filename`) to the destination `location`. All - files are written based on system defaults and umask (i.e. permissions are - not preserved), except that regular file members with any execute - permissions (user, group, or world) have "chmod +x" applied after being - written. Note that for windows, any execute changes using os.chmod are - no-ops per the python docs. - """ - ensure_dir(location) - zipfp = open(filename, 'rb') - try: - zip = zipfile.ZipFile(zipfp, allowZip64=True) - leading = has_leading_dir(zip.namelist()) and flatten - for info in zip.infolist(): - name = info.filename - data = zip.read(name) - fn = name - if leading: - fn = split_leading_dir(name)[1] - fn = os.path.join(location, fn) - dir = os.path.dirname(fn) - if fn.endswith('/') or fn.endswith('\\'): - # A directory - ensure_dir(fn) - else: - ensure_dir(dir) - fp = open(fn, 'wb') - try: - fp.write(data) - finally: - fp.close() - mode = info.external_attr >> 16 - # if mode and regular file and any execute permissions for - # user/group/world? - if mode and stat.S_ISREG(mode) and mode & 0o111: - # make dest file have execute for user/group/world - # (chmod +x) no-op on windows per python docs - os.chmod(fn, (0o777 - current_umask() | 0o111)) - finally: - zipfp.close() - - -def untar_file(filename, location): - """ - Untar the file (with path `filename`) to the destination `location`. - All files are written based on system defaults and umask (i.e. permissions - are not preserved), except that regular file members with any execute - permissions (user, group, or world) have "chmod +x" applied after being - written. Note that for windows, any execute changes using os.chmod are - no-ops per the python docs. - """ - ensure_dir(location) - if filename.lower().endswith('.gz') or filename.lower().endswith('.tgz'): - mode = 'r:gz' - elif filename.lower().endswith(BZ2_EXTENSIONS): - mode = 'r:bz2' - elif filename.lower().endswith(XZ_EXTENSIONS): - mode = 'r:xz' - elif filename.lower().endswith('.tar'): - mode = 'r' - else: - logger.warning( - 'Cannot determine compression type for file %s', filename, - ) - mode = 'r:*' - tar = tarfile.open(filename, mode) - try: - # note: python<=2.5 doesn't seem to know about pax headers, filter them - leading = has_leading_dir([ - member.name for member in tar.getmembers() - if member.name != 'pax_global_header' - ]) - for member in tar.getmembers(): - fn = member.name - if fn == 'pax_global_header': - continue - if leading: - fn = split_leading_dir(fn)[1] - path = os.path.join(location, fn) - if member.isdir(): - ensure_dir(path) - elif member.issym(): - try: - tar._extract_member(member, path) - except Exception as exc: - # Some corrupt tar files seem to produce this - # (specifically bad symlinks) - logger.warning( - 'In the tar file %s the member %s is invalid: %s', - filename, member.name, exc, - ) - continue - else: - try: - fp = tar.extractfile(member) - except (KeyError, AttributeError) as exc: - # Some corrupt tar files seem to produce this - # (specifically bad symlinks) - logger.warning( - 'In the tar file %s the member %s is invalid: %s', - filename, member.name, exc, - ) - continue - ensure_dir(os.path.dirname(path)) - with open(path, 'wb') as destfp: - shutil.copyfileobj(fp, destfp) - fp.close() - # Update the timestamp (useful for cython compiled files) - tar.utime(member, path) - # member have any execute permissions for user/group/world? - if member.mode & 0o111: - # make dest file have execute for user/group/world - # no-op on windows per python docs - os.chmod(path, (0o777 - current_umask() | 0o111)) - finally: - tar.close() - - -def unpack_file(filename, location, content_type, link): - filename = os.path.realpath(filename) - if (content_type == 'application/zip' or - filename.lower().endswith(ZIP_EXTENSIONS) or - zipfile.is_zipfile(filename)): - unzip_file( - filename, - location, - flatten=not filename.endswith('.whl') - ) - elif (content_type == 'application/x-gzip' or - tarfile.is_tarfile(filename) or - filename.lower().endswith( - TAR_EXTENSIONS + BZ2_EXTENSIONS + XZ_EXTENSIONS)): - untar_file(filename, location) - elif (content_type and content_type.startswith('text/html') and - is_svn_page(file_contents(filename))): - # We don't really care about this - from pip._internal.vcs.subversion import Subversion - Subversion('svn+' + link.url).unpack(location) - else: - # FIXME: handle? - # FIXME: magic signatures? - logger.critical( - 'Cannot unpack file %s (downloaded from %s, content-type: %s); ' - 'cannot detect archive format', - filename, location, content_type, - ) - raise InstallationError( - 'Cannot determine archive format of %s' % location - ) - - -def call_subprocess(cmd, show_stdout=True, cwd=None, - on_returncode='raise', - command_desc=None, - extra_environ=None, unset_environ=None, spinner=None): - """ - Args: - unset_environ: an iterable of environment variable names to unset - prior to calling subprocess.Popen(). - """ - if unset_environ is None: - unset_environ = [] - # This function's handling of subprocess output is confusing and I - # previously broke it terribly, so as penance I will write a long comment - # explaining things. - # - # The obvious thing that affects output is the show_stdout= - # kwarg. show_stdout=True means, let the subprocess write directly to our - # stdout. Even though it is nominally the default, it is almost never used - # inside pip (and should not be used in new code without a very good - # reason); as of 2016-02-22 it is only used in a few places inside the VCS - # wrapper code. Ideally we should get rid of it entirely, because it - # creates a lot of complexity here for a rarely used feature. - # - # Most places in pip set show_stdout=False. What this means is: - # - We connect the child stdout to a pipe, which we read. - # - By default, we hide the output but show a spinner -- unless the - # subprocess exits with an error, in which case we show the output. - # - If the --verbose option was passed (= loglevel is DEBUG), then we show - # the output unconditionally. (But in this case we don't want to show - # the output a second time if it turns out that there was an error.) - # - # stderr is always merged with stdout (even if show_stdout=True). - if show_stdout: - stdout = None - else: - stdout = subprocess.PIPE - if command_desc is None: - cmd_parts = [] - for part in cmd: - if ' ' in part or '\n' in part or '"' in part or "'" in part: - part = '"%s"' % part.replace('"', '\\"') - cmd_parts.append(part) - command_desc = ' '.join(cmd_parts) - logger.debug("Running command %s", command_desc) - env = os.environ.copy() - if extra_environ: - env.update(extra_environ) - for name in unset_environ: - env.pop(name, None) - try: - proc = subprocess.Popen( - cmd, stderr=subprocess.STDOUT, stdin=subprocess.PIPE, - stdout=stdout, cwd=cwd, env=env, - ) - proc.stdin.close() - except Exception as exc: - logger.critical( - "Error %s while executing command %s", exc, command_desc, - ) - raise - all_output = [] - if stdout is not None: - while True: - line = console_to_str(proc.stdout.readline()) - if not line: - break - line = line.rstrip() - all_output.append(line + '\n') - if logger.getEffectiveLevel() <= std_logging.DEBUG: - # Show the line immediately - logger.debug(line) - else: - # Update the spinner - if spinner is not None: - spinner.spin() - try: - proc.wait() - finally: - if proc.stdout: - proc.stdout.close() - if spinner is not None: - if proc.returncode: - spinner.finish("error") - else: - spinner.finish("done") - if proc.returncode: - if on_returncode == 'raise': - if (logger.getEffectiveLevel() > std_logging.DEBUG and - not show_stdout): - logger.info( - 'Complete output from command %s:', command_desc, - ) - logger.info( - ''.join(all_output) + - '\n----------------------------------------' - ) - raise InstallationError( - 'Command "%s" failed with error code %s in %s' - % (command_desc, proc.returncode, cwd)) - elif on_returncode == 'warn': - logger.warning( - 'Command "%s" had error code %s in %s', - command_desc, proc.returncode, cwd, - ) - elif on_returncode == 'ignore': - pass - else: - raise ValueError('Invalid value: on_returncode=%s' % - repr(on_returncode)) - if not show_stdout: - return ''.join(all_output) - - -def read_text_file(filename): - """Return the contents of *filename*. - - Try to decode the file contents with utf-8, the preferred system encoding - (e.g., cp1252 on some Windows machines), and latin1, in that order. - Decoding a byte string with latin1 will never raise an error. In the worst - case, the returned string will contain some garbage characters. - - """ - with open(filename, 'rb') as fp: - data = fp.read() - - encodings = ['utf-8', locale.getpreferredencoding(False), 'latin1'] - for enc in encodings: - try: - data = data.decode(enc) - except UnicodeDecodeError: - continue - break - - assert type(data) != bytes # Latin1 should have worked. - return data - - -def _make_build_dir(build_dir): - os.makedirs(build_dir) - write_delete_marker_file(build_dir) - - -class FakeFile(object): - """Wrap a list of lines in an object with readline() to make - ConfigParser happy.""" - def __init__(self, lines): - self._gen = (l for l in lines) - - def readline(self): - try: - try: - return next(self._gen) - except NameError: - return self._gen.next() - except StopIteration: - return '' - - def __iter__(self): - return self._gen - - -class StreamWrapper(StringIO): - - @classmethod - def from_stream(cls, orig_stream): - cls.orig_stream = orig_stream - return cls() - - # compileall.compile_dir() needs stdout.encoding to print to stdout - @property - def encoding(self): - return self.orig_stream.encoding - - -@contextlib.contextmanager -def captured_output(stream_name): - """Return a context manager used by captured_stdout/stdin/stderr - that temporarily replaces the sys stream *stream_name* with a StringIO. - - Taken from Lib/support/__init__.py in the CPython repo. - """ - orig_stdout = getattr(sys, stream_name) - setattr(sys, stream_name, StreamWrapper.from_stream(orig_stdout)) - try: - yield getattr(sys, stream_name) - finally: - setattr(sys, stream_name, orig_stdout) - - -def captured_stdout(): - """Capture the output of sys.stdout: - - with captured_stdout() as stdout: - print('hello') - self.assertEqual(stdout.getvalue(), 'hello\n') - - Taken from Lib/support/__init__.py in the CPython repo. - """ - return captured_output('stdout') - - -class cached_property(object): - """A property that is only computed once per instance and then replaces - itself with an ordinary attribute. Deleting the attribute resets the - property. - - Source: https://github.com/bottlepy/bottle/blob/0.11.5/bottle.py#L175 - """ - - def __init__(self, func): - self.__doc__ = getattr(func, '__doc__') - self.func = func - - def __get__(self, obj, cls): - if obj is None: - # We're being accessed from the class itself, not from an object - return self - value = obj.__dict__[self.func.__name__] = self.func(obj) - return value - - -def get_installed_version(dist_name, lookup_dirs=None): - """Get the installed version of dist_name avoiding pkg_resources cache""" - # Create a requirement that we'll look for inside of setuptools. - req = pkg_resources.Requirement.parse(dist_name) - - # We want to avoid having this cached, so we need to construct a new - # working set each time. - if lookup_dirs is None: - working_set = pkg_resources.WorkingSet() - else: - working_set = pkg_resources.WorkingSet(lookup_dirs) - - # Get the installed distribution from our working set - dist = working_set.find(req) - - # Check to see if we got an installed distribution or not, if we did - # we want to return it's version. - return dist.version if dist else None - - -def consume(iterator): - """Consume an iterable at C speed.""" - deque(iterator, maxlen=0) - - -# Simulates an enum -def enum(*sequential, **named): - enums = dict(zip(sequential, range(len(sequential))), **named) - reverse = {value: key for key, value in enums.items()} - enums['reverse_mapping'] = reverse - return type('Enum', (), enums) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/outdated.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/outdated.py deleted file mode 100644 index f4572ab..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/outdated.py +++ /dev/null @@ -1,163 +0,0 @@ -from __future__ import absolute_import - -import datetime -import json -import logging -import os.path -import sys - -from pip._vendor import lockfile -from pip._vendor.packaging import version as packaging_version - -from pip._internal.compat import WINDOWS -from pip._internal.index import PackageFinder -from pip._internal.locations import USER_CACHE_DIR, running_under_virtualenv -from pip._internal.utils.filesystem import check_path_owner -from pip._internal.utils.misc import ensure_dir, get_installed_version - -SELFCHECK_DATE_FMT = "%Y-%m-%dT%H:%M:%SZ" - - -logger = logging.getLogger(__name__) - - -class VirtualenvSelfCheckState(object): - def __init__(self): - self.statefile_path = os.path.join(sys.prefix, "pip-selfcheck.json") - - # Load the existing state - try: - with open(self.statefile_path) as statefile: - self.state = json.load(statefile) - except (IOError, ValueError): - self.state = {} - - def save(self, pypi_version, current_time): - # Attempt to write out our version check file - with open(self.statefile_path, "w") as statefile: - json.dump( - { - "last_check": current_time.strftime(SELFCHECK_DATE_FMT), - "pypi_version": pypi_version, - }, - statefile, - sort_keys=True, - separators=(",", ":") - ) - - -class GlobalSelfCheckState(object): - def __init__(self): - self.statefile_path = os.path.join(USER_CACHE_DIR, "selfcheck.json") - - # Load the existing state - try: - with open(self.statefile_path) as statefile: - self.state = json.load(statefile)[sys.prefix] - except (IOError, ValueError, KeyError): - self.state = {} - - def save(self, pypi_version, current_time): - # Check to make sure that we own the directory - if not check_path_owner(os.path.dirname(self.statefile_path)): - return - - # Now that we've ensured the directory is owned by this user, we'll go - # ahead and make sure that all our directories are created. - ensure_dir(os.path.dirname(self.statefile_path)) - - # Attempt to write out our version check file - with lockfile.LockFile(self.statefile_path): - if os.path.exists(self.statefile_path): - with open(self.statefile_path) as statefile: - state = json.load(statefile) - else: - state = {} - - state[sys.prefix] = { - "last_check": current_time.strftime(SELFCHECK_DATE_FMT), - "pypi_version": pypi_version, - } - - with open(self.statefile_path, "w") as statefile: - json.dump(state, statefile, sort_keys=True, - separators=(",", ":")) - - -def load_selfcheck_statefile(): - if running_under_virtualenv(): - return VirtualenvSelfCheckState() - else: - return GlobalSelfCheckState() - - -def pip_version_check(session, options): - """Check for an update for pip. - - Limit the frequency of checks to once per week. State is stored either in - the active virtualenv or in the user's USER_CACHE_DIR keyed off the prefix - of the pip script path. - """ - installed_version = get_installed_version("pip") - if not installed_version: - return - - pip_version = packaging_version.parse(installed_version) - pypi_version = None - - try: - state = load_selfcheck_statefile() - - current_time = datetime.datetime.utcnow() - # Determine if we need to refresh the state - if "last_check" in state.state and "pypi_version" in state.state: - last_check = datetime.datetime.strptime( - state.state["last_check"], - SELFCHECK_DATE_FMT - ) - if (current_time - last_check).total_seconds() < 7 * 24 * 60 * 60: - pypi_version = state.state["pypi_version"] - - # Refresh the version if we need to or just see if we need to warn - if pypi_version is None: - # Lets use PackageFinder to see what the latest pip version is - finder = PackageFinder( - find_links=options.find_links, - index_urls=[options.index_url] + options.extra_index_urls, - allow_all_prereleases=False, # Explicitly set to False - trusted_hosts=options.trusted_hosts, - process_dependency_links=options.process_dependency_links, - session=session, - ) - all_candidates = finder.find_all_candidates("pip") - if not all_candidates: - return - pypi_version = str( - max(all_candidates, key=lambda c: c.version).version - ) - - # save that we've performed a check - state.save(pypi_version, current_time) - - remote_version = packaging_version.parse(pypi_version) - - # Determine if our pypi_version is older - if (pip_version < remote_version and - pip_version.base_version != remote_version.base_version): - # Advise "python -m pip" on Windows to avoid issues - # with overwriting pip.exe. - if WINDOWS: - pip_cmd = "python -m pip" - else: - pip_cmd = "pip" - logger.warning( - "You are using pip version %s, however version %s is " - "available.\nYou should consider upgrading via the " - "'%s install --upgrade pip' command.", - pip_version, pypi_version, pip_cmd - ) - except Exception: - logger.debug( - "There was an error checking the latest version of pip", - exc_info=True, - ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/packaging.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/packaging.py deleted file mode 100644 index d523953..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/packaging.py +++ /dev/null @@ -1,70 +0,0 @@ -from __future__ import absolute_import - -import logging -import sys -from email.parser import FeedParser # type: ignore - -from pip._vendor import pkg_resources -from pip._vendor.packaging import specifiers, version - -from pip._internal import exceptions - -logger = logging.getLogger(__name__) - - -def check_requires_python(requires_python): - """ - Check if the python version in use match the `requires_python` specifier. - - Returns `True` if the version of python in use matches the requirement. - Returns `False` if the version of python in use does not matches the - requirement. - - Raises an InvalidSpecifier if `requires_python` have an invalid format. - """ - if requires_python is None: - # The package provides no information - return True - requires_python_specifier = specifiers.SpecifierSet(requires_python) - - # We only use major.minor.micro - python_version = version.parse('.'.join(map(str, sys.version_info[:3]))) - return python_version in requires_python_specifier - - -def get_metadata(dist): - if (isinstance(dist, pkg_resources.DistInfoDistribution) and - dist.has_metadata('METADATA')): - return dist.get_metadata('METADATA') - elif dist.has_metadata('PKG-INFO'): - return dist.get_metadata('PKG-INFO') - - -def check_dist_requires_python(dist): - metadata = get_metadata(dist) - feed_parser = FeedParser() - feed_parser.feed(metadata) - pkg_info_dict = feed_parser.close() - requires_python = pkg_info_dict.get('Requires-Python') - try: - if not check_requires_python(requires_python): - raise exceptions.UnsupportedPythonVersion( - "%s requires Python '%s' but the running Python is %s" % ( - dist.project_name, - requires_python, - '.'.join(map(str, sys.version_info[:3])),) - ) - except specifiers.InvalidSpecifier as e: - logger.warning( - "Package %s has an invalid Requires-Python entry %s - %s", - dist.project_name, requires_python, e, - ) - return - - -def get_installer(dist): - if dist.has_metadata('INSTALLER'): - for line in dist.get_metadata_lines('INSTALLER'): - if line.strip(): - return line.strip() - return '' diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/setuptools_build.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/setuptools_build.py deleted file mode 100644 index 9d32174..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/setuptools_build.py +++ /dev/null @@ -1,8 +0,0 @@ -# Shim to wrap setup.py invocation with setuptools -SETUPTOOLS_SHIM = ( - "import setuptools, tokenize;__file__=%r;" - "f=getattr(tokenize, 'open', open)(__file__);" - "code=f.read().replace('\\r\\n', '\\n');" - "f.close();" - "exec(compile(code, __file__, 'exec'))" -) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/temp_dir.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/temp_dir.py deleted file mode 100644 index 25bc0d9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/temp_dir.py +++ /dev/null @@ -1,82 +0,0 @@ -from __future__ import absolute_import - -import logging -import os.path -import tempfile - -from pip._internal.utils.misc import rmtree - -logger = logging.getLogger(__name__) - - -class TempDirectory(object): - """Helper class that owns and cleans up a temporary directory. - - This class can be used as a context manager or as an OO representation of a - temporary directory. - - Attributes: - path - Location to the created temporary directory or None - delete - Whether the directory should be deleted when exiting - (when used as a contextmanager) - - Methods: - create() - Creates a temporary directory and stores its path in the path - attribute. - cleanup() - Deletes the temporary directory and sets path attribute to None - - When used as a context manager, a temporary directory is created on - entering the context and, if the delete attribute is True, on exiting the - context the created directory is deleted. - """ - - def __init__(self, path=None, delete=None, kind="temp"): - super(TempDirectory, self).__init__() - - if path is None and delete is None: - # If we were not given an explicit directory, and we were not given - # an explicit delete option, then we'll default to deleting. - delete = True - - self.path = path - self.delete = delete - self.kind = kind - - def __repr__(self): - return "<{} {!r}>".format(self.__class__.__name__, self.path) - - def __enter__(self): - self.create() - return self - - def __exit__(self, exc, value, tb): - if self.delete: - self.cleanup() - - def create(self): - """Create a temporary directory and store it's path in self.path - """ - if self.path is not None: - logger.debug( - "Skipped creation of temporary directory: {}".format(self.path) - ) - return - # We realpath here because some systems have their default tmpdir - # symlinked to another directory. This tends to confuse build - # scripts, so we canonicalize the path by traversing potential - # symlinks here. - self.path = os.path.realpath( - tempfile.mkdtemp(prefix="pip-{}-".format(self.kind)) - ) - logger.debug("Created temporary directory: {}".format(self.path)) - - def cleanup(self): - """Remove the temporary directory created and reset state - """ - if self.path is not None and os.path.exists(self.path): - rmtree(self.path) - self.path = None diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/typing.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/typing.py deleted file mode 100644 index 4e25ae6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/typing.py +++ /dev/null @@ -1,29 +0,0 @@ -"""For neatly implementing static typing in pip. - -`mypy` - the static type analysis tool we use - uses the `typing` module, which -provides core functionality fundamental to mypy's functioning. - -Generally, `typing` would be imported at runtime and used in that fashion - -it acts as a no-op at runtime and does not have any run-time overhead by -design. - -As it turns out, `typing` is not vendorable - it uses separate sources for -Python 2/Python 3. Thus, this codebase can not expect it to be present. -To work around this, mypy allows the typing import to be behind a False-y -optional to prevent it from running at runtime and type-comments can be used -to remove the need for the types to be accessible directly during runtime. - -This module provides the False-y guard in a nicely named fashion so that a -curious maintainer can reach here to read this. - -In pip, all static-typing related imports should be guarded as follows: - - from pip.utils.typing import MYPY_CHECK_RUNNING - - if MYPY_CHECK_RUNNING: - from typing import ... - -Ref: https://github.com/python/mypy/issues/3216 -""" - -MYPY_CHECK_RUNNING = False diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/ui.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/ui.py deleted file mode 100644 index d97ea36..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/utils/ui.py +++ /dev/null @@ -1,421 +0,0 @@ -from __future__ import absolute_import, division - -import contextlib -import itertools -import logging -import sys -import time -from signal import SIGINT, default_int_handler, signal - -from pip._vendor import six -from pip._vendor.progress.bar import ( - Bar, ChargingBar, FillingCirclesBar, FillingSquaresBar, IncrementalBar, - ShadyBar, -) -from pip._vendor.progress.helpers import HIDE_CURSOR, SHOW_CURSOR, WritelnMixin -from pip._vendor.progress.spinner import Spinner - -from pip._internal.compat import WINDOWS -from pip._internal.utils.logging import get_indentation -from pip._internal.utils.misc import format_size -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import Any - -try: - from pip._vendor import colorama -# Lots of different errors can come from this, including SystemError and -# ImportError. -except Exception: - colorama = None - -logger = logging.getLogger(__name__) - - -def _select_progress_class(preferred, fallback): - encoding = getattr(preferred.file, "encoding", None) - - # If we don't know what encoding this file is in, then we'll just assume - # that it doesn't support unicode and use the ASCII bar. - if not encoding: - return fallback - - # Collect all of the possible characters we want to use with the preferred - # bar. - characters = [ - getattr(preferred, "empty_fill", six.text_type()), - getattr(preferred, "fill", six.text_type()), - ] - characters += list(getattr(preferred, "phases", [])) - - # Try to decode the characters we're using for the bar using the encoding - # of the given file, if this works then we'll assume that we can use the - # fancier bar and if not we'll fall back to the plaintext bar. - try: - six.text_type().join(characters).encode(encoding) - except UnicodeEncodeError: - return fallback - else: - return preferred - - -_BaseBar = _select_progress_class(IncrementalBar, Bar) # type: Any - - -class InterruptibleMixin(object): - """ - Helper to ensure that self.finish() gets called on keyboard interrupt. - - This allows downloads to be interrupted without leaving temporary state - (like hidden cursors) behind. - - This class is similar to the progress library's existing SigIntMixin - helper, but as of version 1.2, that helper has the following problems: - - 1. It calls sys.exit(). - 2. It discards the existing SIGINT handler completely. - 3. It leaves its own handler in place even after an uninterrupted finish, - which will have unexpected delayed effects if the user triggers an - unrelated keyboard interrupt some time after a progress-displaying - download has already completed, for example. - """ - - def __init__(self, *args, **kwargs): - """ - Save the original SIGINT handler for later. - """ - super(InterruptibleMixin, self).__init__(*args, **kwargs) - - self.original_handler = signal(SIGINT, self.handle_sigint) - - # If signal() returns None, the previous handler was not installed from - # Python, and we cannot restore it. This probably should not happen, - # but if it does, we must restore something sensible instead, at least. - # The least bad option should be Python's default SIGINT handler, which - # just raises KeyboardInterrupt. - if self.original_handler is None: - self.original_handler = default_int_handler - - def finish(self): - """ - Restore the original SIGINT handler after finishing. - - This should happen regardless of whether the progress display finishes - normally, or gets interrupted. - """ - super(InterruptibleMixin, self).finish() - signal(SIGINT, self.original_handler) - - def handle_sigint(self, signum, frame): - """ - Call self.finish() before delegating to the original SIGINT handler. - - This handler should only be in place while the progress display is - active. - """ - self.finish() - self.original_handler(signum, frame) - - -class SilentBar(Bar): - - def update(self): - pass - - -class BlueEmojiBar(IncrementalBar): - - suffix = "%(percent)d%%" - bar_prefix = " " - bar_suffix = " " - phases = (u"\U0001F539", u"\U0001F537", u"\U0001F535") # type: Any - - -class DownloadProgressMixin(object): - - def __init__(self, *args, **kwargs): - super(DownloadProgressMixin, self).__init__(*args, **kwargs) - self.message = (" " * (get_indentation() + 2)) + self.message - - @property - def downloaded(self): - return format_size(self.index) - - @property - def download_speed(self): - # Avoid zero division errors... - if self.avg == 0.0: - return "..." - return format_size(1 / self.avg) + "/s" - - @property - def pretty_eta(self): - if self.eta: - return "eta %s" % self.eta_td - return "" - - def iter(self, it, n=1): - for x in it: - yield x - self.next(n) - self.finish() - - -class WindowsMixin(object): - - def __init__(self, *args, **kwargs): - # The Windows terminal does not support the hide/show cursor ANSI codes - # even with colorama. So we'll ensure that hide_cursor is False on - # Windows. - # This call neds to go before the super() call, so that hide_cursor - # is set in time. The base progress bar class writes the "hide cursor" - # code to the terminal in its init, so if we don't set this soon - # enough, we get a "hide" with no corresponding "show"... - if WINDOWS and self.hide_cursor: - self.hide_cursor = False - - super(WindowsMixin, self).__init__(*args, **kwargs) - - # Check if we are running on Windows and we have the colorama module, - # if we do then wrap our file with it. - if WINDOWS and colorama: - self.file = colorama.AnsiToWin32(self.file) - # The progress code expects to be able to call self.file.isatty() - # but the colorama.AnsiToWin32() object doesn't have that, so we'll - # add it. - self.file.isatty = lambda: self.file.wrapped.isatty() - # The progress code expects to be able to call self.file.flush() - # but the colorama.AnsiToWin32() object doesn't have that, so we'll - # add it. - self.file.flush = lambda: self.file.wrapped.flush() - - -class BaseDownloadProgressBar(WindowsMixin, InterruptibleMixin, - DownloadProgressMixin): - - file = sys.stdout - message = "%(percent)d%%" - suffix = "%(downloaded)s %(download_speed)s %(pretty_eta)s" - -# NOTE: The "type: ignore" comments on the following classes are there to -# work around https://github.com/python/typing/issues/241 - - -class DefaultDownloadProgressBar(BaseDownloadProgressBar, - _BaseBar): # type: ignore - pass - - -class DownloadSilentBar(BaseDownloadProgressBar, SilentBar): # type: ignore - pass - - -class DownloadIncrementalBar(BaseDownloadProgressBar, # type: ignore - IncrementalBar): - pass - - -class DownloadChargingBar(BaseDownloadProgressBar, # type: ignore - ChargingBar): - pass - - -class DownloadShadyBar(BaseDownloadProgressBar, ShadyBar): # type: ignore - pass - - -class DownloadFillingSquaresBar(BaseDownloadProgressBar, # type: ignore - FillingSquaresBar): - pass - - -class DownloadFillingCirclesBar(BaseDownloadProgressBar, # type: ignore - FillingCirclesBar): - pass - - -class DownloadBlueEmojiProgressBar(BaseDownloadProgressBar, # type: ignore - BlueEmojiBar): - pass - - -class DownloadProgressSpinner(WindowsMixin, InterruptibleMixin, - DownloadProgressMixin, WritelnMixin, Spinner): - - file = sys.stdout - suffix = "%(downloaded)s %(download_speed)s" - - def next_phase(self): - if not hasattr(self, "_phaser"): - self._phaser = itertools.cycle(self.phases) - return next(self._phaser) - - def update(self): - message = self.message % self - phase = self.next_phase() - suffix = self.suffix % self - line = ''.join([ - message, - " " if message else "", - phase, - " " if suffix else "", - suffix, - ]) - - self.writeln(line) - - -BAR_TYPES = { - "off": (DownloadSilentBar, DownloadSilentBar), - "on": (DefaultDownloadProgressBar, DownloadProgressSpinner), - "ascii": (DownloadIncrementalBar, DownloadProgressSpinner), - "pretty": (DownloadFillingCirclesBar, DownloadProgressSpinner), - "emoji": (DownloadBlueEmojiProgressBar, DownloadProgressSpinner) -} - - -def DownloadProgressProvider(progress_bar, max=None): - if max is None or max == 0: - return BAR_TYPES[progress_bar][1]().iter - else: - return BAR_TYPES[progress_bar][0](max=max).iter - - -################################################################ -# Generic "something is happening" spinners -# -# We don't even try using progress.spinner.Spinner here because it's actually -# simpler to reimplement from scratch than to coerce their code into doing -# what we need. -################################################################ - -@contextlib.contextmanager -def hidden_cursor(file): - # The Windows terminal does not support the hide/show cursor ANSI codes, - # even via colorama. So don't even try. - if WINDOWS: - yield - # We don't want to clutter the output with control characters if we're - # writing to a file, or if the user is running with --quiet. - # See https://github.com/pypa/pip/issues/3418 - elif not file.isatty() or logger.getEffectiveLevel() > logging.INFO: - yield - else: - file.write(HIDE_CURSOR) - try: - yield - finally: - file.write(SHOW_CURSOR) - - -class RateLimiter(object): - def __init__(self, min_update_interval_seconds): - self._min_update_interval_seconds = min_update_interval_seconds - self._last_update = 0 - - def ready(self): - now = time.time() - delta = now - self._last_update - return delta >= self._min_update_interval_seconds - - def reset(self): - self._last_update = time.time() - - -class InteractiveSpinner(object): - def __init__(self, message, file=None, spin_chars="-\\|/", - # Empirically, 8 updates/second looks nice - min_update_interval_seconds=0.125): - self._message = message - if file is None: - file = sys.stdout - self._file = file - self._rate_limiter = RateLimiter(min_update_interval_seconds) - self._finished = False - - self._spin_cycle = itertools.cycle(spin_chars) - - self._file.write(" " * get_indentation() + self._message + " ... ") - self._width = 0 - - def _write(self, status): - assert not self._finished - # Erase what we wrote before by backspacing to the beginning, writing - # spaces to overwrite the old text, and then backspacing again - backup = "\b" * self._width - self._file.write(backup + " " * self._width + backup) - # Now we have a blank slate to add our status - self._file.write(status) - self._width = len(status) - self._file.flush() - self._rate_limiter.reset() - - def spin(self): - if self._finished: - return - if not self._rate_limiter.ready(): - return - self._write(next(self._spin_cycle)) - - def finish(self, final_status): - if self._finished: - return - self._write(final_status) - self._file.write("\n") - self._file.flush() - self._finished = True - - -# Used for dumb terminals, non-interactive installs (no tty), etc. -# We still print updates occasionally (once every 60 seconds by default) to -# act as a keep-alive for systems like Travis-CI that take lack-of-output as -# an indication that a task has frozen. -class NonInteractiveSpinner(object): - def __init__(self, message, min_update_interval_seconds=60): - self._message = message - self._finished = False - self._rate_limiter = RateLimiter(min_update_interval_seconds) - self._update("started") - - def _update(self, status): - assert not self._finished - self._rate_limiter.reset() - logger.info("%s: %s", self._message, status) - - def spin(self): - if self._finished: - return - if not self._rate_limiter.ready(): - return - self._update("still running...") - - def finish(self, final_status): - if self._finished: - return - self._update("finished with status '%s'" % (final_status,)) - self._finished = True - - -@contextlib.contextmanager -def open_spinner(message): - # Interactive spinner goes directly to sys.stdout rather than being routed - # through the logging system, but it acts like it has level INFO, - # i.e. it's only displayed if we're at level INFO or better. - # Non-interactive spinner goes through the logging system, so it is always - # in sync with logging configuration. - if sys.stdout.isatty() and logger.getEffectiveLevel() <= logging.INFO: - spinner = InteractiveSpinner(message) - else: - spinner = NonInteractiveSpinner(message) - try: - with hidden_cursor(sys.stdout): - yield spinner - except KeyboardInterrupt: - spinner.finish("canceled") - raise - except Exception: - spinner.finish("error") - raise - else: - spinner.finish("done") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/__init__.py deleted file mode 100644 index bff94fa..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/__init__.py +++ /dev/null @@ -1,471 +0,0 @@ -"""Handles all VCS (version control) support""" -from __future__ import absolute_import - -import copy -import errno -import logging -import os -import shutil -import sys - -from pip._vendor.six.moves.urllib import parse as urllib_parse - -from pip._internal.exceptions import BadCommand -from pip._internal.utils.misc import ( - display_path, backup_dir, call_subprocess, rmtree, ask_path_exists, -) -from pip._internal.utils.typing import MYPY_CHECK_RUNNING - -if MYPY_CHECK_RUNNING: - from typing import Dict, Optional, Tuple - from pip._internal.basecommand import Command - -__all__ = ['vcs', 'get_src_requirement'] - - -logger = logging.getLogger(__name__) - - -class RevOptions(object): - - """ - Encapsulates a VCS-specific revision to install, along with any VCS - install options. - - Instances of this class should be treated as if immutable. - """ - - def __init__(self, vcs, rev=None, extra_args=None): - """ - Args: - vcs: a VersionControl object. - rev: the name of the revision to install. - extra_args: a list of extra options. - """ - if extra_args is None: - extra_args = [] - - self.extra_args = extra_args - self.rev = rev - self.vcs = vcs - - def __repr__(self): - return '<RevOptions {}: rev={!r}>'.format(self.vcs.name, self.rev) - - @property - def arg_rev(self): - if self.rev is None: - return self.vcs.default_arg_rev - - return self.rev - - def to_args(self): - """ - Return the VCS-specific command arguments. - """ - args = [] - rev = self.arg_rev - if rev is not None: - args += self.vcs.get_base_rev_args(rev) - args += self.extra_args - - return args - - def to_display(self): - if not self.rev: - return '' - - return ' (to revision {})'.format(self.rev) - - def make_new(self, rev): - """ - Make a copy of the current instance, but with a new rev. - - Args: - rev: the name of the revision for the new object. - """ - return self.vcs.make_rev_options(rev, extra_args=self.extra_args) - - -class VcsSupport(object): - _registry = {} # type: Dict[str, Command] - schemes = ['ssh', 'git', 'hg', 'bzr', 'sftp', 'svn'] - - def __init__(self): - # Register more schemes with urlparse for various version control - # systems - urllib_parse.uses_netloc.extend(self.schemes) - # Python >= 2.7.4, 3.3 doesn't have uses_fragment - if getattr(urllib_parse, 'uses_fragment', None): - urllib_parse.uses_fragment.extend(self.schemes) - super(VcsSupport, self).__init__() - - def __iter__(self): - return self._registry.__iter__() - - @property - def backends(self): - return list(self._registry.values()) - - @property - def dirnames(self): - return [backend.dirname for backend in self.backends] - - @property - def all_schemes(self): - schemes = [] - for backend in self.backends: - schemes.extend(backend.schemes) - return schemes - - def register(self, cls): - if not hasattr(cls, 'name'): - logger.warning('Cannot register VCS %s', cls.__name__) - return - if cls.name not in self._registry: - self._registry[cls.name] = cls - logger.debug('Registered VCS backend: %s', cls.name) - - def unregister(self, cls=None, name=None): - if name in self._registry: - del self._registry[name] - elif cls in self._registry.values(): - del self._registry[cls.name] - else: - logger.warning('Cannot unregister because no class or name given') - - def get_backend_name(self, location): - """ - Return the name of the version control backend if found at given - location, e.g. vcs.get_backend_name('/path/to/vcs/checkout') - """ - for vc_type in self._registry.values(): - if vc_type.controls_location(location): - logger.debug('Determine that %s uses VCS: %s', - location, vc_type.name) - return vc_type.name - return None - - def get_backend(self, name): - name = name.lower() - if name in self._registry: - return self._registry[name] - - def get_backend_from_location(self, location): - vc_type = self.get_backend_name(location) - if vc_type: - return self.get_backend(vc_type) - return None - - -vcs = VcsSupport() - - -class VersionControl(object): - name = '' - dirname = '' - # List of supported schemes for this Version Control - schemes = () # type: Tuple[str, ...] - # Iterable of environment variable names to pass to call_subprocess(). - unset_environ = () # type: Tuple[str, ...] - default_arg_rev = None # type: Optional[str] - - def __init__(self, url=None, *args, **kwargs): - self.url = url - super(VersionControl, self).__init__(*args, **kwargs) - - def get_base_rev_args(self, rev): - """ - Return the base revision arguments for a vcs command. - - Args: - rev: the name of a revision to install. Cannot be None. - """ - raise NotImplementedError - - def make_rev_options(self, rev=None, extra_args=None): - """ - Return a RevOptions object. - - Args: - rev: the name of a revision to install. - extra_args: a list of extra options. - """ - return RevOptions(self, rev, extra_args=extra_args) - - def _is_local_repository(self, repo): - """ - posix absolute paths start with os.path.sep, - win32 ones start with drive (like c:\\folder) - """ - drive, tail = os.path.splitdrive(repo) - return repo.startswith(os.path.sep) or drive - - # See issue #1083 for why this method was introduced: - # https://github.com/pypa/pip/issues/1083 - def translate_egg_surname(self, surname): - # For example, Django has branches of the form "stable/1.7.x". - return surname.replace('/', '_') - - def export(self, location): - """ - Export the repository at the url to the destination location - i.e. only download the files, without vcs informations - """ - raise NotImplementedError - - def get_url_rev(self): - """ - Returns the correct repository URL and revision by parsing the given - repository URL - """ - error_message = ( - "Sorry, '%s' is a malformed VCS url. " - "The format is <vcs>+<protocol>://<url>, " - "e.g. svn+http://myrepo/svn/MyApp#egg=MyApp" - ) - assert '+' in self.url, error_message % self.url - url = self.url.split('+', 1)[1] - scheme, netloc, path, query, frag = urllib_parse.urlsplit(url) - rev = None - if '@' in path: - path, rev = path.rsplit('@', 1) - url = urllib_parse.urlunsplit((scheme, netloc, path, query, '')) - return url, rev - - def get_info(self, location): - """ - Returns (url, revision), where both are strings - """ - assert not location.rstrip('/').endswith(self.dirname), \ - 'Bad directory: %s' % location - return self.get_url(location), self.get_revision(location) - - def normalize_url(self, url): - """ - Normalize a URL for comparison by unquoting it and removing any - trailing slash. - """ - return urllib_parse.unquote(url).rstrip('/') - - def compare_urls(self, url1, url2): - """ - Compare two repo URLs for identity, ignoring incidental differences. - """ - return (self.normalize_url(url1) == self.normalize_url(url2)) - - def obtain(self, dest): - """ - Called when installing or updating an editable package, takes the - source path of the checkout. - """ - raise NotImplementedError - - def switch(self, dest, url, rev_options): - """ - Switch the repo at ``dest`` to point to ``URL``. - - Args: - rev_options: a RevOptions object. - """ - raise NotImplementedError - - def update(self, dest, rev_options): - """ - Update an already-existing repo to the given ``rev_options``. - - Args: - rev_options: a RevOptions object. - """ - raise NotImplementedError - - def is_commit_id_equal(self, dest, name): - """ - Return whether the id of the current commit equals the given name. - - Args: - dest: the repository directory. - name: a string name. - """ - raise NotImplementedError - - def check_destination(self, dest, url, rev_options): - """ - Prepare a location to receive a checkout/clone. - - Return True if the location is ready for (and requires) a - checkout/clone, False otherwise. - - Args: - rev_options: a RevOptions object. - """ - checkout = True - prompt = False - rev_display = rev_options.to_display() - if os.path.exists(dest): - checkout = False - if os.path.exists(os.path.join(dest, self.dirname)): - existing_url = self.get_url(dest) - if self.compare_urls(existing_url, url): - logger.debug( - '%s in %s exists, and has correct URL (%s)', - self.repo_name.title(), - display_path(dest), - url, - ) - if not self.is_commit_id_equal(dest, rev_options.rev): - logger.info( - 'Updating %s %s%s', - display_path(dest), - self.repo_name, - rev_display, - ) - self.update(dest, rev_options) - else: - logger.info( - 'Skipping because already up-to-date.') - else: - logger.warning( - '%s %s in %s exists with URL %s', - self.name, - self.repo_name, - display_path(dest), - existing_url, - ) - prompt = ('(s)witch, (i)gnore, (w)ipe, (b)ackup ', - ('s', 'i', 'w', 'b')) - else: - logger.warning( - 'Directory %s already exists, and is not a %s %s.', - dest, - self.name, - self.repo_name, - ) - prompt = ('(i)gnore, (w)ipe, (b)ackup ', ('i', 'w', 'b')) - if prompt: - logger.warning( - 'The plan is to install the %s repository %s', - self.name, - url, - ) - response = ask_path_exists('What to do? %s' % prompt[0], - prompt[1]) - - if response == 's': - logger.info( - 'Switching %s %s to %s%s', - self.repo_name, - display_path(dest), - url, - rev_display, - ) - self.switch(dest, url, rev_options) - elif response == 'i': - # do nothing - pass - elif response == 'w': - logger.warning('Deleting %s', display_path(dest)) - rmtree(dest) - checkout = True - elif response == 'b': - dest_dir = backup_dir(dest) - logger.warning( - 'Backing up %s to %s', display_path(dest), dest_dir, - ) - shutil.move(dest, dest_dir) - checkout = True - elif response == 'a': - sys.exit(-1) - return checkout - - def unpack(self, location): - """ - Clean up current location and download the url repository - (and vcs infos) into location - """ - if os.path.exists(location): - rmtree(location) - self.obtain(location) - - def get_src_requirement(self, dist, location): - """ - Return a string representing the requirement needed to - redownload the files currently present in location, something - like: - {repository_url}@{revision}#egg={project_name}-{version_identifier} - """ - raise NotImplementedError - - def get_url(self, location): - """ - Return the url used at location - Used in get_info or check_destination - """ - raise NotImplementedError - - def get_revision(self, location): - """ - Return the current commit id of the files at the given location. - """ - raise NotImplementedError - - def run_command(self, cmd, show_stdout=True, cwd=None, - on_returncode='raise', - command_desc=None, - extra_environ=None, spinner=None): - """ - Run a VCS subcommand - This is simply a wrapper around call_subprocess that adds the VCS - command name, and checks that the VCS is available - """ - cmd = [self.name] + cmd - try: - return call_subprocess(cmd, show_stdout, cwd, - on_returncode, - command_desc, extra_environ, - unset_environ=self.unset_environ, - spinner=spinner) - except OSError as e: - # errno.ENOENT = no such file or directory - # In other words, the VCS executable isn't available - if e.errno == errno.ENOENT: - raise BadCommand( - 'Cannot find command %r - do you have ' - '%r installed and in your ' - 'PATH?' % (self.name, self.name)) - else: - raise # re-raise exception if a different error occurred - - @classmethod - def controls_location(cls, location): - """ - Check if a location is controlled by the vcs. - It is meant to be overridden to implement smarter detection - mechanisms for specific vcs. - """ - logger.debug('Checking in %s for %s (%s)...', - location, cls.dirname, cls.name) - path = os.path.join(location, cls.dirname) - return os.path.exists(path) - - -def get_src_requirement(dist, location): - version_control = vcs.get_backend_from_location(location) - if version_control: - try: - return version_control().get_src_requirement(dist, - location) - except BadCommand: - logger.warning( - 'cannot determine version of editable source in %s ' - '(%s command not found in path)', - location, - version_control.name, - ) - return dist.as_requirement() - logger.warning( - 'cannot determine version of editable source in %s (is not SVN ' - 'checkout, Git clone, Mercurial clone or Bazaar branch)', - location, - ) - return dist.as_requirement() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/bazaar.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/bazaar.py deleted file mode 100644 index 6ed629a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/bazaar.py +++ /dev/null @@ -1,113 +0,0 @@ -from __future__ import absolute_import - -import logging -import os - -from pip._vendor.six.moves.urllib import parse as urllib_parse - -from pip._internal.download import path_to_url -from pip._internal.utils.misc import display_path, rmtree -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.vcs import VersionControl, vcs - -logger = logging.getLogger(__name__) - - -class Bazaar(VersionControl): - name = 'bzr' - dirname = '.bzr' - repo_name = 'branch' - schemes = ( - 'bzr', 'bzr+http', 'bzr+https', 'bzr+ssh', 'bzr+sftp', 'bzr+ftp', - 'bzr+lp', - ) - - def __init__(self, url=None, *args, **kwargs): - super(Bazaar, self).__init__(url, *args, **kwargs) - # This is only needed for python <2.7.5 - # Register lp but do not expose as a scheme to support bzr+lp. - if getattr(urllib_parse, 'uses_fragment', None): - urllib_parse.uses_fragment.extend(['lp']) - - def get_base_rev_args(self, rev): - return ['-r', rev] - - def export(self, location): - """ - Export the Bazaar repository at the url to the destination location - """ - # Remove the location to make sure Bazaar can export it correctly - if os.path.exists(location): - rmtree(location) - - with TempDirectory(kind="export") as temp_dir: - self.unpack(temp_dir.path) - - self.run_command( - ['export', location], - cwd=temp_dir.path, show_stdout=False, - ) - - def switch(self, dest, url, rev_options): - self.run_command(['switch', url], cwd=dest) - - def update(self, dest, rev_options): - cmd_args = ['pull', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - - def obtain(self, dest): - url, rev = self.get_url_rev() - rev_options = self.make_rev_options(rev) - if self.check_destination(dest, url, rev_options): - rev_display = rev_options.to_display() - logger.info( - 'Checking out %s%s to %s', - url, - rev_display, - display_path(dest), - ) - cmd_args = ['branch', '-q'] + rev_options.to_args() + [url, dest] - self.run_command(cmd_args) - - def get_url_rev(self): - # hotfix the URL scheme after removing bzr+ from bzr+ssh:// readd it - url, rev = super(Bazaar, self).get_url_rev() - if url.startswith('ssh://'): - url = 'bzr+' + url - return url, rev - - def get_url(self, location): - urls = self.run_command(['info'], show_stdout=False, cwd=location) - for line in urls.splitlines(): - line = line.strip() - for x in ('checkout of branch: ', - 'parent branch: '): - if line.startswith(x): - repo = line.split(x)[1] - if self._is_local_repository(repo): - return path_to_url(repo) - return repo - return None - - def get_revision(self, location): - revision = self.run_command( - ['revno'], show_stdout=False, cwd=location, - ) - return revision.splitlines()[-1] - - def get_src_requirement(self, dist, location): - repo = self.get_url(location) - if not repo: - return None - if not repo.lower().startswith('bzr:'): - repo = 'bzr+' + repo - egg_project_name = dist.egg_name().split('-', 1)[0] - current_rev = self.get_revision(location) - return '%s@%s#egg=%s' % (repo, current_rev, egg_project_name) - - def is_commit_id_equal(self, dest, name): - """Always assume the versions don't match""" - return False - - -vcs.register(Bazaar) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/git.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/git.py deleted file mode 100644 index 7a63dfa..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/git.py +++ /dev/null @@ -1,311 +0,0 @@ -from __future__ import absolute_import - -import logging -import os.path -import re - -from pip._vendor.packaging.version import parse as parse_version -from pip._vendor.six.moves.urllib import parse as urllib_parse -from pip._vendor.six.moves.urllib import request as urllib_request - -from pip._internal.compat import samefile -from pip._internal.exceptions import BadCommand -from pip._internal.utils.misc import display_path -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.vcs import VersionControl, vcs - -urlsplit = urllib_parse.urlsplit -urlunsplit = urllib_parse.urlunsplit - - -logger = logging.getLogger(__name__) - - -HASH_REGEX = re.compile('[a-fA-F0-9]{40}') - - -def looks_like_hash(sha): - return bool(HASH_REGEX.match(sha)) - - -class Git(VersionControl): - name = 'git' - dirname = '.git' - repo_name = 'clone' - schemes = ( - 'git', 'git+http', 'git+https', 'git+ssh', 'git+git', 'git+file', - ) - # Prevent the user's environment variables from interfering with pip: - # https://github.com/pypa/pip/issues/1130 - unset_environ = ('GIT_DIR', 'GIT_WORK_TREE') - default_arg_rev = 'HEAD' - - def __init__(self, url=None, *args, **kwargs): - - # Works around an apparent Git bug - # (see http://article.gmane.org/gmane.comp.version-control.git/146500) - if url: - scheme, netloc, path, query, fragment = urlsplit(url) - if scheme.endswith('file'): - initial_slashes = path[:-len(path.lstrip('/'))] - newpath = ( - initial_slashes + - urllib_request.url2pathname(path) - .replace('\\', '/').lstrip('/') - ) - url = urlunsplit((scheme, netloc, newpath, query, fragment)) - after_plus = scheme.find('+') + 1 - url = scheme[:after_plus] + urlunsplit( - (scheme[after_plus:], netloc, newpath, query, fragment), - ) - - super(Git, self).__init__(url, *args, **kwargs) - - def get_base_rev_args(self, rev): - return [rev] - - def get_git_version(self): - VERSION_PFX = 'git version ' - version = self.run_command(['version'], show_stdout=False) - if version.startswith(VERSION_PFX): - version = version[len(VERSION_PFX):].split()[0] - else: - version = '' - # get first 3 positions of the git version becasue - # on windows it is x.y.z.windows.t, and this parses as - # LegacyVersion which always smaller than a Version. - version = '.'.join(version.split('.')[:3]) - return parse_version(version) - - def export(self, location): - """Export the Git repository at the url to the destination location""" - if not location.endswith('/'): - location = location + '/' - - with TempDirectory(kind="export") as temp_dir: - self.unpack(temp_dir.path) - self.run_command( - ['checkout-index', '-a', '-f', '--prefix', location], - show_stdout=False, cwd=temp_dir.path - ) - - def get_revision_sha(self, dest, rev): - """ - Return a commit hash for the given revision if it names a remote - branch or tag. Otherwise, return None. - - Args: - dest: the repository directory. - rev: the revision name. - """ - # Pass rev to pre-filter the list. - output = self.run_command(['show-ref', rev], cwd=dest, - show_stdout=False, on_returncode='ignore') - refs = {} - for line in output.strip().splitlines(): - try: - sha, ref = line.split() - except ValueError: - # Include the offending line to simplify troubleshooting if - # this error ever occurs. - raise ValueError('unexpected show-ref line: {!r}'.format(line)) - - refs[ref] = sha - - branch_ref = 'refs/remotes/origin/{}'.format(rev) - tag_ref = 'refs/tags/{}'.format(rev) - - return refs.get(branch_ref) or refs.get(tag_ref) - - def check_rev_options(self, dest, rev_options): - """Check the revision options before checkout. - - Returns a new RevOptions object for the SHA1 of the branch or tag - if found. - - Args: - rev_options: a RevOptions object. - """ - rev = rev_options.arg_rev - sha = self.get_revision_sha(dest, rev) - - if sha is not None: - return rev_options.make_new(sha) - - # Do not show a warning for the common case of something that has - # the form of a Git commit hash. - if not looks_like_hash(rev): - logger.warning( - "Did not find branch or tag '%s', assuming revision or ref.", - rev, - ) - return rev_options - - def is_commit_id_equal(self, dest, name): - """ - Return whether the current commit hash equals the given name. - - Args: - dest: the repository directory. - name: a string name. - """ - if not name: - # Then avoid an unnecessary subprocess call. - return False - - return self.get_revision(dest) == name - - def switch(self, dest, url, rev_options): - self.run_command(['config', 'remote.origin.url', url], cwd=dest) - cmd_args = ['checkout', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - - self.update_submodules(dest) - - def update(self, dest, rev_options): - # First fetch changes from the default remote - if self.get_git_version() >= parse_version('1.9.0'): - # fetch tags in addition to everything else - self.run_command(['fetch', '-q', '--tags'], cwd=dest) - else: - self.run_command(['fetch', '-q'], cwd=dest) - # Then reset to wanted revision (maybe even origin/master) - rev_options = self.check_rev_options(dest, rev_options) - cmd_args = ['reset', '--hard', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - #: update submodules - self.update_submodules(dest) - - def obtain(self, dest): - url, rev = self.get_url_rev() - rev_options = self.make_rev_options(rev) - if self.check_destination(dest, url, rev_options): - rev_display = rev_options.to_display() - logger.info( - 'Cloning %s%s to %s', url, rev_display, display_path(dest), - ) - self.run_command(['clone', '-q', url, dest]) - - if rev: - rev_options = self.check_rev_options(dest, rev_options) - # Only do a checkout if the current commit id doesn't match - # the requested revision. - if not self.is_commit_id_equal(dest, rev_options.rev): - rev = rev_options.rev - # Only fetch the revision if it's a ref - if rev.startswith('refs/'): - self.run_command( - ['fetch', '-q', url] + rev_options.to_args(), - cwd=dest, - ) - # Change the revision to the SHA of the ref we fetched - rev = 'FETCH_HEAD' - self.run_command(['checkout', '-q', rev], cwd=dest) - - #: repo may contain submodules - self.update_submodules(dest) - - def get_url(self, location): - """Return URL of the first remote encountered.""" - remotes = self.run_command( - ['config', '--get-regexp', r'remote\..*\.url'], - show_stdout=False, cwd=location, - ) - remotes = remotes.splitlines() - found_remote = remotes[0] - for remote in remotes: - if remote.startswith('remote.origin.url '): - found_remote = remote - break - url = found_remote.split(' ')[1] - return url.strip() - - def get_revision(self, location): - current_rev = self.run_command( - ['rev-parse', 'HEAD'], show_stdout=False, cwd=location, - ) - return current_rev.strip() - - def _get_subdirectory(self, location): - """Return the relative path of setup.py to the git repo root.""" - # find the repo root - git_dir = self.run_command(['rev-parse', '--git-dir'], - show_stdout=False, cwd=location).strip() - if not os.path.isabs(git_dir): - git_dir = os.path.join(location, git_dir) - root_dir = os.path.join(git_dir, '..') - # find setup.py - orig_location = location - while not os.path.exists(os.path.join(location, 'setup.py')): - last_location = location - location = os.path.dirname(location) - if location == last_location: - # We've traversed up to the root of the filesystem without - # finding setup.py - logger.warning( - "Could not find setup.py for directory %s (tried all " - "parent directories)", - orig_location, - ) - return None - # relative path of setup.py to repo root - if samefile(root_dir, location): - return None - return os.path.relpath(location, root_dir) - - def get_src_requirement(self, dist, location): - repo = self.get_url(location) - if not repo.lower().startswith('git:'): - repo = 'git+' + repo - egg_project_name = dist.egg_name().split('-', 1)[0] - if not repo: - return None - current_rev = self.get_revision(location) - req = '%s@%s#egg=%s' % (repo, current_rev, egg_project_name) - subdirectory = self._get_subdirectory(location) - if subdirectory: - req += '&subdirectory=' + subdirectory - return req - - def get_url_rev(self): - """ - Prefixes stub URLs like 'user@hostname:user/repo.git' with 'ssh://'. - That's required because although they use SSH they sometimes doesn't - work with a ssh:// scheme (e.g. Github). But we need a scheme for - parsing. Hence we remove it again afterwards and return it as a stub. - """ - if '://' not in self.url: - assert 'file:' not in self.url - self.url = self.url.replace('git+', 'git+ssh://') - url, rev = super(Git, self).get_url_rev() - url = url.replace('ssh://', '') - else: - url, rev = super(Git, self).get_url_rev() - - return url, rev - - def update_submodules(self, location): - if not os.path.exists(os.path.join(location, '.gitmodules')): - return - self.run_command( - ['submodule', 'update', '--init', '--recursive', '-q'], - cwd=location, - ) - - @classmethod - def controls_location(cls, location): - if super(Git, cls).controls_location(location): - return True - try: - r = cls().run_command(['rev-parse'], - cwd=location, - show_stdout=False, - on_returncode='ignore') - return not r - except BadCommand: - logger.debug("could not determine if %s is under git control " - "because git is not available", location) - return False - - -vcs.register(Git) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/mercurial.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/mercurial.py deleted file mode 100644 index 3936473..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/mercurial.py +++ /dev/null @@ -1,105 +0,0 @@ -from __future__ import absolute_import - -import logging -import os - -from pip._vendor.six.moves import configparser - -from pip._internal.download import path_to_url -from pip._internal.utils.misc import display_path -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.vcs import VersionControl, vcs - -logger = logging.getLogger(__name__) - - -class Mercurial(VersionControl): - name = 'hg' - dirname = '.hg' - repo_name = 'clone' - schemes = ('hg', 'hg+http', 'hg+https', 'hg+ssh', 'hg+static-http') - - def get_base_rev_args(self, rev): - return [rev] - - def export(self, location): - """Export the Hg repository at the url to the destination location""" - with TempDirectory(kind="export") as temp_dir: - self.unpack(temp_dir.path) - - self.run_command( - ['archive', location], show_stdout=False, cwd=temp_dir.path - ) - - def switch(self, dest, url, rev_options): - repo_config = os.path.join(dest, self.dirname, 'hgrc') - config = configparser.SafeConfigParser() - try: - config.read(repo_config) - config.set('paths', 'default', url) - with open(repo_config, 'w') as config_file: - config.write(config_file) - except (OSError, configparser.NoSectionError) as exc: - logger.warning( - 'Could not switch Mercurial repository to %s: %s', url, exc, - ) - else: - cmd_args = ['update', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - - def update(self, dest, rev_options): - self.run_command(['pull', '-q'], cwd=dest) - cmd_args = ['update', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - - def obtain(self, dest): - url, rev = self.get_url_rev() - rev_options = self.make_rev_options(rev) - if self.check_destination(dest, url, rev_options): - rev_display = rev_options.to_display() - logger.info( - 'Cloning hg %s%s to %s', - url, - rev_display, - display_path(dest), - ) - self.run_command(['clone', '--noupdate', '-q', url, dest]) - cmd_args = ['update', '-q'] + rev_options.to_args() - self.run_command(cmd_args, cwd=dest) - - def get_url(self, location): - url = self.run_command( - ['showconfig', 'paths.default'], - show_stdout=False, cwd=location).strip() - if self._is_local_repository(url): - url = path_to_url(url) - return url.strip() - - def get_revision(self, location): - current_revision = self.run_command( - ['parents', '--template={rev}'], - show_stdout=False, cwd=location).strip() - return current_revision - - def get_revision_hash(self, location): - current_rev_hash = self.run_command( - ['parents', '--template={node}'], - show_stdout=False, cwd=location).strip() - return current_rev_hash - - def get_src_requirement(self, dist, location): - repo = self.get_url(location) - if not repo.lower().startswith('hg:'): - repo = 'hg+' + repo - egg_project_name = dist.egg_name().split('-', 1)[0] - if not repo: - return None - current_rev_hash = self.get_revision_hash(location) - return '%s@%s#egg=%s' % (repo, current_rev_hash, egg_project_name) - - def is_commit_id_equal(self, dest, name): - """Always assume the versions don't match""" - return False - - -vcs.register(Mercurial) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/subversion.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/subversion.py deleted file mode 100644 index 95e5440..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/vcs/subversion.py +++ /dev/null @@ -1,271 +0,0 @@ -from __future__ import absolute_import - -import logging -import os -import re - -from pip._vendor.six.moves.urllib import parse as urllib_parse - -from pip._internal.index import Link -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import display_path, rmtree -from pip._internal.vcs import VersionControl, vcs - -_svn_xml_url_re = re.compile('url="([^"]+)"') -_svn_rev_re = re.compile(r'committed-rev="(\d+)"') -_svn_url_re = re.compile(r'URL: (.+)') -_svn_revision_re = re.compile(r'Revision: (.+)') -_svn_info_xml_rev_re = re.compile(r'\s*revision="(\d+)"') -_svn_info_xml_url_re = re.compile(r'<url>(.*)</url>') - - -logger = logging.getLogger(__name__) - - -class Subversion(VersionControl): - name = 'svn' - dirname = '.svn' - repo_name = 'checkout' - schemes = ('svn', 'svn+ssh', 'svn+http', 'svn+https', 'svn+svn') - - def get_base_rev_args(self, rev): - return ['-r', rev] - - def get_info(self, location): - """Returns (url, revision), where both are strings""" - assert not location.rstrip('/').endswith(self.dirname), \ - 'Bad directory: %s' % location - output = self.run_command( - ['info', location], - show_stdout=False, - extra_environ={'LANG': 'C'}, - ) - match = _svn_url_re.search(output) - if not match: - logger.warning( - 'Cannot determine URL of svn checkout %s', - display_path(location), - ) - logger.debug('Output that cannot be parsed: \n%s', output) - return None, None - url = match.group(1).strip() - match = _svn_revision_re.search(output) - if not match: - logger.warning( - 'Cannot determine revision of svn checkout %s', - display_path(location), - ) - logger.debug('Output that cannot be parsed: \n%s', output) - return url, None - return url, match.group(1) - - def export(self, location): - """Export the svn repository at the url to the destination location""" - url, rev = self.get_url_rev() - rev_options = get_rev_options(self, url, rev) - url = self.remove_auth_from_url(url) - logger.info('Exporting svn repository %s to %s', url, location) - with indent_log(): - if os.path.exists(location): - # Subversion doesn't like to check out over an existing - # directory --force fixes this, but was only added in svn 1.5 - rmtree(location) - cmd_args = ['export'] + rev_options.to_args() + [url, location] - self.run_command(cmd_args, show_stdout=False) - - def switch(self, dest, url, rev_options): - cmd_args = ['switch'] + rev_options.to_args() + [url, dest] - self.run_command(cmd_args) - - def update(self, dest, rev_options): - cmd_args = ['update'] + rev_options.to_args() + [dest] - self.run_command(cmd_args) - - def obtain(self, dest): - url, rev = self.get_url_rev() - rev_options = get_rev_options(self, url, rev) - url = self.remove_auth_from_url(url) - if self.check_destination(dest, url, rev_options): - rev_display = rev_options.to_display() - logger.info( - 'Checking out %s%s to %s', - url, - rev_display, - display_path(dest), - ) - cmd_args = ['checkout', '-q'] + rev_options.to_args() + [url, dest] - self.run_command(cmd_args) - - def get_location(self, dist, dependency_links): - for url in dependency_links: - egg_fragment = Link(url).egg_fragment - if not egg_fragment: - continue - if '-' in egg_fragment: - # FIXME: will this work when a package has - in the name? - key = '-'.join(egg_fragment.split('-')[:-1]).lower() - else: - key = egg_fragment - if key == dist.key: - return url.split('#', 1)[0] - return None - - def get_revision(self, location): - """ - Return the maximum revision for all files under a given location - """ - # Note: taken from setuptools.command.egg_info - revision = 0 - - for base, dirs, files in os.walk(location): - if self.dirname not in dirs: - dirs[:] = [] - continue # no sense walking uncontrolled subdirs - dirs.remove(self.dirname) - entries_fn = os.path.join(base, self.dirname, 'entries') - if not os.path.exists(entries_fn): - # FIXME: should we warn? - continue - - dirurl, localrev = self._get_svn_url_rev(base) - - if base == location: - base = dirurl + '/' # save the root url - elif not dirurl or not dirurl.startswith(base): - dirs[:] = [] - continue # not part of the same svn tree, skip it - revision = max(revision, localrev) - return revision - - def get_url_rev(self): - # hotfix the URL scheme after removing svn+ from svn+ssh:// readd it - url, rev = super(Subversion, self).get_url_rev() - if url.startswith('ssh://'): - url = 'svn+' + url - return url, rev - - def get_url(self, location): - # In cases where the source is in a subdirectory, not alongside - # setup.py we have to look up in the location until we find a real - # setup.py - orig_location = location - while not os.path.exists(os.path.join(location, 'setup.py')): - last_location = location - location = os.path.dirname(location) - if location == last_location: - # We've traversed up to the root of the filesystem without - # finding setup.py - logger.warning( - "Could not find setup.py for directory %s (tried all " - "parent directories)", - orig_location, - ) - return None - - return self._get_svn_url_rev(location)[0] - - def _get_svn_url_rev(self, location): - from pip._internal.exceptions import InstallationError - - entries_path = os.path.join(location, self.dirname, 'entries') - if os.path.exists(entries_path): - with open(entries_path) as f: - data = f.read() - else: # subversion >= 1.7 does not have the 'entries' file - data = '' - - if (data.startswith('8') or - data.startswith('9') or - data.startswith('10')): - data = list(map(str.splitlines, data.split('\n\x0c\n'))) - del data[0][0] # get rid of the '8' - url = data[0][3] - revs = [int(d[9]) for d in data if len(d) > 9 and d[9]] + [0] - elif data.startswith('<?xml'): - match = _svn_xml_url_re.search(data) - if not match: - raise ValueError('Badly formatted data: %r' % data) - url = match.group(1) # get repository URL - revs = [int(m.group(1)) for m in _svn_rev_re.finditer(data)] + [0] - else: - try: - # subversion >= 1.7 - xml = self.run_command( - ['info', '--xml', location], - show_stdout=False, - ) - url = _svn_info_xml_url_re.search(xml).group(1) - revs = [ - int(m.group(1)) for m in _svn_info_xml_rev_re.finditer(xml) - ] - except InstallationError: - url, revs = None, [] - - if revs: - rev = max(revs) - else: - rev = 0 - - return url, rev - - def get_src_requirement(self, dist, location): - repo = self.get_url(location) - if repo is None: - return None - # FIXME: why not project name? - egg_project_name = dist.egg_name().split('-', 1)[0] - rev = self.get_revision(location) - return 'svn+%s@%s#egg=%s' % (repo, rev, egg_project_name) - - def is_commit_id_equal(self, dest, name): - """Always assume the versions don't match""" - return False - - @staticmethod - def remove_auth_from_url(url): - # Return a copy of url with 'username:password@' removed. - # username/pass params are passed to subversion through flags - # and are not recognized in the url. - - # parsed url - purl = urllib_parse.urlsplit(url) - stripped_netloc = \ - purl.netloc.split('@')[-1] - - # stripped url - url_pieces = ( - purl.scheme, stripped_netloc, purl.path, purl.query, purl.fragment - ) - surl = urllib_parse.urlunsplit(url_pieces) - return surl - - -def get_rev_options(vcs, url, rev): - """ - Return a RevOptions object. - """ - r = urllib_parse.urlsplit(url) - if hasattr(r, 'username'): - # >= Python-2.5 - username, password = r.username, r.password - else: - netloc = r[1] - if '@' in netloc: - auth = netloc.split('@')[0] - if ':' in auth: - username, password = auth.split(':', 1) - else: - username, password = auth, None - else: - username, password = None, None - - extra_args = [] - if username: - extra_args += ['--username', username] - if password: - extra_args += ['--password', password] - - return vcs.make_rev_options(rev, extra_args=extra_args) - - -vcs.register(Subversion) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/wheel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/wheel.py deleted file mode 100644 index 36459dd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_internal/wheel.py +++ /dev/null @@ -1,817 +0,0 @@ -""" -Support for installing and building the "wheel" binary package format. -""" -from __future__ import absolute_import - -import collections -import compileall -import copy -import csv -import hashlib -import logging -import os.path -import re -import shutil -import stat -import sys -import warnings -from base64 import urlsafe_b64encode -from email.parser import Parser - -from pip._vendor import pkg_resources -from pip._vendor.distlib.scripts import ScriptMaker -from pip._vendor.packaging.utils import canonicalize_name -from pip._vendor.six import StringIO - -from pip._internal import pep425tags -from pip._internal.build_env import BuildEnvironment -from pip._internal.download import path_to_url, unpack_url -from pip._internal.exceptions import ( - InstallationError, InvalidWheelFilename, UnsupportedWheel, -) -from pip._internal.locations import ( - PIP_DELETE_MARKER_FILENAME, distutils_scheme, -) -from pip._internal.utils.logging import indent_log -from pip._internal.utils.misc import ( - call_subprocess, captured_stdout, ensure_dir, read_chunks, -) -from pip._internal.utils.setuptools_build import SETUPTOOLS_SHIM -from pip._internal.utils.temp_dir import TempDirectory -from pip._internal.utils.typing import MYPY_CHECK_RUNNING -from pip._internal.utils.ui import open_spinner - -if MYPY_CHECK_RUNNING: - from typing import Dict, List, Optional - -wheel_ext = '.whl' - -VERSION_COMPATIBLE = (1, 0) - - -logger = logging.getLogger(__name__) - - -def rehash(path, algo='sha256', blocksize=1 << 20): - """Return (hash, length) for path using hashlib.new(algo)""" - h = hashlib.new(algo) - length = 0 - with open(path, 'rb') as f: - for block in read_chunks(f, size=blocksize): - length += len(block) - h.update(block) - digest = 'sha256=' + urlsafe_b64encode( - h.digest() - ).decode('latin1').rstrip('=') - return (digest, length) - - -def open_for_csv(name, mode): - if sys.version_info[0] < 3: - nl = {} - bin = 'b' - else: - nl = {'newline': ''} - bin = '' - return open(name, mode + bin, **nl) - - -def fix_script(path): - """Replace #!python with #!/path/to/python - Return True if file was changed.""" - # XXX RECORD hashes will need to be updated - if os.path.isfile(path): - with open(path, 'rb') as script: - firstline = script.readline() - if not firstline.startswith(b'#!python'): - return False - exename = sys.executable.encode(sys.getfilesystemencoding()) - firstline = b'#!' + exename + os.linesep.encode("ascii") - rest = script.read() - with open(path, 'wb') as script: - script.write(firstline) - script.write(rest) - return True - - -dist_info_re = re.compile(r"""^(?P<namever>(?P<name>.+?)(-(?P<ver>.+?))?) - \.dist-info$""", re.VERBOSE) - - -def root_is_purelib(name, wheeldir): - """ - Return True if the extracted wheel in wheeldir should go into purelib. - """ - name_folded = name.replace("-", "_") - for item in os.listdir(wheeldir): - match = dist_info_re.match(item) - if match and match.group('name') == name_folded: - with open(os.path.join(wheeldir, item, 'WHEEL')) as wheel: - for line in wheel: - line = line.lower().rstrip() - if line == "root-is-purelib: true": - return True - return False - - -def get_entrypoints(filename): - if not os.path.exists(filename): - return {}, {} - - # This is done because you can pass a string to entry_points wrappers which - # means that they may or may not be valid INI files. The attempt here is to - # strip leading and trailing whitespace in order to make them valid INI - # files. - with open(filename) as fp: - data = StringIO() - for line in fp: - data.write(line.strip()) - data.write("\n") - data.seek(0) - - # get the entry points and then the script names - entry_points = pkg_resources.EntryPoint.parse_map(data) - console = entry_points.get('console_scripts', {}) - gui = entry_points.get('gui_scripts', {}) - - def _split_ep(s): - """get the string representation of EntryPoint, remove space and split - on '='""" - return str(s).replace(" ", "").split("=") - - # convert the EntryPoint objects into strings with module:function - console = dict(_split_ep(v) for v in console.values()) - gui = dict(_split_ep(v) for v in gui.values()) - return console, gui - - -def message_about_scripts_not_on_PATH(scripts): - # type: (List[str]) -> Optional[str] - """Determine if any scripts are not on PATH and format a warning. - - Returns a warning message if one or more scripts are not on PATH, - otherwise None. - """ - if not scripts: - return None - - # Group scripts by the path they were installed in - grouped_by_dir = collections.defaultdict(set) # type: Dict[str, set] - for destfile in scripts: - parent_dir = os.path.dirname(destfile) - script_name = os.path.basename(destfile) - grouped_by_dir[parent_dir].add(script_name) - - # We don't want to warn for directories that are on PATH. - not_warn_dirs = [ - os.path.normcase(i) for i in os.environ["PATH"].split(os.pathsep) - ] - # If an executable sits with sys.executable, we don't warn for it. - # This covers the case of venv invocations without activating the venv. - not_warn_dirs.append(os.path.normcase(os.path.dirname(sys.executable))) - warn_for = { - parent_dir: scripts for parent_dir, scripts in grouped_by_dir.items() - if os.path.normcase(parent_dir) not in not_warn_dirs - } - if not warn_for: - return None - - # Format a message - msg_lines = [] - for parent_dir, scripts in warn_for.items(): - scripts = sorted(scripts) - if len(scripts) == 1: - start_text = "script {} is".format(scripts[0]) - else: - start_text = "scripts {} are".format( - ", ".join(scripts[:-1]) + " and " + scripts[-1] - ) - - msg_lines.append( - "The {} installed in '{}' which is not on PATH." - .format(start_text, parent_dir) - ) - - last_line_fmt = ( - "Consider adding {} to PATH or, if you prefer " - "to suppress this warning, use --no-warn-script-location." - ) - if len(msg_lines) == 1: - msg_lines.append(last_line_fmt.format("this directory")) - else: - msg_lines.append(last_line_fmt.format("these directories")) - - # Returns the formatted multiline message - return "\n".join(msg_lines) - - -def move_wheel_files(name, req, wheeldir, user=False, home=None, root=None, - pycompile=True, scheme=None, isolated=False, prefix=None, - warn_script_location=True): - """Install a wheel""" - - if not scheme: - scheme = distutils_scheme( - name, user=user, home=home, root=root, isolated=isolated, - prefix=prefix, - ) - - if root_is_purelib(name, wheeldir): - lib_dir = scheme['purelib'] - else: - lib_dir = scheme['platlib'] - - info_dir = [] - data_dirs = [] - source = wheeldir.rstrip(os.path.sep) + os.path.sep - - # Record details of the files moved - # installed = files copied from the wheel to the destination - # changed = files changed while installing (scripts #! line typically) - # generated = files newly generated during the install (script wrappers) - installed = {} - changed = set() - generated = [] - - # Compile all of the pyc files that we're going to be installing - if pycompile: - with captured_stdout() as stdout: - with warnings.catch_warnings(): - warnings.filterwarnings('ignore') - compileall.compile_dir(source, force=True, quiet=True) - logger.debug(stdout.getvalue()) - - def normpath(src, p): - return os.path.relpath(src, p).replace(os.path.sep, '/') - - def record_installed(srcfile, destfile, modified=False): - """Map archive RECORD paths to installation RECORD paths.""" - oldpath = normpath(srcfile, wheeldir) - newpath = normpath(destfile, lib_dir) - installed[oldpath] = newpath - if modified: - changed.add(destfile) - - def clobber(source, dest, is_base, fixer=None, filter=None): - ensure_dir(dest) # common for the 'include' path - - for dir, subdirs, files in os.walk(source): - basedir = dir[len(source):].lstrip(os.path.sep) - destdir = os.path.join(dest, basedir) - if is_base and basedir.split(os.path.sep, 1)[0].endswith('.data'): - continue - for s in subdirs: - destsubdir = os.path.join(dest, basedir, s) - if is_base and basedir == '' and destsubdir.endswith('.data'): - data_dirs.append(s) - continue - elif (is_base and - s.endswith('.dist-info') and - canonicalize_name(s).startswith( - canonicalize_name(req.name))): - assert not info_dir, ('Multiple .dist-info directories: ' + - destsubdir + ', ' + - ', '.join(info_dir)) - info_dir.append(destsubdir) - for f in files: - # Skip unwanted files - if filter and filter(f): - continue - srcfile = os.path.join(dir, f) - destfile = os.path.join(dest, basedir, f) - # directory creation is lazy and after the file filtering above - # to ensure we don't install empty dirs; empty dirs can't be - # uninstalled. - ensure_dir(destdir) - - # We use copyfile (not move, copy, or copy2) to be extra sure - # that we are not moving directories over (copyfile fails for - # directories) as well as to ensure that we are not copying - # over any metadata because we want more control over what - # metadata we actually copy over. - shutil.copyfile(srcfile, destfile) - - # Copy over the metadata for the file, currently this only - # includes the atime and mtime. - st = os.stat(srcfile) - if hasattr(os, "utime"): - os.utime(destfile, (st.st_atime, st.st_mtime)) - - # If our file is executable, then make our destination file - # executable. - if os.access(srcfile, os.X_OK): - st = os.stat(srcfile) - permissions = ( - st.st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH - ) - os.chmod(destfile, permissions) - - changed = False - if fixer: - changed = fixer(destfile) - record_installed(srcfile, destfile, changed) - - clobber(source, lib_dir, True) - - assert info_dir, "%s .dist-info directory not found" % req - - # Get the defined entry points - ep_file = os.path.join(info_dir[0], 'entry_points.txt') - console, gui = get_entrypoints(ep_file) - - def is_entrypoint_wrapper(name): - # EP, EP.exe and EP-script.py are scripts generated for - # entry point EP by setuptools - if name.lower().endswith('.exe'): - matchname = name[:-4] - elif name.lower().endswith('-script.py'): - matchname = name[:-10] - elif name.lower().endswith(".pya"): - matchname = name[:-4] - else: - matchname = name - # Ignore setuptools-generated scripts - return (matchname in console or matchname in gui) - - for datadir in data_dirs: - fixer = None - filter = None - for subdir in os.listdir(os.path.join(wheeldir, datadir)): - fixer = None - if subdir == 'scripts': - fixer = fix_script - filter = is_entrypoint_wrapper - source = os.path.join(wheeldir, datadir, subdir) - dest = scheme[subdir] - clobber(source, dest, False, fixer=fixer, filter=filter) - - maker = ScriptMaker(None, scheme['scripts']) - - # Ensure old scripts are overwritten. - # See https://github.com/pypa/pip/issues/1800 - maker.clobber = True - - # Ensure we don't generate any variants for scripts because this is almost - # never what somebody wants. - # See https://bitbucket.org/pypa/distlib/issue/35/ - maker.variants = {''} - - # This is required because otherwise distlib creates scripts that are not - # executable. - # See https://bitbucket.org/pypa/distlib/issue/32/ - maker.set_mode = True - - # Simplify the script and fix the fact that the default script swallows - # every single stack trace. - # See https://bitbucket.org/pypa/distlib/issue/34/ - # See https://bitbucket.org/pypa/distlib/issue/33/ - def _get_script_text(entry): - if entry.suffix is None: - raise InstallationError( - "Invalid script entry point: %s for req: %s - A callable " - "suffix is required. Cf https://packaging.python.org/en/" - "latest/distributing.html#console-scripts for more " - "information." % (entry, req) - ) - return maker.script_template % { - "module": entry.prefix, - "import_name": entry.suffix.split(".")[0], - "func": entry.suffix, - } - - maker._get_script_text = _get_script_text - maker.script_template = r"""# -*- coding: utf-8 -*- -import re -import sys - -from %(module)s import %(import_name)s - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(%(func)s()) -""" - - # Special case pip and setuptools to generate versioned wrappers - # - # The issue is that some projects (specifically, pip and setuptools) use - # code in setup.py to create "versioned" entry points - pip2.7 on Python - # 2.7, pip3.3 on Python 3.3, etc. But these entry points are baked into - # the wheel metadata at build time, and so if the wheel is installed with - # a *different* version of Python the entry points will be wrong. The - # correct fix for this is to enhance the metadata to be able to describe - # such versioned entry points, but that won't happen till Metadata 2.0 is - # available. - # In the meantime, projects using versioned entry points will either have - # incorrect versioned entry points, or they will not be able to distribute - # "universal" wheels (i.e., they will need a wheel per Python version). - # - # Because setuptools and pip are bundled with _ensurepip and virtualenv, - # we need to use universal wheels. So, as a stopgap until Metadata 2.0, we - # override the versioned entry points in the wheel and generate the - # correct ones. This code is purely a short-term measure until Metadata 2.0 - # is available. - # - # To add the level of hack in this section of code, in order to support - # ensurepip this code will look for an ``ENSUREPIP_OPTIONS`` environment - # variable which will control which version scripts get installed. - # - # ENSUREPIP_OPTIONS=altinstall - # - Only pipX.Y and easy_install-X.Y will be generated and installed - # ENSUREPIP_OPTIONS=install - # - pipX.Y, pipX, easy_install-X.Y will be generated and installed. Note - # that this option is technically if ENSUREPIP_OPTIONS is set and is - # not altinstall - # DEFAULT - # - The default behavior is to install pip, pipX, pipX.Y, easy_install - # and easy_install-X.Y. - pip_script = console.pop('pip', None) - if pip_script: - if "ENSUREPIP_OPTIONS" not in os.environ: - spec = 'pip = ' + pip_script - generated.extend(maker.make(spec)) - - if os.environ.get("ENSUREPIP_OPTIONS", "") != "altinstall": - spec = 'pip%s = %s' % (sys.version[:1], pip_script) - generated.extend(maker.make(spec)) - - spec = 'pip%s = %s' % (sys.version[:3], pip_script) - generated.extend(maker.make(spec)) - # Delete any other versioned pip entry points - pip_ep = [k for k in console if re.match(r'pip(\d(\.\d)?)?$', k)] - for k in pip_ep: - del console[k] - easy_install_script = console.pop('easy_install', None) - if easy_install_script: - if "ENSUREPIP_OPTIONS" not in os.environ: - spec = 'easy_install = ' + easy_install_script - generated.extend(maker.make(spec)) - - spec = 'easy_install-%s = %s' % (sys.version[:3], easy_install_script) - generated.extend(maker.make(spec)) - # Delete any other versioned easy_install entry points - easy_install_ep = [ - k for k in console if re.match(r'easy_install(-\d\.\d)?$', k) - ] - for k in easy_install_ep: - del console[k] - - # Generate the console and GUI entry points specified in the wheel - if len(console) > 0: - generated_console_scripts = maker.make_multiple( - ['%s = %s' % kv for kv in console.items()] - ) - generated.extend(generated_console_scripts) - - if warn_script_location: - msg = message_about_scripts_not_on_PATH(generated_console_scripts) - if msg is not None: - logger.warn(msg) - - if len(gui) > 0: - generated.extend( - maker.make_multiple( - ['%s = %s' % kv for kv in gui.items()], - {'gui': True} - ) - ) - - # Record pip as the installer - installer = os.path.join(info_dir[0], 'INSTALLER') - temp_installer = os.path.join(info_dir[0], 'INSTALLER.pip') - with open(temp_installer, 'wb') as installer_file: - installer_file.write(b'pip\n') - shutil.move(temp_installer, installer) - generated.append(installer) - - # Record details of all files installed - record = os.path.join(info_dir[0], 'RECORD') - temp_record = os.path.join(info_dir[0], 'RECORD.pip') - with open_for_csv(record, 'r') as record_in: - with open_for_csv(temp_record, 'w+') as record_out: - reader = csv.reader(record_in) - writer = csv.writer(record_out) - for row in reader: - row[0] = installed.pop(row[0], row[0]) - if row[0] in changed: - row[1], row[2] = rehash(row[0]) - writer.writerow(row) - for f in generated: - h, l = rehash(f) - writer.writerow((normpath(f, lib_dir), h, l)) - for f in installed: - writer.writerow((installed[f], '', '')) - shutil.move(temp_record, record) - - -def wheel_version(source_dir): - """ - Return the Wheel-Version of an extracted wheel, if possible. - - Otherwise, return False if we couldn't parse / extract it. - """ - try: - dist = [d for d in pkg_resources.find_on_path(None, source_dir)][0] - - wheel_data = dist.get_metadata('WHEEL') - wheel_data = Parser().parsestr(wheel_data) - - version = wheel_data['Wheel-Version'].strip() - version = tuple(map(int, version.split('.'))) - return version - except: - return False - - -def check_compatibility(version, name): - """ - Raises errors or warns if called with an incompatible Wheel-Version. - - Pip should refuse to install a Wheel-Version that's a major series - ahead of what it's compatible with (e.g 2.0 > 1.1); and warn when - installing a version only minor version ahead (e.g 1.2 > 1.1). - - version: a 2-tuple representing a Wheel-Version (Major, Minor) - name: name of wheel or package to raise exception about - - :raises UnsupportedWheel: when an incompatible Wheel-Version is given - """ - if not version: - raise UnsupportedWheel( - "%s is in an unsupported or invalid wheel" % name - ) - if version[0] > VERSION_COMPATIBLE[0]: - raise UnsupportedWheel( - "%s's Wheel-Version (%s) is not compatible with this version " - "of pip" % (name, '.'.join(map(str, version))) - ) - elif version > VERSION_COMPATIBLE: - logger.warning( - 'Installing from a newer Wheel-Version (%s)', - '.'.join(map(str, version)), - ) - - -class Wheel(object): - """A wheel file""" - - # TODO: maybe move the install code into this class - - wheel_file_re = re.compile( - r"""^(?P<namever>(?P<name>.+?)-(?P<ver>.*?)) - ((-(?P<build>\d[^-]*?))?-(?P<pyver>.+?)-(?P<abi>.+?)-(?P<plat>.+?) - \.whl|\.dist-info)$""", - re.VERBOSE - ) - - def __init__(self, filename): - """ - :raises InvalidWheelFilename: when the filename is invalid for a wheel - """ - wheel_info = self.wheel_file_re.match(filename) - if not wheel_info: - raise InvalidWheelFilename( - "%s is not a valid wheel filename." % filename - ) - self.filename = filename - self.name = wheel_info.group('name').replace('_', '-') - # we'll assume "_" means "-" due to wheel naming scheme - # (https://github.com/pypa/pip/issues/1150) - self.version = wheel_info.group('ver').replace('_', '-') - self.build_tag = wheel_info.group('build') - self.pyversions = wheel_info.group('pyver').split('.') - self.abis = wheel_info.group('abi').split('.') - self.plats = wheel_info.group('plat').split('.') - - # All the tag combinations from this file - self.file_tags = { - (x, y, z) for x in self.pyversions - for y in self.abis for z in self.plats - } - - def support_index_min(self, tags=None): - """ - Return the lowest index that one of the wheel's file_tag combinations - achieves in the supported_tags list e.g. if there are 8 supported tags, - and one of the file tags is first in the list, then return 0. Returns - None is the wheel is not supported. - """ - if tags is None: # for mock - tags = pep425tags.get_supported() - indexes = [tags.index(c) for c in self.file_tags if c in tags] - return min(indexes) if indexes else None - - def supported(self, tags=None): - """Is this wheel supported on this system?""" - if tags is None: # for mock - tags = pep425tags.get_supported() - return bool(set(tags).intersection(self.file_tags)) - - -class WheelBuilder(object): - """Build wheels from a RequirementSet.""" - - def __init__(self, finder, preparer, wheel_cache, - build_options=None, global_options=None, no_clean=False): - self.finder = finder - self.preparer = preparer - self.wheel_cache = wheel_cache - - self._wheel_dir = preparer.wheel_download_dir - - self.build_options = build_options or [] - self.global_options = global_options or [] - self.no_clean = no_clean - - def _build_one(self, req, output_dir, python_tag=None): - """Build one wheel. - - :return: The filename of the built wheel, or None if the build failed. - """ - # Install build deps into temporary directory (PEP 518) - with req.build_env: - return self._build_one_inside_env(req, output_dir, - python_tag=python_tag) - - def _build_one_inside_env(self, req, output_dir, python_tag=None): - with TempDirectory(kind="wheel") as temp_dir: - if self.__build_one(req, temp_dir.path, python_tag=python_tag): - try: - wheel_name = os.listdir(temp_dir.path)[0] - wheel_path = os.path.join(output_dir, wheel_name) - shutil.move( - os.path.join(temp_dir.path, wheel_name), wheel_path - ) - logger.info('Stored in directory: %s', output_dir) - return wheel_path - except: - pass - # Ignore return, we can't do anything else useful. - self._clean_one(req) - return None - - def _base_setup_args(self, req): - # NOTE: Eventually, we'd want to also -S to the flags here, when we're - # isolating. Currently, it breaks Python in virtualenvs, because it - # relies on site.py to find parts of the standard library outside the - # virtualenv. - return [ - sys.executable, '-u', '-c', - SETUPTOOLS_SHIM % req.setup_py - ] + list(self.global_options) - - def __build_one(self, req, tempd, python_tag=None): - base_args = self._base_setup_args(req) - - spin_message = 'Running setup.py bdist_wheel for %s' % (req.name,) - with open_spinner(spin_message) as spinner: - logger.debug('Destination directory: %s', tempd) - wheel_args = base_args + ['bdist_wheel', '-d', tempd] \ - + self.build_options - - if python_tag is not None: - wheel_args += ["--python-tag", python_tag] - - try: - call_subprocess(wheel_args, cwd=req.setup_py_dir, - show_stdout=False, spinner=spinner) - return True - except: - spinner.finish("error") - logger.error('Failed building wheel for %s', req.name) - return False - - def _clean_one(self, req): - base_args = self._base_setup_args(req) - - logger.info('Running setup.py clean for %s', req.name) - clean_args = base_args + ['clean', '--all'] - try: - call_subprocess(clean_args, cwd=req.source_dir, show_stdout=False) - return True - except: - logger.error('Failed cleaning build dir for %s', req.name) - return False - - def build(self, requirements, session, autobuilding=False): - """Build wheels. - - :param unpack: If True, replace the sdist we built from with the - newly built wheel, in preparation for installation. - :return: True if all the wheels built correctly. - """ - from pip._internal import index - - building_is_possible = self._wheel_dir or ( - autobuilding and self.wheel_cache.cache_dir - ) - assert building_is_possible - - buildset = [] - for req in requirements: - if req.constraint: - continue - if req.is_wheel: - if not autobuilding: - logger.info( - 'Skipping %s, due to already being wheel.', req.name, - ) - elif autobuilding and req.editable: - pass - elif autobuilding and not req.source_dir: - pass - elif autobuilding and req.link and not req.link.is_artifact: - # VCS checkout. Build wheel just for this run. - buildset.append((req, True)) - else: - ephem_cache = False - if autobuilding: - link = req.link - base, ext = link.splitext() - if index.egg_info_matches(base, None, link) is None: - # E.g. local directory. Build wheel just for this run. - ephem_cache = True - if "binary" not in index.fmt_ctl_formats( - self.finder.format_control, - canonicalize_name(req.name)): - logger.info( - "Skipping bdist_wheel for %s, due to binaries " - "being disabled for it.", req.name, - ) - continue - buildset.append((req, ephem_cache)) - - if not buildset: - return True - - # Build the wheels. - logger.info( - 'Building wheels for collected packages: %s', - ', '.join([req.name for (req, _) in buildset]), - ) - _cache = self.wheel_cache # shorter name - with indent_log(): - build_success, build_failure = [], [] - for req, ephem in buildset: - python_tag = None - if autobuilding: - python_tag = pep425tags.implementation_tag - if ephem: - output_dir = _cache.get_ephem_path_for_link(req.link) - else: - output_dir = _cache.get_path_for_link(req.link) - try: - ensure_dir(output_dir) - except OSError as e: - logger.warning("Building wheel for %s failed: %s", - req.name, e) - build_failure.append(req) - continue - else: - output_dir = self._wheel_dir - wheel_file = self._build_one( - req, output_dir, - python_tag=python_tag, - ) - if wheel_file: - build_success.append(req) - if autobuilding: - # XXX: This is mildly duplicative with prepare_files, - # but not close enough to pull out to a single common - # method. - # The code below assumes temporary source dirs - - # prevent it doing bad things. - if req.source_dir and not os.path.exists(os.path.join( - req.source_dir, PIP_DELETE_MARKER_FILENAME)): - raise AssertionError( - "bad source dir - missing marker") - # Delete the source we built the wheel from - req.remove_temporary_source() - # set the build directory again - name is known from - # the work prepare_files did. - req.source_dir = req.build_location( - self.preparer.build_dir - ) - # Update the link for this. - req.link = index.Link(path_to_url(wheel_file)) - assert req.link.is_wheel - # extract the wheel into the dir - unpack_url( - req.link, req.source_dir, None, False, - session=session, - ) - else: - build_failure.append(req) - - # notify success/failure - if build_success: - logger.info( - 'Successfully built %s', - ' '.join([req.name for req in build_success]), - ) - if build_failure: - logger.info( - 'Failed to build %s', - ' '.join([req.name for req in build_failure]), - ) - # Return True if all builds were successful - return len(build_failure) == 0 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/__init__.py deleted file mode 100644 index 607757f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/__init__.py +++ /dev/null @@ -1,109 +0,0 @@ -""" -pip._vendor is for vendoring dependencies of pip to prevent needing pip to -depend on something external. - -Files inside of pip._vendor should be considered immutable and should only be -updated to versions from upstream. -""" -from __future__ import absolute_import - -import glob -import os.path -import sys - -# Downstream redistributors which have debundled our dependencies should also -# patch this value to be true. This will trigger the additional patching -# to cause things like "six" to be available as pip. -DEBUNDLED = False - -# By default, look in this directory for a bunch of .whl files which we will -# add to the beginning of sys.path before attempting to import anything. This -# is done to support downstream re-distributors like Debian and Fedora who -# wish to create their own Wheels for our dependencies to aid in debundling. -WHEEL_DIR = os.path.abspath(os.path.dirname(__file__)) - - -# Define a small helper function to alias our vendored modules to the real ones -# if the vendored ones do not exist. This idea of this was taken from -# https://github.com/kennethreitz/requests/pull/2567. -def vendored(modulename): - vendored_name = "{0}.{1}".format(__name__, modulename) - - try: - __import__(vendored_name, globals(), locals(), level=0) - except ImportError: - try: - __import__(modulename, globals(), locals(), level=0) - except ImportError: - # We can just silently allow import failures to pass here. If we - # got to this point it means that ``import pip._vendor.whatever`` - # failed and so did ``import whatever``. Since we're importing this - # upfront in an attempt to alias imports, not erroring here will - # just mean we get a regular import error whenever pip *actually* - # tries to import one of these modules to use it, which actually - # gives us a better error message than we would have otherwise - # gotten. - pass - else: - sys.modules[vendored_name] = sys.modules[modulename] - base, head = vendored_name.rsplit(".", 1) - setattr(sys.modules[base], head, sys.modules[modulename]) - - -# If we're operating in a debundled setup, then we want to go ahead and trigger -# the aliasing of our vendored libraries as well as looking for wheels to add -# to our sys.path. This will cause all of this code to be a no-op typically -# however downstream redistributors can enable it in a consistent way across -# all platforms. -if DEBUNDLED: - # Actually look inside of WHEEL_DIR to find .whl files and add them to the - # front of our sys.path. - sys.path[:] = glob.glob(os.path.join(WHEEL_DIR, "*.whl")) + sys.path - - # Actually alias all of our vendored dependencies. - vendored("cachecontrol") - vendored("colorama") - vendored("distlib") - vendored("distro") - vendored("html5lib") - vendored("lockfile") - vendored("six") - vendored("six.moves") - vendored("six.moves.urllib") - vendored("six.moves.urllib.parse") - vendored("packaging") - vendored("packaging.version") - vendored("packaging.specifiers") - vendored("pkg_resources") - vendored("progress") - vendored("pytoml") - vendored("retrying") - vendored("requests") - vendored("requests.packages") - vendored("requests.packages.urllib3") - vendored("requests.packages.urllib3._collections") - vendored("requests.packages.urllib3.connection") - vendored("requests.packages.urllib3.connectionpool") - vendored("requests.packages.urllib3.contrib") - vendored("requests.packages.urllib3.contrib.ntlmpool") - vendored("requests.packages.urllib3.contrib.pyopenssl") - vendored("requests.packages.urllib3.exceptions") - vendored("requests.packages.urllib3.fields") - vendored("requests.packages.urllib3.filepost") - vendored("requests.packages.urllib3.packages") - vendored("requests.packages.urllib3.packages.ordered_dict") - vendored("requests.packages.urllib3.packages.six") - vendored("requests.packages.urllib3.packages.ssl_match_hostname") - vendored("requests.packages.urllib3.packages.ssl_match_hostname." - "_implementation") - vendored("requests.packages.urllib3.poolmanager") - vendored("requests.packages.urllib3.request") - vendored("requests.packages.urllib3.response") - vendored("requests.packages.urllib3.util") - vendored("requests.packages.urllib3.util.connection") - vendored("requests.packages.urllib3.util.request") - vendored("requests.packages.urllib3.util.response") - vendored("requests.packages.urllib3.util.retry") - vendored("requests.packages.urllib3.util.ssl_") - vendored("requests.packages.urllib3.util.timeout") - vendored("requests.packages.urllib3.util.url") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/appdirs.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/appdirs.py deleted file mode 100644 index 7ff6a07..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/appdirs.py +++ /dev/null @@ -1,604 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (c) 2005-2010 ActiveState Software Inc. -# Copyright (c) 2013 Eddy Petrișor - -"""Utilities for determining application-specific dirs. - -See <http://github.com/ActiveState/appdirs> for details and usage. -""" -# Dev Notes: -# - MSDN on where to store app data files: -# http://support.microsoft.com/default.aspx?scid=kb;en-us;310294#XSLTH3194121123120121120120 -# - Mac OS X: http://developer.apple.com/documentation/MacOSX/Conceptual/BPFileSystem/index.html -# - XDG spec for Un*x: http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html - -__version_info__ = (1, 4, 3) -__version__ = '.'.join(map(str, __version_info__)) - - -import sys -import os - -PY3 = sys.version_info[0] == 3 - -if PY3: - unicode = str - -if sys.platform.startswith('java'): - import platform - os_name = platform.java_ver()[3][0] - if os_name.startswith('Windows'): # "Windows XP", "Windows 7", etc. - system = 'win32' - elif os_name.startswith('Mac'): # "Mac OS X", etc. - system = 'darwin' - else: # "Linux", "SunOS", "FreeBSD", etc. - # Setting this to "linux2" is not ideal, but only Windows or Mac - # are actually checked for and the rest of the module expects - # *sys.platform* style strings. - system = 'linux2' -else: - system = sys.platform - - - -def user_data_dir(appname=None, appauthor=None, version=None, roaming=False): - r"""Return full path to the user-specific data dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "roaming" (boolean, default False) can be set True to use the Windows - roaming appdata directory. That means that for users on a Windows - network setup for roaming profiles, this user data will be - sync'd on login. See - <http://technet.microsoft.com/en-us/library/cc766489(WS.10).aspx> - for a discussion of issues. - - Typical user data directories are: - Mac OS X: ~/Library/Application Support/<AppName> - Unix: ~/.local/share/<AppName> # or in $XDG_DATA_HOME, if defined - Win XP (not roaming): C:\Documents and Settings\<username>\Application Data\<AppAuthor>\<AppName> - Win XP (roaming): C:\Documents and Settings\<username>\Local Settings\Application Data\<AppAuthor>\<AppName> - Win 7 (not roaming): C:\Users\<username>\AppData\Local\<AppAuthor>\<AppName> - Win 7 (roaming): C:\Users\<username>\AppData\Roaming\<AppAuthor>\<AppName> - - For Unix, we follow the XDG spec and support $XDG_DATA_HOME. - That means, by default "~/.local/share/<AppName>". - """ - if system == "win32": - if appauthor is None: - appauthor = appname - const = roaming and "CSIDL_APPDATA" or "CSIDL_LOCAL_APPDATA" - path = os.path.normpath(_get_win_folder(const)) - if appname: - if appauthor is not False: - path = os.path.join(path, appauthor, appname) - else: - path = os.path.join(path, appname) - elif system == 'darwin': - path = os.path.expanduser('~/Library/Application Support/') - if appname: - path = os.path.join(path, appname) - else: - path = os.getenv('XDG_DATA_HOME', os.path.expanduser("~/.local/share")) - if appname: - path = os.path.join(path, appname) - if appname and version: - path = os.path.join(path, version) - return path - - -def site_data_dir(appname=None, appauthor=None, version=None, multipath=False): - r"""Return full path to the user-shared data dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "multipath" is an optional parameter only applicable to *nix - which indicates that the entire list of data dirs should be - returned. By default, the first item from XDG_DATA_DIRS is - returned, or '/usr/local/share/<AppName>', - if XDG_DATA_DIRS is not set - - Typical site data directories are: - Mac OS X: /Library/Application Support/<AppName> - Unix: /usr/local/share/<AppName> or /usr/share/<AppName> - Win XP: C:\Documents and Settings\All Users\Application Data\<AppAuthor>\<AppName> - Vista: (Fail! "C:\ProgramData" is a hidden *system* directory on Vista.) - Win 7: C:\ProgramData\<AppAuthor>\<AppName> # Hidden, but writeable on Win 7. - - For Unix, this is using the $XDG_DATA_DIRS[0] default. - - WARNING: Do not use this on Windows. See the Vista-Fail note above for why. - """ - if system == "win32": - if appauthor is None: - appauthor = appname - path = os.path.normpath(_get_win_folder("CSIDL_COMMON_APPDATA")) - if appname: - if appauthor is not False: - path = os.path.join(path, appauthor, appname) - else: - path = os.path.join(path, appname) - elif system == 'darwin': - path = os.path.expanduser('/Library/Application Support') - if appname: - path = os.path.join(path, appname) - else: - # XDG default for $XDG_DATA_DIRS - # only first, if multipath is False - path = os.getenv('XDG_DATA_DIRS', - os.pathsep.join(['/usr/local/share', '/usr/share'])) - pathlist = [os.path.expanduser(x.rstrip(os.sep)) for x in path.split(os.pathsep)] - if appname: - if version: - appname = os.path.join(appname, version) - pathlist = [os.sep.join([x, appname]) for x in pathlist] - - if multipath: - path = os.pathsep.join(pathlist) - else: - path = pathlist[0] - return path - - if appname and version: - path = os.path.join(path, version) - return path - - -def user_config_dir(appname=None, appauthor=None, version=None, roaming=False): - r"""Return full path to the user-specific config dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "roaming" (boolean, default False) can be set True to use the Windows - roaming appdata directory. That means that for users on a Windows - network setup for roaming profiles, this user data will be - sync'd on login. See - <http://technet.microsoft.com/en-us/library/cc766489(WS.10).aspx> - for a discussion of issues. - - Typical user config directories are: - Mac OS X: same as user_data_dir - Unix: ~/.config/<AppName> # or in $XDG_CONFIG_HOME, if defined - Win *: same as user_data_dir - - For Unix, we follow the XDG spec and support $XDG_CONFIG_HOME. - That means, by default "~/.config/<AppName>". - """ - if system in ["win32", "darwin"]: - path = user_data_dir(appname, appauthor, None, roaming) - else: - path = os.getenv('XDG_CONFIG_HOME', os.path.expanduser("~/.config")) - if appname: - path = os.path.join(path, appname) - if appname and version: - path = os.path.join(path, version) - return path - - -def site_config_dir(appname=None, appauthor=None, version=None, multipath=False): - r"""Return full path to the user-shared data dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "multipath" is an optional parameter only applicable to *nix - which indicates that the entire list of config dirs should be - returned. By default, the first item from XDG_CONFIG_DIRS is - returned, or '/etc/xdg/<AppName>', if XDG_CONFIG_DIRS is not set - - Typical site config directories are: - Mac OS X: same as site_data_dir - Unix: /etc/xdg/<AppName> or $XDG_CONFIG_DIRS[i]/<AppName> for each value in - $XDG_CONFIG_DIRS - Win *: same as site_data_dir - Vista: (Fail! "C:\ProgramData" is a hidden *system* directory on Vista.) - - For Unix, this is using the $XDG_CONFIG_DIRS[0] default, if multipath=False - - WARNING: Do not use this on Windows. See the Vista-Fail note above for why. - """ - if system in ["win32", "darwin"]: - path = site_data_dir(appname, appauthor) - if appname and version: - path = os.path.join(path, version) - else: - # XDG default for $XDG_CONFIG_DIRS - # only first, if multipath is False - path = os.getenv('XDG_CONFIG_DIRS', '/etc/xdg') - pathlist = [os.path.expanduser(x.rstrip(os.sep)) for x in path.split(os.pathsep)] - if appname: - if version: - appname = os.path.join(appname, version) - pathlist = [os.sep.join([x, appname]) for x in pathlist] - - if multipath: - path = os.pathsep.join(pathlist) - else: - path = pathlist[0] - return path - - -def user_cache_dir(appname=None, appauthor=None, version=None, opinion=True): - r"""Return full path to the user-specific cache dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "opinion" (boolean) can be False to disable the appending of - "Cache" to the base app data dir for Windows. See - discussion below. - - Typical user cache directories are: - Mac OS X: ~/Library/Caches/<AppName> - Unix: ~/.cache/<AppName> (XDG default) - Win XP: C:\Documents and Settings\<username>\Local Settings\Application Data\<AppAuthor>\<AppName>\Cache - Vista: C:\Users\<username>\AppData\Local\<AppAuthor>\<AppName>\Cache - - On Windows the only suggestion in the MSDN docs is that local settings go in - the `CSIDL_LOCAL_APPDATA` directory. This is identical to the non-roaming - app data dir (the default returned by `user_data_dir` above). Apps typically - put cache data somewhere *under* the given dir here. Some examples: - ...\Mozilla\Firefox\Profiles\<ProfileName>\Cache - ...\Acme\SuperApp\Cache\1.0 - OPINION: This function appends "Cache" to the `CSIDL_LOCAL_APPDATA` value. - This can be disabled with the `opinion=False` option. - """ - if system == "win32": - if appauthor is None: - appauthor = appname - path = os.path.normpath(_get_win_folder("CSIDL_LOCAL_APPDATA")) - if appname: - if appauthor is not False: - path = os.path.join(path, appauthor, appname) - else: - path = os.path.join(path, appname) - if opinion: - path = os.path.join(path, "Cache") - elif system == 'darwin': - path = os.path.expanduser('~/Library/Caches') - if appname: - path = os.path.join(path, appname) - else: - path = os.getenv('XDG_CACHE_HOME', os.path.expanduser('~/.cache')) - if appname: - path = os.path.join(path, appname) - if appname and version: - path = os.path.join(path, version) - return path - - -def user_state_dir(appname=None, appauthor=None, version=None, roaming=False): - r"""Return full path to the user-specific state dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "roaming" (boolean, default False) can be set True to use the Windows - roaming appdata directory. That means that for users on a Windows - network setup for roaming profiles, this user data will be - sync'd on login. See - <http://technet.microsoft.com/en-us/library/cc766489(WS.10).aspx> - for a discussion of issues. - - Typical user state directories are: - Mac OS X: same as user_data_dir - Unix: ~/.local/state/<AppName> # or in $XDG_STATE_HOME, if defined - Win *: same as user_data_dir - - For Unix, we follow this Debian proposal <https://wiki.debian.org/XDGBaseDirectorySpecification#state> - to extend the XDG spec and support $XDG_STATE_HOME. - - That means, by default "~/.local/state/<AppName>". - """ - if system in ["win32", "darwin"]: - path = user_data_dir(appname, appauthor, None, roaming) - else: - path = os.getenv('XDG_STATE_HOME', os.path.expanduser("~/.local/state")) - if appname: - path = os.path.join(path, appname) - if appname and version: - path = os.path.join(path, version) - return path - - -def user_log_dir(appname=None, appauthor=None, version=None, opinion=True): - r"""Return full path to the user-specific log dir for this application. - - "appname" is the name of application. - If None, just the system directory is returned. - "appauthor" (only used on Windows) is the name of the - appauthor or distributing body for this application. Typically - it is the owning company name. This falls back to appname. You may - pass False to disable it. - "version" is an optional version path element to append to the - path. You might want to use this if you want multiple versions - of your app to be able to run independently. If used, this - would typically be "<major>.<minor>". - Only applied when appname is present. - "opinion" (boolean) can be False to disable the appending of - "Logs" to the base app data dir for Windows, and "log" to the - base cache dir for Unix. See discussion below. - - Typical user log directories are: - Mac OS X: ~/Library/Logs/<AppName> - Unix: ~/.cache/<AppName>/log # or under $XDG_CACHE_HOME if defined - Win XP: C:\Documents and Settings\<username>\Local Settings\Application Data\<AppAuthor>\<AppName>\Logs - Vista: C:\Users\<username>\AppData\Local\<AppAuthor>\<AppName>\Logs - - On Windows the only suggestion in the MSDN docs is that local settings - go in the `CSIDL_LOCAL_APPDATA` directory. (Note: I'm interested in - examples of what some windows apps use for a logs dir.) - - OPINION: This function appends "Logs" to the `CSIDL_LOCAL_APPDATA` - value for Windows and appends "log" to the user cache dir for Unix. - This can be disabled with the `opinion=False` option. - """ - if system == "darwin": - path = os.path.join( - os.path.expanduser('~/Library/Logs'), - appname) - elif system == "win32": - path = user_data_dir(appname, appauthor, version) - version = False - if opinion: - path = os.path.join(path, "Logs") - else: - path = user_cache_dir(appname, appauthor, version) - version = False - if opinion: - path = os.path.join(path, "log") - if appname and version: - path = os.path.join(path, version) - return path - - -class AppDirs(object): - """Convenience wrapper for getting application dirs.""" - def __init__(self, appname=None, appauthor=None, version=None, - roaming=False, multipath=False): - self.appname = appname - self.appauthor = appauthor - self.version = version - self.roaming = roaming - self.multipath = multipath - - @property - def user_data_dir(self): - return user_data_dir(self.appname, self.appauthor, - version=self.version, roaming=self.roaming) - - @property - def site_data_dir(self): - return site_data_dir(self.appname, self.appauthor, - version=self.version, multipath=self.multipath) - - @property - def user_config_dir(self): - return user_config_dir(self.appname, self.appauthor, - version=self.version, roaming=self.roaming) - - @property - def site_config_dir(self): - return site_config_dir(self.appname, self.appauthor, - version=self.version, multipath=self.multipath) - - @property - def user_cache_dir(self): - return user_cache_dir(self.appname, self.appauthor, - version=self.version) - - @property - def user_state_dir(self): - return user_state_dir(self.appname, self.appauthor, - version=self.version) - - @property - def user_log_dir(self): - return user_log_dir(self.appname, self.appauthor, - version=self.version) - - -#---- internal support stuff - -def _get_win_folder_from_registry(csidl_name): - """This is a fallback technique at best. I'm not sure if using the - registry for this guarantees us the correct answer for all CSIDL_* - names. - """ - if PY3: - import winreg as _winreg - else: - import _winreg - - shell_folder_name = { - "CSIDL_APPDATA": "AppData", - "CSIDL_COMMON_APPDATA": "Common AppData", - "CSIDL_LOCAL_APPDATA": "Local AppData", - }[csidl_name] - - key = _winreg.OpenKey( - _winreg.HKEY_CURRENT_USER, - r"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" - ) - dir, type = _winreg.QueryValueEx(key, shell_folder_name) - return dir - - -def _get_win_folder_with_pywin32(csidl_name): - from win32com.shell import shellcon, shell - dir = shell.SHGetFolderPath(0, getattr(shellcon, csidl_name), 0, 0) - # Try to make this a unicode path because SHGetFolderPath does - # not return unicode strings when there is unicode data in the - # path. - try: - dir = unicode(dir) - - # Downgrade to short path name if have highbit chars. See - # <http://bugs.activestate.com/show_bug.cgi?id=85099>. - has_high_char = False - for c in dir: - if ord(c) > 255: - has_high_char = True - break - if has_high_char: - try: - import win32api - dir = win32api.GetShortPathName(dir) - except ImportError: - pass - except UnicodeError: - pass - return dir - - -def _get_win_folder_with_ctypes(csidl_name): - import ctypes - - csidl_const = { - "CSIDL_APPDATA": 26, - "CSIDL_COMMON_APPDATA": 35, - "CSIDL_LOCAL_APPDATA": 28, - }[csidl_name] - - buf = ctypes.create_unicode_buffer(1024) - ctypes.windll.shell32.SHGetFolderPathW(None, csidl_const, None, 0, buf) - - # Downgrade to short path name if have highbit chars. See - # <http://bugs.activestate.com/show_bug.cgi?id=85099>. - has_high_char = False - for c in buf: - if ord(c) > 255: - has_high_char = True - break - if has_high_char: - buf2 = ctypes.create_unicode_buffer(1024) - if ctypes.windll.kernel32.GetShortPathNameW(buf.value, buf2, 1024): - buf = buf2 - - return buf.value - -def _get_win_folder_with_jna(csidl_name): - import array - from com.sun import jna - from com.sun.jna.platform import win32 - - buf_size = win32.WinDef.MAX_PATH * 2 - buf = array.zeros('c', buf_size) - shell = win32.Shell32.INSTANCE - shell.SHGetFolderPath(None, getattr(win32.ShlObj, csidl_name), None, win32.ShlObj.SHGFP_TYPE_CURRENT, buf) - dir = jna.Native.toString(buf.tostring()).rstrip("\0") - - # Downgrade to short path name if have highbit chars. See - # <http://bugs.activestate.com/show_bug.cgi?id=85099>. - has_high_char = False - for c in dir: - if ord(c) > 255: - has_high_char = True - break - if has_high_char: - buf = array.zeros('c', buf_size) - kernel = win32.Kernel32.INSTANCE - if kernel.GetShortPathName(dir, buf, buf_size): - dir = jna.Native.toString(buf.tostring()).rstrip("\0") - - return dir - -if system == "win32": - try: - from ctypes import windll - _get_win_folder = _get_win_folder_with_ctypes - except ImportError: - try: - import com.sun.jna - _get_win_folder = _get_win_folder_with_jna - except ImportError: - _get_win_folder = _get_win_folder_from_registry - - -#---- self test code - -if __name__ == "__main__": - appname = "MyApp" - appauthor = "MyCompany" - - props = ("user_data_dir", - "user_config_dir", - "user_cache_dir", - "user_state_dir", - "user_log_dir", - "site_data_dir", - "site_config_dir") - - print("-- app dirs %s --" % __version__) - - print("-- app dirs (with optional 'version')") - dirs = AppDirs(appname, appauthor, version="1.0") - for prop in props: - print("%s: %s" % (prop, getattr(dirs, prop))) - - print("\n-- app dirs (without optional 'version')") - dirs = AppDirs(appname, appauthor) - for prop in props: - print("%s: %s" % (prop, getattr(dirs, prop))) - - print("\n-- app dirs (without optional 'appauthor')") - dirs = AppDirs(appname) - for prop in props: - print("%s: %s" % (prop, getattr(dirs, prop))) - - print("\n-- app dirs (with disabled 'appauthor')") - dirs = AppDirs(appname, appauthor=False) - for prop in props: - print("%s: %s" % (prop, getattr(dirs, prop))) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/__init__.py deleted file mode 100644 index ced6d94..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -"""CacheControl import Interface. - -Make it easy to import from cachecontrol without long namespaces. -""" -__author__ = 'Eric Larson' -__email__ = 'eric@ionrock.org' -__version__ = '0.12.4' - -from .wrapper import CacheControl -from .adapter import CacheControlAdapter -from .controller import CacheController diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/_cmd.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/_cmd.py deleted file mode 100644 index 10bc01e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/_cmd.py +++ /dev/null @@ -1,60 +0,0 @@ -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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/adapter.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/adapter.py deleted file mode 100644 index 03c95c9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/adapter.py +++ /dev/null @@ -1,134 +0,0 @@ -import types -import functools -import zlib - -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, - cacheable_methods=None, - *args, **kw): - super(CacheControlAdapter, self).__init__(*args, **kw) - self.cache = cache or DictCache() - self.heuristic = heuristic - self.cacheable_methods = cacheable_methods or ('GET',) - - controller_factory = controller_class or CacheController - self.controller = controller_factory( - self.cache, - cache_etags=cache_etags, - serializer=serializer, - ) - - def send(self, request, cacheable_methods=None, **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. - """ - cacheable = cacheable_methods or self.cacheable_methods - if request.method in cacheable: - try: - cached_response = self.controller.cached_request(request) - except zlib.error: - cached_response = None - 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, - cacheable_methods=None): - """ - Build a response by making a request or using the cache. - - This will end up calling send and returning a potentially - cached response - """ - cacheable = cacheable_methods or self.cacheable_methods - if not from_cache and request.method in cacheable: - # Check for any heuristics that might update headers - # before trying to cache. - if self.heuristic: - response = self.heuristic.apply(response) - - # 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: - # 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, - ) - ) - if response.chunked: - super_update_chunk_length = response._update_chunk_length - - def _update_chunk_length(self): - super_update_chunk_length() - if self.chunk_left == 0: - self._fp._close() - response._update_chunk_length = types.MethodType(_update_chunk_length, 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/cache.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/cache.py deleted file mode 100644 index 04d1488..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/cache.py +++ /dev/null @@ -1,39 +0,0 @@ -""" -The cache object API for implementing caches. The default is a thread -safe in-memory dictionary. -""" -from threading import Lock - - -class BaseCache(object): - - def get(self, key): - raise NotImplemented() - - def set(self, key, value): - raise NotImplemented() - - def delete(self, key): - raise NotImplemented() - - def close(self): - pass - - -class DictCache(BaseCache): - - def __init__(self, init_dict=None): - self.lock = Lock() - self.data = init_dict or {} - - def get(self, key): - return self.data.get(key, None) - - def set(self, key, value): - with self.lock: - self.data.update({key: value}) - - def delete(self, key): - with self.lock: - if key in self.data: - self.data.pop(key) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/__init__.py deleted file mode 100644 index 1193f26..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from .file_cache import FileCache # noqa -from .redis_cache import RedisCache # noqa diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/file_cache.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/file_cache.py deleted file mode 100644 index f7eb890..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/file_cache.py +++ /dev/null @@ -1,133 +0,0 @@ -import hashlib -import os -from textwrap import dedent - -from ..cache import BaseCache -from ..controller import CacheController - -try: - FileNotFoundError -except NameError: - # py2.X - FileNotFoundError = OSError - - -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") - - try: - from pip._vendor.lockfile import LockFile - from pip._vendor.lockfile.mkdirlockfile import MkdirLockFile - 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 - """) - raise ImportError(notice) - else: - if use_dir_lock: - lock_class = MkdirLockFile - - elif 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: - try: - os.remove(name) - except FileNotFoundError: - pass - - -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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/redis_cache.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/redis_cache.py deleted file mode 100644 index db1e09d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/caches/redis_cache.py +++ /dev/null @@ -1,43 +0,0 @@ -from __future__ import division - -from datetime import datetime -from pip._vendor.cachecontrol.cache import BaseCache - - -def total_seconds(td): - """Python 2.6 compatability""" - if hasattr(td, 'total_seconds'): - return int(td.total_seconds()) - - ms = td.microseconds - secs = (td.seconds + td.days * 24 * 3600) - return int((ms + secs * 10**6) / 10**6) - - -class RedisCache(BaseCache): - - 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.utcnow() - 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): - """Redis uses connection pooling, no need to close the connection.""" - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/compat.py deleted file mode 100644 index e3f3243..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/compat.py +++ /dev/null @@ -1,29 +0,0 @@ -try: - from urllib.parse import urljoin -except ImportError: - from urlparse import urljoin - - -try: - import cPickle as pickle -except ImportError: - import pickle - - -# Handle the case where the requests module has been patched to not have -# urllib3 bundled as part of its source. -try: - from pip._vendor.requests.packages.urllib3.response import HTTPResponse -except ImportError: - from pip._vendor.urllib3.response import HTTPResponse - -try: - from pip._vendor.requests.packages.urllib3.util import is_fp_closed -except ImportError: - from pip._vendor.urllib3.util import is_fp_closed - -# Replicate some six behaviour -try: - text_type = unicode -except NameError: - text_type = str diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/controller.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/controller.py deleted file mode 100644 index bf4cc7f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/controller.py +++ /dev/null @@ -1,373 +0,0 @@ -""" -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, - status_codes=None): - self.cache = cache or DictCache() - self.cache_etags = cache_etags - self.serializer = serializer or Serializer() - self.cacheable_status_codes = status_codes or (200, 203, 300, 301) - - @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): - known_directives = { - # https://tools.ietf.org/html/rfc7234#section-5.2 - 'max-age': (int, True,), - 'max-stale': (int, False,), - 'min-fresh': (int, True,), - 'no-cache': (None, False,), - 'no-store': (None, False,), - 'no-transform': (None, False,), - 'only-if-cached' : (None, False,), - 'must-revalidate': (None, False,), - 'public': (None, False,), - 'private': (None, False,), - 'proxy-revalidate': (None, False,), - 's-maxage': (int, True,) - } - - cc_headers = headers.get('cache-control', - headers.get('Cache-Control', '')) - - retval = {} - - for cc_directive in cc_headers.split(','): - parts = cc_directive.split('=', 1) - directive = parts[0].strip() - - try: - typ, required = known_directives[directive] - except KeyError: - logger.debug('Ignoring unknown cache-control directive: %s', - directive) - continue - - if not typ or not required: - retval[directive] = None - if typ: - try: - retval[directive] = typ(parts[1].strip()) - except IndexError: - if required: - logger.debug('Missing value for cache-control ' - 'directive: %s', directive) - except ValueError: - logger.debug('Invalid value for cache-control directive ' - '%s, must be %s', directive, typ.__name__) - - 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: - freshness_lifetime = 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: - freshness_lifetime = cc['max-age'] - logger.debug('Freshness lifetime from request max-age: %i', - freshness_lifetime) - - if 'min-fresh' in cc: - min_fresh = cc['min-fresh'] - # 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, - status_codes=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 = status_codes or self.cacheable_status_codes - 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 'no-store' in cc: - no_store = True - logger.debug('Response header has "no-store"') - if 'no-store' in cc_req: - 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 'max-age' in cc and 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/filewrapper.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/filewrapper.py deleted file mode 100644 index 83ce912..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/filewrapper.py +++ /dev/null @@ -1,78 +0,0 @@ -from io import BytesIO - - -class CallbackFileWrapper(object): - """ - Small wrapper around a fp object which will tee everything read into a - buffer, and when that file is closed it will execute a callback with the - contents of that buffer. - - All attributes are proxied to the underlying file object. - - This class uses members with a double underscore (__) leading prefix so as - not to accidentally shadow an attribute. - """ - - def __init__(self, fp, callback): - self.__buf = BytesIO() - self.__fp = fp - self.__callback = callback - - def __getattr__(self, name): - # The vaguaries of garbage collection means that self.__fp is - # not always set. By using __getattribute__ and the private - # name[0] allows looking up the attribute value and raising an - # AttributeError when it doesn't exist. This stop thigns from - # infinitely recursing calls to getattr in the case where - # self.__fp hasn't been set. - # - # [0] https://docs.python.org/2/reference/expressions.html#atom-identifiers - fp = self.__getattribute__('_CallbackFileWrapper__fp') - return getattr(fp, name) - - def __is_fp_closed(self): - try: - return self.__fp.fp is None - except AttributeError: - pass - - try: - return self.__fp.closed - except AttributeError: - pass - - # We just don't cache it then. - # TODO: Add some logging here... - return False - - def _close(self): - if self.__callback: - self.__callback(self.__buf.getvalue()) - - # We assign this to None here, because otherwise we can get into - # really tricky problems where the CPython interpreter dead locks - # because the callback is holding a reference to something which - # has a __del__ method. Setting this to None breaks the cycle - # and allows the garbage collector to do it's thing normally. - self.__callback = None - - def read(self, amt=None): - data = self.__fp.read(amt) - self.__buf.write(data) - if self.__is_fp_closed(): - self._close() - - return data - - def _safe_read(self, amt): - data = self.__fp._safe_read(amt) - if amt == 2 and data == b'\r\n': - # urllib executes this read to toss the CRLF at the end - # of the chunk. - return data - - self.__buf.write(data) - if self.__is_fp_closed(): - self._close() - - return data diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/heuristics.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/heuristics.py deleted file mode 100644 index aad333d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/heuristics.py +++ /dev/null @@ -1,138 +0,0 @@ -import calendar -import time - -from email.utils import formatdate, parsedate, parsedate_tz - -from datetime import datetime, timedelta - -TIME_FMT = "%a, %d %b %Y %H:%M:%S GMT" - - -def expire_after(delta, date=None): - date = date or datetime.utcnow() - return date + delta - - -def datetime_to_header(dt): - return formatdate(calendar.timegm(dt.timetuple())) - - -class BaseHeuristic(object): - - def warning(self, response): - """ - Return a valid 1xx warning header value describing the cache - adjustments. - - The response is provided too allow warnings like 113 - http://tools.ietf.org/html/rfc7234#section-5.5.4 where we need - to explicitly say response is over 24 hours old. - """ - return '110 - "Response is Stale"' - - def update_headers(self, response): - """Update the response headers with any new headers. - - NOTE: This SHOULD always include some Warning header to - signify that the response was cached by the client, not - by way of the provided headers. - """ - return {} - - def apply(self, response): - updated_headers = self.update_headers(response) - - if updated_headers: - response.headers.update(updated_headers) - warning_header_value = self.warning(response) - if warning_header_value is not None: - response.headers.update({'Warning': warning_header_value}) - - return response - - -class OneDayCache(BaseHeuristic): - """ - Cache the response by providing an expires 1 day in the - future. - """ - def update_headers(self, response): - headers = {} - - if 'expires' not in response.headers: - date = parsedate(response.headers['date']) - expires = expire_after(timedelta(days=1), - date=datetime(*date[:6])) - headers['expires'] = datetime_to_header(expires) - headers['cache-control'] = 'public' - return headers - - -class ExpiresAfter(BaseHeuristic): - """ - Cache **all** requests for a defined time period. - """ - - def __init__(self, **kw): - self.delta = timedelta(**kw) - - def update_headers(self, response): - expires = expire_after(self.delta) - return { - 'expires': datetime_to_header(expires), - 'cache-control': 'public', - } - - def warning(self, response): - tmpl = '110 - Automatically cached for %s. Response might be stale' - return tmpl % self.delta - - -class LastModified(BaseHeuristic): - """ - If there is no Expires header already, fall back on Last-Modified - using the heuristic from - http://tools.ietf.org/html/rfc7234#section-4.2.2 - to calculate a reasonable value. - - Firefox also does something like this per - https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching_FAQ - http://lxr.mozilla.org/mozilla-release/source/netwerk/protocol/http/nsHttpResponseHead.cpp#397 - Unlike mozilla we limit this to 24-hr. - """ - cacheable_by_default_statuses = set([ - 200, 203, 204, 206, 300, 301, 404, 405, 410, 414, 501 - ]) - - def update_headers(self, resp): - headers = resp.headers - - if 'expires' in headers: - return {} - - if 'cache-control' in headers and headers['cache-control'] != 'public': - return {} - - if resp.status not in self.cacheable_by_default_statuses: - return {} - - if 'date' not in headers or 'last-modified' not in headers: - return {} - - date = calendar.timegm(parsedate_tz(headers['date'])) - last_modified = parsedate(headers['last-modified']) - if date is None or last_modified is None: - return {} - - now = time.time() - current_age = max(0, now - date) - delta = date - calendar.timegm(last_modified) - freshness_lifetime = max(0, min(delta / 10, 24 * 3600)) - if freshness_lifetime <= current_age: - return {} - - expires = date + freshness_lifetime - return {'expires': time.strftime(TIME_FMT, time.gmtime(expires))} - - def warning(self, resp): - return None diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/serialize.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/serialize.py deleted file mode 100644 index cd21cae..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/serialize.py +++ /dev/null @@ -1,194 +0,0 @@ -import base64 -import io -import json -import zlib - -from pip._vendor import msgpack -from pip._vendor.requests.structures import CaseInsensitiveDict - -from .compat import HTTPResponse, pickle, text_type - - -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) - - # NOTE: This is all a bit weird, but it's really important that on - # Python 2.x these objects are unicode and not str, even when - # they contain only ascii. The problem here is that msgpack - # understands the difference between unicode and bytes and we - # have it set to differentiate between them, however Python 2 - # doesn't know the difference. Forcing these to unicode will be - # enough to have msgpack know the difference. - data = { - u"response": { - u"body": body, - u"headers": dict( - (text_type(k), text_type(v)) - for k, v in response.headers.items() - ), - u"status": response.status, - u"version": response.version, - u"reason": text_type(response.reason), - u"strict": response.strict, - u"decode_content": response.decode_content, - }, - } - - # Construct our vary headers - data[u"vary"] = {} - if u"vary" in response_headers: - varied_headers = response_headers[u'vary'].split(',') - for header in varied_headers: - header = header.strip() - header_value = request.headers.get(header, None) - if header_value is not None: - header_value = text_type(header_value) - data[u"vary"][header] = header_value - - return b",".join([b"cc=4", msgpack.dumps(data, use_bin_type=True)]) - - 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") - - headers = CaseInsensitiveDict(data=cached['response']['headers']) - if headers.get('transfer-encoding', '') == 'chunked': - headers.pop('transfer-encoding') - - cached['response']['headers'] = headers - - 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, zlib.error): - 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) - - def _loads_v3(self, request, data): - # Due to Python 2 encoding issues, it's impossible to know for sure - # exactly how to load v3 entries, thus we'll treat these as a miss so - # that they get rewritten out as v4 entries. - return - - def _loads_v4(self, request, data): - try: - cached = msgpack.loads(data, encoding='utf-8') - except ValueError: - return - - return self.prepare_response(request, cached) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/wrapper.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/wrapper.py deleted file mode 100644 index 2ceac99..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/cachecontrol/wrapper.py +++ /dev/null @@ -1,27 +0,0 @@ -from .adapter import CacheControlAdapter -from .cache import DictCache - - -def CacheControl(sess, - cache=None, - cache_etags=True, - serializer=None, - heuristic=None, - controller_class=None, - adapter_class=None, - cacheable_methods=None): - - cache = cache or DictCache() - adapter_class = adapter_class or CacheControlAdapter - adapter = adapter_class( - cache, - cache_etags=cache_etags, - serializer=serializer, - heuristic=heuristic, - controller_class=controller_class, - cacheable_methods=cacheable_methods - ) - sess.mount('http://', adapter) - sess.mount('https://', adapter) - - return sess diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__init__.py deleted file mode 100644 index 3d73ece..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -from .core import where, old_where - -__version__ = "2018.01.18" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__main__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__main__.py deleted file mode 100644 index e30b50d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/__main__.py +++ /dev/null @@ -1,2 +0,0 @@ -from certifi import where -print(where()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/cacert.pem b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/cacert.pem deleted file mode 100644 index 5b0fbbd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/cacert.pem +++ /dev/null @@ -1,4433 +0,0 @@ - -# Issuer: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA -# Subject: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA -# Label: "GlobalSign Root CA" -# Serial: 4835703278459707669005204 -# MD5 Fingerprint: 3e:45:52:15:09:51:92:e1:b7:5d:37:9f:b1:87:29:8a -# SHA1 Fingerprint: b1:bc:96:8b:d4:f4:9d:62:2a:a8:9a:81:f2:15:01:52:a4:1d:82:9c -# SHA256 Fingerprint: eb:d4:10:40:e4:bb:3e:c7:42:c9:e3:81:d3:1e:f2:a4:1a:48:b6:68:5c:96:e7:ce:f3:c1:df:6c:d4:33:1c:99 ------BEGIN CERTIFICATE----- -MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG -A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv -b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw -MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i -YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT -aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ -jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp -xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp -1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG -snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ -U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8 -9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E -BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B -AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz -yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE -38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP -AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad -DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME -HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== ------END CERTIFICATE----- - -# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R2 -# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R2 -# Label: "GlobalSign Root CA - R2" -# Serial: 4835703278459682885658125 -# MD5 Fingerprint: 94:14:77:7e:3e:5e:fd:8f:30:bd:41:b0:cf:e7:d0:30 -# SHA1 Fingerprint: 75:e0:ab:b6:13:85:12:27:1c:04:f8:5f:dd:de:38:e4:b7:24:2e:fe -# SHA256 Fingerprint: ca:42:dd:41:74:5f:d0:b8:1e:b9:02:36:2c:f9:d8:bf:71:9d:a1:bd:1b:1e:fc:94:6f:5b:4c:99:f4:2c:1b:9e ------BEGIN CERTIFICATE----- -MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G -A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp -Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1 -MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG -A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL -v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8 -eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq -tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd -C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa -zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB -mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH -V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n -bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG -3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs -J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO -291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS -ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd -AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 -TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== ------END CERTIFICATE----- - -# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 1999 VeriSign, Inc. - For authorized use only -# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G3 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 1999 VeriSign, Inc. - For authorized use only -# Label: "Verisign Class 3 Public Primary Certification Authority - G3" -# Serial: 206684696279472310254277870180966723415 -# MD5 Fingerprint: cd:68:b6:a7:c7:c4:ce:75:e0:1d:4f:57:44:61:92:09 -# SHA1 Fingerprint: 13:2d:0d:45:53:4b:69:97:cd:b2:d5:c3:39:e2:55:76:60:9b:5c:c6 -# SHA256 Fingerprint: eb:04:cf:5e:b1:f3:9a:fa:76:2f:2b:b1:20:f2:96:cb:a5:20:c1:b9:7d:b1:58:95:65:b8:1c:b9:a1:7b:72:44 ------BEGIN CERTIFICATE----- -MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl -cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu -LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT -aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD -VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT -aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ -bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu -IENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg -LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8b -N3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2t -KmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGu -kxUccLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBm -CC+Vk7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ -Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWu -imi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my/uRan2Te -2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5fj267Cz3qWhMe -DGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC -/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565p -F4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGt -TxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== ------END CERTIFICATE----- - -# Issuer: CN=Entrust.net Certification Authority (2048) O=Entrust.net OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Subject: CN=Entrust.net Certification Authority (2048) O=Entrust.net OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Label: "Entrust.net Premium 2048 Secure Server CA" -# Serial: 946069240 -# MD5 Fingerprint: ee:29:31:bc:32:7e:9a:e6:e8:b5:f7:51:b4:34:71:90 -# SHA1 Fingerprint: 50:30:06:09:1d:97:d4:f5:ae:39:f7:cb:e7:92:7d:7d:65:2d:34:31 -# SHA256 Fingerprint: 6d:c4:71:72:e0:1c:bc:b0:bf:62:58:0d:89:5f:e2:b8:ac:9a:d4:f8:73:80:1e:0c:10:b9:c8:37:d2:1e:b1:77 ------BEGIN CERTIFICATE----- -MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML -RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp -bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5 -IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRp -ZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQxNzUwNTFaFw0yOTA3 -MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3 -LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp -YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG -A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq -K0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQe -sYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuX -MlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVT -XTzWnLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/ -HoZdenoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH -4QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV -HQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJKoZIhvcNAQEFBQADggEBADub -j1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPyT/4xmf3IDExo -U8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf -zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5b -u/8j72gZyxKTJ1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+ -bYQLCIt+jerXmCHG8+c8eS9enNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/Er -fF6adulZkMV8gzURZVE= ------END CERTIFICATE----- - -# Issuer: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust -# Subject: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust -# Label: "Baltimore CyberTrust Root" -# Serial: 33554617 -# MD5 Fingerprint: ac:b6:94:a5:9c:17:e0:d7:91:52:9b:b1:97:06:a6:e4 -# SHA1 Fingerprint: d4:de:20:d0:5e:66:fc:53:fe:1a:50:88:2c:78:db:28:52:ca:e4:74 -# SHA256 Fingerprint: 16:af:57:a9:f6:76:b0:ab:12:60:95:aa:5e:ba:de:f2:2a:b3:11:19:d6:44:ac:95:cd:4b:93:db:f3:f2:6a:eb ------BEGIN CERTIFICATE----- -MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ -RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD -VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX -DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y -ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy -VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr -mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr -IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK -mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu -XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy -dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye -jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1 -BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3 -DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92 -9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx -jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0 -Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz -ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS -R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp ------END CERTIFICATE----- - -# Issuer: CN=AddTrust External CA Root O=AddTrust AB OU=AddTrust External TTP Network -# Subject: CN=AddTrust External CA Root O=AddTrust AB OU=AddTrust External TTP Network -# Label: "AddTrust External Root" -# Serial: 1 -# MD5 Fingerprint: 1d:35:54:04:85:78:b0:3f:42:42:4d:bf:20:73:0a:3f -# SHA1 Fingerprint: 02:fa:f3:e2:91:43:54:68:60:78:57:69:4d:f5:e4:5b:68:85:18:68 -# SHA256 Fingerprint: 68:7f:a4:51:38:22:78:ff:f0:c8:b1:1f:8d:43:d5:76:67:1c:6e:b2:bc:ea:b4:13:fb:83:d9:65:d0:6d:2f:f2 ------BEGIN CERTIFICATE----- -MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU -MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs -IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290 -MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux -FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h -bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v -dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt -H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9 -uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX -mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX -a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN -E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0 -WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD -VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0 -Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU -cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx -IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN -AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH -YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 -6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC -Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX -c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a -mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= ------END CERTIFICATE----- - -# Issuer: CN=Entrust Root Certification Authority O=Entrust, Inc. OU=www.entrust.net/CPS is incorporated by reference/(c) 2006 Entrust, Inc. -# Subject: CN=Entrust Root Certification Authority O=Entrust, Inc. OU=www.entrust.net/CPS is incorporated by reference/(c) 2006 Entrust, Inc. -# Label: "Entrust Root Certification Authority" -# Serial: 1164660820 -# MD5 Fingerprint: d6:a5:c3:ed:5d:dd:3e:00:c1:3d:87:92:1f:1d:3f:e4 -# SHA1 Fingerprint: b3:1e:b1:b7:40:e3:6c:84:02:da:dc:37:d4:4d:f5:d4:67:49:52:f9 -# SHA256 Fingerprint: 73:c1:76:43:4f:1b:c6:d5:ad:f4:5b:0e:76:e7:27:28:7c:8d:e5:76:16:c1:e6:e6:14:1a:2b:2c:bc:7d:8e:4c ------BEGIN CERTIFICATE----- -MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC -VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0 -Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW -KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl -cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw -NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw -NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy -ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV -BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ -KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo -Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4 -4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9 -KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI -rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi -94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB -sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi -gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo -kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE -vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA -A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t -O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua -AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP -9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/ -eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m -0vdXcDazv/wor3ElhVsT/h5/WrQ8 ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Global CA O=GeoTrust Inc. -# Subject: CN=GeoTrust Global CA O=GeoTrust Inc. -# Label: "GeoTrust Global CA" -# Serial: 144470 -# MD5 Fingerprint: f7:75:ab:29:fb:51:4e:b7:77:5e:ff:05:3c:99:8e:f5 -# SHA1 Fingerprint: de:28:f4:a4:ff:e5:b9:2f:a3:c5:03:d1:a3:49:a7:f9:96:2a:82:12 -# SHA256 Fingerprint: ff:85:6a:2d:25:1d:cd:88:d3:66:56:f4:50:12:67:98:cf:ab:aa:de:40:79:9c:72:2d:e4:d2:b5:db:36:a7:3a ------BEGIN CERTIFICATE----- -MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT -MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i -YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG -EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg -R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9 -9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq -fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv -iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU -1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+ -bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW -MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA -ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l -uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn -Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS -tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF -PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un -hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV -5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw== ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Universal CA O=GeoTrust Inc. -# Subject: CN=GeoTrust Universal CA O=GeoTrust Inc. -# Label: "GeoTrust Universal CA" -# Serial: 1 -# MD5 Fingerprint: 92:65:58:8b:a2:1a:31:72:73:68:5c:b4:a5:7a:07:48 -# SHA1 Fingerprint: e6:21:f3:35:43:79:05:9a:4b:68:30:9d:8a:2f:74:22:15:87:ec:79 -# SHA256 Fingerprint: a0:45:9b:9f:63:b2:25:59:f5:fa:5d:4c:6d:b3:f9:f7:2f:f1:93:42:03:35:78:f0:73:bf:1d:1b:46:cb:b9:12 ------BEGIN CERTIFICATE----- -MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEW -MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVy -c2FsIENBMB4XDTA0MDMwNDA1MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UE -BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xHjAcBgNVBAMTFUdlb1RydXN0 -IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKYV -VaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9tJPi8 -cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTT -QjOgNB0eRXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFh -F7em6fgemdtzbvQKoiFs7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2v -c7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d8Lsrlh/eezJS/R27tQahsiFepdaVaH/w -mZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7VqnJNk22CDtucvc+081xd -VHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3CgaRr0BHdCX -teGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZ -f9hBZ3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfRe -Bi9Fi1jUIxaS5BZuKGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+ -nhutxx9z3SxPGWX9f5NAEC7S8O08ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB -/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0XG0D08DYj3rWMB8GA1UdIwQY -MBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG -9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc -aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fX -IwjhmF7DWgh2qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzyn -ANXH/KttgCJwpQzgXQQpAvvLoJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0z -uzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsKxr2EoyNB3tZ3b4XUhRxQ4K5RirqN -Pnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxFKyDuSN/n3QmOGKja -QI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2DFKW -koRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9 -ER/frslKxfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQt -DF4JbAiXfKM9fJP/P6EUp8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/Sfuvm -bJxPgWp6ZKy7PtXny3YuxadIwVyQD8vIP/rmMuGNG2+k5o7Y+SlIis5z/iw= ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Universal CA 2 O=GeoTrust Inc. -# Subject: CN=GeoTrust Universal CA 2 O=GeoTrust Inc. -# Label: "GeoTrust Universal CA 2" -# Serial: 1 -# MD5 Fingerprint: 34:fc:b8:d0:36:db:9e:14:b3:c2:f2:db:8f:e4:94:c7 -# SHA1 Fingerprint: 37:9a:19:7b:41:85:45:35:0c:a6:03:69:f3:3c:2e:af:47:4f:20:79 -# SHA256 Fingerprint: a0:23:4f:3b:c8:52:7c:a5:62:8e:ec:81:ad:5d:69:89:5d:a5:68:0d:c9:1d:1c:b8:47:7f:33:f8:78:b9:5b:0b ------BEGIN CERTIFICATE----- -MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEW -MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVy -c2FsIENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYD -VQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1 -c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC -AQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0DE81 -WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUG -FF+3Qs17j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdq -XbboW0W63MOhBW9Wjo8QJqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxL -se4YuU6W3Nx2/zu+z18DwPw76L5GG//aQMJS9/7jOvdqdzXQ2o3rXhhqMcceujwb -KNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2WP0+GfPtDCapkzj4T8Fd -IgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP20gaXT73 -y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRt -hAAnZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgoc -QIgfksILAAX/8sgCSqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4 -Lt1ZrtmhN79UNdxzMk+MBB4zsslG8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNV -HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAfBgNV -HSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8EBAMCAYYwDQYJ -KoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z -dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQ -L1EuxBRa3ugZ4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgr -Fg5fNuH8KrUwJM/gYwx7WBr+mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSo -ag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpqA1Ihn0CoZ1Dy81of398j9tx4TuaY -T1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpgY+RdM4kX2TGq2tbz -GDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiPpm8m -1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJV -OCiNUW7dFGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH -6aLcr34YEoP9VhdBLtUpgn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwX -QMAJKOSLakhT2+zNVVXxxvjpoixMptEmX36vWkzaH6byHCx+rgIW0lbQL1dTR+iS ------END CERTIFICATE----- - -# Issuer: CN=Visa eCommerce Root O=VISA OU=Visa International Service Association -# Subject: CN=Visa eCommerce Root O=VISA OU=Visa International Service Association -# Label: "Visa eCommerce Root" -# Serial: 25952180776285836048024890241505565794 -# MD5 Fingerprint: fc:11:b8:d8:08:93:30:00:6d:23:f9:7e:eb:52:1e:02 -# SHA1 Fingerprint: 70:17:9b:86:8c:00:a4:fa:60:91:52:22:3f:9f:3e:32:bd:e0:05:62 -# SHA256 Fingerprint: 69:fa:c9:bd:55:fb:0a:c7:8d:53:bb:ee:5c:f1:d5:97:98:9f:d0:aa:ab:20:a2:51:51:bd:f1:73:3e:e7:d1:22 ------BEGIN CERTIFICATE----- -MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBr -MQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRl -cm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv -bW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2WhcNMjIwNjI0MDAxNjEyWjBrMQsw -CQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5h -dGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1l -cmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h -2mCxlCfLF9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4E -lpF7sDPwsRROEW+1QK8bRaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdV -ZqW1LS7YgFmypw23RuwhY/81q6UCzyr0TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq -299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI/k4+oKsGGelT84ATB+0t -vz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzsGHxBvfaL -dXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD -AgEGMB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUF -AAOCAQEAX/FBfXxcCLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcR -zCSs00Rsca4BIGsDoo8Ytyk6feUWYFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3 -LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pzzkWKsKZJ/0x9nXGIxHYdkFsd -7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBuYQa7FkKMcPcw -++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt -398znM/jra6O1I7mT1GvFpLgXPYHDw== ------END CERTIFICATE----- - -# Issuer: CN=AAA Certificate Services O=Comodo CA Limited -# Subject: CN=AAA Certificate Services O=Comodo CA Limited -# Label: "Comodo AAA Services root" -# Serial: 1 -# MD5 Fingerprint: 49:79:04:b0:eb:87:19:ac:47:b0:bc:11:51:9b:74:d0 -# SHA1 Fingerprint: d1:eb:23:a4:6d:17:d6:8f:d9:25:64:c2:f1:f1:60:17:64:d8:e3:49 -# SHA256 Fingerprint: d7:a7:a0:fb:5d:7e:27:31:d7:71:e9:48:4e:bc:de:f7:1d:5f:0c:3e:0a:29:48:78:2b:c8:3e:e0:ea:69:9e:f4 ------BEGIN CERTIFICATE----- -MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb -MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow -GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj -YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL -MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE -BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM -GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua -BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe -3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4 -YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR -rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm -ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU -oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF -MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v -QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t -b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF -AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q -GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz -Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2 -G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi -l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3 -smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root Certification Authority O=QuoVadis Limited OU=Root Certification Authority -# Subject: CN=QuoVadis Root Certification Authority O=QuoVadis Limited OU=Root Certification Authority -# Label: "QuoVadis Root CA" -# Serial: 985026699 -# MD5 Fingerprint: 27:de:36:fe:72:b7:00:03:00:9d:f4:f0:1e:6c:04:24 -# SHA1 Fingerprint: de:3f:40:bd:50:93:d3:9b:6c:60:f6:da:bc:07:62:01:00:89:76:c9 -# SHA256 Fingerprint: a4:5e:de:3b:bb:f0:9c:8a:e1:5c:72:ef:c0:72:68:d6:93:a2:1c:99:6f:d5:1e:67:ca:07:94:60:fd:6d:88:73 ------BEGIN CERTIFICATE----- -MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJC -TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0 -aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0 -aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNaFw0yMTAzMTcxODMz -MzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUw -IwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVR -dW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Yp -li4kVEAkOPcahdxYTMukJ0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2D -rOpm2RgbaIr1VxqYuvXtdj182d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJ -WCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cug -F+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospU -xbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCC -Ak4wPQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVv -dmFkaXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw -ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNl -IG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBh -c3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFy -ZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh -Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYI -KwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3T -KbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rq -y+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1p -dGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYD -VQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCL -MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSk -fnIYj9lofFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf8 -7C9TqnN7Az10buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1R -cHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0y -mQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW -xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQNiOK -SnQ2+Q== ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root CA 2 O=QuoVadis Limited -# Subject: CN=QuoVadis Root CA 2 O=QuoVadis Limited -# Label: "QuoVadis Root CA 2" -# Serial: 1289 -# MD5 Fingerprint: 5e:39:7b:dd:f8:ba:ec:82:e9:ac:62:ba:0c:54:00:2b -# SHA1 Fingerprint: ca:3a:fb:cf:12:40:36:4b:44:b2:16:20:88:80:48:39:19:93:7c:f7 -# SHA256 Fingerprint: 85:a0:dd:7d:d7:20:ad:b7:ff:05:f8:3d:54:2b:20:9d:c7:ff:45:28:f7:d6:77:b1:83:89:fe:a5:e5:c4:9e:86 ------BEGIN CERTIFICATE----- -MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x -GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv -b3QgQ0EgMjAeFw0wNjExMjQxODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNV -BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W -YWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCa -GMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6XJxg -Fyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55J -WpzmM+Yklvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bB -rrcCaoF6qUWD4gXmuVbBlDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp -+ARz8un+XJiM9XOva7R+zdRcAitMOeGylZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1 -ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt66/3FsvbzSUr5R/7mp/i -Ucw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1JdxnwQ5hYIiz -PtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og -/zOhD7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UH -oycR7hYQe7xFSkyyBNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuI -yV77zGHcizN300QyNQliBJIWENieJ0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1Ud -EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBQahGK8SEwzJQTU7tD2 -A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGUa6FJpEcwRTEL -MAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT -ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2f -BluornFdLwUvZ+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzn -g/iN/Ae42l9NLmeyhP3ZRPx3UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2Bl -fF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodmVjB3pjd4M1IQWK4/YY7yarHvGH5K -WWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK+JDSV6IZUaUtl0Ha -B0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrWIozc -hLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPR -TUIZ3Ph1WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWD -mbA4CD/pXvk1B+TJYm5Xf6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0Z -ohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y -4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8VCLAAVBpQ570su9t+Oza -8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root CA 3 O=QuoVadis Limited -# Subject: CN=QuoVadis Root CA 3 O=QuoVadis Limited -# Label: "QuoVadis Root CA 3" -# Serial: 1478 -# MD5 Fingerprint: 31:85:3c:62:94:97:63:b9:aa:fd:89:4e:af:6f:e0:cf -# SHA1 Fingerprint: 1f:49:14:f7:d8:74:95:1d:dd:ae:02:c0:be:fd:3a:2d:82:75:51:85 -# SHA256 Fingerprint: 18:f1:fc:7f:20:5d:f8:ad:dd:eb:7f:e0:07:dd:57:e3:af:37:5a:9c:4d:8d:73:54:6b:f4:f1:fe:d1:e1:8d:35 ------BEGIN CERTIFICATE----- -MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x -GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv -b3QgQ0EgMzAeFw0wNjExMjQxOTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNV -BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W -YWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDM -V0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNggDhoB -4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUr -H556VOijKTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd -8lyyBTNvijbO0BNO/79KDDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9Cabwv -vWhDFlaJKjdhkf2mrk7AyxRllDdLkgbvBNDInIjbC3uBr7E9KsRlOni27tyAsdLT -mZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwpp5ijJUMv7/FfJuGITfhe -btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8nT8KKdjc -T5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDt -WAEXMJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZ -c6tsgLjoC2SToJyMGf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A -4iLItLRkT9a6fUg+qGkM17uGcclzuD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYD -VR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHTBgkrBgEEAb5YAAMwgcUwgZMG -CCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmljYXRlIGNvbnN0 -aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 -aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu -dC4wLQYIKwYBBQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2Nw -czALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4G -A1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4ywLQoUmkRzBFMQswCQYDVQQGEwJC -TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UEAxMSUXVvVmFkaXMg -Um9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZVqyM0 -7ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSem -d1o417+shvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd -+LJ2w/w4E6oM3kJpK27zPOuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B -4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadN -t54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp8kokUvd0/bpO5qgdAm6x -DYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBCbjPsMZ57 -k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6s -zHXug/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0j -Wy10QJLZYxkNc91pvGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeT -mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK -4SVhM7JZG+Ju1zdXtg2pEto= ------END CERTIFICATE----- - -# Issuer: O=SECOM Trust.net OU=Security Communication RootCA1 -# Subject: O=SECOM Trust.net OU=Security Communication RootCA1 -# Label: "Security Communication Root CA" -# Serial: 0 -# MD5 Fingerprint: f1:bc:63:6a:54:e0:b5:27:f5:cd:e7:1a:e3:4d:6e:4a -# SHA1 Fingerprint: 36:b1:2b:49:f9:81:9e:d7:4c:9e:bc:38:0f:c6:56:8f:5d:ac:b2:f7 -# SHA256 Fingerprint: e7:5e:72:ed:9f:56:0e:ec:6e:b4:80:00:73:a4:3f:c3:ad:19:19:5a:39:22:82:01:78:95:97:4a:99:02:6b:6c ------BEGIN CERTIFICATE----- -MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEY -MBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21t -dW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5 -WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYD -VQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwggEiMA0GCSqGSIb3 -DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw8yl8 -9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ -DKaVv0uMDPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9 -Ms+k2Y7CI9eNqPPYJayX5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/N -QV3Is00qVUarH9oe4kA92819uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJ -xrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0G -A1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0T -AQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vG -kl3g0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfr -Uj94nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5 -Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJU -JRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfcioU+tHXot -RSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAiFL39vmwLAw== ------END CERTIFICATE----- - -# Issuer: CN=Sonera Class2 CA O=Sonera -# Subject: CN=Sonera Class2 CA O=Sonera -# Label: "Sonera Class 2 Root CA" -# Serial: 29 -# MD5 Fingerprint: a3:ec:75:0f:2e:88:df:fa:48:01:4e:0b:5c:48:6f:fb -# SHA1 Fingerprint: 37:f7:6d:e6:07:7c:90:c5:b1:3e:93:1a:b7:41:10:b4:f2:e4:9a:27 -# SHA256 Fingerprint: 79:08:b4:03:14:c1:38:10:0b:51:8d:07:35:80:7f:fb:fc:f8:51:8a:00:95:33:71:05:ba:38:6b:15:3d:d9:27 ------BEGIN CERTIFICATE----- -MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP -MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAx -MDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNV -BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBDQTCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3/Ei9vX+ALTU74W+o -Z6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybTdXnt -5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s -3TmVToMGf+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2Ej -vOr7nQKV0ba5cTppCD8PtOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu -8nYybieDwnPz3BjotJPqdURrBGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEw -DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEG -MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zil -zqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/ -3DEIcbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvD -FNr450kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6 -Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2 -ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M ------END CERTIFICATE----- - -# Issuer: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com -# Subject: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com -# Label: "XRamp Global CA Root" -# Serial: 107108908803651509692980124233745014957 -# MD5 Fingerprint: a1:0b:44:b3:ca:10:d8:00:6e:9d:0f:d8:0f:92:0a:d1 -# SHA1 Fingerprint: b8:01:86:d1:eb:9c:86:a5:41:04:cf:30:54:f3:4c:52:b7:e5:58:c6 -# SHA256 Fingerprint: ce:cd:dc:90:50:99:d8:da:df:c5:b1:d2:09:b7:37:cb:e2:c1:8c:fb:2c:10:c0:ff:0b:cf:0d:32:86:fc:1a:a2 ------BEGIN CERTIFICATE----- -MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB -gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk -MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY -UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx -NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3 -dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy -dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB -dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6 -38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP -KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q -DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4 -qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa -JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi -PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P -BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs -jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0 -eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD -ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR -vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt -qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa -IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy -i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ -O+7ETPTsJ3xCwnR8gooJybQDJbw= ------END CERTIFICATE----- - -# Issuer: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority -# Subject: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority -# Label: "Go Daddy Class 2 CA" -# Serial: 0 -# MD5 Fingerprint: 91:de:06:25:ab:da:fd:32:17:0c:bb:25:17:2a:84:67 -# SHA1 Fingerprint: 27:96:ba:e6:3f:18:01:e2:77:26:1b:a0:d7:77:70:02:8f:20:ee:e4 -# SHA256 Fingerprint: c3:84:6b:f2:4b:9e:93:ca:64:27:4c:0e:c6:7c:1e:cc:5e:02:4f:fc:ac:d2:d7:40:19:35:0e:81:fe:54:6a:e4 ------BEGIN CERTIFICATE----- -MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh -MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE -YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3 -MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo -ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg -MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN -ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA -PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w -wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi -EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY -avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+ -YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE -sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h -/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5 -IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD -ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy -OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P -TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ -HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER -dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf -ReYNnyicsbkqWletNw+vHX/bvZ8= ------END CERTIFICATE----- - -# Issuer: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority -# Subject: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority -# Label: "Starfield Class 2 CA" -# Serial: 0 -# MD5 Fingerprint: 32:4a:4b:bb:c8:63:69:9b:be:74:9a:c6:dd:1d:46:24 -# SHA1 Fingerprint: ad:7e:1c:28:b0:64:ef:8f:60:03:40:20:14:c3:d0:e3:37:0e:b5:8a -# SHA256 Fingerprint: 14:65:fa:20:53:97:b8:76:fa:a6:f0:a9:95:8e:55:90:e4:0f:cc:7f:aa:4f:b7:c2:c8:67:75:21:fb:5f:b6:58 ------BEGIN CERTIFICATE----- -MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl -MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp -U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw -NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE -ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp -ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3 -DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf -8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN -+lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0 -X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa -K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA -1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G -A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR -zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0 -YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD -bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w -DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3 -L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D -eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl -xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp -VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY -WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q= ------END CERTIFICATE----- - -# Issuer: O=Government Root Certification Authority -# Subject: O=Government Root Certification Authority -# Label: "Taiwan GRCA" -# Serial: 42023070807708724159991140556527066870 -# MD5 Fingerprint: 37:85:44:53:32:45:1f:20:f0:f3:95:e1:25:c4:43:4e -# SHA1 Fingerprint: f4:8b:11:bf:de:ab:be:94:54:20:71:e6:41:de:6b:be:88:2b:40:b9 -# SHA256 Fingerprint: 76:00:29:5e:ef:e8:5b:9e:1f:d6:24:db:76:06:2a:aa:ae:59:81:8a:54:d2:77:4c:d4:c0:b2:c0:11:31:e1:b3 ------BEGIN CERTIFICATE----- -MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/ -MQswCQYDVQQGEwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5MB4XDTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1ow -PzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dvdmVybm1lbnQgUm9vdCBDZXJ0aWZp -Y2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB -AJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qNw8XR -IePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1q -gQdW8or5BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKy -yhwOeYHWtXBiCAEuTk8O1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAts -F/tnyMKtsc2AtJfcdgEWFelq16TheEfOhtX7MfP6Mb40qij7cEwdScevLJ1tZqa2 -jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wovJ5pGfaENda1UhhXcSTvx -ls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7Q3hub/FC -VGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHK -YS1tB6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoH -EgKXTiCQ8P8NHuJBO9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThN -Xo+EHWbNxWCWtFJaBYmOlXqYwZE8lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1Ud -DgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNVHRMEBTADAQH/MDkGBGcqBwAE -MTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg209yewDL7MTqK -UWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ -TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyf -qzvS/3WXy6TjZwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaK -ZEk9GhiHkASfQlK3T8v+R0F2Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFE -JPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlUD7gsL0u8qV1bYH+Mh6XgUmMqvtg7 -hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6QzDxARvBMB1uUO07+1 -EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+HbkZ6Mm -nD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WX -udpVBrkk7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44Vbnz -ssQwmSNOXfJIoRIM3BKQCZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDe -LMDDav7v3Aun+kbfYNucpllQdSNpc5Oy+fwC00fmcc4QAu4njIT/rEUNE1yDMuAl -pYYsfPQS ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Assured ID Root CA O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Assured ID Root CA O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Assured ID Root CA" -# Serial: 17154717934120587862167794914071425081 -# MD5 Fingerprint: 87:ce:0b:7b:2a:0e:49:00:e1:58:71:9b:37:a8:93:72 -# SHA1 Fingerprint: 05:63:b8:63:0d:62:d7:5a:bb:c8:ab:1e:4b:df:b5:a8:99:b2:4d:43 -# SHA256 Fingerprint: 3e:90:99:b5:01:5e:8f:48:6c:00:bc:ea:9d:11:1e:e7:21:fa:ba:35:5a:89:bc:f1:df:69:56:1e:3d:c6:32:5c ------BEGIN CERTIFICATE----- -MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv -b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG -EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl -cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi -MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c -JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP -mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+ -wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4 -VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/ -AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB -AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW -BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun -pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC -dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf -fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm -NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx -H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe -+o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Global Root CA O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Global Root CA O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Global Root CA" -# Serial: 10944719598952040374951832963794454346 -# MD5 Fingerprint: 79:e4:a9:84:0d:7d:3a:96:d7:c0:4f:e2:43:4c:89:2e -# SHA1 Fingerprint: a8:98:5d:3a:65:e5:e5:c4:b2:d7:d6:6d:40:c6:dd:2f:b1:9c:54:36 -# SHA256 Fingerprint: 43:48:a0:e9:44:4c:78:cb:26:5e:05:8d:5e:89:44:b4:d8:4f:96:62:bd:26:db:25:7f:89:34:a4:43:c7:01:61 ------BEGIN CERTIFICATE----- -MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD -QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT -MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j -b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB -CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 -nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt -43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P -T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 -gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO -BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR -TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw -DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr -hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg -06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF -PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls -YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk -CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= ------END CERTIFICATE----- - -# Issuer: CN=DigiCert High Assurance EV Root CA O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert High Assurance EV Root CA O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert High Assurance EV Root CA" -# Serial: 3553400076410547919724730734378100087 -# MD5 Fingerprint: d4:74:de:57:5c:39:b2:d3:9c:85:83:c5:c0:65:49:8a -# SHA1 Fingerprint: 5f:b7:ee:06:33:e2:59:db:ad:0c:4c:9a:e6:d3:8f:1a:61:c7:dc:25 -# SHA256 Fingerprint: 74:31:e5:f4:c3:c1:ce:46:90:77:4f:0b:61:e0:54:40:88:3b:a9:a0:1e:d0:0b:a6:ab:d7:80:6e:d3:b1:18:cf ------BEGIN CERTIFICATE----- -MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j -ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL -MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 -LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug -RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm -+9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW -PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM -xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB -Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3 -hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg -EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF -MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA -FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec -nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z -eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF -hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2 -Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe -vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep -+OkuE6N36B9K ------END CERTIFICATE----- - -# Issuer: CN=Class 2 Primary CA O=Certplus -# Subject: CN=Class 2 Primary CA O=Certplus -# Label: "Certplus Class 2 Primary CA" -# Serial: 177770208045934040241468760488327595043 -# MD5 Fingerprint: 88:2c:8c:52:b8:a2:3c:f3:f7:bb:03:ea:ae:ac:42:0b -# SHA1 Fingerprint: 74:20:74:41:72:9c:dd:92:ec:79:31:d8:23:10:8d:c2:81:92:e2:bb -# SHA256 Fingerprint: 0f:99:3c:8a:ef:97:ba:af:56:87:14:0e:d5:9a:d1:82:1b:b4:af:ac:f0:aa:9a:58:b5:d5:7a:33:8a:3a:fb:cb ------BEGIN CERTIFICATE----- -MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAw -PTELMAkGA1UEBhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFz -cyAyIFByaW1hcnkgQ0EwHhcNOTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9 -MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2VydHBsdXMxGzAZBgNVBAMTEkNsYXNz -IDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANxQ -ltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR5aiR -VhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyL -kcAbmXuZVg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCd -EgETjdyAYveVqUSISnFOYFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yas -H7WLO7dDWWuwJKZtkIvEcupdM5i3y95ee++U8Rs+yskhwcWYAqqi9lt3m/V+llU0 -HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRMECDAGAQH/AgEKMAsGA1Ud -DwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJYIZIAYb4 -QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMu -Y29tL0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/ -AN9WM2K191EBkOvDP9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8 -yfFC82x/xXp8HVGIutIKPidd3i1RTtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMR -FcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+7UCmnYR0ObncHoUW2ikbhiMA -ybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW//1IMwrh3KWB -kJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 -l7+ijrRU ------END CERTIFICATE----- - -# Issuer: CN=DST Root CA X3 O=Digital Signature Trust Co. -# Subject: CN=DST Root CA X3 O=Digital Signature Trust Co. -# Label: "DST Root CA X3" -# Serial: 91299735575339953335919266965803778155 -# MD5 Fingerprint: 41:03:52:dc:0f:f7:50:1b:16:f0:02:8e:ba:6f:45:c5 -# SHA1 Fingerprint: da:c9:02:4f:54:d8:f6:df:94:93:5f:b1:73:26:38:ca:6a:d7:7c:13 -# SHA256 Fingerprint: 06:87:26:03:31:a7:24:03:d9:09:f1:05:e6:9b:cf:0d:32:e1:bd:24:93:ff:c6:d9:20:6d:11:bc:d6:77:07:39 ------BEGIN CERTIFICATE----- -MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ -MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT -DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow -PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD -Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O -rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq -OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b -xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw -7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD -aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV -HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG -SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 -ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr -AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz -R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 -JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo -Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ ------END CERTIFICATE----- - -# Issuer: CN=SwissSign Gold CA - G2 O=SwissSign AG -# Subject: CN=SwissSign Gold CA - G2 O=SwissSign AG -# Label: "SwissSign Gold CA - G2" -# Serial: 13492815561806991280 -# MD5 Fingerprint: 24:77:d9:a8:91:d1:3b:fa:88:2d:c2:ff:f8:cd:33:93 -# SHA1 Fingerprint: d8:c5:38:8a:b7:30:1b:1b:6e:d4:7a:e6:45:25:3a:6f:9f:1a:27:61 -# SHA256 Fingerprint: 62:dd:0b:e9:b9:f5:0a:16:3e:a0:f8:e7:5c:05:3b:1e:ca:57:ea:55:c8:68:8f:64:7c:68:81:f2:c8:35:7b:95 ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- - -# Issuer: CN=SwissSign Silver CA - G2 O=SwissSign AG -# Subject: CN=SwissSign Silver CA - G2 O=SwissSign AG -# Label: "SwissSign Silver CA - G2" -# Serial: 5700383053117599563 -# MD5 Fingerprint: e0:06:a1:c9:7d:cf:c9:fc:0d:c0:56:75:96:d8:62:13 -# SHA1 Fingerprint: 9b:aa:e5:9f:56:ee:21:cb:43:5a:be:25:93:df:a7:f0:40:d1:1d:cb -# SHA256 Fingerprint: be:6c:4d:a2:bb:b9:ba:59:b6:f3:93:97:68:37:42:46:c3:c0:05:99:3f:a9:8f:02:0d:1d:ed:be:d4:8a:81:d5 ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Primary Certification Authority O=GeoTrust Inc. -# Subject: CN=GeoTrust Primary Certification Authority O=GeoTrust Inc. -# Label: "GeoTrust Primary Certification Authority" -# Serial: 32798226551256963324313806436981982369 -# MD5 Fingerprint: 02:26:c3:01:5e:08:30:37:43:a9:d0:7d:cf:37:e6:bf -# SHA1 Fingerprint: 32:3c:11:8e:1b:f7:b8:b6:52:54:e2:e2:10:0d:d6:02:90:37:f0:96 -# SHA256 Fingerprint: 37:d5:10:06:c5:12:ea:ab:62:64:21:f1:ec:8c:92:01:3f:c5:f8:2a:e9:8e:e5:33:eb:46:19:b8:de:b4:d0:6c ------BEGIN CERTIFICATE----- -MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBY -MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMo -R2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEx -MjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgxCzAJBgNVBAYTAlVTMRYwFAYDVQQK -Ew1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQcmltYXJ5IENlcnRp -ZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9 -AWbK7hWNb6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjA -ZIVcFU2Ix7e64HXprQU9nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE0 -7e9GceBrAqg1cmuXm2bgyxx5X9gaBGgeRwLmnWDiNpcB3841kt++Z8dtd1k7j53W -kBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGttm/81w7a4DSwDRp35+MI -mO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G -A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJ -KoZIhvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ1 -6CePbJC/kRYkRj5KTs4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl -4b7UVXGYNTq+k+qurUKykG/g/CFNNWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6K -oKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHaFloxt/m0cYASSJlyc1pZU8Fj -UjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG1riR/aYNKxoU -AT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= ------END CERTIFICATE----- - -# Issuer: CN=thawte Primary Root CA O=thawte, Inc. OU=Certification Services Division/(c) 2006 thawte, Inc. - For authorized use only -# Subject: CN=thawte Primary Root CA O=thawte, Inc. OU=Certification Services Division/(c) 2006 thawte, Inc. - For authorized use only -# Label: "thawte Primary Root CA" -# Serial: 69529181992039203566298953787712940909 -# MD5 Fingerprint: 8c:ca:dc:0b:22:ce:f5:be:72:ac:41:1a:11:a8:d8:12 -# SHA1 Fingerprint: 91:c6:d6:ee:3e:8a:c8:63:84:e5:48:c2:99:29:5c:75:6c:81:7b:81 -# SHA256 Fingerprint: 8d:72:2f:81:a9:c1:13:c0:79:1d:f1:36:a2:96:6d:b2:6c:95:0a:97:1d:b4:6b:41:99:f4:ea:54:b7:8b:fb:9f ------BEGIN CERTIFICATE----- -MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCB -qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf -Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw -MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV -BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3MDAwMDAwWhcNMzYw -NzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5j -LjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYG -A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl -IG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsoPD7gFnUnMekz52hWXMJEEUMDSxuaPFs -W0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ1CRfBsDMRJSUjQJib+ta -3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGcq/gcfomk -6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6 -Sk/KaAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94J -NqR32HuHUETVPm4pafs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBA -MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XP -r87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUFAAOCAQEAeRHAS7ORtvzw6WfU -DW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeEuzLlQRHAd9mz -YJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX -xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2 -/qxAeeWsEG89jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/ -LHbTY5xZ3Y+m4Q6gLkH3LpVHz7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7 -jVaMaA== ------END CERTIFICATE----- - -# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2006 VeriSign, Inc. - For authorized use only -# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G5 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2006 VeriSign, Inc. - For authorized use only -# Label: "VeriSign Class 3 Public Primary Certification Authority - G5" -# Serial: 33037644167568058970164719475676101450 -# MD5 Fingerprint: cb:17:e4:31:67:3e:e2:09:fe:45:57:93:f3:0a:fa:1c -# SHA1 Fingerprint: 4e:b6:d5:78:49:9b:1c:cf:5f:58:1e:ad:56:be:3d:9b:67:44:a5:e5 -# SHA256 Fingerprint: 9a:cf:ab:7e:43:c8:d8:80:d0:6b:26:2a:94:de:ee:e4:b4:65:99:89:c3:d0:ca:f1:9b:af:64:05:e4:1a:b7:df ------BEGIN CERTIFICATE----- -MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB -yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL -ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp -U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW -ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 -aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjEL -MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW -ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln -biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp -U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y -aXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1 -nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbex -t0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIz -SdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQG -BO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+ -rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/ -NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E -BAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAH -BgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy -aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKv -MzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzE -p6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y -5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlK -WE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ -4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8N -hnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq ------END CERTIFICATE----- - -# Issuer: CN=SecureTrust CA O=SecureTrust Corporation -# Subject: CN=SecureTrust CA O=SecureTrust Corporation -# Label: "SecureTrust CA" -# Serial: 17199774589125277788362757014266862032 -# MD5 Fingerprint: dc:32:c3:a7:6d:25:57:c7:68:09:9d:ea:2d:a9:a2:d1 -# SHA1 Fingerprint: 87:82:c6:c3:04:35:3b:cf:d2:96:92:d2:59:3e:7d:44:d9:34:ff:11 -# SHA256 Fingerprint: f1:c1:b5:0a:e5:a2:0d:d8:03:0e:c9:f6:bc:24:82:3d:d3:67:b5:25:57:59:b4:e7:1b:61:fc:e9:f7:37:5d:73 ------BEGIN CERTIFICATE----- -MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBI -MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x -FzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIz -MTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENv -cnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCCASIwDQYJKoZIhvcN -AQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQXOZEz -Zum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO -0gMdA+9tDWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIao -wW8xQmxSPmjL8xk037uHGFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj -7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b01k/unK8RCSc43Oz969XL0Imnal0ugBS -8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmHursCAwEAAaOBnTCBmjAT -BgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB -/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCeg -JYYjaHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGC -NxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt3 -6Z3q059c4EVlew3KW+JwULKUBRSuSceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/ -3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHfmbx8IVQr5Fiiu1cprp6poxkm -D5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZnMUFdAvnZyPS -CPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR -3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= ------END CERTIFICATE----- - -# Issuer: CN=Secure Global CA O=SecureTrust Corporation -# Subject: CN=Secure Global CA O=SecureTrust Corporation -# Label: "Secure Global CA" -# Serial: 9751836167731051554232119481456978597 -# MD5 Fingerprint: cf:f4:27:0d:d4:ed:dc:65:16:49:6d:3d:da:bf:6e:de -# SHA1 Fingerprint: 3a:44:73:5a:e5:81:90:1f:24:86:61:46:1e:3b:9c:c4:5f:f5:3a:1b -# SHA256 Fingerprint: 42:00:f5:04:3a:c8:59:0e:bb:52:7d:20:9e:d1:50:30:29:fb:cb:d4:1c:a1:b5:06:ec:27:f1:5a:de:7d:ac:69 ------BEGIN CERTIFICATE----- -MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBK -MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x -GTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkx -MjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3Qg -Q29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jxYDiJ -iQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa -/FHtaMbQbqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJ -jnIFHovdRIWCQtBJwB1g8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnI -HmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYVHDGA76oYa8J719rO+TMg1fW9ajMtgQT7 -sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi0XPnj3pDAgMBAAGjgZ0w -gZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF -MAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCsw -KaAnoCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsG -AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0L -URYD7xh8yOOvaliTFGCRsoTciE6+OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXO -H0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cnCDpOGR86p1hcF895P4vkp9Mm -I50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/53CYNv6ZHdAbY -iNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc -f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW ------END CERTIFICATE----- - -# Issuer: CN=COMODO Certification Authority O=COMODO CA Limited -# Subject: CN=COMODO Certification Authority O=COMODO CA Limited -# Label: "COMODO Certification Authority" -# Serial: 104350513648249232941998508985834464573 -# MD5 Fingerprint: 5c:48:dc:f7:42:72:ec:56:94:6d:1c:cc:71:35:80:75 -# SHA1 Fingerprint: 66:31:bf:9e:f7:4f:9e:b6:c9:d5:a6:0c:ba:6a:be:d1:f7:bd:ef:7b -# SHA256 Fingerprint: 0c:2c:d6:3d:f7:80:6f:a3:99:ed:e8:09:11:6b:57:5b:f8:79:89:f0:65:18:f9:80:8c:86:05:03:17:8b:af:66 ------BEGIN CERTIFICATE----- -MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCB -gTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G -A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNV -BAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEyMDEwMDAw -MDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl -YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01P -RE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0 -aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3 -UcEbVASY06m/weaKXTuH+7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI -2GqGd0S7WWaXUF601CxwRM/aN5VCaTwwxHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8 -Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV4EajcNxo2f8ESIl33rXp -+2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA1KGzqSX+ -DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5O -nKVIrLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW -/zAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6g -PKA6hjhodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9u -QXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOCAQEAPpiem/Yb6dc5t3iuHXIY -SdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CPOGEIqB6BCsAv -IC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ -RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4 -zJVSk/BwJVmcIGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5dd -BA6+C4OmF4O5MBKgxTMVBbkN+8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IB -ZQ== ------END CERTIFICATE----- - -# Issuer: CN=Network Solutions Certificate Authority O=Network Solutions L.L.C. -# Subject: CN=Network Solutions Certificate Authority O=Network Solutions L.L.C. -# Label: "Network Solutions Certificate Authority" -# Serial: 116697915152937497490437556386812487904 -# MD5 Fingerprint: d3:f3:a6:16:c0:fa:6b:1d:59:b1:2d:96:4d:0e:11:2e -# SHA1 Fingerprint: 74:f8:a3:c3:ef:e7:b3:90:06:4b:83:90:3c:21:64:60:20:e5:df:ce -# SHA256 Fingerprint: 15:f0:ba:00:a3:ac:7a:f3:ac:88:4c:07:2b:10:11:a0:77:bd:77:c0:97:f4:01:64:b2:f8:59:8a:bd:83:86:0c ------BEGIN CERTIFICATE----- -MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBi -MQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu -MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3Jp -dHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMxMjM1OTU5WjBiMQswCQYDVQQGEwJV -UzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydO -ZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwz -c7MEL7xxjOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPP -OCwGJgl6cvf6UDL4wpPTaaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rl -mGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXTcrA/vGp97Eh/jcOrqnErU2lBUzS1sLnF -BgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc/Qzpf14Dl847ABSHJ3A4 -qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMBAAGjgZcw -gZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIB -BjAPBgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwu -bmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3Jp -dHkuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc8 -6fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q4LqILPxFzBiwmZVRDuwduIj/ -h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/GGUsyfJj4akH -/nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv -wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHN -pGxlaKFJdlxDydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey ------END CERTIFICATE----- - -# Issuer: CN=COMODO ECC Certification Authority O=COMODO CA Limited -# Subject: CN=COMODO ECC Certification Authority O=COMODO CA Limited -# Label: "COMODO ECC Certification Authority" -# Serial: 41578283867086692638256921589707938090 -# MD5 Fingerprint: 7c:62:ff:74:9d:31:53:5e:68:4a:d5:78:aa:1e:bf:23 -# SHA1 Fingerprint: 9f:74:4e:9f:2b:4d:ba:ec:0f:31:2c:50:b6:56:3b:8e:2d:93:c3:11 -# SHA256 Fingerprint: 17:93:92:7a:06:14:54:97:89:ad:ce:2f:8f:34:f7:f0:b6:6d:0f:3a:e3:a3:b8:4d:21:ec:15:db:ba:4f:ad:c7 ------BEGIN CERTIFICATE----- -MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL -MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE -BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT -IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw -MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy -ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N -T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv -biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR -FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J -cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW -BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ -BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm -fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv -GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= ------END CERTIFICATE----- - -# Issuer: CN=OISTE WISeKey Global Root GA CA O=WISeKey OU=Copyright (c) 2005/OISTE Foundation Endorsed -# Subject: CN=OISTE WISeKey Global Root GA CA O=WISeKey OU=Copyright (c) 2005/OISTE Foundation Endorsed -# Label: "OISTE WISeKey Global Root GA CA" -# Serial: 86718877871133159090080555911823548314 -# MD5 Fingerprint: bc:6c:51:33:a7:e9:d3:66:63:54:15:72:1b:21:92:93 -# SHA1 Fingerprint: 59:22:a1:e1:5a:ea:16:35:21:f8:98:39:6a:46:46:b0:44:1b:0f:a9 -# SHA256 Fingerprint: 41:c9:23:86:6a:b4:ca:d6:b7:ad:57:80:81:58:2e:02:07:97:a6:cb:df:4f:ff:78:ce:83:96:b3:89:37:d7:f5 ------BEGIN CERTIFICATE----- -MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCB -ijELMAkGA1UEBhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHly -aWdodCAoYykgMjAwNTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNl -ZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQSBDQTAeFw0w -NTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYDVQQGEwJDSDEQMA4G -A1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIwIAYD -VQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBX -SVNlS2V5IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A -MIIBCgKCAQEAy0+zAJs9Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxR -VVuuk+g3/ytr6dTqvirdqFEr12bDYVxgAsj1znJ7O7jyTmUIms2kahnBAbtzptf2 -w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbDd50kc3vkDIzh2TbhmYsF -mQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ/yxViJGg -4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t9 -4B3RLoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYw -DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQw -EAYJKwYBBAGCNxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOx -SPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vImMMkQyh2I+3QZH4VFvbBsUfk2 -ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4+vg1YFkCExh8 -vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa -hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZi -Fj4A4xylNoEYokxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ -/L7fCg0= ------END CERTIFICATE----- - -# Issuer: CN=Certigna O=Dhimyotis -# Subject: CN=Certigna O=Dhimyotis -# Label: "Certigna" -# Serial: 18364802974209362175 -# MD5 Fingerprint: ab:57:a6:5b:7d:42:82:19:b5:d8:58:26:28:5e:fd:ff -# SHA1 Fingerprint: b1:2e:13:63:45:86:a4:6f:1a:b2:60:68:37:58:2d:c4:ac:fd:94:97 -# SHA256 Fingerprint: e3:b6:a2:db:2e:d7:ce:48:84:2f:7a:c5:32:41:c7:b7:1d:54:14:4b:fb:40:c1:1f:3f:1d:0b:42:f5:ee:a1:2d ------BEGIN CERTIFICATE----- -MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNV -BAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4X -DTA3MDYyOTE1MTMwNVoXDTI3MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQ -BgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwIQ2VydGlnbmEwggEiMA0GCSqGSIb3 -DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7qXOEm7RFHYeGifBZ4 -QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyHGxny -gQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbw -zBfsV1/pogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q -130yGLMLLGq/jj8UEYkgDncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2 -JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKfIrjxwo1p3Po6WAbfAgMBAAGjgbwwgbkw -DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQtCRZvgHyUtVF9lo53BEw -ZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJBgNVBAYT -AkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzj -AQ/JSP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG -9w0BAQUFAAOCAQEAhQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8h -bV6lUmPOEvjvKtpv6zf+EwLHyzs+ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFnc -fca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1kluPBS1xp81HlDQwY9qcEQCYsuu -HWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY1gkIl2PlwS6w -t0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw -WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== ------END CERTIFICATE----- - -# Issuer: CN=Deutsche Telekom Root CA 2 O=Deutsche Telekom AG OU=T-TeleSec Trust Center -# Subject: CN=Deutsche Telekom Root CA 2 O=Deutsche Telekom AG OU=T-TeleSec Trust Center -# Label: "Deutsche Telekom Root CA 2" -# Serial: 38 -# MD5 Fingerprint: 74:01:4a:91:b1:08:c4:58:ce:47:cd:f0:dd:11:53:08 -# SHA1 Fingerprint: 85:a4:08:c0:9c:19:3e:5d:51:58:7d:cd:d6:13:30:fd:8c:de:37:bf -# SHA256 Fingerprint: b6:19:1a:50:d0:c3:97:7f:7d:a9:9b:cd:aa:c8:6a:22:7d:ae:b9:67:9e:c7:0b:a3:b0:c9:d9:22:71:c1:70:d3 ------BEGIN CERTIFICATE----- -MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEc -MBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2Vj -IFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENB -IDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5MjM1OTAwWjBxMQswCQYDVQQGEwJE -RTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxl -U2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290 -IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEU -ha88EOQ5bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhC -QN/Po7qCWWqSG6wcmtoIKyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1Mjwr -rFDa1sPeg5TKqAyZMg4ISFZbavva4VhYAUlfckE8FQYBjl2tqriTtM2e66foai1S -NNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aKSe5TBY8ZTNXeWHmb0moc -QqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTVjlsB9WoH -txa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAP -BgNVHRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC -AQEAlGRZrTlk5ynrE/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756Abrsp -tJh6sTtU6zkXR34ajgv8HzFZMQSyzhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpa -IzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8rZ7/gFnkm0W09juwzTkZmDLl -6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4Gdyd1Lx+4ivn+ -xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU -Cm26OWMohpLzGITY+9HPBVZkVw== ------END CERTIFICATE----- - -# Issuer: CN=Cybertrust Global Root O=Cybertrust, Inc -# Subject: CN=Cybertrust Global Root O=Cybertrust, Inc -# Label: "Cybertrust Global Root" -# Serial: 4835703278459682877484360 -# MD5 Fingerprint: 72:e4:4a:87:e3:69:40:80:77:ea:bc:e3:f4:ff:f0:e1 -# SHA1 Fingerprint: 5f:43:e5:b1:bf:f8:78:8c:ac:1c:c7:ca:4a:9a:c6:22:2b:cc:34:c6 -# SHA256 Fingerprint: 96:0a:df:00:63:e9:63:56:75:0c:29:65:dd:0a:08:67:da:0b:9c:bd:6e:77:71:4a:ea:fb:23:49:ab:39:3d:a3 ------BEGIN CERTIFICATE----- -MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYG -A1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2Jh -bCBSb290MB4XDTA2MTIxNTA4MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UE -ChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBS -b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+Mi8vRRQZhP/8NN5 -7CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW0ozS -J8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2y -HLtgwEZLAfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iP -t3sMpTjr3kfb1V05/Iin89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNz -FtApD0mpSPCzqrdsxacwOUBdrsTiXSZT8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAY -XSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/ -MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2MDSgMqAw -hi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3Js -MB8GA1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUA -A4IBAQBW7wojoFROlZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMj -Wqd8BfP9IjsO0QbE2zZMcwSO5bAi5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUx -XOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2hO0j9n0Hq0V+09+zv+mKts2o -omcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+TX3EJIrduPuoc -A06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW -WL1WMRJOEcgh4LMRkWXbtKaIOM5V ------END CERTIFICATE----- - -# Issuer: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority -# Subject: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority -# Label: "ePKI Root Certification Authority" -# Serial: 28956088682735189655030529057352760477 -# MD5 Fingerprint: 1b:2e:00:ca:26:06:90:3d:ad:fe:6f:15:68:d3:6b:b3 -# SHA1 Fingerprint: 67:65:0d:f1:7e:8e:7e:5b:82:40:a4:f4:56:4b:cf:e2:3d:69:c6:f0 -# SHA256 Fingerprint: c0:a6:f4:dc:63:a2:4b:fd:cf:54:ef:2a:6a:08:2a:0a:72:de:35:80:3e:2f:f5:ff:52:7a:e5:d8:72:06:df:d5 ------BEGIN CERTIFICATE----- -MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe -MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 -ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe -Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw -IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL -SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF -AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH -SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh -ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X -DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1 -TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ -fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA -sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU -WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS -nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH -dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip -NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC -AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF -MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH -ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB -uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl -PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP -JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/ -gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2 -j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6 -5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB -o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS -/jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z -Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE -W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D -hNQ+IIX3Sj0rnP0qCglN6oH4EZw= ------END CERTIFICATE----- - -# Issuer: O=certSIGN OU=certSIGN ROOT CA -# Subject: O=certSIGN OU=certSIGN ROOT CA -# Label: "certSIGN ROOT CA" -# Serial: 35210227249154 -# MD5 Fingerprint: 18:98:c0:d6:e9:3a:fc:f9:b0:f5:0c:f7:4b:01:44:17 -# SHA1 Fingerprint: fa:b7:ee:36:97:26:62:fb:2d:b0:2a:f6:bf:03:fd:e8:7c:4b:2f:9b -# SHA256 Fingerprint: ea:a9:62:c4:fa:4a:6b:af:eb:e4:15:19:6d:35:1c:cd:88:8d:4f:53:f3:fa:8a:e6:d7:c4:66:a9:4e:60:42:bb ------BEGIN CERTIFICATE----- -MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYT -AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBD -QTAeFw0wNjA3MDQxNzIwMDRaFw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJP -MREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTCC -ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7IJUqOtdu0KBuqV5Do -0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHHrfAQ -UySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5d -RdY4zTW2ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQ -OA7+j0xbm0bqQfWwCHTD0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwv -JoIQ4uNllAoEwF73XVv4EOLQunpL+943AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08C -AwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAcYwHQYDVR0O -BBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IBAQA+0hyJ -LjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecY -MnQ8SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ -44gx+FkagQnIl6Z0x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6I -Jd1hJyMctTEHBDa0GpC9oHRxUIltvBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNw -i/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7NzTogVZ96edhBiIL5VaZVDADlN -9u6wWk5JRFRYX0KD ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Primary Certification Authority - G3 O=GeoTrust Inc. OU=(c) 2008 GeoTrust Inc. - For authorized use only -# Subject: CN=GeoTrust Primary Certification Authority - G3 O=GeoTrust Inc. OU=(c) 2008 GeoTrust Inc. - For authorized use only -# Label: "GeoTrust Primary Certification Authority - G3" -# Serial: 28809105769928564313984085209975885599 -# MD5 Fingerprint: b5:e8:34:36:c9:10:44:58:48:70:6d:2e:83:d4:b8:05 -# SHA1 Fingerprint: 03:9e:ed:b8:0b:e7:a0:3c:69:53:89:3b:20:d2:d9:32:3a:4c:2a:fd -# SHA256 Fingerprint: b4:78:b8:12:25:0d:f8:78:63:5c:2a:a7:ec:7d:15:5e:aa:62:5e:e8:29:16:e2:cd:29:43:61:88:6c:d1:fb:d4 ------BEGIN CERTIFICATE----- -MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCB -mDELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsT -MChjKSAyMDA4IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s -eTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv -cml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIzNTk1OVowgZgxCzAJ -BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg -MjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0 -BgNVBAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg -LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz -+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5jK/BGvESyiaHAKAxJcCGVn2TAppMSAmUm -hsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdEc5IiaacDiGydY8hS2pgn -5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3CIShwiP/W -JmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exAL -DmKudlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC -huOl1UcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw -HQYDVR0OBBYEFMR5yo6hTgMdHNxr2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IB -AQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9cr5HqQ6XErhK8WTTOd8lNNTB -zU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbEAp7aDHdlDkQN -kv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD -AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUH -SJsMC8tJP33st/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2G -spki4cErx5z481+oghLrGREt ------END CERTIFICATE----- - -# Issuer: CN=thawte Primary Root CA - G2 O=thawte, Inc. OU=(c) 2007 thawte, Inc. - For authorized use only -# Subject: CN=thawte Primary Root CA - G2 O=thawte, Inc. OU=(c) 2007 thawte, Inc. - For authorized use only -# Label: "thawte Primary Root CA - G2" -# Serial: 71758320672825410020661621085256472406 -# MD5 Fingerprint: 74:9d:ea:60:24:c4:fd:22:53:3e:cc:3a:72:d9:29:4f -# SHA1 Fingerprint: aa:db:bc:22:23:8f:c4:01:a1:27:bb:38:dd:f4:1d:db:08:9e:f0:12 -# SHA256 Fingerprint: a4:31:0d:50:af:18:a6:44:71:90:37:2a:86:af:af:8b:95:1f:fb:43:1d:83:7f:1e:56:88:b4:59:71:ed:15:57 ------BEGIN CERTIFICATE----- -MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL -MAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMp -IDIwMDcgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAi -BgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMjAeFw0wNzExMDUwMDAw -MDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh -d3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBGb3Ig -YXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9v -dCBDQSAtIEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/ -BebfowJPDQfGAFG6DAJSLSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6 -papu+7qzcMBniKI11KOasf2twu8x+qi58/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8E -BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmtgAMADna3+FGO6Lts6K -DPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUNG4k8VIZ3 -KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41ox -XZ3Krr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== ------END CERTIFICATE----- - -# Issuer: CN=thawte Primary Root CA - G3 O=thawte, Inc. OU=Certification Services Division/(c) 2008 thawte, Inc. - For authorized use only -# Subject: CN=thawte Primary Root CA - G3 O=thawte, Inc. OU=Certification Services Division/(c) 2008 thawte, Inc. - For authorized use only -# Label: "thawte Primary Root CA - G3" -# Serial: 127614157056681299805556476275995414779 -# MD5 Fingerprint: fb:1b:5d:43:8a:94:cd:44:c6:76:f2:43:4b:47:e7:31 -# SHA1 Fingerprint: f1:8b:53:8d:1b:e9:03:b6:a6:f0:56:43:5b:17:15:89:ca:f3:6b:f2 -# SHA256 Fingerprint: 4b:03:f4:58:07:ad:70:f2:1b:fc:2c:ae:71:c9:fd:e4:60:4c:06:4c:f5:ff:b6:86:ba:e5:db:aa:d7:fd:d3:4c ------BEGIN CERTIFICATE----- -MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCB -rjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf -Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw -MDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNV -BAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0wODA0MDIwMDAwMDBa -Fw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3Rl -LCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9u -MTgwNgYDVQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXpl -ZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEcz -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm -gcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2AtP0LMqmsywCPLLEHd5N/8 -YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC+BsUa0Lf -b1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS9 -9irY7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2S -zhkGcuYMXDhpxwTWvGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUk -OQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV -HQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJKoZIhvcNAQELBQADggEBABpA -2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweKA3rD6z8KLFIW -oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu -t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7c -KUGRIjxpp7sC8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fM -m7v/OeZWYdMKp8RcTGB7BXcmer/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZu -MdRAGmI0Nj81Aa6sY6A= ------END CERTIFICATE----- - -# Issuer: CN=GeoTrust Primary Certification Authority - G2 O=GeoTrust Inc. OU=(c) 2007 GeoTrust Inc. - For authorized use only -# Subject: CN=GeoTrust Primary Certification Authority - G2 O=GeoTrust Inc. OU=(c) 2007 GeoTrust Inc. - For authorized use only -# Label: "GeoTrust Primary Certification Authority - G2" -# Serial: 80682863203381065782177908751794619243 -# MD5 Fingerprint: 01:5e:d8:6b:bd:6f:3d:8e:a1:31:f8:12:e0:98:73:6a -# SHA1 Fingerprint: 8d:17:84:d5:37:f3:03:7d:ec:70:fe:57:8b:51:9a:99:e6:10:d7:b0 -# SHA256 Fingerprint: 5e:db:7a:c4:3b:82:a0:6a:87:61:e8:d7:be:49:79:eb:f2:61:1f:7d:d7:9b:f9:1c:1c:6b:56:6a:21:9e:d7:66 ------BEGIN CERTIFICATE----- -MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDEL -MAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChj -KSAyMDA3IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2 -MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 -eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1OVowgZgxCzAJBgNV -BAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykgMjAw -NyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNV -BAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH -MjB2MBAGByqGSM49AgEGBSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcL -So17VDs6bl8VAsBQps8lL33KSLjHUGMcKiEIfJo22Av+0SbFWDEwKCXzXV2juLal -tJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO -BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+EVXVMAoG -CCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGT -qQ7mndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBucz -rD6ogRLQy7rQkgu2npaqBA+K ------END CERTIFICATE----- - -# Issuer: CN=VeriSign Universal Root Certification Authority O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2008 VeriSign, Inc. - For authorized use only -# Subject: CN=VeriSign Universal Root Certification Authority O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2008 VeriSign, Inc. - For authorized use only -# Label: "VeriSign Universal Root Certification Authority" -# Serial: 85209574734084581917763752644031726877 -# MD5 Fingerprint: 8e:ad:b5:01:aa:4d:81:e4:8c:1d:d1:e1:14:00:95:19 -# SHA1 Fingerprint: 36:79:ca:35:66:87:72:30:4d:30:a5:fb:87:3b:0f:a7:7b:b7:0d:54 -# SHA256 Fingerprint: 23:99:56:11:27:a5:71:25:de:8c:ef:ea:61:0d:df:2f:a0:78:b5:c8:06:7f:4e:82:82:90:bf:b8:60:e8:4b:3c ------BEGIN CERTIFICATE----- -MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCB -vTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL -ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJp -U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYDVQQDEy9W -ZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe -Fw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJVUzEX -MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0 -IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9y -IGF1dGhvcml6ZWQgdXNlIG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNh -bCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj1mCOkdeQmIN65lgZOIzF -9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGPMiJhgsWH -H26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+H -LL729fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN -/BMReYTtXlT2NJ8IAfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPT -rJ9VAMf2CGqUuV/c4DPxhGD5WycRtPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1Ud -EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFsw -WTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgs -exkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud -DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4 -sAPmLGd75JR3Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+ -seQxIcaBlVZaDrHC1LGmWazxY8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz -4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTxP/jgdFcrGJ2BtMQo2pSXpXDrrB2+ -BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+PwGZsY6rp2aQW9IHR -lRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4mJO3 -7M2CYfE45k+XmCpajQ== ------END CERTIFICATE----- - -# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2007 VeriSign, Inc. - For authorized use only -# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G4 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2007 VeriSign, Inc. - For authorized use only -# Label: "VeriSign Class 3 Public Primary Certification Authority - G4" -# Serial: 63143484348153506665311985501458640051 -# MD5 Fingerprint: 3a:52:e1:e7:fd:6f:3a:e3:6f:f3:6f:99:1b:f9:22:41 -# SHA1 Fingerprint: 22:d5:d8:df:8f:02:31:d1:8d:f7:9d:b7:cf:8a:2d:64:c9:3f:6c:3a -# SHA256 Fingerprint: 69:dd:d7:ea:90:bb:57:c9:3e:13:5d:c8:5e:a6:fc:d5:48:0b:60:32:39:bd:c4:54:fc:75:8b:2a:26:cf:7f:79 ------BEGIN CERTIFICATE----- -MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjEL -MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW -ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2ln -biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp -U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y -aXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp -U2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwg -SW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2ln -biBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5 -IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8Utpkmw4tXNherJI9/gHm -GUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGzrl0Bp3ve -fLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUw -AwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJ -aW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYj -aHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMW -kf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMDA2gAMGUCMGYhDBgmYFo4e1ZC -4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIxAJw9SDkjOVga -FRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== ------END CERTIFICATE----- - -# Issuer: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services) -# Subject: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services) -# Label: "NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny" -# Serial: 80544274841616 -# MD5 Fingerprint: c5:a1:b7:ff:73:dd:d6:d7:34:32:18:df:fc:3c:ad:88 -# SHA1 Fingerprint: 06:08:3f:59:3f:15:a1:04:a0:69:a4:6b:a9:03:d0:06:b7:97:09:91 -# SHA256 Fingerprint: 6c:61:da:c3:a2:de:f0:31:50:6b:e0:36:d2:a6:fe:40:19:94:fb:d1:3d:f9:c8:d4:66:59:92:74:c4:46:ec:98 ------BEGIN CERTIFICATE----- -MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG -EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3 -MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl -cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR -dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB -pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM -b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm -aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz -IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A -MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT -lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz -AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5 -VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG -ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2 -BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG -AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M -U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh -bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C -+C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC -bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F -uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2 -XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= ------END CERTIFICATE----- - -# Issuer: CN=Staat der Nederlanden Root CA - G2 O=Staat der Nederlanden -# Subject: CN=Staat der Nederlanden Root CA - G2 O=Staat der Nederlanden -# Label: "Staat der Nederlanden Root CA - G2" -# Serial: 10000012 -# MD5 Fingerprint: 7c:a5:0f:f8:5b:9a:7d:6d:30:ae:54:5a:e3:42:a2:8a -# SHA1 Fingerprint: 59:af:82:79:91:86:c7:b4:75:07:cb:cf:03:57:46:eb:04:dd:b7:16 -# SHA256 Fingerprint: 66:8c:83:94:7d:a6:3b:72:4b:ec:e1:74:3c:31:a0:e6:ae:d0:db:8e:c5:b3:1b:e3:77:bb:78:4f:91:b6:71:6f ------BEGIN CERTIFICATE----- -MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO -TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh -dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oX -DTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl -ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv -b3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ5291 -qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8Sp -uOUfiUtnvWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPU -Z5uW6M7XxgpT0GtJlvOjCwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvE -pMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiile7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp -5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCROME4HYYEhLoaJXhena/M -UGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpICT0ugpTN -GmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy -5V6548r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv -6q012iDTiIJh8BIitrzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEK -eN5KzlW/HdXZt1bv8Hb/C3m1r737qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6 -B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMBAAGjgZcwgZQwDwYDVR0TAQH/ -BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcCARYxaHR0cDov -L3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV -HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqG -SIb3DQEBCwUAA4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLyS -CZa59sCrI2AGeYwRTlHSeYAz+51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen -5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwjf/ST7ZwaUb7dRUG/kSS0H4zpX897 -IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaNkqbG9AclVMwWVxJK -gnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfkCpYL -+63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxL -vJxxcypFURmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkm -bEgeqmiSBeGCc1qb3AdbCG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvk -N1trSt8sV4pAWja63XVECDdCcAz+3F4hoKOKwJCcaNpQ5kUQR3i2TtJlycM33+FC -Y7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoVIPVVYpbtbZNQvOSqeK3Z -ywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm66+KAQ== ------END CERTIFICATE----- - -# Issuer: CN=Hongkong Post Root CA 1 O=Hongkong Post -# Subject: CN=Hongkong Post Root CA 1 O=Hongkong Post -# Label: "Hongkong Post Root CA 1" -# Serial: 1000 -# MD5 Fingerprint: a8:0d:6f:39:78:b9:43:6d:77:42:6d:98:5a:cc:23:ca -# SHA1 Fingerprint: d6:da:a8:20:8d:09:d2:15:4d:24:b5:2f:cb:34:6e:b2:58:b2:8a:58 -# SHA256 Fingerprint: f9:e6:7d:33:6c:51:00:2a:c0:54:c6:32:02:2d:66:dd:a2:e7:e3:ff:f1:0a:d0:61:ed:31:d8:bb:b4:10:cf:b2 ------BEGIN CERTIFICATE----- -MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsx -FjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg -Um9vdCBDQSAxMB4XDTAzMDUxNTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkG -A1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdr -b25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1ApzQ -jVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEn -PzlTCeqrauh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjh -ZY4bXSNmO7ilMlHIhqqhqZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9 -nnV0ttgCXjqQesBCNnLsak3c78QA3xMYV18meMjWCnl3v/evt3a5pQuEF10Q6m/h -q5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNVHRMBAf8ECDAGAQH/AgED -MA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7ih9legYsC -mEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI3 -7piol7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clB -oiMBdDhViw+5LmeiIAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJs -EhTkYY2sEJCehFC78JZvRZ+K88psT/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpO -fMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilTc4afU9hDDl3WY4JxHYB0yvbi -AmvZWg== ------END CERTIFICATE----- - -# Issuer: CN=SecureSign RootCA11 O=Japan Certification Services, Inc. -# Subject: CN=SecureSign RootCA11 O=Japan Certification Services, Inc. -# Label: "SecureSign RootCA11" -# Serial: 1 -# MD5 Fingerprint: b7:52:74:e2:92:b4:80:93:f2:75:e4:cc:d7:f2:ea:26 -# SHA1 Fingerprint: 3b:c4:9f:48:f8:f3:73:a0:9c:1e:bd:f8:5b:b1:c3:65:c7:d8:11:b3 -# SHA256 Fingerprint: bf:0f:ee:fb:9e:3a:58:1a:d5:f9:e9:db:75:89:98:57:43:d2:61:08:5c:4d:31:4f:6f:5d:72:59:aa:42:16:12 ------BEGIN CERTIFICATE----- -MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDEr -MCkGA1UEChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoG -A1UEAxMTU2VjdXJlU2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0 -MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZp -Y2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1cmVTaWduIFJvb3RD -QTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvLTJsz -i1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8 -h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOV -MdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9 -UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni -8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsC -h8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYD -VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB -AKChOBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm -KbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQ -X5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWr -QbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR7SXf+Of5 -pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN -QSdJQO7e5iNEOdyhIta6A/I= ------END CERTIFICATE----- - -# Issuer: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd. -# Subject: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd. -# Label: "Microsec e-Szigno Root CA 2009" -# Serial: 14014712776195784473 -# MD5 Fingerprint: f8:49:f4:03:bc:44:2d:83:be:48:69:7d:29:64:fc:b1 -# SHA1 Fingerprint: 89:df:74:fe:5c:f4:0f:4a:80:f9:e3:37:7d:54:da:91:e1:01:31:8e -# SHA256 Fingerprint: 3c:5f:81:fe:a5:fa:b8:2c:64:bf:a2:ea:ec:af:cd:e8:e0:77:fc:86:20:a7:ca:e5:37:16:3d:f3:6e:db:f3:78 ------BEGIN CERTIFICATE----- -MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD -VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 -ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G -CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y -OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx -FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp -Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o -dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP -kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc -cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U -fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7 -N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC -xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1 -+rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G -A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM -Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG -SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h -mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk -ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 -tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c -2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t -HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW ------END CERTIFICATE----- - -# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3 -# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3 -# Label: "GlobalSign Root CA - R3" -# Serial: 4835703278459759426209954 -# MD5 Fingerprint: c5:df:b8:49:ca:05:13:55:ee:2d:ba:1a:c3:3e:b0:28 -# SHA1 Fingerprint: d6:9b:56:11:48:f0:1c:77:c5:45:78:c1:09:26:df:5b:85:69:76:ad -# SHA256 Fingerprint: cb:b5:22:d7:b7:f1:27:ad:6a:01:13:86:5b:df:1c:d4:10:2e:7d:07:59:af:63:5a:7c:f4:72:0d:c9:63:c5:3b ------BEGIN CERTIFICATE----- -MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G -A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp -Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 -MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG -A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 -RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT -gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm -KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd -QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ -XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw -DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o -LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU -RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp -jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK -6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX -mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs -Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH -WD9f ------END CERTIFICATE----- - -# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068 -# Subject: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068 -# Label: "Autoridad de Certificacion Firmaprofesional CIF A62634068" -# Serial: 6047274297262753887 -# MD5 Fingerprint: 73:3a:74:7a:ec:bb:a3:96:a6:c2:e4:e2:c8:9b:c0:c3 -# SHA1 Fingerprint: ae:c5:fb:3f:c8:e1:bf:c4:e5:4f:03:07:5a:9a:e8:00:b7:f7:b6:fa -# SHA256 Fingerprint: 04:04:80:28:bf:1f:28:64:d4:8f:9a:d4:d8:32:94:36:6a:82:88:56:55:3f:3b:14:30:3f:90:14:7f:5d:40:ef ------BEGIN CERTIFICATE----- -MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UE -BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h -cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEy -MzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg -Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi -MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9 -thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM -cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG -L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i -NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h -X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b -m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy -Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja -EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T -KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF -6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh -OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD -VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNHDhpkLzCBpgYD -VR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp -cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBv -ACAAZABlACAAbABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBl -AGwAbwBuAGEAIAAwADgAMAAxADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF -661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx51tkljYyGOylMnfX40S2wBEqgLk9 -am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qkR71kMrv2JYSiJ0L1 -ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaPT481 -PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS -3a/DTg4fJl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5k -SeTy36LssUzAKh3ntLFlosS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF -3dvd6qJ2gHN99ZwExEWN57kci57q13XRcrHedUTnQn3iV2t93Jm8PYMo6oCTjcVM -ZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoRsaS8I8nkvof/uZS2+F0g -StRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTDKCOM/icz -Q0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQB -jLMi6Et8Vcad+qMUu2WFbm5PEn4KPJ2V ------END CERTIFICATE----- - -# Issuer: CN=Izenpe.com O=IZENPE S.A. -# Subject: CN=Izenpe.com O=IZENPE S.A. -# Label: "Izenpe.com" -# Serial: 917563065490389241595536686991402621 -# MD5 Fingerprint: a6:b0:cd:85:80:da:5c:50:34:a3:39:90:2f:55:67:73 -# SHA1 Fingerprint: 2f:78:3d:25:52:18:a7:4a:65:39:71:b5:2c:a2:9c:45:15:6f:e9:19 -# SHA256 Fingerprint: 25:30:cc:8e:98:32:15:02:ba:d9:6f:9b:1f:ba:1b:09:9e:2d:29:9e:0f:45:48:bb:91:4f:36:3b:c0:d4:53:1f ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- - -# Issuer: CN=Chambers of Commerce Root - 2008 O=AC Camerfirma S.A. -# Subject: CN=Chambers of Commerce Root - 2008 O=AC Camerfirma S.A. -# Label: "Chambers of Commerce Root - 2008" -# Serial: 11806822484801597146 -# MD5 Fingerprint: 5e:80:9e:84:5a:0e:65:0b:17:02:f3:55:18:2a:3e:d7 -# SHA1 Fingerprint: 78:6a:74:ac:76:ab:14:7f:9c:6a:30:50:ba:9e:a8:7e:fe:9a:ce:3c -# SHA256 Fingerprint: 06:3e:4a:fa:c4:91:df:d3:32:f3:08:9b:85:42:e9:46:17:d8:93:d7:fe:94:4e:10:a7:93:7e:e2:9d:96:93:c0 ------BEGIN CERTIFICATE----- -MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD -VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 -IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 -MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xKTAnBgNVBAMTIENoYW1iZXJz -IG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEyMjk1MFoXDTM4MDcz -MTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBj -dXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIw -EAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEp -MCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0G -CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW9 -28sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKAXuFixrYp4YFs8r/lfTJq -VKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorjh40G072Q -DuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR -5gN/ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL -ZEFHcpOrUMPrCXZkNNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05a -Sd+pZgvMPMZ4fKecHePOjlO+Bd5gD2vlGts/4+EhySnB8esHnFIbAURRPHsl18Tl -UlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331lubKgdaX8ZSD6e2wsWsSaR6s -+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ0wlf2eOKNcx5 -Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj -ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAx -hduub+84Mxh2EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNV -HQ4EFgQU+SSsD7K1+HnA+mCIG8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1 -+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpN -YWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29t -L2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVy -ZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAt -IDIwMDiCCQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRV -HSAAMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20w -DQYJKoZIhvcNAQEFBQADggIBAJASryI1wqM58C7e6bXpeHxIvj99RZJe6dqxGfwW -PJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH3qLPaYRgM+gQDROpI9CF -5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbURWpGqOt1 -glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaH -FoI6M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2 -pSB7+R5KBWIBpih1YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MD -xvbxrN8y8NmBGuScvfaAFPDRLLmF9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QG -tjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcKzBIKinmwPQN/aUv0NCB9szTq -jktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvGnrDQWzilm1De -fhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg -OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZ -d0jQ ------END CERTIFICATE----- - -# Issuer: CN=Global Chambersign Root - 2008 O=AC Camerfirma S.A. -# Subject: CN=Global Chambersign Root - 2008 O=AC Camerfirma S.A. -# Label: "Global Chambersign Root - 2008" -# Serial: 14541511773111788494 -# MD5 Fingerprint: 9e:80:ff:78:01:0c:2e:c1:36:bd:fe:96:90:6e:08:f3 -# SHA1 Fingerprint: 4a:bd:ee:ec:95:0d:35:9c:89:ae:c7:52:a1:2c:5b:29:f6:d6:aa:0c -# SHA256 Fingerprint: 13:63:35:43:93:34:a7:69:80:16:a0:d3:24:de:72:28:4e:07:9d:7b:52:20:bb:8f:bd:74:78:16:ee:be:ba:ca ------BEGIN CERTIFICATE----- -MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYD -VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 -IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 -MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD -aGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMxNDBaFw0zODA3MzEx -MjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3Vy -cmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAG -A1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAl -BgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZI -hvcNAQEBBQADggIPADCCAgoCggIBAMDfVtPkOpt2RbQT2//BthmLN0EYlVJH6xed -KYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXfXjaOcNFccUMd2drvXNL7 -G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0ZJJ0YPP2 -zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4 -ddPB/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyG -HoiMvvKRhI9lNNgATH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2 -Id3UwD2ln58fQ1DJu7xsepeY7s2MH/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3V -yJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfeOx2YItaswTXbo6Al/3K1dh3e -beksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSFHTynyQbehP9r -6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh -wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsog -zCtLkykPAgMBAAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW -BBS5CcqcHtvTbDprru1U8VuTBjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDpr -ru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UEBhMCRVUxQzBBBgNVBAcTOk1hZHJp -ZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJmaXJtYS5jb20vYWRk -cmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJmaXJt -YSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiC -CQDJzdPp1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCow -KAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZI -hvcNAQEFBQADggIBAICIf3DekijZBZRG/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZ -UohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6ReAJ3spED8IXDneRRXoz -X1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/sdZ7LoR/x -fxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVz -a2Mg9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yyd -Yhz2rXzdpjEetrHHfoUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMd -SqlapskD7+3056huirRXhOukP9DuqqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9O -AP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETrP3iZ8ntxPjzxmKfFGBI/5rso -M0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVqc5iJWzouE4ge -v8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z -09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B ------END CERTIFICATE----- - -# Issuer: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. -# Subject: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. -# Label: "Go Daddy Root Certificate Authority - G2" -# Serial: 0 -# MD5 Fingerprint: 80:3a:bc:22:c1:e6:fb:8d:9b:3b:27:4a:32:1b:9a:01 -# SHA1 Fingerprint: 47:be:ab:c9:22:ea:e8:0e:78:78:34:62:a7:9f:45:c2:54:fd:e6:8b -# SHA256 Fingerprint: 45:14:0b:32:47:eb:9c:c8:c5:b4:f0:d7:b5:30:91:f7:32:92:08:9e:6e:5a:63:e2:74:9d:d3:ac:a9:19:8e:da ------BEGIN CERTIFICATE----- -MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx -EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT -EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp -ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz -NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH -EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE -AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw -DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD -E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH -/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy -DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh -GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR -tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA -AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE -FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX -WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu -9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr -gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo -2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO -LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI -4uJEvlz36hz1 ------END CERTIFICATE----- - -# Issuer: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc. -# Subject: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc. -# Label: "Starfield Root Certificate Authority - G2" -# Serial: 0 -# MD5 Fingerprint: d6:39:81:c6:52:7e:96:69:fc:fc:ca:66:ed:05:f2:96 -# SHA1 Fingerprint: b5:1c:06:7c:ee:2b:0c:3d:f8:55:ab:2d:92:f4:fe:39:d4:e7:0f:0e -# SHA256 Fingerprint: 2c:e1:cb:0b:f9:d2:f9:e1:02:99:3f:be:21:51:52:c3:b2:dd:0c:ab:de:1c:68:e5:31:9b:83:91:54:db:b7:f5 ------BEGIN CERTIFICATE----- -MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx -EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT -HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs -ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw -MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 -b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj -aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp -Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg -nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1 -HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N -Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN -dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0 -HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO -BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G -CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU -sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3 -4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg -8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K -pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1 -mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 ------END CERTIFICATE----- - -# Issuer: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc. -# Subject: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc. -# Label: "Starfield Services Root Certificate Authority - G2" -# Serial: 0 -# MD5 Fingerprint: 17:35:74:af:7b:61:1c:eb:f4:f9:3c:e2:ee:40:f9:a2 -# SHA1 Fingerprint: 92:5a:8f:8d:2c:6d:04:e0:66:5f:59:6a:ff:22:d8:63:e8:25:6f:3f -# SHA256 Fingerprint: 56:8d:69:05:a2:c8:87:08:a4:b3:02:51:90:ed:cf:ed:b1:97:4a:60:6a:13:c6:e5:29:0f:cb:2a:e6:3e:da:b5 ------BEGIN CERTIFICATE----- -MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx -EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT -HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs -ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 -MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD -VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy -ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy -dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p -OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 -8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K -Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe -hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk -6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw -DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q -AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI -bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB -ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z -qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd -iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn -0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN -sSi6 ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Commercial O=AffirmTrust -# Subject: CN=AffirmTrust Commercial O=AffirmTrust -# Label: "AffirmTrust Commercial" -# Serial: 8608355977964138876 -# MD5 Fingerprint: 82:92:ba:5b:ef:cd:8a:6f:a6:3d:55:f9:84:f6:d6:b7 -# SHA1 Fingerprint: f9:b5:b6:32:45:5f:9c:be:ec:57:5f:80:dc:e9:6e:2c:c7:b2:78:b7 -# SHA256 Fingerprint: 03:76:ab:1d:54:c5:f9:80:3c:e4:b2:e2:01:a0:ee:7e:ef:7b:57:b6:36:e8:a9:3c:9b:8d:48:60:c9:6f:5f:a7 ------BEGIN CERTIFICATE----- -MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz -dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL -MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp -cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP -Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr -ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL -MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1 -yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr -VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/ -nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ -KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG -XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj -vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt -Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g -N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC -nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Networking O=AffirmTrust -# Subject: CN=AffirmTrust Networking O=AffirmTrust -# Label: "AffirmTrust Networking" -# Serial: 8957382827206547757 -# MD5 Fingerprint: 42:65:ca:be:01:9a:9a:4c:a9:8c:41:49:cd:c0:d5:7f -# SHA1 Fingerprint: 29:36:21:02:8b:20:ed:02:f5:66:c5:32:d1:d6:ed:90:9f:45:00:2f -# SHA256 Fingerprint: 0a:81:ec:5a:92:97:77:f1:45:90:4a:f3:8d:5d:50:9f:66:b5:e2:c5:8f:cd:b5:31:05:8b:0e:17:f3:f0:b4:1b ------BEGIN CERTIFICATE----- -MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz -dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL -MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp -cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y -YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua -kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL -QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp -6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG -yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i -QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ -KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO -tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu -QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ -Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u -olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48 -x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Premium O=AffirmTrust -# Subject: CN=AffirmTrust Premium O=AffirmTrust -# Label: "AffirmTrust Premium" -# Serial: 7893706540734352110 -# MD5 Fingerprint: c4:5d:0e:48:b6:ac:28:30:4e:0a:bc:f9:38:16:87:57 -# SHA1 Fingerprint: d8:a6:33:2c:e0:03:6f:b1:85:f6:63:4f:7d:6a:06:65:26:32:28:27 -# SHA256 Fingerprint: 70:a7:3f:7f:37:6b:60:07:42:48:90:45:34:b1:14:82:d5:bf:0e:69:8e:cc:49:8d:f5:25:77:eb:f2:e9:3b:9a ------BEGIN CERTIFICATE----- -MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz -dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG -A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U -cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf -qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ -JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ -+jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS -s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5 -HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7 -70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG -V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S -qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S -5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia -C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX -OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE -FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ -BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2 -KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg -Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B -8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ -MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc -0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ -u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF -u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH -YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8 -GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO -RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e -KeC2uAloGRwYQw== ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Premium ECC O=AffirmTrust -# Subject: CN=AffirmTrust Premium ECC O=AffirmTrust -# Label: "AffirmTrust Premium ECC" -# Serial: 8401224907861490260 -# MD5 Fingerprint: 64:b0:09:55:cf:b1:d5:99:e2:be:13:ab:a6:5d:ea:4d -# SHA1 Fingerprint: b8:23:6b:00:2f:1d:16:86:53:01:55:6c:11:a4:37:ca:eb:ff:c3:bb -# SHA256 Fingerprint: bd:71:fd:f6:da:97:e4:cf:62:d1:64:7a:dd:25:81:b0:7d:79:ad:f8:39:7e:b4:ec:ba:9c:5e:84:88:82:14:23 ------BEGIN CERTIFICATE----- -MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC -VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ -cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ -BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt -VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D -0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9 -ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G -A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G -A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs -aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I -flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ== ------END CERTIFICATE----- - -# Issuer: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority -# Subject: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority -# Label: "Certum Trusted Network CA" -# Serial: 279744 -# MD5 Fingerprint: d5:e9:81:40:c5:18:69:fc:46:2c:89:75:62:0f:aa:78 -# SHA1 Fingerprint: 07:e0:32:e0:20:b7:2c:3f:19:2f:06:28:a2:59:3a:19:a7:0f:06:9e -# SHA256 Fingerprint: 5c:58:46:8d:55:f5:8e:49:7e:74:39:82:d2:b5:00:10:b6:d1:65:37:4a:cf:83:a7:d4:a3:2d:b7:68:c4:40:8e ------BEGIN CERTIFICATE----- -MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM -MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D -ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU -cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3 -WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg -Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw -IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B -AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH -UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM -TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU -BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM -kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x -AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV -HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV -HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y -sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL -I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8 -J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY -VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI -03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= ------END CERTIFICATE----- - -# Issuer: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA -# Subject: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA -# Label: "TWCA Root Certification Authority" -# Serial: 1 -# MD5 Fingerprint: aa:08:8f:f6:f9:7b:b7:f2:b1:a7:1e:9b:ea:ea:bd:79 -# SHA1 Fingerprint: cf:9e:87:6d:d3:eb:fc:42:26:97:a3:b5:a3:7a:a0:76:a9:06:23:48 -# SHA256 Fingerprint: bf:d8:8f:e1:10:1c:41:ae:3e:80:1b:f8:be:56:35:0e:e9:ba:d1:a6:b9:bd:51:5e:dc:5c:6d:5b:87:11:ac:44 ------BEGIN CERTIFICATE----- -MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES -MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU -V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz -WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO -LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm -aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE -AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH -K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX -RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z -rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx -3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV -HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq -hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC -MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls -XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D -lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn -aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ -YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== ------END CERTIFICATE----- - -# Issuer: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2 -# Subject: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2 -# Label: "Security Communication RootCA2" -# Serial: 0 -# MD5 Fingerprint: 6c:39:7d:a4:0e:55:59:b2:3f:d6:41:b1:12:50:de:43 -# SHA1 Fingerprint: 5f:3b:8c:f2:f8:10:b3:7d:78:b4:ce:ec:19:19:c3:73:34:b9:c7:74 -# SHA256 Fingerprint: 51:3b:2c:ec:b8:10:d4:cd:e5:dd:85:39:1a:df:c6:c2:dd:60:d8:7b:b7:36:d2:b5:21:48:4a:a4:7a:0e:be:f6 ------BEGIN CERTIFICATE----- -MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl -MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe -U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX -DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy -dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj -YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV -OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr -zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM -VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ -hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO -ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw -awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs -OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 -DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF -coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc -okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8 -t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy -1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/ -SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 ------END CERTIFICATE----- - -# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2011 O=Hellenic Academic and Research Institutions Cert. Authority -# Subject: CN=Hellenic Academic and Research Institutions RootCA 2011 O=Hellenic Academic and Research Institutions Cert. Authority -# Label: "Hellenic Academic and Research Institutions RootCA 2011" -# Serial: 0 -# MD5 Fingerprint: 73:9f:4c:4b:73:5b:79:e9:fa:ba:1c:ef:6e:cb:d5:c9 -# SHA1 Fingerprint: fe:45:65:9b:79:03:5b:98:a1:61:b5:51:2e:ac:da:58:09:48:22:4d -# SHA256 Fingerprint: bc:10:4f:15:a4:8b:e7:09:dc:a5:42:a7:e1:d4:b9:df:6f:05:45:27:e8:02:ea:a9:2d:59:54:44:25:8a:fe:71 ------BEGIN CERTIFICATE----- -MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1Ix -RDBCBgNVBAoTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 -dGlvbnMgQ2VydC4gQXV0aG9yaXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1p -YyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFJvb3RDQSAyMDExMB4XDTExMTIw -NjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYTAkdSMUQwQgYDVQQK -EztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIENl -cnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl -c2VhcmNoIEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEB -BQADggEPADCCAQoCggEBAKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPz -dYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJ -fel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa71HFK9+WXesyHgLacEns -bgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u8yBRQlqD -75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSP -FEDH3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNV -HRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp -5dgTBCPuQSUwRwYDVR0eBEAwPqA8MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQu -b3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQub3JnMA0GCSqGSIb3DQEBBQUA -A4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVtXdMiKahsog2p -6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 -TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7 -dIsXRSZMFpGD/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8Acys -Nnq/onN694/BtZqhFLKPM58N7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXI -l7WdmplNsDz4SgCbZN2fOUvRJ9e4 ------END CERTIFICATE----- - -# Issuer: CN=Actalis Authentication Root CA O=Actalis S.p.A./03358520967 -# Subject: CN=Actalis Authentication Root CA O=Actalis S.p.A./03358520967 -# Label: "Actalis Authentication Root CA" -# Serial: 6271844772424770508 -# MD5 Fingerprint: 69:c1:0d:4f:07:a3:1b:c3:fe:56:3d:04:bc:11:f6:a6 -# SHA1 Fingerprint: f3:73:b3:87:06:5a:28:84:8a:f2:f3:4a:ce:19:2b:dd:c7:8e:9c:ac -# SHA256 Fingerprint: 55:92:60:84:ec:96:3a:64:b9:6e:2a:be:01:ce:0b:a8:6a:64:fb:fe:bc:c7:aa:b5:af:c1:55:b3:7f:d7:60:66 ------BEGIN CERTIFICATE----- -MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE -BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w -MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 -IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC -SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1 -ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB -MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv -UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX -4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9 -KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/ -gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb -rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ -51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F -be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe -KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F -v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn -fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7 -jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz -ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt -ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL -e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70 -jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz -WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V -SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j -pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX -X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok -fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R -K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU -ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU -LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT -LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== ------END CERTIFICATE----- - -# Issuer: O=Trustis Limited OU=Trustis FPS Root CA -# Subject: O=Trustis Limited OU=Trustis FPS Root CA -# Label: "Trustis FPS Root CA" -# Serial: 36053640375399034304724988975563710553 -# MD5 Fingerprint: 30:c9:e7:1e:6b:e6:14:eb:65:b2:16:69:20:31:67:4d -# SHA1 Fingerprint: 3b:c0:38:0b:33:c3:f6:a6:0c:86:15:22:93:d9:df:f5:4b:81:c0:04 -# SHA256 Fingerprint: c1:b4:82:99:ab:a5:20:8f:e9:63:0a:ce:55:ca:68:a0:3e:da:5a:51:9c:88:02:a0:d3:a6:73:be:8f:8e:55:7d ------BEGIN CERTIFICATE----- -MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBF -MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQL -ExNUcnVzdGlzIEZQUyBSb290IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTEx -MzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNVBAoTD1RydXN0aXMgTGltaXRlZDEc -MBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQRUN+ -AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihH -iTHcDnlkH5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjj -vSkCqPoc4Vu5g6hBSLwacY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA -0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zto3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlB -OrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEAAaNTMFEwDwYDVR0TAQH/ -BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAdBgNVHQ4E -FgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01 -GX2cGE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmW -zaD+vkAMXBJV+JOCyinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP4 -1BIy+Q7DsdwyhEQsb8tGD+pmQQ9P8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZE -f1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHVl/9D7S3B2l0pKoU/rGXuhg8F -jZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYliB6XzCGcKQEN -ZetX2fNXlrtIzYE= ------END CERTIFICATE----- - -# Issuer: CN=Buypass Class 2 Root CA O=Buypass AS-983163327 -# Subject: CN=Buypass Class 2 Root CA O=Buypass AS-983163327 -# Label: "Buypass Class 2 Root CA" -# Serial: 2 -# MD5 Fingerprint: 46:a7:d2:fe:45:fb:64:5a:a8:59:90:9b:78:44:9b:29 -# SHA1 Fingerprint: 49:0a:75:74:de:87:0a:47:fe:58:ee:f6:c7:6b:eb:c6:0b:12:40:99 -# SHA256 Fingerprint: 9a:11:40:25:19:7c:5b:b9:5d:94:e6:3d:55:cd:43:79:08:47:b6:46:b2:3c:df:11:ad:a4:a0:0e:ff:15:fb:48 ------BEGIN CERTIFICATE----- -MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd -MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg -Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow -TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw -HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB -BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr -6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV -L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91 -1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx -MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ -QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB -arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr -Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi -FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS -P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN -9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP -AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz -uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h -9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s -A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t -OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo -+fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7 -KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2 -DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us -H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ -I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7 -5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h -3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz -Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA= ------END CERTIFICATE----- - -# Issuer: CN=Buypass Class 3 Root CA O=Buypass AS-983163327 -# Subject: CN=Buypass Class 3 Root CA O=Buypass AS-983163327 -# Label: "Buypass Class 3 Root CA" -# Serial: 2 -# MD5 Fingerprint: 3d:3b:18:9e:2c:64:5a:e8:d5:88:ce:0e:f9:37:c2:ec -# SHA1 Fingerprint: da:fa:f7:fa:66:84:ec:06:8f:14:50:bd:c7:c2:81:a5:bc:a9:64:57 -# SHA256 Fingerprint: ed:f7:eb:bc:a2:7a:2a:38:4d:38:7b:7d:40:10:c6:66:e2:ed:b4:84:3e:4c:29:b4:ae:1d:5b:93:32:e6:b2:4d ------BEGIN CERTIFICATE----- -MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd -MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg -Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow -TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw -HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB -BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y -ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E -N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9 -tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX -0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c -/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X -KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY -zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS -O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D -34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP -K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3 -AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv -Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj -QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV -cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS -IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2 -HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa -O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv -033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u -dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE -kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41 -3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD -u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq -4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc= ------END CERTIFICATE----- - -# Issuer: CN=T-TeleSec GlobalRoot Class 3 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center -# Subject: CN=T-TeleSec GlobalRoot Class 3 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center -# Label: "T-TeleSec GlobalRoot Class 3" -# Serial: 1 -# MD5 Fingerprint: ca:fb:40:a8:4e:39:92:8a:1d:fe:8e:2f:c4:27:ea:ef -# SHA1 Fingerprint: 55:a6:72:3e:cb:f2:ec:cd:c3:23:74:70:19:9d:2a:be:11:e3:81:d1 -# SHA256 Fingerprint: fd:73:da:d3:1c:64:4f:f1:b4:3b:ef:0c:cd:da:96:71:0b:9c:d9:87:5e:ca:7e:31:70:7a:f3:e9:6d:52:2b:bd ------BEGIN CERTIFICATE----- -MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx -KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd -BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl -YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1 -OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy -aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 -ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN -8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/ -RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4 -hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5 -ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM -EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj -QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1 -A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy -WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ -1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30 -6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT -91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml -e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p -TpPDpFQUWw== ------END CERTIFICATE----- - -# Issuer: CN=EE Certification Centre Root CA O=AS Sertifitseerimiskeskus -# Subject: CN=EE Certification Centre Root CA O=AS Sertifitseerimiskeskus -# Label: "EE Certification Centre Root CA" -# Serial: 112324828676200291871926431888494945866 -# MD5 Fingerprint: 43:5e:88:d4:7d:1a:4a:7e:fd:84:2e:52:eb:01:d4:6f -# SHA1 Fingerprint: c9:a8:b9:e7:55:80:5e:58:e3:53:77:a7:25:eb:af:c3:7b:27:cc:d7 -# SHA256 Fingerprint: 3e:84:ba:43:42:90:85:16:e7:75:73:c0:99:2f:09:79:ca:08:4e:46:85:68:1f:f1:95:cc:ba:8a:22:9b:8a:76 ------BEGIN CERTIFICATE----- -MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1 -MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1 -czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG -CSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIwMTAxMDMwMTAxMDMwWhgPMjAzMDEy -MTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlBUyBTZXJ0aWZpdHNl -ZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRyZSBS -b290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEB -AQUAA4IBDwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUy -euuOF0+W2Ap7kaJjbMeMTC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvO -bntl8jixwKIy72KyaOBhU8E2lf/slLo2rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIw -WFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw93X2PaRka9ZP585ArQ/d -MtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtNP2MbRMNE -1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYD -VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/ -zQas8fElyalL1BSZMEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYB -BQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEF -BQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+RjxY6hUFaTlrg4wCQiZrxTFGGV -v9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqMlIpPnTX/dqQG -E5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u -uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIW -iAYLtqZLICjU3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/v -GVCJYMzpJJUPwssd8m92kMfMdcGWxZ0= ------END CERTIFICATE----- - -# Issuer: CN=D-TRUST Root Class 3 CA 2 2009 O=D-Trust GmbH -# Subject: CN=D-TRUST Root Class 3 CA 2 2009 O=D-Trust GmbH -# Label: "D-TRUST Root Class 3 CA 2 2009" -# Serial: 623603 -# MD5 Fingerprint: cd:e0:25:69:8d:47:ac:9c:89:35:90:f7:fd:51:3d:2f -# SHA1 Fingerprint: 58:e8:ab:b0:36:15:33:fb:80:f7:9b:1b:6d:29:d3:ff:8d:5f:00:f0 -# SHA256 Fingerprint: 49:e7:a4:42:ac:f0:ea:62:87:05:00:54:b5:25:64:b6:50:e4:f4:9e:42:e3:48:d6:aa:38:e0:39:e9:57:b1:c1 ------BEGIN CERTIFICATE----- -MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF -MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD -bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha -ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM -HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB -BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03 -UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42 -tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R -ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM -lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp -/hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G -A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G -A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj -dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy -MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl -cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js -L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL -BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni -acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 -o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K -zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8 -PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y -Johw1+qRzT65ysCQblrGXnRl11z+o+I= ------END CERTIFICATE----- - -# Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009 O=D-Trust GmbH -# Subject: CN=D-TRUST Root Class 3 CA 2 EV 2009 O=D-Trust GmbH -# Label: "D-TRUST Root Class 3 CA 2 EV 2009" -# Serial: 623604 -# MD5 Fingerprint: aa:c6:43:2c:5e:2d:cd:c4:34:c0:50:4f:11:02:4f:b6 -# SHA1 Fingerprint: 96:c9:1b:0b:95:b4:10:98:42:fa:d0:d8:22:79:fe:60:fa:b9:16:83 -# SHA256 Fingerprint: ee:c5:49:6b:98:8c:e9:86:25:b9:34:09:2e:ec:29:08:be:d0:b0:f3:16:c2:d4:73:0c:84:ea:f1:f3:d3:48:81 ------BEGIN CERTIFICATE----- -MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF -MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD -bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw -NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV -BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn -ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0 -3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z -qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR -p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8 -HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw -ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea -HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw -Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh -c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E -RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt -dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku -Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp -3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 -nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF -CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na -xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX -KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1 ------END CERTIFICATE----- - -# Issuer: CN=CA Disig Root R2 O=Disig a.s. -# Subject: CN=CA Disig Root R2 O=Disig a.s. -# Label: "CA Disig Root R2" -# Serial: 10572350602393338211 -# MD5 Fingerprint: 26:01:fb:d8:27:a7:17:9a:45:54:38:1a:43:01:3b:03 -# SHA1 Fingerprint: b5:61:eb:ea:a4:de:e4:25:4b:69:1a:98:a5:57:47:c2:34:c7:d9:71 -# SHA256 Fingerprint: e2:3d:4a:03:6d:7b:70:e9:f5:95:b1:42:20:79:d2:b9:1e:df:bb:1f:b6:51:a0:63:3e:aa:8a:9d:c5:f8:07:03 ------BEGIN CERTIFICATE----- -MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV -BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu -MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy -MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx -EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw -ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe -NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH -PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I -x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe -QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR -yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO -QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912 -H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ -QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD -i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs -nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1 -rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud -DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI -hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM -tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf -GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb -lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka -+elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal -TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i -nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3 -gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr -G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os -zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x -L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL ------END CERTIFICATE----- - -# Issuer: CN=ACCVRAIZ1 O=ACCV OU=PKIACCV -# Subject: CN=ACCVRAIZ1 O=ACCV OU=PKIACCV -# Label: "ACCVRAIZ1" -# Serial: 6828503384748696800 -# MD5 Fingerprint: d0:a0:5a:ee:05:b6:09:94:21:a1:7d:f1:b2:29:82:02 -# SHA1 Fingerprint: 93:05:7a:88:15:c6:4f:ce:88:2f:fa:91:16:52:28:78:bc:53:64:17 -# SHA256 Fingerprint: 9a:6e:c0:12:e1:a7:da:9d:be:34:19:4d:47:8a:d7:c0:db:18:22:fb:07:1d:f1:29:81:49:6e:d1:04:38:41:13 ------BEGIN CERTIFICATE----- -MIIH0zCCBbugAwIBAgIIXsO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAGA1UE -AwwJQUNDVlJBSVoxMRAwDgYDVQQLDAdQS0lBQ0NWMQ0wCwYDVQQKDARBQ0NWMQsw -CQYDVQQGEwJFUzAeFw0xMTA1MDUwOTM3MzdaFw0zMDEyMzEwOTM3MzdaMEIxEjAQ -BgNVBAMMCUFDQ1ZSQUlaMTEQMA4GA1UECwwHUEtJQUNDVjENMAsGA1UECgwEQUND -VjELMAkGA1UEBhMCRVMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCb -qau/YUqXry+XZpp0X9DZlv3P4uRm7x8fRzPCRKPfmt4ftVTdFXxpNRFvu8gMjmoY -HtiP2Ra8EEg2XPBjs5BaXCQ316PWywlxufEBcoSwfdtNgM3802/J+Nq2DoLSRYWo -G2ioPej0RGy9ocLLA76MPhMAhN9KSMDjIgro6TenGEyxCQ0jVn8ETdkXhBilyNpA -lHPrzg5XPAOBOp0KoVdDaaxXbXmQeOW1tDvYvEyNKKGno6e6Ak4l0Squ7a4DIrhr -IA8wKFSVf+DuzgpmndFALW4ir50awQUZ0m/A8p/4e7MCQvtQqR0tkw8jq8bBD5L/ -0KIV9VMJcRz/RROE5iZe+OCIHAr8Fraocwa48GOEAqDGWuzndN9wrqODJerWx5eH -k6fGioozl2A3ED6XPm4pFdahD9GILBKfb6qkxkLrQaLjlUPTAYVtjrs78yM2x/47 -4KElB0iryYl0/wiPgL/AlmXz7uxLaL2diMMxs0Dx6M/2OLuc5NF/1OVYm3z61PMO -m3WR5LpSLhl+0fXNWhn8ugb2+1KoS5kE3fj5tItQo05iifCHJPqDQsGH+tUtKSpa -cXpkatcnYGMN285J9Y0fkIkyF/hzQ7jSWpOGYdbhdQrqeWZ2iE9x6wQl1gpaepPl -uUsXQA+xtrn13k/c4LOsOxFwYIRKQ26ZIMApcQrAZQIDAQABo4ICyzCCAscwfQYI -KwYBBQUHAQEEcTBvMEwGCCsGAQUFBzAChkBodHRwOi8vd3d3LmFjY3YuZXMvZmls -ZWFkbWluL0FyY2hpdm9zL2NlcnRpZmljYWRvcy9yYWl6YWNjdjEuY3J0MB8GCCsG -AQUFBzABhhNodHRwOi8vb2NzcC5hY2N2LmVzMB0GA1UdDgQWBBTSh7Tj3zcnk1X2 -VuqB5TbMjB4/vTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNKHtOPfNyeT -VfZW6oHlNsyMHj+9MIIBcwYDVR0gBIIBajCCAWYwggFiBgRVHSAAMIIBWDCCASIG -CCsGAQUFBwICMIIBFB6CARAAQQB1AHQAbwByAGkAZABhAGQAIABkAGUAIABDAGUA -cgB0AGkAZgBpAGMAYQBjAGkA8wBuACAAUgBhAO0AegAgAGQAZQAgAGwAYQAgAEEA -QwBDAFYAIAAoAEEAZwBlAG4AYwBpAGEAIABkAGUAIABUAGUAYwBuAG8AbABvAGcA -7QBhACAAeQAgAEMAZQByAHQAaQBmAGkAYwBhAGMAaQDzAG4AIABFAGwAZQBjAHQA -cgDzAG4AaQBjAGEALAAgAEMASQBGACAAUQA0ADYAMAAxADEANQA2AEUAKQAuACAA -QwBQAFMAIABlAG4AIABoAHQAdABwADoALwAvAHcAdwB3AC4AYQBjAGMAdgAuAGUA -czAwBggrBgEFBQcCARYkaHR0cDovL3d3dy5hY2N2LmVzL2xlZ2lzbGFjaW9uX2Mu -aHRtMFUGA1UdHwROMEwwSqBIoEaGRGh0dHA6Ly93d3cuYWNjdi5lcy9maWxlYWRt -aW4vQXJjaGl2b3MvY2VydGlmaWNhZG9zL3JhaXphY2N2MV9kZXIuY3JsMA4GA1Ud -DwEB/wQEAwIBBjAXBgNVHREEEDAOgQxhY2N2QGFjY3YuZXMwDQYJKoZIhvcNAQEF -BQADggIBAJcxAp/n/UNnSEQU5CmH7UwoZtCPNdpNYbdKl02125DgBS4OxnnQ8pdp -D70ER9m+27Up2pvZrqmZ1dM8MJP1jaGo/AaNRPTKFpV8M9xii6g3+CfYCS0b78gU -JyCpZET/LtZ1qmxNYEAZSUNUY9rizLpm5U9EelvZaoErQNV/+QEnWCzI7UiRfD+m -AM/EKXMRNt6GGT6d7hmKG9Ww7Y49nCrADdg9ZuM8Db3VlFzi4qc1GwQA9j9ajepD -vV+JHanBsMyZ4k0ACtrJJ1vnE5Bc5PUzolVt3OAJTS+xJlsndQAJxGJ3KQhfnlms -tn6tn1QwIgPBHnFk/vk4CpYY3QIUrCPLBhwepH2NDd4nQeit2hW3sCPdK6jT2iWH -7ehVRE2I9DZ+hJp4rPcOVkkO1jMl1oRQQmwgEh0q1b688nCBpHBgvgW1m54ERL5h -I6zppSSMEYCUWqKiuUnSwdzRp+0xESyeGabu4VXhwOrPDYTkF7eifKXeVSUG7szA -h1xA2syVP1XgNce4hL60Xc16gwFy7ofmXx2utYXGJt/mwZrpHgJHnyqobalbz+xF -d3+YJ5oyXSrjhO7FmGYvliAd3djDJ9ew+f7Zfc3Qn48LFFhRny+Lwzgt3uiP1o2H -pPVWQxaZLPSkVrQ0uGE3ycJYgBugl6H8WY3pEfbRD0tVNEYqi4Y7 ------END CERTIFICATE----- - -# Issuer: CN=TWCA Global Root CA O=TAIWAN-CA OU=Root CA -# Subject: CN=TWCA Global Root CA O=TAIWAN-CA OU=Root CA -# Label: "TWCA Global Root CA" -# Serial: 3262 -# MD5 Fingerprint: f9:03:7e:cf:e6:9e:3c:73:7a:2a:90:07:69:ff:2b:96 -# SHA1 Fingerprint: 9c:bb:48:53:f6:a4:f6:d3:52:a4:e8:32:52:55:60:13:f5:ad:af:65 -# SHA256 Fingerprint: 59:76:90:07:f7:68:5d:0f:cd:50:87:2f:9f:95:d5:75:5a:5b:2b:45:7d:81:f3:69:2b:61:0a:98:67:2f:0e:1b ------BEGIN CERTIFICATE----- -MIIFQTCCAymgAwIBAgICDL4wDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVFcx -EjAQBgNVBAoTCVRBSVdBTi1DQTEQMA4GA1UECxMHUm9vdCBDQTEcMBoGA1UEAxMT -VFdDQSBHbG9iYWwgUm9vdCBDQTAeFw0xMjA2MjcwNjI4MzNaFw0zMDEyMzExNTU5 -NTlaMFExCzAJBgNVBAYTAlRXMRIwEAYDVQQKEwlUQUlXQU4tQ0ExEDAOBgNVBAsT -B1Jvb3QgQ0ExHDAaBgNVBAMTE1RXQ0EgR2xvYmFsIFJvb3QgQ0EwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQCwBdvI64zEbooh745NnHEKH1Jw7W2CnJfF -10xORUnLQEK1EjRsGcJ0pDFfhQKX7EMzClPSnIyOt7h52yvVavKOZsTuKwEHktSz -0ALfUPZVr2YOy+BHYC8rMjk1Ujoog/h7FsYYuGLWRyWRzvAZEk2tY/XTP3VfKfCh -MBwqoJimFb3u/Rk28OKRQ4/6ytYQJ0lM793B8YVwm8rqqFpD/G2Gb3PpN0Wp8DbH -zIh1HrtsBv+baz4X7GGqcXzGHaL3SekVtTzWoWH1EfcFbx39Eb7QMAfCKbAJTibc -46KokWofwpFFiFzlmLhxpRUZyXx1EcxwdE8tmx2RRP1WKKD+u4ZqyPpcC1jcxkt2 -yKsi2XMPpfRaAok/T54igu6idFMqPVMnaR1sjjIsZAAmY2E2TqNGtz99sy2sbZCi -laLOz9qC5wc0GZbpuCGqKX6mOL6OKUohZnkfs8O1CWfe1tQHRvMq2uYiN2DLgbYP -oA/pyJV/v1WRBXrPPRXAb94JlAGD1zQbzECl8LibZ9WYkTunhHiVJqRaCPgrdLQA -BDzfuBSO6N+pjWxnkjMdwLfS7JLIvgm/LCkFbwJrnu+8vyq8W8BQj0FwcYeyTbcE -qYSjMq+u7msXi7Kx/mzhkIyIqJdIzshNy/MGz19qCkKxHh53L46g5pIOBvwFItIm -4TFRfTLcDwIDAQABoyMwITAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB -/zANBgkqhkiG9w0BAQsFAAOCAgEAXzSBdu+WHdXltdkCY4QWwa6gcFGn90xHNcgL -1yg9iXHZqjNB6hQbbCEAwGxCGX6faVsgQt+i0trEfJdLjbDorMjupWkEmQqSpqsn -LhpNgb+E1HAerUf+/UqdM+DyucRFCCEK2mlpc3INvjT+lIutwx4116KD7+U4x6WF -H6vPNOw/KP4M8VeGTslV9xzU2KV9Bnpv1d8Q34FOIWWxtuEXeZVFBs5fzNxGiWNo -RI2T9GRwoD2dKAXDOXC4Ynsg/eTb6QihuJ49CcdP+yz4k3ZB3lLg4VfSnQO8d57+ -nile98FRYB/e2guyLXW3Q0iT5/Z5xoRdgFlglPx4mI88k1HtQJAH32RjJMtOcQWh -15QaiDLxInQirqWm2BJpTGCjAu4r7NRjkgtevi92a6O2JryPA9gK8kxkRr05YuWW -6zRjESjMlfGt7+/cgFhI6Uu46mWs6fyAtbXIRfmswZ/ZuepiiI7E8UuDEq3mi4TW -nsLrgxifarsbJGAzcMzs9zLzXNl5fe+epP7JI8Mk7hWSsT2RTyaGvWZzJBPqpK5j -wa19hAM8EHiGG3njxPPyBJUgriOCxLM6AGK/5jYk4Ve6xx6QddVfP5VhK8E7zeWz -aGHQRiapIVJpLesux+t3zqY6tQMzT3bR51xUAV3LePTJDL/PEo4XLSNolOer/qmy -KwbQBM0= ------END CERTIFICATE----- - -# Issuer: CN=TeliaSonera Root CA v1 O=TeliaSonera -# Subject: CN=TeliaSonera Root CA v1 O=TeliaSonera -# Label: "TeliaSonera Root CA v1" -# Serial: 199041966741090107964904287217786801558 -# MD5 Fingerprint: 37:41:49:1b:18:56:9a:26:f5:ad:c2:66:fb:40:a5:4c -# SHA1 Fingerprint: 43:13:bb:96:f1:d5:86:9b:c1:4e:6a:92:f6:cf:f6:34:69:87:82:37 -# SHA256 Fingerprint: dd:69:36:fe:21:f8:f0:77:c1:23:a1:a5:21:c1:22:24:f7:22:55:b7:3e:03:a7:26:06:93:e8:a2:4b:0f:a3:89 ------BEGIN CERTIFICATE----- -MIIFODCCAyCgAwIBAgIRAJW+FqD3LkbxezmCcvqLzZYwDQYJKoZIhvcNAQEFBQAw -NzEUMBIGA1UECgwLVGVsaWFTb25lcmExHzAdBgNVBAMMFlRlbGlhU29uZXJhIFJv -b3QgQ0EgdjEwHhcNMDcxMDE4MTIwMDUwWhcNMzIxMDE4MTIwMDUwWjA3MRQwEgYD -VQQKDAtUZWxpYVNvbmVyYTEfMB0GA1UEAwwWVGVsaWFTb25lcmEgUm9vdCBDQSB2 -MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMK+6yfwIaPzaSZVfp3F -VRaRXP3vIb9TgHot0pGMYzHw7CTww6XScnwQbfQ3t+XmfHnqjLWCi65ItqwA3GV1 -7CpNX8GH9SBlK4GoRz6JI5UwFpB/6FcHSOcZrr9FZ7E3GwYq/t75rH2D+1665I+X -Z75Ljo1kB1c4VWk0Nj0TSO9P4tNmHqTPGrdeNjPUtAa9GAH9d4RQAEX1jF3oI7x+ -/jXh7VB7qTCNGdMJjmhnXb88lxhTuylixcpecsHHltTbLaC0H2kD7OriUPEMPPCs -81Mt8Bz17Ww5OXOAFshSsCPN4D7c3TxHoLs1iuKYaIu+5b9y7tL6pe0S7fyYGKkm -dtwoSxAgHNN/Fnct7W+A90m7UwW7XWjH1Mh1Fj+JWov3F0fUTPHSiXk+TT2YqGHe -Oh7S+F4D4MHJHIzTjU3TlTazN19jY5szFPAtJmtTfImMMsJu7D0hADnJoWjiUIMu -sDor8zagrC/kb2HCUQk5PotTubtn2txTuXZZNp1D5SDgPTJghSJRt8czu90VL6R4 -pgd7gUY2BIbdeTXHlSw7sKMXNeVzH7RcWe/a6hBle3rQf5+ztCo3O3CLm1u5K7fs -slESl1MpWtTwEhDcTwK7EpIvYtQ/aUN8Ddb8WHUBiJ1YFkveupD/RwGJBmr2X7KQ -arMCpgKIv7NHfirZ1fpoeDVNAgMBAAGjPzA9MA8GA1UdEwEB/wQFMAMBAf8wCwYD -VR0PBAQDAgEGMB0GA1UdDgQWBBTwj1k4ALP1j5qWDNXr+nuqF+gTEjANBgkqhkiG -9w0BAQUFAAOCAgEAvuRcYk4k9AwI//DTDGjkk0kiP0Qnb7tt3oNmzqjMDfz1mgbl -dxSR651Be5kqhOX//CHBXfDkH1e3damhXwIm/9fH907eT/j3HEbAek9ALCI18Bmx -0GtnLLCo4MBANzX2hFxc469CeP6nyQ1Q6g2EdvZR74NTxnr/DlZJLo961gzmJ1Tj -TQpgcmLNkQfWpb/ImWvtxBnmq0wROMVvMeJuScg/doAmAyYp4Db29iBT4xdwNBed -Y2gea+zDTYa4EzAvXUYNR0PVG6pZDrlcjQZIrXSHX8f8MVRBE+LHIQ6e4B4N4cB7 -Q4WQxYpYxmUKeFfyxiMPAdkgS94P+5KFdSpcc41teyWRyu5FrgZLAMzTsVlQ2jqI -OylDRl6XK1TOU2+NSueW+r9xDkKLfP0ooNBIytrEgUy7onOTJsjrDNYmiLbAJM+7 -vVvrdX3pCI6GMyx5dwlppYn8s3CQh3aP0yK7Qs69cwsgJirQmz1wHiRszYd2qReW -t88NkvuOGKmYSdGe/mBEciG5Ge3C9THxOUiIkCR1VBatzvT4aRRkOfujuLpwQMcn -HL/EVlP6Y2XQ8xwOFvVrhlhNGNTkDY6lnVuR3HYkUD/GKvvZt5y11ubQ2egZixVx -SK236thZiNSQvxaz2emsWWFUyBy6ysHK4bkgTI86k4mloMy/0/Z1pHWWbVY= ------END CERTIFICATE----- - -# Issuer: CN=E-Tugra Certification Authority O=E-Tu\u011fra EBG Bili\u015fim Teknolojileri ve Hizmetleri A.\u015e. OU=E-Tugra Sertifikasyon Merkezi -# Subject: CN=E-Tugra Certification Authority O=E-Tu\u011fra EBG Bili\u015fim Teknolojileri ve Hizmetleri A.\u015e. OU=E-Tugra Sertifikasyon Merkezi -# Label: "E-Tugra Certification Authority" -# Serial: 7667447206703254355 -# MD5 Fingerprint: b8:a1:03:63:b0:bd:21:71:70:8a:6f:13:3a:bb:79:49 -# SHA1 Fingerprint: 51:c6:e7:08:49:06:6e:f3:92:d4:5c:a0:0d:6d:a3:62:8f:c3:52:39 -# SHA256 Fingerprint: b0:bf:d5:2b:b0:d7:d9:bd:92:bf:5d:4d:c1:3d:a2:55:c0:2c:54:2f:37:83:65:ea:89:39:11:f5:5e:55:f2:3c ------BEGIN CERTIFICATE----- -MIIGSzCCBDOgAwIBAgIIamg+nFGby1MwDQYJKoZIhvcNAQELBQAwgbIxCzAJBgNV -BAYTAlRSMQ8wDQYDVQQHDAZBbmthcmExQDA+BgNVBAoMN0UtVHXEn3JhIEVCRyBC -aWxpxZ9pbSBUZWtub2xvamlsZXJpIHZlIEhpem1ldGxlcmkgQS7Fni4xJjAkBgNV -BAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBNZXJrZXppMSgwJgYDVQQDDB9FLVR1 -Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTEzMDMwNTEyMDk0OFoXDTIz -MDMwMzEyMDk0OFowgbIxCzAJBgNVBAYTAlRSMQ8wDQYDVQQHDAZBbmthcmExQDA+ -BgNVBAoMN0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xvamlsZXJpIHZlIEhp -em1ldGxlcmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBN -ZXJrZXppMSgwJgYDVQQDDB9FLVR1Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 -MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA4vU/kwVRHoViVF56C/UY -B4Oufq9899SKa6VjQzm5S/fDxmSJPZQuVIBSOTkHS0vdhQd2h8y/L5VMzH2nPbxH -D5hw+IyFHnSOkm0bQNGZDbt1bsipa5rAhDGvykPL6ys06I+XawGb1Q5KCKpbknSF -Q9OArqGIW66z6l7LFpp3RMih9lRozt6Plyu6W0ACDGQXwLWTzeHxE2bODHnv0ZEo -q1+gElIwcxmOj+GMB6LDu0rw6h8VqO4lzKRG+Bsi77MOQ7osJLjFLFzUHPhdZL3D -k14opz8n8Y4e0ypQBaNV2cvnOVPAmJ6MVGKLJrD3fY185MaeZkJVgkfnsliNZvcH -fC425lAcP9tDJMW/hkd5s3kc91r0E+xs+D/iWR+V7kI+ua2oMoVJl0b+SzGPWsut -dEcf6ZG33ygEIqDUD13ieU/qbIWGvaimzuT6w+Gzrt48Ue7LE3wBf4QOXVGUnhMM -ti6lTPk5cDZvlsouDERVxcr6XQKj39ZkjFqzAQqptQpHF//vkUAqjqFGOjGY5RH8 -zLtJVor8udBhmm9lbObDyz51Sf6Pp+KJxWfXnUYTTjF2OySznhFlhqt/7x3U+Lzn -rFpct1pHXFXOVbQicVtbC/DP3KBhZOqp12gKY6fgDT+gr9Oq0n7vUaDmUStVkhUX -U8u3Zg5mTPj5dUyQ5xJwx0UCAwEAAaNjMGEwHQYDVR0OBBYEFC7j27JJ0JxUeVz6 -Jyr+zE7S6E5UMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAULuPbsknQnFR5 -XPonKv7MTtLoTlQwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAF -Nzr0TbdF4kV1JI+2d1LoHNgQk2Xz8lkGpD4eKexd0dCrfOAKkEh47U6YA5n+KGCR -HTAduGN8qOY1tfrTYXbm1gdLymmasoR6d5NFFxWfJNCYExL/u6Au/U5Mh/jOXKqY -GwXgAEZKgoClM4so3O0409/lPun++1ndYYRP0lSWE2ETPo+Aab6TR7U1Q9Jauz1c -77NCR807VRMGsAnb/WP2OogKmW9+4c4bU2pEZiNRCHu8W1Ki/QY3OEBhj0qWuJA3 -+GbHeJAAFS6LrVE1Uweoa2iu+U48BybNCAVwzDk/dr2l02cmAYamU9JgO3xDf1WK -vJUawSg5TB9D0pH0clmKuVb8P7Sd2nCcdlqMQ1DujjByTd//SffGqWfZbawCEeI6 -FiWnWAjLb1NBnEg4R2gz0dfHj9R0IdTDBZB6/86WiLEVKV0jq9BgoRJP3vQXzTLl -yb/IQ639Lo7xr+L0mPoSHyDYwKcMhcWQ9DstliaxLL5Mq+ux0orJ23gTDx4JnW2P -AJ8C2sH6H3p6CcRK5ogql5+Ji/03X186zjhZhkuvcQu02PJwT58yE+Owp1fl2tpD -y4Q08ijE6m30Ku/Ba3ba+367hTzSU8JNvnHhRdH9I2cNE3X7z2VnIp2usAnRCf8d -NL/+I5c30jn6PQ0GC7TbO6Orb1wdtn7os4I07QZcJA== ------END CERTIFICATE----- - -# Issuer: CN=T-TeleSec GlobalRoot Class 2 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center -# Subject: CN=T-TeleSec GlobalRoot Class 2 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center -# Label: "T-TeleSec GlobalRoot Class 2" -# Serial: 1 -# MD5 Fingerprint: 2b:9b:9e:e4:7b:6c:1f:00:72:1a:cc:c1:77:79:df:6a -# SHA1 Fingerprint: 59:0d:2d:7d:88:4f:40:2e:61:7e:a5:62:32:17:65:cf:17:d8:94:e9 -# SHA256 Fingerprint: 91:e2:f5:78:8d:58:10:eb:a7:ba:58:73:7d:e1:54:8a:8e:ca:cd:01:45:98:bc:0b:14:3e:04:1b:17:05:25:52 ------BEGIN CERTIFICATE----- -MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx -KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd -BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl -YyBHbG9iYWxSb290IENsYXNzIDIwHhcNMDgxMDAxMTA0MDE0WhcNMzMxMDAxMjM1 -OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy -aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 -ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqX9obX+hzkeXaXPSi5kfl82hVYAUd -AqSzm1nzHoqvNK38DcLZSBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8LRvWurmAwhiC -FoT6ZrAIxlQjgeTNuUk/9k9uN0goOA/FvudocP05l03Sx5iRUKrERLMjfTlH6VJi -1hKTXrcxlkIF+3anHqP1wvzpesVsqXFP6st4vGCvx9702cu+fjOlbpSD8DT6Iavq -jnKgP6TeMFvvhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUUOyCxGVWOHAD3bZ -wI18gfNycJ5v/hqO2V81xrJvNHy+SE/iWjnX2J14np+GPgNeGYtEotXHAgMBAAGj -QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS/ -WSA2AHmgoCJrjNXyYdK4LMuCSjANBgkqhkiG9w0BAQsFAAOCAQEAMQOiYQsfdOhy -NsZt+U2e+iKo4YFWz827n+qrkRk4r6p8FU3ztqONpfSO9kSpp+ghla0+AGIWiPAC -uvxhI+YzmzB6azZie60EI4RYZeLbK4rnJVM3YlNfvNoBYimipidx5joifsFvHZVw -IEoHNN/q/xWA5brXethbdXwFeilHfkCoMRN3zUA7tFFHei4R40cR3p1m0IvVVGb6 -g1XqfMIpiRvpb7PO4gWEyS8+eIVibslfwXhjdFjASBgMmTnrpMwatXlajRWc2BQN -9noHV8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/nBudMNva0Bkuqjzx+zOAduTNrRlP -BSeOE6Fuwg== ------END CERTIFICATE----- - -# Issuer: CN=Atos TrustedRoot 2011 O=Atos -# Subject: CN=Atos TrustedRoot 2011 O=Atos -# Label: "Atos TrustedRoot 2011" -# Serial: 6643877497813316402 -# MD5 Fingerprint: ae:b9:c4:32:4b:ac:7f:5d:66:cc:77:94:bb:2a:77:56 -# SHA1 Fingerprint: 2b:b1:f5:3e:55:0c:1d:c5:f1:d4:e6:b7:6a:46:4b:55:06:02:ac:21 -# SHA256 Fingerprint: f3:56:be:a2:44:b7:a9:1e:b3:5d:53:ca:9a:d7:86:4a:ce:01:8e:2d:35:d5:f8:f9:6d:df:68:a6:f4:1a:a4:74 ------BEGIN CERTIFICATE----- -MIIDdzCCAl+gAwIBAgIIXDPLYixfszIwDQYJKoZIhvcNAQELBQAwPDEeMBwGA1UE -AwwVQXRvcyBUcnVzdGVkUm9vdCAyMDExMQ0wCwYDVQQKDARBdG9zMQswCQYDVQQG -EwJERTAeFw0xMTA3MDcxNDU4MzBaFw0zMDEyMzEyMzU5NTlaMDwxHjAcBgNVBAMM -FUF0b3MgVHJ1c3RlZFJvb3QgMjAxMTENMAsGA1UECgwEQXRvczELMAkGA1UEBhMC -REUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCVhTuXbyo7LjvPpvMp -Nb7PGKw+qtn4TaA+Gke5vJrf8v7MPkfoepbCJI419KkM/IL9bcFyYie96mvr54rM -VD6QUM+A1JX76LWC1BTFtqlVJVfbsVD2sGBkWXppzwO3bw2+yj5vdHLqqjAqc2K+ -SZFhyBH+DgMq92og3AIVDV4VavzjgsG1xZ1kCWyjWZgHJ8cblithdHFsQ/H3NYkQ -4J7sVaE3IqKHBAUsR320HLliKWYoyrfhk/WklAOZuXCFteZI6o1Q/NnezG8HDt0L -cp2AMBYHlT8oDv3FdU9T1nSatCQujgKRz3bFmx5VdJx4IbHwLfELn8LVlhgf8FQi -eowHAgMBAAGjfTB7MB0GA1UdDgQWBBSnpQaxLKYJYO7Rl+lwrrw7GWzbITAPBgNV -HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKelBrEspglg7tGX6XCuvDsZbNshMBgG -A1UdIAQRMA8wDQYLKwYBBAGwLQMEAQEwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3 -DQEBCwUAA4IBAQAmdzTblEiGKkGdLD4GkGDEjKwLVLgfuXvTBznk+j57sj1O7Z8j -vZfza1zv7v1Apt+hk6EKhqzvINB5Ab149xnYJDE0BAGmuhWawyfc2E8PzBhj/5kP -DpFrdRbhIfzYJsdHt6bPWHJxfrrhTZVHO8mvbaG0weyJ9rQPOLXiZNwlz6bb65pc -maHFCN795trV1lpFDMS3wrUU77QR/w4VtfX128a961qn8FYiqTxlVMYVqL2Gns2D -lmh6cYGJ4Qvh6hEbaAjMaZ7snkGeRDImeuKHCnE96+RapNLbxc3G3mB/ufNPRJLv -KrcYPqcZ2Qt9sTdBQrC6YB3y/gkRsPCHe6ed ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root CA 1 G3 O=QuoVadis Limited -# Subject: CN=QuoVadis Root CA 1 G3 O=QuoVadis Limited -# Label: "QuoVadis Root CA 1 G3" -# Serial: 687049649626669250736271037606554624078720034195 -# MD5 Fingerprint: a4:bc:5b:3f:fe:37:9a:fa:64:f0:e2:fa:05:3d:0b:ab -# SHA1 Fingerprint: 1b:8e:ea:57:96:29:1a:c9:39:ea:b8:0a:81:1a:73:73:c0:93:79:67 -# SHA256 Fingerprint: 8a:86:6f:d1:b2:76:b5:7e:57:8e:92:1c:65:82:8a:2b:ed:58:e9:f2:f2:88:05:41:34:b7:f1:f4:bf:c9:cc:74 ------BEGIN CERTIFICATE----- -MIIFYDCCA0igAwIBAgIUeFhfLq0sGUvjNwc1NBMotZbUZZMwDQYJKoZIhvcNAQEL -BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc -BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMSBHMzAeFw0xMjAxMTIxNzI3NDRaFw00 -MjAxMTIxNzI3NDRaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM -aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDEgRzMwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQCgvlAQjunybEC0BJyFuTHK3C3kEakEPBtV -wedYMB0ktMPvhd6MLOHBPd+C5k+tR4ds7FtJwUrVu4/sh6x/gpqG7D0DmVIB0jWe -rNrwU8lmPNSsAgHaJNM7qAJGr6Qc4/hzWHa39g6QDbXwz8z6+cZM5cOGMAqNF341 -68Xfuw6cwI2H44g4hWf6Pser4BOcBRiYz5P1sZK0/CPTz9XEJ0ngnjybCKOLXSoh -4Pw5qlPafX7PGglTvF0FBM+hSo+LdoINofjSxxR3W5A2B4GbPgb6Ul5jxaYA/qXp -UhtStZI5cgMJYr2wYBZupt0lwgNm3fME0UDiTouG9G/lg6AnhF4EwfWQvTA9xO+o -abw4m6SkltFi2mnAAZauy8RRNOoMqv8hjlmPSlzkYZqn0ukqeI1RPToV7qJZjqlc -3sX5kCLliEVx3ZGZbHqfPT2YfF72vhZooF6uCyP8Wg+qInYtyaEQHeTTRCOQiJ/G -KubX9ZqzWB4vMIkIG1SitZgj7Ah3HJVdYdHLiZxfokqRmu8hqkkWCKi9YSgxyXSt -hfbZxbGL0eUQMk1fiyA6PEkfM4VZDdvLCXVDaXP7a3F98N/ETH3Goy7IlXnLc6KO -Tk0k+17kBL5yG6YnLUlamXrXXAkgt3+UuU/xDRxeiEIbEbfnkduebPRq34wGmAOt -zCjvpUfzUwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB -BjAdBgNVHQ4EFgQUo5fW816iEOGrRZ88F2Q87gFwnMwwDQYJKoZIhvcNAQELBQAD -ggIBABj6W3X8PnrHX3fHyt/PX8MSxEBd1DKquGrX1RUVRpgjpeaQWxiZTOOtQqOC -MTaIzen7xASWSIsBx40Bz1szBpZGZnQdT+3Btrm0DWHMY37XLneMlhwqI2hrhVd2 -cDMT/uFPpiN3GPoajOi9ZcnPP/TJF9zrx7zABC4tRi9pZsMbj/7sPtPKlL92CiUN -qXsCHKnQO18LwIE6PWThv6ctTr1NxNgpxiIY0MWscgKCP6o6ojoilzHdCGPDdRS5 -YCgtW2jgFqlmgiNR9etT2DGbe+m3nUvriBbP+V04ikkwj+3x6xn0dxoxGE1nVGwv -b2X52z3sIexe9PSLymBlVNFxZPT5pqOBMzYzcfCkeF9OrYMh3jRJjehZrJ3ydlo2 -8hP0r+AJx2EqbPfgna67hkooby7utHnNkDPDs3b69fBsnQGQ+p6Q9pxyz0fawx/k -NSBT8lTR32GDpgLiJTjehTItXnOQUl1CxM49S+H5GYQd1aJQzEH7QRTDvdbJWqNj -ZgKAvQU6O0ec7AAmTPWIUb+oI38YB7AL7YsmoWTTYUrrXJ/es69nA7Mf3W1daWhp -q1467HxpvMc7hU6eFbm0FU/DlXpY18ls6Wy58yljXrQs8C097Vpl4KlbQMJImYFt -nh8GKjwStIsPm6Ik8KaN1nrgS7ZklmOVhMJKzRwuJIczYOXD ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root CA 2 G3 O=QuoVadis Limited -# Subject: CN=QuoVadis Root CA 2 G3 O=QuoVadis Limited -# Label: "QuoVadis Root CA 2 G3" -# Serial: 390156079458959257446133169266079962026824725800 -# MD5 Fingerprint: af:0c:86:6e:bf:40:2d:7f:0b:3e:12:50:ba:12:3d:06 -# SHA1 Fingerprint: 09:3c:61:f3:8b:8b:dc:7d:55:df:75:38:02:05:00:e1:25:f5:c8:36 -# SHA256 Fingerprint: 8f:e4:fb:0a:f9:3a:4d:0d:67:db:0b:eb:b2:3e:37:c7:1b:f3:25:dc:bc:dd:24:0e:a0:4d:af:58:b4:7e:18:40 ------BEGIN CERTIFICATE----- -MIIFYDCCA0igAwIBAgIURFc0JFuBiZs18s64KztbpybwdSgwDQYJKoZIhvcNAQEL -BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc -BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMiBHMzAeFw0xMjAxMTIxODU5MzJaFw00 -MjAxMTIxODU5MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM -aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDIgRzMwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQChriWyARjcV4g/Ruv5r+LrI3HimtFhZiFf -qq8nUeVuGxbULX1QsFN3vXg6YOJkApt8hpvWGo6t/x8Vf9WVHhLL5hSEBMHfNrMW -n4rjyduYNM7YMxcoRvynyfDStNVNCXJJ+fKH46nafaF9a7I6JaltUkSs+L5u+9ym -c5GQYaYDFCDy54ejiK2toIz/pgslUiXnFgHVy7g1gQyjO/Dh4fxaXc6AcW34Sas+ -O7q414AB+6XrW7PFXmAqMaCvN+ggOp+oMiwMzAkd056OXbxMmO7FGmh77FOm6RQ1 -o9/NgJ8MSPsc9PG/Srj61YxxSscfrf5BmrODXfKEVu+lV0POKa2Mq1W/xPtbAd0j -IaFYAI7D0GoT7RPjEiuA3GfmlbLNHiJuKvhB1PLKFAeNilUSxmn1uIZoL1NesNKq -IcGY5jDjZ1XHm26sGahVpkUG0CM62+tlXSoREfA7T8pt9DTEceT/AFr2XK4jYIVz -8eQQsSWu1ZK7E8EM4DnatDlXtas1qnIhO4M15zHfeiFuuDIIfR0ykRVKYnLP43eh -vNURG3YBZwjgQQvD6xVu+KQZ2aKrr+InUlYrAoosFCT5v0ICvybIxo/gbjh9Uy3l -7ZizlWNof/k19N+IxWA1ksB8aRxhlRbQ694Lrz4EEEVlWFA4r0jyWbYW8jwNkALG -cC4BrTwV1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB -BjAdBgNVHQ4EFgQU7edvdlq/YOxJW8ald7tyFnGbxD0wDQYJKoZIhvcNAQELBQAD -ggIBAJHfgD9DCX5xwvfrs4iP4VGyvD11+ShdyLyZm3tdquXK4Qr36LLTn91nMX66 -AarHakE7kNQIXLJgapDwyM4DYvmL7ftuKtwGTTwpD4kWilhMSA/ohGHqPHKmd+RC -roijQ1h5fq7KpVMNqT1wvSAZYaRsOPxDMuHBR//47PERIjKWnML2W2mWeyAMQ0Ga -W/ZZGYjeVYg3UQt4XAoeo0L9x52ID8DyeAIkVJOviYeIyUqAHerQbj5hLja7NQ4n -lv1mNDthcnPxFlxHBlRJAHpYErAK74X9sbgzdWqTHBLmYF5vHX/JHyPLhGGfHoJE -+V+tYlUkmlKY7VHnoX6XOuYvHxHaU4AshZ6rNRDbIl9qxV6XU/IyAgkwo1jwDQHV -csaxfGl7w/U2Rcxhbl5MlMVerugOXou/983g7aEOGzPuVBj+D77vfoRrQ+NwmNtd -dbINWQeFFSM51vHfqSYP1kjHs6Yi9TM3WpVHn3u6GBVv/9YUZINJ0gpnIdsPNWNg -KCLjsZWDzYWm3S8P52dSbrsvhXz1SnPnxT7AvSESBT/8twNJAlvIJebiVDj1eYeM -HVOyToV7BjjHLPj4sHKNJeV3UvQDHEimUF+IIDBu8oJDqz2XhOdT+yHBTw8imoa4 -WSr2Rz0ZiC3oheGe7IUIarFsNMkd7EgrO3jtZsSOeWmD3n+M ------END CERTIFICATE----- - -# Issuer: CN=QuoVadis Root CA 3 G3 O=QuoVadis Limited -# Subject: CN=QuoVadis Root CA 3 G3 O=QuoVadis Limited -# Label: "QuoVadis Root CA 3 G3" -# Serial: 268090761170461462463995952157327242137089239581 -# MD5 Fingerprint: df:7d:b9:ad:54:6f:68:a1:df:89:57:03:97:43:b0:d7 -# SHA1 Fingerprint: 48:12:bd:92:3c:a8:c4:39:06:e7:30:6d:27:96:e6:a4:cf:22:2e:7d -# SHA256 Fingerprint: 88:ef:81:de:20:2e:b0:18:45:2e:43:f8:64:72:5c:ea:5f:bd:1f:c2:d9:d2:05:73:07:09:c5:d8:b8:69:0f:46 ------BEGIN CERTIFICATE----- -MIIFYDCCA0igAwIBAgIULvWbAiin23r/1aOp7r0DoM8Sah0wDQYJKoZIhvcNAQEL -BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc -BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMyBHMzAeFw0xMjAxMTIyMDI2MzJaFw00 -MjAxMTIyMDI2MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM -aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDMgRzMwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQCzyw4QZ47qFJenMioKVjZ/aEzHs286IxSR -/xl/pcqs7rN2nXrpixurazHb+gtTTK/FpRp5PIpM/6zfJd5O2YIyC0TeytuMrKNu -FoM7pmRLMon7FhY4futD4tN0SsJiCnMK3UmzV9KwCoWdcTzeo8vAMvMBOSBDGzXR -U7Ox7sWTaYI+FrUoRqHe6okJ7UO4BUaKhvVZR74bbwEhELn9qdIoyhA5CcoTNs+c -ra1AdHkrAj80//ogaX3T7mH1urPnMNA3I4ZyYUUpSFlob3emLoG+B01vr87ERROR -FHAGjx+f+IdpsQ7vw4kZ6+ocYfx6bIrc1gMLnia6Et3UVDmrJqMz6nWB2i3ND0/k -A9HvFZcba5DFApCTZgIhsUfei5pKgLlVj7WiL8DWM2fafsSntARE60f75li59wzw -eyuxwHApw0BiLTtIadwjPEjrewl5qW3aqDCYz4ByA4imW0aucnl8CAMhZa634Ryl -sSqiMd5mBPfAdOhx3v89WcyWJhKLhZVXGqtrdQtEPREoPHtht+KPZ0/l7DxMYIBp -VzgeAVuNVejH38DMdyM0SXV89pgR6y3e7UEuFAUCf+D+IOs15xGsIs5XPd7JMG0Q -A4XN8f+MFrXBsj6IbGB/kE+V9/YtrQE5BwT6dYB9v0lQ7e/JxHwc64B+27bQ3RP+ -ydOc17KXqQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB -BjAdBgNVHQ4EFgQUxhfQvKjqAkPyGwaZXSuQILnXnOQwDQYJKoZIhvcNAQELBQAD -ggIBADRh2Va1EodVTd2jNTFGu6QHcrxfYWLopfsLN7E8trP6KZ1/AvWkyaiTt3px -KGmPc+FSkNrVvjrlt3ZqVoAh313m6Tqe5T72omnHKgqwGEfcIHB9UqM+WXzBusnI -FUBhynLWcKzSt/Ac5IYp8M7vaGPQtSCKFWGafoaYtMnCdvvMujAWzKNhxnQT5Wvv -oxXqA/4Ti2Tk08HS6IT7SdEQTXlm66r99I0xHnAUrdzeZxNMgRVhvLfZkXdxGYFg -u/BYpbWcC/ePIlUnwEsBbTuZDdQdm2NnL9DuDcpmvJRPpq3t/O5jrFc/ZSXPsoaP -0Aj/uHYUbt7lJ+yreLVTubY/6CD50qi+YUbKh4yE8/nxoGibIh6BJpsQBJFxwAYf -3KDTuVan45gtf4Od34wrnDKOMpTwATwiKp9Dwi7DmDkHOHv8XgBCH/MyJnmDhPbl -8MFREsALHgQjDFSlTC9JxUrRtm5gDWv8a4uFJGS3iQ6rJUdbPM9+Sb3H6QrG2vd+ -DhcI00iX0HGS8A85PjRqHH3Y8iKuu2n0M7SmSFXRDw4m6Oy2Cy2nhTXN/VnIn9HN -PlopNLk9hM6xZdRZkZFWdSHBd575euFgndOtBBj0fOtek49TSiIp+EgrPk2GrFt/ -ywaZWWDYWGWVjUTR939+J399roD1B0y2PpxxVJkES/1Y+Zj0 ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Assured ID Root G2 O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Assured ID Root G2 O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Assured ID Root G2" -# Serial: 15385348160840213938643033620894905419 -# MD5 Fingerprint: 92:38:b9:f8:63:24:82:65:2c:57:33:e6:fe:81:8f:9d -# SHA1 Fingerprint: a1:4b:48:d9:43:ee:0a:0e:40:90:4f:3c:e0:a4:c0:91:93:51:5d:3f -# SHA256 Fingerprint: 7d:05:eb:b6:82:33:9f:8c:94:51:ee:09:4e:eb:fe:fa:79:53:a1:14:ed:b2:f4:49:49:45:2f:ab:7d:2f:c1:85 ------BEGIN CERTIFICATE----- -MIIDljCCAn6gAwIBAgIQC5McOtY5Z+pnI7/Dr5r0SzANBgkqhkiG9w0BAQsFADBl -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv -b3QgRzIwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQG -EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl -cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzIwggEi -MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ5ygvUj82ckmIkzTz+GoeMVSA -n61UQbVH35ao1K+ALbkKz3X9iaV9JPrjIgwrvJUXCzO/GU1BBpAAvQxNEP4Htecc -biJVMWWXvdMX0h5i89vqbFCMP4QMls+3ywPgym2hFEwbid3tALBSfK+RbLE4E9Hp -EgjAALAcKxHad3A2m67OeYfcgnDmCXRwVWmvo2ifv922ebPynXApVfSr/5Vh88lA -bx3RvpO704gqu52/clpWcTs/1PPRCv4o76Pu2ZmvA9OPYLfykqGxvYmJHzDNw6Yu -YjOuFgJ3RFrngQo8p0Quebg/BLxcoIfhG69Rjs3sLPr4/m3wOnyqi+RnlTGNAgMB -AAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQW -BBTOw0q5mVXyuNtgv6l+vVa1lzan1jANBgkqhkiG9w0BAQsFAAOCAQEAyqVVjOPI -QW5pJ6d1Ee88hjZv0p3GeDgdaZaikmkuOGybfQTUiaWxMTeKySHMq2zNixya1r9I -0jJmwYrA8y8678Dj1JGG0VDjA9tzd29KOVPt3ibHtX2vK0LRdWLjSisCx1BL4Gni -lmwORGYQRI+tBev4eaymG+g3NJ1TyWGqolKvSnAWhsI6yLETcDbYz+70CjTVW0z9 -B5yiutkBclzzTcHdDrEcDcRjvq30FPuJ7KJBDkzMyFdA0G4Dqs0MjomZmWzwPDCv -ON9vvKO+KSAnq3T/EyJ43pdSVR6DtVQgA+6uwE9W3jfMw3+qBCe703e4YtsXfJwo -IhNzbM8m9Yop5w== ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Assured ID Root G3 O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Assured ID Root G3 O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Assured ID Root G3" -# Serial: 15459312981008553731928384953135426796 -# MD5 Fingerprint: 7c:7f:65:31:0c:81:df:8d:ba:3e:99:e2:5c:ad:6e:fb -# SHA1 Fingerprint: f5:17:a2:4f:9a:48:c6:c9:f8:a2:00:26:9f:dc:0f:48:2c:ab:30:89 -# SHA256 Fingerprint: 7e:37:cb:8b:4c:47:09:0c:ab:36:55:1b:a6:f4:5d:b8:40:68:0f:ba:16:6a:95:2d:b1:00:71:7f:43:05:3f:c2 ------BEGIN CERTIFICATE----- -MIICRjCCAc2gAwIBAgIQC6Fa+h3foLVJRK/NJKBs7DAKBggqhkjOPQQDAzBlMQsw -CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu -ZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3Qg -RzMwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQGEwJV -UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu -Y29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzMwdjAQBgcq -hkjOPQIBBgUrgQQAIgNiAAQZ57ysRGXtzbg/WPuNsVepRC0FFfLvC/8QdJ+1YlJf -Zn4f5dwbRXkLzMZTCp2NXQLZqVneAlr2lSoOjThKiknGvMYDOAdfVdp+CW7if17Q -RSAPWXYQ1qAk8C3eNvJsKTmjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ -BAQDAgGGMB0GA1UdDgQWBBTL0L2p4ZgFUaFNN6KDec6NHSrkhDAKBggqhkjOPQQD -AwNnADBkAjAlpIFFAmsSS3V0T8gj43DydXLefInwz5FyYZ5eEJJZVrmDxxDnOOlY -JjZ91eQ0hjkCMHw2U/Aw5WJjOpnitqM7mzT6HtoQknFekROn3aRukswy1vUhZscv -6pZjamVFkpUBtA== ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Global Root G2 O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Global Root G2 O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Global Root G2" -# Serial: 4293743540046975378534879503202253541 -# MD5 Fingerprint: e4:a6:8a:c8:54:ac:52:42:46:0a:fd:72:48:1b:2a:44 -# SHA1 Fingerprint: df:3c:24:f9:bf:d6:66:76:1b:26:80:73:fe:06:d1:cc:8d:4f:82:a4 -# SHA256 Fingerprint: cb:3c:cb:b7:60:31:e5:e0:13:8f:8d:d3:9a:23:f9:de:47:ff:c3:5e:43:c1:14:4c:ea:27:d4:6a:5a:b1:cb:5f ------BEGIN CERTIFICATE----- -MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBh -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH -MjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVT -MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j -b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkqhkiG -9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI -2/Ou8jqJkTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx -1x7e/dfgy5SDN67sH0NO3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQ -q2EGnI/yuum06ZIya7XzV+hdG82MHauVBJVJ8zUtluNJbd134/tJS7SsVQepj5Wz -tCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyMUNGPHgm+F6HmIcr9g+UQ -vIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQABo0IwQDAP -BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV -5uNu5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY -1Yl9PMWLSn/pvtsrF9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4 -NeF22d+mQrvHRAiGfzZ0JFrabA0UWTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NG -Fdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBHQRFXGU7Aj64GxJUTFy8bJZ91 -8rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/iyK5S9kJRaTe -pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl -MrY= ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Global Root G3 O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Global Root G3 O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Global Root G3" -# Serial: 7089244469030293291760083333884364146 -# MD5 Fingerprint: f5:5d:a4:50:a5:fb:28:7e:1e:0f:0d:cc:96:57:56:ca -# SHA1 Fingerprint: 7e:04:de:89:6a:3e:66:6d:00:e6:87:d3:3f:fa:d9:3b:e8:3d:34:9e -# SHA256 Fingerprint: 31:ad:66:48:f8:10:41:38:c7:38:f3:9e:a4:32:01:33:39:3e:3a:18:cc:02:29:6e:f9:7c:2a:c9:ef:67:31:d0 ------BEGIN CERTIFICATE----- -MIICPzCCAcWgAwIBAgIQBVVWvPJepDU1w6QP1atFcjAKBggqhkjOPQQDAzBhMQsw -CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu -ZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMzAe -Fw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVTMRUw -EwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20x -IDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEczMHYwEAYHKoZIzj0CAQYF -K4EEACIDYgAE3afZu4q4C/sLfyHS8L6+c/MzXRq8NOrexpu80JX28MzQC7phW1FG -fp4tn+6OYwwX7Adw9c+ELkCDnOg/QW07rdOkFFk2eJ0DQ+4QE2xy3q6Ip6FrtUPO -Z9wj/wMco+I+o0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAd -BgNVHQ4EFgQUs9tIpPmhxdiuNkHMEWNpYim8S8YwCgYIKoZIzj0EAwMDaAAwZQIx -AK288mw/EkrRLTnDCgmXc/SINoyIJ7vmiI1Qhadj+Z4y3maTD/HMsQmP3Wyr+mt/ -oAIwOWZbwmSNuJ5Q3KjVSaLtx9zRSX8XAbjIho9OjIgrqJqpisXRAL34VOKa5Vt8 -sycX ------END CERTIFICATE----- - -# Issuer: CN=DigiCert Trusted Root G4 O=DigiCert Inc OU=www.digicert.com -# Subject: CN=DigiCert Trusted Root G4 O=DigiCert Inc OU=www.digicert.com -# Label: "DigiCert Trusted Root G4" -# Serial: 7451500558977370777930084869016614236 -# MD5 Fingerprint: 78:f2:fc:aa:60:1f:2f:b4:eb:c9:37:ba:53:2e:75:49 -# SHA1 Fingerprint: dd:fb:16:cd:49:31:c9:73:a2:03:7d:3f:c8:3a:4d:7d:77:5d:05:e4 -# SHA256 Fingerprint: 55:2f:7b:dc:f1:a7:af:9e:6c:e6:72:01:7f:4f:12:ab:f7:72:40:c7:8e:76:1a:c2:03:d1:d9:d2:0a:c8:99:88 ------BEGIN CERTIFICATE----- -MIIFkDCCA3igAwIBAgIQBZsbV56OITLiOQe9p3d1XDANBgkqhkiG9w0BAQwFADBi -MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 -d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3Qg -RzQwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBiMQswCQYDVQQGEwJV -UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu -Y29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQC/5pBzaN675F1KPDAiMGkz7MKnJS7JIT3y -ithZwuEppz1Yq3aaza57G4QNxDAf8xukOBbrVsaXbR2rsnnyyhHS5F/WBTxSD1If -xp4VpX6+n6lXFllVcq9ok3DCsrp1mWpzMpTREEQQLt+C8weE5nQ7bXHiLQwb7iDV -ySAdYyktzuxeTsiT+CFhmzTrBcZe7FsavOvJz82sNEBfsXpm7nfISKhmV1efVFiO -DCu3T6cw2Vbuyntd463JT17lNecxy9qTXtyOj4DatpGYQJB5w3jHtrHEtWoYOAMQ -jdjUN6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RAXwhTNS8rhsDdV14Ztk6MUSaM0C/ -CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k98FpiHaYdj1ZXUJ2h4mXaXpI8OCi -EhtmmnTK3kse5w5jrubU75KSOp493ADkRSWJtppEGSt+wJS00mFt6zPZxd9LBADM -fRyVw4/3IbKyEbe7f/LVjHAsQWCqsWMYRJUadmJ+9oCw++hkpjPRiQfhvbfmQ6QY -uKZ3AeEPlAwhHbJUKSWJbOUOUlFHdL4mrLZBdd56rF+NP8m800ERElvlEFDrMcXK -chYiCd98THU/Y+whX8QgUWtvsauGi0/C1kVfnSD8oR7FwI+isX4KJpn15GkvmB0t -9dmpsh3lGwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB -hjAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5nP+e6mK4cD08wDQYJKoZIhvcNAQEMBQAD -ggIBALth2X2pbL4XxJEbw6GiAI3jZGgPVs93rnD5/ZpKmbnJeFwMDF/k5hQpVgs2 -SV1EY+CtnJYYZhsjDT156W1r1lT40jzBQ0CuHVD1UvyQO7uYmWlrx8GnqGikJ9yd -+SeuMIW59mdNOj6PWTkiU0TryF0Dyu1Qen1iIQqAyHNm0aAFYF/opbSnr6j3bTWc -fFqK1qI4mfN4i/RN0iAL3gTujJtHgXINwBQy7zBZLq7gcfJW5GqXb5JQbZaNaHqa -sjYUegbyJLkJEVDXCLG4iXqEI2FCKeWjzaIgQdfRnGTZ6iahixTXTBmyUEFxPT9N -cCOGDErcgdLMMpSEDQgJlxxPwO5rIHQw0uA5NBCFIRUBCOhVMt5xSdkoF1BN5r5N -0XWs0Mr7QbhDparTwwVETyw2m+L64kW4I1NsBm9nVX9GtUw/bihaeSbSpKhil9Ie -4u1Ki7wb/UdKDd9nZn6yW0HQO+T0O/QEY+nvwlQAUaCKKsnOeMzV6ocEGLPOr0mI -r/OSmbaz5mEP0oUA51Aa5BuVnRmhuZyxm7EAHu/QD09CbMkKvO5D+jpxpchNJqU1 -/YldvIViHTLSoCtU7ZpXwdv6EM8Zt4tKG48BtieVU+i2iW1bvGjUI+iLUaJW+fCm -gKDWHrO8Dw9TdSmq6hN35N6MgSGtBxBHEa2HPQfRdbzP82Z+ ------END CERTIFICATE----- - -# Issuer: CN=COMODO RSA Certification Authority O=COMODO CA Limited -# Subject: CN=COMODO RSA Certification Authority O=COMODO CA Limited -# Label: "COMODO RSA Certification Authority" -# Serial: 101909084537582093308941363524873193117 -# MD5 Fingerprint: 1b:31:b0:71:40:36:cc:14:36:91:ad:c4:3e:fd:ec:18 -# SHA1 Fingerprint: af:e5:d2:44:a8:d1:19:42:30:ff:47:9f:e2:f8:97:bb:cd:7a:8c:b4 -# SHA256 Fingerprint: 52:f0:e1:c4:e5:8e:c6:29:29:1b:60:31:7f:07:46:71:b8:5d:7e:a8:0d:5b:07:27:34:63:53:4b:32:b4:02:34 ------BEGIN CERTIFICATE----- -MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af907YWwOGnTANBgkqhkiG9w0BAQwFADCB -hTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G -A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNV -BAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMTE5 -MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgT -EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR -Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCR -6FSS0gpWsawNJN3Fz0RndJkrN6N9I3AAcbxT38T6KhKPS38QVr2fcHK3YX/JSw8X -pz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZFGvnnLOFoIJ6dq9xkNfs/Q36nGz637CC -9BR++b7Epi9Pf5l/tfxnQ3K9DADWietrLNPtj5gcFKt+5eNu/Nio5JIk2kNrYrhV -/erBvGy2i/MOjZrkm2xpmfh4SDBF1a3hDTxFYPwyllEnvGfDyi62a+pGx8cgoLEf -Zd5ICLqkTqnyg0Y3hOvozIFIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZObT6Z -+pUX2nwzV0E8jVHtC7ZcryxjGt9XyD+86V3Em69FmeKjWiS0uqlWPc9vqv9JWL7w -qP/0uK3pN/u6uPQLOvnoQ0IeidiEyxPx2bvhiWC4jChWrBQdnArncevPDt09qZah -SL0896+1DSJMwBGB7FY79tOi4lu3sgQiUpWAk2nojkxl8ZEDLXB0AuqLZxUpaVIC -u9ffUGpVRr+goyhhf3DQw6KqLCGqR84onAZFdr+CGCe01a60y1Dma/RMhnEw6abf -Fobg2P9A3fvQQoh/ozM6LlweQRGBY84YcWsr7KaKtzFcOmpH4MN5WdYgGq/yapiq -crxXStJLnbsQ/LBMQeXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo0IwQDAdBgNVHQ4E -FgQUu69+Aj36pvE8hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB -/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAArx1UaEt65Ru2yyTUEUAJNMnMvl -wFTPoCWOAvn9sKIN9SCYPBMtrFaisNZ+EZLpLrqeLppysb0ZRGxhNaKatBYSaVqM -4dc+pBroLwP0rmEdEBsqpIt6xf4FpuHA1sj+nq6PK7o9mfjYcwlYRm6mnPTXJ9OV -2jeDchzTc+CiR5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8OoSgtZx8jb8uk2Intzna -FxiuvTwJaP+EmzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mFXLrrkguhxuhoqEwWsRqZ -CuhTLJK7oQkYdQxlqHvLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc1oBmpjIXUDgIiK -boHGhfKppC3n9KUkEEeDys30jXlYsQab5xoq2Z0B15R97QNKyvDb6KkBPvVWmcke -jkk9u+UJueBPSZI9FoJAzMxZxuY67RIuaTxslbH9qh17f4a+Hg4yRvv7E491f0yL -S0Zj/gA0QHDBw7mh3aZw4gSzQbzpgJHqZJx64SIDqZxubw5lT2yHh17zbqD5daWb -QOhTsiedSrnAdyGN/4fy3ryM7xfft0kL0fJuMAsaDk527RH89elWsn2/x20Kk4yl -0MC2Hb46TpSi125sC8KKfPog88Tk5c0NqMuRkrF8hey1FGlmDoLnzc7ILaZRfyHB -NVOFBkpdn627G190 ------END CERTIFICATE----- - -# Issuer: CN=USERTrust RSA Certification Authority O=The USERTRUST Network -# Subject: CN=USERTrust RSA Certification Authority O=The USERTRUST Network -# Label: "USERTrust RSA Certification Authority" -# Serial: 2645093764781058787591871645665788717 -# MD5 Fingerprint: 1b:fe:69:d1:91:b7:19:33:a3:72:a8:0f:e1:55:e5:b5 -# SHA1 Fingerprint: 2b:8f:1b:57:33:0d:bb:a2:d0:7a:6c:51:f7:0e:e9:0d:da:b9:ad:8e -# SHA256 Fingerprint: e7:93:c9:b0:2f:d8:aa:13:e2:1c:31:22:8a:cc:b0:81:19:64:3b:74:9c:89:89:64:b1:74:6d:46:c3:d4:cb:d2 ------BEGIN CERTIFICATE----- -MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB -iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl -cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV -BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw -MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV -BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU -aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy -dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B -3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY -tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/ -Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2 -VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT -79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6 -c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT -Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l -c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee -UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE -Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd -BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G -A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF -Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO -VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3 -ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs -8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR -iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze -Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ -XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/ -qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB -VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB -L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG -jjxDah2nGN59PRbxYvnKkKj9 ------END CERTIFICATE----- - -# Issuer: CN=USERTrust ECC Certification Authority O=The USERTRUST Network -# Subject: CN=USERTrust ECC Certification Authority O=The USERTRUST Network -# Label: "USERTrust ECC Certification Authority" -# Serial: 123013823720199481456569720443997572134 -# MD5 Fingerprint: fa:68:bc:d9:b5:7f:ad:fd:c9:1d:06:83:28:cc:24:c1 -# SHA1 Fingerprint: d1:cb:ca:5d:b2:d5:2a:7f:69:3b:67:4d:e5:f0:5a:1d:0c:95:7d:f0 -# SHA256 Fingerprint: 4f:f4:60:d5:4b:9c:86:da:bf:bc:fc:57:12:e0:40:0d:2b:ed:3f:bc:4d:4f:bd:aa:86:e0:6a:dc:d2:a9:ad:7a ------BEGIN CERTIFICATE----- -MIICjzCCAhWgAwIBAgIQXIuZxVqUxdJxVt7NiYDMJjAKBggqhkjOPQQDAzCBiDEL -MAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNl -eSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMT -JVVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMjAx -MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgT -Ck5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVUaGUg -VVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydGlm -aWNhdGlvbiBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQarFRaqflo -I+d61SRvU8Za2EurxtW20eZzca7dnNYMYf3boIkDuAUU7FfO7l0/4iGzzvfUinng -o4N+LZfQYcTxmdwlkWOrfzCjtHDix6EznPO/LlxTsV+zfTJ/ijTjeXmjQjBAMB0G -A1UdDgQWBBQ64QmG1M8ZwpZ2dEl23OA1xmNjmjAOBgNVHQ8BAf8EBAMCAQYwDwYD -VR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjA2Z6EWCNzklwBBHU6+4WMB -zzuqQhFkoJ2UOQIReVx7Hfpkue4WQrO/isIJxOzksU0CMQDpKmFHjFJKS04YcPbW -RNZu9YO6bVi9JNlWSOrvxKJGgYhqOkbRqZtNyWHa0V1Xahg= ------END CERTIFICATE----- - -# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R4 -# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R4 -# Label: "GlobalSign ECC Root CA - R4" -# Serial: 14367148294922964480859022125800977897474 -# MD5 Fingerprint: 20:f0:27:68:d1:7e:a0:9d:0e:e6:2a:ca:df:5c:89:8e -# SHA1 Fingerprint: 69:69:56:2e:40:80:f4:24:a1:e7:19:9f:14:ba:f3:ee:58:ab:6a:bb -# SHA256 Fingerprint: be:c9:49:11:c2:95:56:76:db:6c:0a:55:09:86:d7:6e:3b:a0:05:66:7c:44:2c:97:62:b4:fb:b7:73:de:22:8c ------BEGIN CERTIFICATE----- -MIIB4TCCAYegAwIBAgIRKjikHJYKBN5CsiilC+g0mAIwCgYIKoZIzj0EAwIwUDEk -MCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI0MRMwEQYDVQQKEwpH -bG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoX -DTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBD -QSAtIFI0MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWdu -MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuMZ5049sJQ6fLjkZHAOkrprlOQcJ -FspjsbmG+IpXwVfOQvpzofdlQv8ewQCybnMO/8ch5RikqtlxP6jUuc6MHaNCMEAw -DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFFSwe61F -uOJAf/sKbvu+M8k8o4TVMAoGCCqGSM49BAMCA0gAMEUCIQDckqGgE6bPA7DmxCGX -kPoUVy0D7O48027KqGx2vKLeuwIgJ6iFJzWbVsaj8kfSt24bAgAXqmemFZHe+pTs -ewv4n4Q= ------END CERTIFICATE----- - -# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R5 -# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R5 -# Label: "GlobalSign ECC Root CA - R5" -# Serial: 32785792099990507226680698011560947931244 -# MD5 Fingerprint: 9f:ad:3b:1c:02:1e:8a:ba:17:74:38:81:0c:a2:bc:08 -# SHA1 Fingerprint: 1f:24:c6:30:cd:a4:18:ef:20:69:ff:ad:4f:dd:5f:46:3a:1b:69:aa -# SHA256 Fingerprint: 17:9f:bc:14:8a:3d:d0:0f:d2:4e:a1:34:58:cc:43:bf:a7:f5:9c:81:82:d7:83:a5:13:f6:eb:ec:10:0c:89:24 ------BEGIN CERTIFICATE----- -MIICHjCCAaSgAwIBAgIRYFlJ4CYuu1X5CneKcflK2GwwCgYIKoZIzj0EAwMwUDEk -MCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKEwpH -bG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoX -DTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBD -QSAtIFI1MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWdu -MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAER0UOlvt9Xb/pOdEh+J8LttV7HpI6SFkc -8GIxLcB6KP4ap1yztsyX50XUWPrRd21DosCHZTQKH3rd6zwzocWdTaRvQZU4f8ke -hOvRnkmSh5SHDDqFSmafnVmTTZdhBoZKo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD -VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUPeYpSJvqB8ohREom3m7e0oPQn1kwCgYI -KoZIzj0EAwMDaAAwZQIxAOVpEslu28YxuglB4Zf4+/2a4n0Sye18ZNPLBSWLVtmg -515dTguDnFt2KaAJJiFqYgIwcdK1j1zqO+F4CYWodZI7yFz9SO8NdCKoCOJuxUnO -xwy8p2Fp8fc74SrL+SvzZpA3 ------END CERTIFICATE----- - -# Issuer: CN=Staat der Nederlanden Root CA - G3 O=Staat der Nederlanden -# Subject: CN=Staat der Nederlanden Root CA - G3 O=Staat der Nederlanden -# Label: "Staat der Nederlanden Root CA - G3" -# Serial: 10003001 -# MD5 Fingerprint: 0b:46:67:07:db:10:2f:19:8c:35:50:60:d1:0b:f4:37 -# SHA1 Fingerprint: d8:eb:6b:41:51:92:59:e0:f3:e7:85:00:c0:3d:b6:88:97:c9:ee:fc -# SHA256 Fingerprint: 3c:4f:b0:b9:5a:b8:b3:00:32:f4:32:b8:6f:53:5f:e1:72:c1:85:d0:fd:39:86:58:37:cf:36:18:7f:a6:f4:28 ------BEGIN CERTIFICATE----- -MIIFdDCCA1ygAwIBAgIEAJiiOTANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO -TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh -dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEczMB4XDTEzMTExNDExMjg0MloX -DTI4MTExMzIzMDAwMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl -ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv -b3QgQ0EgLSBHMzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL4yolQP -cPssXFnrbMSkUeiFKrPMSjTysF/zDsccPVMeiAho2G89rcKezIJnByeHaHE6n3WW -IkYFsO2tx1ueKt6c/DrGlaf1F2cY5y9JCAxcz+bMNO14+1Cx3Gsy8KL+tjzk7FqX -xz8ecAgwoNzFs21v0IJyEavSgWhZghe3eJJg+szeP4TrjTgzkApyI/o1zCZxMdFy -KJLZWyNtZrVtB0LrpjPOktvA9mxjeM3KTj215VKb8b475lRgsGYeCasH/lSJEULR -9yS6YHgamPfJEf0WwTUaVHXvQ9Plrk7O53vDxk5hUUurmkVLoR9BvUhTFXFkC4az -5S6+zqQbwSmEorXLCCN2QyIkHxcE1G6cxvx/K2Ya7Irl1s9N9WMJtxU51nus6+N8 -6U78dULI7ViVDAZCopz35HCz33JvWjdAidiFpNfxC95DGdRKWCyMijmev4SH8RY7 -Ngzp07TKbBlBUgmhHbBqv4LvcFEhMtwFdozL92TkA1CvjJFnq8Xy7ljY3r735zHP -bMk7ccHViLVlvMDoFxcHErVc0qsgk7TmgoNwNsXNo42ti+yjwUOH5kPiNL6VizXt -BznaqB16nzaeErAMZRKQFWDZJkBE41ZgpRDUajz9QdwOWke275dhdU/Z/seyHdTt -XUmzqWrLZoQT1Vyg3N9udwbRcXXIV2+vD3dbAgMBAAGjQjBAMA8GA1UdEwEB/wQF -MAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRUrfrHkleuyjWcLhL75Lpd -INyUVzANBgkqhkiG9w0BAQsFAAOCAgEAMJmdBTLIXg47mAE6iqTnB/d6+Oea31BD -U5cqPco8R5gu4RV78ZLzYdqQJRZlwJ9UXQ4DO1t3ApyEtg2YXzTdO2PCwyiBwpwp -LiniyMMB8jPqKqrMCQj3ZWfGzd/TtiunvczRDnBfuCPRy5FOCvTIeuXZYzbB1N/8 -Ipf3YF3qKS9Ysr1YvY2WTxB1v0h7PVGHoTx0IsL8B3+A3MSs/mrBcDCw6Y5p4ixp -gZQJut3+TcCDjJRYwEYgr5wfAvg1VUkvRtTA8KCWAg8zxXHzniN9lLf9OtMJgwYh -/WA9rjLA0u6NpvDntIJ8CsxwyXmA+P5M9zWEGYox+wrZ13+b8KKaa8MFSu1BYBQw -0aoRQm7TIwIEC8Zl3d1Sd9qBa7Ko+gE4uZbqKmxnl4mUnrzhVNXkanjvSr0rmj1A -fsbAddJu+2gw7OyLnflJNZoaLNmzlTnVHpL3prllL+U9bTpITAjc5CgSKL59NVzq -4BZ+Extq1z7XnvwtdbLBFNUjA9tbbws+eC8N3jONFrdI54OagQ97wUNNVQQXOEpR -1VmiiXTTn74eS9fGbbeIJG9gkaSChVtWQbzQRKtqE77RLFi3EjNYsjdj3BP1lB0/ -QFH1T/U67cjF68IeHRaVesd+QnGTbksVtzDfqu1XhUisHWrdOWnk4Xl4vs4Fv6EM -94B7IWcnMFk= ------END CERTIFICATE----- - -# Issuer: CN=Staat der Nederlanden EV Root CA O=Staat der Nederlanden -# Subject: CN=Staat der Nederlanden EV Root CA O=Staat der Nederlanden -# Label: "Staat der Nederlanden EV Root CA" -# Serial: 10000013 -# MD5 Fingerprint: fc:06:af:7b:e8:1a:f1:9a:b4:e8:d2:70:1f:c0:f5:ba -# SHA1 Fingerprint: 76:e2:7e:c1:4f:db:82:c1:c0:a6:75:b5:05:be:3d:29:b4:ed:db:bb -# SHA256 Fingerprint: 4d:24:91:41:4c:fe:95:67:46:ec:4c:ef:a6:cf:6f:72:e2:8a:13:29:43:2f:9d:8a:90:7a:c4:cb:5d:ad:c1:5a ------BEGIN CERTIFICATE----- -MIIFcDCCA1igAwIBAgIEAJiWjTANBgkqhkiG9w0BAQsFADBYMQswCQYDVQQGEwJO -TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSkwJwYDVQQDDCBTdGFh -dCBkZXIgTmVkZXJsYW5kZW4gRVYgUm9vdCBDQTAeFw0xMDEyMDgxMTE5MjlaFw0y -MjEyMDgxMTEwMjhaMFgxCzAJBgNVBAYTAk5MMR4wHAYDVQQKDBVTdGFhdCBkZXIg -TmVkZXJsYW5kZW4xKTAnBgNVBAMMIFN0YWF0IGRlciBOZWRlcmxhbmRlbiBFViBS -b290IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA48d+ifkkSzrS -M4M1LGns3Amk41GoJSt5uAg94JG6hIXGhaTK5skuU6TJJB79VWZxXSzFYGgEt9nC -UiY4iKTWO0Cmws0/zZiTs1QUWJZV1VD+hq2kY39ch/aO5ieSZxeSAgMs3NZmdO3d -Z//BYY1jTw+bbRcwJu+r0h8QoPnFfxZpgQNH7R5ojXKhTbImxrpsX23Wr9GxE46p -rfNeaXUmGD5BKyF/7otdBwadQ8QpCiv8Kj6GyzyDOvnJDdrFmeK8eEEzduG/L13l -pJhQDBXd4Pqcfzho0LKmeqfRMb1+ilgnQ7O6M5HTp5gVXJrm0w912fxBmJc+qiXb -j5IusHsMX/FjqTf5m3VpTCgmJdrV8hJwRVXj33NeN/UhbJCONVrJ0yPr08C+eKxC -KFhmpUZtcALXEPlLVPxdhkqHz3/KRawRWrUgUY0viEeXOcDPusBCAUCZSCELa6fS -/ZbV0b5GnUngC6agIk440ME8MLxwjyx1zNDFjFE7PZQIZCZhfbnDZY8UnCHQqv0X -cgOPvZuM5l5Tnrmd74K74bzickFbIZTTRTeU0d8JOV3nI6qaHcptqAqGhYqCvkIH -1vI4gnPah1vlPNOePqc7nvQDs/nxfRN0Av+7oeX6AHkcpmZBiFxgV6YuCcS6/ZrP -px9Aw7vMWgpVSzs4dlG4Y4uElBbmVvMCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB -/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFP6rAJCYniT8qcwaivsnuL8wbqg7 -MA0GCSqGSIb3DQEBCwUAA4ICAQDPdyxuVr5Os7aEAJSrR8kN0nbHhp8dB9O2tLsI -eK9p0gtJ3jPFrK3CiAJ9Brc1AsFgyb/E6JTe1NOpEyVa/m6irn0F3H3zbPB+po3u -2dfOWBfoqSmuc0iH55vKbimhZF8ZE/euBhD/UcabTVUlT5OZEAFTdfETzsemQUHS -v4ilf0X8rLiltTMMgsT7B/Zq5SWEXwbKwYY5EdtYzXc7LMJMD16a4/CrPmEbUCTC -wPTxGfARKbalGAKb12NMcIxHowNDXLldRqANb/9Zjr7dn3LDWyvfjFvO5QxGbJKy -CqNMVEIYFRIYvdr8unRu/8G2oGTYqV9Vrp9canaW2HNnh/tNf1zuacpzEPuKqf2e -vTY4SUmH9A4U8OmHuD+nT3pajnnUk+S7aFKErGzp85hwVXIy+TSrK0m1zSBi5Dp6 -Z2Orltxtrpfs/J92VoguZs9btsmksNcFuuEnL5O7Jiqik7Ab846+HUCjuTaPPoIa -Gl6I6lD4WeKDRikL40Rc4ZW2aZCaFG+XroHPaO+Zmr615+F/+PoTRxZMzG0IQOeL -eG9QgkRQP2YGiqtDhFZKDyAthg710tvSeopLzaXoTvFeJiUBWSOgftL2fiFX1ye8 -FVdMpEbB4IMeDExNH08GGeL5qPQ6gqGyeUN51q1veieQA6TqJIc/2b3Z6fJfUEkc -7uzXLg== ------END CERTIFICATE----- - -# Issuer: CN=IdenTrust Commercial Root CA 1 O=IdenTrust -# Subject: CN=IdenTrust Commercial Root CA 1 O=IdenTrust -# Label: "IdenTrust Commercial Root CA 1" -# Serial: 13298821034946342390520003877796839426 -# MD5 Fingerprint: b3:3e:77:73:75:ee:a0:d3:e3:7e:49:63:49:59:bb:c7 -# SHA1 Fingerprint: df:71:7e:aa:4a:d9:4e:c9:55:84:99:60:2d:48:de:5f:bc:f0:3a:25 -# SHA256 Fingerprint: 5d:56:49:9b:e4:d2:e0:8b:cf:ca:d0:8a:3e:38:72:3d:50:50:3b:de:70:69:48:e4:2f:55:60:30:19:e5:28:ae ------BEGIN CERTIFICATE----- -MIIFYDCCA0igAwIBAgIQCgFCgAAAAUUjyES1AAAAAjANBgkqhkiG9w0BAQsFADBK -MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVu -VHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcNMzQw -MTE2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScw -JQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwggIiMA0GCSqG -SIb3DQEBAQUAA4ICDwAwggIKAoICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4ldhNlT -3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTRgQ18zZshq0PirK1ehm7zCYofWjK9ouuU -+ehcCuz/mNKvcbO0U59Oh++SvL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7gp -S0l4PJNgiCL8mdo2yMKi1CxUAGc1bnO/AljwpN3lsKImesrgNqUZFvX9t++uP0D1 -bVoE/c40yiTcdCMbXTMTEl3EASX2MN0CXZ/g1Ue9tOsbobtJSdifWwLziuQkkORi -T0/Br4sOdBeo0XKIanoBScy0RnnGF7HamB4HWfp1IYVl3ZBWzvurpWCdxJ35UrCL -vYf5jysjCiN2O/cz4ckA82n5S6LgTrx+kzmEB/dEcH7+B1rlsazRGMzyNeVJSQjK -Vsk9+w8YfYs7wRPCTY/JTw436R+hDmrfYi7LNQZReSzIJTj0+kuniVyc0uMNOYZK -dHzVWYfCP04MXFL0PfdSgvHqo6z9STQaKPNBiDoT7uje/5kdX7rL6B7yuVBgwDHT -c+XvvqDtMwt0viAgxGds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+cB7D3hv -l7yTmvmcEpB4eoCHFddydJxVdHixuuFucAS6T6C6aMN7/zHwcz09lCqxC0EOoP5N -iGVreTO01wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB -/zAdBgNVHQ4EFgQU7UQZwNPwBovupHu+QucmVMiONnYwDQYJKoZIhvcNAQELBQAD -ggIBAA2ukDL2pkt8RHYZYR4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi5+U1KMtlwH -6oi6mYtQlNeCgN9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZM4zY0+sLj7wM+x8uwt -LRvM7Kqas6pgghstO8OEPVeKlh6cdbjTMM1gCIOQ045U8U1mwF10A0Cj7oV+wh93 -nAbowacYXVKV7cndJZ5t+qntozo00Fl72u1Q8zW/7esUTTHHYPTa8Yec4kjixsU3 -+wYQ+nVZZjFHKdp2mhzpgq7vmrlR94gjmmmVYjzlVYA211QC//G5Xc7UI2/YRYRK -W2XviQzdFKcgyxilJbQN+QHwotL0AMh0jqEqSI5l2xPE4iUXfeu+h1sXIFRRk0pT -AwvsXcoz7WL9RccvW9xYoIA55vrX/hMUpu09lEpCdNTDd1lzzY9GvlU47/rokTLq -l1gEIt44w8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyqorkqG5w2gXjtw+hG -4iZZRHUe2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoFrXgvzUeF0K+l+J6fZ -mUlO+KWA2yUPHGNiiskzZ2s8EIPGrd6ozRaOjfAHN3Gf8qv8QfXBi+wAN10J5U6A -7/qxXDgGpRtK4dw4LTzcqx+QGtVKnO7RcGzM7vRX+Bi6hG6H ------END CERTIFICATE----- - -# Issuer: CN=IdenTrust Public Sector Root CA 1 O=IdenTrust -# Subject: CN=IdenTrust Public Sector Root CA 1 O=IdenTrust -# Label: "IdenTrust Public Sector Root CA 1" -# Serial: 13298821034946342390521976156843933698 -# MD5 Fingerprint: 37:06:a5:b0:fc:89:9d:ba:f4:6b:8c:1a:64:cd:d5:ba -# SHA1 Fingerprint: ba:29:41:60:77:98:3f:f4:f3:ef:f2:31:05:3b:2e:ea:6d:4d:45:fd -# SHA256 Fingerprint: 30:d0:89:5a:9a:44:8a:26:20:91:63:55:22:d1:f5:20:10:b5:86:7a:ca:e1:2c:78:ef:95:8f:d4:f4:38:9f:2f ------BEGIN CERTIFICATE----- -MIIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQsFADBN -MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVu -VHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwHhcNMTQwMTE2MTc1MzMyWhcN -MzQwMTE2MTc1MzMyWjBNMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0 -MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwggIi -MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2IpT8pEiv6EdrCvsnduTyP4o7 -ekosMSqMjbCpwzFrqHd2hCa2rIFCDQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4IFNGy -RBb06tD6Hi9e28tzQa68ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+ctMlS -bdsHyo+1W/CD80/HLaXIrcuVIKQxKFdYWuSNG5qrng0M8gozOSI5Cpcu81N3uURF -/YTLNiCBWS2ab21ISGHKTN9T0a9SvESfqy9rg3LvdYDaBjMbXcjaY8ZNzaxmMc3R -3j6HEDbhuaR672BQssvKplbgN6+rNBM5Jeg5ZuSYeqoSmJxZZoY+rfGwyj4GD3vw -EUs3oERte8uojHH01bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFnol57plzy -9yLxkA2T26pEUWbMfXYD62qoKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5bQhyLVi9V -GxyhLrXHFub4qjySjmm2AcG1hp2JDws4lFTo6tyePSW8Uybt1as5qsVATFSrsrTZ -2fjXctscvG29ZV/viDUqZi/u9rNl8DONfJhBaUYPQxxp+pu10GFqzcpL2UyQRqsV -WaFHVCkugyhfHMKiq3IXAAaOReyL4jM9f9oZRORicsPfIsbyVtTdX5Vy7W1f90gD -W/3FKqD2cyOEEBsB5wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ -BAUwAwEB/zAdBgNVHQ4EFgQU43HgntinQtnbcZFrlJPrw6PRFKMwDQYJKoZIhvcN -AQELBQADggIBAEf63QqwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv6IAcVYpZmxI1Qj -t2odIFflAWJBF9MJ23XLblSQdf4an4EKwt3X9wnQW3IV5B4Jaj0z8yGa5hV+rVHV -DRDtfULAj+7AmgjVQdZcDiFpboBhDhXAuM/FSRJSzL46zNQuOAXeNf0fb7iAaJg9 -TaDKQGXSc3z1i9kKlT/YPyNtGtEqJBnZhbMX73huqVjRI9PHE+1yJX9dsXNw0H8G -lwmEKYBhHfpe/3OsoOOJuBxxFcbeMX8S3OFtm6/n6J91eEyrRjuazr8FGF1NFTwW -mhlQBJqymm9li1JfPFgEKCXAZmExfrngdbkaqIHWchezxQMxNRF4eKLg6TCMf4Df -WN88uieW4oA0beOY02QnrEh+KHdcxiVhJfiFDGX6xDIvpZgF5PgLZxYWxoK4Mhn5 -+bl53B/N66+rDt0b20XkeucC4pVd/GnwU2lhlXV5C15V5jgclKlZM57IcXR5f1GJ -tshquDDIajjDbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJoCTFx8G34Tkf71oXuxVhA -GaQdp/lLQzfcaFpPz+vCZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv -8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ3Wl9af0AVqW3rLatt8o+Ae+c ------END CERTIFICATE----- - -# Issuer: CN=Entrust Root Certification Authority - G2 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2009 Entrust, Inc. - for authorized use only -# Subject: CN=Entrust Root Certification Authority - G2 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2009 Entrust, Inc. - for authorized use only -# Label: "Entrust Root Certification Authority - G2" -# Serial: 1246989352 -# MD5 Fingerprint: 4b:e2:c9:91:96:65:0c:f4:0e:5a:93:92:a0:0a:fe:b2 -# SHA1 Fingerprint: 8c:f4:27:fd:79:0c:3a:d1:66:06:8d:e8:1e:57:ef:bb:93:22:72:d4 -# SHA256 Fingerprint: 43:df:57:74:b0:3e:7f:ef:5f:e4:0d:93:1a:7b:ed:f1:bb:2e:6b:42:73:8c:4e:6d:38:41:10:3d:3a:a7:f3:39 ------BEGIN CERTIFICATE----- -MIIEPjCCAyagAwIBAgIESlOMKDANBgkqhkiG9w0BAQsFADCBvjELMAkGA1UEBhMC -VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50 -cnVzdC5uZXQvbGVnYWwtdGVybXMxOTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3Qs -IEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ugb25seTEyMDAGA1UEAxMpRW50cnVz -dCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzIwHhcNMDkwNzA3MTcy -NTU0WhcNMzAxMjA3MTc1NTU0WjCBvjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUVu -dHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQvbGVnYWwt -dGVybXMxOTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3QsIEluYy4gLSBmb3IgYXV0 -aG9yaXplZCB1c2Ugb25seTEyMDAGA1UEAxMpRW50cnVzdCBSb290IENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5IC0gRzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQC6hLZy254Ma+KZ6TABp3bqMriVQRrJ2mFOWHLP/vaCeb9zYQYKpSfYs1/T -RU4cctZOMvJyig/3gxnQaoCAAEUesMfnmr8SVycco2gvCoe9amsOXmXzHHfV1IWN -cCG0szLni6LVhjkCsbjSR87kyUnEO6fe+1R9V77w6G7CebI6C1XiUJgWMhNcL3hW -wcKUs/Ja5CeanyTXxuzQmyWC48zCxEXFjJd6BmsqEZ+pCm5IO2/b1BEZQvePB7/1 -U1+cPvQXLOZprE4yTGJ36rfo5bs0vBmLrpxR57d+tVOxMyLlbc9wPBr64ptntoP0 -jaWvYkxN4FisZDQSA/i2jZRjJKRxAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAP -BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqciZ60B7vfec7aVHUbI2fkBJmqzAN -BgkqhkiG9w0BAQsFAAOCAQEAeZ8dlsa2eT8ijYfThwMEYGprmi5ZiXMRrEPR9RP/ -jTkrwPK9T3CMqS/qF8QLVJ7UG5aYMzyorWKiAHarWWluBh1+xLlEjZivEtRh2woZ -Rkfz6/djwUAFQKXSt/S1mja/qYh2iARVBCuch38aNzx+LaUa2NSJXsq9rD1s2G2v -1fN2D807iDginWyTmsQ9v4IbZT+mD12q/OWyFcq1rca8PdCE6OoGcrBNOTJ4vz4R -nAuknZoh8/CbCzB428Hch0P+vGOaysXCHMnHjf87ElgI5rY97HosTvuDls4MPGmH -VHOkc8KT/1EQrBVUAdj8BbGJoX90g5pJ19xOe4pIb4tF9g== ------END CERTIFICATE----- - -# Issuer: CN=Entrust Root Certification Authority - EC1 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2012 Entrust, Inc. - for authorized use only -# Subject: CN=Entrust Root Certification Authority - EC1 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2012 Entrust, Inc. - for authorized use only -# Label: "Entrust Root Certification Authority - EC1" -# Serial: 51543124481930649114116133369 -# MD5 Fingerprint: b6:7e:1d:f0:58:c5:49:6c:24:3b:3d:ed:98:18:ed:bc -# SHA1 Fingerprint: 20:d8:06:40:df:9b:25:f5:12:25:3a:11:ea:f7:59:8a:eb:14:b5:47 -# SHA256 Fingerprint: 02:ed:0e:b2:8c:14:da:45:16:5c:56:67:91:70:0d:64:51:d7:fb:56:f0:b2:ab:1d:3b:8e:b0:70:e5:6e:df:f5 ------BEGIN CERTIFICATE----- -MIIC+TCCAoCgAwIBAgINAKaLeSkAAAAAUNCR+TAKBggqhkjOPQQDAzCBvzELMAkG -A1UEBhMCVVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3 -d3cuZW50cnVzdC5uZXQvbGVnYWwtdGVybXMxOTA3BgNVBAsTMChjKSAyMDEyIEVu -dHJ1c3QsIEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ugb25seTEzMDEGA1UEAxMq -RW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRUMxMB4XDTEy -MTIxODE1MjUzNloXDTM3MTIxODE1NTUzNlowgb8xCzAJBgNVBAYTAlVTMRYwFAYD -VQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0 -L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxMiBFbnRydXN0LCBJbmMuIC0g -Zm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxMzAxBgNVBAMTKkVudHJ1c3QgUm9vdCBD -ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEVDMTB2MBAGByqGSM49AgEGBSuBBAAi -A2IABIQTydC6bUF74mzQ61VfZgIaJPRbiWlH47jCffHyAsWfoPZb1YsGGYZPUxBt -ByQnoaD41UcZYUx9ypMn6nQM72+WCf5j7HBdNq1nd67JnXxVRDqiY1Ef9eNi1KlH -Bz7MIKNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O -BBYEFLdj5xrdjekIplWDpOBqUEFlEUJJMAoGCCqGSM49BAMDA2cAMGQCMGF52OVC -R98crlOZF7ZvHH3hvxGU0QOIdeSNiaSKd0bebWHvAvX7td/M/k7//qnmpwIwW5nX -hTcGtXsI/esni0qU+eH6p44mCOh8kmhtc9hvJqwhAriZtyZBWyVgrtBIGu4G ------END CERTIFICATE----- - -# Issuer: CN=CFCA EV ROOT O=China Financial Certification Authority -# Subject: CN=CFCA EV ROOT O=China Financial Certification Authority -# Label: "CFCA EV ROOT" -# Serial: 407555286 -# MD5 Fingerprint: 74:e1:b6:ed:26:7a:7a:44:30:33:94:ab:7b:27:81:30 -# SHA1 Fingerprint: e2:b8:29:4b:55:84:ab:6b:58:c2:90:46:6c:ac:3f:b8:39:8f:84:83 -# SHA256 Fingerprint: 5c:c3:d7:8e:4e:1d:5e:45:54:7a:04:e6:87:3e:64:f9:0c:f9:53:6d:1c:cc:2e:f8:00:f3:55:c4:c5:fd:70:fd ------BEGIN CERTIFICATE----- -MIIFjTCCA3WgAwIBAgIEGErM1jANBgkqhkiG9w0BAQsFADBWMQswCQYDVQQGEwJD -TjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9y -aXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJPT1QwHhcNMTIwODA4MDMwNzAxWhcNMjkx -MjMxMDMwNzAxWjBWMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5j -aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJP -T1QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDXXWvNED8fBVnVBU03 -sQ7smCuOFR36k0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YMrM8irq93VCpL -TIpTUnrD7i7es3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8Vz3IvHWOX6Jn5 -/ZOkVIBMUtRSqy5J35DNuF++P96hyk0g1CXohClTt7GIH//62pCfCqktQT+x8Rgp -7hZZLDRJGqgG16iI0gNyejLi6mhNbiyWZXvKWfry4t3uMCz7zEasxGPrb382KzRz -EpR/38wmnvFyXVBlWY9ps4deMm/DGIq1lY+wejfeWkU7xzbh72fROdOXW3NiGUgt -hxwG+3SYIElz8AXSG7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+uFzJlU9fpy25IGvP -a931DfSCt/SyZi4QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8NNkt0yxoekN+kWzqot -aK8KgWU6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5ARwiRIlk9oKmSJgamNg -TnYGmE69g60dWIolhdLHZR4tjsbftsbhf4oEIRUpdPA+nJCdDC7xij5aqgwJHsfV -PKPtl8MeNPo4+QgO48BdK4PRVmrJtqhUUy54Mmc9gn900PvhtgVguXDbjgv5E1hv -cWAQUhC5wUEJ73IfZzF4/5YFjQIDAQABo2MwYTAfBgNVHSMEGDAWgBTj/i39KNAL -tbq2osS/BqoFjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAd -BgNVHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQYJKoZIhvcNAQELBQADggIB -ACXGumvrh8vegjmWPfBEp2uEcwPenStPuiB/vHiyz5ewG5zz13ku9Ui20vsXiObT -ej/tUxPQ4i9qecsAIyjmHjdXNYmEwnZPNDatZ8POQQaIxffu2Bq41gt/UP+TqhdL -jOztUmCypAbqTuv0axn96/Ua4CUqmtzHQTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBS -ESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9BC2sGE5uPhnEFtC+NiWYzKXZUmhH4J/qy -P5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8rUQElsgIfXBDrDMlI1Dlb4pd19 -xIsNER9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQAUtDKXeMOZePglr4UeWJoBjnaH9d -Ci77o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzEhLN -5mydLIhyPDCBBpEi6lmt2hkuIsKNuYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEdQLpe -/v5WOaHIz16eGWRGENoXkbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+Z -AAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3CekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ -5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su ------END CERTIFICATE----- - -# Issuer: CN=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 H5 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. -# Subject: CN=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 H5 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. -# Label: "T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 H5" -# Serial: 156233699172481 -# MD5 Fingerprint: da:70:8e:f0:22:df:93:26:f6:5f:9f:d3:15:06:52:4e -# SHA1 Fingerprint: c4:18:f6:4d:46:d1:df:00:3d:27:30:13:72:43:a9:12:11:c6:75:fb -# SHA256 Fingerprint: 49:35:1b:90:34:44:c1:85:cc:dc:5c:69:3d:24:d8:55:5c:b2:08:d6:a8:14:13:07:69:9f:4a:f0:63:19:9d:78 ------BEGIN CERTIFICATE----- -MIIEJzCCAw+gAwIBAgIHAI4X/iQggTANBgkqhkiG9w0BAQsFADCBsTELMAkGA1UE -BhMCVFIxDzANBgNVBAcMBkFua2FyYTFNMEsGA1UECgxEVMOcUktUUlVTVCBCaWxn -aSDEsGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkg -QS7Fni4xQjBABgNVBAMMOVTDnFJLVFJVU1QgRWxla3Ryb25payBTZXJ0aWZpa2Eg -SGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSBINTAeFw0xMzA0MzAwODA3MDFaFw0yMzA0 -MjgwODA3MDFaMIGxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMU0wSwYD -VQQKDERUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8 -dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjFCMEAGA1UEAww5VMOcUktUUlVTVCBF -bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIEg1MIIB -IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCUZ4WWe60ghUEoI5RHwWrom -/4NZzkQqL/7hzmAD/I0Dpe3/a6i6zDQGn1k19uwsu537jVJp45wnEFPzpALFp/kR -Gml1bsMdi9GYjZOHp3GXDSHHmflS0yxjXVW86B8BSLlg/kJK9siArs1mep5Fimh3 -4khon6La8eHBEJ/rPCmBp+EyCNSgBbGM+42WAA4+Jd9ThiI7/PS98wl+d+yG6w8z -5UNP9FR1bSmZLmZaQ9/LXMrI5Tjxfjs1nQ/0xVqhzPMggCTTV+wVunUlm+hkS7M0 -hO8EuPbJbKoCPrZV4jI3X/xml1/N1p7HIL9Nxqw/dV8c7TKcfGkAaZHjIxhT6QID -AQABo0IwQDAdBgNVHQ4EFgQUVpkHHtOsDGlktAxQR95DLL4gwPswDgYDVR0PAQH/ -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAJ5FdnsX -SDLyOIspve6WSk6BGLFRRyDN0GSxDsnZAdkJzsiZ3GglE9Rc8qPoBP5yCccLqh0l -VX6Wmle3usURehnmp349hQ71+S4pL+f5bFgWV1Al9j4uPqrtd3GqqpmWRgqujuwq -URawXs3qZwQcWDD1YIq9pr1N5Za0/EKJAWv2cMhQOQwt1WbZyNKzMrcbGW3LM/nf -peYVhDfwwvJllpKQd/Ct9JDpEXjXk4nAPQu6KfTomZ1yju2dL+6SfaHx/126M2CF -Yv4HAqGEVka+lgqaE9chTLd8B59OTj+RdPsnnRHM3eaxynFNExc5JsUpISuTKWqW -+qtB4Uu2NQvAmxU= ------END CERTIFICATE----- - -# Issuer: CN=Certinomis - Root CA O=Certinomis OU=0002 433998903 -# Subject: CN=Certinomis - Root CA O=Certinomis OU=0002 433998903 -# Label: "Certinomis - Root CA" -# Serial: 1 -# MD5 Fingerprint: 14:0a:fd:8d:a8:28:b5:38:69:db:56:7e:61:22:03:3f -# SHA1 Fingerprint: 9d:70:bb:01:a5:a4:a0:18:11:2e:f7:1c:01:b9:32:c5:34:e7:88:a8 -# SHA256 Fingerprint: 2a:99:f5:bc:11:74:b7:3c:bb:1d:62:08:84:e0:1c:34:e5:1c:cb:39:78:da:12:5f:0e:33:26:88:83:bf:41:58 ------BEGIN CERTIFICATE----- -MIIFkjCCA3qgAwIBAgIBATANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJGUjET -MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxHTAb -BgNVBAMTFENlcnRpbm9taXMgLSBSb290IENBMB4XDTEzMTAyMTA5MTcxOFoXDTMz -MTAyMTA5MTcxOFowWjELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNlcnRpbm9taXMx -FzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMR0wGwYDVQQDExRDZXJ0aW5vbWlzIC0g -Um9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANTMCQosP5L2 -fxSeC5yaah1AMGT9qt8OHgZbn1CF6s2Nq0Nn3rD6foCWnoR4kkjW4znuzuRZWJfl -LieY6pOod5tK8O90gC3rMB+12ceAnGInkYjwSond3IjmFPnVAy//ldu9n+ws+hQV -WZUKxkd8aRi5pwP5ynapz8dvtF4F/u7BUrJ1Mofs7SlmO/NKFoL21prbcpjp3vDF -TKWrteoB4owuZH9kb/2jJZOLyKIOSY008B/sWEUuNKqEUL3nskoTuLAPrjhdsKkb -5nPJWqHZZkCqqU2mNAKthH6yI8H7KsZn9DS2sJVqM09xRLWtwHkziOC/7aOgFLSc -CbAK42C++PhmiM1b8XcF4LVzbsF9Ri6OSyemzTUK/eVNfaoqoynHWmgE6OXWk6Ri -wsXm9E/G+Z8ajYJJGYrKWUM66A0ywfRMEwNvbqY/kXPLynNvEiCL7sCCeN5LLsJJ -wx3tFvYk9CcbXFcx3FXuqB5vbKziRcxXV4p1VxngtViZSTYxPDMBbRZKzbgqg4SG -m/lg0h9tkQPTYKbVPZrdd5A9NaSfD171UkRpucC63M9933zZxKyGIjK8e2uR73r4 -F2iw4lNVYC2vPsKD2NkJK/DAZNuHi5HMkesE/Xa0lZrmFAYb1TQdvtj/dBxThZng -WVJKYe2InmtJiUZ+IFrZ50rlau7SZRFDAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIB -BjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTvkUz1pcMw6C8I6tNxIqSSaHh0 -2TAfBgNVHSMEGDAWgBTvkUz1pcMw6C8I6tNxIqSSaHh02TANBgkqhkiG9w0BAQsF -AAOCAgEAfj1U2iJdGlg+O1QnurrMyOMaauo++RLrVl89UM7g6kgmJs95Vn6RHJk/ -0KGRHCwPT5iVWVO90CLYiF2cN/z7ZMF4jIuaYAnq1fohX9B0ZedQxb8uuQsLrbWw -F6YSjNRieOpWauwK0kDDPAUwPk2Ut59KA9N9J0u2/kTO+hkzGm2kQtHdzMjI1xZS -g081lLMSVX3l4kLr5JyTCcBMWwerx20RoFAXlCOotQqSD7J6wWAsOMwaplv/8gzj -qh8c3LigkyfeY+N/IZ865Z764BNqdeuWXGKRlI5nU7aJ+BIJy29SWwNyhlCVCNSN -h4YVH5Uk2KRvms6knZtt0rJ2BobGVgjF6wnaNsIbW0G+YSrjcOa4pvi2WsS9Iff/ -ql+hbHY5ZtbqTFXhADObE5hjyW/QASAJN1LnDE8+zbz1X5YnpyACleAu6AdBBR8V -btaw5BngDwKTACdyxYvRVB9dSsNAl35VpnzBMwQUAR1JIGkLGZOdblgi90AMRgwj -Y/M50n92Uaf0yKHxDHYiI0ZSKS3io0EHVmmY0gUJvGnHWmHNj4FgFU2A3ZDifcRQ -8ow7bkrHxuaAKzyBvBGAFhAn1/DNP3nMcyrDflOR1m749fPH0FFNjkulW+YZFzvW -gQncItzujrnEj1PhZ7szuIgVRs/taTX/dQ1G885x4cVrhkIGuUE= ------END CERTIFICATE----- - -# Issuer: CN=OISTE WISeKey Global Root GB CA O=WISeKey OU=OISTE Foundation Endorsed -# Subject: CN=OISTE WISeKey Global Root GB CA O=WISeKey OU=OISTE Foundation Endorsed -# Label: "OISTE WISeKey Global Root GB CA" -# Serial: 157768595616588414422159278966750757568 -# MD5 Fingerprint: a4:eb:b9:61:28:2e:b7:2f:98:b0:35:26:90:99:51:1d -# SHA1 Fingerprint: 0f:f9:40:76:18:d3:d7:6a:4b:98:f0:a8:35:9e:0c:fd:27:ac:cc:ed -# SHA256 Fingerprint: 6b:9c:08:e8:6e:b0:f7:67:cf:ad:65:cd:98:b6:21:49:e5:49:4a:67:f5:84:5e:7b:d1:ed:01:9f:27:b8:6b:d6 ------BEGIN CERTIFICATE----- -MIIDtTCCAp2gAwIBAgIQdrEgUnTwhYdGs/gjGvbCwDANBgkqhkiG9w0BAQsFADBt -MQswCQYDVQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUg -Rm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9i -YWwgUm9vdCBHQiBDQTAeFw0xNDEyMDExNTAwMzJaFw0zOTEyMDExNTEwMzFaMG0x -CzAJBgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQLExlPSVNURSBG -b3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2Jh -bCBSb290IEdCIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2Be3 -HEokKtaXscriHvt9OO+Y9bI5mE4nuBFde9IllIiCFSZqGzG7qFshISvYD06fWvGx -WuR51jIjK+FTzJlFXHtPrby/h0oLS5daqPZI7H17Dc0hBt+eFf1Biki3IPShehtX -1F1Q/7pn2COZH8g/497/b1t3sWtuuMlk9+HKQUYOKXHQuSP8yYFfTvdv37+ErXNk -u7dCjmn21HYdfp2nuFeKUWdy19SouJVUQHMD9ur06/4oQnc/nSMbsrY9gBQHTC5P -99UKFg29ZkM3fiNDecNAhvVMKdqOmq0NpQSHiB6F4+lT1ZvIiwNjeOvgGUpuuy9r -M2RYk61pv48b74JIxwIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw -AwEB/zAdBgNVHQ4EFgQUNQ/INmNe4qPs+TtmFc5RUuORmj0wEAYJKwYBBAGCNxUB -BAMCAQAwDQYJKoZIhvcNAQELBQADggEBAEBM+4eymYGQfp3FsLAmzYh7KzKNbrgh -cViXfa43FK8+5/ea4n32cZiZBKpDdHij40lhPnOMTZTg+XHEthYOU3gf1qKHLwI5 -gSk8rxWYITD+KJAAjNHhy/peyP34EEY7onhCkRd0VQreUGdNZtGn//3ZwLWoo4rO -ZvUPQ82nK1d7Y0Zqqi5S2PTt4W2tKZB4SLrhI6qjiey1q5bAtEuiHZeeevJuQHHf -aPFlTc58Bd9TZaml8LGXBHAVRgOY1NK/VLSgWH1Sb9pWJmLU2NuJMW8c8CLC02Ic -Nc1MaRVUGpCY3useX8p3x8uOPUNpnJpY0CQ73xtAln41rYHHTnG6iBM= ------END CERTIFICATE----- - -# Issuer: CN=SZAFIR ROOT CA2 O=Krajowa Izba Rozliczeniowa S.A. -# Subject: CN=SZAFIR ROOT CA2 O=Krajowa Izba Rozliczeniowa S.A. -# Label: "SZAFIR ROOT CA2" -# Serial: 357043034767186914217277344587386743377558296292 -# MD5 Fingerprint: 11:64:c1:89:b0:24:b1:8c:b1:07:7e:89:9e:51:9e:99 -# SHA1 Fingerprint: e2:52:fa:95:3f:ed:db:24:60:bd:6e:28:f3:9c:cc:cf:5e:b3:3f:de -# SHA256 Fingerprint: a1:33:9d:33:28:1a:0b:56:e5:57:d3:d3:2b:1c:e7:f9:36:7e:b0:94:bd:5f:a7:2a:7e:50:04:c8:de:d7:ca:fe ------BEGIN CERTIFICATE----- -MIIDcjCCAlqgAwIBAgIUPopdB+xV0jLVt+O2XwHrLdzk1uQwDQYJKoZIhvcNAQEL -BQAwUTELMAkGA1UEBhMCUEwxKDAmBgNVBAoMH0tyYWpvd2EgSXpiYSBSb3psaWN6 -ZW5pb3dhIFMuQS4xGDAWBgNVBAMMD1NaQUZJUiBST09UIENBMjAeFw0xNTEwMTkw -NzQzMzBaFw0zNTEwMTkwNzQzMzBaMFExCzAJBgNVBAYTAlBMMSgwJgYDVQQKDB9L -cmFqb3dhIEl6YmEgUm96bGljemVuaW93YSBTLkEuMRgwFgYDVQQDDA9TWkFGSVIg -Uk9PVCBDQTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3vD5QqEvN -QLXOYeeWyrSh2gwisPq1e3YAd4wLz32ohswmUeQgPYUM1ljj5/QqGJ3a0a4m7utT -3PSQ1hNKDJA8w/Ta0o4NkjrcsbH/ON7Dui1fgLkCvUqdGw+0w8LBZwPd3BucPbOw -3gAeqDRHu5rr/gsUvTaE2g0gv/pby6kWIK05YO4vdbbnl5z5Pv1+TW9NL++IDWr6 -3fE9biCloBK0TXC5ztdyO4mTp4CEHCdJckm1/zuVnsHMyAHs6A6KCpbns6aH5db5 -BSsNl0BwPLqsdVqc1U2dAgrSS5tmS0YHF2Wtn2yIANwiieDhZNRnvDF5YTy7ykHN -XGoAyDw4jlivAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD -AgEGMB0GA1UdDgQWBBQuFqlKGLXLzPVvUPMjX/hd56zwyDANBgkqhkiG9w0BAQsF -AAOCAQEAtXP4A9xZWx126aMqe5Aosk3AM0+qmrHUuOQn/6mWmc5G4G18TKI4pAZw -8PRBEew/R40/cof5O/2kbytTAOD/OblqBw7rHRz2onKQy4I9EYKL0rufKq8h5mOG -nXkZ7/e7DDWQw4rtTw/1zBLZpD67oPwglV9PJi8RI4NOdQcPv5vRtB3pEAT+ymCP -oky4rc/hkA/NrgrHXXu3UNLUYfrVFdvXn4dRVOul4+vJhaAlIDf7js4MNIThPIGy -d05DpYhfhmehPea0XGG2Ptv+tyjFogeutcrKjSoS75ftwjCkySp6+/NNIxuZMzSg -LvWpCz/UXeHPhJ/iGcJfitYgHuNztw== ------END CERTIFICATE----- - -# Issuer: CN=Certum Trusted Network CA 2 O=Unizeto Technologies S.A. OU=Certum Certification Authority -# Subject: CN=Certum Trusted Network CA 2 O=Unizeto Technologies S.A. OU=Certum Certification Authority -# Label: "Certum Trusted Network CA 2" -# Serial: 44979900017204383099463764357512596969 -# MD5 Fingerprint: 6d:46:9e:d9:25:6d:08:23:5b:5e:74:7d:1e:27:db:f2 -# SHA1 Fingerprint: d3:dd:48:3e:2b:bf:4c:05:e8:af:10:f5:fa:76:26:cf:d3:dc:30:92 -# SHA256 Fingerprint: b6:76:f2:ed:da:e8:77:5c:d3:6c:b0:f6:3c:d1:d4:60:39:61:f4:9e:62:65:ba:01:3a:2f:03:07:b6:d0:b8:04 ------BEGIN CERTIFICATE----- -MIIF0jCCA7qgAwIBAgIQIdbQSk8lD8kyN/yqXhKN6TANBgkqhkiG9w0BAQ0FADCB -gDELMAkGA1UEBhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMu -QS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEkMCIG -A1UEAxMbQ2VydHVtIFRydXN0ZWQgTmV0d29yayBDQSAyMCIYDzIwMTExMDA2MDgz -OTU2WhgPMjA0NjEwMDYwODM5NTZaMIGAMQswCQYDVQQGEwJQTDEiMCAGA1UEChMZ -VW5pemV0byBUZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRp -ZmljYXRpb24gQXV0aG9yaXR5MSQwIgYDVQQDExtDZXJ0dW0gVHJ1c3RlZCBOZXR3 -b3JrIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC9+Xj45tWA -DGSdhhuWZGc/IjoedQF97/tcZ4zJzFxrqZHmuULlIEub2pt7uZld2ZuAS9eEQCsn -0+i6MLs+CRqnSZXvK0AkwpfHp+6bJe+oCgCXhVqqndwpyeI1B+twTUrWwbNWuKFB -OJvR+zF/j+Bf4bE/D44WSWDXBo0Y+aomEKsq09DRZ40bRr5HMNUuctHFY9rnY3lE -fktjJImGLjQ/KUxSiyqnwOKRKIm5wFv5HdnnJ63/mgKXwcZQkpsCLL2puTRZCr+E -Sv/f/rOf69me4Jgj7KZrdxYq28ytOxykh9xGc14ZYmhFV+SQgkK7QtbwYeDBoz1m -o130GO6IyY0XRSmZMnUCMe4pJshrAua1YkV/NxVaI2iJ1D7eTiew8EAMvE0Xy02i -sx7QBlrd9pPPV3WZ9fqGGmd4s7+W/jTcvedSVuWz5XV710GRBdxdaeOVDUO5/IOW -OZV7bIBaTxNyxtd9KXpEulKkKtVBRgkg/iKgtlswjbyJDNXXcPiHUv3a76xRLgez -Tv7QCdpw75j6VuZt27VXS9zlLCUVyJ4ueE742pyehizKV/Ma5ciSixqClnrDvFAS -adgOWkaLOusm+iPJtrCBvkIApPjW/jAux9JG9uWOdf3yzLnQh1vMBhBgu4M1t15n -3kfsmUjxpKEV/q2MYo45VU85FrmxY53/twIDAQABo0IwQDAPBgNVHRMBAf8EBTAD -AQH/MB0GA1UdDgQWBBS2oVQ5AsOgP46KvPrU+Bym0ToO/TAOBgNVHQ8BAf8EBAMC -AQYwDQYJKoZIhvcNAQENBQADggIBAHGlDs7k6b8/ONWJWsQCYftMxRQXLYtPU2sQ -F/xlhMcQSZDe28cmk4gmb3DWAl45oPePq5a1pRNcgRRtDoGCERuKTsZPpd1iHkTf -CVn0W3cLN+mLIMb4Ck4uWBzrM9DPhmDJ2vuAL55MYIR4PSFk1vtBHxgP58l1cb29 -XN40hz5BsA72udY/CROWFC/emh1auVbONTqwX3BNXuMp8SMoclm2q8KMZiYcdywm -djWLKKdpoPk79SPdhRB0yZADVpHnr7pH1BKXESLjokmUbOe3lEu6LaTaM4tMpkT/ -WjzGHWTYtTHkpjx6qFcL2+1hGsvxznN3Y6SHb0xRONbkX8eftoEq5IVIeVheO/jb -AoJnwTnbw3RLPTYe+SmTiGhbqEQZIfCn6IENLOiTNrQ3ssqwGyZ6miUfmpqAnksq -P/ujmv5zMnHCnsZy4YpoJ/HkD7TETKVhk/iXEAcqMCWpuchxuO9ozC1+9eB+D4Ko -b7a6bINDd82Kkhehnlt4Fj1F4jNy3eFmypnTycUm/Q1oBEauttmbjL4ZvrHG8hnj -XALKLNhvSgfZyTXaQHXyxKcZb55CEJh15pWLYLztxRLXis7VmFxWlgPF7ncGNf/P -5O4/E2Hu29othfDNrp2yGAlFw5Khchf8R7agCyzxxN5DaAhqXzvwdmP7zAYspsbi -DrW5viSP ------END CERTIFICATE----- - -# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority -# Subject: CN=Hellenic Academic and Research Institutions RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority -# Label: "Hellenic Academic and Research Institutions RootCA 2015" -# Serial: 0 -# MD5 Fingerprint: ca:ff:e2:db:03:d9:cb:4b:e9:0f:ad:84:fd:7b:18:ce -# SHA1 Fingerprint: 01:0c:06:95:a6:98:19:14:ff:bf:5f:c6:b0:b6:95:ea:29:e9:12:a6 -# SHA256 Fingerprint: a0:40:92:9a:02:ce:53:b4:ac:f4:f2:ff:c6:98:1c:e4:49:6f:75:5e:6d:45:fe:0b:2a:69:2b:cd:52:52:3f:36 ------BEGIN CERTIFICATE----- -MIIGCzCCA/OgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBpjELMAkGA1UEBhMCR1Ix -DzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5k -IFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxQDA+BgNVBAMT -N0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgUm9v -dENBIDIwMTUwHhcNMTUwNzA3MTAxMTIxWhcNNDAwNjMwMTAxMTIxWjCBpjELMAkG -A1UEBhMCR1IxDzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNh -ZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkx -QDA+BgNVBAMTN0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 -dGlvbnMgUm9vdENBIDIwMTUwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC -AQDC+Kk/G4n8PDwEXT2QNrCROnk8ZlrvbTkBSRq0t89/TSNTt5AA4xMqKKYx8ZEA -4yjsriFBzh/a/X0SWwGDD7mwX5nh8hKDgE0GPt+sr+ehiGsxr/CL0BgzuNtFajT0 -AoAkKAoCFZVedioNmToUW/bLy1O8E00BiDeUJRtCvCLYjqOWXjrZMts+6PAQZe10 -4S+nfK8nNLspfZu2zwnI5dMK/IhlZXQK3HMcXM1AsRzUtoSMTFDPaI6oWa7CJ06C -ojXdFPQf/7J31Ycvqm59JCfnxssm5uX+Zwdj2EUN3TpZZTlYepKZcj2chF6IIbjV -9Cz82XBST3i4vTwri5WY9bPRaM8gFH5MXF/ni+X1NYEZN9cRCLdmvtNKzoNXADrD -gfgXy5I2XdGj2HUb4Ysn6npIQf1FGQatJ5lOwXBH3bWfgVMS5bGMSF0xQxfjjMZ6 -Y5ZLKTBOhE5iGV48zpeQpX8B653g+IuJ3SWYPZK2fu/Z8VFRfS0myGlZYeCsargq -NhEEelC9MoS+L9xy1dcdFkfkR2YgP/SWxa+OAXqlD3pk9Q0Yh9muiNX6hME6wGko -LfINaFGq46V3xqSQDqE3izEjR8EJCOtu93ib14L8hCCZSRm2Ekax+0VVFqmjZayc -Bw/qa9wfLgZy7IaIEuQt218FL+TwA9MmM+eAws1CoRc0CwIDAQABo0IwQDAPBgNV -HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUcRVnyMjJvXVd -ctA4GGqd83EkVAswDQYJKoZIhvcNAQELBQADggIBAHW7bVRLqhBYRjTyYtcWNl0I -XtVsyIe9tC5G8jH4fOpCtZMWVdyhDBKg2mF+D1hYc2Ryx+hFjtyp8iY/xnmMsVMI -M4GwVhO+5lFc2JsKT0ucVlMC6U/2DWDqTUJV6HwbISHTGzrMd/K4kPFox/la/vot -9L/J9UUbzjgQKjeKeaO04wlshYaT/4mWJ3iBj2fjRnRUjtkNaeJK9E10A/+yd+2V -Z5fkscWrv2oj6NSU4kQoYsRL4vDY4ilrGnB+JGGTe08DMiUNRSQrlrRGar9KC/ea -j8GsGsVn82800vpzY4zvFrCopEYq+OsS7HK07/grfoxSwIuEVPkvPuNVqNxmsdnh -X9izjFk0WaSrT2y7HxjbdavYy5LNlDhhDgcGH0tGEPEVvo2FXDtKK4F5D7Rpn0lQ -l033DlZdwJVqwjbDG2jJ9SrcR5q+ss7FJej6A7na+RZukYT1HCjI/CbM1xyQVqdf -bzoEvM14iQuODy+jqk+iGxI9FghAD/FGTNeqewjBCvVtJ94Cj8rDtSvK6evIIVM4 -pcw72Hc3MKJP2W/R8kCtQXoXxdZKNYm3QdV8hn9VTYNKpXMgwDqvkPGaJI7ZjnHK -e7iG2rKPmT4dEw0SEe7Uq/DpFXYC5ODfqiAeW2GFZECpkJcNrVPSWh2HagCXZWK0 -vm9qp/UsQu0yrbYhnr68 ------END CERTIFICATE----- - -# Issuer: CN=Hellenic Academic and Research Institutions ECC RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority -# Subject: CN=Hellenic Academic and Research Institutions ECC RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority -# Label: "Hellenic Academic and Research Institutions ECC RootCA 2015" -# Serial: 0 -# MD5 Fingerprint: 81:e5:b4:17:eb:c2:f5:e1:4b:0d:41:7b:49:92:fe:ef -# SHA1 Fingerprint: 9f:f1:71:8d:92:d5:9a:f3:7d:74:97:b4:bc:6f:84:68:0b:ba:b6:66 -# SHA256 Fingerprint: 44:b5:45:aa:8a:25:e6:5a:73:ca:15:dc:27:fc:36:d2:4c:1c:b9:95:3a:06:65:39:b1:15:82:dc:48:7b:48:33 ------BEGIN CERTIFICATE----- -MIICwzCCAkqgAwIBAgIBADAKBggqhkjOPQQDAjCBqjELMAkGA1UEBhMCR1IxDzAN -BgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl -c2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxRDBCBgNVBAMTO0hl -bGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgRUNDIFJv -b3RDQSAyMDE1MB4XDTE1MDcwNzEwMzcxMloXDTQwMDYzMDEwMzcxMlowgaoxCzAJ -BgNVBAYTAkdSMQ8wDQYDVQQHEwZBdGhlbnMxRDBCBgNVBAoTO0hlbGxlbmljIEFj -YWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9yaXR5 -MUQwQgYDVQQDEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0 -dXRpb25zIEVDQyBSb290Q0EgMjAxNTB2MBAGByqGSM49AgEGBSuBBAAiA2IABJKg -QehLgoRc4vgxEZmGZE4JJS+dQS8KrjVPdJWyUWRrjWvmP3CV8AVER6ZyOFB2lQJa -jq4onvktTpnvLEhvTCUp6NFxW98dwXU3tNf6e3pCnGoKVlp8aQuqgAkkbH7BRqNC -MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFLQi -C4KZJAEOnLvkDv2/+5cgk5kqMAoGCCqGSM49BAMCA2cAMGQCMGfOFmI4oqxiRaep -lSTAGiecMjvAwNW6qef4BENThe5SId6d9SWDPp5YSy/XZxMOIQIwBeF1Ad5o7Sof -TUwJCA3sS61kFyjndc5FZXIhF8siQQ6ME5g4mlRtm8rifOoCWCKR ------END CERTIFICATE----- - -# Issuer: CN=Certplus Root CA G1 O=Certplus -# Subject: CN=Certplus Root CA G1 O=Certplus -# Label: "Certplus Root CA G1" -# Serial: 1491911565779898356709731176965615564637713 -# MD5 Fingerprint: 7f:09:9c:f7:d9:b9:5c:69:69:56:d5:37:3e:14:0d:42 -# SHA1 Fingerprint: 22:fd:d0:b7:fd:a2:4e:0d:ac:49:2c:a0:ac:a6:7b:6a:1f:e3:f7:66 -# SHA256 Fingerprint: 15:2a:40:2b:fc:df:2c:d5:48:05:4d:22:75:b3:9c:7f:ca:3e:c0:97:80:78:b0:f0:ea:76:e5:61:a6:c7:43:3e ------BEGIN CERTIFICATE----- -MIIFazCCA1OgAwIBAgISESBVg+QtPlRWhS2DN7cs3EYRMA0GCSqGSIb3DQEBDQUA -MD4xCzAJBgNVBAYTAkZSMREwDwYDVQQKDAhDZXJ0cGx1czEcMBoGA1UEAwwTQ2Vy -dHBsdXMgUm9vdCBDQSBHMTAeFw0xNDA1MjYwMDAwMDBaFw0zODAxMTUwMDAwMDBa -MD4xCzAJBgNVBAYTAkZSMREwDwYDVQQKDAhDZXJ0cGx1czEcMBoGA1UEAwwTQ2Vy -dHBsdXMgUm9vdCBDQSBHMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB -ANpQh7bauKk+nWT6VjOaVj0W5QOVsjQcmm1iBdTYj+eJZJ+622SLZOZ5KmHNr49a -iZFluVj8tANfkT8tEBXgfs+8/H9DZ6itXjYj2JizTfNDnjl8KvzsiNWI7nC9hRYt -6kuJPKNxQv4c/dMcLRC4hlTqQ7jbxofaqK6AJc96Jh2qkbBIb6613p7Y1/oA/caP -0FG7Yn2ksYyy/yARujVjBYZHYEMzkPZHogNPlk2dT8Hq6pyi/jQu3rfKG3akt62f -6ajUeD94/vI4CTYd0hYCyOwqaK/1jpTvLRN6HkJKHRUxrgwEV/xhc/MxVoYxgKDE -EW4wduOU8F8ExKyHcomYxZ3MVwia9Az8fXoFOvpHgDm2z4QTd28n6v+WZxcIbekN -1iNQMLAVdBM+5S//Ds3EC0pd8NgAM0lm66EYfFkuPSi5YXHLtaW6uOrc4nBvCGrc -h2c0798wct3zyT8j/zXhviEpIDCB5BmlIOklynMxdCm+4kLV87ImZsdo/Rmz5yCT -mehd4F6H50boJZwKKSTUzViGUkAksnsPmBIgJPaQbEfIDbsYIC7Z/fyL8inqh3SV -4EJQeIQEQWGw9CEjjy3LKCHyamz0GqbFFLQ3ZU+V/YDI+HLlJWvEYLF7bY5KinPO -WftwenMGE9nTdDckQQoRb5fc5+R+ob0V8rqHDz1oihYHAgMBAAGjYzBhMA4GA1Ud -DwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSowcCbkahDFXxd -Bie0KlHYlwuBsTAfBgNVHSMEGDAWgBSowcCbkahDFXxdBie0KlHYlwuBsTANBgkq -hkiG9w0BAQ0FAAOCAgEAnFZvAX7RvUz1isbwJh/k4DgYzDLDKTudQSk0YcbX8ACh -66Ryj5QXvBMsdbRX7gp8CXrc1cqh0DQT+Hern+X+2B50ioUHj3/MeXrKls3N/U/7 -/SMNkPX0XtPGYX2eEeAC7gkE2Qfdpoq3DIMku4NQkv5gdRE+2J2winq14J2by5BS -S7CTKtQ+FjPlnsZlFT5kOwQ/2wyPX1wdaR+v8+khjPPvl/aatxm2hHSco1S1cE5j -2FddUyGbQJJD+tZ3VTNPZNX70Cxqjm0lpu+F6ALEUz65noe8zDUa3qHpimOHZR4R -Kttjd5cUvpoUmRGywO6wT/gUITJDT5+rosuoD6o7BlXGEilXCNQ314cnrUlZp5Gr -RHpejXDbl85IULFzk/bwg2D5zfHhMf1bfHEhYxQUqq/F3pN+aLHsIqKqkHWetUNy -6mSjhEv9DKgma3GX7lZjZuhCVPnHHd/Qj1vfyDBviP4NxDMcU6ij/UgQ8uQKTuEV -V/xuZDDCVRHc6qnNSlSsKWNEz0pAoNZoWRsz+e86i9sgktxChL8Bq4fA1SCC28a5 -g4VCXA9DO2pJNdWY9BW/+mGBDAkgGNLQFwzLSABQ6XaCjGTXOqAHVcweMcDvOrRl -++O/QmueD6i9a5jc2NvLi6Td11n0bt3+qsOR0C5CB8AMTVPNJLFMWx5R9N/pkvo= ------END CERTIFICATE----- - -# Issuer: CN=Certplus Root CA G2 O=Certplus -# Subject: CN=Certplus Root CA G2 O=Certplus -# Label: "Certplus Root CA G2" -# Serial: 1492087096131536844209563509228951875861589 -# MD5 Fingerprint: a7:ee:c4:78:2d:1b:ee:2d:b9:29:ce:d6:a7:96:32:31 -# SHA1 Fingerprint: 4f:65:8e:1f:e9:06:d8:28:02:e9:54:47:41:c9:54:25:5d:69:cc:1a -# SHA256 Fingerprint: 6c:c0:50:41:e6:44:5e:74:69:6c:4c:fb:c9:f8:0f:54:3b:7e:ab:bb:44:b4:ce:6f:78:7c:6a:99:71:c4:2f:17 ------BEGIN CERTIFICATE----- -MIICHDCCAaKgAwIBAgISESDZkc6uo+jF5//pAq/Pc7xVMAoGCCqGSM49BAMDMD4x -CzAJBgNVBAYTAkZSMREwDwYDVQQKDAhDZXJ0cGx1czEcMBoGA1UEAwwTQ2VydHBs -dXMgUm9vdCBDQSBHMjAeFw0xNDA1MjYwMDAwMDBaFw0zODAxMTUwMDAwMDBaMD4x -CzAJBgNVBAYTAkZSMREwDwYDVQQKDAhDZXJ0cGx1czEcMBoGA1UEAwwTQ2VydHBs -dXMgUm9vdCBDQSBHMjB2MBAGByqGSM49AgEGBSuBBAAiA2IABM0PW1aC3/BFGtat -93nwHcmsltaeTpwftEIRyoa/bfuFo8XlGVzX7qY/aWfYeOKmycTbLXku54uNAm8x -Ik0G42ByRZ0OQneezs/lf4WbGOT8zC5y0xaTTsqZY1yhBSpsBqNjMGEwDgYDVR0P -AQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNqDYwJ5jtpMxjwj -FNiPwyCrKGBZMB8GA1UdIwQYMBaAFNqDYwJ5jtpMxjwjFNiPwyCrKGBZMAoGCCqG -SM49BAMDA2gAMGUCMHD+sAvZ94OX7PNVHdTcswYO/jOYnYs5kGuUIe22113WTNch -p+e/IQ8rzfcq3IUHnQIxAIYUFuXcsGXCwI4Un78kFmjlvPl5adytRSv3tjFzzAal -U5ORGpOucGpnutee5WEaXw== ------END CERTIFICATE----- - -# Issuer: CN=OpenTrust Root CA G1 O=OpenTrust -# Subject: CN=OpenTrust Root CA G1 O=OpenTrust -# Label: "OpenTrust Root CA G1" -# Serial: 1492036577811947013770400127034825178844775 -# MD5 Fingerprint: 76:00:cc:81:29:cd:55:5e:88:6a:7a:2e:f7:4d:39:da -# SHA1 Fingerprint: 79:91:e8:34:f7:e2:ee:dd:08:95:01:52:e9:55:2d:14:e9:58:d5:7e -# SHA256 Fingerprint: 56:c7:71:28:d9:8c:18:d9:1b:4c:fd:ff:bc:25:ee:91:03:d4:75:8e:a2:ab:ad:82:6a:90:f3:45:7d:46:0e:b4 ------BEGIN CERTIFICATE----- -MIIFbzCCA1egAwIBAgISESCzkFU5fX82bWTCp59rY45nMA0GCSqGSIb3DQEBCwUA -MEAxCzAJBgNVBAYTAkZSMRIwEAYDVQQKDAlPcGVuVHJ1c3QxHTAbBgNVBAMMFE9w -ZW5UcnVzdCBSb290IENBIEcxMB4XDTE0MDUyNjA4NDU1MFoXDTM4MDExNTAwMDAw -MFowQDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCU9wZW5UcnVzdDEdMBsGA1UEAwwU -T3BlblRydXN0IFJvb3QgQ0EgRzEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQD4eUbalsUwXopxAy1wpLuwxQjczeY1wICkES3d5oeuXT2R0odsN7faYp6b -wiTXj/HbpqbfRm9RpnHLPhsxZ2L3EVs0J9V5ToybWL0iEA1cJwzdMOWo010hOHQX -/uMftk87ay3bfWAfjH1MBcLrARYVmBSO0ZB3Ij/swjm4eTrwSSTilZHcYTSSjFR0 -77F9jAHiOH3BX2pfJLKOYheteSCtqx234LSWSE9mQxAGFiQD4eCcjsZGT44ameGP -uY4zbGneWK2gDqdkVBFpRGZPTBKnjix9xNRbxQA0MMHZmf4yzgeEtE7NCv82TWLx -p2NX5Ntqp66/K7nJ5rInieV+mhxNaMbBGN4zK1FGSxyO9z0M+Yo0FMT7MzUj8czx -Kselu7Cizv5Ta01BG2Yospb6p64KTrk5M0ScdMGTHPjgniQlQ/GbI4Kq3ywgsNw2 -TgOzfALU5nsaqocTvz6hdLubDuHAk5/XpGbKuxs74zD0M1mKB3IDVedzagMxbm+W -G+Oin6+Sx+31QrclTDsTBM8clq8cIqPQqwWyTBIjUtz9GVsnnB47ev1CI9sjgBPw -vFEVVJSmdz7QdFG9URQIOTfLHzSpMJ1ShC5VkLG631UAC9hWLbFJSXKAqWLXwPYY -EQRVzXR7z2FwefR7LFxckvzluFqrTJOVoSfupb7PcSNCupt2LQIDAQABo2MwYTAO -BgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUl0YhVyE1 -2jZVx/PxN3DlCPaTKbYwHwYDVR0jBBgwFoAUl0YhVyE12jZVx/PxN3DlCPaTKbYw -DQYJKoZIhvcNAQELBQADggIBAB3dAmB84DWn5ph76kTOZ0BP8pNuZtQ5iSas000E -PLuHIT839HEl2ku6q5aCgZG27dmxpGWX4m9kWaSW7mDKHyP7Rbr/jyTwyqkxf3kf -gLMtMrpkZ2CvuVnN35pJ06iCsfmYlIrM4LvgBBuZYLFGZdwIorJGnkSI6pN+VxbS -FXJfLkur1J1juONI5f6ELlgKn0Md/rcYkoZDSw6cMoYsYPXpSOqV7XAp8dUv/TW0 -V8/bhUiZucJvbI/NeJWsZCj9VrDDb8O+WVLhX4SPgPL0DTatdrOjteFkdjpY3H1P -XlZs5VVZV6Xf8YpmMIzUUmI4d7S+KNfKNsSbBfD4Fdvb8e80nR14SohWZ25g/4/I -i+GOvUKpMwpZQhISKvqxnUOOBZuZ2mKtVzazHbYNeS2WuOvyDEsMpZTGMKcmGS3t -TAZQMPH9WD25SxdfGbRqhFS0OE85og2WaMMolP3tLR9Ka0OWLpABEPs4poEL0L91 -09S5zvE/bw4cHjdx5RiHdRk/ULlepEU0rbDK5uUTdg8xFKmOLZTW1YVNcxVPS/Ky -Pu1svf0OnWZzsD2097+o4BGkxK51CUpjAEggpsadCwmKtODmzj7HPiY46SvepghJ -AwSQiumPv+i2tCqjI40cHLI5kqiPAlxAOXXUc0ECd97N4EOH1uS6SsNsEn/+KuYj -1oxx ------END CERTIFICATE----- - -# Issuer: CN=OpenTrust Root CA G2 O=OpenTrust -# Subject: CN=OpenTrust Root CA G2 O=OpenTrust -# Label: "OpenTrust Root CA G2" -# Serial: 1492012448042702096986875987676935573415441 -# MD5 Fingerprint: 57:24:b6:59:24:6b:ae:c8:fe:1c:0c:20:f2:c0:4e:eb -# SHA1 Fingerprint: 79:5f:88:60:c5:ab:7c:3d:92:e6:cb:f4:8d:e1:45:cd:11:ef:60:0b -# SHA256 Fingerprint: 27:99:58:29:fe:6a:75:15:c1:bf:e8:48:f9:c4:76:1d:b1:6c:22:59:29:25:7b:f4:0d:08:94:f2:9e:a8:ba:f2 ------BEGIN CERTIFICATE----- -MIIFbzCCA1egAwIBAgISESChaRu/vbm9UpaPI+hIvyYRMA0GCSqGSIb3DQEBDQUA -MEAxCzAJBgNVBAYTAkZSMRIwEAYDVQQKDAlPcGVuVHJ1c3QxHTAbBgNVBAMMFE9w -ZW5UcnVzdCBSb290IENBIEcyMB4XDTE0MDUyNjAwMDAwMFoXDTM4MDExNTAwMDAw -MFowQDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCU9wZW5UcnVzdDEdMBsGA1UEAwwU -T3BlblRydXN0IFJvb3QgQ0EgRzIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQDMtlelM5QQgTJT32F+D3Y5z1zCU3UdSXqWON2ic2rxb95eolq5cSG+Ntmh -/LzubKh8NBpxGuga2F8ORAbtp+Dz0mEL4DKiltE48MLaARf85KxP6O6JHnSrT78e -CbY2albz4e6WiWYkBuTNQjpK3eCasMSCRbP+yatcfD7J6xcvDH1urqWPyKwlCm/6 -1UWY0jUJ9gNDlP7ZvyCVeYCYitmJNbtRG6Q3ffyZO6v/v6wNj0OxmXsWEH4db0fE -FY8ElggGQgT4hNYdvJGmQr5J1WqIP7wtUdGejeBSzFfdNTVY27SPJIjki9/ca1TS -gSuyzpJLHB9G+h3Ykst2Z7UJmQnlrBcUVXDGPKBWCgOz3GIZ38i1MH/1PCZ1Eb3X -G7OHngevZXHloM8apwkQHZOJZlvoPGIytbU6bumFAYueQ4xncyhZW+vj3CzMpSZy -YhK05pyDRPZRpOLAeiRXyg6lPzq1O4vldu5w5pLeFlwoW5cZJ5L+epJUzpM5ChaH -vGOz9bGTXOBut9Dq+WIyiET7vycotjCVXRIouZW+j1MY5aIYFuJWpLIsEPUdN6b4 -t/bQWVyJ98LVtZR00dX+G7bw5tYee9I8y6jj9RjzIR9u701oBnstXW5DiabA+aC/ -gh7PU3+06yzbXfZqfUAkBXKJOAGTy3HCOV0GEfZvePg3DTmEJwIDAQABo2MwYTAO -BgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUajn6QiL3 -5okATV59M4PLuG53hq8wHwYDVR0jBBgwFoAUajn6QiL35okATV59M4PLuG53hq8w -DQYJKoZIhvcNAQENBQADggIBAJjLq0A85TMCl38th6aP1F5Kr7ge57tx+4BkJamz -Gj5oXScmp7oq4fBXgwpkTx4idBvpkF/wrM//T2h6OKQQbA2xx6R3gBi2oihEdqc0 -nXGEL8pZ0keImUEiyTCYYW49qKgFbdEfwFFEVn8nNQLdXpgKQuswv42hm1GqO+qT -RmTFAHneIWv2V6CG1wZy7HBGS4tz3aAhdT7cHcCP009zHIXZ/n9iyJVvttN7jLpT -wm+bREx50B1ws9efAvSyB7DH5fitIw6mVskpEndI2S9G/Tvw/HRwkqWOOAgfZDC2 -t0v7NqwQjqBSM2OdAzVWxWm9xiNaJ5T2pBL4LTM8oValX9YZ6e18CL13zSdkzJTa -TkZQh+D5wVOAHrut+0dSixv9ovneDiK3PTNZbNTe9ZUGMg1RGUFcPk8G97krgCf2 -o6p6fAbhQ8MTOWIaNr3gKC6UAuQpLmBVrkA9sHSSXvAgZJY/X0VdiLWK2gKgW0VU -3jg9CcCoSmVGFvyqv1ROTVu+OEO3KMqLM6oaJbolXCkvW0pujOotnCr2BXbgd5eA -iN1nE28daCSLT7d0geX0YJ96Vdc+N9oWaz53rK4YcJUIeSkDiv7BO7M/Gg+kO14f -WKGVyasvc0rQLW6aWQ9VGHgtPFGml4vmu7JwqkwR3v98KzfUetF3NI/n+UL3PIEM -S1IK ------END CERTIFICATE----- - -# Issuer: CN=OpenTrust Root CA G3 O=OpenTrust -# Subject: CN=OpenTrust Root CA G3 O=OpenTrust -# Label: "OpenTrust Root CA G3" -# Serial: 1492104908271485653071219941864171170455615 -# MD5 Fingerprint: 21:37:b4:17:16:92:7b:67:46:70:a9:96:d7:a8:13:24 -# SHA1 Fingerprint: 6e:26:64:f3:56:bf:34:55:bf:d1:93:3f:7c:01:de:d8:13:da:8a:a6 -# SHA256 Fingerprint: b7:c3:62:31:70:6e:81:07:8c:36:7c:b8:96:19:8f:1e:32:08:dd:92:69:49:dd:8f:57:09:a4:10:f7:5b:62:92 ------BEGIN CERTIFICATE----- -MIICITCCAaagAwIBAgISESDm+Ez8JLC+BUCs2oMbNGA/MAoGCCqGSM49BAMDMEAx -CzAJBgNVBAYTAkZSMRIwEAYDVQQKDAlPcGVuVHJ1c3QxHTAbBgNVBAMMFE9wZW5U -cnVzdCBSb290IENBIEczMB4XDTE0MDUyNjAwMDAwMFoXDTM4MDExNTAwMDAwMFow -QDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCU9wZW5UcnVzdDEdMBsGA1UEAwwUT3Bl -blRydXN0IFJvb3QgQ0EgRzMwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARK7liuTcpm -3gY6oxH84Bjwbhy6LTAMidnW7ptzg6kjFYwvWYpa3RTqnVkrQ7cG7DK2uu5Bta1d -oYXM6h0UZqNnfkbilPPntlahFVmhTzeXuSIevRHr9LIfXsMUmuXZl5mjYzBhMA4G -A1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRHd8MUi2I5 -DMlv4VBN0BBY3JWIbTAfBgNVHSMEGDAWgBRHd8MUi2I5DMlv4VBN0BBY3JWIbTAK -BggqhkjOPQQDAwNpADBmAjEAj6jcnboMBBf6Fek9LykBl7+BFjNAk2z8+e2AcG+q -j9uEwov1NcoG3GRvaBbhj5G5AjEA2Euly8LQCGzpGPta3U1fJAuwACEl74+nBCZx -4nxp5V2a+EEfOzmTk51V6s2N8fvB ------END CERTIFICATE----- - -# Issuer: CN=ISRG Root X1 O=Internet Security Research Group -# Subject: CN=ISRG Root X1 O=Internet Security Research Group -# Label: "ISRG Root X1" -# Serial: 172886928669790476064670243504169061120 -# MD5 Fingerprint: 0c:d2:f9:e0:da:17:73:e9:ed:86:4d:a5:e3:70:e7:4e -# SHA1 Fingerprint: ca:bd:2a:79:a1:07:6a:31:f2:1d:25:36:35:cb:03:9d:43:29:a5:e8 -# SHA256 Fingerprint: 96:bc:ec:06:26:49:76:f3:74:60:77:9a:cf:28:c5:a7:cf:e8:a3:c0:aa:e1:1a:8f:fc:ee:05:c0:bd:df:08:c6 ------BEGIN CERTIFICATE----- -MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw -TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh -cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4 -WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu -ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY -MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc -h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+ -0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U -A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW -T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH -B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC -B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv -KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn -OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn -jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw -qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI -rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV -HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq -hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL -ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ -3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK -NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5 -ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur -TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC -jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc -oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq -4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA -mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d -emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc= ------END CERTIFICATE----- - -# Issuer: O=FNMT-RCM OU=AC RAIZ FNMT-RCM -# Subject: O=FNMT-RCM OU=AC RAIZ FNMT-RCM -# Label: "AC RAIZ FNMT-RCM" -# Serial: 485876308206448804701554682760554759 -# MD5 Fingerprint: e2:09:04:b4:d3:bd:d1:a0:14:fd:1a:d2:47:c4:57:1d -# SHA1 Fingerprint: ec:50:35:07:b2:15:c4:95:62:19:e2:a8:9a:5b:42:99:2c:4c:2c:20 -# SHA256 Fingerprint: eb:c5:57:0c:29:01:8c:4d:67:b1:aa:12:7b:af:12:f7:03:b4:61:1e:bc:17:b7:da:b5:57:38:94:17:9b:93:fa ------BEGIN CERTIFICATE----- -MIIFgzCCA2ugAwIBAgIPXZONMGc2yAYdGsdUhGkHMA0GCSqGSIb3DQEBCwUAMDsx -CzAJBgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJ -WiBGTk1ULVJDTTAeFw0wODEwMjkxNTU5NTZaFw0zMDAxMDEwMDAwMDBaMDsxCzAJ -BgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJWiBG -Tk1ULVJDTTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALpxgHpMhm5/ -yBNtwMZ9HACXjywMI7sQmkCpGreHiPibVmr75nuOi5KOpyVdWRHbNi63URcfqQgf -BBckWKo3Shjf5TnUV/3XwSyRAZHiItQDwFj8d0fsjz50Q7qsNI1NOHZnjrDIbzAz -WHFctPVrbtQBULgTfmxKo0nRIBnuvMApGGWn3v7v3QqQIecaZ5JCEJhfTzC8PhxF -tBDXaEAUwED653cXeuYLj2VbPNmaUtu1vZ5Gzz3rkQUCwJaydkxNEJY7kvqcfw+Z -374jNUUeAlz+taibmSXaXvMiwzn15Cou08YfxGyqxRxqAQVKL9LFwag0Jl1mpdIC -IfkYtwb1TplvqKtMUejPUBjFd8g5CSxJkjKZqLsXF3mwWsXmo8RZZUc1g16p6DUL -mbvkzSDGm0oGObVo/CK67lWMK07q87Hj/LaZmtVC+nFNCM+HHmpxffnTtOmlcYF7 -wk5HlqX2doWjKI/pgG6BU6VtX7hI+cL5NqYuSf+4lsKMB7ObiFj86xsc3i1w4peS -MKGJ47xVqCfWS+2QrYv6YyVZLag13cqXM7zlzced0ezvXg5KkAYmY6252TUtB7p2 -ZSysV4999AeU14ECll2jB0nVetBX+RvnU0Z1qrB5QstocQjpYL05ac70r8NWQMet -UqIJ5G+GR4of6ygnXYMgrwTJbFaai0b1AgMBAAGjgYMwgYAwDwYDVR0TAQH/BAUw -AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPd9xf3E6Jobd2Sn9R2gzL+H -YJptMD4GA1UdIAQ3MDUwMwYEVR0gADArMCkGCCsGAQUFBwIBFh1odHRwOi8vd3d3 -LmNlcnQuZm5tdC5lcy9kcGNzLzANBgkqhkiG9w0BAQsFAAOCAgEAB5BK3/MjTvDD -nFFlm5wioooMhfNzKWtN/gHiqQxjAb8EZ6WdmF/9ARP67Jpi6Yb+tmLSbkyU+8B1 -RXxlDPiyN8+sD8+Nb/kZ94/sHvJwnvDKuO+3/3Y3dlv2bojzr2IyIpMNOmqOFGYM -LVN0V2Ue1bLdI4E7pWYjJ2cJj+F3qkPNZVEI7VFY/uY5+ctHhKQV8Xa7pO6kO8Rf -77IzlhEYt8llvhjho6Tc+hj507wTmzl6NLrTQfv6MooqtyuGC2mDOL7Nii4LcK2N -JpLuHvUBKwrZ1pebbuCoGRw6IYsMHkCtA+fdZn71uSANA+iW+YJF1DngoABd15jm -fZ5nc8OaKveri6E6FO80vFIOiZiaBECEHX5FaZNXzuvO+FB8TxxuBEOb+dY7Ixjp -6o7RTUaN8Tvkasq6+yO3m/qZASlaWFot4/nUbQ4mrcFuNLwy+AwF+mWj2zs3gyLp -1txyM/1d8iC9djwj2ij3+RvrWWTV3F9yfiD8zYm1kGdNYno/Tq0dwzn+evQoFt9B -9kiABdcPUXmsEKvU7ANm5mqwujGSQkBqvjrTcuFqN1W8rB2Vt2lh8kORdOag0wok -RqEIr9baRRmW1FMdW4R58MD3R++Lj8UGrp1MYp3/RgT408m2ECVAdf4WqslKYIYv -uu8wd+RU4riEmViAqhOLUTpPSPaLtrM= ------END CERTIFICATE----- - -# Issuer: CN=Amazon Root CA 1 O=Amazon -# Subject: CN=Amazon Root CA 1 O=Amazon -# Label: "Amazon Root CA 1" -# Serial: 143266978916655856878034712317230054538369994 -# MD5 Fingerprint: 43:c6:bf:ae:ec:fe:ad:2f:18:c6:88:68:30:fc:c8:e6 -# SHA1 Fingerprint: 8d:a7:f9:65:ec:5e:fc:37:91:0f:1c:6e:59:fd:c1:cc:6a:6e:de:16 -# SHA256 Fingerprint: 8e:cd:e6:88:4f:3d:87:b1:12:5b:a3:1a:c3:fc:b1:3d:70:16:de:7f:57:cc:90:4f:e1:cb:97:c6:ae:98:19:6e ------BEGIN CERTIFICATE----- -MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF -ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 -b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL -MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv -b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj -ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM -9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw -IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 -VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L -93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm -jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC -AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA -A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI -U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs -N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv -o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU -5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy -rqXRfboQnoZsG4q5WTP468SQvvG5 ------END CERTIFICATE----- - -# Issuer: CN=Amazon Root CA 2 O=Amazon -# Subject: CN=Amazon Root CA 2 O=Amazon -# Label: "Amazon Root CA 2" -# Serial: 143266982885963551818349160658925006970653239 -# MD5 Fingerprint: c8:e5:8d:ce:a8:42:e2:7a:c0:2a:5c:7c:9e:26:bf:66 -# SHA1 Fingerprint: 5a:8c:ef:45:d7:a6:98:59:76:7a:8c:8b:44:96:b5:78:cf:47:4b:1a -# SHA256 Fingerprint: 1b:a5:b2:aa:8c:65:40:1a:82:96:01:18:f8:0b:ec:4f:62:30:4d:83:ce:c4:71:3a:19:c3:9c:01:1e:a4:6d:b4 ------BEGIN CERTIFICATE----- -MIIFQTCCAymgAwIBAgITBmyf0pY1hp8KD+WGePhbJruKNzANBgkqhkiG9w0BAQwF -ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 -b24gUm9vdCBDQSAyMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTEL -MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv -b3QgQ0EgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK2Wny2cSkxK -gXlRmeyKy2tgURO8TW0G/LAIjd0ZEGrHJgw12MBvIITplLGbhQPDW9tK6Mj4kHbZ -W0/jTOgGNk3Mmqw9DJArktQGGWCsN0R5hYGCrVo34A3MnaZMUnbqQ523BNFQ9lXg -1dKmSYXpN+nKfq5clU1Imj+uIFptiJXZNLhSGkOQsL9sBbm2eLfq0OQ6PBJTYv9K -8nu+NQWpEjTj82R0Yiw9AElaKP4yRLuH3WUnAnE72kr3H9rN9yFVkE8P7K6C4Z9r -2UXTu/Bfh+08LDmG2j/e7HJV63mjrdvdfLC6HM783k81ds8P+HgfajZRRidhW+me -z/CiVX18JYpvL7TFz4QuK/0NURBs+18bvBt+xa47mAExkv8LV/SasrlX6avvDXbR -8O70zoan4G7ptGmh32n2M8ZpLpcTnqWHsFcQgTfJU7O7f/aS0ZzQGPSSbtqDT6Zj -mUyl+17vIWR6IF9sZIUVyzfpYgwLKhbcAS4y2j5L9Z469hdAlO+ekQiG+r5jqFoz -7Mt0Q5X5bGlSNscpb/xVA1wf+5+9R+vnSUeVC06JIglJ4PVhHvG/LopyboBZ/1c6 -+XUyo05f7O0oYtlNc/LMgRdg7c3r3NunysV+Ar3yVAhU/bQtCSwXVEqY0VThUWcI -0u1ufm8/0i2BWSlmy5A5lREedCf+3euvAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMB -Af8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSwDPBMMPQFWAJI/TPlUq9LhONm -UjANBgkqhkiG9w0BAQwFAAOCAgEAqqiAjw54o+Ci1M3m9Zh6O+oAA7CXDpO8Wqj2 -LIxyh6mx/H9z/WNxeKWHWc8w4Q0QshNabYL1auaAn6AFC2jkR2vHat+2/XcycuUY -+gn0oJMsXdKMdYV2ZZAMA3m3MSNjrXiDCYZohMr/+c8mmpJ5581LxedhpxfL86kS -k5Nrp+gvU5LEYFiwzAJRGFuFjWJZY7attN6a+yb3ACfAXVU3dJnJUH/jWS5E4ywl -7uxMMne0nxrpS10gxdr9HIcWxkPo1LsmmkVwXqkLN1PiRnsn/eBG8om3zEK2yygm -btmlyTrIQRNg91CMFa6ybRoVGld45pIq2WWQgj9sAq+uEjonljYE1x2igGOpm/Hl -urR8FLBOybEfdF849lHqm/osohHUqS0nGkWxr7JOcQ3AWEbWaQbLU8uz/mtBzUF+ -fUwPfHJ5elnNXkoOrJupmHN5fLT0zLm4BwyydFy4x2+IoZCn9Kr5v2c69BoVYh63 -n749sSmvZ6ES8lgQGVMDMBu4Gon2nL2XA46jCfMdiyHxtN/kHNGfZQIG6lzWE7OE -76KlXIx3KadowGuuQNKotOrN8I1LOJwZmhsoVLiJkO/KdYE+HvJkJMcYr07/R54H -9jVlpNMKVv/1F2Rs76giJUmTtt8AF9pYfl3uxRuw0dFfIRDH+fO6AgonB8Xx1sfT -4PsJYGw= ------END CERTIFICATE----- - -# Issuer: CN=Amazon Root CA 3 O=Amazon -# Subject: CN=Amazon Root CA 3 O=Amazon -# Label: "Amazon Root CA 3" -# Serial: 143266986699090766294700635381230934788665930 -# MD5 Fingerprint: a0:d4:ef:0b:f7:b5:d8:49:95:2a:ec:f5:c4:fc:81:87 -# SHA1 Fingerprint: 0d:44:dd:8c:3c:8c:1a:1a:58:75:64:81:e9:0f:2e:2a:ff:b3:d2:6e -# SHA256 Fingerprint: 18:ce:6c:fe:7b:f1:4e:60:b2:e3:47:b8:df:e8:68:cb:31:d0:2e:bb:3a:da:27:15:69:f5:03:43:b4:6d:b3:a4 ------BEGIN CERTIFICATE----- -MIIBtjCCAVugAwIBAgITBmyf1XSXNmY/Owua2eiedgPySjAKBggqhkjOPQQDAjA5 -MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g -Um9vdCBDQSAzMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG -A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg -Q0EgMzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABCmXp8ZBf8ANm+gBG1bG8lKl -ui2yEujSLtf6ycXYqm0fc4E7O5hrOXwzpcVOho6AF2hiRVd9RFgdszflZwjrZt6j -QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSr -ttvXBp43rDCGB5Fwx5zEGbF4wDAKBggqhkjOPQQDAgNJADBGAiEA4IWSoxe3jfkr -BqWTrBqYaGFy+uGh0PsceGCmQ5nFuMQCIQCcAu/xlJyzlvnrxir4tiz+OpAUFteM -YyRIHN8wfdVoOw== ------END CERTIFICATE----- - -# Issuer: CN=Amazon Root CA 4 O=Amazon -# Subject: CN=Amazon Root CA 4 O=Amazon -# Label: "Amazon Root CA 4" -# Serial: 143266989758080763974105200630763877849284878 -# MD5 Fingerprint: 89:bc:27:d5:eb:17:8d:06:6a:69:d5:fd:89:47:b4:cd -# SHA1 Fingerprint: f6:10:84:07:d6:f8:bb:67:98:0c:c2:e2:44:c2:eb:ae:1c:ef:63:be -# SHA256 Fingerprint: e3:5d:28:41:9e:d0:20:25:cf:a6:90:38:cd:62:39:62:45:8d:a5:c6:95:fb:de:a3:c2:2b:0b:fb:25:89:70:92 ------BEGIN CERTIFICATE----- -MIIB8jCCAXigAwIBAgITBmyf18G7EEwpQ+Vxe3ssyBrBDjAKBggqhkjOPQQDAzA5 -MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g -Um9vdCBDQSA0MB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG -A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg -Q0EgNDB2MBAGByqGSM49AgEGBSuBBAAiA2IABNKrijdPo1MN/sGKe0uoe0ZLY7Bi -9i0b2whxIdIA6GO9mif78DluXeo9pcmBqqNbIJhFXRbb/egQbeOc4OO9X4Ri83Bk -M6DLJC9wuoihKqB1+IGuYgbEgds5bimwHvouXKNCMEAwDwYDVR0TAQH/BAUwAwEB -/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFNPsxzplbszh2naaVvuc84ZtV+WB -MAoGCCqGSM49BAMDA2gAMGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlw -CkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1AE47xDqUEpHJWEadIRNyp4iciuRMStuW -1KyLa2tJElMzrdfkviT8tQp21KW8EA== ------END CERTIFICATE----- - -# Issuer: CN=LuxTrust Global Root 2 O=LuxTrust S.A. -# Subject: CN=LuxTrust Global Root 2 O=LuxTrust S.A. -# Label: "LuxTrust Global Root 2" -# Serial: 59914338225734147123941058376788110305822489521 -# MD5 Fingerprint: b2:e1:09:00:61:af:f7:f1:91:6f:c4:ad:8d:5e:3b:7c -# SHA1 Fingerprint: 1e:0e:56:19:0a:d1:8b:25:98:b2:04:44:ff:66:8a:04:17:99:5f:3f -# SHA256 Fingerprint: 54:45:5f:71:29:c2:0b:14:47:c4:18:f9:97:16:8f:24:c5:8f:c5:02:3b:f5:da:5b:e2:eb:6e:1d:d8:90:2e:d5 ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- - -# Issuer: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK OU=Kamu Sertifikasyon Merkezi - Kamu SM -# Subject: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK OU=Kamu Sertifikasyon Merkezi - Kamu SM -# Label: "TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1" -# Serial: 1 -# MD5 Fingerprint: dc:00:81:dc:69:2f:3e:2f:b0:3b:f6:3d:5a:91:8e:49 -# SHA1 Fingerprint: 31:43:64:9b:ec:ce:27:ec:ed:3a:3f:0b:8f:0d:e4:e8:91:dd:ee:ca -# SHA256 Fingerprint: 46:ed:c3:68:90:46:d5:3a:45:3f:b3:10:4a:b8:0d:ca:ec:65:8b:26:60:ea:16:29:dd:7e:86:79:90:64:87:16 ------BEGIN CERTIFICATE----- -MIIEYzCCA0ugAwIBAgIBATANBgkqhkiG9w0BAQsFADCB0jELMAkGA1UEBhMCVFIx -GDAWBgNVBAcTD0dlYnplIC0gS29jYWVsaTFCMEAGA1UEChM5VHVya2l5ZSBCaWxp -bXNlbCB2ZSBUZWtub2xvamlrIEFyYXN0aXJtYSBLdXJ1bXUgLSBUVUJJVEFLMS0w -KwYDVQQLEyRLYW11IFNlcnRpZmlrYXN5b24gTWVya2V6aSAtIEthbXUgU00xNjA0 -BgNVBAMTLVRVQklUQUsgS2FtdSBTTSBTU0wgS29rIFNlcnRpZmlrYXNpIC0gU3Vy -dW0gMTAeFw0xMzExMjUwODI1NTVaFw00MzEwMjUwODI1NTVaMIHSMQswCQYDVQQG -EwJUUjEYMBYGA1UEBxMPR2ViemUgLSBLb2NhZWxpMUIwQAYDVQQKEzlUdXJraXll -IEJpbGltc2VsIHZlIFRla25vbG9qaWsgQXJhc3Rpcm1hIEt1cnVtdSAtIFRVQklU -QUsxLTArBgNVBAsTJEthbXUgU2VydGlmaWthc3lvbiBNZXJrZXppIC0gS2FtdSBT -TTE2MDQGA1UEAxMtVFVCSVRBSyBLYW11IFNNIFNTTCBLb2sgU2VydGlmaWthc2kg -LSBTdXJ1bSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr3UwM6q7 -a9OZLBI3hNmNe5eA027n/5tQlT6QlVZC1xl8JoSNkvoBHToP4mQ4t4y86Ij5iySr -LqP1N+RAjhgleYN1Hzv/bKjFxlb4tO2KRKOrbEz8HdDc72i9z+SqzvBV96I01INr -N3wcwv61A+xXzry0tcXtAA9TNypN9E8Mg/uGz8v+jE69h/mniyFXnHrfA2eJLJ2X -YacQuFWQfw4tJzh03+f92k4S400VIgLI4OD8D62K18lUUMw7D8oWgITQUVbDjlZ/ -iSIzL+aFCr2lqBs23tPcLG07xxO9WSMs5uWk99gL7eqQQESolbuT1dCANLZGeA4f -AJNG4e7p+exPFwIDAQABo0IwQDAdBgNVHQ4EFgQUZT/HiobGPN08VFw1+DrtUgxH -V8gwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL -BQADggEBACo/4fEyjq7hmFxLXs9rHmoJ0iKpEsdeV31zVmSAhHqT5Am5EM2fKifh -AHe+SMg1qIGf5LgsyX8OsNJLN13qudULXjS99HMpw+0mFZx+CFOKWI3QSyjfwbPf -IPP54+M638yclNhOT8NrF7f3cuitZjO1JVOr4PhMqZ398g26rrnZqsZr+ZO7rqu4 -lzwDGrpDxpa5RXI4s6ehlj2Re37AIVNMh+3yC1SVUZPVIqUNivGTDj5UDrDYyU7c -8jEyVupk+eq1nRZmQnLzf9OxMUP8pI4X8W0jq5Rm+K37DwhuJi1/FwcJsoz7UMCf -lo3Ptv0AnVoUmr8CRPXBwp8iXqIPoeM= ------END CERTIFICATE----- - -# Issuer: CN=GDCA TrustAUTH R5 ROOT O=GUANG DONG CERTIFICATE AUTHORITY CO.,LTD. -# Subject: CN=GDCA TrustAUTH R5 ROOT O=GUANG DONG CERTIFICATE AUTHORITY CO.,LTD. -# Label: "GDCA TrustAUTH R5 ROOT" -# Serial: 9009899650740120186 -# MD5 Fingerprint: 63:cc:d9:3d:34:35:5c:6f:53:a3:e2:08:70:48:1f:b4 -# SHA1 Fingerprint: 0f:36:38:5b:81:1a:25:c3:9b:31:4e:83:ca:e9:34:66:70:cc:74:b4 -# SHA256 Fingerprint: bf:ff:8f:d0:44:33:48:7d:6a:8a:a6:0c:1a:29:76:7a:9f:c2:bb:b0:5e:42:0f:71:3a:13:b9:92:89:1d:38:93 ------BEGIN CERTIFICATE----- -MIIFiDCCA3CgAwIBAgIIfQmX/vBH6nowDQYJKoZIhvcNAQELBQAwYjELMAkGA1UE -BhMCQ04xMjAwBgNVBAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZ -IENPLixMVEQuMR8wHQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMB4XDTE0 -MTEyNjA1MTMxNVoXDTQwMTIzMTE1NTk1OVowYjELMAkGA1UEBhMCQ04xMjAwBgNV -BAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZIENPLixMVEQuMR8w -HQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMIICIjANBgkqhkiG9w0BAQEF -AAOCAg8AMIICCgKCAgEA2aMW8Mh0dHeb7zMNOwZ+Vfy1YI92hhJCfVZmPoiC7XJj -Dp6L3TQsAlFRwxn9WVSEyfFrs0yw6ehGXTjGoqcuEVe6ghWinI9tsJlKCvLriXBj -TnnEt1u9ol2x8kECK62pOqPseQrsXzrj/e+APK00mxqriCZ7VqKChh/rNYmDf1+u -KU49tm7srsHwJ5uu4/Ts765/94Y9cnrrpftZTqfrlYwiOXnhLQiPzLyRuEH3FMEj -qcOtmkVEs7LXLM3GKeJQEK5cy4KOFxg2fZfmiJqwTTQJ9Cy5WmYqsBebnh52nUpm -MUHfP/vFBu8btn4aRjb3ZGM74zkYI+dndRTVdVeSN72+ahsmUPI2JgaQxXABZG12 -ZuGR224HwGGALrIuL4xwp9E7PLOR5G62xDtw8mySlwnNR30YwPO7ng/Wi64HtloP -zgsMR6flPri9fcebNaBhlzpBdRfMK5Z3KpIhHtmVdiBnaM8Nvd/WHwlqmuLMc3Gk -L30SgLdTMEZeS1SZD2fJpcjyIMGC7J0R38IC+xo70e0gmu9lZJIQDSri3nDxGGeC -jGHeuLzRL5z7D9Ar7Rt2ueQ5Vfj4oR24qoAATILnsn8JuLwwoC8N9VKejveSswoA -HQBUlwbgsQfZxw9cZX08bVlX5O2ljelAU58VS6Bx9hoh49pwBiFYFIeFd3mqgnkC -AwEAAaNCMEAwHQYDVR0OBBYEFOLJQJ9NzuiaoXzPDj9lxSmIahlRMA8GA1UdEwEB -/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQDRSVfg -p8xoWLoBDysZzY2wYUWsEe1jUGn4H3++Fo/9nesLqjJHdtJnJO29fDMylyrHBYZm -DRd9FBUb1Ov9H5r2XpdptxolpAqzkT9fNqyL7FeoPueBihhXOYV0GkLH6VsTX4/5 -COmSdI31R9KrO9b7eGZONn356ZLpBN79SWP8bfsUcZNnL0dKt7n/HipzcEYwv1ry -L3ml4Y0M2fmyYzeMN2WFcGpcWwlyua1jPLHd+PwyvzeG5LuOmCd+uh8W4XAR8gPf -JWIyJyYYMoSf/wA6E7qaTfRPuBRwIrHKK5DOKcFw9C+df/KQHtZa37dG/OaG+svg -IHZ6uqbL9XzeYqWxi+7egmaKTjowHz+Ay60nugxe19CxVsp3cbK1daFQqUBDF8Io -2c9Si1vIY9RCPqAzekYu9wogRlR+ak8x8YF+QnQ4ZXMn7sZ8uI7XpTrXmKGcjBBV -09tL7ECQ8s1uV9JiDnxXk7Gnbc2dg7sq5+W2O3FYrf3RRbxake5TFW/TRQl1brqQ -XR4EzzffHqhmsYzmIGrv/EhOdJhCrylvLmrH+33RZjEizIYAfmaDDEL0vTSSwxrq -T8p+ck0LcIymSLumoRT2+1hEmRSuqguTaaApJUqlyyvdimYHFngVV3Eb7PVHhPOe -MTd61X8kreS8/f3MboPoDKi3QWwH3b08hpcv0g== ------END CERTIFICATE----- - -# Issuer: CN=TrustCor RootCert CA-1 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Subject: CN=TrustCor RootCert CA-1 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Label: "TrustCor RootCert CA-1" -# Serial: 15752444095811006489 -# MD5 Fingerprint: 6e:85:f1:dc:1a:00:d3:22:d5:b2:b2:ac:6b:37:05:45 -# SHA1 Fingerprint: ff:bd:cd:e7:82:c8:43:5e:3c:6f:26:86:5c:ca:a8:3a:45:5b:c3:0a -# SHA256 Fingerprint: d4:0e:9c:86:cd:8f:e4:68:c1:77:69:59:f4:9e:a7:74:fa:54:86:84:b6:c4:06:f3:90:92:61:f4:dc:e2:57:5c ------BEGIN CERTIFICATE----- -MIIEMDCCAxigAwIBAgIJANqb7HHzA7AZMA0GCSqGSIb3DQEBCwUAMIGkMQswCQYD -VQQGEwJQQTEPMA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5hbWEgQ2l0eTEk -MCIGA1UECgwbVHJ1c3RDb3IgU3lzdGVtcyBTLiBkZSBSLkwuMScwJQYDVQQLDB5U -cnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxHzAdBgNVBAMMFlRydXN0Q29y -IFJvb3RDZXJ0IENBLTEwHhcNMTYwMjA0MTIzMjE2WhcNMjkxMjMxMTcyMzE2WjCB -pDELMAkGA1UEBhMCUEExDzANBgNVBAgMBlBhbmFtYTEUMBIGA1UEBwwLUGFuYW1h -IENpdHkxJDAiBgNVBAoMG1RydXN0Q29yIFN5c3RlbXMgUy4gZGUgUi5MLjEnMCUG -A1UECwweVHJ1c3RDb3IgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MR8wHQYDVQQDDBZU -cnVzdENvciBSb290Q2VydCBDQS0xMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB -CgKCAQEAv463leLCJhJrMxnHQFgKq1mqjQCj/IDHUHuO1CAmujIS2CNUSSUQIpid -RtLByZ5OGy4sDjjzGiVoHKZaBeYei0i/mJZ0PmnK6bV4pQa81QBeCQryJ3pS/C3V -seq0iWEk8xoT26nPUu0MJLq5nux+AHT6k61sKZKuUbS701e/s/OojZz0JEsq1pme -9J7+wH5COucLlVPat2gOkEz7cD+PSiyU8ybdY2mplNgQTsVHCJCZGxdNuWxu72CV -EY4hgLW9oHPY0LJ3xEXqWib7ZnZ2+AYfYW0PVcWDtxBWcgYHpfOxGgMFZA6dWorW -hnAbJN7+KIor0Gqw/Hqi3LJ5DotlDwIDAQABo2MwYTAdBgNVHQ4EFgQU7mtJPHo/ -DeOxCbeKyKsZn3MzUOcwHwYDVR0jBBgwFoAU7mtJPHo/DeOxCbeKyKsZn3MzUOcw -DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQELBQAD -ggEBACUY1JGPE+6PHh0RU9otRCkZoB5rMZ5NDp6tPVxBb5UrJKF5mDo4Nvu7Zp5I -/5CQ7z3UuJu0h3U/IJvOcs+hVcFNZKIZBqEHMwwLKeXx6quj7LUKdJDHfXLy11yf -ke+Ri7fc7Waiz45mO7yfOgLgJ90WmMCV1Aqk5IGadZQ1nJBfiDcGrVmVCrDRZ9MZ -yonnMlo2HD6CqFqTvsbQZJG2z9m2GM/bftJlo6bEjhcxwft+dtvTheNYsnd6djts -L1Ac59v2Z3kf9YKVmgenFK+P3CghZwnS1k1aHBkcjndcw5QkPTJrS37UeJSDvjdN -zl/HHk484IkzlQsPpTLWPFp5LBk= ------END CERTIFICATE----- - -# Issuer: CN=TrustCor RootCert CA-2 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Subject: CN=TrustCor RootCert CA-2 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Label: "TrustCor RootCert CA-2" -# Serial: 2711694510199101698 -# MD5 Fingerprint: a2:e1:f8:18:0b:ba:45:d5:c7:41:2a:bb:37:52:45:64 -# SHA1 Fingerprint: b8:be:6d:cb:56:f1:55:b9:63:d4:12:ca:4e:06:34:c7:94:b2:1c:c0 -# SHA256 Fingerprint: 07:53:e9:40:37:8c:1b:d5:e3:83:6e:39:5d:ae:a5:cb:83:9e:50:46:f1:bd:0e:ae:19:51:cf:10:fe:c7:c9:65 ------BEGIN CERTIFICATE----- -MIIGLzCCBBegAwIBAgIIJaHfyjPLWQIwDQYJKoZIhvcNAQELBQAwgaQxCzAJBgNV -BAYTAlBBMQ8wDQYDVQQIDAZQYW5hbWExFDASBgNVBAcMC1BhbmFtYSBDaXR5MSQw -IgYDVQQKDBtUcnVzdENvciBTeXN0ZW1zIFMuIGRlIFIuTC4xJzAlBgNVBAsMHlRy -dXN0Q29yIENlcnRpZmljYXRlIEF1dGhvcml0eTEfMB0GA1UEAwwWVHJ1c3RDb3Ig -Um9vdENlcnQgQ0EtMjAeFw0xNjAyMDQxMjMyMjNaFw0zNDEyMzExNzI2MzlaMIGk -MQswCQYDVQQGEwJQQTEPMA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5hbWEg -Q2l0eTEkMCIGA1UECgwbVHJ1c3RDb3IgU3lzdGVtcyBTLiBkZSBSLkwuMScwJQYD -VQQLDB5UcnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxHzAdBgNVBAMMFlRy -dXN0Q29yIFJvb3RDZXJ0IENBLTIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQCnIG7CKqJiJJWQdsg4foDSq8GbZQWU9MEKENUCrO2fk8eHyLAnK0IMPQo+ -QVqedd2NyuCb7GgypGmSaIwLgQ5WoD4a3SwlFIIvl9NkRvRUqdw6VC0xK5mC8tkq -1+9xALgxpL56JAfDQiDyitSSBBtlVkxs1Pu2YVpHI7TYabS3OtB0PAx1oYxOdqHp -2yqlO/rOsP9+aij9JxzIsekp8VduZLTQwRVtDr4uDkbIXvRR/u8OYzo7cbrPb1nK -DOObXUm4TOJXsZiKQlecdu/vvdFoqNL0Cbt3Nb4lggjEFixEIFapRBF37120Hape -az6LMvYHL1cEksr1/p3C6eizjkxLAjHZ5DxIgif3GIJ2SDpxsROhOdUuxTTCHWKF -3wP+TfSvPd9cW436cOGlfifHhi5qjxLGhF5DUVCcGZt45vz27Ud+ez1m7xMTiF88 -oWP7+ayHNZ/zgp6kPwqcMWmLmaSISo5uZk3vFsQPeSghYA2FFn3XVDjxklb9tTNM -g9zXEJ9L/cb4Qr26fHMC4P99zVvh1Kxhe1fVSntb1IVYJ12/+CtgrKAmrhQhJ8Z3 -mjOAPF5GP/fDsaOGM8boXg25NSyqRsGFAnWAoOsk+xWq5Gd/bnc/9ASKL3x74xdh -8N0JqSDIvgmk0H5Ew7IwSjiqqewYmgeCK9u4nBit2uBGF6zPXQIDAQABo2MwYTAd -BgNVHQ4EFgQU2f4hQG6UnrybPZx9mCAZ5YwwYrIwHwYDVR0jBBgwFoAU2f4hQG6U -nrybPZx9mCAZ5YwwYrIwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYw -DQYJKoZIhvcNAQELBQADggIBAJ5Fngw7tu/hOsh80QA9z+LqBrWyOrsGS2h60COX -dKcs8AjYeVrXWoSK2BKaG9l9XE1wxaX5q+WjiYndAfrs3fnpkpfbsEZC89NiqpX+ -MWcUaViQCqoL7jcjx1BRtPV+nuN79+TMQjItSQzL/0kMmx40/W5ulop5A7Zv2wnL -/V9lFDfhOPXzYRZY5LVtDQsEGz9QLX+zx3oaFoBg+Iof6Rsqxvm6ARppv9JYx1RX -CI/hOWB3S6xZhBqI8d3LT3jX5+EzLfzuQfogsL7L9ziUwOHQhQ+77Sxzq+3+knYa -ZH9bDTMJBzN7Bj8RpFxwPIXAz+OQqIN3+tvmxYxoZxBnpVIt8MSZj3+/0WvitUfW -2dCFmU2Umw9Lje4AWkcdEQOsQRivh7dvDDqPys/cA8GiCcjl/YBeyGBCARsaU1q7 -N6a3vLqE6R5sGtRk2tRD/pOLS/IseRYQ1JMLiI+h2IYURpFHmygk71dSTlxCnKr3 -Sewn6EAes6aJInKc9Q0ztFijMDvd1GpUk74aTfOTlPf8hAs/hCBcNANExdqtvArB -As8e5ZTZ845b2EzwnexhF7sUMlQMAimTHpKG9n/v55IFDlndmQguLvqcAFLTxWYp -5KeXRKQOKIETNcX2b2TmQcTVL8w0RSXPQQCWPUouwpaYT05KnJe32x+SMsj/D1Fu -1uwJ ------END CERTIFICATE----- - -# Issuer: CN=TrustCor ECA-1 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Subject: CN=TrustCor ECA-1 O=TrustCor Systems S. de R.L. OU=TrustCor Certificate Authority -# Label: "TrustCor ECA-1" -# Serial: 9548242946988625984 -# MD5 Fingerprint: 27:92:23:1d:0a:f5:40:7c:e9:e6:6b:9d:d8:f5:e7:6c -# SHA1 Fingerprint: 58:d1:df:95:95:67:6b:63:c0:f0:5b:1c:17:4d:8b:84:0b:c8:78:bd -# SHA256 Fingerprint: 5a:88:5d:b1:9c:01:d9:12:c5:75:93:88:93:8c:af:bb:df:03:1a:b2:d4:8e:91:ee:15:58:9b:42:97:1d:03:9c ------BEGIN CERTIFICATE----- -MIIEIDCCAwigAwIBAgIJAISCLF8cYtBAMA0GCSqGSIb3DQEBCwUAMIGcMQswCQYD -VQQGEwJQQTEPMA0GA1UECAwGUGFuYW1hMRQwEgYDVQQHDAtQYW5hbWEgQ2l0eTEk -MCIGA1UECgwbVHJ1c3RDb3IgU3lzdGVtcyBTLiBkZSBSLkwuMScwJQYDVQQLDB5U -cnVzdENvciBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxFzAVBgNVBAMMDlRydXN0Q29y -IEVDQS0xMB4XDTE2MDIwNDEyMzIzM1oXDTI5MTIzMTE3MjgwN1owgZwxCzAJBgNV -BAYTAlBBMQ8wDQYDVQQIDAZQYW5hbWExFDASBgNVBAcMC1BhbmFtYSBDaXR5MSQw -IgYDVQQKDBtUcnVzdENvciBTeXN0ZW1zIFMuIGRlIFIuTC4xJzAlBgNVBAsMHlRy -dXN0Q29yIENlcnRpZmljYXRlIEF1dGhvcml0eTEXMBUGA1UEAwwOVHJ1c3RDb3Ig -RUNBLTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPj+ARtZ+odnbb -3w9U73NjKYKtR8aja+3+XzP4Q1HpGjORMRegdMTUpwHmspI+ap3tDvl0mEDTPwOA -BoJA6LHip1GnHYMma6ve+heRK9jGrB6xnhkB1Zem6g23xFUfJ3zSCNV2HykVh0A5 -3ThFEXXQmqc04L/NyFIduUd+Dbi7xgz2c1cWWn5DkR9VOsZtRASqnKmcp0yJF4Ou -owReUoCLHhIlERnXDH19MURB6tuvsBzvgdAsxZohmz3tQjtQJvLsznFhBmIhVE5/ -wZ0+fyCMgMsq2JdiyIMzkX2woloPV+g7zPIlstR8L+xNxqE6FXrntl019fZISjZF -ZtS6mFjBAgMBAAGjYzBhMB0GA1UdDgQWBBREnkj1zG1I1KBLf/5ZJC+Dl5mahjAf -BgNVHSMEGDAWgBREnkj1zG1I1KBLf/5ZJC+Dl5mahjAPBgNVHRMBAf8EBTADAQH/ -MA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAQEABT41XBVwm8nHc2Fv -civUwo/yQ10CzsSUuZQRg2dd4mdsdXa/uwyqNsatR5Nj3B5+1t4u/ukZMjgDfxT2 -AHMsWbEhBuH7rBiVDKP/mZb3Kyeb1STMHd3BOuCYRLDE5D53sXOpZCz2HAF8P11F -hcCF5yWPldwX8zyfGm6wyuMdKulMY/okYWLW2n62HGz1Ah3UKt1VkOsqEUc8Ll50 -soIipX1TH0XsJ5F95yIW6MBoNtjG8U+ARDL54dHRHareqKucBK+tIA5kmE2la8BI -WJZpTdwHjFGTot+fDz2LYLSCjaoITmJF4PkL0uDgPFveXHEnJcLmA4GLEFPjx1Wi -tJ/X5g== ------END CERTIFICATE----- - -# Issuer: CN=SSL.com Root Certification Authority RSA O=SSL Corporation -# Subject: CN=SSL.com Root Certification Authority RSA O=SSL Corporation -# Label: "SSL.com Root Certification Authority RSA" -# Serial: 8875640296558310041 -# MD5 Fingerprint: 86:69:12:c0:70:f1:ec:ac:ac:c2:d5:bc:a5:5b:a1:29 -# SHA1 Fingerprint: b7:ab:33:08:d1:ea:44:77:ba:14:80:12:5a:6f:bd:a9:36:49:0c:bb -# SHA256 Fingerprint: 85:66:6a:56:2e:e0:be:5c:e9:25:c1:d8:89:0a:6f:76:a8:7e:c1:6d:4d:7d:5f:29:ea:74:19:cf:20:12:3b:69 ------BEGIN CERTIFICATE----- -MIIF3TCCA8WgAwIBAgIIeyyb0xaAMpkwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UE -BhMCVVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQK -DA9TU0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZp -Y2F0aW9uIEF1dGhvcml0eSBSU0EwHhcNMTYwMjEyMTczOTM5WhcNNDEwMjEyMTcz -OTM5WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv -dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNv -bSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFJTQTCCAiIwDQYJKoZIhvcN -AQEBBQADggIPADCCAgoCggIBAPkP3aMrfcvQKv7sZ4Wm5y4bunfh4/WvpOz6Sl2R -xFdHaxh3a3by/ZPkPQ/CFp4LZsNWlJ4Xg4XOVu/yFv0AYvUiCVToZRdOQbngT0aX -qhvIuG5iXmmxX9sqAn78bMrzQdjt0Oj8P2FI7bADFB0QDksZ4LtO7IZl/zbzXmcC -C52GVWH9ejjt/uIZALdvoVBidXQ8oPrIJZK0bnoix/geoeOy3ZExqysdBP+lSgQ3 -6YWkMyv94tZVNHwZpEpox7Ko07fKoZOI68GXvIz5HdkihCR0xwQ9aqkpk8zruFvh -/l8lqjRYyMEjVJ0bmBHDOJx+PYZspQ9AhnwC9FwCTyjLrnGfDzrIM/4RJTXq/LrF -YD3ZfBjVsqnTdXgDciLKOsMf7yzlLqn6niy2UUb9rwPW6mBo6oUWNmuF6R7As93E -JNyAKoFBbZQ+yODJgUEAnl6/f8UImKIYLEJAs/lvOCdLToD0PYFH4Ih86hzOtXVc -US4cK38acijnALXRdMbX5J+tB5O2UzU1/Dfkw/ZdFr4hc96SCvigY2q8lpJqPvi8 -ZVWb3vUNiSYE/CUapiVpy8JtynziWV+XrOvvLsi81xtZPCvM8hnIk2snYxnP/Okm -+Mpxm3+T/jRnhE6Z6/yzeAkzcLpmpnbtG3PrGqUNxCITIJRWCk4sbE6x/c+cCbqi -M+2HAgMBAAGjYzBhMB0GA1UdDgQWBBTdBAkHovV6fVJTEpKV7jiAJQ2mWTAPBgNV -HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFN0ECQei9Xp9UlMSkpXuOIAlDaZZMA4G -A1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAIBgRlCn7Jp0cHh5wYfGV -cpNxJK1ok1iOMq8bs3AD/CUrdIWQPXhq9LmLpZc7tRiRux6n+UBbkflVma8eEdBc -Hadm47GUBwwyOabqG7B52B2ccETjit3E+ZUfijhDPwGFpUenPUayvOUiaPd7nNgs -PgohyC0zrL/FgZkxdMF1ccW+sfAjRfSda/wZY52jvATGGAslu1OJD7OAUN5F7kR/ -q5R4ZJjT9ijdh9hwZXT7DrkT66cPYakylszeu+1jTBi7qUD3oFRuIIhxdRjqerQ0 -cuAjJ3dctpDqhiVAq+8zD8ufgr6iIPv2tS0a5sKFsXQP+8hlAqRSAUfdSSLBv9jr -a6x+3uxjMxW3IwiPxg+NQVrdjsW5j+VFP3jbutIbQLH+cU0/4IGiul607BXgk90I -H37hVZkLId6Tngr75qNJvTYw/ud3sqB1l7UtgYgXZSD32pAAn8lSzDLKNXz1PQ/Y -K9f1JmzJBjSWFupwWRoyeXkLtoh/D1JIPb9s2KJELtFOt3JY04kTlf5Eq/jXixtu -nLwsoFvVagCvXzfh1foQC5ichucmj87w7G6KVwuA406ywKBjYZC6VWg3dGq2ktuf -oYYitmUnDuy2n0Jg5GfCtdpBC8TTi2EbvPofkSvXRAdeuims2cXp71NIWuuA8ShY -Ic2wBlX7Jz9TkHCpBB5XJ7k= ------END CERTIFICATE----- - -# Issuer: CN=SSL.com Root Certification Authority ECC O=SSL Corporation -# Subject: CN=SSL.com Root Certification Authority ECC O=SSL Corporation -# Label: "SSL.com Root Certification Authority ECC" -# Serial: 8495723813297216424 -# MD5 Fingerprint: 2e:da:e4:39:7f:9c:8f:37:d1:70:9f:26:17:51:3a:8e -# SHA1 Fingerprint: c3:19:7c:39:24:e6:54:af:1b:c4:ab:20:95:7a:e2:c3:0e:13:02:6a -# SHA256 Fingerprint: 34:17:bb:06:cc:60:07:da:1b:96:1c:92:0b:8a:b4:ce:3f:ad:82:0e:4a:a3:0b:9a:cb:c4:a7:4e:bd:ce:bc:65 ------BEGIN CERTIFICATE----- -MIICjTCCAhSgAwIBAgIIdebfy8FoW6gwCgYIKoZIzj0EAwIwfDELMAkGA1UEBhMC -VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T -U0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZpY2F0 -aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNDAzWhcNNDEwMjEyMTgxNDAz -WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hvdXN0 -b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNvbSBS -b290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49AgEGBSuB -BAAiA2IABEVuqVDEpiM2nl8ojRfLliJkP9x6jh3MCLOicSS6jkm5BBtHllirLZXI -7Z4INcgn64mMU1jrYor+8FsPazFSY0E7ic3s7LaNGdM0B9y7xgZ/wkWV7Mt/qCPg -CemB+vNH06NjMGEwHQYDVR0OBBYEFILRhXMw5zUE044CkvvlpNHEIejNMA8GA1Ud -EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUgtGFczDnNQTTjgKS++Wk0cQh6M0wDgYD -VR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2cAMGQCMG/n61kRpGDPYbCWe+0F+S8T -kdzt5fxQaxFGRrMcIQBiu77D5+jNB5n5DQtdcj7EqgIwH7y6C+IwJPt8bYBVCpk+ -gA0z5Wajs6O7pdWLjwkspl1+4vAHCGht0nxpbl/f5Wpl ------END CERTIFICATE----- - -# Issuer: CN=SSL.com EV Root Certification Authority RSA R2 O=SSL Corporation -# Subject: CN=SSL.com EV Root Certification Authority RSA R2 O=SSL Corporation -# Label: "SSL.com EV Root Certification Authority RSA R2" -# Serial: 6248227494352943350 -# MD5 Fingerprint: e1:1e:31:58:1a:ae:54:53:02:f6:17:6a:11:7b:4d:95 -# SHA1 Fingerprint: 74:3a:f0:52:9b:d0:32:a0:f4:4a:83:cd:d4:ba:a9:7b:7c:2e:c4:9a -# SHA256 Fingerprint: 2e:7b:f1:6c:c2:24:85:a7:bb:e2:aa:86:96:75:07:61:b0:ae:39:be:3b:2f:e9:d0:cc:6d:4e:f7:34:91:42:5c ------BEGIN CERTIFICATE----- -MIIF6zCCA9OgAwIBAgIIVrYpzTS8ePYwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNV -BAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4GA1UEBwwHSG91c3RvbjEYMBYGA1UE -CgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQDDC5TU0wuY29tIEVWIFJvb3QgQ2Vy -dGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIyMB4XDTE3MDUzMTE4MTQzN1oXDTQy -MDUzMDE4MTQzN1owgYIxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4G -A1UEBwwHSG91c3RvbjEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQD -DC5TU0wuY29tIEVWIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIy -MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAjzZlQOHWTcDXtOlG2mvq -M0fNTPl9fb69LT3w23jhhqXZuglXaO1XPqDQCEGD5yhBJB/jchXQARr7XnAjssuf -OePPxU7Gkm0mxnu7s9onnQqG6YE3Bf7wcXHswxzpY6IXFJ3vG2fThVUCAtZJycxa -4bH3bzKfydQ7iEGonL3Lq9ttewkfokxykNorCPzPPFTOZw+oz12WGQvE43LrrdF9 -HSfvkusQv1vrO6/PgN3B0pYEW3p+pKk8OHakYo6gOV7qd89dAFmPZiw+B6KjBSYR -aZfqhbcPlgtLyEDhULouisv3D5oi53+aNxPN8k0TayHRwMwi8qFG9kRpnMphNQcA -b9ZhCBHqurj26bNg5U257J8UZslXWNvNh2n4ioYSA0e/ZhN2rHd9NCSFg83XqpyQ -Gp8hLH94t2S42Oim9HizVcuE0jLEeK6jj2HdzghTreyI/BXkmg3mnxp3zkyPuBQV -PWKchjgGAGYS5Fl2WlPAApiiECtoRHuOec4zSnaqW4EWG7WK2NAAe15itAnWhmMO -pgWVSbooi4iTsjQc2KRVbrcc0N6ZVTsj9CLg+SlmJuwgUHfbSguPvuUCYHBBXtSu -UDkiFCbLsjtzdFVHB3mBOagwE0TlBIqulhMlQg+5U8Sb/M3kHN48+qvWBkofZ6aY -MBzdLNvcGJVXZsb/XItW9XcCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNV -HSMEGDAWgBT5YLvU49U09rj1BoAlp3PbRmmonjAdBgNVHQ4EFgQU+WC71OPVNPa4 -9QaAJadz20ZpqJ4wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBW -s47LCp1Jjr+kxJG7ZhcFUZh1++VQLHqe8RT6q9OKPv+RKY9ji9i0qVQBDb6Thi/5 -Sm3HXvVX+cpVHBK+Rw82xd9qt9t1wkclf7nxY/hoLVUE0fKNsKTPvDxeH3jnpaAg -cLAExbf3cqfeIg29MyVGjGSSJuM+LmOW2puMPfgYCdcDzH2GguDKBAdRUNf/ktUM -79qGn5nX67evaOI5JpS6aLe/g9Pqemc9YmeuJeVy6OLk7K4S9ksrPJ/psEDzOFSz -/bdoyNrGj1E8svuR3Bznm53htw1yj+KkxKl4+esUrMZDBcJlOSgYAsOCsp0FvmXt -ll9ldDz7CTUue5wT/RsPXcdtgTpWD8w74a8CLyKsRspGPKAcTNZEtF4uXBVmCeEm -Kf7GUmG6sXP/wwyc5WxqlD8UykAWlYTzWamsX0xhk23RO8yilQwipmdnRC652dKK -QbNmC1r7fSOl8hqw/96bg5Qu0T/fkreRrwU7ZcegbLHNYhLDkBvjJc40vG93drEQ -w/cFGsDWr3RiSBd3kmmQYRzelYB0VI8YHMPzA9C/pEN1hlMYegouCRw2n5H9gooi -S9EOUCXdywMMF8mDAAhONU2Ki+3wApRmLER/y5UnlhetCTCstnEXbosX9hwJ1C07 -mKVx01QT2WDz9UtmT/rx7iASjbSsV7FFY6GsdqnC+w== ------END CERTIFICATE----- - -# Issuer: CN=SSL.com EV Root Certification Authority ECC O=SSL Corporation -# Subject: CN=SSL.com EV Root Certification Authority ECC O=SSL Corporation -# Label: "SSL.com EV Root Certification Authority ECC" -# Serial: 3182246526754555285 -# MD5 Fingerprint: 59:53:22:65:83:42:01:54:c0:ce:42:b9:5a:7c:f2:90 -# SHA1 Fingerprint: 4c:dd:51:a3:d1:f5:20:32:14:b0:c6:c5:32:23:03:91:c7:46:42:6d -# SHA256 Fingerprint: 22:a2:c1:f7:bd:ed:70:4c:c1:e7:01:b5:f4:08:c3:10:88:0f:e9:56:b5:de:2a:4a:44:f9:9c:87:3a:25:a7:c8 ------BEGIN CERTIFICATE----- -MIIClDCCAhqgAwIBAgIILCmcWxbtBZUwCgYIKoZIzj0EAwIwfzELMAkGA1UEBhMC -VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T -U0wgQ29ycG9yYXRpb24xNDAyBgNVBAMMK1NTTC5jb20gRVYgUm9vdCBDZXJ0aWZp -Y2F0aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNTIzWhcNNDEwMjEyMTgx -NTIzWjB/MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv -dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjE0MDIGA1UEAwwrU1NMLmNv -bSBFViBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49 -AgEGBSuBBAAiA2IABKoSR5CYG/vvw0AHgyBO8TCCogbR8pKGYfL2IWjKAMTH6kMA -VIbc/R/fALhBYlzccBYy3h+Z1MzFB8gIH2EWB1E9fVwHU+M1OIzfzZ/ZLg1Kthku -WnBaBu2+8KGwytAJKaNjMGEwHQYDVR0OBBYEFFvKXuXe0oGqzagtZFG22XKbl+ZP -MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUW8pe5d7SgarNqC1kUbbZcpuX -5k8wDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2gAMGUCMQCK5kCJN+vp1RPZ -ytRrJPOwPYdGWBrssd9v+1a6cGvHOMzosYxPD/fxZ3YOg9AeUY8CMD32IygmTMZg -h5Mmm7I1HrrW9zzRHM76JTymGoEVW/MSD2zuZYrJh6j5B+BimoxcSg== ------END CERTIFICATE----- diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/core.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/core.py deleted file mode 100644 index 0ac5ee1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/certifi/core.py +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -""" -certifi.py -~~~~~~~~~~ - -This module returns the installation location of cacert.pem. -""" -import os -import warnings - - -class DeprecatedBundleWarning(DeprecationWarning): - """ - The weak security bundle is being deprecated. Please bother your service - provider to get them to stop using cross-signed roots. - """ - - -def where(): - f = os.path.dirname(__file__) - - return os.path.join(f, 'cacert.pem') - - -def old_where(): - warnings.warn( - "The weak security bundle has been removed. certifi.old_where() is now an alias " - "of certifi.where(). Please update your code to use certifi.where() instead. " - "certifi.old_where() will be removed in 2018.", - DeprecatedBundleWarning - ) - return where() - -if __name__ == '__main__': - print(where()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/__init__.py deleted file mode 100644 index 45bf7e6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/__init__.py +++ /dev/null @@ -1,39 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - - -from .compat import PY2, PY3 -from .universaldetector import UniversalDetector -from .version import __version__, VERSION - - -def detect(byte_str): - """ - Detect the encoding of the given byte string. - - :param byte_str: The byte sequence to examine. - :type byte_str: ``bytes`` or ``bytearray`` - """ - if not isinstance(byte_str, bytearray): - if not isinstance(byte_str, bytes): - raise TypeError('Expected object of type bytes or bytearray, got: ' - '{0}'.format(type(byte_str))) - else: - byte_str = bytearray(byte_str) - detector = UniversalDetector() - detector.feed(byte_str) - return detector.close() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5freq.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5freq.py deleted file mode 100644 index 88023ae..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5freq.py +++ /dev/null @@ -1,386 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# Big5 frequency table -# by Taiwan's Mandarin Promotion Council -# <http://www.edu.tw:81/mandr/> -# -# 128 --> 0.42261 -# 256 --> 0.57851 -# 512 --> 0.74851 -# 1024 --> 0.89384 -# 2048 --> 0.97583 -# -# Ideal Distribution Ratio = 0.74851/(1-0.74851) =2.98 -# Random Distribution Ration = 512/(5401-512)=0.105 -# -# Typical Distribution Ratio about 25% of Ideal one, still much higher than RDR - -BIG5_TYPICAL_DISTRIBUTION_RATIO = 0.75 - -#Char to FreqOrder table -BIG5_TABLE_SIZE = 5376 - -BIG5_CHAR_TO_FREQ_ORDER = ( - 1,1801,1506, 255,1431, 198, 9, 82, 6,5008, 177, 202,3681,1256,2821, 110, # 16 -3814, 33,3274, 261, 76, 44,2114, 16,2946,2187,1176, 659,3971, 26,3451,2653, # 32 -1198,3972,3350,4202, 410,2215, 302, 590, 361,1964, 8, 204, 58,4510,5009,1932, # 48 - 63,5010,5011, 317,1614, 75, 222, 159,4203,2417,1480,5012,3555,3091, 224,2822, # 64 -3682, 3, 10,3973,1471, 29,2787,1135,2866,1940, 873, 130,3275,1123, 312,5013, # 80 -4511,2052, 507, 252, 682,5014, 142,1915, 124, 206,2947, 34,3556,3204, 64, 604, # 96 -5015,2501,1977,1978, 155,1991, 645, 641,1606,5016,3452, 337, 72, 406,5017, 80, # 112 - 630, 238,3205,1509, 263, 939,1092,2654, 756,1440,1094,3453, 449, 69,2987, 591, # 128 - 179,2096, 471, 115,2035,1844, 60, 50,2988, 134, 806,1869, 734,2036,3454, 180, # 144 - 995,1607, 156, 537,2907, 688,5018, 319,1305, 779,2145, 514,2379, 298,4512, 359, # 160 -2502, 90,2716,1338, 663, 11, 906,1099,2553, 20,2441, 182, 532,1716,5019, 732, # 176 -1376,4204,1311,1420,3206, 25,2317,1056, 113, 399, 382,1950, 242,3455,2474, 529, # 192 -3276, 475,1447,3683,5020, 117, 21, 656, 810,1297,2300,2334,3557,5021, 126,4205, # 208 - 706, 456, 150, 613,4513, 71,1118,2037,4206, 145,3092, 85, 835, 486,2115,1246, # 224 -1426, 428, 727,1285,1015, 800, 106, 623, 303,1281,5022,2128,2359, 347,3815, 221, # 240 -3558,3135,5023,1956,1153,4207, 83, 296,1199,3093, 192, 624, 93,5024, 822,1898, # 256 -2823,3136, 795,2065, 991,1554,1542,1592, 27, 43,2867, 859, 139,1456, 860,4514, # 272 - 437, 712,3974, 164,2397,3137, 695, 211,3037,2097, 195,3975,1608,3559,3560,3684, # 288 -3976, 234, 811,2989,2098,3977,2233,1441,3561,1615,2380, 668,2077,1638, 305, 228, # 304 -1664,4515, 467, 415,5025, 262,2099,1593, 239, 108, 300, 200,1033, 512,1247,2078, # 320 -5026,5027,2176,3207,3685,2682, 593, 845,1062,3277, 88,1723,2038,3978,1951, 212, # 336 - 266, 152, 149, 468,1899,4208,4516, 77, 187,5028,3038, 37, 5,2990,5029,3979, # 352 -5030,5031, 39,2524,4517,2908,3208,2079, 55, 148, 74,4518, 545, 483,1474,1029, # 368 -1665, 217,1870,1531,3138,1104,2655,4209, 24, 172,3562, 900,3980,3563,3564,4519, # 384 - 32,1408,2824,1312, 329, 487,2360,2251,2717, 784,2683, 4,3039,3351,1427,1789, # 400 - 188, 109, 499,5032,3686,1717,1790, 888,1217,3040,4520,5033,3565,5034,3352,1520, # 416 -3687,3981, 196,1034, 775,5035,5036, 929,1816, 249, 439, 38,5037,1063,5038, 794, # 432 -3982,1435,2301, 46, 178,3278,2066,5039,2381,5040, 214,1709,4521, 804, 35, 707, # 448 - 324,3688,1601,2554, 140, 459,4210,5041,5042,1365, 839, 272, 978,2262,2580,3456, # 464 -2129,1363,3689,1423, 697, 100,3094, 48, 70,1231, 495,3139,2196,5043,1294,5044, # 480 -2080, 462, 586,1042,3279, 853, 256, 988, 185,2382,3457,1698, 434,1084,5045,3458, # 496 - 314,2625,2788,4522,2335,2336, 569,2285, 637,1817,2525, 757,1162,1879,1616,3459, # 512 - 287,1577,2116, 768,4523,1671,2868,3566,2526,1321,3816, 909,2418,5046,4211, 933, # 528 -3817,4212,2053,2361,1222,4524, 765,2419,1322, 786,4525,5047,1920,1462,1677,2909, # 544 -1699,5048,4526,1424,2442,3140,3690,2600,3353,1775,1941,3460,3983,4213, 309,1369, # 560 -1130,2825, 364,2234,1653,1299,3984,3567,3985,3986,2656, 525,1085,3041, 902,2001, # 576 -1475, 964,4527, 421,1845,1415,1057,2286, 940,1364,3141, 376,4528,4529,1381, 7, # 592 -2527, 983,2383, 336,1710,2684,1846, 321,3461, 559,1131,3042,2752,1809,1132,1313, # 608 - 265,1481,1858,5049, 352,1203,2826,3280, 167,1089, 420,2827, 776, 792,1724,3568, # 624 -4214,2443,3281,5050,4215,5051, 446, 229, 333,2753, 901,3818,1200,1557,4530,2657, # 640 -1921, 395,2754,2685,3819,4216,1836, 125, 916,3209,2626,4531,5052,5053,3820,5054, # 656 -5055,5056,4532,3142,3691,1133,2555,1757,3462,1510,2318,1409,3569,5057,2146, 438, # 672 -2601,2910,2384,3354,1068, 958,3043, 461, 311,2869,2686,4217,1916,3210,4218,1979, # 688 - 383, 750,2755,2627,4219, 274, 539, 385,1278,1442,5058,1154,1965, 384, 561, 210, # 704 - 98,1295,2556,3570,5059,1711,2420,1482,3463,3987,2911,1257, 129,5060,3821, 642, # 720 - 523,2789,2790,2658,5061, 141,2235,1333, 68, 176, 441, 876, 907,4220, 603,2602, # 736 - 710, 171,3464, 404, 549, 18,3143,2398,1410,3692,1666,5062,3571,4533,2912,4534, # 752 -5063,2991, 368,5064, 146, 366, 99, 871,3693,1543, 748, 807,1586,1185, 22,2263, # 768 - 379,3822,3211,5065,3212, 505,1942,2628,1992,1382,2319,5066, 380,2362, 218, 702, # 784 -1818,1248,3465,3044,3572,3355,3282,5067,2992,3694, 930,3283,3823,5068, 59,5069, # 800 - 585, 601,4221, 497,3466,1112,1314,4535,1802,5070,1223,1472,2177,5071, 749,1837, # 816 - 690,1900,3824,1773,3988,1476, 429,1043,1791,2236,2117, 917,4222, 447,1086,1629, # 832 -5072, 556,5073,5074,2021,1654, 844,1090, 105, 550, 966,1758,2828,1008,1783, 686, # 848 -1095,5075,2287, 793,1602,5076,3573,2603,4536,4223,2948,2302,4537,3825, 980,2503, # 864 - 544, 353, 527,4538, 908,2687,2913,5077, 381,2629,1943,1348,5078,1341,1252, 560, # 880 -3095,5079,3467,2870,5080,2054, 973, 886,2081, 143,4539,5081,5082, 157,3989, 496, # 896 -4224, 57, 840, 540,2039,4540,4541,3468,2118,1445, 970,2264,1748,1966,2082,4225, # 912 -3144,1234,1776,3284,2829,3695, 773,1206,2130,1066,2040,1326,3990,1738,1725,4226, # 928 - 279,3145, 51,1544,2604, 423,1578,2131,2067, 173,4542,1880,5083,5084,1583, 264, # 944 - 610,3696,4543,2444, 280, 154,5085,5086,5087,1739, 338,1282,3096, 693,2871,1411, # 960 -1074,3826,2445,5088,4544,5089,5090,1240, 952,2399,5091,2914,1538,2688, 685,1483, # 976 -4227,2475,1436, 953,4228,2055,4545, 671,2400, 79,4229,2446,3285, 608, 567,2689, # 992 -3469,4230,4231,1691, 393,1261,1792,2401,5092,4546,5093,5094,5095,5096,1383,1672, # 1008 -3827,3213,1464, 522,1119, 661,1150, 216, 675,4547,3991,1432,3574, 609,4548,2690, # 1024 -2402,5097,5098,5099,4232,3045, 0,5100,2476, 315, 231,2447, 301,3356,4549,2385, # 1040 -5101, 233,4233,3697,1819,4550,4551,5102, 96,1777,1315,2083,5103, 257,5104,1810, # 1056 -3698,2718,1139,1820,4234,2022,1124,2164,2791,1778,2659,5105,3097, 363,1655,3214, # 1072 -5106,2993,5107,5108,5109,3992,1567,3993, 718, 103,3215, 849,1443, 341,3357,2949, # 1088 -1484,5110,1712, 127, 67, 339,4235,2403, 679,1412, 821,5111,5112, 834, 738, 351, # 1104 -2994,2147, 846, 235,1497,1881, 418,1993,3828,2719, 186,1100,2148,2756,3575,1545, # 1120 -1355,2950,2872,1377, 583,3994,4236,2581,2995,5113,1298,3699,1078,2557,3700,2363, # 1136 - 78,3829,3830, 267,1289,2100,2002,1594,4237, 348, 369,1274,2197,2178,1838,4552, # 1152 -1821,2830,3701,2757,2288,2003,4553,2951,2758, 144,3358, 882,4554,3995,2759,3470, # 1168 -4555,2915,5114,4238,1726, 320,5115,3996,3046, 788,2996,5116,2831,1774,1327,2873, # 1184 -3997,2832,5117,1306,4556,2004,1700,3831,3576,2364,2660, 787,2023, 506, 824,3702, # 1200 - 534, 323,4557,1044,3359,2024,1901, 946,3471,5118,1779,1500,1678,5119,1882,4558, # 1216 - 165, 243,4559,3703,2528, 123, 683,4239, 764,4560, 36,3998,1793, 589,2916, 816, # 1232 - 626,1667,3047,2237,1639,1555,1622,3832,3999,5120,4000,2874,1370,1228,1933, 891, # 1248 -2084,2917, 304,4240,5121, 292,2997,2720,3577, 691,2101,4241,1115,4561, 118, 662, # 1264 -5122, 611,1156, 854,2386,1316,2875, 2, 386, 515,2918,5123,5124,3286, 868,2238, # 1280 -1486, 855,2661, 785,2216,3048,5125,1040,3216,3578,5126,3146, 448,5127,1525,5128, # 1296 -2165,4562,5129,3833,5130,4242,2833,3579,3147, 503, 818,4001,3148,1568, 814, 676, # 1312 -1444, 306,1749,5131,3834,1416,1030, 197,1428, 805,2834,1501,4563,5132,5133,5134, # 1328 -1994,5135,4564,5136,5137,2198, 13,2792,3704,2998,3149,1229,1917,5138,3835,2132, # 1344 -5139,4243,4565,2404,3580,5140,2217,1511,1727,1120,5141,5142, 646,3836,2448, 307, # 1360 -5143,5144,1595,3217,5145,5146,5147,3705,1113,1356,4002,1465,2529,2530,5148, 519, # 1376 -5149, 128,2133, 92,2289,1980,5150,4003,1512, 342,3150,2199,5151,2793,2218,1981, # 1392 -3360,4244, 290,1656,1317, 789, 827,2365,5152,3837,4566, 562, 581,4004,5153, 401, # 1408 -4567,2252, 94,4568,5154,1399,2794,5155,1463,2025,4569,3218,1944,5156, 828,1105, # 1424 -4245,1262,1394,5157,4246, 605,4570,5158,1784,2876,5159,2835, 819,2102, 578,2200, # 1440 -2952,5160,1502, 436,3287,4247,3288,2836,4005,2919,3472,3473,5161,2721,2320,5162, # 1456 -5163,2337,2068, 23,4571, 193, 826,3838,2103, 699,1630,4248,3098, 390,1794,1064, # 1472 -3581,5164,1579,3099,3100,1400,5165,4249,1839,1640,2877,5166,4572,4573, 137,4250, # 1488 - 598,3101,1967, 780, 104, 974,2953,5167, 278, 899, 253, 402, 572, 504, 493,1339, # 1504 -5168,4006,1275,4574,2582,2558,5169,3706,3049,3102,2253, 565,1334,2722, 863, 41, # 1520 -5170,5171,4575,5172,1657,2338, 19, 463,2760,4251, 606,5173,2999,3289,1087,2085, # 1536 -1323,2662,3000,5174,1631,1623,1750,4252,2691,5175,2878, 791,2723,2663,2339, 232, # 1552 -2421,5176,3001,1498,5177,2664,2630, 755,1366,3707,3290,3151,2026,1609, 119,1918, # 1568 -3474, 862,1026,4253,5178,4007,3839,4576,4008,4577,2265,1952,2477,5179,1125, 817, # 1584 -4254,4255,4009,1513,1766,2041,1487,4256,3050,3291,2837,3840,3152,5180,5181,1507, # 1600 -5182,2692, 733, 40,1632,1106,2879, 345,4257, 841,2531, 230,4578,3002,1847,3292, # 1616 -3475,5183,1263, 986,3476,5184, 735, 879, 254,1137, 857, 622,1300,1180,1388,1562, # 1632 -4010,4011,2954, 967,2761,2665,1349, 592,2134,1692,3361,3003,1995,4258,1679,4012, # 1648 -1902,2188,5185, 739,3708,2724,1296,1290,5186,4259,2201,2202,1922,1563,2605,2559, # 1664 -1871,2762,3004,5187, 435,5188, 343,1108, 596, 17,1751,4579,2239,3477,3709,5189, # 1680 -4580, 294,3582,2955,1693, 477, 979, 281,2042,3583, 643,2043,3710,2631,2795,2266, # 1696 -1031,2340,2135,2303,3584,4581, 367,1249,2560,5190,3585,5191,4582,1283,3362,2005, # 1712 - 240,1762,3363,4583,4584, 836,1069,3153, 474,5192,2149,2532, 268,3586,5193,3219, # 1728 -1521,1284,5194,1658,1546,4260,5195,3587,3588,5196,4261,3364,2693,1685,4262, 961, # 1744 -1673,2632, 190,2006,2203,3841,4585,4586,5197, 570,2504,3711,1490,5198,4587,2633, # 1760 -3293,1957,4588, 584,1514, 396,1045,1945,5199,4589,1968,2449,5200,5201,4590,4013, # 1776 - 619,5202,3154,3294, 215,2007,2796,2561,3220,4591,3221,4592, 763,4263,3842,4593, # 1792 -5203,5204,1958,1767,2956,3365,3712,1174, 452,1477,4594,3366,3155,5205,2838,1253, # 1808 -2387,2189,1091,2290,4264, 492,5206, 638,1169,1825,2136,1752,4014, 648, 926,1021, # 1824 -1324,4595, 520,4596, 997, 847,1007, 892,4597,3843,2267,1872,3713,2405,1785,4598, # 1840 -1953,2957,3103,3222,1728,4265,2044,3714,4599,2008,1701,3156,1551, 30,2268,4266, # 1856 -5207,2027,4600,3589,5208, 501,5209,4267, 594,3478,2166,1822,3590,3479,3591,3223, # 1872 - 829,2839,4268,5210,1680,3157,1225,4269,5211,3295,4601,4270,3158,2341,5212,4602, # 1888 -4271,5213,4015,4016,5214,1848,2388,2606,3367,5215,4603, 374,4017, 652,4272,4273, # 1904 - 375,1140, 798,5216,5217,5218,2366,4604,2269, 546,1659, 138,3051,2450,4605,5219, # 1920 -2254, 612,1849, 910, 796,3844,1740,1371, 825,3845,3846,5220,2920,2562,5221, 692, # 1936 - 444,3052,2634, 801,4606,4274,5222,1491, 244,1053,3053,4275,4276, 340,5223,4018, # 1952 -1041,3005, 293,1168, 87,1357,5224,1539, 959,5225,2240, 721, 694,4277,3847, 219, # 1968 -1478, 644,1417,3368,2666,1413,1401,1335,1389,4019,5226,5227,3006,2367,3159,1826, # 1984 - 730,1515, 184,2840, 66,4607,5228,1660,2958, 246,3369, 378,1457, 226,3480, 975, # 2000 -4020,2959,1264,3592, 674, 696,5229, 163,5230,1141,2422,2167, 713,3593,3370,4608, # 2016 -4021,5231,5232,1186, 15,5233,1079,1070,5234,1522,3224,3594, 276,1050,2725, 758, # 2032 -1126, 653,2960,3296,5235,2342, 889,3595,4022,3104,3007, 903,1250,4609,4023,3481, # 2048 -3596,1342,1681,1718, 766,3297, 286, 89,2961,3715,5236,1713,5237,2607,3371,3008, # 2064 -5238,2962,2219,3225,2880,5239,4610,2505,2533, 181, 387,1075,4024, 731,2190,3372, # 2080 -5240,3298, 310, 313,3482,2304, 770,4278, 54,3054, 189,4611,3105,3848,4025,5241, # 2096 -1230,1617,1850, 355,3597,4279,4612,3373, 111,4280,3716,1350,3160,3483,3055,4281, # 2112 -2150,3299,3598,5242,2797,4026,4027,3009, 722,2009,5243,1071, 247,1207,2343,2478, # 2128 -1378,4613,2010, 864,1437,1214,4614, 373,3849,1142,2220, 667,4615, 442,2763,2563, # 2144 -3850,4028,1969,4282,3300,1840, 837, 170,1107, 934,1336,1883,5244,5245,2119,4283, # 2160 -2841, 743,1569,5246,4616,4284, 582,2389,1418,3484,5247,1803,5248, 357,1395,1729, # 2176 -3717,3301,2423,1564,2241,5249,3106,3851,1633,4617,1114,2086,4285,1532,5250, 482, # 2192 -2451,4618,5251,5252,1492, 833,1466,5253,2726,3599,1641,2842,5254,1526,1272,3718, # 2208 -4286,1686,1795, 416,2564,1903,1954,1804,5255,3852,2798,3853,1159,2321,5256,2881, # 2224 -4619,1610,1584,3056,2424,2764, 443,3302,1163,3161,5257,5258,4029,5259,4287,2506, # 2240 -3057,4620,4030,3162,2104,1647,3600,2011,1873,4288,5260,4289, 431,3485,5261, 250, # 2256 - 97, 81,4290,5262,1648,1851,1558, 160, 848,5263, 866, 740,1694,5264,2204,2843, # 2272 -3226,4291,4621,3719,1687, 950,2479, 426, 469,3227,3720,3721,4031,5265,5266,1188, # 2288 - 424,1996, 861,3601,4292,3854,2205,2694, 168,1235,3602,4293,5267,2087,1674,4622, # 2304 -3374,3303, 220,2565,1009,5268,3855, 670,3010, 332,1208, 717,5269,5270,3603,2452, # 2320 -4032,3375,5271, 513,5272,1209,2882,3376,3163,4623,1080,5273,5274,5275,5276,2534, # 2336 -3722,3604, 815,1587,4033,4034,5277,3605,3486,3856,1254,4624,1328,3058,1390,4035, # 2352 -1741,4036,3857,4037,5278, 236,3858,2453,3304,5279,5280,3723,3859,1273,3860,4625, # 2368 -5281, 308,5282,4626, 245,4627,1852,2480,1307,2583, 430, 715,2137,2454,5283, 270, # 2384 - 199,2883,4038,5284,3606,2727,1753, 761,1754, 725,1661,1841,4628,3487,3724,5285, # 2400 -5286, 587, 14,3305, 227,2608, 326, 480,2270, 943,2765,3607, 291, 650,1884,5287, # 2416 -1702,1226, 102,1547, 62,3488, 904,4629,3489,1164,4294,5288,5289,1224,1548,2766, # 2432 - 391, 498,1493,5290,1386,1419,5291,2056,1177,4630, 813, 880,1081,2368, 566,1145, # 2448 -4631,2291,1001,1035,2566,2609,2242, 394,1286,5292,5293,2069,5294, 86,1494,1730, # 2464 -4039, 491,1588, 745, 897,2963, 843,3377,4040,2767,2884,3306,1768, 998,2221,2070, # 2480 - 397,1827,1195,1970,3725,3011,3378, 284,5295,3861,2507,2138,2120,1904,5296,4041, # 2496 -2151,4042,4295,1036,3490,1905, 114,2567,4296, 209,1527,5297,5298,2964,2844,2635, # 2512 -2390,2728,3164, 812,2568,5299,3307,5300,1559, 737,1885,3726,1210, 885, 28,2695, # 2528 -3608,3862,5301,4297,1004,1780,4632,5302, 346,1982,2222,2696,4633,3863,1742, 797, # 2544 -1642,4043,1934,1072,1384,2152, 896,4044,3308,3727,3228,2885,3609,5303,2569,1959, # 2560 -4634,2455,1786,5304,5305,5306,4045,4298,1005,1308,3728,4299,2729,4635,4636,1528, # 2576 -2610, 161,1178,4300,1983, 987,4637,1101,4301, 631,4046,1157,3229,2425,1343,1241, # 2592 -1016,2243,2570, 372, 877,2344,2508,1160, 555,1935, 911,4047,5307, 466,1170, 169, # 2608 -1051,2921,2697,3729,2481,3012,1182,2012,2571,1251,2636,5308, 992,2345,3491,1540, # 2624 -2730,1201,2071,2406,1997,2482,5309,4638, 528,1923,2191,1503,1874,1570,2369,3379, # 2640 -3309,5310, 557,1073,5311,1828,3492,2088,2271,3165,3059,3107, 767,3108,2799,4639, # 2656 -1006,4302,4640,2346,1267,2179,3730,3230, 778,4048,3231,2731,1597,2667,5312,4641, # 2672 -5313,3493,5314,5315,5316,3310,2698,1433,3311, 131, 95,1504,4049, 723,4303,3166, # 2688 -1842,3610,2768,2192,4050,2028,2105,3731,5317,3013,4051,1218,5318,3380,3232,4052, # 2704 -4304,2584, 248,1634,3864, 912,5319,2845,3732,3060,3865, 654, 53,5320,3014,5321, # 2720 -1688,4642, 777,3494,1032,4053,1425,5322, 191, 820,2121,2846, 971,4643, 931,3233, # 2736 - 135, 664, 783,3866,1998, 772,2922,1936,4054,3867,4644,2923,3234, 282,2732, 640, # 2752 -1372,3495,1127, 922, 325,3381,5323,5324, 711,2045,5325,5326,4055,2223,2800,1937, # 2768 -4056,3382,2224,2255,3868,2305,5327,4645,3869,1258,3312,4057,3235,2139,2965,4058, # 2784 -4059,5328,2225, 258,3236,4646, 101,1227,5329,3313,1755,5330,1391,3314,5331,2924, # 2800 -2057, 893,5332,5333,5334,1402,4305,2347,5335,5336,3237,3611,5337,5338, 878,1325, # 2816 -1781,2801,4647, 259,1385,2585, 744,1183,2272,4648,5339,4060,2509,5340, 684,1024, # 2832 -4306,5341, 472,3612,3496,1165,3315,4061,4062, 322,2153, 881, 455,1695,1152,1340, # 2848 - 660, 554,2154,4649,1058,4650,4307, 830,1065,3383,4063,4651,1924,5342,1703,1919, # 2864 -5343, 932,2273, 122,5344,4652, 947, 677,5345,3870,2637, 297,1906,1925,2274,4653, # 2880 -2322,3316,5346,5347,4308,5348,4309, 84,4310, 112, 989,5349, 547,1059,4064, 701, # 2896 -3613,1019,5350,4311,5351,3497, 942, 639, 457,2306,2456, 993,2966, 407, 851, 494, # 2912 -4654,3384, 927,5352,1237,5353,2426,3385, 573,4312, 680, 921,2925,1279,1875, 285, # 2928 - 790,1448,1984, 719,2168,5354,5355,4655,4065,4066,1649,5356,1541, 563,5357,1077, # 2944 -5358,3386,3061,3498, 511,3015,4067,4068,3733,4069,1268,2572,3387,3238,4656,4657, # 2960 -5359, 535,1048,1276,1189,2926,2029,3167,1438,1373,2847,2967,1134,2013,5360,4313, # 2976 -1238,2586,3109,1259,5361, 700,5362,2968,3168,3734,4314,5363,4315,1146,1876,1907, # 2992 -4658,2611,4070, 781,2427, 132,1589, 203, 147, 273,2802,2407, 898,1787,2155,4071, # 3008 -4072,5364,3871,2803,5365,5366,4659,4660,5367,3239,5368,1635,3872, 965,5369,1805, # 3024 -2699,1516,3614,1121,1082,1329,3317,4073,1449,3873, 65,1128,2848,2927,2769,1590, # 3040 -3874,5370,5371, 12,2668, 45, 976,2587,3169,4661, 517,2535,1013,1037,3240,5372, # 3056 -3875,2849,5373,3876,5374,3499,5375,2612, 614,1999,2323,3877,3110,2733,2638,5376, # 3072 -2588,4316, 599,1269,5377,1811,3735,5378,2700,3111, 759,1060, 489,1806,3388,3318, # 3088 -1358,5379,5380,2391,1387,1215,2639,2256, 490,5381,5382,4317,1759,2392,2348,5383, # 3104 -4662,3878,1908,4074,2640,1807,3241,4663,3500,3319,2770,2349, 874,5384,5385,3501, # 3120 -3736,1859, 91,2928,3737,3062,3879,4664,5386,3170,4075,2669,5387,3502,1202,1403, # 3136 -3880,2969,2536,1517,2510,4665,3503,2511,5388,4666,5389,2701,1886,1495,1731,4076, # 3152 -2370,4667,5390,2030,5391,5392,4077,2702,1216, 237,2589,4318,2324,4078,3881,4668, # 3168 -4669,2703,3615,3504, 445,4670,5393,5394,5395,5396,2771, 61,4079,3738,1823,4080, # 3184 -5397, 687,2046, 935, 925, 405,2670, 703,1096,1860,2734,4671,4081,1877,1367,2704, # 3200 -3389, 918,2106,1782,2483, 334,3320,1611,1093,4672, 564,3171,3505,3739,3390, 945, # 3216 -2641,2058,4673,5398,1926, 872,4319,5399,3506,2705,3112, 349,4320,3740,4082,4674, # 3232 -3882,4321,3741,2156,4083,4675,4676,4322,4677,2408,2047, 782,4084, 400, 251,4323, # 3248 -1624,5400,5401, 277,3742, 299,1265, 476,1191,3883,2122,4324,4325,1109, 205,5402, # 3264 -2590,1000,2157,3616,1861,5403,5404,5405,4678,5406,4679,2573, 107,2484,2158,4085, # 3280 -3507,3172,5407,1533, 541,1301, 158, 753,4326,2886,3617,5408,1696, 370,1088,4327, # 3296 -4680,3618, 579, 327, 440, 162,2244, 269,1938,1374,3508, 968,3063, 56,1396,3113, # 3312 -2107,3321,3391,5409,1927,2159,4681,3016,5410,3619,5411,5412,3743,4682,2485,5413, # 3328 -2804,5414,1650,4683,5415,2613,5416,5417,4086,2671,3392,1149,3393,4087,3884,4088, # 3344 -5418,1076, 49,5419, 951,3242,3322,3323, 450,2850, 920,5420,1812,2805,2371,4328, # 3360 -1909,1138,2372,3885,3509,5421,3243,4684,1910,1147,1518,2428,4685,3886,5422,4686, # 3376 -2393,2614, 260,1796,3244,5423,5424,3887,3324, 708,5425,3620,1704,5426,3621,1351, # 3392 -1618,3394,3017,1887, 944,4329,3395,4330,3064,3396,4331,5427,3744, 422, 413,1714, # 3408 -3325, 500,2059,2350,4332,2486,5428,1344,1911, 954,5429,1668,5430,5431,4089,2409, # 3424 -4333,3622,3888,4334,5432,2307,1318,2512,3114, 133,3115,2887,4687, 629, 31,2851, # 3440 -2706,3889,4688, 850, 949,4689,4090,2970,1732,2089,4335,1496,1853,5433,4091, 620, # 3456 -3245, 981,1242,3745,3397,1619,3746,1643,3326,2140,2457,1971,1719,3510,2169,5434, # 3472 -3246,5435,5436,3398,1829,5437,1277,4690,1565,2048,5438,1636,3623,3116,5439, 869, # 3488 -2852, 655,3890,3891,3117,4092,3018,3892,1310,3624,4691,5440,5441,5442,1733, 558, # 3504 -4692,3747, 335,1549,3065,1756,4336,3748,1946,3511,1830,1291,1192, 470,2735,2108, # 3520 -2806, 913,1054,4093,5443,1027,5444,3066,4094,4693, 982,2672,3399,3173,3512,3247, # 3536 -3248,1947,2807,5445, 571,4694,5446,1831,5447,3625,2591,1523,2429,5448,2090, 984, # 3552 -4695,3749,1960,5449,3750, 852, 923,2808,3513,3751, 969,1519, 999,2049,2325,1705, # 3568 -5450,3118, 615,1662, 151, 597,4095,2410,2326,1049, 275,4696,3752,4337, 568,3753, # 3584 -3626,2487,4338,3754,5451,2430,2275, 409,3249,5452,1566,2888,3514,1002, 769,2853, # 3600 - 194,2091,3174,3755,2226,3327,4339, 628,1505,5453,5454,1763,2180,3019,4096, 521, # 3616 -1161,2592,1788,2206,2411,4697,4097,1625,4340,4341, 412, 42,3119, 464,5455,2642, # 3632 -4698,3400,1760,1571,2889,3515,2537,1219,2207,3893,2643,2141,2373,4699,4700,3328, # 3648 -1651,3401,3627,5456,5457,3628,2488,3516,5458,3756,5459,5460,2276,2092, 460,5461, # 3664 -4701,5462,3020, 962, 588,3629, 289,3250,2644,1116, 52,5463,3067,1797,5464,5465, # 3680 -5466,1467,5467,1598,1143,3757,4342,1985,1734,1067,4702,1280,3402, 465,4703,1572, # 3696 - 510,5468,1928,2245,1813,1644,3630,5469,4704,3758,5470,5471,2673,1573,1534,5472, # 3712 -5473, 536,1808,1761,3517,3894,3175,2645,5474,5475,5476,4705,3518,2929,1912,2809, # 3728 -5477,3329,1122, 377,3251,5478, 360,5479,5480,4343,1529, 551,5481,2060,3759,1769, # 3744 -2431,5482,2930,4344,3330,3120,2327,2109,2031,4706,1404, 136,1468,1479, 672,1171, # 3760 -3252,2308, 271,3176,5483,2772,5484,2050, 678,2736, 865,1948,4707,5485,2014,4098, # 3776 -2971,5486,2737,2227,1397,3068,3760,4708,4709,1735,2931,3403,3631,5487,3895, 509, # 3792 -2854,2458,2890,3896,5488,5489,3177,3178,4710,4345,2538,4711,2309,1166,1010, 552, # 3808 - 681,1888,5490,5491,2972,2973,4099,1287,1596,1862,3179, 358, 453, 736, 175, 478, # 3824 -1117, 905,1167,1097,5492,1854,1530,5493,1706,5494,2181,3519,2292,3761,3520,3632, # 3840 -4346,2093,4347,5495,3404,1193,2489,4348,1458,2193,2208,1863,1889,1421,3331,2932, # 3856 -3069,2182,3521, 595,2123,5496,4100,5497,5498,4349,1707,2646, 223,3762,1359, 751, # 3872 -3121, 183,3522,5499,2810,3021, 419,2374, 633, 704,3897,2394, 241,5500,5501,5502, # 3888 - 838,3022,3763,2277,2773,2459,3898,1939,2051,4101,1309,3122,2246,1181,5503,1136, # 3904 -2209,3899,2375,1446,4350,2310,4712,5504,5505,4351,1055,2615, 484,3764,5506,4102, # 3920 - 625,4352,2278,3405,1499,4353,4103,5507,4104,4354,3253,2279,2280,3523,5508,5509, # 3936 -2774, 808,2616,3765,3406,4105,4355,3123,2539, 526,3407,3900,4356, 955,5510,1620, # 3952 -4357,2647,2432,5511,1429,3766,1669,1832, 994, 928,5512,3633,1260,5513,5514,5515, # 3968 -1949,2293, 741,2933,1626,4358,2738,2460, 867,1184, 362,3408,1392,5516,5517,4106, # 3984 -4359,1770,1736,3254,2934,4713,4714,1929,2707,1459,1158,5518,3070,3409,2891,1292, # 4000 -1930,2513,2855,3767,1986,1187,2072,2015,2617,4360,5519,2574,2514,2170,3768,2490, # 4016 -3332,5520,3769,4715,5521,5522, 666,1003,3023,1022,3634,4361,5523,4716,1814,2257, # 4032 - 574,3901,1603, 295,1535, 705,3902,4362, 283, 858, 417,5524,5525,3255,4717,4718, # 4048 -3071,1220,1890,1046,2281,2461,4107,1393,1599, 689,2575, 388,4363,5526,2491, 802, # 4064 -5527,2811,3903,2061,1405,2258,5528,4719,3904,2110,1052,1345,3256,1585,5529, 809, # 4080 -5530,5531,5532, 575,2739,3524, 956,1552,1469,1144,2328,5533,2329,1560,2462,3635, # 4096 -3257,4108, 616,2210,4364,3180,2183,2294,5534,1833,5535,3525,4720,5536,1319,3770, # 4112 -3771,1211,3636,1023,3258,1293,2812,5537,5538,5539,3905, 607,2311,3906, 762,2892, # 4128 -1439,4365,1360,4721,1485,3072,5540,4722,1038,4366,1450,2062,2648,4367,1379,4723, # 4144 -2593,5541,5542,4368,1352,1414,2330,2935,1172,5543,5544,3907,3908,4724,1798,1451, # 4160 -5545,5546,5547,5548,2936,4109,4110,2492,2351, 411,4111,4112,3637,3333,3124,4725, # 4176 -1561,2674,1452,4113,1375,5549,5550, 47,2974, 316,5551,1406,1591,2937,3181,5552, # 4192 -1025,2142,3125,3182, 354,2740, 884,2228,4369,2412, 508,3772, 726,3638, 996,2433, # 4208 -3639, 729,5553, 392,2194,1453,4114,4726,3773,5554,5555,2463,3640,2618,1675,2813, # 4224 - 919,2352,2975,2353,1270,4727,4115, 73,5556,5557, 647,5558,3259,2856,2259,1550, # 4240 -1346,3024,5559,1332, 883,3526,5560,5561,5562,5563,3334,2775,5564,1212, 831,1347, # 4256 -4370,4728,2331,3909,1864,3073, 720,3910,4729,4730,3911,5565,4371,5566,5567,4731, # 4272 -5568,5569,1799,4732,3774,2619,4733,3641,1645,2376,4734,5570,2938, 669,2211,2675, # 4288 -2434,5571,2893,5572,5573,1028,3260,5574,4372,2413,5575,2260,1353,5576,5577,4735, # 4304 -3183, 518,5578,4116,5579,4373,1961,5580,2143,4374,5581,5582,3025,2354,2355,3912, # 4320 - 516,1834,1454,4117,2708,4375,4736,2229,2620,1972,1129,3642,5583,2776,5584,2976, # 4336 -1422, 577,1470,3026,1524,3410,5585,5586, 432,4376,3074,3527,5587,2594,1455,2515, # 4352 -2230,1973,1175,5588,1020,2741,4118,3528,4737,5589,2742,5590,1743,1361,3075,3529, # 4368 -2649,4119,4377,4738,2295, 895, 924,4378,2171, 331,2247,3076, 166,1627,3077,1098, # 4384 -5591,1232,2894,2231,3411,4739, 657, 403,1196,2377, 542,3775,3412,1600,4379,3530, # 4400 -5592,4740,2777,3261, 576, 530,1362,4741,4742,2540,2676,3776,4120,5593, 842,3913, # 4416 -5594,2814,2032,1014,4121, 213,2709,3413, 665, 621,4380,5595,3777,2939,2435,5596, # 4432 -2436,3335,3643,3414,4743,4381,2541,4382,4744,3644,1682,4383,3531,1380,5597, 724, # 4448 -2282, 600,1670,5598,1337,1233,4745,3126,2248,5599,1621,4746,5600, 651,4384,5601, # 4464 -1612,4385,2621,5602,2857,5603,2743,2312,3078,5604, 716,2464,3079, 174,1255,2710, # 4480 -4122,3645, 548,1320,1398, 728,4123,1574,5605,1891,1197,3080,4124,5606,3081,3082, # 4496 -3778,3646,3779, 747,5607, 635,4386,4747,5608,5609,5610,4387,5611,5612,4748,5613, # 4512 -3415,4749,2437, 451,5614,3780,2542,2073,4388,2744,4389,4125,5615,1764,4750,5616, # 4528 -4390, 350,4751,2283,2395,2493,5617,4391,4126,2249,1434,4127, 488,4752, 458,4392, # 4544 -4128,3781, 771,1330,2396,3914,2576,3184,2160,2414,1553,2677,3185,4393,5618,2494, # 4560 -2895,2622,1720,2711,4394,3416,4753,5619,2543,4395,5620,3262,4396,2778,5621,2016, # 4576 -2745,5622,1155,1017,3782,3915,5623,3336,2313, 201,1865,4397,1430,5624,4129,5625, # 4592 -5626,5627,5628,5629,4398,1604,5630, 414,1866, 371,2595,4754,4755,3532,2017,3127, # 4608 -4756,1708, 960,4399, 887, 389,2172,1536,1663,1721,5631,2232,4130,2356,2940,1580, # 4624 -5632,5633,1744,4757,2544,4758,4759,5634,4760,5635,2074,5636,4761,3647,3417,2896, # 4640 -4400,5637,4401,2650,3418,2815, 673,2712,2465, 709,3533,4131,3648,4402,5638,1148, # 4656 - 502, 634,5639,5640,1204,4762,3649,1575,4763,2623,3783,5641,3784,3128, 948,3263, # 4672 - 121,1745,3916,1110,5642,4403,3083,2516,3027,4132,3785,1151,1771,3917,1488,4133, # 4688 -1987,5643,2438,3534,5644,5645,2094,5646,4404,3918,1213,1407,2816, 531,2746,2545, # 4704 -3264,1011,1537,4764,2779,4405,3129,1061,5647,3786,3787,1867,2897,5648,2018, 120, # 4720 -4406,4407,2063,3650,3265,2314,3919,2678,3419,1955,4765,4134,5649,3535,1047,2713, # 4736 -1266,5650,1368,4766,2858, 649,3420,3920,2546,2747,1102,2859,2679,5651,5652,2000, # 4752 -5653,1111,3651,2977,5654,2495,3921,3652,2817,1855,3421,3788,5655,5656,3422,2415, # 4768 -2898,3337,3266,3653,5657,2577,5658,3654,2818,4135,1460, 856,5659,3655,5660,2899, # 4784 -2978,5661,2900,3922,5662,4408, 632,2517, 875,3923,1697,3924,2296,5663,5664,4767, # 4800 -3028,1239, 580,4768,4409,5665, 914, 936,2075,1190,4136,1039,2124,5666,5667,5668, # 4816 -5669,3423,1473,5670,1354,4410,3925,4769,2173,3084,4137, 915,3338,4411,4412,3339, # 4832 -1605,1835,5671,2748, 398,3656,4413,3926,4138, 328,1913,2860,4139,3927,1331,4414, # 4848 -3029, 937,4415,5672,3657,4140,4141,3424,2161,4770,3425, 524, 742, 538,3085,1012, # 4864 -5673,5674,3928,2466,5675, 658,1103, 225,3929,5676,5677,4771,5678,4772,5679,3267, # 4880 -1243,5680,4142, 963,2250,4773,5681,2714,3658,3186,5682,5683,2596,2332,5684,4774, # 4896 -5685,5686,5687,3536, 957,3426,2547,2033,1931,2941,2467, 870,2019,3659,1746,2780, # 4912 -2781,2439,2468,5688,3930,5689,3789,3130,3790,3537,3427,3791,5690,1179,3086,5691, # 4928 -3187,2378,4416,3792,2548,3188,3131,2749,4143,5692,3428,1556,2549,2297, 977,2901, # 4944 -2034,4144,1205,3429,5693,1765,3430,3189,2125,1271, 714,1689,4775,3538,5694,2333, # 4960 -3931, 533,4417,3660,2184, 617,5695,2469,3340,3539,2315,5696,5697,3190,5698,5699, # 4976 -3932,1988, 618, 427,2651,3540,3431,5700,5701,1244,1690,5702,2819,4418,4776,5703, # 4992 -3541,4777,5704,2284,1576, 473,3661,4419,3432, 972,5705,3662,5706,3087,5707,5708, # 5008 -4778,4779,5709,3793,4145,4146,5710, 153,4780, 356,5711,1892,2902,4420,2144, 408, # 5024 - 803,2357,5712,3933,5713,4421,1646,2578,2518,4781,4782,3934,5714,3935,4422,5715, # 5040 -2416,3433, 752,5716,5717,1962,3341,2979,5718, 746,3030,2470,4783,4423,3794, 698, # 5056 -4784,1893,4424,3663,2550,4785,3664,3936,5719,3191,3434,5720,1824,1302,4147,2715, # 5072 -3937,1974,4425,5721,4426,3192, 823,1303,1288,1236,2861,3542,4148,3435, 774,3938, # 5088 -5722,1581,4786,1304,2862,3939,4787,5723,2440,2162,1083,3268,4427,4149,4428, 344, # 5104 -1173, 288,2316, 454,1683,5724,5725,1461,4788,4150,2597,5726,5727,4789, 985, 894, # 5120 -5728,3436,3193,5729,1914,2942,3795,1989,5730,2111,1975,5731,4151,5732,2579,1194, # 5136 - 425,5733,4790,3194,1245,3796,4429,5734,5735,2863,5736, 636,4791,1856,3940, 760, # 5152 -1800,5737,4430,2212,1508,4792,4152,1894,1684,2298,5738,5739,4793,4431,4432,2213, # 5168 - 479,5740,5741, 832,5742,4153,2496,5743,2980,2497,3797, 990,3132, 627,1815,2652, # 5184 -4433,1582,4434,2126,2112,3543,4794,5744, 799,4435,3195,5745,4795,2113,1737,3031, # 5200 -1018, 543, 754,4436,3342,1676,4796,4797,4154,4798,1489,5746,3544,5747,2624,2903, # 5216 -4155,5748,5749,2981,5750,5751,5752,5753,3196,4799,4800,2185,1722,5754,3269,3270, # 5232 -1843,3665,1715, 481, 365,1976,1857,5755,5756,1963,2498,4801,5757,2127,3666,3271, # 5248 - 433,1895,2064,2076,5758, 602,2750,5759,5760,5761,5762,5763,3032,1628,3437,5764, # 5264 -3197,4802,4156,2904,4803,2519,5765,2551,2782,5766,5767,5768,3343,4804,2905,5769, # 5280 -4805,5770,2864,4806,4807,1221,2982,4157,2520,5771,5772,5773,1868,1990,5774,5775, # 5296 -5776,1896,5777,5778,4808,1897,4158, 318,5779,2095,4159,4437,5780,5781, 485,5782, # 5312 - 938,3941, 553,2680, 116,5783,3942,3667,5784,3545,2681,2783,3438,3344,2820,5785, # 5328 -3668,2943,4160,1747,2944,2983,5786,5787, 207,5788,4809,5789,4810,2521,5790,3033, # 5344 - 890,3669,3943,5791,1878,3798,3439,5792,2186,2358,3440,1652,5793,5794,5795, 941, # 5360 -2299, 208,3546,4161,2020, 330,4438,3944,2906,2499,3799,4439,4811,5796,5797,5798, # 5376 -) - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5prober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5prober.py deleted file mode 100644 index 5b1227a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/big5prober.py +++ /dev/null @@ -1,47 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import Big5DistributionAnalysis -from .mbcssm import BIG5_SM_MODEL - - -class Big5Prober(MultiByteCharSetProber): - def __init__(self): - super(Big5Prober, self).__init__() - self.coding_sm = CodingStateMachine(BIG5_SM_MODEL) - self.distribution_analyzer = Big5DistributionAnalysis() - self.reset() - - @property - def charset_name(self): - return "Big5" - - @property - def language(self): - return "Chinese" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/chardistribution.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/chardistribution.py deleted file mode 100644 index e5509a0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/chardistribution.py +++ /dev/null @@ -1,233 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .euctwfreq import (EUCTW_CHAR_TO_FREQ_ORDER, EUCTW_TABLE_SIZE, - EUCTW_TYPICAL_DISTRIBUTION_RATIO) -from .euckrfreq import (EUCKR_CHAR_TO_FREQ_ORDER, EUCKR_TABLE_SIZE, - EUCKR_TYPICAL_DISTRIBUTION_RATIO) -from .gb2312freq import (GB2312_CHAR_TO_FREQ_ORDER, GB2312_TABLE_SIZE, - GB2312_TYPICAL_DISTRIBUTION_RATIO) -from .big5freq import (BIG5_CHAR_TO_FREQ_ORDER, BIG5_TABLE_SIZE, - BIG5_TYPICAL_DISTRIBUTION_RATIO) -from .jisfreq import (JIS_CHAR_TO_FREQ_ORDER, JIS_TABLE_SIZE, - JIS_TYPICAL_DISTRIBUTION_RATIO) - - -class CharDistributionAnalysis(object): - ENOUGH_DATA_THRESHOLD = 1024 - SURE_YES = 0.99 - SURE_NO = 0.01 - MINIMUM_DATA_THRESHOLD = 3 - - def __init__(self): - # Mapping table to get frequency order from char order (get from - # GetOrder()) - self._char_to_freq_order = None - self._table_size = None # Size of above table - # This is a constant value which varies from language to language, - # used in calculating confidence. See - # http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html - # for further detail. - self.typical_distribution_ratio = None - self._done = None - self._total_chars = None - self._freq_chars = None - self.reset() - - def reset(self): - """reset analyser, clear any state""" - # If this flag is set to True, detection is done and conclusion has - # been made - self._done = False - self._total_chars = 0 # Total characters encountered - # The number of characters whose frequency order is less than 512 - self._freq_chars = 0 - - def feed(self, char, char_len): - """feed a character with known length""" - if char_len == 2: - # we only care about 2-bytes character in our distribution analysis - order = self.get_order(char) - else: - order = -1 - if order >= 0: - self._total_chars += 1 - # order is valid - if order < self._table_size: - if 512 > self._char_to_freq_order[order]: - self._freq_chars += 1 - - def get_confidence(self): - """return confidence based on existing data""" - # if we didn't receive any character in our consideration range, - # return negative answer - if self._total_chars <= 0 or self._freq_chars <= self.MINIMUM_DATA_THRESHOLD: - return self.SURE_NO - - if self._total_chars != self._freq_chars: - r = (self._freq_chars / ((self._total_chars - self._freq_chars) - * self.typical_distribution_ratio)) - if r < self.SURE_YES: - return r - - # normalize confidence (we don't want to be 100% sure) - return self.SURE_YES - - def got_enough_data(self): - # It is not necessary to receive all data to draw conclusion. - # For charset detection, certain amount of data is enough - return self._total_chars > self.ENOUGH_DATA_THRESHOLD - - def get_order(self, byte_str): - # We do not handle characters based on the original encoding string, - # but convert this encoding string to a number, here called order. - # This allows multiple encodings of a language to share one frequency - # table. - return -1 - - -class EUCTWDistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(EUCTWDistributionAnalysis, self).__init__() - self._char_to_freq_order = EUCTW_CHAR_TO_FREQ_ORDER - self._table_size = EUCTW_TABLE_SIZE - self.typical_distribution_ratio = EUCTW_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for euc-TW encoding, we are interested - # first byte range: 0xc4 -- 0xfe - # second byte range: 0xa1 -- 0xfe - # no validation needed here. State machine has done that - first_char = byte_str[0] - if first_char >= 0xC4: - return 94 * (first_char - 0xC4) + byte_str[1] - 0xA1 - else: - return -1 - - -class EUCKRDistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(EUCKRDistributionAnalysis, self).__init__() - self._char_to_freq_order = EUCKR_CHAR_TO_FREQ_ORDER - self._table_size = EUCKR_TABLE_SIZE - self.typical_distribution_ratio = EUCKR_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for euc-KR encoding, we are interested - # first byte range: 0xb0 -- 0xfe - # second byte range: 0xa1 -- 0xfe - # no validation needed here. State machine has done that - first_char = byte_str[0] - if first_char >= 0xB0: - return 94 * (first_char - 0xB0) + byte_str[1] - 0xA1 - else: - return -1 - - -class GB2312DistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(GB2312DistributionAnalysis, self).__init__() - self._char_to_freq_order = GB2312_CHAR_TO_FREQ_ORDER - self._table_size = GB2312_TABLE_SIZE - self.typical_distribution_ratio = GB2312_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for GB2312 encoding, we are interested - # first byte range: 0xb0 -- 0xfe - # second byte range: 0xa1 -- 0xfe - # no validation needed here. State machine has done that - first_char, second_char = byte_str[0], byte_str[1] - if (first_char >= 0xB0) and (second_char >= 0xA1): - return 94 * (first_char - 0xB0) + second_char - 0xA1 - else: - return -1 - - -class Big5DistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(Big5DistributionAnalysis, self).__init__() - self._char_to_freq_order = BIG5_CHAR_TO_FREQ_ORDER - self._table_size = BIG5_TABLE_SIZE - self.typical_distribution_ratio = BIG5_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for big5 encoding, we are interested - # first byte range: 0xa4 -- 0xfe - # second byte range: 0x40 -- 0x7e , 0xa1 -- 0xfe - # no validation needed here. State machine has done that - first_char, second_char = byte_str[0], byte_str[1] - if first_char >= 0xA4: - if second_char >= 0xA1: - return 157 * (first_char - 0xA4) + second_char - 0xA1 + 63 - else: - return 157 * (first_char - 0xA4) + second_char - 0x40 - else: - return -1 - - -class SJISDistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(SJISDistributionAnalysis, self).__init__() - self._char_to_freq_order = JIS_CHAR_TO_FREQ_ORDER - self._table_size = JIS_TABLE_SIZE - self.typical_distribution_ratio = JIS_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for sjis encoding, we are interested - # first byte range: 0x81 -- 0x9f , 0xe0 -- 0xfe - # second byte range: 0x40 -- 0x7e, 0x81 -- oxfe - # no validation needed here. State machine has done that - first_char, second_char = byte_str[0], byte_str[1] - if (first_char >= 0x81) and (first_char <= 0x9F): - order = 188 * (first_char - 0x81) - elif (first_char >= 0xE0) and (first_char <= 0xEF): - order = 188 * (first_char - 0xE0 + 31) - else: - return -1 - order = order + second_char - 0x40 - if second_char > 0x7F: - order = -1 - return order - - -class EUCJPDistributionAnalysis(CharDistributionAnalysis): - def __init__(self): - super(EUCJPDistributionAnalysis, self).__init__() - self._char_to_freq_order = JIS_CHAR_TO_FREQ_ORDER - self._table_size = JIS_TABLE_SIZE - self.typical_distribution_ratio = JIS_TYPICAL_DISTRIBUTION_RATIO - - def get_order(self, byte_str): - # for euc-JP encoding, we are interested - # first byte range: 0xa0 -- 0xfe - # second byte range: 0xa1 -- 0xfe - # no validation needed here. State machine has done that - char = byte_str[0] - if char >= 0xA0: - return 94 * (char - 0xA1) + byte_str[1] - 0xa1 - else: - return -1 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetgroupprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetgroupprober.py deleted file mode 100644 index 1720ddc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetgroupprober.py +++ /dev/null @@ -1,106 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .enums import ProbingState -from .charsetprober import CharSetProber - - -class CharSetGroupProber(CharSetProber): - def __init__(self, lang_filter=None): - super(CharSetGroupProber, self).__init__(lang_filter=lang_filter) - self._active_num = 0 - self.probers = [] - self._best_guess_prober = None - - def reset(self): - super(CharSetGroupProber, self).reset() - self._active_num = 0 - for prober in self.probers: - if prober: - prober.reset() - prober.active = True - self._active_num += 1 - self._best_guess_prober = None - - @property - def charset_name(self): - if not self._best_guess_prober: - self.get_confidence() - if not self._best_guess_prober: - return None - return self._best_guess_prober.charset_name - - @property - def language(self): - if not self._best_guess_prober: - self.get_confidence() - if not self._best_guess_prober: - return None - return self._best_guess_prober.language - - def feed(self, byte_str): - for prober in self.probers: - if not prober: - continue - if not prober.active: - continue - state = prober.feed(byte_str) - if not state: - continue - if state == ProbingState.FOUND_IT: - self._best_guess_prober = prober - return self.state - elif state == ProbingState.NOT_ME: - prober.active = False - self._active_num -= 1 - if self._active_num <= 0: - self._state = ProbingState.NOT_ME - return self.state - return self.state - - def get_confidence(self): - state = self.state - if state == ProbingState.FOUND_IT: - return 0.99 - elif state == ProbingState.NOT_ME: - return 0.01 - best_conf = 0.0 - self._best_guess_prober = None - for prober in self.probers: - if not prober: - continue - if not prober.active: - self.logger.debug('%s not active', prober.charset_name) - continue - conf = prober.get_confidence() - self.logger.debug('%s %s confidence = %s', prober.charset_name, prober.language, conf) - if best_conf < conf: - best_conf = conf - self._best_guess_prober = prober - if not self._best_guess_prober: - return 0.0 - return best_conf diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetprober.py deleted file mode 100644 index 1fc2746..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/charsetprober.py +++ /dev/null @@ -1,145 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -import logging -import re - -from .enums import ProbingState - - -class CharSetProber(object): - - SHORTCUT_THRESHOLD = 0.95 - - def __init__(self, lang_filter=None): - self._state = None - self.lang_filter = lang_filter - self.logger = logging.getLogger(__name__) - - def reset(self): - self._state = ProbingState.DETECTING - - @property - def charset_name(self): - return None - - def feed(self, buf): - pass - - @property - def state(self): - return self._state - - def get_confidence(self): - return 0.0 - - @staticmethod - def filter_high_byte_only(buf): - buf = re.sub(b'([\x00-\x7F])+', b' ', buf) - return buf - - @staticmethod - def filter_international_words(buf): - """ - We define three types of bytes: - alphabet: english alphabets [a-zA-Z] - international: international characters [\x80-\xFF] - marker: everything else [^a-zA-Z\x80-\xFF] - - The input buffer can be thought to contain a series of words delimited - by markers. This function works to filter all words that contain at - least one international character. All contiguous sequences of markers - are replaced by a single space ascii character. - - This filter applies to all scripts which do not use English characters. - """ - filtered = bytearray() - - # This regex expression filters out only words that have at-least one - # international character. The word may include one marker character at - # the end. - words = re.findall(b'[a-zA-Z]*[\x80-\xFF]+[a-zA-Z]*[^a-zA-Z\x80-\xFF]?', - buf) - - for word in words: - filtered.extend(word[:-1]) - - # If the last character in the word is a marker, replace it with a - # space as markers shouldn't affect our analysis (they are used - # similarly across all languages and may thus have similar - # frequencies). - last_char = word[-1:] - if not last_char.isalpha() and last_char < b'\x80': - last_char = b' ' - filtered.extend(last_char) - - return filtered - - @staticmethod - def filter_with_english_letters(buf): - """ - Returns a copy of ``buf`` that retains only the sequences of English - alphabet and high byte characters that are not between <> characters. - Also retains English alphabet and high byte characters immediately - before occurrences of >. - - This filter can be applied to all scripts which contain both English - characters and extended ASCII characters, but is currently only used by - ``Latin1Prober``. - """ - filtered = bytearray() - in_tag = False - prev = 0 - - for curr in range(len(buf)): - # Slice here to get bytes instead of an int with Python 3 - buf_char = buf[curr:curr + 1] - # Check if we're coming out of or entering an HTML tag - if buf_char == b'>': - in_tag = False - elif buf_char == b'<': - in_tag = True - - # If current character is not extended-ASCII and not alphabetic... - if buf_char < b'\x80' and not buf_char.isalpha(): - # ...and we're not in a tag - if curr > prev and not in_tag: - # Keep everything after last non-extended-ASCII, - # non-alphabetic character - filtered.extend(buf[prev:curr]) - # Output a space to delimit stretch we kept - filtered.extend(b' ') - prev = curr + 1 - - # If we're not in a tag... - if not in_tag: - # Keep everything after last non-extended-ASCII, non-alphabetic - # character - filtered.extend(buf[prev:]) - - return filtered diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/__init__.py deleted file mode 100644 index d3f5a12..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/__init__.py +++ /dev/null @@ -1 +0,0 @@ - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/chardetect.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/chardetect.py deleted file mode 100644 index daabecd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cli/chardetect.py +++ /dev/null @@ -1,85 +0,0 @@ -#!/usr/bin/env python -""" -Script which takes one or more file paths and reports on their detected -encodings - -Example:: - - % chardetect somefile someotherfile - somefile: windows-1252 with confidence 0.5 - someotherfile: ascii with confidence 1.0 - -If no paths are provided, it takes its input from stdin. - -""" - -from __future__ import absolute_import, print_function, unicode_literals - -import argparse -import sys - -from pip._vendor.chardet import __version__ -from pip._vendor.chardet.compat import PY2 -from pip._vendor.chardet.universaldetector import UniversalDetector - - -def description_of(lines, name='stdin'): - """ - Return a string describing the probable encoding of a file or - list of strings. - - :param lines: The lines to get the encoding of. - :type lines: Iterable of bytes - :param name: Name of file or collection of lines - :type name: str - """ - u = UniversalDetector() - for line in lines: - line = bytearray(line) - u.feed(line) - # shortcut out of the loop to save reading further - particularly useful if we read a BOM. - if u.done: - break - u.close() - result = u.result - if PY2: - name = name.decode(sys.getfilesystemencoding(), 'ignore') - if result['encoding']: - return '{0}: {1} with confidence {2}'.format(name, result['encoding'], - result['confidence']) - else: - return '{0}: no result'.format(name) - - -def main(argv=None): - """ - Handles command line arguments and gets things started. - - :param argv: List of arguments, as if specified on the command-line. - If None, ``sys.argv[1:]`` is used instead. - :type argv: list of str - """ - # Get command line arguments - parser = argparse.ArgumentParser( - description="Takes one or more file paths and reports their detected \ - encodings") - parser.add_argument('input', - help='File whose encoding we would like to determine. \ - (default: stdin)', - type=argparse.FileType('rb'), nargs='*', - default=[sys.stdin if PY2 else sys.stdin.buffer]) - parser.add_argument('--version', action='version', - version='%(prog)s {0}'.format(__version__)) - args = parser.parse_args(argv) - - for f in args.input: - if f.isatty(): - print("You are running chardetect interactively. Press " + - "CTRL-D twice at the start of a blank line to signal the " + - "end of your input. If you want help, run chardetect " + - "--help\n", file=sys.stderr) - print(description_of(f, f.name)) - - -if __name__ == '__main__': - main() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/codingstatemachine.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/codingstatemachine.py deleted file mode 100644 index c562e1d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/codingstatemachine.py +++ /dev/null @@ -1,88 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -import logging - -from .enums import MachineState - - -class CodingStateMachine(object): - """ - A state machine to verify a byte sequence for a particular encoding. For - each byte the detector receives, it will feed that byte to every active - state machine available, one byte at a time. The state machine changes its - state based on its previous state and the byte it receives. There are 3 - states in a state machine that are of interest to an auto-detector: - - START state: This is the state to start with, or a legal byte sequence - (i.e. a valid code point) for character has been identified. - - ME state: This indicates that the state machine identified a byte sequence - that is specific to the charset it is designed for and that - there is no other possible encoding which can contain this byte - sequence. This will to lead to an immediate positive answer for - the detector. - - ERROR state: This indicates the state machine identified an illegal byte - sequence for that encoding. This will lead to an immediate - negative answer for this encoding. Detector will exclude this - encoding from consideration from here on. - """ - def __init__(self, sm): - self._model = sm - self._curr_byte_pos = 0 - self._curr_char_len = 0 - self._curr_state = None - self.logger = logging.getLogger(__name__) - self.reset() - - def reset(self): - self._curr_state = MachineState.START - - def next_state(self, c): - # for each byte we get its class - # if it is first byte, we also get byte length - byte_class = self._model['class_table'][c] - if self._curr_state == MachineState.START: - self._curr_byte_pos = 0 - self._curr_char_len = self._model['char_len_table'][byte_class] - # from byte's class and state_table, we get its next state - curr_state = (self._curr_state * self._model['class_factor'] - + byte_class) - self._curr_state = self._model['state_table'][curr_state] - self._curr_byte_pos += 1 - return self._curr_state - - def get_current_charlen(self): - return self._curr_char_len - - def get_coding_state_machine(self): - return self._model['name'] - - @property - def language(self): - return self._model['language'] diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/compat.py deleted file mode 100644 index fa100a3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/compat.py +++ /dev/null @@ -1,34 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# Contributor(s): -# Dan Blanchard -# Ian Cordasco -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -import sys - - -if sys.version_info < (3, 0): - PY2 = True - PY3 = False - base_str = (str, unicode) - text_type = unicode -else: - PY2 = False - PY3 = True - base_str = (bytes, str) - text_type = str diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cp949prober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cp949prober.py deleted file mode 100644 index de0ceab..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/cp949prober.py +++ /dev/null @@ -1,49 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .chardistribution import EUCKRDistributionAnalysis -from .codingstatemachine import CodingStateMachine -from .mbcharsetprober import MultiByteCharSetProber -from .mbcssm import CP949_SM_MODEL - - -class CP949Prober(MultiByteCharSetProber): - def __init__(self): - super(CP949Prober, self).__init__() - self.coding_sm = CodingStateMachine(CP949_SM_MODEL) - # NOTE: CP949 is a superset of EUC-KR, so the distribution should be - # not different. - self.distribution_analyzer = EUCKRDistributionAnalysis() - self.reset() - - @property - def charset_name(self): - return "CP949" - - @property - def language(self): - return "Korean" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/enums.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/enums.py deleted file mode 100644 index c8e6001..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/enums.py +++ /dev/null @@ -1,76 +0,0 @@ -""" -All of the Enums that are used throughout the chardet package. - -:author: Dan Blanchard (dan.blanchard@gmail.com) -""" - - -class InputState(object): - """ - This enum represents the different states a universal detector can be in. - """ - PURE_ASCII = 0 - ESC_ASCII = 1 - HIGH_BYTE = 2 - - -class LanguageFilter(object): - """ - This enum represents the different language filters we can apply to a - ``UniversalDetector``. - """ - CHINESE_SIMPLIFIED = 0x01 - CHINESE_TRADITIONAL = 0x02 - JAPANESE = 0x04 - KOREAN = 0x08 - NON_CJK = 0x10 - ALL = 0x1F - CHINESE = CHINESE_SIMPLIFIED | CHINESE_TRADITIONAL - CJK = CHINESE | JAPANESE | KOREAN - - -class ProbingState(object): - """ - This enum represents the different states a prober can be in. - """ - DETECTING = 0 - FOUND_IT = 1 - NOT_ME = 2 - - -class MachineState(object): - """ - This enum represents the different states a state machine can be in. - """ - START = 0 - ERROR = 1 - ITS_ME = 2 - - -class SequenceLikelihood(object): - """ - This enum represents the likelihood of a character following the previous one. - """ - NEGATIVE = 0 - UNLIKELY = 1 - LIKELY = 2 - POSITIVE = 3 - - @classmethod - def get_num_categories(cls): - """:returns: The number of likelihood categories in the enum.""" - return 4 - - -class CharacterCategory(object): - """ - This enum represents the different categories language models for - ``SingleByteCharsetProber`` put characters into. - - Anything less than CONTROL is considered a letter. - """ - UNDEFINED = 255 - LINE_BREAK = 254 - SYMBOL = 253 - DIGIT = 252 - CONTROL = 251 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escprober.py deleted file mode 100644 index c52060d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escprober.py +++ /dev/null @@ -1,101 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .codingstatemachine import CodingStateMachine -from .enums import LanguageFilter, ProbingState, MachineState -from .escsm import (HZ_SM_MODEL, ISO2022CN_SM_MODEL, ISO2022JP_SM_MODEL, - ISO2022KR_SM_MODEL) - - -class EscCharSetProber(CharSetProber): - """ - This CharSetProber uses a "code scheme" approach for detecting encodings, - whereby easily recognizable escape or shift sequences are relied on to - identify these encodings. - """ - - def __init__(self, lang_filter=None): - super(EscCharSetProber, self).__init__(lang_filter=lang_filter) - self.coding_sm = [] - if self.lang_filter & LanguageFilter.CHINESE_SIMPLIFIED: - self.coding_sm.append(CodingStateMachine(HZ_SM_MODEL)) - self.coding_sm.append(CodingStateMachine(ISO2022CN_SM_MODEL)) - if self.lang_filter & LanguageFilter.JAPANESE: - self.coding_sm.append(CodingStateMachine(ISO2022JP_SM_MODEL)) - if self.lang_filter & LanguageFilter.KOREAN: - self.coding_sm.append(CodingStateMachine(ISO2022KR_SM_MODEL)) - self.active_sm_count = None - self._detected_charset = None - self._detected_language = None - self._state = None - self.reset() - - def reset(self): - super(EscCharSetProber, self).reset() - for coding_sm in self.coding_sm: - if not coding_sm: - continue - coding_sm.active = True - coding_sm.reset() - self.active_sm_count = len(self.coding_sm) - self._detected_charset = None - self._detected_language = None - - @property - def charset_name(self): - return self._detected_charset - - @property - def language(self): - return self._detected_language - - def get_confidence(self): - if self._detected_charset: - return 0.99 - else: - return 0.00 - - def feed(self, byte_str): - for c in byte_str: - for coding_sm in self.coding_sm: - if not coding_sm or not coding_sm.active: - continue - coding_state = coding_sm.next_state(c) - if coding_state == MachineState.ERROR: - coding_sm.active = False - self.active_sm_count -= 1 - if self.active_sm_count <= 0: - self._state = ProbingState.NOT_ME - return self.state - elif coding_state == MachineState.ITS_ME: - self._state = ProbingState.FOUND_IT - self._detected_charset = coding_sm.get_coding_state_machine() - self._detected_language = coding_sm.language - return self.state - - return self.state diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escsm.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escsm.py deleted file mode 100644 index b837704..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/escsm.py +++ /dev/null @@ -1,246 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .enums import MachineState - -HZ_CLS = ( -1,0,0,0,0,0,0,0, # 00 - 07 -0,0,0,0,0,0,0,0, # 08 - 0f -0,0,0,0,0,0,0,0, # 10 - 17 -0,0,0,1,0,0,0,0, # 18 - 1f -0,0,0,0,0,0,0,0, # 20 - 27 -0,0,0,0,0,0,0,0, # 28 - 2f -0,0,0,0,0,0,0,0, # 30 - 37 -0,0,0,0,0,0,0,0, # 38 - 3f -0,0,0,0,0,0,0,0, # 40 - 47 -0,0,0,0,0,0,0,0, # 48 - 4f -0,0,0,0,0,0,0,0, # 50 - 57 -0,0,0,0,0,0,0,0, # 58 - 5f -0,0,0,0,0,0,0,0, # 60 - 67 -0,0,0,0,0,0,0,0, # 68 - 6f -0,0,0,0,0,0,0,0, # 70 - 77 -0,0,0,4,0,5,2,0, # 78 - 7f -1,1,1,1,1,1,1,1, # 80 - 87 -1,1,1,1,1,1,1,1, # 88 - 8f -1,1,1,1,1,1,1,1, # 90 - 97 -1,1,1,1,1,1,1,1, # 98 - 9f -1,1,1,1,1,1,1,1, # a0 - a7 -1,1,1,1,1,1,1,1, # a8 - af -1,1,1,1,1,1,1,1, # b0 - b7 -1,1,1,1,1,1,1,1, # b8 - bf -1,1,1,1,1,1,1,1, # c0 - c7 -1,1,1,1,1,1,1,1, # c8 - cf -1,1,1,1,1,1,1,1, # d0 - d7 -1,1,1,1,1,1,1,1, # d8 - df -1,1,1,1,1,1,1,1, # e0 - e7 -1,1,1,1,1,1,1,1, # e8 - ef -1,1,1,1,1,1,1,1, # f0 - f7 -1,1,1,1,1,1,1,1, # f8 - ff -) - -HZ_ST = ( -MachineState.START,MachineState.ERROR, 3,MachineState.START,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,# 00-07 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,# 08-0f -MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START, 4,MachineState.ERROR,# 10-17 - 5,MachineState.ERROR, 6,MachineState.ERROR, 5, 5, 4,MachineState.ERROR,# 18-1f - 4,MachineState.ERROR, 4, 4, 4,MachineState.ERROR, 4,MachineState.ERROR,# 20-27 - 4,MachineState.ITS_ME,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,# 28-2f -) - -HZ_CHAR_LEN_TABLE = (0, 0, 0, 0, 0, 0) - -HZ_SM_MODEL = {'class_table': HZ_CLS, - 'class_factor': 6, - 'state_table': HZ_ST, - 'char_len_table': HZ_CHAR_LEN_TABLE, - 'name': "HZ-GB-2312", - 'language': 'Chinese'} - -ISO2022CN_CLS = ( -2,0,0,0,0,0,0,0, # 00 - 07 -0,0,0,0,0,0,0,0, # 08 - 0f -0,0,0,0,0,0,0,0, # 10 - 17 -0,0,0,1,0,0,0,0, # 18 - 1f -0,0,0,0,0,0,0,0, # 20 - 27 -0,3,0,0,0,0,0,0, # 28 - 2f -0,0,0,0,0,0,0,0, # 30 - 37 -0,0,0,0,0,0,0,0, # 38 - 3f -0,0,0,4,0,0,0,0, # 40 - 47 -0,0,0,0,0,0,0,0, # 48 - 4f -0,0,0,0,0,0,0,0, # 50 - 57 -0,0,0,0,0,0,0,0, # 58 - 5f -0,0,0,0,0,0,0,0, # 60 - 67 -0,0,0,0,0,0,0,0, # 68 - 6f -0,0,0,0,0,0,0,0, # 70 - 77 -0,0,0,0,0,0,0,0, # 78 - 7f -2,2,2,2,2,2,2,2, # 80 - 87 -2,2,2,2,2,2,2,2, # 88 - 8f -2,2,2,2,2,2,2,2, # 90 - 97 -2,2,2,2,2,2,2,2, # 98 - 9f -2,2,2,2,2,2,2,2, # a0 - a7 -2,2,2,2,2,2,2,2, # a8 - af -2,2,2,2,2,2,2,2, # b0 - b7 -2,2,2,2,2,2,2,2, # b8 - bf -2,2,2,2,2,2,2,2, # c0 - c7 -2,2,2,2,2,2,2,2, # c8 - cf -2,2,2,2,2,2,2,2, # d0 - d7 -2,2,2,2,2,2,2,2, # d8 - df -2,2,2,2,2,2,2,2, # e0 - e7 -2,2,2,2,2,2,2,2, # e8 - ef -2,2,2,2,2,2,2,2, # f0 - f7 -2,2,2,2,2,2,2,2, # f8 - ff -) - -ISO2022CN_ST = ( -MachineState.START, 3,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,# 00-07 -MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 08-0f -MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,# 10-17 -MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 4,MachineState.ERROR,# 18-1f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 20-27 - 5, 6,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 28-2f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 30-37 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,MachineState.START,# 38-3f -) - -ISO2022CN_CHAR_LEN_TABLE = (0, 0, 0, 0, 0, 0, 0, 0, 0) - -ISO2022CN_SM_MODEL = {'class_table': ISO2022CN_CLS, - 'class_factor': 9, - 'state_table': ISO2022CN_ST, - 'char_len_table': ISO2022CN_CHAR_LEN_TABLE, - 'name': "ISO-2022-CN", - 'language': 'Chinese'} - -ISO2022JP_CLS = ( -2,0,0,0,0,0,0,0, # 00 - 07 -0,0,0,0,0,0,2,2, # 08 - 0f -0,0,0,0,0,0,0,0, # 10 - 17 -0,0,0,1,0,0,0,0, # 18 - 1f -0,0,0,0,7,0,0,0, # 20 - 27 -3,0,0,0,0,0,0,0, # 28 - 2f -0,0,0,0,0,0,0,0, # 30 - 37 -0,0,0,0,0,0,0,0, # 38 - 3f -6,0,4,0,8,0,0,0, # 40 - 47 -0,9,5,0,0,0,0,0, # 48 - 4f -0,0,0,0,0,0,0,0, # 50 - 57 -0,0,0,0,0,0,0,0, # 58 - 5f -0,0,0,0,0,0,0,0, # 60 - 67 -0,0,0,0,0,0,0,0, # 68 - 6f -0,0,0,0,0,0,0,0, # 70 - 77 -0,0,0,0,0,0,0,0, # 78 - 7f -2,2,2,2,2,2,2,2, # 80 - 87 -2,2,2,2,2,2,2,2, # 88 - 8f -2,2,2,2,2,2,2,2, # 90 - 97 -2,2,2,2,2,2,2,2, # 98 - 9f -2,2,2,2,2,2,2,2, # a0 - a7 -2,2,2,2,2,2,2,2, # a8 - af -2,2,2,2,2,2,2,2, # b0 - b7 -2,2,2,2,2,2,2,2, # b8 - bf -2,2,2,2,2,2,2,2, # c0 - c7 -2,2,2,2,2,2,2,2, # c8 - cf -2,2,2,2,2,2,2,2, # d0 - d7 -2,2,2,2,2,2,2,2, # d8 - df -2,2,2,2,2,2,2,2, # e0 - e7 -2,2,2,2,2,2,2,2, # e8 - ef -2,2,2,2,2,2,2,2, # f0 - f7 -2,2,2,2,2,2,2,2, # f8 - ff -) - -ISO2022JP_ST = ( -MachineState.START, 3,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,# 00-07 -MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 08-0f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,# 10-17 -MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,# 18-1f -MachineState.ERROR, 5,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 4,MachineState.ERROR,MachineState.ERROR,# 20-27 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 6,MachineState.ITS_ME,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,# 28-2f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,# 30-37 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 38-3f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,MachineState.START,MachineState.START,# 40-47 -) - -ISO2022JP_CHAR_LEN_TABLE = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0) - -ISO2022JP_SM_MODEL = {'class_table': ISO2022JP_CLS, - 'class_factor': 10, - 'state_table': ISO2022JP_ST, - 'char_len_table': ISO2022JP_CHAR_LEN_TABLE, - 'name': "ISO-2022-JP", - 'language': 'Japanese'} - -ISO2022KR_CLS = ( -2,0,0,0,0,0,0,0, # 00 - 07 -0,0,0,0,0,0,0,0, # 08 - 0f -0,0,0,0,0,0,0,0, # 10 - 17 -0,0,0,1,0,0,0,0, # 18 - 1f -0,0,0,0,3,0,0,0, # 20 - 27 -0,4,0,0,0,0,0,0, # 28 - 2f -0,0,0,0,0,0,0,0, # 30 - 37 -0,0,0,0,0,0,0,0, # 38 - 3f -0,0,0,5,0,0,0,0, # 40 - 47 -0,0,0,0,0,0,0,0, # 48 - 4f -0,0,0,0,0,0,0,0, # 50 - 57 -0,0,0,0,0,0,0,0, # 58 - 5f -0,0,0,0,0,0,0,0, # 60 - 67 -0,0,0,0,0,0,0,0, # 68 - 6f -0,0,0,0,0,0,0,0, # 70 - 77 -0,0,0,0,0,0,0,0, # 78 - 7f -2,2,2,2,2,2,2,2, # 80 - 87 -2,2,2,2,2,2,2,2, # 88 - 8f -2,2,2,2,2,2,2,2, # 90 - 97 -2,2,2,2,2,2,2,2, # 98 - 9f -2,2,2,2,2,2,2,2, # a0 - a7 -2,2,2,2,2,2,2,2, # a8 - af -2,2,2,2,2,2,2,2, # b0 - b7 -2,2,2,2,2,2,2,2, # b8 - bf -2,2,2,2,2,2,2,2, # c0 - c7 -2,2,2,2,2,2,2,2, # c8 - cf -2,2,2,2,2,2,2,2, # d0 - d7 -2,2,2,2,2,2,2,2, # d8 - df -2,2,2,2,2,2,2,2, # e0 - e7 -2,2,2,2,2,2,2,2, # e8 - ef -2,2,2,2,2,2,2,2, # f0 - f7 -2,2,2,2,2,2,2,2, # f8 - ff -) - -ISO2022KR_ST = ( -MachineState.START, 3,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,# 00-07 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,# 08-0f -MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 4,MachineState.ERROR,MachineState.ERROR,# 10-17 -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 5,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,# 18-1f -MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.START,MachineState.START,MachineState.START,MachineState.START,# 20-27 -) - -ISO2022KR_CHAR_LEN_TABLE = (0, 0, 0, 0, 0, 0) - -ISO2022KR_SM_MODEL = {'class_table': ISO2022KR_CLS, - 'class_factor': 6, - 'state_table': ISO2022KR_ST, - 'char_len_table': ISO2022KR_CHAR_LEN_TABLE, - 'name': "ISO-2022-KR", - 'language': 'Korean'} - - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/eucjpprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/eucjpprober.py deleted file mode 100644 index a81ee1e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/eucjpprober.py +++ /dev/null @@ -1,92 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .enums import ProbingState, MachineState -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import EUCJPDistributionAnalysis -from .jpcntx import EUCJPContextAnalysis -from .mbcssm import EUCJP_SM_MODEL - - -class EUCJPProber(MultiByteCharSetProber): - def __init__(self): - super(EUCJPProber, self).__init__() - self.coding_sm = CodingStateMachine(EUCJP_SM_MODEL) - self.distribution_analyzer = EUCJPDistributionAnalysis() - self.context_analyzer = EUCJPContextAnalysis() - self.reset() - - def reset(self): - super(EUCJPProber, self).reset() - self.context_analyzer.reset() - - @property - def charset_name(self): - return "EUC-JP" - - @property - def language(self): - return "Japanese" - - def feed(self, byte_str): - for i in range(len(byte_str)): - # PY3K: byte_str is a byte array, so byte_str[i] is an int, not a byte - coding_state = self.coding_sm.next_state(byte_str[i]) - if coding_state == MachineState.ERROR: - self.logger.debug('%s %s prober hit error at byte %s', - self.charset_name, self.language, i) - self._state = ProbingState.NOT_ME - break - elif coding_state == MachineState.ITS_ME: - self._state = ProbingState.FOUND_IT - break - elif coding_state == MachineState.START: - char_len = self.coding_sm.get_current_charlen() - if i == 0: - self._last_char[1] = byte_str[0] - self.context_analyzer.feed(self._last_char, char_len) - self.distribution_analyzer.feed(self._last_char, char_len) - else: - self.context_analyzer.feed(byte_str[i - 1:i + 1], - char_len) - self.distribution_analyzer.feed(byte_str[i - 1:i + 1], - char_len) - - self._last_char[0] = byte_str[-1] - - if self.state == ProbingState.DETECTING: - if (self.context_analyzer.got_enough_data() and - (self.get_confidence() > self.SHORTCUT_THRESHOLD)): - self._state = ProbingState.FOUND_IT - - return self.state - - def get_confidence(self): - context_conf = self.context_analyzer.get_confidence() - distrib_conf = self.distribution_analyzer.get_confidence() - return max(context_conf, distrib_conf) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrfreq.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrfreq.py deleted file mode 100644 index ae25c1b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrfreq.py +++ /dev/null @@ -1,195 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# Sampling from about 20M text materials include literature and computer technology - -# 128 --> 0.79 -# 256 --> 0.92 -# 512 --> 0.986 -# 1024 --> 0.99944 -# 2048 --> 0.99999 -# -# Idea Distribution Ratio = 0.98653 / (1-0.98653) = 73.24 -# Random Distribution Ration = 512 / (2350-512) = 0.279. -# -# Typical Distribution Ratio - -EUCKR_TYPICAL_DISTRIBUTION_RATIO = 6.0 - -EUCKR_TABLE_SIZE = 2352 - -# Char to FreqOrder table , -EUCKR_CHAR_TO_FREQ_ORDER = ( - 13, 130, 120,1396, 481,1719,1720, 328, 609, 212,1721, 707, 400, 299,1722, 87, -1397,1723, 104, 536,1117,1203,1724,1267, 685,1268, 508,1725,1726,1727,1728,1398, -1399,1729,1730,1731, 141, 621, 326,1057, 368,1732, 267, 488, 20,1733,1269,1734, - 945,1400,1735, 47, 904,1270,1736,1737, 773, 248,1738, 409, 313, 786, 429,1739, - 116, 987, 813,1401, 683, 75,1204, 145,1740,1741,1742,1743, 16, 847, 667, 622, - 708,1744,1745,1746, 966, 787, 304, 129,1747, 60, 820, 123, 676,1748,1749,1750, -1751, 617,1752, 626,1753,1754,1755,1756, 653,1757,1758,1759,1760,1761,1762, 856, - 344,1763,1764,1765,1766, 89, 401, 418, 806, 905, 848,1767,1768,1769, 946,1205, - 709,1770,1118,1771, 241,1772,1773,1774,1271,1775, 569,1776, 999,1777,1778,1779, -1780, 337, 751,1058, 28, 628, 254,1781, 177, 906, 270, 349, 891,1079,1782, 19, -1783, 379,1784, 315,1785, 629, 754,1402, 559,1786, 636, 203,1206,1787, 710, 567, -1788, 935, 814,1789,1790,1207, 766, 528,1791,1792,1208,1793,1794,1795,1796,1797, -1403,1798,1799, 533,1059,1404,1405,1156,1406, 936, 884,1080,1800, 351,1801,1802, -1803,1804,1805, 801,1806,1807,1808,1119,1809,1157, 714, 474,1407,1810, 298, 899, - 885,1811,1120, 802,1158,1812, 892,1813,1814,1408, 659,1815,1816,1121,1817,1818, -1819,1820,1821,1822, 319,1823, 594, 545,1824, 815, 937,1209,1825,1826, 573,1409, -1022,1827,1210,1828,1829,1830,1831,1832,1833, 556, 722, 807,1122,1060,1834, 697, -1835, 900, 557, 715,1836,1410, 540,1411, 752,1159, 294, 597,1211, 976, 803, 770, -1412,1837,1838, 39, 794,1413, 358,1839, 371, 925,1840, 453, 661, 788, 531, 723, - 544,1023,1081, 869, 91,1841, 392, 430, 790, 602,1414, 677,1082, 457,1415,1416, -1842,1843, 475, 327,1024,1417, 795, 121,1844, 733, 403,1418,1845,1846,1847, 300, - 119, 711,1212, 627,1848,1272, 207,1849,1850, 796,1213, 382,1851, 519,1852,1083, - 893,1853,1854,1855, 367, 809, 487, 671,1856, 663,1857,1858, 956, 471, 306, 857, -1859,1860,1160,1084,1861,1862,1863,1864,1865,1061,1866,1867,1868,1869,1870,1871, - 282, 96, 574,1872, 502,1085,1873,1214,1874, 907,1875,1876, 827, 977,1419,1420, -1421, 268,1877,1422,1878,1879,1880, 308,1881, 2, 537,1882,1883,1215,1884,1885, - 127, 791,1886,1273,1423,1887, 34, 336, 404, 643,1888, 571, 654, 894, 840,1889, - 0, 886,1274, 122, 575, 260, 908, 938,1890,1275, 410, 316,1891,1892, 100,1893, -1894,1123, 48,1161,1124,1025,1895, 633, 901,1276,1896,1897, 115, 816,1898, 317, -1899, 694,1900, 909, 734,1424, 572, 866,1425, 691, 85, 524,1010, 543, 394, 841, -1901,1902,1903,1026,1904,1905,1906,1907,1908,1909, 30, 451, 651, 988, 310,1910, -1911,1426, 810,1216, 93,1912,1913,1277,1217,1914, 858, 759, 45, 58, 181, 610, - 269,1915,1916, 131,1062, 551, 443,1000, 821,1427, 957, 895,1086,1917,1918, 375, -1919, 359,1920, 687,1921, 822,1922, 293,1923,1924, 40, 662, 118, 692, 29, 939, - 887, 640, 482, 174,1925, 69,1162, 728,1428, 910,1926,1278,1218,1279, 386, 870, - 217, 854,1163, 823,1927,1928,1929,1930, 834,1931, 78,1932, 859,1933,1063,1934, -1935,1936,1937, 438,1164, 208, 595,1938,1939,1940,1941,1219,1125,1942, 280, 888, -1429,1430,1220,1431,1943,1944,1945,1946,1947,1280, 150, 510,1432,1948,1949,1950, -1951,1952,1953,1954,1011,1087,1955,1433,1043,1956, 881,1957, 614, 958,1064,1065, -1221,1958, 638,1001, 860, 967, 896,1434, 989, 492, 553,1281,1165,1959,1282,1002, -1283,1222,1960,1961,1962,1963, 36, 383, 228, 753, 247, 454,1964, 876, 678,1965, -1966,1284, 126, 464, 490, 835, 136, 672, 529, 940,1088,1435, 473,1967,1968, 467, - 50, 390, 227, 587, 279, 378, 598, 792, 968, 240, 151, 160, 849, 882,1126,1285, - 639,1044, 133, 140, 288, 360, 811, 563,1027, 561, 142, 523,1969,1970,1971, 7, - 103, 296, 439, 407, 506, 634, 990,1972,1973,1974,1975, 645,1976,1977,1978,1979, -1980,1981, 236,1982,1436,1983,1984,1089, 192, 828, 618, 518,1166, 333,1127,1985, - 818,1223,1986,1987,1988,1989,1990,1991,1992,1993, 342,1128,1286, 746, 842,1994, -1995, 560, 223,1287, 98, 8, 189, 650, 978,1288,1996,1437,1997, 17, 345, 250, - 423, 277, 234, 512, 226, 97, 289, 42, 167,1998, 201,1999,2000, 843, 836, 824, - 532, 338, 783,1090, 182, 576, 436,1438,1439, 527, 500,2001, 947, 889,2002,2003, -2004,2005, 262, 600, 314, 447,2006, 547,2007, 693, 738,1129,2008, 71,1440, 745, - 619, 688,2009, 829,2010,2011, 147,2012, 33, 948,2013,2014, 74, 224,2015, 61, - 191, 918, 399, 637,2016,1028,1130, 257, 902,2017,2018,2019,2020,2021,2022,2023, -2024,2025,2026, 837,2027,2028,2029,2030, 179, 874, 591, 52, 724, 246,2031,2032, -2033,2034,1167, 969,2035,1289, 630, 605, 911,1091,1168,2036,2037,2038,1441, 912, -2039, 623,2040,2041, 253,1169,1290,2042,1442, 146, 620, 611, 577, 433,2043,1224, - 719,1170, 959, 440, 437, 534, 84, 388, 480,1131, 159, 220, 198, 679,2044,1012, - 819,1066,1443, 113,1225, 194, 318,1003,1029,2045,2046,2047,2048,1067,2049,2050, -2051,2052,2053, 59, 913, 112,2054, 632,2055, 455, 144, 739,1291,2056, 273, 681, - 499,2057, 448,2058,2059, 760,2060,2061, 970, 384, 169, 245,1132,2062,2063, 414, -1444,2064,2065, 41, 235,2066, 157, 252, 877, 568, 919, 789, 580,2067, 725,2068, -2069,1292,2070,2071,1445,2072,1446,2073,2074, 55, 588, 66,1447, 271,1092,2075, -1226,2076, 960,1013, 372,2077,2078,2079,2080,2081,1293,2082,2083,2084,2085, 850, -2086,2087,2088,2089,2090, 186,2091,1068, 180,2092,2093,2094, 109,1227, 522, 606, -2095, 867,1448,1093, 991,1171, 926, 353,1133,2096, 581,2097,2098,2099,1294,1449, -1450,2100, 596,1172,1014,1228,2101,1451,1295,1173,1229,2102,2103,1296,1134,1452, - 949,1135,2104,2105,1094,1453,1454,1455,2106,1095,2107,2108,2109,2110,2111,2112, -2113,2114,2115,2116,2117, 804,2118,2119,1230,1231, 805,1456, 405,1136,2120,2121, -2122,2123,2124, 720, 701,1297, 992,1457, 927,1004,2125,2126,2127,2128,2129,2130, - 22, 417,2131, 303,2132, 385,2133, 971, 520, 513,2134,1174, 73,1096, 231, 274, - 962,1458, 673,2135,1459,2136, 152,1137,2137,2138,2139,2140,1005,1138,1460,1139, -2141,2142,2143,2144, 11, 374, 844,2145, 154,1232, 46,1461,2146, 838, 830, 721, -1233, 106,2147, 90, 428, 462, 578, 566,1175, 352,2148,2149, 538,1234, 124,1298, -2150,1462, 761, 565,2151, 686,2152, 649,2153, 72, 173,2154, 460, 415,2155,1463, -2156,1235, 305,2157,2158,2159,2160,2161,2162, 579,2163,2164,2165,2166,2167, 747, -2168,2169,2170,2171,1464, 669,2172,2173,2174,2175,2176,1465,2177, 23, 530, 285, -2178, 335, 729,2179, 397,2180,2181,2182,1030,2183,2184, 698,2185,2186, 325,2187, -2188, 369,2189, 799,1097,1015, 348,2190,1069, 680,2191, 851,1466,2192,2193, 10, -2194, 613, 424,2195, 979, 108, 449, 589, 27, 172, 81,1031, 80, 774, 281, 350, -1032, 525, 301, 582,1176,2196, 674,1045,2197,2198,1467, 730, 762,2199,2200,2201, -2202,1468,2203, 993,2204,2205, 266,1070, 963,1140,2206,2207,2208, 664,1098, 972, -2209,2210,2211,1177,1469,1470, 871,2212,2213,2214,2215,2216,1471,2217,2218,2219, -2220,2221,2222,2223,2224,2225,2226,2227,1472,1236,2228,2229,2230,2231,2232,2233, -2234,2235,1299,2236,2237, 200,2238, 477, 373,2239,2240, 731, 825, 777,2241,2242, -2243, 521, 486, 548,2244,2245,2246,1473,1300, 53, 549, 137, 875, 76, 158,2247, -1301,1474, 469, 396,1016, 278, 712,2248, 321, 442, 503, 767, 744, 941,1237,1178, -1475,2249, 82, 178,1141,1179, 973,2250,1302,2251, 297,2252,2253, 570,2254,2255, -2256, 18, 450, 206,2257, 290, 292,1142,2258, 511, 162, 99, 346, 164, 735,2259, -1476,1477, 4, 554, 343, 798,1099,2260,1100,2261, 43, 171,1303, 139, 215,2262, -2263, 717, 775,2264,1033, 322, 216,2265, 831,2266, 149,2267,1304,2268,2269, 702, -1238, 135, 845, 347, 309,2270, 484,2271, 878, 655, 238,1006,1478,2272, 67,2273, - 295,2274,2275, 461,2276, 478, 942, 412,2277,1034,2278,2279,2280, 265,2281, 541, -2282,2283,2284,2285,2286, 70, 852,1071,2287,2288,2289,2290, 21, 56, 509, 117, - 432,2291,2292, 331, 980, 552,1101, 148, 284, 105, 393,1180,1239, 755,2293, 187, -2294,1046,1479,2295, 340,2296, 63,1047, 230,2297,2298,1305, 763,1306, 101, 800, - 808, 494,2299,2300,2301, 903,2302, 37,1072, 14, 5,2303, 79, 675,2304, 312, -2305,2306,2307,2308,2309,1480, 6,1307,2310,2311,2312, 1, 470, 35, 24, 229, -2313, 695, 210, 86, 778, 15, 784, 592, 779, 32, 77, 855, 964,2314, 259,2315, - 501, 380,2316,2317, 83, 981, 153, 689,1308,1481,1482,1483,2318,2319, 716,1484, -2320,2321,2322,2323,2324,2325,1485,2326,2327, 128, 57, 68, 261,1048, 211, 170, -1240, 31,2328, 51, 435, 742,2329,2330,2331, 635,2332, 264, 456,2333,2334,2335, - 425,2336,1486, 143, 507, 263, 943,2337, 363, 920,1487, 256,1488,1102, 243, 601, -1489,2338,2339,2340,2341,2342,2343,2344, 861,2345,2346,2347,2348,2349,2350, 395, -2351,1490,1491, 62, 535, 166, 225,2352,2353, 668, 419,1241, 138, 604, 928,2354, -1181,2355,1492,1493,2356,2357,2358,1143,2359, 696,2360, 387, 307,1309, 682, 476, -2361,2362, 332, 12, 222, 156,2363, 232,2364, 641, 276, 656, 517,1494,1495,1035, - 416, 736,1496,2365,1017, 586,2366,2367,2368,1497,2369, 242,2370,2371,2372,1498, -2373, 965, 713,2374,2375,2376,2377, 740, 982,1499, 944,1500,1007,2378,2379,1310, -1501,2380,2381,2382, 785, 329,2383,2384,1502,2385,2386,2387, 932,2388,1503,2389, -2390,2391,2392,1242,2393,2394,2395,2396,2397, 994, 950,2398,2399,2400,2401,1504, -1311,2402,2403,2404,2405,1049, 749,2406,2407, 853, 718,1144,1312,2408,1182,1505, -2409,2410, 255, 516, 479, 564, 550, 214,1506,1507,1313, 413, 239, 444, 339,1145, -1036,1508,1509,1314,1037,1510,1315,2411,1511,2412,2413,2414, 176, 703, 497, 624, - 593, 921, 302,2415, 341, 165,1103,1512,2416,1513,2417,2418,2419, 376,2420, 700, -2421,2422,2423, 258, 768,1316,2424,1183,2425, 995, 608,2426,2427,2428,2429, 221, -2430,2431,2432,2433,2434,2435,2436,2437, 195, 323, 726, 188, 897, 983,1317, 377, - 644,1050, 879,2438, 452,2439,2440,2441,2442,2443,2444, 914,2445,2446,2447,2448, - 915, 489,2449,1514,1184,2450,2451, 515, 64, 427, 495,2452, 583,2453, 483, 485, -1038, 562, 213,1515, 748, 666,2454,2455,2456,2457, 334,2458, 780, 996,1008, 705, -1243,2459,2460,2461,2462,2463, 114,2464, 493,1146, 366, 163,1516, 961,1104,2465, - 291,2466,1318,1105,2467,1517, 365,2468, 355, 951,1244,2469,1319,2470, 631,2471, -2472, 218,1320, 364, 320, 756,1518,1519,1321,1520,1322,2473,2474,2475,2476, 997, -2477,2478,2479,2480, 665,1185,2481, 916,1521,2482,2483,2484, 584, 684,2485,2486, - 797,2487,1051,1186,2488,2489,2490,1522,2491,2492, 370,2493,1039,1187, 65,2494, - 434, 205, 463,1188,2495, 125, 812, 391, 402, 826, 699, 286, 398, 155, 781, 771, - 585,2496, 590, 505,1073,2497, 599, 244, 219, 917,1018, 952, 646,1523,2498,1323, -2499,2500, 49, 984, 354, 741,2501, 625,2502,1324,2503,1019, 190, 357, 757, 491, - 95, 782, 868,2504,2505,2506,2507,2508,2509, 134,1524,1074, 422,1525, 898,2510, - 161,2511,2512,2513,2514, 769,2515,1526,2516,2517, 411,1325,2518, 472,1527,2519, -2520,2521,2522,2523,2524, 985,2525,2526,2527,2528,2529,2530, 764,2531,1245,2532, -2533, 25, 204, 311,2534, 496,2535,1052,2536,2537,2538,2539,2540,2541,2542, 199, - 704, 504, 468, 758, 657,1528, 196, 44, 839,1246, 272, 750,2543, 765, 862,2544, -2545,1326,2546, 132, 615, 933,2547, 732,2548,2549,2550,1189,1529,2551, 283,1247, -1053, 607, 929,2552,2553,2554, 930, 183, 872, 616,1040,1147,2555,1148,1020, 441, - 249,1075,2556,2557,2558, 466, 743,2559,2560,2561, 92, 514, 426, 420, 526,2562, -2563,2564,2565,2566,2567,2568, 185,2569,2570,2571,2572, 776,1530, 658,2573, 362, -2574, 361, 922,1076, 793,2575,2576,2577,2578,2579,2580,1531, 251,2581,2582,2583, -2584,1532, 54, 612, 237,1327,2585,2586, 275, 408, 647, 111,2587,1533,1106, 465, - 3, 458, 9, 38,2588, 107, 110, 890, 209, 26, 737, 498,2589,1534,2590, 431, - 202, 88,1535, 356, 287,1107, 660,1149,2591, 381,1536, 986,1150, 445,1248,1151, - 974,2592,2593, 846,2594, 446, 953, 184,1249,1250, 727,2595, 923, 193, 883,2596, -2597,2598, 102, 324, 539, 817,2599, 421,1041,2600, 832,2601, 94, 175, 197, 406, -2602, 459,2603,2604,2605,2606,2607, 330, 555,2608,2609,2610, 706,1108, 389,2611, -2612,2613,2614, 233,2615, 833, 558, 931, 954,1251,2616,2617,1537, 546,2618,2619, -1009,2620,2621,2622,1538, 690,1328,2623, 955,2624,1539,2625,2626, 772,2627,2628, -2629,2630,2631, 924, 648, 863, 603,2632,2633, 934,1540, 864, 865,2634, 642,1042, - 670,1190,2635,2636,2637,2638, 168,2639, 652, 873, 542,1054,1541,2640,2641,2642, # 512, 256 -) - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrprober.py deleted file mode 100644 index 99d5b15..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euckrprober.py +++ /dev/null @@ -1,47 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import EUCKRDistributionAnalysis -from .mbcssm import EUCKR_SM_MODEL - - -class EUCKRProber(MultiByteCharSetProber): - def __init__(self): - super(EUCKRProber, self).__init__() - self.coding_sm = CodingStateMachine(EUCKR_SM_MODEL) - self.distribution_analyzer = EUCKRDistributionAnalysis() - self.reset() - - @property - def charset_name(self): - return "EUC-KR" - - @property - def language(self): - return "Korean" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwfreq.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwfreq.py deleted file mode 100644 index 5195275..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwfreq.py +++ /dev/null @@ -1,387 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# EUCTW frequency table -# Converted from big5 work -# by Taiwan's Mandarin Promotion Council -# <http:#www.edu.tw:81/mandr/> - -# 128 --> 0.42261 -# 256 --> 0.57851 -# 512 --> 0.74851 -# 1024 --> 0.89384 -# 2048 --> 0.97583 -# -# Idea Distribution Ratio = 0.74851/(1-0.74851) =2.98 -# Random Distribution Ration = 512/(5401-512)=0.105 -# -# Typical Distribution Ratio about 25% of Ideal one, still much higher than RDR - -EUCTW_TYPICAL_DISTRIBUTION_RATIO = 0.75 - -# Char to FreqOrder table , -EUCTW_TABLE_SIZE = 5376 - -EUCTW_CHAR_TO_FREQ_ORDER = ( - 1,1800,1506, 255,1431, 198, 9, 82, 6,7310, 177, 202,3615,1256,2808, 110, # 2742 -3735, 33,3241, 261, 76, 44,2113, 16,2931,2184,1176, 659,3868, 26,3404,2643, # 2758 -1198,3869,3313,4060, 410,2211, 302, 590, 361,1963, 8, 204, 58,4296,7311,1931, # 2774 - 63,7312,7313, 317,1614, 75, 222, 159,4061,2412,1480,7314,3500,3068, 224,2809, # 2790 -3616, 3, 10,3870,1471, 29,2774,1135,2852,1939, 873, 130,3242,1123, 312,7315, # 2806 -4297,2051, 507, 252, 682,7316, 142,1914, 124, 206,2932, 34,3501,3173, 64, 604, # 2822 -7317,2494,1976,1977, 155,1990, 645, 641,1606,7318,3405, 337, 72, 406,7319, 80, # 2838 - 630, 238,3174,1509, 263, 939,1092,2644, 756,1440,1094,3406, 449, 69,2969, 591, # 2854 - 179,2095, 471, 115,2034,1843, 60, 50,2970, 134, 806,1868, 734,2035,3407, 180, # 2870 - 995,1607, 156, 537,2893, 688,7320, 319,1305, 779,2144, 514,2374, 298,4298, 359, # 2886 -2495, 90,2707,1338, 663, 11, 906,1099,2545, 20,2436, 182, 532,1716,7321, 732, # 2902 -1376,4062,1311,1420,3175, 25,2312,1056, 113, 399, 382,1949, 242,3408,2467, 529, # 2918 -3243, 475,1447,3617,7322, 117, 21, 656, 810,1297,2295,2329,3502,7323, 126,4063, # 2934 - 706, 456, 150, 613,4299, 71,1118,2036,4064, 145,3069, 85, 835, 486,2114,1246, # 2950 -1426, 428, 727,1285,1015, 800, 106, 623, 303,1281,7324,2127,2354, 347,3736, 221, # 2966 -3503,3110,7325,1955,1153,4065, 83, 296,1199,3070, 192, 624, 93,7326, 822,1897, # 2982 -2810,3111, 795,2064, 991,1554,1542,1592, 27, 43,2853, 859, 139,1456, 860,4300, # 2998 - 437, 712,3871, 164,2392,3112, 695, 211,3017,2096, 195,3872,1608,3504,3505,3618, # 3014 -3873, 234, 811,2971,2097,3874,2229,1441,3506,1615,2375, 668,2076,1638, 305, 228, # 3030 -1664,4301, 467, 415,7327, 262,2098,1593, 239, 108, 300, 200,1033, 512,1247,2077, # 3046 -7328,7329,2173,3176,3619,2673, 593, 845,1062,3244, 88,1723,2037,3875,1950, 212, # 3062 - 266, 152, 149, 468,1898,4066,4302, 77, 187,7330,3018, 37, 5,2972,7331,3876, # 3078 -7332,7333, 39,2517,4303,2894,3177,2078, 55, 148, 74,4304, 545, 483,1474,1029, # 3094 -1665, 217,1869,1531,3113,1104,2645,4067, 24, 172,3507, 900,3877,3508,3509,4305, # 3110 - 32,1408,2811,1312, 329, 487,2355,2247,2708, 784,2674, 4,3019,3314,1427,1788, # 3126 - 188, 109, 499,7334,3620,1717,1789, 888,1217,3020,4306,7335,3510,7336,3315,1520, # 3142 -3621,3878, 196,1034, 775,7337,7338, 929,1815, 249, 439, 38,7339,1063,7340, 794, # 3158 -3879,1435,2296, 46, 178,3245,2065,7341,2376,7342, 214,1709,4307, 804, 35, 707, # 3174 - 324,3622,1601,2546, 140, 459,4068,7343,7344,1365, 839, 272, 978,2257,2572,3409, # 3190 -2128,1363,3623,1423, 697, 100,3071, 48, 70,1231, 495,3114,2193,7345,1294,7346, # 3206 -2079, 462, 586,1042,3246, 853, 256, 988, 185,2377,3410,1698, 434,1084,7347,3411, # 3222 - 314,2615,2775,4308,2330,2331, 569,2280, 637,1816,2518, 757,1162,1878,1616,3412, # 3238 - 287,1577,2115, 768,4309,1671,2854,3511,2519,1321,3737, 909,2413,7348,4069, 933, # 3254 -3738,7349,2052,2356,1222,4310, 765,2414,1322, 786,4311,7350,1919,1462,1677,2895, # 3270 -1699,7351,4312,1424,2437,3115,3624,2590,3316,1774,1940,3413,3880,4070, 309,1369, # 3286 -1130,2812, 364,2230,1653,1299,3881,3512,3882,3883,2646, 525,1085,3021, 902,2000, # 3302 -1475, 964,4313, 421,1844,1415,1057,2281, 940,1364,3116, 376,4314,4315,1381, 7, # 3318 -2520, 983,2378, 336,1710,2675,1845, 321,3414, 559,1131,3022,2742,1808,1132,1313, # 3334 - 265,1481,1857,7352, 352,1203,2813,3247, 167,1089, 420,2814, 776, 792,1724,3513, # 3350 -4071,2438,3248,7353,4072,7354, 446, 229, 333,2743, 901,3739,1200,1557,4316,2647, # 3366 -1920, 395,2744,2676,3740,4073,1835, 125, 916,3178,2616,4317,7355,7356,3741,7357, # 3382 -7358,7359,4318,3117,3625,1133,2547,1757,3415,1510,2313,1409,3514,7360,2145, 438, # 3398 -2591,2896,2379,3317,1068, 958,3023, 461, 311,2855,2677,4074,1915,3179,4075,1978, # 3414 - 383, 750,2745,2617,4076, 274, 539, 385,1278,1442,7361,1154,1964, 384, 561, 210, # 3430 - 98,1295,2548,3515,7362,1711,2415,1482,3416,3884,2897,1257, 129,7363,3742, 642, # 3446 - 523,2776,2777,2648,7364, 141,2231,1333, 68, 176, 441, 876, 907,4077, 603,2592, # 3462 - 710, 171,3417, 404, 549, 18,3118,2393,1410,3626,1666,7365,3516,4319,2898,4320, # 3478 -7366,2973, 368,7367, 146, 366, 99, 871,3627,1543, 748, 807,1586,1185, 22,2258, # 3494 - 379,3743,3180,7368,3181, 505,1941,2618,1991,1382,2314,7369, 380,2357, 218, 702, # 3510 -1817,1248,3418,3024,3517,3318,3249,7370,2974,3628, 930,3250,3744,7371, 59,7372, # 3526 - 585, 601,4078, 497,3419,1112,1314,4321,1801,7373,1223,1472,2174,7374, 749,1836, # 3542 - 690,1899,3745,1772,3885,1476, 429,1043,1790,2232,2116, 917,4079, 447,1086,1629, # 3558 -7375, 556,7376,7377,2020,1654, 844,1090, 105, 550, 966,1758,2815,1008,1782, 686, # 3574 -1095,7378,2282, 793,1602,7379,3518,2593,4322,4080,2933,2297,4323,3746, 980,2496, # 3590 - 544, 353, 527,4324, 908,2678,2899,7380, 381,2619,1942,1348,7381,1341,1252, 560, # 3606 -3072,7382,3420,2856,7383,2053, 973, 886,2080, 143,4325,7384,7385, 157,3886, 496, # 3622 -4081, 57, 840, 540,2038,4326,4327,3421,2117,1445, 970,2259,1748,1965,2081,4082, # 3638 -3119,1234,1775,3251,2816,3629, 773,1206,2129,1066,2039,1326,3887,1738,1725,4083, # 3654 - 279,3120, 51,1544,2594, 423,1578,2130,2066, 173,4328,1879,7386,7387,1583, 264, # 3670 - 610,3630,4329,2439, 280, 154,7388,7389,7390,1739, 338,1282,3073, 693,2857,1411, # 3686 -1074,3747,2440,7391,4330,7392,7393,1240, 952,2394,7394,2900,1538,2679, 685,1483, # 3702 -4084,2468,1436, 953,4085,2054,4331, 671,2395, 79,4086,2441,3252, 608, 567,2680, # 3718 -3422,4087,4088,1691, 393,1261,1791,2396,7395,4332,7396,7397,7398,7399,1383,1672, # 3734 -3748,3182,1464, 522,1119, 661,1150, 216, 675,4333,3888,1432,3519, 609,4334,2681, # 3750 -2397,7400,7401,7402,4089,3025, 0,7403,2469, 315, 231,2442, 301,3319,4335,2380, # 3766 -7404, 233,4090,3631,1818,4336,4337,7405, 96,1776,1315,2082,7406, 257,7407,1809, # 3782 -3632,2709,1139,1819,4091,2021,1124,2163,2778,1777,2649,7408,3074, 363,1655,3183, # 3798 -7409,2975,7410,7411,7412,3889,1567,3890, 718, 103,3184, 849,1443, 341,3320,2934, # 3814 -1484,7413,1712, 127, 67, 339,4092,2398, 679,1412, 821,7414,7415, 834, 738, 351, # 3830 -2976,2146, 846, 235,1497,1880, 418,1992,3749,2710, 186,1100,2147,2746,3520,1545, # 3846 -1355,2935,2858,1377, 583,3891,4093,2573,2977,7416,1298,3633,1078,2549,3634,2358, # 3862 - 78,3750,3751, 267,1289,2099,2001,1594,4094, 348, 369,1274,2194,2175,1837,4338, # 3878 -1820,2817,3635,2747,2283,2002,4339,2936,2748, 144,3321, 882,4340,3892,2749,3423, # 3894 -4341,2901,7417,4095,1726, 320,7418,3893,3026, 788,2978,7419,2818,1773,1327,2859, # 3910 -3894,2819,7420,1306,4342,2003,1700,3752,3521,2359,2650, 787,2022, 506, 824,3636, # 3926 - 534, 323,4343,1044,3322,2023,1900, 946,3424,7421,1778,1500,1678,7422,1881,4344, # 3942 - 165, 243,4345,3637,2521, 123, 683,4096, 764,4346, 36,3895,1792, 589,2902, 816, # 3958 - 626,1667,3027,2233,1639,1555,1622,3753,3896,7423,3897,2860,1370,1228,1932, 891, # 3974 -2083,2903, 304,4097,7424, 292,2979,2711,3522, 691,2100,4098,1115,4347, 118, 662, # 3990 -7425, 611,1156, 854,2381,1316,2861, 2, 386, 515,2904,7426,7427,3253, 868,2234, # 4006 -1486, 855,2651, 785,2212,3028,7428,1040,3185,3523,7429,3121, 448,7430,1525,7431, # 4022 -2164,4348,7432,3754,7433,4099,2820,3524,3122, 503, 818,3898,3123,1568, 814, 676, # 4038 -1444, 306,1749,7434,3755,1416,1030, 197,1428, 805,2821,1501,4349,7435,7436,7437, # 4054 -1993,7438,4350,7439,7440,2195, 13,2779,3638,2980,3124,1229,1916,7441,3756,2131, # 4070 -7442,4100,4351,2399,3525,7443,2213,1511,1727,1120,7444,7445, 646,3757,2443, 307, # 4086 -7446,7447,1595,3186,7448,7449,7450,3639,1113,1356,3899,1465,2522,2523,7451, 519, # 4102 -7452, 128,2132, 92,2284,1979,7453,3900,1512, 342,3125,2196,7454,2780,2214,1980, # 4118 -3323,7455, 290,1656,1317, 789, 827,2360,7456,3758,4352, 562, 581,3901,7457, 401, # 4134 -4353,2248, 94,4354,1399,2781,7458,1463,2024,4355,3187,1943,7459, 828,1105,4101, # 4150 -1262,1394,7460,4102, 605,4356,7461,1783,2862,7462,2822, 819,2101, 578,2197,2937, # 4166 -7463,1502, 436,3254,4103,3255,2823,3902,2905,3425,3426,7464,2712,2315,7465,7466, # 4182 -2332,2067, 23,4357, 193, 826,3759,2102, 699,1630,4104,3075, 390,1793,1064,3526, # 4198 -7467,1579,3076,3077,1400,7468,4105,1838,1640,2863,7469,4358,4359, 137,4106, 598, # 4214 -3078,1966, 780, 104, 974,2938,7470, 278, 899, 253, 402, 572, 504, 493,1339,7471, # 4230 -3903,1275,4360,2574,2550,7472,3640,3029,3079,2249, 565,1334,2713, 863, 41,7473, # 4246 -7474,4361,7475,1657,2333, 19, 463,2750,4107, 606,7476,2981,3256,1087,2084,1323, # 4262 -2652,2982,7477,1631,1623,1750,4108,2682,7478,2864, 791,2714,2653,2334, 232,2416, # 4278 -7479,2983,1498,7480,2654,2620, 755,1366,3641,3257,3126,2025,1609, 119,1917,3427, # 4294 - 862,1026,4109,7481,3904,3760,4362,3905,4363,2260,1951,2470,7482,1125, 817,4110, # 4310 -4111,3906,1513,1766,2040,1487,4112,3030,3258,2824,3761,3127,7483,7484,1507,7485, # 4326 -2683, 733, 40,1632,1106,2865, 345,4113, 841,2524, 230,4364,2984,1846,3259,3428, # 4342 -7486,1263, 986,3429,7487, 735, 879, 254,1137, 857, 622,1300,1180,1388,1562,3907, # 4358 -3908,2939, 967,2751,2655,1349, 592,2133,1692,3324,2985,1994,4114,1679,3909,1901, # 4374 -2185,7488, 739,3642,2715,1296,1290,7489,4115,2198,2199,1921,1563,2595,2551,1870, # 4390 -2752,2986,7490, 435,7491, 343,1108, 596, 17,1751,4365,2235,3430,3643,7492,4366, # 4406 - 294,3527,2940,1693, 477, 979, 281,2041,3528, 643,2042,3644,2621,2782,2261,1031, # 4422 -2335,2134,2298,3529,4367, 367,1249,2552,7493,3530,7494,4368,1283,3325,2004, 240, # 4438 -1762,3326,4369,4370, 836,1069,3128, 474,7495,2148,2525, 268,3531,7496,3188,1521, # 4454 -1284,7497,1658,1546,4116,7498,3532,3533,7499,4117,3327,2684,1685,4118, 961,1673, # 4470 -2622, 190,2005,2200,3762,4371,4372,7500, 570,2497,3645,1490,7501,4373,2623,3260, # 4486 -1956,4374, 584,1514, 396,1045,1944,7502,4375,1967,2444,7503,7504,4376,3910, 619, # 4502 -7505,3129,3261, 215,2006,2783,2553,3189,4377,3190,4378, 763,4119,3763,4379,7506, # 4518 -7507,1957,1767,2941,3328,3646,1174, 452,1477,4380,3329,3130,7508,2825,1253,2382, # 4534 -2186,1091,2285,4120, 492,7509, 638,1169,1824,2135,1752,3911, 648, 926,1021,1324, # 4550 -4381, 520,4382, 997, 847,1007, 892,4383,3764,2262,1871,3647,7510,2400,1784,4384, # 4566 -1952,2942,3080,3191,1728,4121,2043,3648,4385,2007,1701,3131,1551, 30,2263,4122, # 4582 -7511,2026,4386,3534,7512, 501,7513,4123, 594,3431,2165,1821,3535,3432,3536,3192, # 4598 - 829,2826,4124,7514,1680,3132,1225,4125,7515,3262,4387,4126,3133,2336,7516,4388, # 4614 -4127,7517,3912,3913,7518,1847,2383,2596,3330,7519,4389, 374,3914, 652,4128,4129, # 4630 - 375,1140, 798,7520,7521,7522,2361,4390,2264, 546,1659, 138,3031,2445,4391,7523, # 4646 -2250, 612,1848, 910, 796,3765,1740,1371, 825,3766,3767,7524,2906,2554,7525, 692, # 4662 - 444,3032,2624, 801,4392,4130,7526,1491, 244,1053,3033,4131,4132, 340,7527,3915, # 4678 -1041,2987, 293,1168, 87,1357,7528,1539, 959,7529,2236, 721, 694,4133,3768, 219, # 4694 -1478, 644,1417,3331,2656,1413,1401,1335,1389,3916,7530,7531,2988,2362,3134,1825, # 4710 - 730,1515, 184,2827, 66,4393,7532,1660,2943, 246,3332, 378,1457, 226,3433, 975, # 4726 -3917,2944,1264,3537, 674, 696,7533, 163,7534,1141,2417,2166, 713,3538,3333,4394, # 4742 -3918,7535,7536,1186, 15,7537,1079,1070,7538,1522,3193,3539, 276,1050,2716, 758, # 4758 -1126, 653,2945,3263,7539,2337, 889,3540,3919,3081,2989, 903,1250,4395,3920,3434, # 4774 -3541,1342,1681,1718, 766,3264, 286, 89,2946,3649,7540,1713,7541,2597,3334,2990, # 4790 -7542,2947,2215,3194,2866,7543,4396,2498,2526, 181, 387,1075,3921, 731,2187,3335, # 4806 -7544,3265, 310, 313,3435,2299, 770,4134, 54,3034, 189,4397,3082,3769,3922,7545, # 4822 -1230,1617,1849, 355,3542,4135,4398,3336, 111,4136,3650,1350,3135,3436,3035,4137, # 4838 -2149,3266,3543,7546,2784,3923,3924,2991, 722,2008,7547,1071, 247,1207,2338,2471, # 4854 -1378,4399,2009, 864,1437,1214,4400, 373,3770,1142,2216, 667,4401, 442,2753,2555, # 4870 -3771,3925,1968,4138,3267,1839, 837, 170,1107, 934,1336,1882,7548,7549,2118,4139, # 4886 -2828, 743,1569,7550,4402,4140, 582,2384,1418,3437,7551,1802,7552, 357,1395,1729, # 4902 -3651,3268,2418,1564,2237,7553,3083,3772,1633,4403,1114,2085,4141,1532,7554, 482, # 4918 -2446,4404,7555,7556,1492, 833,1466,7557,2717,3544,1641,2829,7558,1526,1272,3652, # 4934 -4142,1686,1794, 416,2556,1902,1953,1803,7559,3773,2785,3774,1159,2316,7560,2867, # 4950 -4405,1610,1584,3036,2419,2754, 443,3269,1163,3136,7561,7562,3926,7563,4143,2499, # 4966 -3037,4406,3927,3137,2103,1647,3545,2010,1872,4144,7564,4145, 431,3438,7565, 250, # 4982 - 97, 81,4146,7566,1648,1850,1558, 160, 848,7567, 866, 740,1694,7568,2201,2830, # 4998 -3195,4147,4407,3653,1687, 950,2472, 426, 469,3196,3654,3655,3928,7569,7570,1188, # 5014 - 424,1995, 861,3546,4148,3775,2202,2685, 168,1235,3547,4149,7571,2086,1674,4408, # 5030 -3337,3270, 220,2557,1009,7572,3776, 670,2992, 332,1208, 717,7573,7574,3548,2447, # 5046 -3929,3338,7575, 513,7576,1209,2868,3339,3138,4409,1080,7577,7578,7579,7580,2527, # 5062 -3656,3549, 815,1587,3930,3931,7581,3550,3439,3777,1254,4410,1328,3038,1390,3932, # 5078 -1741,3933,3778,3934,7582, 236,3779,2448,3271,7583,7584,3657,3780,1273,3781,4411, # 5094 -7585, 308,7586,4412, 245,4413,1851,2473,1307,2575, 430, 715,2136,2449,7587, 270, # 5110 - 199,2869,3935,7588,3551,2718,1753, 761,1754, 725,1661,1840,4414,3440,3658,7589, # 5126 -7590, 587, 14,3272, 227,2598, 326, 480,2265, 943,2755,3552, 291, 650,1883,7591, # 5142 -1702,1226, 102,1547, 62,3441, 904,4415,3442,1164,4150,7592,7593,1224,1548,2756, # 5158 - 391, 498,1493,7594,1386,1419,7595,2055,1177,4416, 813, 880,1081,2363, 566,1145, # 5174 -4417,2286,1001,1035,2558,2599,2238, 394,1286,7596,7597,2068,7598, 86,1494,1730, # 5190 -3936, 491,1588, 745, 897,2948, 843,3340,3937,2757,2870,3273,1768, 998,2217,2069, # 5206 - 397,1826,1195,1969,3659,2993,3341, 284,7599,3782,2500,2137,2119,1903,7600,3938, # 5222 -2150,3939,4151,1036,3443,1904, 114,2559,4152, 209,1527,7601,7602,2949,2831,2625, # 5238 -2385,2719,3139, 812,2560,7603,3274,7604,1559, 737,1884,3660,1210, 885, 28,2686, # 5254 -3553,3783,7605,4153,1004,1779,4418,7606, 346,1981,2218,2687,4419,3784,1742, 797, # 5270 -1642,3940,1933,1072,1384,2151, 896,3941,3275,3661,3197,2871,3554,7607,2561,1958, # 5286 -4420,2450,1785,7608,7609,7610,3942,4154,1005,1308,3662,4155,2720,4421,4422,1528, # 5302 -2600, 161,1178,4156,1982, 987,4423,1101,4157, 631,3943,1157,3198,2420,1343,1241, # 5318 -1016,2239,2562, 372, 877,2339,2501,1160, 555,1934, 911,3944,7611, 466,1170, 169, # 5334 -1051,2907,2688,3663,2474,2994,1182,2011,2563,1251,2626,7612, 992,2340,3444,1540, # 5350 -2721,1201,2070,2401,1996,2475,7613,4424, 528,1922,2188,1503,1873,1570,2364,3342, # 5366 -3276,7614, 557,1073,7615,1827,3445,2087,2266,3140,3039,3084, 767,3085,2786,4425, # 5382 -1006,4158,4426,2341,1267,2176,3664,3199, 778,3945,3200,2722,1597,2657,7616,4427, # 5398 -7617,3446,7618,7619,7620,3277,2689,1433,3278, 131, 95,1504,3946, 723,4159,3141, # 5414 -1841,3555,2758,2189,3947,2027,2104,3665,7621,2995,3948,1218,7622,3343,3201,3949, # 5430 -4160,2576, 248,1634,3785, 912,7623,2832,3666,3040,3786, 654, 53,7624,2996,7625, # 5446 -1688,4428, 777,3447,1032,3950,1425,7626, 191, 820,2120,2833, 971,4429, 931,3202, # 5462 - 135, 664, 783,3787,1997, 772,2908,1935,3951,3788,4430,2909,3203, 282,2723, 640, # 5478 -1372,3448,1127, 922, 325,3344,7627,7628, 711,2044,7629,7630,3952,2219,2787,1936, # 5494 -3953,3345,2220,2251,3789,2300,7631,4431,3790,1258,3279,3954,3204,2138,2950,3955, # 5510 -3956,7632,2221, 258,3205,4432, 101,1227,7633,3280,1755,7634,1391,3281,7635,2910, # 5526 -2056, 893,7636,7637,7638,1402,4161,2342,7639,7640,3206,3556,7641,7642, 878,1325, # 5542 -1780,2788,4433, 259,1385,2577, 744,1183,2267,4434,7643,3957,2502,7644, 684,1024, # 5558 -4162,7645, 472,3557,3449,1165,3282,3958,3959, 322,2152, 881, 455,1695,1152,1340, # 5574 - 660, 554,2153,4435,1058,4436,4163, 830,1065,3346,3960,4437,1923,7646,1703,1918, # 5590 -7647, 932,2268, 122,7648,4438, 947, 677,7649,3791,2627, 297,1905,1924,2269,4439, # 5606 -2317,3283,7650,7651,4164,7652,4165, 84,4166, 112, 989,7653, 547,1059,3961, 701, # 5622 -3558,1019,7654,4167,7655,3450, 942, 639, 457,2301,2451, 993,2951, 407, 851, 494, # 5638 -4440,3347, 927,7656,1237,7657,2421,3348, 573,4168, 680, 921,2911,1279,1874, 285, # 5654 - 790,1448,1983, 719,2167,7658,7659,4441,3962,3963,1649,7660,1541, 563,7661,1077, # 5670 -7662,3349,3041,3451, 511,2997,3964,3965,3667,3966,1268,2564,3350,3207,4442,4443, # 5686 -7663, 535,1048,1276,1189,2912,2028,3142,1438,1373,2834,2952,1134,2012,7664,4169, # 5702 -1238,2578,3086,1259,7665, 700,7666,2953,3143,3668,4170,7667,4171,1146,1875,1906, # 5718 -4444,2601,3967, 781,2422, 132,1589, 203, 147, 273,2789,2402, 898,1786,2154,3968, # 5734 -3969,7668,3792,2790,7669,7670,4445,4446,7671,3208,7672,1635,3793, 965,7673,1804, # 5750 -2690,1516,3559,1121,1082,1329,3284,3970,1449,3794, 65,1128,2835,2913,2759,1590, # 5766 -3795,7674,7675, 12,2658, 45, 976,2579,3144,4447, 517,2528,1013,1037,3209,7676, # 5782 -3796,2836,7677,3797,7678,3452,7679,2602, 614,1998,2318,3798,3087,2724,2628,7680, # 5798 -2580,4172, 599,1269,7681,1810,3669,7682,2691,3088, 759,1060, 489,1805,3351,3285, # 5814 -1358,7683,7684,2386,1387,1215,2629,2252, 490,7685,7686,4173,1759,2387,2343,7687, # 5830 -4448,3799,1907,3971,2630,1806,3210,4449,3453,3286,2760,2344, 874,7688,7689,3454, # 5846 -3670,1858, 91,2914,3671,3042,3800,4450,7690,3145,3972,2659,7691,3455,1202,1403, # 5862 -3801,2954,2529,1517,2503,4451,3456,2504,7692,4452,7693,2692,1885,1495,1731,3973, # 5878 -2365,4453,7694,2029,7695,7696,3974,2693,1216, 237,2581,4174,2319,3975,3802,4454, # 5894 -4455,2694,3560,3457, 445,4456,7697,7698,7699,7700,2761, 61,3976,3672,1822,3977, # 5910 -7701, 687,2045, 935, 925, 405,2660, 703,1096,1859,2725,4457,3978,1876,1367,2695, # 5926 -3352, 918,2105,1781,2476, 334,3287,1611,1093,4458, 564,3146,3458,3673,3353, 945, # 5942 -2631,2057,4459,7702,1925, 872,4175,7703,3459,2696,3089, 349,4176,3674,3979,4460, # 5958 -3803,4177,3675,2155,3980,4461,4462,4178,4463,2403,2046, 782,3981, 400, 251,4179, # 5974 -1624,7704,7705, 277,3676, 299,1265, 476,1191,3804,2121,4180,4181,1109, 205,7706, # 5990 -2582,1000,2156,3561,1860,7707,7708,7709,4464,7710,4465,2565, 107,2477,2157,3982, # 6006 -3460,3147,7711,1533, 541,1301, 158, 753,4182,2872,3562,7712,1696, 370,1088,4183, # 6022 -4466,3563, 579, 327, 440, 162,2240, 269,1937,1374,3461, 968,3043, 56,1396,3090, # 6038 -2106,3288,3354,7713,1926,2158,4467,2998,7714,3564,7715,7716,3677,4468,2478,7717, # 6054 -2791,7718,1650,4469,7719,2603,7720,7721,3983,2661,3355,1149,3356,3984,3805,3985, # 6070 -7722,1076, 49,7723, 951,3211,3289,3290, 450,2837, 920,7724,1811,2792,2366,4184, # 6086 -1908,1138,2367,3806,3462,7725,3212,4470,1909,1147,1518,2423,4471,3807,7726,4472, # 6102 -2388,2604, 260,1795,3213,7727,7728,3808,3291, 708,7729,3565,1704,7730,3566,1351, # 6118 -1618,3357,2999,1886, 944,4185,3358,4186,3044,3359,4187,7731,3678, 422, 413,1714, # 6134 -3292, 500,2058,2345,4188,2479,7732,1344,1910, 954,7733,1668,7734,7735,3986,2404, # 6150 -4189,3567,3809,4190,7736,2302,1318,2505,3091, 133,3092,2873,4473, 629, 31,2838, # 6166 -2697,3810,4474, 850, 949,4475,3987,2955,1732,2088,4191,1496,1852,7737,3988, 620, # 6182 -3214, 981,1242,3679,3360,1619,3680,1643,3293,2139,2452,1970,1719,3463,2168,7738, # 6198 -3215,7739,7740,3361,1828,7741,1277,4476,1565,2047,7742,1636,3568,3093,7743, 869, # 6214 -2839, 655,3811,3812,3094,3989,3000,3813,1310,3569,4477,7744,7745,7746,1733, 558, # 6230 -4478,3681, 335,1549,3045,1756,4192,3682,1945,3464,1829,1291,1192, 470,2726,2107, # 6246 -2793, 913,1054,3990,7747,1027,7748,3046,3991,4479, 982,2662,3362,3148,3465,3216, # 6262 -3217,1946,2794,7749, 571,4480,7750,1830,7751,3570,2583,1523,2424,7752,2089, 984, # 6278 -4481,3683,1959,7753,3684, 852, 923,2795,3466,3685, 969,1519, 999,2048,2320,1705, # 6294 -7754,3095, 615,1662, 151, 597,3992,2405,2321,1049, 275,4482,3686,4193, 568,3687, # 6310 -3571,2480,4194,3688,7755,2425,2270, 409,3218,7756,1566,2874,3467,1002, 769,2840, # 6326 - 194,2090,3149,3689,2222,3294,4195, 628,1505,7757,7758,1763,2177,3001,3993, 521, # 6342 -1161,2584,1787,2203,2406,4483,3994,1625,4196,4197, 412, 42,3096, 464,7759,2632, # 6358 -4484,3363,1760,1571,2875,3468,2530,1219,2204,3814,2633,2140,2368,4485,4486,3295, # 6374 -1651,3364,3572,7760,7761,3573,2481,3469,7762,3690,7763,7764,2271,2091, 460,7765, # 6390 -4487,7766,3002, 962, 588,3574, 289,3219,2634,1116, 52,7767,3047,1796,7768,7769, # 6406 -7770,1467,7771,1598,1143,3691,4198,1984,1734,1067,4488,1280,3365, 465,4489,1572, # 6422 - 510,7772,1927,2241,1812,1644,3575,7773,4490,3692,7774,7775,2663,1573,1534,7776, # 6438 -7777,4199, 536,1807,1761,3470,3815,3150,2635,7778,7779,7780,4491,3471,2915,1911, # 6454 -2796,7781,3296,1122, 377,3220,7782, 360,7783,7784,4200,1529, 551,7785,2059,3693, # 6470 -1769,2426,7786,2916,4201,3297,3097,2322,2108,2030,4492,1404, 136,1468,1479, 672, # 6486 -1171,3221,2303, 271,3151,7787,2762,7788,2049, 678,2727, 865,1947,4493,7789,2013, # 6502 -3995,2956,7790,2728,2223,1397,3048,3694,4494,4495,1735,2917,3366,3576,7791,3816, # 6518 - 509,2841,2453,2876,3817,7792,7793,3152,3153,4496,4202,2531,4497,2304,1166,1010, # 6534 - 552, 681,1887,7794,7795,2957,2958,3996,1287,1596,1861,3154, 358, 453, 736, 175, # 6550 - 478,1117, 905,1167,1097,7796,1853,1530,7797,1706,7798,2178,3472,2287,3695,3473, # 6566 -3577,4203,2092,4204,7799,3367,1193,2482,4205,1458,2190,2205,1862,1888,1421,3298, # 6582 -2918,3049,2179,3474, 595,2122,7800,3997,7801,7802,4206,1707,2636, 223,3696,1359, # 6598 - 751,3098, 183,3475,7803,2797,3003, 419,2369, 633, 704,3818,2389, 241,7804,7805, # 6614 -7806, 838,3004,3697,2272,2763,2454,3819,1938,2050,3998,1309,3099,2242,1181,7807, # 6630 -1136,2206,3820,2370,1446,4207,2305,4498,7808,7809,4208,1055,2605, 484,3698,7810, # 6646 -3999, 625,4209,2273,3368,1499,4210,4000,7811,4001,4211,3222,2274,2275,3476,7812, # 6662 -7813,2764, 808,2606,3699,3369,4002,4212,3100,2532, 526,3370,3821,4213, 955,7814, # 6678 -1620,4214,2637,2427,7815,1429,3700,1669,1831, 994, 928,7816,3578,1260,7817,7818, # 6694 -7819,1948,2288, 741,2919,1626,4215,2729,2455, 867,1184, 362,3371,1392,7820,7821, # 6710 -4003,4216,1770,1736,3223,2920,4499,4500,1928,2698,1459,1158,7822,3050,3372,2877, # 6726 -1292,1929,2506,2842,3701,1985,1187,2071,2014,2607,4217,7823,2566,2507,2169,3702, # 6742 -2483,3299,7824,3703,4501,7825,7826, 666,1003,3005,1022,3579,4218,7827,4502,1813, # 6758 -2253, 574,3822,1603, 295,1535, 705,3823,4219, 283, 858, 417,7828,7829,3224,4503, # 6774 -4504,3051,1220,1889,1046,2276,2456,4004,1393,1599, 689,2567, 388,4220,7830,2484, # 6790 - 802,7831,2798,3824,2060,1405,2254,7832,4505,3825,2109,1052,1345,3225,1585,7833, # 6806 - 809,7834,7835,7836, 575,2730,3477, 956,1552,1469,1144,2323,7837,2324,1560,2457, # 6822 -3580,3226,4005, 616,2207,3155,2180,2289,7838,1832,7839,3478,4506,7840,1319,3704, # 6838 -3705,1211,3581,1023,3227,1293,2799,7841,7842,7843,3826, 607,2306,3827, 762,2878, # 6854 -1439,4221,1360,7844,1485,3052,7845,4507,1038,4222,1450,2061,2638,4223,1379,4508, # 6870 -2585,7846,7847,4224,1352,1414,2325,2921,1172,7848,7849,3828,3829,7850,1797,1451, # 6886 -7851,7852,7853,7854,2922,4006,4007,2485,2346, 411,4008,4009,3582,3300,3101,4509, # 6902 -1561,2664,1452,4010,1375,7855,7856, 47,2959, 316,7857,1406,1591,2923,3156,7858, # 6918 -1025,2141,3102,3157, 354,2731, 884,2224,4225,2407, 508,3706, 726,3583, 996,2428, # 6934 -3584, 729,7859, 392,2191,1453,4011,4510,3707,7860,7861,2458,3585,2608,1675,2800, # 6950 - 919,2347,2960,2348,1270,4511,4012, 73,7862,7863, 647,7864,3228,2843,2255,1550, # 6966 -1346,3006,7865,1332, 883,3479,7866,7867,7868,7869,3301,2765,7870,1212, 831,1347, # 6982 -4226,4512,2326,3830,1863,3053, 720,3831,4513,4514,3832,7871,4227,7872,7873,4515, # 6998 -7874,7875,1798,4516,3708,2609,4517,3586,1645,2371,7876,7877,2924, 669,2208,2665, # 7014 -2429,7878,2879,7879,7880,1028,3229,7881,4228,2408,7882,2256,1353,7883,7884,4518, # 7030 -3158, 518,7885,4013,7886,4229,1960,7887,2142,4230,7888,7889,3007,2349,2350,3833, # 7046 - 516,1833,1454,4014,2699,4231,4519,2225,2610,1971,1129,3587,7890,2766,7891,2961, # 7062 -1422, 577,1470,3008,1524,3373,7892,7893, 432,4232,3054,3480,7894,2586,1455,2508, # 7078 -2226,1972,1175,7895,1020,2732,4015,3481,4520,7896,2733,7897,1743,1361,3055,3482, # 7094 -2639,4016,4233,4521,2290, 895, 924,4234,2170, 331,2243,3056, 166,1627,3057,1098, # 7110 -7898,1232,2880,2227,3374,4522, 657, 403,1196,2372, 542,3709,3375,1600,4235,3483, # 7126 -7899,4523,2767,3230, 576, 530,1362,7900,4524,2533,2666,3710,4017,7901, 842,3834, # 7142 -7902,2801,2031,1014,4018, 213,2700,3376, 665, 621,4236,7903,3711,2925,2430,7904, # 7158 -2431,3302,3588,3377,7905,4237,2534,4238,4525,3589,1682,4239,3484,1380,7906, 724, # 7174 -2277, 600,1670,7907,1337,1233,4526,3103,2244,7908,1621,4527,7909, 651,4240,7910, # 7190 -1612,4241,2611,7911,2844,7912,2734,2307,3058,7913, 716,2459,3059, 174,1255,2701, # 7206 -4019,3590, 548,1320,1398, 728,4020,1574,7914,1890,1197,3060,4021,7915,3061,3062, # 7222 -3712,3591,3713, 747,7916, 635,4242,4528,7917,7918,7919,4243,7920,7921,4529,7922, # 7238 -3378,4530,2432, 451,7923,3714,2535,2072,4244,2735,4245,4022,7924,1764,4531,7925, # 7254 -4246, 350,7926,2278,2390,2486,7927,4247,4023,2245,1434,4024, 488,4532, 458,4248, # 7270 -4025,3715, 771,1330,2391,3835,2568,3159,2159,2409,1553,2667,3160,4249,7928,2487, # 7286 -2881,2612,1720,2702,4250,3379,4533,7929,2536,4251,7930,3231,4252,2768,7931,2015, # 7302 -2736,7932,1155,1017,3716,3836,7933,3303,2308, 201,1864,4253,1430,7934,4026,7935, # 7318 -7936,7937,7938,7939,4254,1604,7940, 414,1865, 371,2587,4534,4535,3485,2016,3104, # 7334 -4536,1708, 960,4255, 887, 389,2171,1536,1663,1721,7941,2228,4027,2351,2926,1580, # 7350 -7942,7943,7944,1744,7945,2537,4537,4538,7946,4539,7947,2073,7948,7949,3592,3380, # 7366 -2882,4256,7950,4257,2640,3381,2802, 673,2703,2460, 709,3486,4028,3593,4258,7951, # 7382 -1148, 502, 634,7952,7953,1204,4540,3594,1575,4541,2613,3717,7954,3718,3105, 948, # 7398 -3232, 121,1745,3837,1110,7955,4259,3063,2509,3009,4029,3719,1151,1771,3838,1488, # 7414 -4030,1986,7956,2433,3487,7957,7958,2093,7959,4260,3839,1213,1407,2803, 531,2737, # 7430 -2538,3233,1011,1537,7960,2769,4261,3106,1061,7961,3720,3721,1866,2883,7962,2017, # 7446 - 120,4262,4263,2062,3595,3234,2309,3840,2668,3382,1954,4542,7963,7964,3488,1047, # 7462 -2704,1266,7965,1368,4543,2845, 649,3383,3841,2539,2738,1102,2846,2669,7966,7967, # 7478 -1999,7968,1111,3596,2962,7969,2488,3842,3597,2804,1854,3384,3722,7970,7971,3385, # 7494 -2410,2884,3304,3235,3598,7972,2569,7973,3599,2805,4031,1460, 856,7974,3600,7975, # 7510 -2885,2963,7976,2886,3843,7977,4264, 632,2510, 875,3844,1697,3845,2291,7978,7979, # 7526 -4544,3010,1239, 580,4545,4265,7980, 914, 936,2074,1190,4032,1039,2123,7981,7982, # 7542 -7983,3386,1473,7984,1354,4266,3846,7985,2172,3064,4033, 915,3305,4267,4268,3306, # 7558 -1605,1834,7986,2739, 398,3601,4269,3847,4034, 328,1912,2847,4035,3848,1331,4270, # 7574 -3011, 937,4271,7987,3602,4036,4037,3387,2160,4546,3388, 524, 742, 538,3065,1012, # 7590 -7988,7989,3849,2461,7990, 658,1103, 225,3850,7991,7992,4547,7993,4548,7994,3236, # 7606 -1243,7995,4038, 963,2246,4549,7996,2705,3603,3161,7997,7998,2588,2327,7999,4550, # 7622 -8000,8001,8002,3489,3307, 957,3389,2540,2032,1930,2927,2462, 870,2018,3604,1746, # 7638 -2770,2771,2434,2463,8003,3851,8004,3723,3107,3724,3490,3390,3725,8005,1179,3066, # 7654 -8006,3162,2373,4272,3726,2541,3163,3108,2740,4039,8007,3391,1556,2542,2292, 977, # 7670 -2887,2033,4040,1205,3392,8008,1765,3393,3164,2124,1271,1689, 714,4551,3491,8009, # 7686 -2328,3852, 533,4273,3605,2181, 617,8010,2464,3308,3492,2310,8011,8012,3165,8013, # 7702 -8014,3853,1987, 618, 427,2641,3493,3394,8015,8016,1244,1690,8017,2806,4274,4552, # 7718 -8018,3494,8019,8020,2279,1576, 473,3606,4275,3395, 972,8021,3607,8022,3067,8023, # 7734 -8024,4553,4554,8025,3727,4041,4042,8026, 153,4555, 356,8027,1891,2888,4276,2143, # 7750 - 408, 803,2352,8028,3854,8029,4277,1646,2570,2511,4556,4557,3855,8030,3856,4278, # 7766 -8031,2411,3396, 752,8032,8033,1961,2964,8034, 746,3012,2465,8035,4279,3728, 698, # 7782 -4558,1892,4280,3608,2543,4559,3609,3857,8036,3166,3397,8037,1823,1302,4043,2706, # 7798 -3858,1973,4281,8038,4282,3167, 823,1303,1288,1236,2848,3495,4044,3398, 774,3859, # 7814 -8039,1581,4560,1304,2849,3860,4561,8040,2435,2161,1083,3237,4283,4045,4284, 344, # 7830 -1173, 288,2311, 454,1683,8041,8042,1461,4562,4046,2589,8043,8044,4563, 985, 894, # 7846 -8045,3399,3168,8046,1913,2928,3729,1988,8047,2110,1974,8048,4047,8049,2571,1194, # 7862 - 425,8050,4564,3169,1245,3730,4285,8051,8052,2850,8053, 636,4565,1855,3861, 760, # 7878 -1799,8054,4286,2209,1508,4566,4048,1893,1684,2293,8055,8056,8057,4287,4288,2210, # 7894 - 479,8058,8059, 832,8060,4049,2489,8061,2965,2490,3731, 990,3109, 627,1814,2642, # 7910 -4289,1582,4290,2125,2111,3496,4567,8062, 799,4291,3170,8063,4568,2112,1737,3013, # 7926 -1018, 543, 754,4292,3309,1676,4569,4570,4050,8064,1489,8065,3497,8066,2614,2889, # 7942 -4051,8067,8068,2966,8069,8070,8071,8072,3171,4571,4572,2182,1722,8073,3238,3239, # 7958 -1842,3610,1715, 481, 365,1975,1856,8074,8075,1962,2491,4573,8076,2126,3611,3240, # 7974 - 433,1894,2063,2075,8077, 602,2741,8078,8079,8080,8081,8082,3014,1628,3400,8083, # 7990 -3172,4574,4052,2890,4575,2512,8084,2544,2772,8085,8086,8087,3310,4576,2891,8088, # 8006 -4577,8089,2851,4578,4579,1221,2967,4053,2513,8090,8091,8092,1867,1989,8093,8094, # 8022 -8095,1895,8096,8097,4580,1896,4054, 318,8098,2094,4055,4293,8099,8100, 485,8101, # 8038 - 938,3862, 553,2670, 116,8102,3863,3612,8103,3498,2671,2773,3401,3311,2807,8104, # 8054 -3613,2929,4056,1747,2930,2968,8105,8106, 207,8107,8108,2672,4581,2514,8109,3015, # 8070 - 890,3614,3864,8110,1877,3732,3402,8111,2183,2353,3403,1652,8112,8113,8114, 941, # 8086 -2294, 208,3499,4057,2019, 330,4294,3865,2892,2492,3733,4295,8115,8116,8117,8118, # 8102 -) - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwprober.py deleted file mode 100644 index 7dbc136..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/euctwprober.py +++ /dev/null @@ -1,46 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import EUCTWDistributionAnalysis -from .mbcssm import EUCTW_SM_MODEL - -class EUCTWProber(MultiByteCharSetProber): - def __init__(self): - super(EUCTWProber, self).__init__() - self.coding_sm = CodingStateMachine(EUCTW_SM_MODEL) - self.distribution_analyzer = EUCTWDistributionAnalysis() - self.reset() - - @property - def charset_name(self): - return "EUC-TW" - - @property - def language(self): - return "Taiwan" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312freq.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312freq.py deleted file mode 100644 index a0167b3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312freq.py +++ /dev/null @@ -1,283 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# GB2312 most frequently used character table -# -# Char to FreqOrder table , from hz6763 - -# 512 --> 0.79 -- 0.79 -# 1024 --> 0.92 -- 0.13 -# 2048 --> 0.98 -- 0.06 -# 6768 --> 1.00 -- 0.02 -# -# Ideal Distribution Ratio = 0.79135/(1-0.79135) = 3.79 -# Random Distribution Ration = 512 / (3755 - 512) = 0.157 -# -# Typical Distribution Ratio about 25% of Ideal one, still much higher that RDR - -GB2312_TYPICAL_DISTRIBUTION_RATIO = 0.9 - -GB2312_TABLE_SIZE = 3760 - -GB2312_CHAR_TO_FREQ_ORDER = ( -1671, 749,1443,2364,3924,3807,2330,3921,1704,3463,2691,1511,1515, 572,3191,2205, -2361, 224,2558, 479,1711, 963,3162, 440,4060,1905,2966,2947,3580,2647,3961,3842, -2204, 869,4207, 970,2678,5626,2944,2956,1479,4048, 514,3595, 588,1346,2820,3409, - 249,4088,1746,1873,2047,1774, 581,1813, 358,1174,3590,1014,1561,4844,2245, 670, -1636,3112, 889,1286, 953, 556,2327,3060,1290,3141, 613, 185,3477,1367, 850,3820, -1715,2428,2642,2303,2732,3041,2562,2648,3566,3946,1349, 388,3098,2091,1360,3585, - 152,1687,1539, 738,1559, 59,1232,2925,2267,1388,1249,1741,1679,2960, 151,1566, -1125,1352,4271, 924,4296, 385,3166,4459, 310,1245,2850, 70,3285,2729,3534,3575, -2398,3298,3466,1960,2265, 217,3647, 864,1909,2084,4401,2773,1010,3269,5152, 853, -3051,3121,1244,4251,1895, 364,1499,1540,2313,1180,3655,2268, 562, 715,2417,3061, - 544, 336,3768,2380,1752,4075, 950, 280,2425,4382, 183,2759,3272, 333,4297,2155, -1688,2356,1444,1039,4540, 736,1177,3349,2443,2368,2144,2225, 565, 196,1482,3406, - 927,1335,4147, 692, 878,1311,1653,3911,3622,1378,4200,1840,2969,3149,2126,1816, -2534,1546,2393,2760, 737,2494, 13, 447, 245,2747, 38,2765,2129,2589,1079, 606, - 360, 471,3755,2890, 404, 848, 699,1785,1236, 370,2221,1023,3746,2074,2026,2023, -2388,1581,2119, 812,1141,3091,2536,1519, 804,2053, 406,1596,1090, 784, 548,4414, -1806,2264,2936,1100, 343,4114,5096, 622,3358, 743,3668,1510,1626,5020,3567,2513, -3195,4115,5627,2489,2991, 24,2065,2697,1087,2719, 48,1634, 315, 68, 985,2052, - 198,2239,1347,1107,1439, 597,2366,2172, 871,3307, 919,2487,2790,1867, 236,2570, -1413,3794, 906,3365,3381,1701,1982,1818,1524,2924,1205, 616,2586,2072,2004, 575, - 253,3099, 32,1365,1182, 197,1714,2454,1201, 554,3388,3224,2748, 756,2587, 250, -2567,1507,1517,3529,1922,2761,2337,3416,1961,1677,2452,2238,3153, 615, 911,1506, -1474,2495,1265,1906,2749,3756,3280,2161, 898,2714,1759,3450,2243,2444, 563, 26, -3286,2266,3769,3344,2707,3677, 611,1402, 531,1028,2871,4548,1375, 261,2948, 835, -1190,4134, 353, 840,2684,1900,3082,1435,2109,1207,1674, 329,1872,2781,4055,2686, -2104, 608,3318,2423,2957,2768,1108,3739,3512,3271,3985,2203,1771,3520,1418,2054, -1681,1153, 225,1627,2929, 162,2050,2511,3687,1954, 124,1859,2431,1684,3032,2894, - 585,4805,3969,2869,2704,2088,2032,2095,3656,2635,4362,2209, 256, 518,2042,2105, -3777,3657, 643,2298,1148,1779, 190, 989,3544, 414, 11,2135,2063,2979,1471, 403, -3678, 126, 770,1563, 671,2499,3216,2877, 600,1179, 307,2805,4937,1268,1297,2694, - 252,4032,1448,1494,1331,1394, 127,2256, 222,1647,1035,1481,3056,1915,1048, 873, -3651, 210, 33,1608,2516, 200,1520, 415, 102, 0,3389,1287, 817, 91,3299,2940, - 836,1814, 549,2197,1396,1669,2987,3582,2297,2848,4528,1070, 687, 20,1819, 121, -1552,1364,1461,1968,2617,3540,2824,2083, 177, 948,4938,2291, 110,4549,2066, 648, -3359,1755,2110,2114,4642,4845,1693,3937,3308,1257,1869,2123, 208,1804,3159,2992, -2531,2549,3361,2418,1350,2347,2800,2568,1291,2036,2680, 72, 842,1990, 212,1233, -1154,1586, 75,2027,3410,4900,1823,1337,2710,2676, 728,2810,1522,3026,4995, 157, - 755,1050,4022, 710, 785,1936,2194,2085,1406,2777,2400, 150,1250,4049,1206, 807, -1910, 534, 529,3309,1721,1660, 274, 39,2827, 661,2670,1578, 925,3248,3815,1094, -4278,4901,4252, 41,1150,3747,2572,2227,4501,3658,4902,3813,3357,3617,2884,2258, - 887, 538,4187,3199,1294,2439,3042,2329,2343,2497,1255, 107, 543,1527, 521,3478, -3568, 194,5062, 15, 961,3870,1241,1192,2664, 66,5215,3260,2111,1295,1127,2152, -3805,4135, 901,1164,1976, 398,1278, 530,1460, 748, 904,1054,1966,1426, 53,2909, - 509, 523,2279,1534, 536,1019, 239,1685, 460,2353, 673,1065,2401,3600,4298,2272, -1272,2363, 284,1753,3679,4064,1695, 81, 815,2677,2757,2731,1386, 859, 500,4221, -2190,2566, 757,1006,2519,2068,1166,1455, 337,2654,3203,1863,1682,1914,3025,1252, -1409,1366, 847, 714,2834,2038,3209, 964,2970,1901, 885,2553,1078,1756,3049, 301, -1572,3326, 688,2130,1996,2429,1805,1648,2930,3421,2750,3652,3088, 262,1158,1254, - 389,1641,1812, 526,1719, 923,2073,1073,1902, 468, 489,4625,1140, 857,2375,3070, -3319,2863, 380, 116,1328,2693,1161,2244, 273,1212,1884,2769,3011,1775,1142, 461, -3066,1200,2147,2212, 790, 702,2695,4222,1601,1058, 434,2338,5153,3640, 67,2360, -4099,2502, 618,3472,1329, 416,1132, 830,2782,1807,2653,3211,3510,1662, 192,2124, - 296,3979,1739,1611,3684, 23, 118, 324, 446,1239,1225, 293,2520,3814,3795,2535, -3116, 17,1074, 467,2692,2201, 387,2922, 45,1326,3055,1645,3659,2817, 958, 243, -1903,2320,1339,2825,1784,3289, 356, 576, 865,2315,2381,3377,3916,1088,3122,1713, -1655, 935, 628,4689,1034,1327, 441, 800, 720, 894,1979,2183,1528,5289,2702,1071, -4046,3572,2399,1571,3281, 79, 761,1103, 327, 134, 758,1899,1371,1615, 879, 442, - 215,2605,2579, 173,2048,2485,1057,2975,3317,1097,2253,3801,4263,1403,1650,2946, - 814,4968,3487,1548,2644,1567,1285, 2, 295,2636, 97, 946,3576, 832, 141,4257, -3273, 760,3821,3521,3156,2607, 949,1024,1733,1516,1803,1920,2125,2283,2665,3180, -1501,2064,3560,2171,1592, 803,3518,1416, 732,3897,4258,1363,1362,2458, 119,1427, - 602,1525,2608,1605,1639,3175, 694,3064, 10, 465, 76,2000,4846,4208, 444,3781, -1619,3353,2206,1273,3796, 740,2483, 320,1723,2377,3660,2619,1359,1137,1762,1724, -2345,2842,1850,1862, 912, 821,1866, 612,2625,1735,2573,3369,1093, 844, 89, 937, - 930,1424,3564,2413,2972,1004,3046,3019,2011, 711,3171,1452,4178, 428, 801,1943, - 432, 445,2811, 206,4136,1472, 730, 349, 73, 397,2802,2547, 998,1637,1167, 789, - 396,3217, 154,1218, 716,1120,1780,2819,4826,1931,3334,3762,2139,1215,2627, 552, -3664,3628,3232,1405,2383,3111,1356,2652,3577,3320,3101,1703, 640,1045,1370,1246, -4996, 371,1575,2436,1621,2210, 984,4033,1734,2638, 16,4529, 663,2755,3255,1451, -3917,2257,1253,1955,2234,1263,2951, 214,1229, 617, 485, 359,1831,1969, 473,2310, - 750,2058, 165, 80,2864,2419, 361,4344,2416,2479,1134, 796,3726,1266,2943, 860, -2715, 938, 390,2734,1313,1384, 248, 202, 877,1064,2854, 522,3907, 279,1602, 297, -2357, 395,3740, 137,2075, 944,4089,2584,1267,3802, 62,1533,2285, 178, 176, 780, -2440, 201,3707, 590, 478,1560,4354,2117,1075, 30, 74,4643,4004,1635,1441,2745, - 776,2596, 238,1077,1692,1912,2844, 605, 499,1742,3947, 241,3053, 980,1749, 936, -2640,4511,2582, 515,1543,2162,5322,2892,2993, 890,2148,1924, 665,1827,3581,1032, - 968,3163, 339,1044,1896, 270, 583,1791,1720,4367,1194,3488,3669, 43,2523,1657, - 163,2167, 290,1209,1622,3378, 550, 634,2508,2510, 695,2634,2384,2512,1476,1414, - 220,1469,2341,2138,2852,3183,2900,4939,2865,3502,1211,3680, 854,3227,1299,2976, -3172, 186,2998,1459, 443,1067,3251,1495, 321,1932,3054, 909, 753,1410,1828, 436, -2441,1119,1587,3164,2186,1258, 227, 231,1425,1890,3200,3942, 247, 959, 725,5254, -2741, 577,2158,2079, 929, 120, 174, 838,2813, 591,1115, 417,2024, 40,3240,1536, -1037, 291,4151,2354, 632,1298,2406,2500,3535,1825,1846,3451, 205,1171, 345,4238, - 18,1163, 811, 685,2208,1217, 425,1312,1508,1175,4308,2552,1033, 587,1381,3059, -2984,3482, 340,1316,4023,3972, 792,3176, 519, 777,4690, 918, 933,4130,2981,3741, - 90,3360,2911,2200,5184,4550, 609,3079,2030, 272,3379,2736, 363,3881,1130,1447, - 286, 779, 357,1169,3350,3137,1630,1220,2687,2391, 747,1277,3688,2618,2682,2601, -1156,3196,5290,4034,3102,1689,3596,3128, 874, 219,2783, 798, 508,1843,2461, 269, -1658,1776,1392,1913,2983,3287,2866,2159,2372, 829,4076, 46,4253,2873,1889,1894, - 915,1834,1631,2181,2318, 298, 664,2818,3555,2735, 954,3228,3117, 527,3511,2173, - 681,2712,3033,2247,2346,3467,1652, 155,2164,3382, 113,1994, 450, 899, 494, 994, -1237,2958,1875,2336,1926,3727, 545,1577,1550, 633,3473, 204,1305,3072,2410,1956, -2471, 707,2134, 841,2195,2196,2663,3843,1026,4940, 990,3252,4997, 368,1092, 437, -3212,3258,1933,1829, 675,2977,2893, 412, 943,3723,4644,3294,3283,2230,2373,5154, -2389,2241,2661,2323,1404,2524, 593, 787, 677,3008,1275,2059, 438,2709,2609,2240, -2269,2246,1446, 36,1568,1373,3892,1574,2301,1456,3962, 693,2276,5216,2035,1143, -2720,1919,1797,1811,2763,4137,2597,1830,1699,1488,1198,2090, 424,1694, 312,3634, -3390,4179,3335,2252,1214, 561,1059,3243,2295,2561, 975,5155,2321,2751,3772, 472, -1537,3282,3398,1047,2077,2348,2878,1323,3340,3076, 690,2906, 51, 369, 170,3541, -1060,2187,2688,3670,2541,1083,1683, 928,3918, 459, 109,4427, 599,3744,4286, 143, -2101,2730,2490, 82,1588,3036,2121, 281,1860, 477,4035,1238,2812,3020,2716,3312, -1530,2188,2055,1317, 843, 636,1808,1173,3495, 649, 181,1002, 147,3641,1159,2414, -3750,2289,2795, 813,3123,2610,1136,4368, 5,3391,4541,2174, 420, 429,1728, 754, -1228,2115,2219, 347,2223,2733, 735,1518,3003,2355,3134,1764,3948,3329,1888,2424, -1001,1234,1972,3321,3363,1672,1021,1450,1584, 226, 765, 655,2526,3404,3244,2302, -3665, 731, 594,2184, 319,1576, 621, 658,2656,4299,2099,3864,1279,2071,2598,2739, - 795,3086,3699,3908,1707,2352,2402,1382,3136,2475,1465,4847,3496,3865,1085,3004, -2591,1084, 213,2287,1963,3565,2250, 822, 793,4574,3187,1772,1789,3050, 595,1484, -1959,2770,1080,2650, 456, 422,2996, 940,3322,4328,4345,3092,2742, 965,2784, 739, -4124, 952,1358,2498,2949,2565, 332,2698,2378, 660,2260,2473,4194,3856,2919, 535, -1260,2651,1208,1428,1300,1949,1303,2942, 433,2455,2450,1251,1946, 614,1269, 641, -1306,1810,2737,3078,2912, 564,2365,1419,1415,1497,4460,2367,2185,1379,3005,1307, -3218,2175,1897,3063, 682,1157,4040,4005,1712,1160,1941,1399, 394, 402,2952,1573, -1151,2986,2404, 862, 299,2033,1489,3006, 346, 171,2886,3401,1726,2932, 168,2533, - 47,2507,1030,3735,1145,3370,1395,1318,1579,3609,4560,2857,4116,1457,2529,1965, - 504,1036,2690,2988,2405, 745,5871, 849,2397,2056,3081, 863,2359,3857,2096, 99, -1397,1769,2300,4428,1643,3455,1978,1757,3718,1440, 35,4879,3742,1296,4228,2280, - 160,5063,1599,2013, 166, 520,3479,1646,3345,3012, 490,1937,1545,1264,2182,2505, -1096,1188,1369,1436,2421,1667,2792,2460,1270,2122, 727,3167,2143, 806,1706,1012, -1800,3037, 960,2218,1882, 805, 139,2456,1139,1521, 851,1052,3093,3089, 342,2039, - 744,5097,1468,1502,1585,2087, 223, 939, 326,2140,2577, 892,2481,1623,4077, 982, -3708, 135,2131, 87,2503,3114,2326,1106, 876,1616, 547,2997,2831,2093,3441,4530, -4314, 9,3256,4229,4148, 659,1462,1986,1710,2046,2913,2231,4090,4880,5255,3392, -3274,1368,3689,4645,1477, 705,3384,3635,1068,1529,2941,1458,3782,1509, 100,1656, -2548, 718,2339, 408,1590,2780,3548,1838,4117,3719,1345,3530, 717,3442,2778,3220, -2898,1892,4590,3614,3371,2043,1998,1224,3483, 891, 635, 584,2559,3355, 733,1766, -1729,1172,3789,1891,2307, 781,2982,2271,1957,1580,5773,2633,2005,4195,3097,1535, -3213,1189,1934,5693,3262, 586,3118,1324,1598, 517,1564,2217,1868,1893,4445,3728, -2703,3139,1526,1787,1992,3882,2875,1549,1199,1056,2224,1904,2711,5098,4287, 338, -1993,3129,3489,2689,1809,2815,1997, 957,1855,3898,2550,3275,3057,1105,1319, 627, -1505,1911,1883,3526, 698,3629,3456,1833,1431, 746, 77,1261,2017,2296,1977,1885, - 125,1334,1600, 525,1798,1109,2222,1470,1945, 559,2236,1186,3443,2476,1929,1411, -2411,3135,1777,3372,2621,1841,1613,3229, 668,1430,1839,2643,2916, 195,1989,2671, -2358,1387, 629,3205,2293,5256,4439, 123,1310, 888,1879,4300,3021,3605,1003,1162, -3192,2910,2010, 140,2395,2859, 55,1082,2012,2901, 662, 419,2081,1438, 680,2774, -4654,3912,1620,1731,1625,5035,4065,2328, 512,1344, 802,5443,2163,2311,2537, 524, -3399, 98,1155,2103,1918,2606,3925,2816,1393,2465,1504,3773,2177,3963,1478,4346, - 180,1113,4655,3461,2028,1698, 833,2696,1235,1322,1594,4408,3623,3013,3225,2040, -3022, 541,2881, 607,3632,2029,1665,1219, 639,1385,1686,1099,2803,3231,1938,3188, -2858, 427, 676,2772,1168,2025, 454,3253,2486,3556, 230,1950, 580, 791,1991,1280, -1086,1974,2034, 630, 257,3338,2788,4903,1017, 86,4790, 966,2789,1995,1696,1131, - 259,3095,4188,1308, 179,1463,5257, 289,4107,1248, 42,3413,1725,2288, 896,1947, - 774,4474,4254, 604,3430,4264, 392,2514,2588, 452, 237,1408,3018, 988,4531,1970, -3034,3310, 540,2370,1562,1288,2990, 502,4765,1147, 4,1853,2708, 207, 294,2814, -4078,2902,2509, 684, 34,3105,3532,2551, 644, 709,2801,2344, 573,1727,3573,3557, -2021,1081,3100,4315,2100,3681, 199,2263,1837,2385, 146,3484,1195,2776,3949, 997, -1939,3973,1008,1091,1202,1962,1847,1149,4209,5444,1076, 493, 117,5400,2521, 972, -1490,2934,1796,4542,2374,1512,2933,2657, 413,2888,1135,2762,2314,2156,1355,2369, - 766,2007,2527,2170,3124,2491,2593,2632,4757,2437, 234,3125,3591,1898,1750,1376, -1942,3468,3138, 570,2127,2145,3276,4131, 962, 132,1445,4196, 19, 941,3624,3480, -3366,1973,1374,4461,3431,2629, 283,2415,2275, 808,2887,3620,2112,2563,1353,3610, - 955,1089,3103,1053, 96, 88,4097, 823,3808,1583, 399, 292,4091,3313, 421,1128, - 642,4006, 903,2539,1877,2082, 596, 29,4066,1790, 722,2157, 130, 995,1569, 769, -1485, 464, 513,2213, 288,1923,1101,2453,4316, 133, 486,2445, 50, 625, 487,2207, - 57, 423, 481,2962, 159,3729,1558, 491, 303, 482, 501, 240,2837, 112,3648,2392, -1783, 362, 8,3433,3422, 610,2793,3277,1390,1284,1654, 21,3823, 734, 367, 623, - 193, 287, 374,1009,1483, 816, 476, 313,2255,2340,1262,2150,2899,1146,2581, 782, -2116,1659,2018,1880, 255,3586,3314,1110,2867,2137,2564, 986,2767,5185,2006, 650, - 158, 926, 762, 881,3157,2717,2362,3587, 306,3690,3245,1542,3077,2427,1691,2478, -2118,2985,3490,2438, 539,2305, 983, 129,1754, 355,4201,2386, 827,2923, 104,1773, -2838,2771, 411,2905,3919, 376, 767, 122,1114, 828,2422,1817,3506, 266,3460,1007, -1609,4998, 945,2612,4429,2274, 726,1247,1964,2914,2199,2070,4002,4108, 657,3323, -1422, 579, 455,2764,4737,1222,2895,1670, 824,1223,1487,2525, 558, 861,3080, 598, -2659,2515,1967, 752,2583,2376,2214,4180, 977, 704,2464,4999,2622,4109,1210,2961, - 819,1541, 142,2284, 44, 418, 457,1126,3730,4347,4626,1644,1876,3671,1864, 302, -1063,5694, 624, 723,1984,3745,1314,1676,2488,1610,1449,3558,3569,2166,2098, 409, -1011,2325,3704,2306, 818,1732,1383,1824,1844,3757, 999,2705,3497,1216,1423,2683, -2426,2954,2501,2726,2229,1475,2554,5064,1971,1794,1666,2014,1343, 783, 724, 191, -2434,1354,2220,5065,1763,2752,2472,4152, 131, 175,2885,3434, 92,1466,4920,2616, -3871,3872,3866, 128,1551,1632, 669,1854,3682,4691,4125,1230, 188,2973,3290,1302, -1213, 560,3266, 917, 763,3909,3249,1760, 868,1958, 764,1782,2097, 145,2277,3774, -4462, 64,1491,3062, 971,2132,3606,2442, 221,1226,1617, 218, 323,1185,3207,3147, - 571, 619,1473,1005,1744,2281, 449,1887,2396,3685, 275, 375,3816,1743,3844,3731, - 845,1983,2350,4210,1377, 773, 967,3499,3052,3743,2725,4007,1697,1022,3943,1464, -3264,2855,2722,1952,1029,2839,2467, 84,4383,2215, 820,1391,2015,2448,3672, 377, -1948,2168, 797,2545,3536,2578,2645, 94,2874,1678, 405,1259,3071, 771, 546,1315, - 470,1243,3083, 895,2468, 981, 969,2037, 846,4181, 653,1276,2928, 14,2594, 557, -3007,2474, 156, 902,1338,1740,2574, 537,2518, 973,2282,2216,2433,1928, 138,2903, -1293,2631,1612, 646,3457, 839,2935, 111, 496,2191,2847, 589,3186, 149,3994,2060, -4031,2641,4067,3145,1870, 37,3597,2136,1025,2051,3009,3383,3549,1121,1016,3261, -1301, 251,2446,2599,2153, 872,3246, 637, 334,3705, 831, 884, 921,3065,3140,4092, -2198,1944, 246,2964, 108,2045,1152,1921,2308,1031, 203,3173,4170,1907,3890, 810, -1401,2003,1690, 506, 647,1242,2828,1761,1649,3208,2249,1589,3709,2931,5156,1708, - 498, 666,2613, 834,3817,1231, 184,2851,1124, 883,3197,2261,3710,1765,1553,2658, -1178,2639,2351, 93,1193, 942,2538,2141,4402, 235,1821, 870,1591,2192,1709,1871, -3341,1618,4126,2595,2334, 603, 651, 69, 701, 268,2662,3411,2555,1380,1606, 503, - 448, 254,2371,2646, 574,1187,2309,1770, 322,2235,1292,1801, 305, 566,1133, 229, -2067,2057, 706, 167, 483,2002,2672,3295,1820,3561,3067, 316, 378,2746,3452,1112, - 136,1981, 507,1651,2917,1117, 285,4591, 182,2580,3522,1304, 335,3303,1835,2504, -1795,1792,2248, 674,1018,2106,2449,1857,2292,2845, 976,3047,1781,2600,2727,1389, -1281, 52,3152, 153, 265,3950, 672,3485,3951,4463, 430,1183, 365, 278,2169, 27, -1407,1336,2304, 209,1340,1730,2202,1852,2403,2883, 979,1737,1062, 631,2829,2542, -3876,2592, 825,2086,2226,3048,3625, 352,1417,3724, 542, 991, 431,1351,3938,1861, -2294, 826,1361,2927,3142,3503,1738, 463,2462,2723, 582,1916,1595,2808, 400,3845, -3891,2868,3621,2254, 58,2492,1123, 910,2160,2614,1372,1603,1196,1072,3385,1700, -3267,1980, 696, 480,2430, 920, 799,1570,2920,1951,2041,4047,2540,1321,4223,2469, -3562,2228,1271,2602, 401,2833,3351,2575,5157, 907,2312,1256, 410, 263,3507,1582, - 996, 678,1849,2316,1480, 908,3545,2237, 703,2322, 667,1826,2849,1531,2604,2999, -2407,3146,2151,2630,1786,3711, 469,3542, 497,3899,2409, 858, 837,4446,3393,1274, - 786, 620,1845,2001,3311, 484, 308,3367,1204,1815,3691,2332,1532,2557,1842,2020, -2724,1927,2333,4440, 567, 22,1673,2728,4475,1987,1858,1144,1597, 101,1832,3601, - 12, 974,3783,4391, 951,1412, 1,3720, 453,4608,4041, 528,1041,1027,3230,2628, -1129, 875,1051,3291,1203,2262,1069,2860,2799,2149,2615,3278, 144,1758,3040, 31, - 475,1680, 366,2685,3184, 311,1642,4008,2466,5036,1593,1493,2809, 216,1420,1668, - 233, 304,2128,3284, 232,1429,1768,1040,2008,3407,2740,2967,2543, 242,2133, 778, -1565,2022,2620, 505,2189,2756,1098,2273, 372,1614, 708, 553,2846,2094,2278, 169, -3626,2835,4161, 228,2674,3165, 809,1454,1309, 466,1705,1095, 900,3423, 880,2667, -3751,5258,2317,3109,2571,4317,2766,1503,1342, 866,4447,1118, 63,2076, 314,1881, -1348,1061, 172, 978,3515,1747, 532, 511,3970, 6, 601, 905,2699,3300,1751, 276, -1467,3725,2668, 65,4239,2544,2779,2556,1604, 578,2451,1802, 992,2331,2624,1320, -3446, 713,1513,1013, 103,2786,2447,1661, 886,1702, 916, 654,3574,2031,1556, 751, -2178,2821,2179,1498,1538,2176, 271, 914,2251,2080,1325, 638,1953,2937,3877,2432, -2754, 95,3265,1716, 260,1227,4083, 775, 106,1357,3254, 426,1607, 555,2480, 772, -1985, 244,2546, 474, 495,1046,2611,1851,2061, 71,2089,1675,2590, 742,3758,2843, -3222,1433, 267,2180,2576,2826,2233,2092,3913,2435, 956,1745,3075, 856,2113,1116, - 451, 3,1988,2896,1398, 993,2463,1878,2049,1341,2718,2721,2870,2108, 712,2904, -4363,2753,2324, 277,2872,2349,2649, 384, 987, 435, 691,3000, 922, 164,3939, 652, -1500,1184,4153,2482,3373,2165,4848,2335,3775,3508,3154,2806,2830,1554,2102,1664, -2530,1434,2408, 893,1547,2623,3447,2832,2242,2532,3169,2856,3223,2078, 49,3770, -3469, 462, 318, 656,2259,3250,3069, 679,1629,2758, 344,1138,1104,3120,1836,1283, -3115,2154,1437,4448, 934, 759,1999, 794,2862,1038, 533,2560,1722,2342, 855,2626, -1197,1663,4476,3127, 85,4240,2528, 25,1111,1181,3673, 407,3470,4561,2679,2713, - 768,1925,2841,3986,1544,1165, 932, 373,1240,2146,1930,2673, 721,4766, 354,4333, - 391,2963, 187, 61,3364,1442,1102, 330,1940,1767, 341,3809,4118, 393,2496,2062, -2211, 105, 331, 300, 439, 913,1332, 626, 379,3304,1557, 328, 689,3952, 309,1555, - 931, 317,2517,3027, 325, 569, 686,2107,3084, 60,1042,1333,2794, 264,3177,4014, -1628, 258,3712, 7,4464,1176,1043,1778, 683, 114,1975, 78,1492, 383,1886, 510, - 386, 645,5291,2891,2069,3305,4138,3867,2939,2603,2493,1935,1066,1848,3588,1015, -1282,1289,4609, 697,1453,3044,2666,3611,1856,2412, 54, 719,1330, 568,3778,2459, -1748, 788, 492, 551,1191,1000, 488,3394,3763, 282,1799, 348,2016,1523,3155,2390, -1049, 382,2019,1788,1170, 729,2968,3523, 897,3926,2785,2938,3292, 350,2319,3238, -1718,1717,2655,3453,3143,4465, 161,2889,2980,2009,1421, 56,1908,1640,2387,2232, -1917,1874,2477,4921, 148, 83,3438, 592,4245,2882,1822,1055, 741, 115,1496,1624, - 381,1638,4592,1020, 516,3214, 458, 947,4575,1432, 211,1514,2926,1865,2142, 189, - 852,1221,1400,1486, 882,2299,4036, 351, 28,1122, 700,6479,6480,6481,6482,6483, #last 512 -) - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312prober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312prober.py deleted file mode 100644 index 7cae6b5..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/gb2312prober.py +++ /dev/null @@ -1,46 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import GB2312DistributionAnalysis -from .mbcssm import GB2312_SM_MODEL - -class GB2312Prober(MultiByteCharSetProber): - def __init__(self): - super(GB2312Prober, self).__init__() - self.coding_sm = CodingStateMachine(GB2312_SM_MODEL) - self.distribution_analyzer = GB2312DistributionAnalysis() - self.reset() - - @property - def charset_name(self): - return "GB2312" - - @property - def language(self): - return "Chinese" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/hebrewprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/hebrewprober.py deleted file mode 100644 index 10b8122..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/hebrewprober.py +++ /dev/null @@ -1,292 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Shy Shalom -# Portions created by the Initial Developer are Copyright (C) 2005 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .enums import ProbingState - -# This prober doesn't actually recognize a language or a charset. -# It is a helper prober for the use of the Hebrew model probers - -### General ideas of the Hebrew charset recognition ### -# -# Four main charsets exist in Hebrew: -# "ISO-8859-8" - Visual Hebrew -# "windows-1255" - Logical Hebrew -# "ISO-8859-8-I" - Logical Hebrew -# "x-mac-hebrew" - ?? Logical Hebrew ?? -# -# Both "ISO" charsets use a completely identical set of code points, whereas -# "windows-1255" and "x-mac-hebrew" are two different proper supersets of -# these code points. windows-1255 defines additional characters in the range -# 0x80-0x9F as some misc punctuation marks as well as some Hebrew-specific -# diacritics and additional 'Yiddish' ligature letters in the range 0xc0-0xd6. -# x-mac-hebrew defines similar additional code points but with a different -# mapping. -# -# As far as an average Hebrew text with no diacritics is concerned, all four -# charsets are identical with respect to code points. Meaning that for the -# main Hebrew alphabet, all four map the same values to all 27 Hebrew letters -# (including final letters). -# -# The dominant difference between these charsets is their directionality. -# "Visual" directionality means that the text is ordered as if the renderer is -# not aware of a BIDI rendering algorithm. The renderer sees the text and -# draws it from left to right. The text itself when ordered naturally is read -# backwards. A buffer of Visual Hebrew generally looks like so: -# "[last word of first line spelled backwards] [whole line ordered backwards -# and spelled backwards] [first word of first line spelled backwards] -# [end of line] [last word of second line] ... etc' " -# adding punctuation marks, numbers and English text to visual text is -# naturally also "visual" and from left to right. -# -# "Logical" directionality means the text is ordered "naturally" according to -# the order it is read. It is the responsibility of the renderer to display -# the text from right to left. A BIDI algorithm is used to place general -# punctuation marks, numbers and English text in the text. -# -# Texts in x-mac-hebrew are almost impossible to find on the Internet. From -# what little evidence I could find, it seems that its general directionality -# is Logical. -# -# To sum up all of the above, the Hebrew probing mechanism knows about two -# charsets: -# Visual Hebrew - "ISO-8859-8" - backwards text - Words and sentences are -# backwards while line order is natural. For charset recognition purposes -# the line order is unimportant (In fact, for this implementation, even -# word order is unimportant). -# Logical Hebrew - "windows-1255" - normal, naturally ordered text. -# -# "ISO-8859-8-I" is a subset of windows-1255 and doesn't need to be -# specifically identified. -# "x-mac-hebrew" is also identified as windows-1255. A text in x-mac-hebrew -# that contain special punctuation marks or diacritics is displayed with -# some unconverted characters showing as question marks. This problem might -# be corrected using another model prober for x-mac-hebrew. Due to the fact -# that x-mac-hebrew texts are so rare, writing another model prober isn't -# worth the effort and performance hit. -# -#### The Prober #### -# -# The prober is divided between two SBCharSetProbers and a HebrewProber, -# all of which are managed, created, fed data, inquired and deleted by the -# SBCSGroupProber. The two SBCharSetProbers identify that the text is in -# fact some kind of Hebrew, Logical or Visual. The final decision about which -# one is it is made by the HebrewProber by combining final-letter scores -# with the scores of the two SBCharSetProbers to produce a final answer. -# -# The SBCSGroupProber is responsible for stripping the original text of HTML -# tags, English characters, numbers, low-ASCII punctuation characters, spaces -# and new lines. It reduces any sequence of such characters to a single space. -# The buffer fed to each prober in the SBCS group prober is pure text in -# high-ASCII. -# The two SBCharSetProbers (model probers) share the same language model: -# Win1255Model. -# The first SBCharSetProber uses the model normally as any other -# SBCharSetProber does, to recognize windows-1255, upon which this model was -# built. The second SBCharSetProber is told to make the pair-of-letter -# lookup in the language model backwards. This in practice exactly simulates -# a visual Hebrew model using the windows-1255 logical Hebrew model. -# -# The HebrewProber is not using any language model. All it does is look for -# final-letter evidence suggesting the text is either logical Hebrew or visual -# Hebrew. Disjointed from the model probers, the results of the HebrewProber -# alone are meaningless. HebrewProber always returns 0.00 as confidence -# since it never identifies a charset by itself. Instead, the pointer to the -# HebrewProber is passed to the model probers as a helper "Name Prober". -# When the Group prober receives a positive identification from any prober, -# it asks for the name of the charset identified. If the prober queried is a -# Hebrew model prober, the model prober forwards the call to the -# HebrewProber to make the final decision. In the HebrewProber, the -# decision is made according to the final-letters scores maintained and Both -# model probers scores. The answer is returned in the form of the name of the -# charset identified, either "windows-1255" or "ISO-8859-8". - -class HebrewProber(CharSetProber): - # windows-1255 / ISO-8859-8 code points of interest - FINAL_KAF = 0xea - NORMAL_KAF = 0xeb - FINAL_MEM = 0xed - NORMAL_MEM = 0xee - FINAL_NUN = 0xef - NORMAL_NUN = 0xf0 - FINAL_PE = 0xf3 - NORMAL_PE = 0xf4 - FINAL_TSADI = 0xf5 - NORMAL_TSADI = 0xf6 - - # Minimum Visual vs Logical final letter score difference. - # If the difference is below this, don't rely solely on the final letter score - # distance. - MIN_FINAL_CHAR_DISTANCE = 5 - - # Minimum Visual vs Logical model score difference. - # If the difference is below this, don't rely at all on the model score - # distance. - MIN_MODEL_DISTANCE = 0.01 - - VISUAL_HEBREW_NAME = "ISO-8859-8" - LOGICAL_HEBREW_NAME = "windows-1255" - - def __init__(self): - super(HebrewProber, self).__init__() - self._final_char_logical_score = None - self._final_char_visual_score = None - self._prev = None - self._before_prev = None - self._logical_prober = None - self._visual_prober = None - self.reset() - - def reset(self): - self._final_char_logical_score = 0 - self._final_char_visual_score = 0 - # The two last characters seen in the previous buffer, - # mPrev and mBeforePrev are initialized to space in order to simulate - # a word delimiter at the beginning of the data - self._prev = ' ' - self._before_prev = ' ' - # These probers are owned by the group prober. - - def set_model_probers(self, logicalProber, visualProber): - self._logical_prober = logicalProber - self._visual_prober = visualProber - - def is_final(self, c): - return c in [self.FINAL_KAF, self.FINAL_MEM, self.FINAL_NUN, - self.FINAL_PE, self.FINAL_TSADI] - - def is_non_final(self, c): - # The normal Tsadi is not a good Non-Final letter due to words like - # 'lechotet' (to chat) containing an apostrophe after the tsadi. This - # apostrophe is converted to a space in FilterWithoutEnglishLetters - # causing the Non-Final tsadi to appear at an end of a word even - # though this is not the case in the original text. - # The letters Pe and Kaf rarely display a related behavior of not being - # a good Non-Final letter. Words like 'Pop', 'Winamp' and 'Mubarak' - # for example legally end with a Non-Final Pe or Kaf. However, the - # benefit of these letters as Non-Final letters outweighs the damage - # since these words are quite rare. - return c in [self.NORMAL_KAF, self.NORMAL_MEM, - self.NORMAL_NUN, self.NORMAL_PE] - - def feed(self, byte_str): - # Final letter analysis for logical-visual decision. - # Look for evidence that the received buffer is either logical Hebrew - # or visual Hebrew. - # The following cases are checked: - # 1) A word longer than 1 letter, ending with a final letter. This is - # an indication that the text is laid out "naturally" since the - # final letter really appears at the end. +1 for logical score. - # 2) A word longer than 1 letter, ending with a Non-Final letter. In - # normal Hebrew, words ending with Kaf, Mem, Nun, Pe or Tsadi, - # should not end with the Non-Final form of that letter. Exceptions - # to this rule are mentioned above in isNonFinal(). This is an - # indication that the text is laid out backwards. +1 for visual - # score - # 3) A word longer than 1 letter, starting with a final letter. Final - # letters should not appear at the beginning of a word. This is an - # indication that the text is laid out backwards. +1 for visual - # score. - # - # The visual score and logical score are accumulated throughout the - # text and are finally checked against each other in GetCharSetName(). - # No checking for final letters in the middle of words is done since - # that case is not an indication for either Logical or Visual text. - # - # We automatically filter out all 7-bit characters (replace them with - # spaces) so the word boundary detection works properly. [MAP] - - if self.state == ProbingState.NOT_ME: - # Both model probers say it's not them. No reason to continue. - return ProbingState.NOT_ME - - byte_str = self.filter_high_byte_only(byte_str) - - for cur in byte_str: - if cur == ' ': - # We stand on a space - a word just ended - if self._before_prev != ' ': - # next-to-last char was not a space so self._prev is not a - # 1 letter word - if self.is_final(self._prev): - # case (1) [-2:not space][-1:final letter][cur:space] - self._final_char_logical_score += 1 - elif self.is_non_final(self._prev): - # case (2) [-2:not space][-1:Non-Final letter][ - # cur:space] - self._final_char_visual_score += 1 - else: - # Not standing on a space - if ((self._before_prev == ' ') and - (self.is_final(self._prev)) and (cur != ' ')): - # case (3) [-2:space][-1:final letter][cur:not space] - self._final_char_visual_score += 1 - self._before_prev = self._prev - self._prev = cur - - # Forever detecting, till the end or until both model probers return - # ProbingState.NOT_ME (handled above) - return ProbingState.DETECTING - - @property - def charset_name(self): - # Make the decision: is it Logical or Visual? - # If the final letter score distance is dominant enough, rely on it. - finalsub = self._final_char_logical_score - self._final_char_visual_score - if finalsub >= self.MIN_FINAL_CHAR_DISTANCE: - return self.LOGICAL_HEBREW_NAME - if finalsub <= -self.MIN_FINAL_CHAR_DISTANCE: - return self.VISUAL_HEBREW_NAME - - # It's not dominant enough, try to rely on the model scores instead. - modelsub = (self._logical_prober.get_confidence() - - self._visual_prober.get_confidence()) - if modelsub > self.MIN_MODEL_DISTANCE: - return self.LOGICAL_HEBREW_NAME - if modelsub < -self.MIN_MODEL_DISTANCE: - return self.VISUAL_HEBREW_NAME - - # Still no good, back to final letter distance, maybe it'll save the - # day. - if finalsub < 0.0: - return self.VISUAL_HEBREW_NAME - - # (finalsub > 0 - Logical) or (don't know what to do) default to - # Logical. - return self.LOGICAL_HEBREW_NAME - - @property - def language(self): - return 'Hebrew' - - @property - def state(self): - # Remain active as long as any of the model probers are active. - if (self._logical_prober.state == ProbingState.NOT_ME) and \ - (self._visual_prober.state == ProbingState.NOT_ME): - return ProbingState.NOT_ME - return ProbingState.DETECTING diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jisfreq.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jisfreq.py deleted file mode 100644 index 510b940..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jisfreq.py +++ /dev/null @@ -1,325 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# Sampling from about 20M text materials include literature and computer technology -# -# Japanese frequency table, applied to both S-JIS and EUC-JP -# They are sorted in order. - -# 128 --> 0.77094 -# 256 --> 0.85710 -# 512 --> 0.92635 -# 1024 --> 0.97130 -# 2048 --> 0.99431 -# -# Ideal Distribution Ratio = 0.92635 / (1-0.92635) = 12.58 -# Random Distribution Ration = 512 / (2965+62+83+86-512) = 0.191 -# -# Typical Distribution Ratio, 25% of IDR - -JIS_TYPICAL_DISTRIBUTION_RATIO = 3.0 - -# Char to FreqOrder table , -JIS_TABLE_SIZE = 4368 - -JIS_CHAR_TO_FREQ_ORDER = ( - 40, 1, 6, 182, 152, 180, 295,2127, 285, 381,3295,4304,3068,4606,3165,3510, # 16 -3511,1822,2785,4607,1193,2226,5070,4608, 171,2996,1247, 18, 179,5071, 856,1661, # 32 -1262,5072, 619, 127,3431,3512,3230,1899,1700, 232, 228,1294,1298, 284, 283,2041, # 48 -2042,1061,1062, 48, 49, 44, 45, 433, 434,1040,1041, 996, 787,2997,1255,4305, # 64 -2108,4609,1684,1648,5073,5074,5075,5076,5077,5078,3687,5079,4610,5080,3927,3928, # 80 -5081,3296,3432, 290,2285,1471,2187,5082,2580,2825,1303,2140,1739,1445,2691,3375, # 96 -1691,3297,4306,4307,4611, 452,3376,1182,2713,3688,3069,4308,5083,5084,5085,5086, # 112 -5087,5088,5089,5090,5091,5092,5093,5094,5095,5096,5097,5098,5099,5100,5101,5102, # 128 -5103,5104,5105,5106,5107,5108,5109,5110,5111,5112,4097,5113,5114,5115,5116,5117, # 144 -5118,5119,5120,5121,5122,5123,5124,5125,5126,5127,5128,5129,5130,5131,5132,5133, # 160 -5134,5135,5136,5137,5138,5139,5140,5141,5142,5143,5144,5145,5146,5147,5148,5149, # 176 -5150,5151,5152,4612,5153,5154,5155,5156,5157,5158,5159,5160,5161,5162,5163,5164, # 192 -5165,5166,5167,5168,5169,5170,5171,5172,5173,5174,5175,1472, 598, 618, 820,1205, # 208 -1309,1412,1858,1307,1692,5176,5177,5178,5179,5180,5181,5182,1142,1452,1234,1172, # 224 -1875,2043,2149,1793,1382,2973, 925,2404,1067,1241, 960,1377,2935,1491, 919,1217, # 240 -1865,2030,1406,1499,2749,4098,5183,5184,5185,5186,5187,5188,2561,4099,3117,1804, # 256 -2049,3689,4309,3513,1663,5189,3166,3118,3298,1587,1561,3433,5190,3119,1625,2998, # 272 -3299,4613,1766,3690,2786,4614,5191,5192,5193,5194,2161, 26,3377, 2,3929, 20, # 288 -3691, 47,4100, 50, 17, 16, 35, 268, 27, 243, 42, 155, 24, 154, 29, 184, # 304 - 4, 91, 14, 92, 53, 396, 33, 289, 9, 37, 64, 620, 21, 39, 321, 5, # 320 - 12, 11, 52, 13, 3, 208, 138, 0, 7, 60, 526, 141, 151,1069, 181, 275, # 336 -1591, 83, 132,1475, 126, 331, 829, 15, 69, 160, 59, 22, 157, 55,1079, 312, # 352 - 109, 38, 23, 25, 10, 19, 79,5195, 61, 382,1124, 8, 30,5196,5197,5198, # 368 -5199,5200,5201,5202,5203,5204,5205,5206, 89, 62, 74, 34,2416, 112, 139, 196, # 384 - 271, 149, 84, 607, 131, 765, 46, 88, 153, 683, 76, 874, 101, 258, 57, 80, # 400 - 32, 364, 121,1508, 169,1547, 68, 235, 145,2999, 41, 360,3027, 70, 63, 31, # 416 - 43, 259, 262,1383, 99, 533, 194, 66, 93, 846, 217, 192, 56, 106, 58, 565, # 432 - 280, 272, 311, 256, 146, 82, 308, 71, 100, 128, 214, 655, 110, 261, 104,1140, # 448 - 54, 51, 36, 87, 67,3070, 185,2618,2936,2020, 28,1066,2390,2059,5207,5208, # 464 -5209,5210,5211,5212,5213,5214,5215,5216,4615,5217,5218,5219,5220,5221,5222,5223, # 480 -5224,5225,5226,5227,5228,5229,5230,5231,5232,5233,5234,5235,5236,3514,5237,5238, # 496 -5239,5240,5241,5242,5243,5244,2297,2031,4616,4310,3692,5245,3071,5246,3598,5247, # 512 -4617,3231,3515,5248,4101,4311,4618,3808,4312,4102,5249,4103,4104,3599,5250,5251, # 528 -5252,5253,5254,5255,5256,5257,5258,5259,5260,5261,5262,5263,5264,5265,5266,5267, # 544 -5268,5269,5270,5271,5272,5273,5274,5275,5276,5277,5278,5279,5280,5281,5282,5283, # 560 -5284,5285,5286,5287,5288,5289,5290,5291,5292,5293,5294,5295,5296,5297,5298,5299, # 576 -5300,5301,5302,5303,5304,5305,5306,5307,5308,5309,5310,5311,5312,5313,5314,5315, # 592 -5316,5317,5318,5319,5320,5321,5322,5323,5324,5325,5326,5327,5328,5329,5330,5331, # 608 -5332,5333,5334,5335,5336,5337,5338,5339,5340,5341,5342,5343,5344,5345,5346,5347, # 624 -5348,5349,5350,5351,5352,5353,5354,5355,5356,5357,5358,5359,5360,5361,5362,5363, # 640 -5364,5365,5366,5367,5368,5369,5370,5371,5372,5373,5374,5375,5376,5377,5378,5379, # 656 -5380,5381, 363, 642,2787,2878,2788,2789,2316,3232,2317,3434,2011, 165,1942,3930, # 672 -3931,3932,3933,5382,4619,5383,4620,5384,5385,5386,5387,5388,5389,5390,5391,5392, # 688 -5393,5394,5395,5396,5397,5398,5399,5400,5401,5402,5403,5404,5405,5406,5407,5408, # 704 -5409,5410,5411,5412,5413,5414,5415,5416,5417,5418,5419,5420,5421,5422,5423,5424, # 720 -5425,5426,5427,5428,5429,5430,5431,5432,5433,5434,5435,5436,5437,5438,5439,5440, # 736 -5441,5442,5443,5444,5445,5446,5447,5448,5449,5450,5451,5452,5453,5454,5455,5456, # 752 -5457,5458,5459,5460,5461,5462,5463,5464,5465,5466,5467,5468,5469,5470,5471,5472, # 768 -5473,5474,5475,5476,5477,5478,5479,5480,5481,5482,5483,5484,5485,5486,5487,5488, # 784 -5489,5490,5491,5492,5493,5494,5495,5496,5497,5498,5499,5500,5501,5502,5503,5504, # 800 -5505,5506,5507,5508,5509,5510,5511,5512,5513,5514,5515,5516,5517,5518,5519,5520, # 816 -5521,5522,5523,5524,5525,5526,5527,5528,5529,5530,5531,5532,5533,5534,5535,5536, # 832 -5537,5538,5539,5540,5541,5542,5543,5544,5545,5546,5547,5548,5549,5550,5551,5552, # 848 -5553,5554,5555,5556,5557,5558,5559,5560,5561,5562,5563,5564,5565,5566,5567,5568, # 864 -5569,5570,5571,5572,5573,5574,5575,5576,5577,5578,5579,5580,5581,5582,5583,5584, # 880 -5585,5586,5587,5588,5589,5590,5591,5592,5593,5594,5595,5596,5597,5598,5599,5600, # 896 -5601,5602,5603,5604,5605,5606,5607,5608,5609,5610,5611,5612,5613,5614,5615,5616, # 912 -5617,5618,5619,5620,5621,5622,5623,5624,5625,5626,5627,5628,5629,5630,5631,5632, # 928 -5633,5634,5635,5636,5637,5638,5639,5640,5641,5642,5643,5644,5645,5646,5647,5648, # 944 -5649,5650,5651,5652,5653,5654,5655,5656,5657,5658,5659,5660,5661,5662,5663,5664, # 960 -5665,5666,5667,5668,5669,5670,5671,5672,5673,5674,5675,5676,5677,5678,5679,5680, # 976 -5681,5682,5683,5684,5685,5686,5687,5688,5689,5690,5691,5692,5693,5694,5695,5696, # 992 -5697,5698,5699,5700,5701,5702,5703,5704,5705,5706,5707,5708,5709,5710,5711,5712, # 1008 -5713,5714,5715,5716,5717,5718,5719,5720,5721,5722,5723,5724,5725,5726,5727,5728, # 1024 -5729,5730,5731,5732,5733,5734,5735,5736,5737,5738,5739,5740,5741,5742,5743,5744, # 1040 -5745,5746,5747,5748,5749,5750,5751,5752,5753,5754,5755,5756,5757,5758,5759,5760, # 1056 -5761,5762,5763,5764,5765,5766,5767,5768,5769,5770,5771,5772,5773,5774,5775,5776, # 1072 -5777,5778,5779,5780,5781,5782,5783,5784,5785,5786,5787,5788,5789,5790,5791,5792, # 1088 -5793,5794,5795,5796,5797,5798,5799,5800,5801,5802,5803,5804,5805,5806,5807,5808, # 1104 -5809,5810,5811,5812,5813,5814,5815,5816,5817,5818,5819,5820,5821,5822,5823,5824, # 1120 -5825,5826,5827,5828,5829,5830,5831,5832,5833,5834,5835,5836,5837,5838,5839,5840, # 1136 -5841,5842,5843,5844,5845,5846,5847,5848,5849,5850,5851,5852,5853,5854,5855,5856, # 1152 -5857,5858,5859,5860,5861,5862,5863,5864,5865,5866,5867,5868,5869,5870,5871,5872, # 1168 -5873,5874,5875,5876,5877,5878,5879,5880,5881,5882,5883,5884,5885,5886,5887,5888, # 1184 -5889,5890,5891,5892,5893,5894,5895,5896,5897,5898,5899,5900,5901,5902,5903,5904, # 1200 -5905,5906,5907,5908,5909,5910,5911,5912,5913,5914,5915,5916,5917,5918,5919,5920, # 1216 -5921,5922,5923,5924,5925,5926,5927,5928,5929,5930,5931,5932,5933,5934,5935,5936, # 1232 -5937,5938,5939,5940,5941,5942,5943,5944,5945,5946,5947,5948,5949,5950,5951,5952, # 1248 -5953,5954,5955,5956,5957,5958,5959,5960,5961,5962,5963,5964,5965,5966,5967,5968, # 1264 -5969,5970,5971,5972,5973,5974,5975,5976,5977,5978,5979,5980,5981,5982,5983,5984, # 1280 -5985,5986,5987,5988,5989,5990,5991,5992,5993,5994,5995,5996,5997,5998,5999,6000, # 1296 -6001,6002,6003,6004,6005,6006,6007,6008,6009,6010,6011,6012,6013,6014,6015,6016, # 1312 -6017,6018,6019,6020,6021,6022,6023,6024,6025,6026,6027,6028,6029,6030,6031,6032, # 1328 -6033,6034,6035,6036,6037,6038,6039,6040,6041,6042,6043,6044,6045,6046,6047,6048, # 1344 -6049,6050,6051,6052,6053,6054,6055,6056,6057,6058,6059,6060,6061,6062,6063,6064, # 1360 -6065,6066,6067,6068,6069,6070,6071,6072,6073,6074,6075,6076,6077,6078,6079,6080, # 1376 -6081,6082,6083,6084,6085,6086,6087,6088,6089,6090,6091,6092,6093,6094,6095,6096, # 1392 -6097,6098,6099,6100,6101,6102,6103,6104,6105,6106,6107,6108,6109,6110,6111,6112, # 1408 -6113,6114,2044,2060,4621, 997,1235, 473,1186,4622, 920,3378,6115,6116, 379,1108, # 1424 -4313,2657,2735,3934,6117,3809, 636,3233, 573,1026,3693,3435,2974,3300,2298,4105, # 1440 - 854,2937,2463, 393,2581,2417, 539, 752,1280,2750,2480, 140,1161, 440, 708,1569, # 1456 - 665,2497,1746,1291,1523,3000, 164,1603, 847,1331, 537,1997, 486, 508,1693,2418, # 1472 -1970,2227, 878,1220, 299,1030, 969, 652,2751, 624,1137,3301,2619, 65,3302,2045, # 1488 -1761,1859,3120,1930,3694,3516, 663,1767, 852, 835,3695, 269, 767,2826,2339,1305, # 1504 - 896,1150, 770,1616,6118, 506,1502,2075,1012,2519, 775,2520,2975,2340,2938,4314, # 1520 -3028,2086,1224,1943,2286,6119,3072,4315,2240,1273,1987,3935,1557, 175, 597, 985, # 1536 -3517,2419,2521,1416,3029, 585, 938,1931,1007,1052,1932,1685,6120,3379,4316,4623, # 1552 - 804, 599,3121,1333,2128,2539,1159,1554,2032,3810, 687,2033,2904, 952, 675,1467, # 1568 -3436,6121,2241,1096,1786,2440,1543,1924, 980,1813,2228, 781,2692,1879, 728,1918, # 1584 -3696,4624, 548,1950,4625,1809,1088,1356,3303,2522,1944, 502, 972, 373, 513,2827, # 1600 - 586,2377,2391,1003,1976,1631,6122,2464,1084, 648,1776,4626,2141, 324, 962,2012, # 1616 -2177,2076,1384, 742,2178,1448,1173,1810, 222, 102, 301, 445, 125,2420, 662,2498, # 1632 - 277, 200,1476,1165,1068, 224,2562,1378,1446, 450,1880, 659, 791, 582,4627,2939, # 1648 -3936,1516,1274, 555,2099,3697,1020,1389,1526,3380,1762,1723,1787,2229, 412,2114, # 1664 -1900,2392,3518, 512,2597, 427,1925,2341,3122,1653,1686,2465,2499, 697, 330, 273, # 1680 - 380,2162, 951, 832, 780, 991,1301,3073, 965,2270,3519, 668,2523,2636,1286, 535, # 1696 -1407, 518, 671, 957,2658,2378, 267, 611,2197,3030,6123, 248,2299, 967,1799,2356, # 1712 - 850,1418,3437,1876,1256,1480,2828,1718,6124,6125,1755,1664,2405,6126,4628,2879, # 1728 -2829, 499,2179, 676,4629, 557,2329,2214,2090, 325,3234, 464, 811,3001, 992,2342, # 1744 -2481,1232,1469, 303,2242, 466,1070,2163, 603,1777,2091,4630,2752,4631,2714, 322, # 1760 -2659,1964,1768, 481,2188,1463,2330,2857,3600,2092,3031,2421,4632,2318,2070,1849, # 1776 -2598,4633,1302,2254,1668,1701,2422,3811,2905,3032,3123,2046,4106,1763,1694,4634, # 1792 -1604, 943,1724,1454, 917, 868,2215,1169,2940, 552,1145,1800,1228,1823,1955, 316, # 1808 -1080,2510, 361,1807,2830,4107,2660,3381,1346,1423,1134,4108,6127, 541,1263,1229, # 1824 -1148,2540, 545, 465,1833,2880,3438,1901,3074,2482, 816,3937, 713,1788,2500, 122, # 1840 -1575, 195,1451,2501,1111,6128, 859, 374,1225,2243,2483,4317, 390,1033,3439,3075, # 1856 -2524,1687, 266, 793,1440,2599, 946, 779, 802, 507, 897,1081, 528,2189,1292, 711, # 1872 -1866,1725,1167,1640, 753, 398,2661,1053, 246, 348,4318, 137,1024,3440,1600,2077, # 1888 -2129, 825,4319, 698, 238, 521, 187,2300,1157,2423,1641,1605,1464,1610,1097,2541, # 1904 -1260,1436, 759,2255,1814,2150, 705,3235, 409,2563,3304, 561,3033,2005,2564, 726, # 1920 -1956,2343,3698,4109, 949,3812,3813,3520,1669, 653,1379,2525, 881,2198, 632,2256, # 1936 -1027, 778,1074, 733,1957, 514,1481,2466, 554,2180, 702,3938,1606,1017,1398,6129, # 1952 -1380,3521, 921, 993,1313, 594, 449,1489,1617,1166, 768,1426,1360, 495,1794,3601, # 1968 -1177,3602,1170,4320,2344, 476, 425,3167,4635,3168,1424, 401,2662,1171,3382,1998, # 1984 -1089,4110, 477,3169, 474,6130,1909, 596,2831,1842, 494, 693,1051,1028,1207,3076, # 2000 - 606,2115, 727,2790,1473,1115, 743,3522, 630, 805,1532,4321,2021, 366,1057, 838, # 2016 - 684,1114,2142,4322,2050,1492,1892,1808,2271,3814,2424,1971,1447,1373,3305,1090, # 2032 -1536,3939,3523,3306,1455,2199, 336, 369,2331,1035, 584,2393, 902, 718,2600,6131, # 2048 -2753, 463,2151,1149,1611,2467, 715,1308,3124,1268, 343,1413,3236,1517,1347,2663, # 2064 -2093,3940,2022,1131,1553,2100,2941,1427,3441,2942,1323,2484,6132,1980, 872,2368, # 2080 -2441,2943, 320,2369,2116,1082, 679,1933,3941,2791,3815, 625,1143,2023, 422,2200, # 2096 -3816,6133, 730,1695, 356,2257,1626,2301,2858,2637,1627,1778, 937, 883,2906,2693, # 2112 -3002,1769,1086, 400,1063,1325,3307,2792,4111,3077, 456,2345,1046, 747,6134,1524, # 2128 - 884,1094,3383,1474,2164,1059, 974,1688,2181,2258,1047, 345,1665,1187, 358, 875, # 2144 -3170, 305, 660,3524,2190,1334,1135,3171,1540,1649,2542,1527, 927, 968,2793, 885, # 2160 -1972,1850, 482, 500,2638,1218,1109,1085,2543,1654,2034, 876, 78,2287,1482,1277, # 2176 - 861,1675,1083,1779, 724,2754, 454, 397,1132,1612,2332, 893, 672,1237, 257,2259, # 2192 -2370, 135,3384, 337,2244, 547, 352, 340, 709,2485,1400, 788,1138,2511, 540, 772, # 2208 -1682,2260,2272,2544,2013,1843,1902,4636,1999,1562,2288,4637,2201,1403,1533, 407, # 2224 - 576,3308,1254,2071, 978,3385, 170, 136,1201,3125,2664,3172,2394, 213, 912, 873, # 2240 -3603,1713,2202, 699,3604,3699, 813,3442, 493, 531,1054, 468,2907,1483, 304, 281, # 2256 -4112,1726,1252,2094, 339,2319,2130,2639, 756,1563,2944, 748, 571,2976,1588,2425, # 2272 -2715,1851,1460,2426,1528,1392,1973,3237, 288,3309, 685,3386, 296, 892,2716,2216, # 2288 -1570,2245, 722,1747,2217, 905,3238,1103,6135,1893,1441,1965, 251,1805,2371,3700, # 2304 -2601,1919,1078, 75,2182,1509,1592,1270,2640,4638,2152,6136,3310,3817, 524, 706, # 2320 -1075, 292,3818,1756,2602, 317, 98,3173,3605,3525,1844,2218,3819,2502, 814, 567, # 2336 - 385,2908,1534,6137, 534,1642,3239, 797,6138,1670,1529, 953,4323, 188,1071, 538, # 2352 - 178, 729,3240,2109,1226,1374,2000,2357,2977, 731,2468,1116,2014,2051,6139,1261, # 2368 -1593, 803,2859,2736,3443, 556, 682, 823,1541,6140,1369,2289,1706,2794, 845, 462, # 2384 -2603,2665,1361, 387, 162,2358,1740, 739,1770,1720,1304,1401,3241,1049, 627,1571, # 2400 -2427,3526,1877,3942,1852,1500, 431,1910,1503, 677, 297,2795, 286,1433,1038,1198, # 2416 -2290,1133,1596,4113,4639,2469,1510,1484,3943,6141,2442, 108, 712,4640,2372, 866, # 2432 -3701,2755,3242,1348, 834,1945,1408,3527,2395,3243,1811, 824, 994,1179,2110,1548, # 2448 -1453, 790,3003, 690,4324,4325,2832,2909,3820,1860,3821, 225,1748, 310, 346,1780, # 2464 -2470, 821,1993,2717,2796, 828, 877,3528,2860,2471,1702,2165,2910,2486,1789, 453, # 2480 - 359,2291,1676, 73,1164,1461,1127,3311, 421, 604, 314,1037, 589, 116,2487, 737, # 2496 - 837,1180, 111, 244, 735,6142,2261,1861,1362, 986, 523, 418, 581,2666,3822, 103, # 2512 - 855, 503,1414,1867,2488,1091, 657,1597, 979, 605,1316,4641,1021,2443,2078,2001, # 2528 -1209, 96, 587,2166,1032, 260,1072,2153, 173, 94, 226,3244, 819,2006,4642,4114, # 2544 -2203, 231,1744, 782, 97,2667, 786,3387, 887, 391, 442,2219,4326,1425,6143,2694, # 2560 - 633,1544,1202, 483,2015, 592,2052,1958,2472,1655, 419, 129,4327,3444,3312,1714, # 2576 -1257,3078,4328,1518,1098, 865,1310,1019,1885,1512,1734, 469,2444, 148, 773, 436, # 2592 -1815,1868,1128,1055,4329,1245,2756,3445,2154,1934,1039,4643, 579,1238, 932,2320, # 2608 - 353, 205, 801, 115,2428, 944,2321,1881, 399,2565,1211, 678, 766,3944, 335,2101, # 2624 -1459,1781,1402,3945,2737,2131,1010, 844, 981,1326,1013, 550,1816,1545,2620,1335, # 2640 -1008, 371,2881, 936,1419,1613,3529,1456,1395,2273,1834,2604,1317,2738,2503, 416, # 2656 -1643,4330, 806,1126, 229, 591,3946,1314,1981,1576,1837,1666, 347,1790, 977,3313, # 2672 - 764,2861,1853, 688,2429,1920,1462, 77, 595, 415,2002,3034, 798,1192,4115,6144, # 2688 -2978,4331,3035,2695,2582,2072,2566, 430,2430,1727, 842,1396,3947,3702, 613, 377, # 2704 - 278, 236,1417,3388,3314,3174, 757,1869, 107,3530,6145,1194, 623,2262, 207,1253, # 2720 -2167,3446,3948, 492,1117,1935, 536,1838,2757,1246,4332, 696,2095,2406,1393,1572, # 2736 -3175,1782, 583, 190, 253,1390,2230, 830,3126,3389, 934,3245,1703,1749,2979,1870, # 2752 -2545,1656,2204, 869,2346,4116,3176,1817, 496,1764,4644, 942,1504, 404,1903,1122, # 2768 -1580,3606,2945,1022, 515, 372,1735, 955,2431,3036,6146,2797,1110,2302,2798, 617, # 2784 -6147, 441, 762,1771,3447,3607,3608,1904, 840,3037, 86, 939,1385, 572,1370,2445, # 2800 -1336, 114,3703, 898, 294, 203,3315, 703,1583,2274, 429, 961,4333,1854,1951,3390, # 2816 -2373,3704,4334,1318,1381, 966,1911,2322,1006,1155, 309, 989, 458,2718,1795,1372, # 2832 -1203, 252,1689,1363,3177, 517,1936, 168,1490, 562, 193,3823,1042,4117,1835, 551, # 2848 - 470,4645, 395, 489,3448,1871,1465,2583,2641, 417,1493, 279,1295, 511,1236,1119, # 2864 - 72,1231,1982,1812,3004, 871,1564, 984,3449,1667,2696,2096,4646,2347,2833,1673, # 2880 -3609, 695,3246,2668, 807,1183,4647, 890, 388,2333,1801,1457,2911,1765,1477,1031, # 2896 -3316,3317,1278,3391,2799,2292,2526, 163,3450,4335,2669,1404,1802,6148,2323,2407, # 2912 -1584,1728,1494,1824,1269, 298, 909,3318,1034,1632, 375, 776,1683,2061, 291, 210, # 2928 -1123, 809,1249,1002,2642,3038, 206,1011,2132, 144, 975, 882,1565, 342, 667, 754, # 2944 -1442,2143,1299,2303,2062, 447, 626,2205,1221,2739,2912,1144,1214,2206,2584, 760, # 2960 -1715, 614, 950,1281,2670,2621, 810, 577,1287,2546,4648, 242,2168, 250,2643, 691, # 2976 - 123,2644, 647, 313,1029, 689,1357,2946,1650, 216, 771,1339,1306, 808,2063, 549, # 2992 - 913,1371,2913,2914,6149,1466,1092,1174,1196,1311,2605,2396,1783,1796,3079, 406, # 3008 -2671,2117,3949,4649, 487,1825,2220,6150,2915, 448,2348,1073,6151,2397,1707, 130, # 3024 - 900,1598, 329, 176,1959,2527,1620,6152,2275,4336,3319,1983,2191,3705,3610,2155, # 3040 -3706,1912,1513,1614,6153,1988, 646, 392,2304,1589,3320,3039,1826,1239,1352,1340, # 3056 -2916, 505,2567,1709,1437,2408,2547, 906,6154,2672, 384,1458,1594,1100,1329, 710, # 3072 - 423,3531,2064,2231,2622,1989,2673,1087,1882, 333, 841,3005,1296,2882,2379, 580, # 3088 -1937,1827,1293,2585, 601, 574, 249,1772,4118,2079,1120, 645, 901,1176,1690, 795, # 3104 -2207, 478,1434, 516,1190,1530, 761,2080, 930,1264, 355, 435,1552, 644,1791, 987, # 3120 - 220,1364,1163,1121,1538, 306,2169,1327,1222, 546,2645, 218, 241, 610,1704,3321, # 3136 -1984,1839,1966,2528, 451,6155,2586,3707,2568, 907,3178, 254,2947, 186,1845,4650, # 3152 - 745, 432,1757, 428,1633, 888,2246,2221,2489,3611,2118,1258,1265, 956,3127,1784, # 3168 -4337,2490, 319, 510, 119, 457,3612, 274,2035,2007,4651,1409,3128, 970,2758, 590, # 3184 -2800, 661,2247,4652,2008,3950,1420,1549,3080,3322,3951,1651,1375,2111, 485,2491, # 3200 -1429,1156,6156,2548,2183,1495, 831,1840,2529,2446, 501,1657, 307,1894,3247,1341, # 3216 - 666, 899,2156,1539,2549,1559, 886, 349,2208,3081,2305,1736,3824,2170,2759,1014, # 3232 -1913,1386, 542,1397,2948, 490, 368, 716, 362, 159, 282,2569,1129,1658,1288,1750, # 3248 -2674, 276, 649,2016, 751,1496, 658,1818,1284,1862,2209,2087,2512,3451, 622,2834, # 3264 - 376, 117,1060,2053,1208,1721,1101,1443, 247,1250,3179,1792,3952,2760,2398,3953, # 3280 -6157,2144,3708, 446,2432,1151,2570,3452,2447,2761,2835,1210,2448,3082, 424,2222, # 3296 -1251,2449,2119,2836, 504,1581,4338, 602, 817, 857,3825,2349,2306, 357,3826,1470, # 3312 -1883,2883, 255, 958, 929,2917,3248, 302,4653,1050,1271,1751,2307,1952,1430,2697, # 3328 -2719,2359, 354,3180, 777, 158,2036,4339,1659,4340,4654,2308,2949,2248,1146,2232, # 3344 -3532,2720,1696,2623,3827,6158,3129,1550,2698,1485,1297,1428, 637, 931,2721,2145, # 3360 - 914,2550,2587, 81,2450, 612, 827,2646,1242,4655,1118,2884, 472,1855,3181,3533, # 3376 -3534, 569,1353,2699,1244,1758,2588,4119,2009,2762,2171,3709,1312,1531,6159,1152, # 3392 -1938, 134,1830, 471,3710,2276,1112,1535,3323,3453,3535, 982,1337,2950, 488, 826, # 3408 - 674,1058,1628,4120,2017, 522,2399, 211, 568,1367,3454, 350, 293,1872,1139,3249, # 3424 -1399,1946,3006,1300,2360,3324, 588, 736,6160,2606, 744, 669,3536,3828,6161,1358, # 3440 - 199, 723, 848, 933, 851,1939,1505,1514,1338,1618,1831,4656,1634,3613, 443,2740, # 3456 -3829, 717,1947, 491,1914,6162,2551,1542,4121,1025,6163,1099,1223, 198,3040,2722, # 3472 - 370, 410,1905,2589, 998,1248,3182,2380, 519,1449,4122,1710, 947, 928,1153,4341, # 3488 -2277, 344,2624,1511, 615, 105, 161,1212,1076,1960,3130,2054,1926,1175,1906,2473, # 3504 - 414,1873,2801,6164,2309, 315,1319,3325, 318,2018,2146,2157, 963, 631, 223,4342, # 3520 -4343,2675, 479,3711,1197,2625,3712,2676,2361,6165,4344,4123,6166,2451,3183,1886, # 3536 -2184,1674,1330,1711,1635,1506, 799, 219,3250,3083,3954,1677,3713,3326,2081,3614, # 3552 -1652,2073,4657,1147,3041,1752, 643,1961, 147,1974,3955,6167,1716,2037, 918,3007, # 3568 -1994, 120,1537, 118, 609,3184,4345, 740,3455,1219, 332,1615,3830,6168,1621,2980, # 3584 -1582, 783, 212, 553,2350,3714,1349,2433,2082,4124, 889,6169,2310,1275,1410, 973, # 3600 - 166,1320,3456,1797,1215,3185,2885,1846,2590,2763,4658, 629, 822,3008, 763, 940, # 3616 -1990,2862, 439,2409,1566,1240,1622, 926,1282,1907,2764, 654,2210,1607, 327,1130, # 3632 -3956,1678,1623,6170,2434,2192, 686, 608,3831,3715, 903,3957,3042,6171,2741,1522, # 3648 -1915,1105,1555,2552,1359, 323,3251,4346,3457, 738,1354,2553,2311,2334,1828,2003, # 3664 -3832,1753,2351,1227,6172,1887,4125,1478,6173,2410,1874,1712,1847, 520,1204,2607, # 3680 - 264,4659, 836,2677,2102, 600,4660,3833,2278,3084,6174,4347,3615,1342, 640, 532, # 3696 - 543,2608,1888,2400,2591,1009,4348,1497, 341,1737,3616,2723,1394, 529,3252,1321, # 3712 - 983,4661,1515,2120, 971,2592, 924, 287,1662,3186,4349,2700,4350,1519, 908,1948, # 3728 -2452, 156, 796,1629,1486,2223,2055, 694,4126,1259,1036,3392,1213,2249,2742,1889, # 3744 -1230,3958,1015, 910, 408, 559,3617,4662, 746, 725, 935,4663,3959,3009,1289, 563, # 3760 - 867,4664,3960,1567,2981,2038,2626, 988,2263,2381,4351, 143,2374, 704,1895,6175, # 3776 -1188,3716,2088, 673,3085,2362,4352, 484,1608,1921,2765,2918, 215, 904,3618,3537, # 3792 - 894, 509, 976,3043,2701,3961,4353,2837,2982, 498,6176,6177,1102,3538,1332,3393, # 3808 -1487,1636,1637, 233, 245,3962, 383, 650, 995,3044, 460,1520,1206,2352, 749,3327, # 3824 - 530, 700, 389,1438,1560,1773,3963,2264, 719,2951,2724,3834, 870,1832,1644,1000, # 3840 - 839,2474,3717, 197,1630,3394, 365,2886,3964,1285,2133, 734, 922, 818,1106, 732, # 3856 - 480,2083,1774,3458, 923,2279,1350, 221,3086, 85,2233,2234,3835,1585,3010,2147, # 3872 -1387,1705,2382,1619,2475, 133, 239,2802,1991,1016,2084,2383, 411,2838,1113, 651, # 3888 -1985,1160,3328, 990,1863,3087,1048,1276,2647, 265,2627,1599,3253,2056, 150, 638, # 3904 -2019, 656, 853, 326,1479, 680,1439,4354,1001,1759, 413,3459,3395,2492,1431, 459, # 3920 -4355,1125,3329,2265,1953,1450,2065,2863, 849, 351,2678,3131,3254,3255,1104,1577, # 3936 - 227,1351,1645,2453,2193,1421,2887, 812,2121, 634, 95,2435, 201,2312,4665,1646, # 3952 -1671,2743,1601,2554,2702,2648,2280,1315,1366,2089,3132,1573,3718,3965,1729,1189, # 3968 - 328,2679,1077,1940,1136, 558,1283, 964,1195, 621,2074,1199,1743,3460,3619,1896, # 3984 -1916,1890,3836,2952,1154,2112,1064, 862, 378,3011,2066,2113,2803,1568,2839,6178, # 4000 -3088,2919,1941,1660,2004,1992,2194, 142, 707,1590,1708,1624,1922,1023,1836,1233, # 4016 -1004,2313, 789, 741,3620,6179,1609,2411,1200,4127,3719,3720,4666,2057,3721, 593, # 4032 -2840, 367,2920,1878,6180,3461,1521, 628,1168, 692,2211,2649, 300, 720,2067,2571, # 4048 -2953,3396, 959,2504,3966,3539,3462,1977, 701,6181, 954,1043, 800, 681, 183,3722, # 4064 -1803,1730,3540,4128,2103, 815,2314, 174, 467, 230,2454,1093,2134, 755,3541,3397, # 4080 -1141,1162,6182,1738,2039, 270,3256,2513,1005,1647,2185,3837, 858,1679,1897,1719, # 4096 -2954,2324,1806, 402, 670, 167,4129,1498,2158,2104, 750,6183, 915, 189,1680,1551, # 4112 - 455,4356,1501,2455, 405,1095,2955, 338,1586,1266,1819, 570, 641,1324, 237,1556, # 4128 -2650,1388,3723,6184,1368,2384,1343,1978,3089,2436, 879,3724, 792,1191, 758,3012, # 4144 -1411,2135,1322,4357, 240,4667,1848,3725,1574,6185, 420,3045,1546,1391, 714,4358, # 4160 -1967, 941,1864, 863, 664, 426, 560,1731,2680,1785,2864,1949,2363, 403,3330,1415, # 4176 -1279,2136,1697,2335, 204, 721,2097,3838, 90,6186,2085,2505, 191,3967, 124,2148, # 4192 -1376,1798,1178,1107,1898,1405, 860,4359,1243,1272,2375,2983,1558,2456,1638, 113, # 4208 -3621, 578,1923,2609, 880, 386,4130, 784,2186,2266,1422,2956,2172,1722, 497, 263, # 4224 -2514,1267,2412,2610, 177,2703,3542, 774,1927,1344, 616,1432,1595,1018, 172,4360, # 4240 -2325, 911,4361, 438,1468,3622, 794,3968,2024,2173,1681,1829,2957, 945, 895,3090, # 4256 - 575,2212,2476, 475,2401,2681, 785,2744,1745,2293,2555,1975,3133,2865, 394,4668, # 4272 -3839, 635,4131, 639, 202,1507,2195,2766,1345,1435,2572,3726,1908,1184,1181,2457, # 4288 -3727,3134,4362, 843,2611, 437, 916,4669, 234, 769,1884,3046,3047,3623, 833,6187, # 4304 -1639,2250,2402,1355,1185,2010,2047, 999, 525,1732,1290,1488,2612, 948,1578,3728, # 4320 -2413,2477,1216,2725,2159, 334,3840,1328,3624,2921,1525,4132, 564,1056, 891,4363, # 4336 -1444,1698,2385,2251,3729,1365,2281,2235,1717,6188, 864,3841,2515, 444, 527,2767, # 4352 -2922,3625, 544, 461,6189, 566, 209,2437,3398,2098,1065,2068,3331,3626,3257,2137, # 4368 #last 512 -) - - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jpcntx.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jpcntx.py deleted file mode 100644 index 624d534..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/jpcntx.py +++ /dev/null @@ -1,233 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - - -# This is hiragana 2-char sequence table, the number in each cell represents its frequency category -jp2CharContext = ( -(0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1), -(2,4,0,4,0,3,0,4,0,3,4,4,4,2,4,3,3,4,3,2,3,3,4,2,3,3,3,2,4,1,4,3,3,1,5,4,3,4,3,4,3,5,3,0,3,5,4,2,0,3,1,0,3,3,0,3,3,0,1,1,0,4,3,0,3,3,0,4,0,2,0,3,5,5,5,5,4,0,4,1,0,3,4), -(0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2), -(0,4,0,5,0,5,0,4,0,4,5,4,4,3,5,3,5,1,5,3,4,3,4,4,3,4,3,3,4,3,5,4,4,3,5,5,3,5,5,5,3,5,5,3,4,5,5,3,1,3,2,0,3,4,0,4,2,0,4,2,1,5,3,2,3,5,0,4,0,2,0,5,4,4,5,4,5,0,4,0,0,4,4), -(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), -(0,3,0,4,0,3,0,3,0,4,5,4,3,3,3,3,4,3,5,4,4,3,5,4,4,3,4,3,4,4,4,4,5,3,4,4,3,4,5,5,4,5,5,1,4,5,4,3,0,3,3,1,3,3,0,4,4,0,3,3,1,5,3,3,3,5,0,4,0,3,0,4,4,3,4,3,3,0,4,1,1,3,4), -(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), -(0,4,0,3,0,3,0,4,0,3,4,4,3,2,2,1,2,1,3,1,3,3,3,3,3,4,3,1,3,3,5,3,3,0,4,3,0,5,4,3,3,5,4,4,3,4,4,5,0,1,2,0,1,2,0,2,2,0,1,0,0,5,2,2,1,4,0,3,0,1,0,4,4,3,5,4,3,0,2,1,0,4,3), -(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), -(0,3,0,5,0,4,0,2,1,4,4,2,4,1,4,2,4,2,4,3,3,3,4,3,3,3,3,1,4,2,3,3,3,1,4,4,1,1,1,4,3,3,2,0,2,4,3,2,0,3,3,0,3,1,1,0,0,0,3,3,0,4,2,2,3,4,0,4,0,3,0,4,4,5,3,4,4,0,3,0,0,1,4), -(1,4,0,4,0,4,0,4,0,3,5,4,4,3,4,3,5,4,3,3,4,3,5,4,4,4,4,3,4,2,4,3,3,1,5,4,3,2,4,5,4,5,5,4,4,5,4,4,0,3,2,2,3,3,0,4,3,1,3,2,1,4,3,3,4,5,0,3,0,2,0,4,5,5,4,5,4,0,4,0,0,5,4), -(0,5,0,5,0,4,0,3,0,4,4,3,4,3,3,3,4,0,4,4,4,3,4,3,4,3,3,1,4,2,4,3,4,0,5,4,1,4,5,4,4,5,3,2,4,3,4,3,2,4,1,3,3,3,2,3,2,0,4,3,3,4,3,3,3,4,0,4,0,3,0,4,5,4,4,4,3,0,4,1,0,1,3), -(0,3,1,4,0,3,0,2,0,3,4,4,3,1,4,2,3,3,4,3,4,3,4,3,4,4,3,2,3,1,5,4,4,1,4,4,3,5,4,4,3,5,5,4,3,4,4,3,1,2,3,1,2,2,0,3,2,0,3,1,0,5,3,3,3,4,3,3,3,3,4,4,4,4,5,4,2,0,3,3,2,4,3), -(0,2,0,3,0,1,0,1,0,0,3,2,0,0,2,0,1,0,2,1,3,3,3,1,2,3,1,0,1,0,4,2,1,1,3,3,0,4,3,3,1,4,3,3,0,3,3,2,0,0,0,0,1,0,0,2,0,0,0,0,0,4,1,0,2,3,2,2,2,1,3,3,3,4,4,3,2,0,3,1,0,3,3), -(0,4,0,4,0,3,0,3,0,4,4,4,3,3,3,3,3,3,4,3,4,2,4,3,4,3,3,2,4,3,4,5,4,1,4,5,3,5,4,5,3,5,4,0,3,5,5,3,1,3,3,2,2,3,0,3,4,1,3,3,2,4,3,3,3,4,0,4,0,3,0,4,5,4,4,5,3,0,4,1,0,3,4), -(0,2,0,3,0,3,0,0,0,2,2,2,1,0,1,0,0,0,3,0,3,0,3,0,1,3,1,0,3,1,3,3,3,1,3,3,3,0,1,3,1,3,4,0,0,3,1,1,0,3,2,0,0,0,0,1,3,0,1,0,0,3,3,2,0,3,0,0,0,0,0,3,4,3,4,3,3,0,3,0,0,2,3), -(2,3,0,3,0,2,0,1,0,3,3,4,3,1,3,1,1,1,3,1,4,3,4,3,3,3,0,0,3,1,5,4,3,1,4,3,2,5,5,4,4,4,4,3,3,4,4,4,0,2,1,1,3,2,0,1,2,0,0,1,0,4,1,3,3,3,0,3,0,1,0,4,4,4,5,5,3,0,2,0,0,4,4), -(0,2,0,1,0,3,1,3,0,2,3,3,3,0,3,1,0,0,3,0,3,2,3,1,3,2,1,1,0,0,4,2,1,0,2,3,1,4,3,2,0,4,4,3,1,3,1,3,0,1,0,0,1,0,0,0,1,0,0,0,0,4,1,1,1,2,0,3,0,0,0,3,4,2,4,3,2,0,1,0,0,3,3), -(0,1,0,4,0,5,0,4,0,2,4,4,2,3,3,2,3,3,5,3,3,3,4,3,4,2,3,0,4,3,3,3,4,1,4,3,2,1,5,5,3,4,5,1,3,5,4,2,0,3,3,0,1,3,0,4,2,0,1,3,1,4,3,3,3,3,0,3,0,1,0,3,4,4,4,5,5,0,3,0,1,4,5), -(0,2,0,3,0,3,0,0,0,2,3,1,3,0,4,0,1,1,3,0,3,4,3,2,3,1,0,3,3,2,3,1,3,0,2,3,0,2,1,4,1,2,2,0,0,3,3,0,0,2,0,0,0,1,0,0,0,0,2,2,0,3,2,1,3,3,0,2,0,2,0,0,3,3,1,2,4,0,3,0,2,2,3), -(2,4,0,5,0,4,0,4,0,2,4,4,4,3,4,3,3,3,1,2,4,3,4,3,4,4,5,0,3,3,3,3,2,0,4,3,1,4,3,4,1,4,4,3,3,4,4,3,1,2,3,0,4,2,0,4,1,0,3,3,0,4,3,3,3,4,0,4,0,2,0,3,5,3,4,5,2,0,3,0,0,4,5), -(0,3,0,4,0,1,0,1,0,1,3,2,2,1,3,0,3,0,2,0,2,0,3,0,2,0,0,0,1,0,1,1,0,0,3,1,0,0,0,4,0,3,1,0,2,1,3,0,0,0,0,0,0,3,0,0,0,0,0,0,0,4,2,2,3,1,0,3,0,0,0,1,4,4,4,3,0,0,4,0,0,1,4), -(1,4,1,5,0,3,0,3,0,4,5,4,4,3,5,3,3,4,4,3,4,1,3,3,3,3,2,1,4,1,5,4,3,1,4,4,3,5,4,4,3,5,4,3,3,4,4,4,0,3,3,1,2,3,0,3,1,0,3,3,0,5,4,4,4,4,4,4,3,3,5,4,4,3,3,5,4,0,3,2,0,4,4), -(0,2,0,3,0,1,0,0,0,1,3,3,3,2,4,1,3,0,3,1,3,0,2,2,1,1,0,0,2,0,4,3,1,0,4,3,0,4,4,4,1,4,3,1,1,3,3,1,0,2,0,0,1,3,0,0,0,0,2,0,0,4,3,2,4,3,5,4,3,3,3,4,3,3,4,3,3,0,2,1,0,3,3), -(0,2,0,4,0,3,0,2,0,2,5,5,3,4,4,4,4,1,4,3,3,0,4,3,4,3,1,3,3,2,4,3,0,3,4,3,0,3,4,4,2,4,4,0,4,5,3,3,2,2,1,1,1,2,0,1,5,0,3,3,2,4,3,3,3,4,0,3,0,2,0,4,4,3,5,5,0,0,3,0,2,3,3), -(0,3,0,4,0,3,0,1,0,3,4,3,3,1,3,3,3,0,3,1,3,0,4,3,3,1,1,0,3,0,3,3,0,0,4,4,0,1,5,4,3,3,5,0,3,3,4,3,0,2,0,1,1,1,0,1,3,0,1,2,1,3,3,2,3,3,0,3,0,1,0,1,3,3,4,4,1,0,1,2,2,1,3), -(0,1,0,4,0,4,0,3,0,1,3,3,3,2,3,1,1,0,3,0,3,3,4,3,2,4,2,0,1,0,4,3,2,0,4,3,0,5,3,3,2,4,4,4,3,3,3,4,0,1,3,0,0,1,0,0,1,0,0,0,0,4,2,3,3,3,0,3,0,0,0,4,4,4,5,3,2,0,3,3,0,3,5), -(0,2,0,3,0,0,0,3,0,1,3,0,2,0,0,0,1,0,3,1,1,3,3,0,0,3,0,0,3,0,2,3,1,0,3,1,0,3,3,2,0,4,2,2,0,2,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,2,1,2,0,1,0,1,0,0,0,1,3,1,2,0,0,0,1,0,0,1,4), -(0,3,0,3,0,5,0,1,0,2,4,3,1,3,3,2,1,1,5,2,1,0,5,1,2,0,0,0,3,3,2,2,3,2,4,3,0,0,3,3,1,3,3,0,2,5,3,4,0,3,3,0,1,2,0,2,2,0,3,2,0,2,2,3,3,3,0,2,0,1,0,3,4,4,2,5,4,0,3,0,0,3,5), -(0,3,0,3,0,3,0,1,0,3,3,3,3,0,3,0,2,0,2,1,1,0,2,0,1,0,0,0,2,1,0,0,1,0,3,2,0,0,3,3,1,2,3,1,0,3,3,0,0,1,0,0,0,0,0,2,0,0,0,0,0,2,3,1,2,3,0,3,0,1,0,3,2,1,0,4,3,0,1,1,0,3,3), -(0,4,0,5,0,3,0,3,0,4,5,5,4,3,5,3,4,3,5,3,3,2,5,3,4,4,4,3,4,3,4,5,5,3,4,4,3,4,4,5,4,4,4,3,4,5,5,4,2,3,4,2,3,4,0,3,3,1,4,3,2,4,3,3,5,5,0,3,0,3,0,5,5,5,5,4,4,0,4,0,1,4,4), -(0,4,0,4,0,3,0,3,0,3,5,4,4,2,3,2,5,1,3,2,5,1,4,2,3,2,3,3,4,3,3,3,3,2,5,4,1,3,3,5,3,4,4,0,4,4,3,1,1,3,1,0,2,3,0,2,3,0,3,0,0,4,3,1,3,4,0,3,0,2,0,4,4,4,3,4,5,0,4,0,0,3,4), -(0,3,0,3,0,3,1,2,0,3,4,4,3,3,3,0,2,2,4,3,3,1,3,3,3,1,1,0,3,1,4,3,2,3,4,4,2,4,4,4,3,4,4,3,2,4,4,3,1,3,3,1,3,3,0,4,1,0,2,2,1,4,3,2,3,3,5,4,3,3,5,4,4,3,3,0,4,0,3,2,2,4,4), -(0,2,0,1,0,0,0,0,0,1,2,1,3,0,0,0,0,0,2,0,1,2,1,0,0,1,0,0,0,0,3,0,0,1,0,1,1,3,1,0,0,0,1,1,0,1,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,1,1,2,2,0,3,4,0,0,0,1,1,0,0,1,0,0,0,0,0,1,1), -(0,1,0,0,0,1,0,0,0,0,4,0,4,1,4,0,3,0,4,0,3,0,4,0,3,0,3,0,4,1,5,1,4,0,0,3,0,5,0,5,2,0,1,0,0,0,2,1,4,0,1,3,0,0,3,0,0,3,1,1,4,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0), -(1,4,0,5,0,3,0,2,0,3,5,4,4,3,4,3,5,3,4,3,3,0,4,3,3,3,3,3,3,2,4,4,3,1,3,4,4,5,4,4,3,4,4,1,3,5,4,3,3,3,1,2,2,3,3,1,3,1,3,3,3,5,3,3,4,5,0,3,0,3,0,3,4,3,4,4,3,0,3,0,2,4,3), -(0,1,0,4,0,0,0,0,0,1,4,0,4,1,4,2,4,0,3,0,1,0,1,0,0,0,0,0,2,0,3,1,1,1,0,3,0,0,0,1,2,1,0,0,1,1,1,1,0,1,0,0,0,1,0,0,3,0,0,0,0,3,2,0,2,2,0,1,0,0,0,2,3,2,3,3,0,0,0,0,2,1,0), -(0,5,1,5,0,3,0,3,0,5,4,4,5,1,5,3,3,0,4,3,4,3,5,3,4,3,3,2,4,3,4,3,3,0,3,3,1,4,4,3,4,4,4,3,4,5,5,3,2,3,1,1,3,3,1,3,1,1,3,3,2,4,5,3,3,5,0,4,0,3,0,4,4,3,5,3,3,0,3,4,0,4,3), -(0,5,0,5,0,3,0,2,0,4,4,3,5,2,4,3,3,3,4,4,4,3,5,3,5,3,3,1,4,0,4,3,3,0,3,3,0,4,4,4,4,5,4,3,3,5,5,3,2,3,1,2,3,2,0,1,0,0,3,2,2,4,4,3,1,5,0,4,0,3,0,4,3,1,3,2,1,0,3,3,0,3,3), -(0,4,0,5,0,5,0,4,0,4,5,5,5,3,4,3,3,2,5,4,4,3,5,3,5,3,4,0,4,3,4,4,3,2,4,4,3,4,5,4,4,5,5,0,3,5,5,4,1,3,3,2,3,3,1,3,1,0,4,3,1,4,4,3,4,5,0,4,0,2,0,4,3,4,4,3,3,0,4,0,0,5,5), -(0,4,0,4,0,5,0,1,1,3,3,4,4,3,4,1,3,0,5,1,3,0,3,1,3,1,1,0,3,0,3,3,4,0,4,3,0,4,4,4,3,4,4,0,3,5,4,1,0,3,0,0,2,3,0,3,1,0,3,1,0,3,2,1,3,5,0,3,0,1,0,3,2,3,3,4,4,0,2,2,0,4,4), -(2,4,0,5,0,4,0,3,0,4,5,5,4,3,5,3,5,3,5,3,5,2,5,3,4,3,3,4,3,4,5,3,2,1,5,4,3,2,3,4,5,3,4,1,2,5,4,3,0,3,3,0,3,2,0,2,3,0,4,1,0,3,4,3,3,5,0,3,0,1,0,4,5,5,5,4,3,0,4,2,0,3,5), -(0,5,0,4,0,4,0,2,0,5,4,3,4,3,4,3,3,3,4,3,4,2,5,3,5,3,4,1,4,3,4,4,4,0,3,5,0,4,4,4,4,5,3,1,3,4,5,3,3,3,3,3,3,3,0,2,2,0,3,3,2,4,3,3,3,5,3,4,1,3,3,5,3,2,0,0,0,0,4,3,1,3,3), -(0,1,0,3,0,3,0,1,0,1,3,3,3,2,3,3,3,0,3,0,0,0,3,1,3,0,0,0,2,2,2,3,0,0,3,2,0,1,2,4,1,3,3,0,0,3,3,3,0,1,0,0,2,1,0,0,3,0,3,1,0,3,0,0,1,3,0,2,0,1,0,3,3,1,3,3,0,0,1,1,0,3,3), -(0,2,0,3,0,2,1,4,0,2,2,3,1,1,3,1,1,0,2,0,3,1,2,3,1,3,0,0,1,0,4,3,2,3,3,3,1,4,2,3,3,3,3,1,0,3,1,4,0,1,1,0,1,2,0,1,1,0,1,1,0,3,1,3,2,2,0,1,0,0,0,2,3,3,3,1,0,0,0,0,0,2,3), -(0,5,0,4,0,5,0,2,0,4,5,5,3,3,4,3,3,1,5,4,4,2,4,4,4,3,4,2,4,3,5,5,4,3,3,4,3,3,5,5,4,5,5,1,3,4,5,3,1,4,3,1,3,3,0,3,3,1,4,3,1,4,5,3,3,5,0,4,0,3,0,5,3,3,1,4,3,0,4,0,1,5,3), -(0,5,0,5,0,4,0,2,0,4,4,3,4,3,3,3,3,3,5,4,4,4,4,4,4,5,3,3,5,2,4,4,4,3,4,4,3,3,4,4,5,5,3,3,4,3,4,3,3,4,3,3,3,3,1,2,2,1,4,3,3,5,4,4,3,4,0,4,0,3,0,4,4,4,4,4,1,0,4,2,0,2,4), -(0,4,0,4,0,3,0,1,0,3,5,2,3,0,3,0,2,1,4,2,3,3,4,1,4,3,3,2,4,1,3,3,3,0,3,3,0,0,3,3,3,5,3,3,3,3,3,2,0,2,0,0,2,0,0,2,0,0,1,0,0,3,1,2,2,3,0,3,0,2,0,4,4,3,3,4,1,0,3,0,0,2,4), -(0,0,0,4,0,0,0,0,0,0,1,0,1,0,2,0,0,0,0,0,1,0,2,0,1,0,0,0,0,0,3,1,3,0,3,2,0,0,0,1,0,3,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,2,0,0,0,0,0,0,2), -(0,2,1,3,0,2,0,2,0,3,3,3,3,1,3,1,3,3,3,3,3,3,4,2,2,1,2,1,4,0,4,3,1,3,3,3,2,4,3,5,4,3,3,3,3,3,3,3,0,1,3,0,2,0,0,1,0,0,1,0,0,4,2,0,2,3,0,3,3,0,3,3,4,2,3,1,4,0,1,2,0,2,3), -(0,3,0,3,0,1,0,3,0,2,3,3,3,0,3,1,2,0,3,3,2,3,3,2,3,2,3,1,3,0,4,3,2,0,3,3,1,4,3,3,2,3,4,3,1,3,3,1,1,0,1,1,0,1,0,1,0,1,0,0,0,4,1,1,0,3,0,3,1,0,2,3,3,3,3,3,1,0,0,2,0,3,3), -(0,0,0,0,0,0,0,0,0,0,3,0,2,0,3,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,3,0,3,0,3,1,0,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,2,0,2,3,0,0,0,0,0,0,0,0,3), -(0,2,0,3,1,3,0,3,0,2,3,3,3,1,3,1,3,1,3,1,3,3,3,1,3,0,2,3,1,1,4,3,3,2,3,3,1,2,2,4,1,3,3,0,1,4,2,3,0,1,3,0,3,0,0,1,3,0,2,0,0,3,3,2,1,3,0,3,0,2,0,3,4,4,4,3,1,0,3,0,0,3,3), -(0,2,0,1,0,2,0,0,0,1,3,2,2,1,3,0,1,1,3,0,3,2,3,1,2,0,2,0,1,1,3,3,3,0,3,3,1,1,2,3,2,3,3,1,2,3,2,0,0,1,0,0,0,0,0,0,3,0,1,0,0,2,1,2,1,3,0,3,0,0,0,3,4,4,4,3,2,0,2,0,0,2,4), -(0,0,0,1,0,1,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,2,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,1,0,0,0,0,0,0,0,3), -(0,3,0,3,0,2,0,3,0,3,3,3,2,3,2,2,2,0,3,1,3,3,3,2,3,3,0,0,3,0,3,2,2,0,2,3,1,4,3,4,3,3,2,3,1,5,4,4,0,3,1,2,1,3,0,3,1,1,2,0,2,3,1,3,1,3,0,3,0,1,0,3,3,4,4,2,1,0,2,1,0,2,4), -(0,1,0,3,0,1,0,2,0,1,4,2,5,1,4,0,2,0,2,1,3,1,4,0,2,1,0,0,2,1,4,1,1,0,3,3,0,5,1,3,2,3,3,1,0,3,2,3,0,1,0,0,0,0,0,0,1,0,0,0,0,4,0,1,0,3,0,2,0,1,0,3,3,3,4,3,3,0,0,0,0,2,3), -(0,0,0,1,0,0,0,0,0,0,2,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,1,0,0,0,0,0,3), -(0,1,0,3,0,4,0,3,0,2,4,3,1,0,3,2,2,1,3,1,2,2,3,1,1,1,2,1,3,0,1,2,0,1,3,2,1,3,0,5,5,1,0,0,1,3,2,1,0,3,0,0,1,0,0,0,0,0,3,4,0,1,1,1,3,2,0,2,0,1,0,2,3,3,1,2,3,0,1,0,1,0,4), -(0,0,0,1,0,3,0,3,0,2,2,1,0,0,4,0,3,0,3,1,3,0,3,0,3,0,1,0,3,0,3,1,3,0,3,3,0,0,1,2,1,1,1,0,1,2,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,2,2,1,2,0,0,2,0,0,0,0,2,3,3,3,3,0,0,0,0,1,4), -(0,0,0,3,0,3,0,0,0,0,3,1,1,0,3,0,1,0,2,0,1,0,0,0,0,0,0,0,1,0,3,0,2,0,2,3,0,0,2,2,3,1,2,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,2,0,0,0,0,2,3), -(2,4,0,5,0,5,0,4,0,3,4,3,3,3,4,3,3,3,4,3,4,4,5,4,5,5,5,2,3,0,5,5,4,1,5,4,3,1,5,4,3,4,4,3,3,4,3,3,0,3,2,0,2,3,0,3,0,0,3,3,0,5,3,2,3,3,0,3,0,3,0,3,4,5,4,5,3,0,4,3,0,3,4), -(0,3,0,3,0,3,0,3,0,3,3,4,3,2,3,2,3,0,4,3,3,3,3,3,3,3,3,0,3,2,4,3,3,1,3,4,3,4,4,4,3,4,4,3,2,4,4,1,0,2,0,0,1,1,0,2,0,0,3,1,0,5,3,2,1,3,0,3,0,1,2,4,3,2,4,3,3,0,3,2,0,4,4), -(0,3,0,3,0,1,0,0,0,1,4,3,3,2,3,1,3,1,4,2,3,2,4,2,3,4,3,0,2,2,3,3,3,0,3,3,3,0,3,4,1,3,3,0,3,4,3,3,0,1,1,0,1,0,0,0,4,0,3,0,0,3,1,2,1,3,0,4,0,1,0,4,3,3,4,3,3,0,2,0,0,3,3), -(0,3,0,4,0,1,0,3,0,3,4,3,3,0,3,3,3,1,3,1,3,3,4,3,3,3,0,0,3,1,5,3,3,1,3,3,2,5,4,3,3,4,5,3,2,5,3,4,0,1,0,0,0,0,0,2,0,0,1,1,0,4,2,2,1,3,0,3,0,2,0,4,4,3,5,3,2,0,1,1,0,3,4), -(0,5,0,4,0,5,0,2,0,4,4,3,3,2,3,3,3,1,4,3,4,1,5,3,4,3,4,0,4,2,4,3,4,1,5,4,0,4,4,4,4,5,4,1,3,5,4,2,1,4,1,1,3,2,0,3,1,0,3,2,1,4,3,3,3,4,0,4,0,3,0,4,4,4,3,3,3,0,4,2,0,3,4), -(1,4,0,4,0,3,0,1,0,3,3,3,1,1,3,3,2,2,3,3,1,0,3,2,2,1,2,0,3,1,2,1,2,0,3,2,0,2,2,3,3,4,3,0,3,3,1,2,0,1,1,3,1,2,0,0,3,0,1,1,0,3,2,2,3,3,0,3,0,0,0,2,3,3,4,3,3,0,1,0,0,1,4), -(0,4,0,4,0,4,0,0,0,3,4,4,3,1,4,2,3,2,3,3,3,1,4,3,4,0,3,0,4,2,3,3,2,2,5,4,2,1,3,4,3,4,3,1,3,3,4,2,0,2,1,0,3,3,0,0,2,0,3,1,0,4,4,3,4,3,0,4,0,1,0,2,4,4,4,4,4,0,3,2,0,3,3), -(0,0,0,1,0,4,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,3,2,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2), -(0,2,0,3,0,4,0,4,0,1,3,3,3,0,4,0,2,1,2,1,1,1,2,0,3,1,1,0,1,0,3,1,0,0,3,3,2,0,1,1,0,0,0,0,0,1,0,2,0,2,2,0,3,1,0,0,1,0,1,1,0,1,2,0,3,0,0,0,0,1,0,0,3,3,4,3,1,0,1,0,3,0,2), -(0,0,0,3,0,5,0,0,0,0,1,0,2,0,3,1,0,1,3,0,0,0,2,0,0,0,1,0,0,0,1,1,0,0,4,0,0,0,2,3,0,1,4,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,3,0,0,0,0,0,3), -(0,2,0,5,0,5,0,1,0,2,4,3,3,2,5,1,3,2,3,3,3,0,4,1,2,0,3,0,4,0,2,2,1,1,5,3,0,0,1,4,2,3,2,0,3,3,3,2,0,2,4,1,1,2,0,1,1,0,3,1,0,1,3,1,2,3,0,2,0,0,0,1,3,5,4,4,4,0,3,0,0,1,3), -(0,4,0,5,0,4,0,4,0,4,5,4,3,3,4,3,3,3,4,3,4,4,5,3,4,5,4,2,4,2,3,4,3,1,4,4,1,3,5,4,4,5,5,4,4,5,5,5,2,3,3,1,4,3,1,3,3,0,3,3,1,4,3,4,4,4,0,3,0,4,0,3,3,4,4,5,0,0,4,3,0,4,5), -(0,4,0,4,0,3,0,3,0,3,4,4,4,3,3,2,4,3,4,3,4,3,5,3,4,3,2,1,4,2,4,4,3,1,3,4,2,4,5,5,3,4,5,4,1,5,4,3,0,3,2,2,3,2,1,3,1,0,3,3,3,5,3,3,3,5,4,4,2,3,3,4,3,3,3,2,1,0,3,2,1,4,3), -(0,4,0,5,0,4,0,3,0,3,5,5,3,2,4,3,4,0,5,4,4,1,4,4,4,3,3,3,4,3,5,5,2,3,3,4,1,2,5,5,3,5,5,2,3,5,5,4,0,3,2,0,3,3,1,1,5,1,4,1,0,4,3,2,3,5,0,4,0,3,0,5,4,3,4,3,0,0,4,1,0,4,4), -(1,3,0,4,0,2,0,2,0,2,5,5,3,3,3,3,3,0,4,2,3,4,4,4,3,4,0,0,3,4,5,4,3,3,3,3,2,5,5,4,5,5,5,4,3,5,5,5,1,3,1,0,1,0,0,3,2,0,4,2,0,5,2,3,2,4,1,3,0,3,0,4,5,4,5,4,3,0,4,2,0,5,4), -(0,3,0,4,0,5,0,3,0,3,4,4,3,2,3,2,3,3,3,3,3,2,4,3,3,2,2,0,3,3,3,3,3,1,3,3,3,0,4,4,3,4,4,1,1,4,4,2,0,3,1,0,1,1,0,4,1,0,2,3,1,3,3,1,3,4,0,3,0,1,0,3,1,3,0,0,1,0,2,0,0,4,4), -(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), -(0,3,0,3,0,2,0,3,0,1,5,4,3,3,3,1,4,2,1,2,3,4,4,2,4,4,5,0,3,1,4,3,4,0,4,3,3,3,2,3,2,5,3,4,3,2,2,3,0,0,3,0,2,1,0,1,2,0,0,0,0,2,1,1,3,1,0,2,0,4,0,3,4,4,4,5,2,0,2,0,0,1,3), -(0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,4,2,1,1,0,1,0,3,2,0,0,3,1,1,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,1,0,0,0,2,0,0,0,1,4,0,4,2,1,0,0,0,0,0,1), -(0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,3,1,0,0,0,2,0,2,1,0,0,1,2,1,0,1,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,0,0,0,1,0,0,2,1,0,0,0,0,0,0,0,0,2), -(0,4,0,4,0,4,0,3,0,4,4,3,4,2,4,3,2,0,4,4,4,3,5,3,5,3,3,2,4,2,4,3,4,3,1,4,0,2,3,4,4,4,3,3,3,4,4,4,3,4,1,3,4,3,2,1,2,1,3,3,3,4,4,3,3,5,0,4,0,3,0,4,3,3,3,2,1,0,3,0,0,3,3), -(0,4,0,3,0,3,0,3,0,3,5,5,3,3,3,3,4,3,4,3,3,3,4,4,4,3,3,3,3,4,3,5,3,3,1,3,2,4,5,5,5,5,4,3,4,5,5,3,2,2,3,3,3,3,2,3,3,1,2,3,2,4,3,3,3,4,0,4,0,2,0,4,3,2,2,1,2,0,3,0,0,4,1), -) - -class JapaneseContextAnalysis(object): - NUM_OF_CATEGORY = 6 - DONT_KNOW = -1 - ENOUGH_REL_THRESHOLD = 100 - MAX_REL_THRESHOLD = 1000 - MINIMUM_DATA_THRESHOLD = 4 - - def __init__(self): - self._total_rel = None - self._rel_sample = None - self._need_to_skip_char_num = None - self._last_char_order = None - self._done = None - self.reset() - - def reset(self): - self._total_rel = 0 # total sequence received - # category counters, each integer counts sequence in its category - self._rel_sample = [0] * self.NUM_OF_CATEGORY - # if last byte in current buffer is not the last byte of a character, - # we need to know how many bytes to skip in next buffer - self._need_to_skip_char_num = 0 - self._last_char_order = -1 # The order of previous char - # If this flag is set to True, detection is done and conclusion has - # been made - self._done = False - - def feed(self, byte_str, num_bytes): - if self._done: - return - - # The buffer we got is byte oriented, and a character may span in more than one - # buffers. In case the last one or two byte in last buffer is not - # complete, we record how many byte needed to complete that character - # and skip these bytes here. We can choose to record those bytes as - # well and analyse the character once it is complete, but since a - # character will not make much difference, by simply skipping - # this character will simply our logic and improve performance. - i = self._need_to_skip_char_num - while i < num_bytes: - order, char_len = self.get_order(byte_str[i:i + 2]) - i += char_len - if i > num_bytes: - self._need_to_skip_char_num = i - num_bytes - self._last_char_order = -1 - else: - if (order != -1) and (self._last_char_order != -1): - self._total_rel += 1 - if self._total_rel > self.MAX_REL_THRESHOLD: - self._done = True - break - self._rel_sample[jp2CharContext[self._last_char_order][order]] += 1 - self._last_char_order = order - - def got_enough_data(self): - return self._total_rel > self.ENOUGH_REL_THRESHOLD - - def get_confidence(self): - # This is just one way to calculate confidence. It works well for me. - if self._total_rel > self.MINIMUM_DATA_THRESHOLD: - return (self._total_rel - self._rel_sample[0]) / self._total_rel - else: - return self.DONT_KNOW - - def get_order(self, byte_str): - return -1, 1 - -class SJISContextAnalysis(JapaneseContextAnalysis): - def __init__(self): - super(SJISContextAnalysis, self).__init__() - self._charset_name = "SHIFT_JIS" - - @property - def charset_name(self): - return self._charset_name - - def get_order(self, byte_str): - if not byte_str: - return -1, 1 - # find out current char's byte length - first_char = byte_str[0] - if (0x81 <= first_char <= 0x9F) or (0xE0 <= first_char <= 0xFC): - char_len = 2 - if (first_char == 0x87) or (0xFA <= first_char <= 0xFC): - self._charset_name = "CP932" - else: - char_len = 1 - - # return its order if it is hiragana - if len(byte_str) > 1: - second_char = byte_str[1] - if (first_char == 202) and (0x9F <= second_char <= 0xF1): - return second_char - 0x9F, char_len - - return -1, char_len - -class EUCJPContextAnalysis(JapaneseContextAnalysis): - def get_order(self, byte_str): - if not byte_str: - return -1, 1 - # find out current char's byte length - first_char = byte_str[0] - if (first_char == 0x8E) or (0xA1 <= first_char <= 0xFE): - char_len = 2 - elif first_char == 0x8F: - char_len = 3 - else: - char_len = 1 - - # return its order if it is hiragana - if len(byte_str) > 1: - second_char = byte_str[1] - if (first_char == 0xA4) and (0xA1 <= second_char <= 0xF3): - return second_char - 0xA1, char_len - - return -1, char_len - - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langbulgarianmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langbulgarianmodel.py deleted file mode 100644 index eb6f19a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langbulgarianmodel.py +++ /dev/null @@ -1,228 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# Character Mapping Table: -# this table is modified base on win1251BulgarianCharToOrderMap, so -# only number <64 is sure valid - -Latin5_BulgarianCharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 77, 90, 99,100, 72,109,107,101, 79,185, 81,102, 76, 94, 82, # 40 -110,186,108, 91, 74,119, 84, 96,111,187,115,253,253,253,253,253, # 50 -253, 65, 69, 70, 66, 63, 68,112,103, 92,194,104, 95, 86, 87, 71, # 60 -116,195, 85, 93, 97,113,196,197,198,199,200,253,253,253,253,253, # 70 -194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209, # 80 -210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225, # 90 - 81,226,227,228,229,230,105,231,232,233,234,235,236, 45,237,238, # a0 - 31, 32, 35, 43, 37, 44, 55, 47, 40, 59, 33, 46, 38, 36, 41, 30, # b0 - 39, 28, 34, 51, 48, 49, 53, 50, 54, 57, 61,239, 67,240, 60, 56, # c0 - 1, 18, 9, 20, 11, 3, 23, 15, 2, 26, 12, 10, 14, 6, 4, 13, # d0 - 7, 8, 5, 19, 29, 25, 22, 21, 27, 24, 17, 75, 52,241, 42, 16, # e0 - 62,242,243,244, 58,245, 98,246,247,248,249,250,251, 91,252,253, # f0 -) - -win1251BulgarianCharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 77, 90, 99,100, 72,109,107,101, 79,185, 81,102, 76, 94, 82, # 40 -110,186,108, 91, 74,119, 84, 96,111,187,115,253,253,253,253,253, # 50 -253, 65, 69, 70, 66, 63, 68,112,103, 92,194,104, 95, 86, 87, 71, # 60 -116,195, 85, 93, 97,113,196,197,198,199,200,253,253,253,253,253, # 70 -206,207,208,209,210,211,212,213,120,214,215,216,217,218,219,220, # 80 -221, 78, 64, 83,121, 98,117,105,222,223,224,225,226,227,228,229, # 90 - 88,230,231,232,233,122, 89,106,234,235,236,237,238, 45,239,240, # a0 - 73, 80,118,114,241,242,243,244,245, 62, 58,246,247,248,249,250, # b0 - 31, 32, 35, 43, 37, 44, 55, 47, 40, 59, 33, 46, 38, 36, 41, 30, # c0 - 39, 28, 34, 51, 48, 49, 53, 50, 54, 57, 61,251, 67,252, 60, 56, # d0 - 1, 18, 9, 20, 11, 3, 23, 15, 2, 26, 12, 10, 14, 6, 4, 13, # e0 - 7, 8, 5, 19, 29, 25, 22, 21, 27, 24, 17, 75, 52,253, 42, 16, # f0 -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 96.9392% -# first 1024 sequences:3.0618% -# rest sequences: 0.2992% -# negative sequences: 0.0020% -BulgarianLangModel = ( -0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,2,3,3,3,3,3, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,2,2,3,2,2,1,2,2, -3,1,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,0,3,0,1, -0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,2,3,3,3,3,3,3,3,3,0,3,1,0, -0,1,0,0,0,0,0,0,0,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,2,3,3,3,3,3,3,3,3,0,3,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,1,3,2,3,3,3,3,3,3,3,3,0,3,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,2,3,2,2,1,3,3,3,3,2,2,2,1,1,2,0,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,2,3,2,2,3,3,1,1,2,3,3,2,3,3,3,3,2,1,2,0,2,0,3,0,0, -0,0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,1,3,3,3,3,3,2,3,2,3,3,3,3,3,2,3,3,1,3,0,3,0,2,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,3,1,3,3,2,3,3,3,1,3,3,2,3,2,2,2,0,0,2,0,2,0,2,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,3,3,0,3,3,3,2,2,3,3,3,1,2,2,3,2,1,1,2,0,2,0,0,0,0, -1,0,0,0,0,0,0,0,0,0,2,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,2,3,3,1,2,3,2,2,2,3,3,3,3,3,2,2,3,1,2,0,2,1,2,0,0, -0,0,0,0,0,0,0,0,0,0,3,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,1,3,3,3,3,3,2,3,3,3,2,3,3,2,3,2,2,2,3,1,2,0,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,3,3,3,3,1,1,1,2,2,1,3,1,3,2,2,3,0,0,1,0,1,0,1,0,0, -0,0,0,1,0,0,0,0,1,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,2,2,3,2,2,3,1,2,1,1,1,2,3,1,3,1,2,2,0,1,1,1,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,1,3,2,2,3,3,1,2,3,1,1,3,3,3,3,1,2,2,1,1,1,0,2,0,2,0,1, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,2,2,3,3,3,2,2,1,1,2,0,2,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,0,1,2,1,3,3,2,3,3,3,3,3,2,3,2,1,0,3,1,2,1,2,1,2,3,2,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,1,1,2,3,3,3,3,3,3,3,3,3,3,3,3,0,0,3,1,3,3,2,3,3,2,2,2,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,3,0,3,3,3,3,3,2,1,1,2,1,3,3,0,3,1,1,1,1,3,2,0,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,2,2,2,3,3,3,3,3,3,3,3,3,3,3,1,1,3,1,3,3,2,3,2,2,2,3,0,2,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,2,3,3,2,2,3,2,1,1,1,1,1,3,1,3,1,1,0,0,0,1,0,0,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,2,3,2,0,3,2,0,3,0,2,0,0,2,1,3,1,0,0,1,0,0,0,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,2,1,1,1,1,2,1,1,2,1,1,1,2,2,1,2,1,1,1,0,1,1,0,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,2,1,3,1,1,2,1,3,2,1,1,0,1,2,3,2,1,1,1,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,3,2,2,1,0,1,0,0,1,0,0,0,2,1,0,3,0,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,2,3,2,3,3,1,3,2,1,1,1,2,1,1,2,1,3,0,1,0,0,0,1,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,1,2,2,3,3,2,3,2,2,2,3,1,2,2,1,1,2,1,1,2,2,0,1,1,0,1,0,2,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,2,1,3,1,0,2,2,1,3,2,1,0,0,2,0,2,0,1,0,0,0,0,0,0,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,3,1,2,0,2,3,1,2,3,2,0,1,3,1,2,1,1,1,0,0,1,0,0,2,2,2,3, -2,2,2,2,1,2,1,1,2,2,1,1,2,0,1,1,1,0,0,1,1,0,0,1,1,0,0,0,1,1,0,1, -3,3,3,3,3,2,1,2,2,1,2,0,2,0,1,0,1,2,1,2,1,1,0,0,0,1,0,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1, -3,3,2,3,3,1,1,3,1,0,3,2,1,0,0,0,1,2,0,2,0,1,0,0,0,1,0,1,2,1,2,2, -1,1,1,1,1,1,1,2,2,2,1,1,1,1,1,1,1,0,1,2,1,1,1,0,0,0,0,0,1,1,0,0, -3,1,0,1,0,2,3,2,2,2,3,2,2,2,2,2,1,0,2,1,2,1,1,1,0,1,2,1,2,2,2,1, -1,1,2,2,2,2,1,2,1,1,0,1,2,1,2,2,2,1,1,1,0,1,1,1,1,2,0,1,0,0,0,0, -2,3,2,3,3,0,0,2,1,0,2,1,0,0,0,0,2,3,0,2,0,0,0,0,0,1,0,0,2,0,1,2, -2,1,2,1,2,2,1,1,1,2,1,1,1,0,1,2,2,1,1,1,1,1,0,1,1,1,0,0,1,2,0,0, -3,3,2,2,3,0,2,3,1,1,2,0,0,0,1,0,0,2,0,2,0,0,0,1,0,1,0,1,2,0,2,2, -1,1,1,1,2,1,0,1,2,2,2,1,1,1,1,1,1,1,0,1,1,1,0,0,0,0,0,0,1,1,0,0, -2,3,2,3,3,0,0,3,0,1,1,0,1,0,0,0,2,2,1,2,0,0,0,0,0,0,0,0,2,0,1,2, -2,2,1,1,1,1,1,2,2,2,1,0,2,0,1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,1,0,0, -3,3,3,3,2,2,2,2,2,0,2,1,1,1,1,2,1,2,1,1,0,2,0,1,0,1,0,0,2,0,1,2, -1,1,1,1,1,1,1,2,2,1,1,0,2,0,1,0,2,0,0,1,1,1,0,0,2,0,0,0,1,1,0,0, -2,3,3,3,3,1,0,0,0,0,0,0,0,0,0,0,2,0,0,1,1,0,0,0,0,0,0,1,2,0,1,2, -2,2,2,1,1,2,1,1,2,2,2,1,2,0,1,1,1,1,1,1,0,1,1,1,1,0,0,1,1,1,0,0, -2,3,3,3,3,0,2,2,0,2,1,0,0,0,1,1,1,2,0,2,0,0,0,3,0,0,0,0,2,0,2,2, -1,1,1,2,1,2,1,1,2,2,2,1,2,0,1,1,1,0,1,1,1,1,0,2,1,0,0,0,1,1,0,0, -2,3,3,3,3,0,2,1,0,0,2,0,0,0,0,0,1,2,0,2,0,0,0,0,0,0,0,0,2,0,1,2, -1,1,1,2,1,1,1,1,2,2,2,0,1,0,1,1,1,0,0,1,1,1,0,0,1,0,0,0,0,1,0,0, -3,3,2,2,3,0,1,0,1,0,0,0,0,0,0,0,1,1,0,3,0,0,0,0,0,0,0,0,1,0,2,2, -1,1,1,1,1,2,1,1,2,2,1,2,2,1,0,1,1,1,1,1,0,1,0,0,1,0,0,0,1,1,0,0, -3,1,0,1,0,2,2,2,2,3,2,1,1,1,2,3,0,0,1,0,2,1,1,0,1,1,1,1,2,1,1,1, -1,2,2,1,2,1,2,2,1,1,0,1,2,1,2,2,1,1,1,0,0,1,1,1,2,1,0,1,0,0,0,0, -2,1,0,1,0,3,1,2,2,2,2,1,2,2,1,1,1,0,2,1,2,2,1,1,2,1,1,0,2,1,1,1, -1,2,2,2,2,2,2,2,1,2,0,1,1,0,2,1,1,1,1,1,0,0,1,1,1,1,0,1,0,0,0,0, -2,1,1,1,1,2,2,2,2,1,2,2,2,1,2,2,1,1,2,1,2,3,2,2,1,1,1,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,3,2,0,1,2,0,1,2,1,1,0,1,0,1,2,1,2,0,0,0,1,1,0,0,0,1,0,0,2, -1,1,0,0,1,1,0,1,1,1,1,0,2,0,1,1,1,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0, -2,0,0,0,0,1,2,2,2,2,2,2,2,1,2,1,1,1,1,1,1,1,0,1,1,1,1,1,2,1,1,1, -1,2,2,2,2,1,1,2,1,2,1,1,1,0,2,1,2,1,1,1,0,2,1,1,1,1,0,1,0,0,0,0, -3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0, -1,1,0,1,0,1,1,1,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,3,2,0,0,0,0,1,0,0,0,0,0,0,1,1,0,2,0,0,0,0,0,0,0,0,1,0,1,2, -1,1,1,1,1,1,0,0,2,2,2,2,2,0,1,1,0,1,1,1,1,1,0,0,1,0,0,0,1,1,0,1, -2,3,1,2,1,0,1,1,0,2,2,2,0,0,1,0,0,1,1,1,1,0,0,0,0,0,0,0,1,0,1,2, -1,1,1,1,2,1,1,1,1,1,1,1,1,0,1,1,0,1,0,1,0,1,0,0,1,0,0,0,0,1,0,0, -2,2,2,2,2,0,0,2,0,0,2,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,2,0,2,2, -1,1,1,1,1,0,0,1,2,1,1,0,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,2,2,0,0,2,0,1,1,0,0,0,1,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,1,1, -0,0,0,1,1,1,1,1,1,1,1,1,1,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,3,2,0,0,1,0,0,1,0,0,0,0,0,0,1,0,2,0,0,0,1,0,0,0,0,0,0,0,2, -1,1,0,0,1,0,0,0,1,1,0,0,1,0,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, -2,1,2,2,2,1,2,1,2,2,1,1,2,1,1,1,0,1,1,1,1,2,0,1,0,1,1,1,1,0,1,1, -1,1,2,1,1,1,1,1,1,0,0,1,2,1,1,1,1,1,1,0,0,1,1,1,0,0,0,0,0,0,0,0, -1,0,0,1,3,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,2,1,0,0,1,0,2,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,2,0,0,1, -0,2,0,1,0,0,1,1,2,0,1,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,2,2,0,1,1,0,2,1,0,1,1,1,0,0,1,0,2,0,1,0,0,0,0,0,0,0,0,0,1, -0,1,0,0,1,0,0,0,1,1,0,0,1,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,2,2,0,0,1,0,0,0,1,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,1, -0,1,0,1,1,1,0,0,1,1,1,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, -2,0,1,0,0,1,2,1,1,1,1,1,1,2,2,1,0,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0, -1,1,2,1,1,1,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,1,2,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,1, -0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0, -0,1,1,0,1,1,1,0,0,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0, -1,0,1,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,1,0,2,0,0,2,0,1,0,0,1,0,0,1, -1,1,0,0,1,1,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0, -1,1,1,1,1,1,1,2,0,0,0,0,0,0,2,1,0,1,1,0,0,1,1,1,0,1,0,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0,1,1,1,1,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -) - -Latin5BulgarianModel = { - 'char_to_order_map': Latin5_BulgarianCharToOrderMap, - 'precedence_matrix': BulgarianLangModel, - 'typical_positive_ratio': 0.969392, - 'keep_english_letter': False, - 'charset_name': "ISO-8859-5", - 'language': 'Bulgairan', -} - -Win1251BulgarianModel = { - 'char_to_order_map': win1251BulgarianCharToOrderMap, - 'precedence_matrix': BulgarianLangModel, - 'typical_positive_ratio': 0.969392, - 'keep_english_letter': False, - 'charset_name': "windows-1251", - 'language': 'Bulgarian', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langcyrillicmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langcyrillicmodel.py deleted file mode 100644 index bdbad70..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langcyrillicmodel.py +++ /dev/null @@ -1,333 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# KOI8-R language model -# Character Mapping Table: -KOI8R_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 -191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206, # 80 -207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222, # 90 -223,224,225, 68,226,227,228,229,230,231,232,233,234,235,236,237, # a0 -238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253, # b0 - 27, 3, 21, 28, 13, 2, 39, 19, 26, 4, 23, 11, 8, 12, 5, 1, # c0 - 15, 16, 9, 7, 6, 14, 24, 10, 17, 18, 20, 25, 30, 29, 22, 54, # d0 - 59, 37, 44, 58, 41, 48, 53, 46, 55, 42, 60, 36, 49, 38, 31, 34, # e0 - 35, 43, 45, 32, 40, 52, 56, 33, 61, 62, 51, 57, 47, 63, 50, 70, # f0 -) - -win1251_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 -191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206, -207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222, -223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, -239,240,241,242,243,244,245,246, 68,247,248,249,250,251,252,253, - 37, 44, 33, 46, 41, 48, 56, 51, 42, 60, 36, 49, 38, 31, 34, 35, - 45, 32, 40, 52, 53, 55, 58, 50, 57, 63, 70, 62, 61, 47, 59, 43, - 3, 21, 10, 19, 13, 2, 24, 20, 4, 23, 11, 8, 12, 5, 1, 15, - 9, 7, 6, 14, 39, 26, 28, 22, 25, 29, 54, 18, 17, 30, 27, 16, -) - -latin5_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 -191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206, -207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222, -223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, - 37, 44, 33, 46, 41, 48, 56, 51, 42, 60, 36, 49, 38, 31, 34, 35, - 45, 32, 40, 52, 53, 55, 58, 50, 57, 63, 70, 62, 61, 47, 59, 43, - 3, 21, 10, 19, 13, 2, 24, 20, 4, 23, 11, 8, 12, 5, 1, 15, - 9, 7, 6, 14, 39, 26, 28, 22, 25, 29, 54, 18, 17, 30, 27, 16, -239, 68,240,241,242,243,244,245,246,247,248,249,250,251,252,255, -) - -macCyrillic_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 - 37, 44, 33, 46, 41, 48, 56, 51, 42, 60, 36, 49, 38, 31, 34, 35, - 45, 32, 40, 52, 53, 55, 58, 50, 57, 63, 70, 62, 61, 47, 59, 43, -191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206, -207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222, -223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, -239,240,241,242,243,244,245,246,247,248,249,250,251,252, 68, 16, - 3, 21, 10, 19, 13, 2, 24, 20, 4, 23, 11, 8, 12, 5, 1, 15, - 9, 7, 6, 14, 39, 26, 28, 22, 25, 29, 54, 18, 17, 30, 27,255, -) - -IBM855_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 -191,192,193,194, 68,195,196,197,198,199,200,201,202,203,204,205, -206,207,208,209,210,211,212,213,214,215,216,217, 27, 59, 54, 70, - 3, 37, 21, 44, 28, 58, 13, 41, 2, 48, 39, 53, 19, 46,218,219, -220,221,222,223,224, 26, 55, 4, 42,225,226,227,228, 23, 60,229, -230,231,232,233,234,235, 11, 36,236,237,238,239,240,241,242,243, - 8, 49, 12, 38, 5, 31, 1, 34, 15,244,245,246,247, 35, 16,248, - 43, 9, 45, 7, 32, 6, 40, 14, 52, 24, 56, 10, 33, 17, 61,249, -250, 18, 62, 20, 51, 25, 57, 30, 47, 29, 63, 22, 50,251,252,255, -) - -IBM866_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,142,143,144,145,146,147,148,149,150,151,152, 74,153, 75,154, # 40 -155,156,157,158,159,160,161,162,163,164,165,253,253,253,253,253, # 50 -253, 71,172, 66,173, 65,174, 76,175, 64,176,177, 77, 72,178, 69, # 60 - 67,179, 78, 73,180,181, 79,182,183,184,185,253,253,253,253,253, # 70 - 37, 44, 33, 46, 41, 48, 56, 51, 42, 60, 36, 49, 38, 31, 34, 35, - 45, 32, 40, 52, 53, 55, 58, 50, 57, 63, 70, 62, 61, 47, 59, 43, - 3, 21, 10, 19, 13, 2, 24, 20, 4, 23, 11, 8, 12, 5, 1, 15, -191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206, -207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222, -223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, - 9, 7, 6, 14, 39, 26, 28, 22, 25, 29, 54, 18, 17, 30, 27, 16, -239, 68,240,241,242,243,244,245,246,247,248,249,250,251,252,255, -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 97.6601% -# first 1024 sequences: 2.3389% -# rest sequences: 0.1237% -# negative sequences: 0.0009% -RussianLangModel = ( -0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,1,3,3,3,2,3,2,3,3, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,2,2,2,2,2,0,0,2, -3,3,3,2,3,3,3,3,3,3,3,3,3,3,2,3,3,0,0,3,3,3,3,3,3,3,3,3,2,3,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,2,2,3,3,3,3,3,3,3,3,3,2,3,3,0,0,3,3,3,3,3,3,3,3,2,3,3,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,3,3,3,3,3,3,3,3,3,3,3,2,1, -0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,0,0,3,3,3,3,3,3,3,3,3,3,3,2,1, -0,0,0,0,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,2,2,2,3,1,3,3,1,3,3,3,3,2,2,3,0,2,2,2,3,3,2,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,3,3,3,3,3,2,2,3,2,3,3,3,2,1,2,2,0,1,2,2,2,2,2,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,3,0,2,2,3,3,2,1,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,3,3,1,2,3,2,2,3,2,3,3,3,3,2,2,3,0,3,2,2,3,1,1,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,2,2,3,3,3,3,3,2,3,3,3,3,2,2,2,0,3,3,3,2,2,2,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,2,3,2,3,3,3,3,3,3,2,3,2,2,0,1,3,2,1,2,2,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,2,1,1,3,0,1,1,1,1,2,1,1,0,2,2,2,1,2,0,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,3,3,2,2,2,2,1,3,2,3,2,3,2,1,2,2,0,1,1,2,1,2,1,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,2,2,3,2,3,3,3,2,2,2,2,0,2,2,2,2,3,1,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -3,2,3,2,2,3,3,3,3,3,3,3,3,3,1,3,2,0,0,3,3,3,3,2,3,3,3,3,2,3,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,3,3,2,2,3,3,0,2,1,0,3,2,3,2,3,0,0,1,2,0,0,1,0,1,2,1,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,3,0,2,3,3,3,3,2,3,3,3,3,1,2,2,0,0,2,3,2,2,2,3,2,3,2,2,3,0,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,3,0,2,3,2,3,0,1,2,3,3,2,0,2,3,0,0,2,3,2,2,0,1,3,1,3,2,2,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,3,0,2,3,3,3,3,3,3,3,3,2,1,3,2,0,0,2,2,3,3,3,2,3,3,0,2,2,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,2,3,3,2,2,2,3,3,0,0,1,1,1,1,1,2,0,0,1,1,1,1,0,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,2,3,3,3,3,3,3,3,0,3,2,3,3,2,3,2,0,2,1,0,1,1,0,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,3,3,3,2,2,2,2,3,1,3,2,3,1,1,2,1,0,2,2,2,2,1,3,1,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -2,2,3,3,3,3,3,1,2,2,1,3,1,0,3,0,0,3,0,0,0,1,1,0,1,2,1,0,0,0,0,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,2,1,1,3,3,3,2,2,1,2,2,3,1,1,2,0,0,2,2,1,3,0,0,2,1,1,2,1,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,3,3,3,3,1,2,2,2,1,2,1,3,3,1,1,2,1,2,1,2,2,0,2,0,0,1,1,0,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,3,3,2,1,3,2,2,3,2,0,3,2,0,3,0,1,0,1,1,0,0,1,1,1,1,0,1,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,2,3,3,3,2,2,2,3,3,1,2,1,2,1,0,1,0,1,1,0,1,0,0,2,1,1,1,0,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -3,1,1,2,1,2,3,3,2,2,1,2,2,3,0,2,1,0,0,2,2,3,2,1,2,2,2,2,2,3,1,0, -0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,1,1,0,1,1,2,2,1,1,3,0,0,1,3,1,1,1,0,0,0,1,0,1,1,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,1,3,3,3,2,0,0,0,2,1,0,1,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,1,0,0,2,3,2,2,2,1,2,2,2,1,2,1,0,0,1,1,1,0,2,0,1,1,1,0,0,1,1, -1,0,0,0,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,3,0,0,0,0,1,0,0,0,0,3,0,1,2,1,0,0,0,0,0,0,0,1,1,0,0,1,1, -1,0,1,0,1,2,0,0,1,1,2,1,0,1,1,1,1,0,1,1,1,1,0,1,0,0,1,0,0,1,1,0, -2,2,3,2,2,2,3,1,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,0,1,0,1,1,1,0,2,1, -1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0,1,1,1,0,1,1,0, -3,3,3,2,2,2,2,3,2,2,1,1,2,2,2,2,1,1,3,1,2,1,2,0,0,1,1,0,1,0,2,1, -1,1,1,1,1,2,1,0,1,1,1,1,0,1,0,0,1,1,0,0,1,0,1,0,0,1,0,0,0,1,1,0, -2,0,0,1,0,3,2,2,2,2,1,2,1,2,1,2,0,0,0,2,1,2,2,1,1,2,2,0,1,1,0,2, -1,1,1,1,1,0,1,1,1,2,1,1,1,2,1,0,1,2,1,1,1,1,0,1,1,1,0,0,1,0,0,1, -1,3,2,2,2,1,1,1,2,3,0,0,0,0,2,0,2,2,1,0,0,0,0,0,0,1,0,0,0,0,1,1, -1,0,1,1,0,1,0,1,1,0,1,1,0,2,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0, -2,3,2,3,2,1,2,2,2,2,1,0,0,0,2,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,2,1, -1,1,2,1,0,2,0,0,1,0,1,0,0,1,0,0,1,1,0,1,1,0,0,0,0,0,1,0,0,0,0,0, -3,0,0,1,0,2,2,2,3,2,2,2,2,2,2,2,0,0,0,2,1,2,1,1,1,2,2,0,0,0,1,2, -1,1,1,1,1,0,1,2,1,1,1,1,1,1,1,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0,0,1, -2,3,2,3,3,2,0,1,1,1,0,0,1,0,2,0,1,1,3,1,0,0,0,0,0,0,0,1,0,0,2,1, -1,1,1,1,1,1,1,0,1,0,1,1,1,1,0,1,1,1,0,0,1,1,0,1,0,0,0,0,0,0,1,0, -2,3,3,3,3,1,2,2,2,2,0,1,1,0,2,1,1,1,2,1,0,1,1,0,0,1,0,1,0,0,2,0, -0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,3,3,2,0,0,1,1,2,2,1,0,0,2,0,1,1,3,0,0,1,0,0,0,0,0,1,0,1,2,1, -1,1,2,0,1,1,1,0,1,0,1,1,0,1,0,1,1,1,1,0,1,0,0,0,0,0,0,1,0,1,1,0, -1,3,2,3,2,1,0,0,2,2,2,0,1,0,2,0,1,1,1,0,1,0,0,0,3,0,1,1,0,0,2,1, -1,1,1,0,1,1,0,0,0,0,1,1,0,1,0,0,2,1,1,0,1,0,0,0,1,0,1,0,0,1,1,0, -3,1,2,1,1,2,2,2,2,2,2,1,2,2,1,1,0,0,0,2,2,2,0,0,0,1,2,1,0,1,0,1, -2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,2,1,1,1,0,1,0,1,1,0,1,1,1,0,0,1, -3,0,0,0,0,2,0,1,1,1,1,1,1,1,0,1,0,0,0,1,1,1,0,1,0,1,1,0,0,1,0,1, -1,1,0,0,1,0,0,0,1,0,1,1,0,0,1,0,1,0,1,0,0,0,0,1,0,0,0,1,0,0,0,1, -1,3,3,2,2,0,0,0,2,2,0,0,0,1,2,0,1,1,2,0,0,0,0,0,0,0,0,1,0,0,2,1, -0,1,1,0,0,1,1,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0, -2,3,2,3,2,0,0,0,0,1,1,0,0,0,2,0,2,0,2,0,0,0,0,0,1,0,0,1,0,0,1,1, -1,1,2,0,1,2,1,0,1,1,2,1,1,1,1,1,2,1,1,0,1,0,0,1,1,1,1,1,0,1,1,0, -1,3,2,2,2,1,0,0,2,2,1,0,1,2,2,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,1, -0,0,1,1,0,1,1,0,0,1,1,0,1,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,1,0,2,3,1,2,2,2,2,2,2,1,1,0,0,0,1,0,1,0,2,1,1,1,0,0,0,0,1, -1,1,0,1,1,0,1,1,1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0, -2,0,2,0,0,1,0,3,2,1,2,1,2,2,0,1,0,0,0,2,1,0,0,2,1,1,1,1,0,2,0,2, -2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,0,1,1,1,1,0,0,0,1,1,1,1,0,1,0,0,1, -1,2,2,2,2,1,0,0,1,0,0,0,0,0,2,0,1,1,1,1,0,0,0,0,1,0,1,2,0,0,2,0, -1,0,1,1,1,2,1,0,1,0,1,1,0,0,1,0,1,1,1,0,1,0,0,0,1,0,0,1,0,1,1,0, -2,1,2,2,2,0,3,0,1,1,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -0,0,0,1,1,1,0,0,1,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0, -1,2,2,3,2,2,0,0,1,1,2,0,1,2,1,0,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1, -0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,1,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0, -2,2,1,1,2,1,2,2,2,2,2,1,2,2,0,1,0,0,0,1,2,2,2,1,2,1,1,1,1,1,2,1, -1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,1,1,1,0,0,0,0,1,1,1,0,1,1,0,0,1, -1,2,2,2,2,0,1,0,2,2,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,0, -0,0,1,0,0,1,0,0,0,0,1,0,1,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,2,2,0,0,0,2,2,2,0,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1, -0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,2,2,0,0,0,0,1,0,0,1,1,2,0,0,0,0,1,0,1,0,0,1,0,0,2,0,0,0,1, -0,0,1,0,0,1,0,0,0,1,1,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, -1,2,2,2,1,1,2,0,2,1,1,1,1,0,2,2,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1, -0,0,1,0,1,1,0,0,0,0,1,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -1,0,2,1,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0, -0,0,1,0,1,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0, -1,0,0,0,0,2,0,1,2,1,0,1,1,1,0,1,0,0,0,1,0,1,0,0,1,0,1,0,0,0,0,1, -0,0,0,0,0,1,0,0,1,1,0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1, -2,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -1,1,1,0,1,0,1,0,0,1,1,1,1,0,0,0,1,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -1,1,0,1,1,0,1,0,1,0,0,0,0,1,1,0,1,1,0,0,0,0,0,1,0,1,1,0,1,0,0,0, -0,1,1,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0, -) - -Koi8rModel = { - 'char_to_order_map': KOI8R_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "KOI8-R", - 'language': 'Russian', -} - -Win1251CyrillicModel = { - 'char_to_order_map': win1251_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "windows-1251", - 'language': 'Russian', -} - -Latin5CyrillicModel = { - 'char_to_order_map': latin5_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "ISO-8859-5", - 'language': 'Russian', -} - -MacCyrillicModel = { - 'char_to_order_map': macCyrillic_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "MacCyrillic", - 'language': 'Russian', -} - -Ibm866Model = { - 'char_to_order_map': IBM866_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "IBM866", - 'language': 'Russian', -} - -Ibm855Model = { - 'char_to_order_map': IBM855_char_to_order_map, - 'precedence_matrix': RussianLangModel, - 'typical_positive_ratio': 0.976601, - 'keep_english_letter': False, - 'charset_name': "IBM855", - 'language': 'Russian', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langgreekmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langgreekmodel.py deleted file mode 100644 index 73541cc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langgreekmodel.py +++ /dev/null @@ -1,225 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# Character Mapping Table: -Latin7_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 82,100,104, 94, 98,101,116,102,111,187,117, 92, 88,113, 85, # 40 - 79,118,105, 83, 67,114,119, 95, 99,109,188,253,253,253,253,253, # 50 -253, 72, 70, 80, 81, 60, 96, 93, 89, 68,120, 97, 77, 86, 69, 55, # 60 - 78,115, 65, 66, 58, 76,106,103, 87,107,112,253,253,253,253,253, # 70 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 80 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 90 -253,233, 90,253,253,253,253,253,253,253,253,253,253, 74,253,253, # a0 -253,253,253,253,247,248, 61, 36, 46, 71, 73,253, 54,253,108,123, # b0 -110, 31, 51, 43, 41, 34, 91, 40, 52, 47, 44, 53, 38, 49, 59, 39, # c0 - 35, 48,250, 37, 33, 45, 56, 50, 84, 57,120,121, 17, 18, 22, 15, # d0 -124, 1, 29, 20, 21, 3, 32, 13, 25, 5, 11, 16, 10, 6, 30, 4, # e0 - 9, 8, 14, 7, 2, 12, 28, 23, 42, 24, 64, 75, 19, 26, 27,253, # f0 -) - -win1253_char_to_order_map = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 82,100,104, 94, 98,101,116,102,111,187,117, 92, 88,113, 85, # 40 - 79,118,105, 83, 67,114,119, 95, 99,109,188,253,253,253,253,253, # 50 -253, 72, 70, 80, 81, 60, 96, 93, 89, 68,120, 97, 77, 86, 69, 55, # 60 - 78,115, 65, 66, 58, 76,106,103, 87,107,112,253,253,253,253,253, # 70 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 80 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 90 -253,233, 61,253,253,253,253,253,253,253,253,253,253, 74,253,253, # a0 -253,253,253,253,247,253,253, 36, 46, 71, 73,253, 54,253,108,123, # b0 -110, 31, 51, 43, 41, 34, 91, 40, 52, 47, 44, 53, 38, 49, 59, 39, # c0 - 35, 48,250, 37, 33, 45, 56, 50, 84, 57,120,121, 17, 18, 22, 15, # d0 -124, 1, 29, 20, 21, 3, 32, 13, 25, 5, 11, 16, 10, 6, 30, 4, # e0 - 9, 8, 14, 7, 2, 12, 28, 23, 42, 24, 64, 75, 19, 26, 27,253, # f0 -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 98.2851% -# first 1024 sequences:1.7001% -# rest sequences: 0.0359% -# negative sequences: 0.0148% -GreekLangModel = ( -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,2,2,3,3,3,3,3,3,3,3,1,3,3,3,0,2,2,3,3,0,3,0,3,2,0,3,3,3,0, -3,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,0,3,3,0,3,2,3,3,0,3,2,3,3,3,0,0,3,0,3,0,3,3,2,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0, -0,2,3,2,2,3,3,3,3,3,3,3,3,0,3,3,3,3,0,2,3,3,0,3,3,3,3,2,3,3,3,0, -2,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,0,2,1,3,3,3,3,2,3,3,2,3,3,2,0, -0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,0,3,3,3,3,3,3,0,3,3,0,3,3,3,3,3,3,3,3,3,3,0,3,2,3,3,0, -2,0,1,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,2,3,0,0,0,0,3,3,0,3,1,3,3,3,0,3,3,0,3,3,3,3,0,0,0,0, -2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,0,3,0,3,3,3,3,3,0,3,2,2,2,3,0,2,3,3,3,3,3,2,3,3,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,3,2,2,2,3,3,3,3,0,3,1,3,3,3,3,2,3,3,3,3,3,3,3,2,2,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,2,0,3,0,0,0,3,3,2,3,3,3,3,3,0,0,3,2,3,0,2,3,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,3,3,3,3,0,0,3,3,0,2,3,0,3,0,3,3,3,0,0,3,0,3,0,2,2,3,3,0,0, -0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,2,0,3,2,3,3,3,3,0,3,3,3,3,3,0,3,3,2,3,2,3,3,2,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,2,3,2,3,3,3,3,3,3,0,2,3,2,3,2,2,2,3,2,3,3,2,3,0,2,2,2,3,0, -2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,0,0,0,3,3,3,2,3,3,0,0,3,0,3,0,0,0,3,2,0,3,0,3,0,0,2,0,2,0, -0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,0,3,3,3,3,3,3,0,3,3,0,3,0,0,0,3,3,0,3,3,3,0,0,1,2,3,0, -3,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,2,0,0,3,2,2,3,3,0,3,3,3,3,3,2,1,3,0,3,2,3,3,2,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,3,0,2,3,3,3,3,3,3,0,0,3,0,3,0,0,0,3,3,0,3,2,3,0,0,3,3,3,0, -3,0,0,0,2,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,0,3,3,3,3,3,3,0,0,3,0,3,0,0,0,3,2,0,3,2,3,0,0,3,2,3,0, -2,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,1,2,2,3,3,3,3,3,3,0,2,3,0,3,0,0,0,3,3,0,3,0,2,0,0,2,3,1,0, -2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,3,3,3,3,0,3,0,3,3,2,3,0,3,3,3,3,3,3,0,3,3,3,0,2,3,0,0,3,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,3,3,3,0,0,3,0,0,0,3,3,0,3,0,2,3,3,0,0,3,0,3,0,3,3,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,0,0,0,3,3,3,3,3,3,0,0,3,0,2,0,0,0,3,3,0,3,0,3,0,0,2,0,2,0, -0,0,0,0,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,3,0,3,0,2,0,3,2,0,3,2,3,2,3,0,0,3,2,3,2,3,3,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,0,0,2,3,3,3,3,3,0,0,0,3,0,2,1,0,0,3,2,2,2,0,3,0,0,2,2,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,3,3,3,2,0,3,0,3,0,3,3,0,2,1,2,3,3,0,0,3,0,3,0,3,3,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,3,3,3,0,3,3,3,3,3,3,0,2,3,0,3,0,0,0,2,1,0,2,2,3,0,0,2,2,2,0, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,3,0,0,2,3,3,3,2,3,0,0,1,3,0,2,0,0,0,0,3,0,1,0,2,0,0,1,1,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,3,1,0,3,0,0,0,3,2,0,3,2,3,3,3,0,0,3,0,3,2,2,2,1,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,3,3,3,0,0,3,0,0,0,0,2,0,2,3,3,2,2,2,2,3,0,2,0,2,2,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,3,3,3,2,0,0,0,0,0,0,2,3,0,2,0,2,3,2,0,0,3,0,3,0,3,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,3,2,3,3,2,2,3,0,2,0,3,0,0,0,2,0,0,0,0,1,2,0,2,0,2,0, -0,2,0,2,0,2,2,0,0,1,0,2,2,2,0,2,2,2,0,2,2,2,0,0,2,0,0,1,0,0,0,0, -0,2,0,3,3,2,0,0,0,0,0,0,1,3,0,2,0,2,2,2,0,0,2,0,3,0,0,2,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,0,2,3,2,0,2,2,0,2,0,2,2,0,2,0,2,2,2,0,0,0,0,0,0,2,3,0,0,0,2, -0,1,2,0,0,0,0,2,2,0,0,0,2,1,0,2,2,0,0,0,0,0,0,1,0,2,0,0,0,0,0,0, -0,0,2,1,0,2,3,2,2,3,2,3,2,0,0,3,3,3,0,0,3,2,0,0,0,1,1,0,2,0,2,2, -0,2,0,2,0,2,2,0,0,2,0,2,2,2,0,2,2,2,2,0,0,2,0,0,0,2,0,1,0,0,0,0, -0,3,0,3,3,2,2,0,3,0,0,0,2,2,0,2,2,2,1,2,0,0,1,2,2,0,0,3,0,0,0,2, -0,1,2,0,0,0,1,2,0,0,0,0,0,0,0,2,2,0,1,0,0,2,0,0,0,2,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,3,3,2,2,0,0,0,2,0,2,3,3,0,2,0,0,0,0,0,0,2,2,2,0,2,2,0,2,0,2, -0,2,2,0,0,2,2,2,2,1,0,0,2,2,0,2,0,0,2,0,0,0,0,0,0,2,0,0,0,0,0,0, -0,2,0,3,2,3,0,0,0,3,0,0,2,2,0,2,0,2,2,2,0,0,2,0,0,0,0,0,0,0,0,2, -0,0,2,2,0,0,2,2,2,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,2,0,0,3,2,0,2,2,2,2,2,0,0,0,2,0,0,0,0,2,0,1,0,0,2,0,1,0,0,0, -0,2,2,2,0,2,2,0,1,2,0,2,2,2,0,2,2,2,2,1,2,2,0,0,2,0,0,0,0,0,0,0, -0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -0,2,0,2,0,2,2,0,0,0,0,1,2,1,0,0,2,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,3,2,3,0,0,2,0,0,0,2,2,0,2,0,0,0,1,0,0,2,0,2,0,2,2,0,0,0,0, -0,0,2,0,0,0,0,2,2,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0, -0,2,2,3,2,2,0,0,0,0,0,0,1,3,0,2,0,2,2,0,0,0,1,0,2,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,0,2,0,3,2,0,2,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -0,0,2,0,0,0,0,1,1,0,0,2,1,2,0,2,2,0,1,0,0,1,0,0,0,2,0,0,0,0,0,0, -0,3,0,2,2,2,0,0,2,0,0,0,2,0,0,0,2,3,0,2,0,0,0,0,0,0,2,2,0,0,0,2, -0,1,2,0,0,0,1,2,2,1,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,1,2,0,2,2,0,2,0,0,2,0,0,0,0,1,2,1,0,2,1,0,0,0,0,0,0,0,0,0,0, -0,0,2,0,0,0,3,1,2,2,0,2,0,0,0,0,2,0,0,0,2,0,0,3,0,0,0,0,2,2,2,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,1,0,2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0,2, -0,2,2,0,0,2,2,2,2,2,0,1,2,0,0,0,2,2,0,1,0,2,0,0,2,2,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,2,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,2, -0,1,2,0,0,0,0,2,2,1,0,1,0,1,0,2,2,2,1,0,0,0,0,0,0,1,0,0,0,0,0,0, -0,2,0,1,2,0,0,0,0,0,0,0,0,0,0,2,0,0,2,2,0,0,0,0,1,0,0,0,0,0,0,2, -0,2,2,0,0,0,0,2,2,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0, -0,2,2,2,2,0,0,0,3,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,2,0,0,0,0,0,0,1, -0,0,2,0,0,0,0,1,2,0,0,0,0,0,0,2,2,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0, -0,2,0,2,2,2,0,0,2,0,0,0,0,0,0,0,2,2,2,0,0,0,2,0,0,0,0,0,0,0,0,2, -0,0,1,0,0,0,0,2,1,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0, -0,3,0,2,0,0,0,0,0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,2, -0,0,2,0,0,0,0,2,2,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,2,0,2,2,1,0,0,0,0,0,0,2,0,0,2,0,2,2,2,0,0,0,0,0,0,2,0,0,0,0,2, -0,0,2,0,0,2,0,2,2,0,0,0,0,2,0,2,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0, -0,0,3,0,0,0,2,2,0,2,2,0,0,0,0,0,2,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0, -0,2,2,2,2,2,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1, -0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,2,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -0,2,0,0,0,2,0,0,0,0,0,1,0,0,0,0,2,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,2,0,0,0, -0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,2,0,2,0,0,0, -0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,2,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -) - -Latin7GreekModel = { - 'char_to_order_map': Latin7_char_to_order_map, - 'precedence_matrix': GreekLangModel, - 'typical_positive_ratio': 0.982851, - 'keep_english_letter': False, - 'charset_name': "ISO-8859-7", - 'language': 'Greek', -} - -Win1253GreekModel = { - 'char_to_order_map': win1253_char_to_order_map, - 'precedence_matrix': GreekLangModel, - 'typical_positive_ratio': 0.982851, - 'keep_english_letter': False, - 'charset_name': "windows-1253", - 'language': 'Greek', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhebrewmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhebrewmodel.py deleted file mode 100644 index 07029b6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhebrewmodel.py +++ /dev/null @@ -1,200 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Simon Montagu -# Portions created by the Initial Developer are Copyright (C) 2005 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# Shoshannah Forbes - original C code (?) -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# Windows-1255 language model -# Character Mapping Table: -WIN1255_CHAR_TO_ORDER_MAP = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 69, 91, 79, 80, 92, 89, 97, 90, 68,111,112, 82, 73, 95, 85, # 40 - 78,121, 86, 71, 67,102,107, 84,114,103,115,253,253,253,253,253, # 50 -253, 50, 74, 60, 61, 42, 76, 70, 64, 53,105, 93, 56, 65, 54, 49, # 60 - 66,110, 51, 43, 44, 63, 81, 77, 98, 75,108,253,253,253,253,253, # 70 -124,202,203,204,205, 40, 58,206,207,208,209,210,211,212,213,214, -215, 83, 52, 47, 46, 72, 32, 94,216,113,217,109,218,219,220,221, - 34,116,222,118,100,223,224,117,119,104,125,225,226, 87, 99,227, -106,122,123,228, 55,229,230,101,231,232,120,233, 48, 39, 57,234, - 30, 59, 41, 88, 33, 37, 36, 31, 29, 35,235, 62, 28,236,126,237, -238, 38, 45,239,240,241,242,243,127,244,245,246,247,248,249,250, - 9, 8, 20, 16, 3, 2, 24, 14, 22, 1, 25, 15, 4, 11, 6, 23, - 12, 19, 13, 26, 18, 27, 21, 17, 7, 10, 5,251,252,128, 96,253, -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 98.4004% -# first 1024 sequences: 1.5981% -# rest sequences: 0.087% -# negative sequences: 0.0015% -HEBREW_LANG_MODEL = ( -0,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,2,3,2,1,2,0,1,0,0, -3,0,3,1,0,0,1,3,2,0,1,1,2,0,2,2,2,1,1,1,1,2,1,1,1,2,0,0,2,2,0,1, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2, -1,2,1,2,1,2,0,0,2,0,0,0,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2, -1,2,1,3,1,1,0,0,2,0,0,0,1,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,0,1,2,2,1,3, -1,2,1,1,2,2,0,0,2,2,0,0,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,0,1,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,2,2,2,2,3,2, -1,2,1,2,2,2,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,2,3,2,2,3,2,2,2,1,2,2,2,2, -1,2,1,1,2,2,0,1,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,0,2,2,2,2,2, -0,2,0,2,2,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,0,2,2,2, -0,2,1,2,2,2,0,0,2,1,0,0,0,0,1,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,2,1,2,3,2,2,2, -1,2,1,2,2,2,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0, -3,3,3,3,3,3,3,3,3,2,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,1,0,2,0,2, -0,2,1,2,2,2,0,0,1,2,0,0,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,2,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,2,3,2,2,3,2,1,2,1,1,1, -0,1,1,1,1,1,3,0,1,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,1,1,0,0,1,0,0,1,0,0,0,0, -0,0,1,0,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2, -0,2,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,2,3,3,3,2,1,2,3,3,2,3,3,3,3,2,3,2,1,2,0,2,1,2, -0,2,0,2,2,2,0,0,1,2,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0, -3,3,3,3,3,3,3,3,3,2,3,3,3,1,2,2,3,3,2,3,2,3,2,2,3,1,2,2,0,2,2,2, -0,2,1,2,2,2,0,0,1,2,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,1,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,2,3,3,2,2,2,3,3,3,3,1,3,2,2,2, -0,2,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,3,3,3,2,3,2,2,2,1,2,2,0,2,2,2,2, -0,2,0,2,2,2,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,1,3,2,3,3,2,3,3,2,2,1,2,2,2,2,2,2, -0,2,1,2,1,2,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,2,3,2,3,3,2,3,3,3,3,2,3,2,3,3,3,3,3,2,2,2,2,2,2,2,1, -0,2,0,1,2,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,2,1,2,3,3,3,3,3,3,3,2,3,2,3,2,1,2,3,0,2,1,2,2, -0,2,1,1,2,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,0, -3,3,3,3,3,3,3,3,3,2,3,3,3,3,2,1,3,1,2,2,2,1,2,3,3,1,2,1,2,2,2,2, -0,1,1,1,1,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,0,2,3,3,3,1,3,3,3,1,2,2,2,2,1,1,2,2,2,2,2,2, -0,2,0,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,2,3,3,3,2,2,3,3,3,2,1,2,3,2,3,2,2,2,2,1,2,1,1,1,2,2, -0,2,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,1,0,0,0,0,0, -1,0,1,0,0,0,0,0,2,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,2,3,3,2,3,1,2,2,2,2,3,2,3,1,1,2,2,1,2,2,1,1,0,2,2,2,2, -0,1,0,1,2,2,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0, -3,0,0,1,1,0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,0, -0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,1,0,1,0,1,1,0,1,1,0,0,0,1,1,0,1,1,1,0,0,0,0,0,0,1,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,0,0,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -3,2,2,1,2,2,2,2,2,2,2,1,2,2,1,2,2,1,1,1,1,1,1,1,1,2,1,1,0,3,3,3, -0,3,0,2,2,2,2,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -2,2,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,1,2,2,2,1,1,1,2,0,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,0,2,2,0,0,0,0,0,0, -0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,1,0,2,1,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -0,3,1,1,2,2,2,2,2,1,2,2,2,1,1,2,2,2,2,2,2,2,1,2,2,1,0,1,1,1,1,0, -0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,2,1,1,1,1,2,1,1,2,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,0,0,0, -0,0,2,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,0,0, -2,1,1,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,1,2,1,2,1,1,1,1,0,0,0,0, -0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,2,1,2,2,2,2,2,2,2,2,2,2,1,2,1,2,1,1,2,1,1,1,2,1,2,1,2,0,1,0,1, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,3,1,2,2,2,1,2,2,2,2,2,2,2,2,1,2,1,1,1,1,1,1,2,1,2,1,1,0,1,0,1, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,1,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2, -0,2,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,1,1,1,1,1,1,1,0,1,1,0,1,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,2,0,1,1,1,0,1,0,0,0,1,1,0,1,1,0,0,0,0,0,1,1,0,0, -0,1,1,1,2,1,2,2,2,0,2,0,2,0,1,1,2,1,1,1,1,2,1,0,1,1,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,1,0,0,0,0,0,1,0,1,2,2,0,1,0,0,1,1,2,2,1,2,0,2,0,0,0,1,2,0,1, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,2,0,2,1,2,0,2,0,0,1,1,1,1,1,1,0,1,0,0,0,1,0,0,1, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,0,0,0,0,0,1,0,2,1,1,0,1,0,0,1,1,1,2,2,0,0,1,0,0,0,1,0,0,1, -1,1,2,1,0,1,1,1,0,1,0,1,1,1,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,2,2,1, -0,2,0,1,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,1,0,0,1,0,1,1,1,1,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,1,1,1,1,1,1,1,1,2,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,1,1,0,1,0,0,0,1,1,0,1, -2,0,1,0,1,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,1,1,1,0,1,0,0,1,1,2,1,1,2,0,1,0,0,0,1,1,0,1, -1,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,1,1,2,0,1,0,0,0,0,2,1,1,2,0,2,0,0,0,1,1,0,1, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,2,1,1,0,1,0,0,2,2,1,2,1,1,0,1,0,0,0,1,1,0,1, -2,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,1,1,0,1,0,0,1,0,0,0,0,1,0,1, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,2,2,0,0,0,0,2,1,1,1,0,2,1,1,0,0,0,2,1,0,1, -1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,1,1,2,0,1,0,0,1,1,0,2,1,1,0,1,0,0,0,1,1,0,1, -2,2,1,1,1,0,1,1,0,1,1,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,2,1,1,0,1,0,0,1,1,0,1,2,1,0,2,0,0,0,1,1,0,1, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0, -0,1,0,0,2,0,2,1,1,0,1,0,1,0,0,1,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,1,0,1,1,2,0,1,0,0,1,1,1,0,1,0,0,1,0,0,0,1,0,0,1, -1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,0,2,1,1,1,1,1,0,1,0,0,0,0,1,0,1, -0,1,1,1,2,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,0,0,0,1,1,1,1,1,0,1,0,0,0,1,1,0,0, -) - -Win1255HebrewModel = { - 'char_to_order_map': WIN1255_CHAR_TO_ORDER_MAP, - 'precedence_matrix': HEBREW_LANG_MODEL, - 'typical_positive_ratio': 0.984004, - 'keep_english_letter': False, - 'charset_name': "windows-1255", - 'language': 'Hebrew', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhungarianmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhungarianmodel.py deleted file mode 100644 index 6de87b7..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langhungarianmodel.py +++ /dev/null @@ -1,225 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# Character Mapping Table: -Latin2_HungarianCharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 28, 40, 54, 45, 32, 50, 49, 38, 39, 53, 36, 41, 34, 35, 47, - 46, 71, 43, 33, 37, 57, 48, 64, 68, 55, 52,253,253,253,253,253, -253, 2, 18, 26, 17, 1, 27, 12, 20, 9, 22, 7, 6, 13, 4, 8, - 23, 67, 10, 5, 3, 21, 19, 65, 62, 16, 11,253,253,253,253,253, -159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174, -175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190, -191,192,193,194,195,196,197, 75,198,199,200,201,202,203,204,205, - 79,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220, -221, 51, 81,222, 78,223,224,225,226, 44,227,228,229, 61,230,231, -232,233,234, 58,235, 66, 59,236,237,238, 60, 69, 63,239,240,241, - 82, 14, 74,242, 70, 80,243, 72,244, 15, 83, 77, 84, 30, 76, 85, -245,246,247, 25, 73, 42, 24,248,249,250, 31, 56, 29,251,252,253, -) - -win1250HungarianCharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253, 28, 40, 54, 45, 32, 50, 49, 38, 39, 53, 36, 41, 34, 35, 47, - 46, 72, 43, 33, 37, 57, 48, 64, 68, 55, 52,253,253,253,253,253, -253, 2, 18, 26, 17, 1, 27, 12, 20, 9, 22, 7, 6, 13, 4, 8, - 23, 67, 10, 5, 3, 21, 19, 65, 62, 16, 11,253,253,253,253,253, -161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176, -177,178,179,180, 78,181, 69,182,183,184,185,186,187,188,189,190, -191,192,193,194,195,196,197, 76,198,199,200,201,202,203,204,205, - 81,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220, -221, 51, 83,222, 80,223,224,225,226, 44,227,228,229, 61,230,231, -232,233,234, 58,235, 66, 59,236,237,238, 60, 70, 63,239,240,241, - 84, 14, 75,242, 71, 82,243, 73,244, 15, 85, 79, 86, 30, 77, 87, -245,246,247, 25, 74, 42, 24,248,249,250, 31, 56, 29,251,252,253, -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 94.7368% -# first 1024 sequences:5.2623% -# rest sequences: 0.8894% -# negative sequences: 0.0009% -HungarianLangModel = ( -0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, -3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,2,2,3,3,1,1,2,2,2,2,2,1,2, -3,2,2,3,3,3,3,3,2,3,3,3,3,3,3,1,2,3,3,3,3,2,3,3,1,1,3,3,0,1,1,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0, -3,2,1,3,3,3,3,3,2,3,3,3,3,3,1,1,2,3,3,3,3,3,3,3,1,1,3,2,0,1,1,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,1,1,2,3,3,3,1,3,3,3,3,3,1,3,3,2,2,0,3,2,3, -0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,3,3,3,2,3,3,2,3,3,3,3,3,2,3,3,2,2,3,2,3,2,0,3,2,2, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0, -3,3,3,3,3,3,2,3,3,3,3,3,2,3,3,3,1,2,3,2,2,3,1,2,3,3,2,2,0,3,3,3, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,2,2,3,3,3,3,3,3,2,3,3,3,3,2,3,3,3,3,0,2,3,2, -0,0,0,1,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,1,1,1,3,3,2,1,3,2,2,3,2,1,3,2,2,1,0,3,3,1, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,2,2,3,3,3,3,3,1,2,3,3,3,3,1,2,1,3,3,3,3,2,2,3,1,1,3,2,0,1,1,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,2,2,3,3,3,3,3,2,1,3,3,3,3,3,2,2,1,3,3,3,0,1,1,2, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,2,3,3,2,3,3,3,2,0,3,2,3, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,1,0, -3,3,3,3,3,3,2,3,3,3,2,3,2,3,3,3,1,3,2,2,2,3,1,1,3,3,1,1,0,3,3,2, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,2,3,3,3,2,3,2,3,3,3,2,3,3,3,3,3,1,2,3,2,2,0,2,2,2, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,2,2,2,3,1,3,3,2,2,1,3,3,3,1,1,3,1,2,3,2,3,2,2,2,1,0,2,2,2, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0, -3,1,1,3,3,3,3,3,1,2,3,3,3,3,1,2,1,3,3,3,2,2,3,2,1,0,3,2,0,1,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,1,3,3,3,3,3,1,2,3,3,3,3,1,1,0,3,3,3,3,0,2,3,0,0,2,1,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,2,2,3,3,2,2,2,2,3,3,0,1,2,3,2,3,2,2,3,2,1,2,0,2,2,2, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0, -3,3,3,3,3,3,1,2,3,3,3,2,1,2,3,3,2,2,2,3,2,3,3,1,3,3,1,1,0,2,3,2, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,1,2,2,2,2,3,3,3,1,1,1,3,3,1,1,3,1,1,3,2,1,2,3,1,1,0,2,2,2, -0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,2,1,2,1,1,3,3,1,1,1,1,3,3,1,1,2,2,1,2,1,1,2,2,1,1,0,2,2,1, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,1,1,2,1,1,3,3,1,0,1,1,3,3,2,0,1,1,2,3,1,0,2,2,1,0,0,1,3,2, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,2,1,3,3,3,3,3,1,2,3,2,3,3,2,1,1,3,2,3,2,1,2,2,0,1,2,1,0,0,1,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,3,3,2,2,2,2,3,1,2,2,1,1,3,3,0,3,2,1,2,3,2,1,3,3,1,1,0,2,1,3, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,3,3,2,2,2,3,2,3,3,3,2,1,1,3,3,1,1,1,2,2,3,2,3,2,2,2,1,0,2,2,1, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -1,0,0,3,3,3,3,3,0,0,3,3,2,3,0,0,0,2,3,3,1,0,1,2,0,0,1,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,2,3,3,3,3,3,1,2,3,3,2,2,1,1,0,3,3,2,2,1,2,2,1,0,2,2,0,1,1,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,2,2,1,3,1,2,3,3,2,2,1,1,2,2,1,1,1,1,3,2,1,1,1,1,2,1,0,1,2,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -2,3,3,1,1,1,1,1,3,3,3,0,1,1,3,3,1,1,1,1,1,2,2,0,3,1,1,2,0,2,1,1, -0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, -3,1,0,1,2,1,2,2,0,1,2,3,1,2,0,0,0,2,1,1,1,1,1,2,0,0,1,1,0,0,0,0, -1,2,1,2,2,2,1,2,1,2,0,2,0,2,2,1,1,2,1,1,2,1,1,1,0,1,0,0,0,1,1,0, -1,1,1,2,3,2,3,3,0,1,2,2,3,1,0,1,0,2,1,2,2,0,1,1,0,0,1,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,3,3,2,2,1,0,0,3,2,3,2,0,0,0,1,1,3,0,0,1,1,0,0,2,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,1,2,2,3,3,1,0,1,3,2,3,1,1,1,0,1,1,1,1,1,3,1,0,0,2,2,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,1,1,2,2,2,1,0,1,2,3,3,2,0,0,0,2,1,1,1,2,1,1,1,0,1,1,1,0,0,0, -1,2,2,2,2,2,1,1,1,2,0,2,1,1,1,1,1,2,1,1,1,1,1,1,0,1,1,1,0,0,1,1, -3,2,2,1,0,0,1,1,2,2,0,3,0,1,2,1,1,0,0,1,1,1,0,1,1,1,1,0,2,1,1,1, -2,2,1,1,1,2,1,2,1,1,1,1,1,1,1,2,1,1,1,2,3,1,1,1,1,1,1,1,1,1,0,1, -2,3,3,0,1,0,0,0,3,3,1,0,0,1,2,2,1,0,0,0,0,2,0,0,1,1,1,0,2,1,1,1, -2,1,1,1,1,1,1,2,1,1,0,1,1,0,1,1,1,0,1,2,1,1,0,1,1,1,1,1,1,1,0,1, -2,3,3,0,1,0,0,0,2,2,0,0,0,0,1,2,2,0,0,0,0,1,0,0,1,1,0,0,2,0,1,0, -2,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,2,0,1,1,1,1,1,0,1, -3,2,2,0,1,0,1,0,2,3,2,0,0,1,2,2,1,0,0,1,1,1,0,0,2,1,0,1,2,2,1,1, -2,1,1,1,1,1,1,2,1,1,1,1,1,1,0,2,1,0,1,1,0,1,1,1,0,1,1,2,1,1,0,1, -2,2,2,0,0,1,0,0,2,2,1,1,0,0,2,1,1,0,0,0,1,2,0,0,2,1,0,0,2,1,1,1, -2,1,1,1,1,2,1,2,1,1,1,2,2,1,1,2,1,1,1,2,1,1,1,1,1,1,1,1,1,1,0,1, -1,2,3,0,0,0,1,0,3,2,1,0,0,1,2,1,1,0,0,0,0,2,1,0,1,1,0,0,2,1,2,1, -1,1,0,0,0,1,0,1,1,1,1,1,2,0,0,1,0,0,0,2,0,0,1,1,1,1,1,1,1,1,0,1, -3,0,0,2,1,2,2,1,0,0,2,1,2,2,0,0,0,2,1,1,1,0,1,1,0,0,1,1,2,0,0,0, -1,2,1,2,2,1,1,2,1,2,0,1,1,1,1,1,1,1,1,1,2,1,1,0,0,1,1,1,1,0,0,1, -1,3,2,0,0,0,1,0,2,2,2,0,0,0,2,2,1,0,0,0,0,3,1,1,1,1,0,0,2,1,1,1, -2,1,0,1,1,1,0,1,1,1,1,1,1,1,0,2,1,0,0,1,0,1,1,0,1,1,1,1,1,1,0,1, -2,3,2,0,0,0,1,0,2,2,0,0,0,0,2,1,1,0,0,0,0,2,1,0,1,1,0,0,2,1,1,0, -2,1,1,1,1,2,1,2,1,2,0,1,1,1,0,2,1,1,1,2,1,1,1,1,0,1,1,1,1,1,0,1, -3,1,1,2,2,2,3,2,1,1,2,2,1,1,0,1,0,2,2,1,1,1,1,1,0,0,1,1,0,1,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,0,0,0,0,0,2,2,0,0,0,0,2,2,1,0,0,0,1,1,0,0,1,2,0,0,2,1,1,1, -2,2,1,1,1,2,1,2,1,1,0,1,1,1,1,2,1,1,1,2,1,1,1,1,0,1,2,1,1,1,0,1, -1,0,0,1,2,3,2,1,0,0,2,0,1,1,0,0,0,1,1,1,1,0,1,1,0,0,1,0,0,0,0,0, -1,2,1,2,1,2,1,1,1,2,0,2,1,1,1,0,1,2,0,0,1,1,1,0,0,0,0,0,0,0,0,0, -2,3,2,0,0,0,0,0,1,1,2,1,0,0,1,1,1,0,0,0,0,2,0,0,1,1,0,0,2,1,1,1, -2,1,1,1,1,1,1,2,1,0,1,1,1,1,0,2,1,1,1,1,1,1,0,1,0,1,1,1,1,1,0,1, -1,2,2,0,1,1,1,0,2,2,2,0,0,0,3,2,1,0,0,0,1,1,0,0,1,1,0,1,1,1,0,0, -1,1,0,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,1,0,0,1,1,1,0,1,0,1, -2,1,0,2,1,1,2,2,1,1,2,1,1,1,0,0,0,1,1,0,1,1,1,1,0,0,1,1,1,0,0,0, -1,2,2,2,2,2,1,1,1,2,0,2,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,1,0, -1,2,3,0,0,0,1,0,2,2,0,0,0,0,2,2,0,0,0,0,0,1,0,0,1,0,0,0,2,0,1,0, -2,1,1,1,1,1,0,2,0,0,0,1,2,1,1,1,1,0,1,2,0,1,0,1,0,1,1,1,0,1,0,1, -2,2,2,0,0,0,1,0,2,1,2,0,0,0,1,1,2,0,0,0,0,1,0,0,1,1,0,0,2,1,0,1, -2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,1,1,1,1,1,0,1, -1,2,2,0,0,0,1,0,2,2,2,0,0,0,1,1,0,0,0,0,0,1,1,0,2,0,0,1,1,1,0,1, -1,0,1,1,1,1,1,1,0,1,1,1,1,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,0,0,0,1, -1,0,0,1,0,1,2,1,0,0,1,1,1,2,0,0,0,1,1,0,1,0,1,1,0,0,1,0,0,0,0,0, -0,2,1,2,1,1,1,1,1,2,0,2,0,1,1,0,1,2,1,0,1,1,1,0,0,0,0,0,0,1,0,0, -2,1,1,0,1,2,0,0,1,1,1,0,0,0,1,1,0,0,0,0,0,1,0,0,1,0,0,0,2,1,0,1, -2,2,1,1,1,1,1,2,1,1,0,1,1,1,1,2,1,1,1,2,1,1,0,1,0,1,1,1,1,1,0,1, -1,2,2,0,0,0,0,0,1,1,0,0,0,0,2,1,0,0,0,0,0,2,0,0,2,2,0,0,2,0,0,1, -2,1,1,1,1,1,1,1,0,1,1,0,1,1,0,1,0,0,0,1,1,1,1,0,0,1,1,1,1,0,0,1, -1,1,2,0,0,3,1,0,2,1,1,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,0,0,1,0,1,0, -1,2,1,0,1,1,1,2,1,1,0,1,1,1,1,1,0,0,0,1,1,1,1,1,0,1,0,0,0,1,0,0, -2,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,0,0,2,0,0,0, -2,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,2,1,1,0,0,1,1,1,1,1,0,1, -2,1,1,1,2,1,1,1,0,1,1,2,1,0,0,0,0,1,1,1,1,0,1,0,0,0,0,1,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,1,0,1,1,1,1,1,0,0,1,1,2,1,0,0,0,1,1,0,0,0,1,1,0,0,1,0,1,0,0,0, -1,2,1,1,1,1,1,1,1,1,0,1,0,1,1,1,1,1,1,0,1,1,1,0,0,0,0,0,0,1,0,0, -2,0,0,0,1,1,1,1,0,0,1,1,0,0,0,0,0,1,1,1,2,0,0,1,0,0,1,0,1,0,0,0, -0,1,1,1,1,1,1,1,1,2,0,1,1,1,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0, -1,0,0,1,1,1,1,1,0,0,2,1,0,1,0,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,0, -0,1,1,1,1,1,1,0,1,1,0,1,0,1,1,0,1,1,0,0,1,1,1,0,0,0,0,0,0,0,0,0, -1,0,0,1,1,1,0,0,0,0,1,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -0,1,1,1,1,1,0,0,1,1,0,1,0,1,0,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0, -0,0,0,1,0,0,0,0,0,0,1,1,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,1,1,1,0,1,0,0,1,1,0,1,0,1,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0, -2,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,1,0,0,1,0,1,0,1,1,1,0,0,1,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,0,1,1,1,1,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0, -0,1,1,1,1,1,1,0,1,1,0,1,0,1,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0, -) - -Latin2HungarianModel = { - 'char_to_order_map': Latin2_HungarianCharToOrderMap, - 'precedence_matrix': HungarianLangModel, - 'typical_positive_ratio': 0.947368, - 'keep_english_letter': True, - 'charset_name': "ISO-8859-2", - 'language': 'Hungarian', -} - -Win1250HungarianModel = { - 'char_to_order_map': win1250HungarianCharToOrderMap, - 'precedence_matrix': HungarianLangModel, - 'typical_positive_ratio': 0.947368, - 'keep_english_letter': True, - 'charset_name': "windows-1250", - 'language': 'Hungarian', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langthaimodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langthaimodel.py deleted file mode 100644 index fdb3313..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langthaimodel.py +++ /dev/null @@ -1,199 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# The following result for thai was collected from a limited sample (1M). - -# Character Mapping Table: -TIS620CharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,254,255,255,254,255,255, # 00 -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, # 10 -253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, # 20 -252,252,252,252,252,252,252,252,252,252,253,253,253,253,253,253, # 30 -253,182,106,107,100,183,184,185,101, 94,186,187,108,109,110,111, # 40 -188,189,190, 89, 95,112,113,191,192,193,194,253,253,253,253,253, # 50 -253, 64, 72, 73,114, 74,115,116,102, 81,201,117, 90,103, 78, 82, # 60 - 96,202, 91, 79, 84,104,105, 97, 98, 92,203,253,253,253,253,253, # 70 -209,210,211,212,213, 88,214,215,216,217,218,219,220,118,221,222, -223,224, 99, 85, 83,225,226,227,228,229,230,231,232,233,234,235, -236, 5, 30,237, 24,238, 75, 8, 26, 52, 34, 51,119, 47, 58, 57, - 49, 53, 55, 43, 20, 19, 44, 14, 48, 3, 17, 25, 39, 62, 31, 54, - 45, 9, 16, 2, 61, 15,239, 12, 42, 46, 18, 21, 76, 4, 66, 63, - 22, 10, 1, 36, 23, 13, 40, 27, 32, 35, 86,240,241,242,243,244, - 11, 28, 41, 29, 33,245, 50, 37, 6, 7, 67, 77, 38, 93,246,247, - 68, 56, 59, 65, 69, 60, 70, 80, 71, 87,248,249,250,251,252,253, -) - -# Model Table: -# total sequences: 100% -# first 512 sequences: 92.6386% -# first 1024 sequences:7.3177% -# rest sequences: 1.0230% -# negative sequences: 0.0436% -ThaiLangModel = ( -0,1,3,3,3,3,0,0,3,3,0,3,3,0,3,3,3,3,3,3,3,3,0,0,3,3,3,0,3,3,3,3, -0,3,3,0,0,0,1,3,0,3,3,2,3,3,0,1,2,3,3,3,3,0,2,0,2,0,0,3,2,1,2,2, -3,0,3,3,2,3,0,0,3,3,0,3,3,0,3,3,3,3,3,3,3,3,3,0,3,2,3,0,2,2,2,3, -0,2,3,0,0,0,0,1,0,1,2,3,1,1,3,2,2,0,1,1,0,0,1,0,0,0,0,0,0,0,1,1, -3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,3,3,2,3,2,3,3,2,2,2, -3,1,2,3,0,3,3,2,2,1,2,3,3,1,2,0,1,3,0,1,0,0,1,0,0,0,0,0,0,0,1,1, -3,3,2,2,3,3,3,3,1,2,3,3,3,3,3,2,2,2,2,3,3,2,2,3,3,2,2,3,2,3,2,2, -3,3,1,2,3,1,2,2,3,3,1,0,2,1,0,0,3,1,2,1,0,0,1,0,0,0,0,0,0,1,0,1, -3,3,3,3,3,3,2,2,3,3,3,3,2,3,2,2,3,3,2,2,3,2,2,2,2,1,1,3,1,2,1,1, -3,2,1,0,2,1,0,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0, -3,3,3,2,3,2,3,3,2,2,3,2,3,3,2,3,1,1,2,3,2,2,2,3,2,2,2,2,2,1,2,1, -2,2,1,1,3,3,2,1,0,1,2,2,0,1,3,0,0,0,1,1,0,0,0,0,0,2,3,0,0,2,1,1, -3,3,2,3,3,2,0,0,3,3,0,3,3,0,2,2,3,1,2,2,1,1,1,0,2,2,2,0,2,2,1,1, -0,2,1,0,2,0,0,2,0,1,0,0,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,0, -3,3,2,3,3,2,0,0,3,3,0,2,3,0,2,1,2,2,2,2,1,2,0,0,2,2,2,0,2,2,1,1, -0,2,1,0,2,0,0,2,0,1,1,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0, -3,3,2,3,2,3,2,0,2,2,1,3,2,1,3,2,1,2,3,2,2,3,0,2,3,2,2,1,2,2,2,2, -1,2,2,0,0,0,0,2,0,1,2,0,1,1,1,0,1,0,3,1,1,0,0,0,0,0,0,0,0,0,1,0, -3,3,2,3,3,2,3,2,2,2,3,2,2,3,2,2,1,2,3,2,2,3,1,3,2,2,2,3,2,2,2,3, -3,2,1,3,0,1,1,1,0,2,1,1,1,1,1,0,1,0,1,1,0,0,0,0,0,0,0,0,0,2,0,0, -1,0,0,3,0,3,3,3,3,3,0,0,3,0,2,2,3,3,3,3,3,0,0,0,1,1,3,0,0,0,0,2, -0,0,1,0,0,0,0,0,0,0,2,3,0,0,0,3,0,2,0,0,0,0,0,3,0,0,0,0,0,0,0,0, -2,0,3,3,3,3,0,0,2,3,0,0,3,0,3,3,2,3,3,3,3,3,0,0,3,3,3,0,0,0,3,3, -0,0,3,0,0,0,0,2,0,0,2,1,1,3,0,0,1,0,0,2,3,0,1,0,0,0,0,0,0,0,1,0, -3,3,3,3,2,3,3,3,3,3,3,3,1,2,1,3,3,2,2,1,2,2,2,3,1,1,2,0,2,1,2,1, -2,2,1,0,0,0,1,1,0,1,0,1,1,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0, -3,0,2,1,2,3,3,3,0,2,0,2,2,0,2,1,3,2,2,1,2,1,0,0,2,2,1,0,2,1,2,2, -0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,2,1,3,3,1,1,3,0,2,3,1,1,3,2,1,1,2,0,2,2,3,2,1,1,1,1,1,2, -3,0,0,1,3,1,2,1,2,0,3,0,0,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0, -3,3,1,1,3,2,3,3,3,1,3,2,1,3,2,1,3,2,2,2,2,1,3,3,1,2,1,3,1,2,3,0, -2,1,1,3,2,2,2,1,2,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2, -3,3,2,3,2,3,3,2,3,2,3,2,3,3,2,1,0,3,2,2,2,1,2,2,2,1,2,2,1,2,1,1, -2,2,2,3,0,1,3,1,1,1,1,0,1,1,0,2,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,2,3,2,2,1,1,3,2,3,2,3,2,0,3,2,2,1,2,0,2,2,2,1,2,2,2,2,1, -3,2,1,2,2,1,0,2,0,1,0,0,1,1,0,0,0,0,0,1,1,0,1,0,0,0,0,0,0,0,0,1, -3,3,3,3,3,2,3,1,2,3,3,2,2,3,0,1,1,2,0,3,3,2,2,3,0,1,1,3,0,0,0,0, -3,1,0,3,3,0,2,0,2,1,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,2,3,2,3,3,0,1,3,1,1,2,1,2,1,1,3,1,1,0,2,3,1,1,1,1,1,1,1,1, -3,1,1,2,2,2,2,1,1,1,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,2,2,1,1,2,1,3,3,2,3,2,2,3,2,2,3,1,2,2,1,2,0,3,2,1,2,2,2,2,2,1, -3,2,1,2,2,2,1,1,1,1,0,0,1,1,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,1,3,3,0,2,1,0,3,2,0,0,3,1,0,1,1,0,1,0,0,0,0,0,1, -1,0,0,1,0,3,2,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,2,2,2,3,0,0,1,3,0,3,2,0,3,2,2,3,3,3,3,3,1,0,2,2,2,0,2,2,1,2, -0,2,3,0,0,0,0,1,0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -3,0,2,3,1,3,3,2,3,3,0,3,3,0,3,2,2,3,2,3,3,3,0,0,2,2,3,0,1,1,1,3, -0,0,3,0,0,0,2,2,0,1,3,0,1,2,2,2,3,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1, -3,2,3,3,2,0,3,3,2,2,3,1,3,2,1,3,2,0,1,2,2,0,2,3,2,1,0,3,0,0,0,0, -3,0,0,2,3,1,3,0,0,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,1,3,2,2,2,1,2,0,1,3,1,1,3,1,3,0,0,2,1,1,1,1,2,1,1,1,0,2,1,0,1, -1,2,0,0,0,3,1,1,0,0,0,0,1,0,1,0,0,1,0,1,0,0,0,0,0,3,1,0,0,0,1,0, -3,3,3,3,2,2,2,2,2,1,3,1,1,1,2,0,1,1,2,1,2,1,3,2,0,0,3,1,1,1,1,1, -3,1,0,2,3,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,2,3,0,3,3,0,2,0,0,0,0,0,0,0,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,2,3,1,3,0,0,1,2,0,0,2,0,3,3,2,3,3,3,2,3,0,0,2,2,2,0,0,0,2,2, -0,0,1,0,0,0,0,3,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -0,0,0,3,0,2,0,0,0,0,0,0,0,0,0,0,1,2,3,1,3,3,0,0,1,0,3,0,0,0,0,0, -0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,1,2,3,1,2,3,1,0,3,0,2,2,1,0,2,1,1,2,0,1,0,0,1,1,1,1,0,1,0,0, -1,0,0,0,0,1,1,0,3,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,2,1,0,1,1,1,3,1,2,2,2,2,2,2,1,1,1,1,0,3,1,0,1,3,1,1,1,1, -1,1,0,2,0,1,3,1,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1, -3,0,2,2,1,3,3,2,3,3,0,1,1,0,2,2,1,2,1,3,3,1,0,0,3,2,0,0,0,0,2,1, -0,1,0,0,0,0,1,2,0,1,1,3,1,1,2,2,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0, -0,0,3,0,0,1,0,0,0,3,0,0,3,0,3,1,0,1,1,1,3,2,0,0,0,3,0,0,0,0,2,0, -0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0, -3,3,1,3,2,1,3,3,1,2,2,0,1,2,1,0,1,2,0,0,0,0,0,3,0,0,0,3,0,0,0,0, -3,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,1,2,0,3,3,3,2,2,0,1,1,0,1,3,0,0,0,2,2,0,0,0,0,3,1,0,1,0,0,0, -0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,2,3,1,2,0,0,2,1,0,3,1,0,1,2,0,1,1,1,1,3,0,0,3,1,1,0,2,2,1,1, -0,2,0,0,0,0,0,1,0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,0,3,1,2,0,0,2,2,0,1,2,0,1,0,1,3,1,2,1,0,0,0,2,0,3,0,0,0,1,0, -0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,1,1,2,2,0,0,0,2,0,2,1,0,1,1,0,1,1,1,2,1,0,0,1,1,1,0,2,1,1,1, -0,1,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1, -0,0,0,2,0,1,3,1,1,1,1,0,0,0,0,3,2,0,1,0,0,0,1,2,0,0,0,1,0,0,0,0, -0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,3,3,3,3,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,0,2,3,2,2,0,0,0,1,0,0,0,0,2,3,2,1,2,2,3,0,0,0,2,3,1,0,0,0,1,1, -0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0,0,0,0,0,0,0, -3,3,2,2,0,1,0,0,0,0,2,0,2,0,1,0,0,0,1,1,0,0,0,2,1,0,1,0,1,1,0,0, -0,1,0,2,0,0,1,0,3,0,1,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,1,0,0,1,0,0,0,0,0,1,1,2,0,0,0,0,1,0,0,1,3,1,0,0,0,0,1,1,0,0, -0,1,0,0,0,0,3,0,0,0,0,0,0,3,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0, -3,3,1,1,1,1,2,3,0,0,2,1,1,1,1,1,0,2,1,1,0,0,0,2,1,0,1,2,1,1,0,1, -2,1,0,3,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,3,1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1, -0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,2,0,0,0,0,0,0,1,2,1,0,1,1,0,2,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,2,0,0,0,1,3,0,1,0,0,0,2,0,0,0,0,0,0,0,1,2,0,0,0,0,0, -3,3,0,0,1,1,2,0,0,1,2,1,0,1,1,1,0,1,1,0,0,2,1,1,0,1,0,0,1,1,1,0, -0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,1,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0, -2,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,3,0,0,1,1,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -1,1,0,1,2,0,1,2,0,0,1,1,0,2,0,1,0,0,1,0,0,0,0,1,0,0,0,2,0,0,0,0, -1,0,0,1,0,1,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,1,0,0,0,0,0,0,0,1,1,0,1,1,0,2,1,3,0,0,0,0,1,1,0,0,0,0,0,0,0,3, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,1,0,1,0,0,2,0,0,2,0,0,1,1,2,0,0,1,1,0,0,0,1,0,0,0,1,1,0,0,0, -1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0, -1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,1,1,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,3,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0, -1,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,1,0,0,2,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -) - -TIS620ThaiModel = { - 'char_to_order_map': TIS620CharToOrderMap, - 'precedence_matrix': ThaiLangModel, - 'typical_positive_ratio': 0.926386, - 'keep_english_letter': False, - 'charset_name': "TIS-620", - 'language': 'Thai', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langturkishmodel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langturkishmodel.py deleted file mode 100644 index 64ec9bd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/langturkishmodel.py +++ /dev/null @@ -1,193 +0,0 @@ -# -*- coding: utf-8 -*- -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Communicator client code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Özgür Baskın - Turkish Language Model -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -# 255: Control characters that usually does not exist in any text -# 254: Carriage/Return -# 253: symbol (punctuation) that does not belong to word -# 252: 0 - 9 - -# Character Mapping Table: -Latin5_TurkishCharToOrderMap = ( -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255, 23, 37, 47, 39, 29, 52, 36, 45, 53, 60, 16, 49, 20, 46, 42, - 48, 69, 44, 35, 31, 51, 38, 62, 65, 43, 56,255,255,255,255,255, -255, 1, 21, 28, 12, 2, 18, 27, 25, 3, 24, 10, 5, 13, 4, 15, - 26, 64, 7, 8, 9, 14, 32, 57, 58, 11, 22,255,255,255,255,255, -180,179,178,177,176,175,174,173,172,171,170,169,168,167,166,165, -164,163,162,161,160,159,101,158,157,156,155,154,153,152,151,106, -150,149,148,147,146,145,144,100,143,142,141,140,139,138,137,136, - 94, 80, 93,135,105,134,133, 63,132,131,130,129,128,127,126,125, -124,104, 73, 99, 79, 85,123, 54,122, 98, 92,121,120, 91,103,119, - 68,118,117, 97,116,115, 50, 90,114,113,112,111, 55, 41, 40, 86, - 89, 70, 59, 78, 71, 82, 88, 33, 77, 66, 84, 83,110, 75, 61, 96, - 30, 67,109, 74, 87,102, 34, 95, 81,108, 76, 72, 17, 6, 19,107, -) - -TurkishLangModel = ( -3,2,3,3,3,1,3,3,3,3,3,3,3,3,2,1,1,3,3,1,3,3,0,3,3,3,3,3,0,3,1,3, -3,2,1,0,0,1,1,0,0,0,1,0,0,1,1,1,1,0,0,0,0,0,0,0,2,2,0,0,1,0,0,1, -3,2,2,3,3,0,3,3,3,3,3,3,3,2,3,1,0,3,3,1,3,3,0,3,3,3,3,3,0,3,0,3, -3,1,1,0,1,0,1,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,2,2,0,0,0,1,0,1, -3,3,2,3,3,0,3,3,3,3,3,3,3,2,3,1,1,3,3,0,3,3,1,2,3,3,3,3,0,3,0,3, -3,1,1,0,0,0,1,0,0,0,0,1,1,0,1,2,1,0,0,0,1,0,0,0,0,2,0,0,0,0,0,1, -3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,1,3,3,2,0,3,2,1,2,2,1,3,3,0,0,0,2, -2,2,0,1,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1, -3,3,3,2,3,3,1,2,3,3,3,3,3,3,3,1,3,2,1,0,3,2,0,1,2,3,3,2,1,0,0,2, -2,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0, -1,0,1,3,3,1,3,3,3,3,3,3,3,1,2,0,0,2,3,0,2,3,0,0,2,2,2,3,0,3,0,1, -2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,0,3,2,0,2,3,2,3,3,1,0,0,2, -3,2,0,0,1,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,1,1,1,0,2,0,0,1, -3,3,3,2,3,3,2,3,3,3,3,2,3,3,3,0,3,3,0,0,2,1,0,0,2,3,2,2,0,0,0,2, -2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,0,1,0,2,0,0,1, -3,3,3,2,3,3,3,3,3,3,3,2,3,3,3,0,3,2,0,1,3,2,1,1,3,2,3,2,1,0,0,2, -2,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0, -3,3,3,2,3,3,3,3,3,3,3,2,3,3,3,0,3,2,2,0,2,3,0,0,2,2,2,2,0,0,0,2, -3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,1,0,0,0, -3,3,3,3,3,3,3,2,2,2,2,3,2,3,3,0,3,3,1,1,2,2,0,0,2,2,3,2,0,0,1,3, -0,3,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1, -3,3,3,2,3,3,3,2,1,2,2,3,2,3,3,0,3,2,0,0,1,1,0,1,1,2,1,2,0,0,0,1, -0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0, -3,3,3,2,3,3,2,3,2,2,2,3,3,3,3,1,3,1,1,0,3,2,1,1,3,3,2,3,1,0,0,1, -1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,0,1, -3,2,2,3,3,0,3,3,3,3,3,3,3,2,2,1,0,3,3,1,3,3,0,1,3,3,2,3,0,3,0,3, -2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0, -2,2,2,3,3,0,3,3,3,3,3,3,3,3,3,0,0,3,2,0,3,3,0,3,2,3,3,3,0,3,1,3, -2,0,0,0,0,0,0,0,0,0,0,1,0,1,2,0,1,0,0,0,0,0,0,0,2,2,0,0,1,0,0,1, -3,3,3,1,2,3,3,1,0,0,1,0,0,3,3,2,3,0,0,2,0,0,2,0,2,0,0,0,2,0,2,0, -0,3,1,0,1,0,0,0,2,2,1,0,1,1,2,1,2,2,2,0,2,1,1,0,0,0,2,0,0,0,0,0, -1,2,1,3,3,0,3,3,3,3,3,2,3,0,0,0,0,2,3,0,2,3,1,0,2,3,1,3,0,3,0,2, -3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,1,3,3,2,2,3,2,2,0,1,2,3,0,1,2,1,0,1,0,0,0,1,0,2,2,0,0,0,1, -1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0, -3,3,3,1,3,3,1,1,3,3,1,1,3,3,1,0,2,1,2,0,2,1,0,0,1,1,2,1,0,0,0,2, -2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,1,0,2,1,3,0,0,2,0,0,3,3,0,3,0,0,1,0,1,2,0,0,1,1,2,2,0,1,0, -0,1,2,1,1,0,1,0,1,1,1,1,1,0,1,1,1,2,2,1,2,0,1,0,0,0,0,0,0,1,0,0, -3,3,3,2,3,2,3,3,0,2,2,2,3,3,3,0,3,0,0,0,2,2,0,1,2,1,1,1,0,0,0,1, -0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0, -3,3,3,3,3,3,2,1,2,2,3,3,3,3,2,0,2,0,0,0,2,2,0,0,2,1,3,3,0,0,1,1, -1,1,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0, -1,1,2,3,3,0,3,3,3,3,3,3,2,2,0,2,0,2,3,2,3,2,2,2,2,2,2,2,1,3,2,3, -2,0,2,1,2,2,2,2,1,1,2,2,1,2,2,1,2,0,0,2,1,1,0,2,1,0,0,1,0,0,0,1, -2,3,3,1,1,1,0,1,1,1,2,3,2,1,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0, -0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,2,2,2,3,2,3,2,2,1,3,3,3,0,2,1,2,0,2,1,0,0,1,1,1,1,1,0,0,1, -2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,2,0,1,0,0,0, -3,3,3,2,3,3,3,3,3,2,3,1,2,3,3,1,2,0,0,0,0,0,0,0,3,2,1,1,0,0,0,0, -2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0, -3,3,3,2,2,3,3,2,1,1,1,1,1,3,3,0,3,1,0,0,1,1,0,0,3,1,2,1,0,0,0,0, -0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0, -3,3,3,2,2,3,2,2,2,3,2,1,1,3,3,0,3,0,0,0,0,1,0,0,3,1,1,2,0,0,0,1, -1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, -1,1,1,3,3,0,3,3,3,3,3,2,2,2,1,2,0,2,1,2,2,1,1,0,1,2,2,2,2,2,2,2, -0,0,2,1,2,1,2,1,0,1,1,3,1,2,1,1,2,0,0,2,0,1,0,1,0,1,0,0,0,1,0,1, -3,3,3,1,3,3,3,0,1,1,0,2,2,3,1,0,3,0,0,0,1,0,0,0,1,0,0,1,0,1,0,0, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,2,0,0,2,2,1,0,0,1,0,0,3,3,1,3,0,0,1,1,0,2,0,3,0,0,0,2,0,1,1, -0,1,2,0,1,2,2,0,2,2,2,2,1,0,2,1,1,0,2,0,2,1,2,0,0,0,0,0,0,0,0,0, -3,3,3,1,3,2,3,2,0,2,2,2,1,3,2,0,2,1,2,0,1,2,0,0,1,0,2,2,0,0,0,2, -1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0, -3,3,3,0,3,3,1,1,2,3,1,0,3,2,3,0,3,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0, -1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,3,3,0,3,3,2,3,3,2,2,0,0,0,0,1,2,0,1,3,0,0,0,3,1,1,0,3,0,2, -2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,1,2,2,1,0,3,1,1,1,1,3,3,2,3,0,0,1,0,1,2,0,2,2,0,2,2,0,2,1, -0,2,2,1,1,1,1,0,2,1,1,0,1,1,1,1,2,1,2,1,2,0,1,0,1,0,0,0,0,0,0,0, -3,3,3,0,1,1,3,0,0,1,1,0,0,2,2,0,3,0,0,1,1,0,1,0,0,0,0,0,2,0,0,0, -0,3,1,0,1,0,1,0,2,0,0,1,0,1,0,1,1,1,2,1,1,0,2,0,0,0,0,0,0,0,0,0, -3,3,3,0,2,0,2,0,1,1,1,0,0,3,3,0,2,0,0,1,0,0,2,1,1,0,1,0,1,0,1,0, -0,2,0,1,2,0,2,0,2,1,1,0,1,0,2,1,1,0,2,1,1,0,1,0,0,0,1,1,0,0,0,0, -3,2,3,0,1,0,0,0,0,0,0,0,0,1,2,0,1,0,0,1,0,0,1,0,0,0,0,0,2,0,0,0, -0,0,1,1,0,0,1,0,1,0,0,1,0,0,0,2,1,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,0,0,2,3,0,0,1,0,1,0,2,3,2,3,0,0,1,3,0,2,1,0,0,0,0,2,0,1,0, -0,2,1,0,0,1,1,0,2,1,0,0,1,0,0,1,1,0,1,1,2,0,1,0,0,0,0,1,0,0,0,0, -3,2,2,0,0,1,1,0,0,0,0,0,0,3,1,1,1,0,0,0,0,0,1,0,0,0,0,0,2,0,1,0, -0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,3,3,0,2,3,2,2,1,2,2,1,1,2,0,1,3,2,2,2,0,0,2,2,0,0,0,1,2,1, -3,0,2,1,1,0,1,1,1,0,1,2,2,2,1,1,2,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0, -0,1,1,2,3,0,3,3,3,2,2,2,2,1,0,1,0,1,0,1,2,2,0,0,2,2,1,3,1,1,2,1, -0,0,1,1,2,0,1,1,0,0,1,2,0,2,1,1,2,0,0,1,0,0,0,1,0,1,0,1,0,0,0,0, -3,3,2,0,0,3,1,0,0,0,0,0,0,3,2,1,2,0,0,1,0,0,2,0,0,0,0,0,2,0,1,0, -0,2,1,1,0,0,1,0,1,2,0,0,1,1,0,0,2,1,1,1,1,0,2,0,0,0,0,0,0,0,0,0, -3,3,2,0,0,1,0,0,0,0,1,0,0,3,3,2,2,0,0,1,0,0,2,0,1,0,0,0,2,0,1,0, -0,0,1,1,0,0,2,0,2,1,0,0,1,1,2,1,2,0,2,1,2,1,1,1,0,0,1,1,0,0,0,0, -3,3,2,0,0,2,2,0,0,0,1,1,0,2,2,1,3,1,0,1,0,1,2,0,0,0,0,0,1,0,1,0, -0,1,1,0,0,0,0,0,1,0,0,1,0,0,0,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,2,0,0,0,1,0,0,1,0,0,2,3,1,2,0,0,1,0,0,2,0,0,0,1,0,2,0,2,0, -0,1,1,2,2,1,2,0,2,1,1,0,0,1,1,0,1,1,1,1,2,1,1,0,0,0,0,0,0,0,0,0, -3,3,3,0,2,1,2,1,0,0,1,1,0,3,3,1,2,0,0,1,0,0,2,0,2,0,1,1,2,0,0,0, -0,0,1,1,1,1,2,0,1,1,0,1,1,1,1,0,0,0,1,1,1,0,1,0,0,0,1,0,0,0,0,0, -3,3,3,0,2,2,3,2,0,0,1,0,0,2,3,1,0,0,0,0,0,0,2,0,2,0,0,0,2,0,0,0, -0,1,1,0,0,0,1,0,0,1,0,1,1,0,1,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0, -3,2,3,0,0,0,0,0,0,0,1,0,0,2,2,2,2,0,0,1,0,0,2,0,0,0,0,0,2,0,1,0, -0,0,2,1,1,0,1,0,2,1,1,0,0,1,1,2,1,0,2,0,2,0,1,0,0,0,2,0,0,0,0,0, -0,0,0,2,2,0,2,1,1,1,1,2,2,0,0,1,0,1,0,0,1,3,0,0,0,0,1,0,0,2,1,0, -0,0,1,0,1,0,0,0,0,0,2,1,0,1,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0, -2,0,0,2,3,0,2,3,1,2,2,0,2,0,0,2,0,2,1,1,1,2,1,0,0,1,2,1,1,2,1,0, -1,0,2,0,1,0,1,1,0,0,2,2,1,2,1,1,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0, -3,3,3,0,2,1,2,0,0,0,1,0,0,3,2,0,1,0,0,1,0,0,2,0,0,0,1,2,1,0,1,0, -0,0,0,0,1,0,1,0,0,1,0,0,0,0,1,0,1,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,2,2,0,2,2,1,1,0,1,1,1,1,1,0,0,1,2,1,1,1,0,1,0,0,0,1,1,1,1, -0,0,2,1,0,1,1,1,0,1,1,2,1,2,1,1,2,0,1,1,2,1,0,2,0,0,0,0,0,0,0,0, -3,2,2,0,0,2,0,0,0,0,0,0,0,2,2,0,2,0,0,1,0,0,2,0,0,0,0,0,2,0,0,0, -0,2,1,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,3,2,0,2,2,0,1,1,0,1,0,0,1,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0, -2,0,1,0,1,0,1,1,0,0,1,2,0,1,0,1,1,0,0,1,0,1,0,2,0,0,0,0,0,0,0,0, -2,2,2,0,1,1,0,0,0,1,0,0,0,1,2,0,1,0,0,1,0,0,1,0,0,0,0,1,2,0,1,0, -0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,1,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,2,1,0,1,1,1,0,0,0,0,1,2,0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0, -1,1,2,0,1,0,0,0,1,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,0,0,0,1, -0,0,1,2,2,0,2,1,2,1,1,2,2,0,0,0,0,1,0,0,1,1,0,0,2,0,0,0,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0, -2,2,2,0,0,0,1,0,0,0,0,0,0,2,2,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -2,2,2,0,1,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -) - -Latin5TurkishModel = { - 'char_to_order_map': Latin5_TurkishCharToOrderMap, - 'precedence_matrix': TurkishLangModel, - 'typical_positive_ratio': 0.970290, - 'keep_english_letter': True, - 'charset_name': "ISO-8859-9", - 'language': 'Turkish', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/latin1prober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/latin1prober.py deleted file mode 100644 index 7c37520..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/latin1prober.py +++ /dev/null @@ -1,145 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .enums import ProbingState - -FREQ_CAT_NUM = 4 - -UDF = 0 # undefined -OTH = 1 # other -ASC = 2 # ascii capital letter -ASS = 3 # ascii small letter -ACV = 4 # accent capital vowel -ACO = 5 # accent capital other -ASV = 6 # accent small vowel -ASO = 7 # accent small other -CLASS_NUM = 8 # total classes - -Latin1_CharToClass = ( - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 00 - 07 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 08 - 0F - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 10 - 17 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 18 - 1F - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 20 - 27 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 28 - 2F - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 30 - 37 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 38 - 3F - OTH, ASC, ASC, ASC, ASC, ASC, ASC, ASC, # 40 - 47 - ASC, ASC, ASC, ASC, ASC, ASC, ASC, ASC, # 48 - 4F - ASC, ASC, ASC, ASC, ASC, ASC, ASC, ASC, # 50 - 57 - ASC, ASC, ASC, OTH, OTH, OTH, OTH, OTH, # 58 - 5F - OTH, ASS, ASS, ASS, ASS, ASS, ASS, ASS, # 60 - 67 - ASS, ASS, ASS, ASS, ASS, ASS, ASS, ASS, # 68 - 6F - ASS, ASS, ASS, ASS, ASS, ASS, ASS, ASS, # 70 - 77 - ASS, ASS, ASS, OTH, OTH, OTH, OTH, OTH, # 78 - 7F - OTH, UDF, OTH, ASO, OTH, OTH, OTH, OTH, # 80 - 87 - OTH, OTH, ACO, OTH, ACO, UDF, ACO, UDF, # 88 - 8F - UDF, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # 90 - 97 - OTH, OTH, ASO, OTH, ASO, UDF, ASO, ACO, # 98 - 9F - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # A0 - A7 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # A8 - AF - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # B0 - B7 - OTH, OTH, OTH, OTH, OTH, OTH, OTH, OTH, # B8 - BF - ACV, ACV, ACV, ACV, ACV, ACV, ACO, ACO, # C0 - C7 - ACV, ACV, ACV, ACV, ACV, ACV, ACV, ACV, # C8 - CF - ACO, ACO, ACV, ACV, ACV, ACV, ACV, OTH, # D0 - D7 - ACV, ACV, ACV, ACV, ACV, ACO, ACO, ACO, # D8 - DF - ASV, ASV, ASV, ASV, ASV, ASV, ASO, ASO, # E0 - E7 - ASV, ASV, ASV, ASV, ASV, ASV, ASV, ASV, # E8 - EF - ASO, ASO, ASV, ASV, ASV, ASV, ASV, OTH, # F0 - F7 - ASV, ASV, ASV, ASV, ASV, ASO, ASO, ASO, # F8 - FF -) - -# 0 : illegal -# 1 : very unlikely -# 2 : normal -# 3 : very likely -Latin1ClassModel = ( -# UDF OTH ASC ASS ACV ACO ASV ASO - 0, 0, 0, 0, 0, 0, 0, 0, # UDF - 0, 3, 3, 3, 3, 3, 3, 3, # OTH - 0, 3, 3, 3, 3, 3, 3, 3, # ASC - 0, 3, 3, 3, 1, 1, 3, 3, # ASS - 0, 3, 3, 3, 1, 2, 1, 2, # ACV - 0, 3, 3, 3, 3, 3, 3, 3, # ACO - 0, 3, 1, 3, 1, 1, 1, 3, # ASV - 0, 3, 1, 3, 1, 1, 3, 3, # ASO -) - - -class Latin1Prober(CharSetProber): - def __init__(self): - super(Latin1Prober, self).__init__() - self._last_char_class = None - self._freq_counter = None - self.reset() - - def reset(self): - self._last_char_class = OTH - self._freq_counter = [0] * FREQ_CAT_NUM - CharSetProber.reset(self) - - @property - def charset_name(self): - return "ISO-8859-1" - - @property - def language(self): - return "" - - def feed(self, byte_str): - byte_str = self.filter_with_english_letters(byte_str) - for c in byte_str: - char_class = Latin1_CharToClass[c] - freq = Latin1ClassModel[(self._last_char_class * CLASS_NUM) - + char_class] - if freq == 0: - self._state = ProbingState.NOT_ME - break - self._freq_counter[freq] += 1 - self._last_char_class = char_class - - return self.state - - def get_confidence(self): - if self.state == ProbingState.NOT_ME: - return 0.01 - - total = sum(self._freq_counter) - if total < 0.01: - confidence = 0.0 - else: - confidence = ((self._freq_counter[3] - self._freq_counter[1] * 20.0) - / total) - if confidence < 0.0: - confidence = 0.0 - # lower the confidence of latin1 so that other more accurate - # detector can take priority. - confidence = confidence * 0.73 - return confidence diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcharsetprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcharsetprober.py deleted file mode 100644 index 4609154..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcharsetprober.py +++ /dev/null @@ -1,91 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# Proofpoint, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .enums import ProbingState, MachineState - - -class MultiByteCharSetProber(CharSetProber): - """ - MultiByteCharSetProber - """ - - def __init__(self, lang_filter=None): - super(MultiByteCharSetProber, self).__init__(lang_filter=lang_filter) - self.distribution_analyzer = None - self.coding_sm = None - self._last_char = [0, 0] - - def reset(self): - super(MultiByteCharSetProber, self).reset() - if self.coding_sm: - self.coding_sm.reset() - if self.distribution_analyzer: - self.distribution_analyzer.reset() - self._last_char = [0, 0] - - @property - def charset_name(self): - raise NotImplementedError - - @property - def language(self): - raise NotImplementedError - - def feed(self, byte_str): - for i in range(len(byte_str)): - coding_state = self.coding_sm.next_state(byte_str[i]) - if coding_state == MachineState.ERROR: - self.logger.debug('%s %s prober hit error at byte %s', - self.charset_name, self.language, i) - self._state = ProbingState.NOT_ME - break - elif coding_state == MachineState.ITS_ME: - self._state = ProbingState.FOUND_IT - break - elif coding_state == MachineState.START: - char_len = self.coding_sm.get_current_charlen() - if i == 0: - self._last_char[1] = byte_str[0] - self.distribution_analyzer.feed(self._last_char, char_len) - else: - self.distribution_analyzer.feed(byte_str[i - 1:i + 1], - char_len) - - self._last_char[0] = byte_str[-1] - - if self.state == ProbingState.DETECTING: - if (self.distribution_analyzer.got_enough_data() and - (self.get_confidence() > self.SHORTCUT_THRESHOLD)): - self._state = ProbingState.FOUND_IT - - return self.state - - def get_confidence(self): - return self.distribution_analyzer.get_confidence() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcsgroupprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcsgroupprober.py deleted file mode 100644 index 4b04929..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcsgroupprober.py +++ /dev/null @@ -1,54 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# Proofpoint, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetgroupprober import CharSetGroupProber -from .utf8prober import UTF8Prober -from .sjisprober import SJISProber -from .eucjpprober import EUCJPProber -from .gb2312prober import GB2312Prober -from .euckrprober import EUCKRProber -from .cp949prober import CP949Prober -from .big5prober import Big5Prober -from .euctwprober import EUCTWProber - - -class MBCSGroupProber(CharSetGroupProber): - def __init__(self, lang_filter=None): - super(MBCSGroupProber, self).__init__(lang_filter=lang_filter) - self.probers = [ - UTF8Prober(), - SJISProber(), - EUCJPProber(), - GB2312Prober(), - EUCKRProber(), - CP949Prober(), - Big5Prober(), - EUCTWProber() - ] - self.reset() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcssm.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcssm.py deleted file mode 100644 index d68f6f6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/mbcssm.py +++ /dev/null @@ -1,572 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .enums import MachineState - -# BIG5 - -BIG5_CLS = ( - 1,1,1,1,1,1,1,1, # 00 - 07 #allow 0x00 as legal value - 1,1,1,1,1,1,0,0, # 08 - 0f - 1,1,1,1,1,1,1,1, # 10 - 17 - 1,1,1,0,1,1,1,1, # 18 - 1f - 1,1,1,1,1,1,1,1, # 20 - 27 - 1,1,1,1,1,1,1,1, # 28 - 2f - 1,1,1,1,1,1,1,1, # 30 - 37 - 1,1,1,1,1,1,1,1, # 38 - 3f - 2,2,2,2,2,2,2,2, # 40 - 47 - 2,2,2,2,2,2,2,2, # 48 - 4f - 2,2,2,2,2,2,2,2, # 50 - 57 - 2,2,2,2,2,2,2,2, # 58 - 5f - 2,2,2,2,2,2,2,2, # 60 - 67 - 2,2,2,2,2,2,2,2, # 68 - 6f - 2,2,2,2,2,2,2,2, # 70 - 77 - 2,2,2,2,2,2,2,1, # 78 - 7f - 4,4,4,4,4,4,4,4, # 80 - 87 - 4,4,4,4,4,4,4,4, # 88 - 8f - 4,4,4,4,4,4,4,4, # 90 - 97 - 4,4,4,4,4,4,4,4, # 98 - 9f - 4,3,3,3,3,3,3,3, # a0 - a7 - 3,3,3,3,3,3,3,3, # a8 - af - 3,3,3,3,3,3,3,3, # b0 - b7 - 3,3,3,3,3,3,3,3, # b8 - bf - 3,3,3,3,3,3,3,3, # c0 - c7 - 3,3,3,3,3,3,3,3, # c8 - cf - 3,3,3,3,3,3,3,3, # d0 - d7 - 3,3,3,3,3,3,3,3, # d8 - df - 3,3,3,3,3,3,3,3, # e0 - e7 - 3,3,3,3,3,3,3,3, # e8 - ef - 3,3,3,3,3,3,3,3, # f0 - f7 - 3,3,3,3,3,3,3,0 # f8 - ff -) - -BIG5_ST = ( - MachineState.ERROR,MachineState.START,MachineState.START, 3,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,#08-0f - MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START#10-17 -) - -BIG5_CHAR_LEN_TABLE = (0, 1, 1, 2, 0) - -BIG5_SM_MODEL = {'class_table': BIG5_CLS, - 'class_factor': 5, - 'state_table': BIG5_ST, - 'char_len_table': BIG5_CHAR_LEN_TABLE, - 'name': 'Big5'} - -# CP949 - -CP949_CLS = ( - 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,0,0, # 00 - 0f - 1,1,1,1,1,1,1,1, 1,1,1,0,1,1,1,1, # 10 - 1f - 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, # 20 - 2f - 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, # 30 - 3f - 1,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4, # 40 - 4f - 4,4,5,5,5,5,5,5, 5,5,5,1,1,1,1,1, # 50 - 5f - 1,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5, # 60 - 6f - 5,5,5,5,5,5,5,5, 5,5,5,1,1,1,1,1, # 70 - 7f - 0,6,6,6,6,6,6,6, 6,6,6,6,6,6,6,6, # 80 - 8f - 6,6,6,6,6,6,6,6, 6,6,6,6,6,6,6,6, # 90 - 9f - 6,7,7,7,7,7,7,7, 7,7,7,7,7,8,8,8, # a0 - af - 7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7, # b0 - bf - 7,7,7,7,7,7,9,2, 2,3,2,2,2,2,2,2, # c0 - cf - 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2, # d0 - df - 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2, # e0 - ef - 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,0, # f0 - ff -) - -CP949_ST = ( -#cls= 0 1 2 3 4 5 6 7 8 9 # previous state = - MachineState.ERROR,MachineState.START, 3,MachineState.ERROR,MachineState.START,MachineState.START, 4, 5,MachineState.ERROR, 6, # MachineState.START - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, # MachineState.ERROR - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME, # MachineState.ITS_ME - MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START, # 3 - MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START, # 4 - MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START, # 5 - MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START, # 6 -) - -CP949_CHAR_LEN_TABLE = (0, 1, 2, 0, 1, 1, 2, 2, 0, 2) - -CP949_SM_MODEL = {'class_table': CP949_CLS, - 'class_factor': 10, - 'state_table': CP949_ST, - 'char_len_table': CP949_CHAR_LEN_TABLE, - 'name': 'CP949'} - -# EUC-JP - -EUCJP_CLS = ( - 4,4,4,4,4,4,4,4, # 00 - 07 - 4,4,4,4,4,4,5,5, # 08 - 0f - 4,4,4,4,4,4,4,4, # 10 - 17 - 4,4,4,5,4,4,4,4, # 18 - 1f - 4,4,4,4,4,4,4,4, # 20 - 27 - 4,4,4,4,4,4,4,4, # 28 - 2f - 4,4,4,4,4,4,4,4, # 30 - 37 - 4,4,4,4,4,4,4,4, # 38 - 3f - 4,4,4,4,4,4,4,4, # 40 - 47 - 4,4,4,4,4,4,4,4, # 48 - 4f - 4,4,4,4,4,4,4,4, # 50 - 57 - 4,4,4,4,4,4,4,4, # 58 - 5f - 4,4,4,4,4,4,4,4, # 60 - 67 - 4,4,4,4,4,4,4,4, # 68 - 6f - 4,4,4,4,4,4,4,4, # 70 - 77 - 4,4,4,4,4,4,4,4, # 78 - 7f - 5,5,5,5,5,5,5,5, # 80 - 87 - 5,5,5,5,5,5,1,3, # 88 - 8f - 5,5,5,5,5,5,5,5, # 90 - 97 - 5,5,5,5,5,5,5,5, # 98 - 9f - 5,2,2,2,2,2,2,2, # a0 - a7 - 2,2,2,2,2,2,2,2, # a8 - af - 2,2,2,2,2,2,2,2, # b0 - b7 - 2,2,2,2,2,2,2,2, # b8 - bf - 2,2,2,2,2,2,2,2, # c0 - c7 - 2,2,2,2,2,2,2,2, # c8 - cf - 2,2,2,2,2,2,2,2, # d0 - d7 - 2,2,2,2,2,2,2,2, # d8 - df - 0,0,0,0,0,0,0,0, # e0 - e7 - 0,0,0,0,0,0,0,0, # e8 - ef - 0,0,0,0,0,0,0,0, # f0 - f7 - 0,0,0,0,0,0,0,5 # f8 - ff -) - -EUCJP_ST = ( - 3, 4, 3, 5,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.START,MachineState.ERROR,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#10-17 - MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 3,MachineState.ERROR,#18-1f - 3,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START#20-27 -) - -EUCJP_CHAR_LEN_TABLE = (2, 2, 2, 3, 1, 0) - -EUCJP_SM_MODEL = {'class_table': EUCJP_CLS, - 'class_factor': 6, - 'state_table': EUCJP_ST, - 'char_len_table': EUCJP_CHAR_LEN_TABLE, - 'name': 'EUC-JP'} - -# EUC-KR - -EUCKR_CLS = ( - 1,1,1,1,1,1,1,1, # 00 - 07 - 1,1,1,1,1,1,0,0, # 08 - 0f - 1,1,1,1,1,1,1,1, # 10 - 17 - 1,1,1,0,1,1,1,1, # 18 - 1f - 1,1,1,1,1,1,1,1, # 20 - 27 - 1,1,1,1,1,1,1,1, # 28 - 2f - 1,1,1,1,1,1,1,1, # 30 - 37 - 1,1,1,1,1,1,1,1, # 38 - 3f - 1,1,1,1,1,1,1,1, # 40 - 47 - 1,1,1,1,1,1,1,1, # 48 - 4f - 1,1,1,1,1,1,1,1, # 50 - 57 - 1,1,1,1,1,1,1,1, # 58 - 5f - 1,1,1,1,1,1,1,1, # 60 - 67 - 1,1,1,1,1,1,1,1, # 68 - 6f - 1,1,1,1,1,1,1,1, # 70 - 77 - 1,1,1,1,1,1,1,1, # 78 - 7f - 0,0,0,0,0,0,0,0, # 80 - 87 - 0,0,0,0,0,0,0,0, # 88 - 8f - 0,0,0,0,0,0,0,0, # 90 - 97 - 0,0,0,0,0,0,0,0, # 98 - 9f - 0,2,2,2,2,2,2,2, # a0 - a7 - 2,2,2,2,2,3,3,3, # a8 - af - 2,2,2,2,2,2,2,2, # b0 - b7 - 2,2,2,2,2,2,2,2, # b8 - bf - 2,2,2,2,2,2,2,2, # c0 - c7 - 2,3,2,2,2,2,2,2, # c8 - cf - 2,2,2,2,2,2,2,2, # d0 - d7 - 2,2,2,2,2,2,2,2, # d8 - df - 2,2,2,2,2,2,2,2, # e0 - e7 - 2,2,2,2,2,2,2,2, # e8 - ef - 2,2,2,2,2,2,2,2, # f0 - f7 - 2,2,2,2,2,2,2,0 # f8 - ff -) - -EUCKR_ST = ( - MachineState.ERROR,MachineState.START, 3,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START #08-0f -) - -EUCKR_CHAR_LEN_TABLE = (0, 1, 2, 0) - -EUCKR_SM_MODEL = {'class_table': EUCKR_CLS, - 'class_factor': 4, - 'state_table': EUCKR_ST, - 'char_len_table': EUCKR_CHAR_LEN_TABLE, - 'name': 'EUC-KR'} - -# EUC-TW - -EUCTW_CLS = ( - 2,2,2,2,2,2,2,2, # 00 - 07 - 2,2,2,2,2,2,0,0, # 08 - 0f - 2,2,2,2,2,2,2,2, # 10 - 17 - 2,2,2,0,2,2,2,2, # 18 - 1f - 2,2,2,2,2,2,2,2, # 20 - 27 - 2,2,2,2,2,2,2,2, # 28 - 2f - 2,2,2,2,2,2,2,2, # 30 - 37 - 2,2,2,2,2,2,2,2, # 38 - 3f - 2,2,2,2,2,2,2,2, # 40 - 47 - 2,2,2,2,2,2,2,2, # 48 - 4f - 2,2,2,2,2,2,2,2, # 50 - 57 - 2,2,2,2,2,2,2,2, # 58 - 5f - 2,2,2,2,2,2,2,2, # 60 - 67 - 2,2,2,2,2,2,2,2, # 68 - 6f - 2,2,2,2,2,2,2,2, # 70 - 77 - 2,2,2,2,2,2,2,2, # 78 - 7f - 0,0,0,0,0,0,0,0, # 80 - 87 - 0,0,0,0,0,0,6,0, # 88 - 8f - 0,0,0,0,0,0,0,0, # 90 - 97 - 0,0,0,0,0,0,0,0, # 98 - 9f - 0,3,4,4,4,4,4,4, # a0 - a7 - 5,5,1,1,1,1,1,1, # a8 - af - 1,1,1,1,1,1,1,1, # b0 - b7 - 1,1,1,1,1,1,1,1, # b8 - bf - 1,1,3,1,3,3,3,3, # c0 - c7 - 3,3,3,3,3,3,3,3, # c8 - cf - 3,3,3,3,3,3,3,3, # d0 - d7 - 3,3,3,3,3,3,3,3, # d8 - df - 3,3,3,3,3,3,3,3, # e0 - e7 - 3,3,3,3,3,3,3,3, # e8 - ef - 3,3,3,3,3,3,3,3, # f0 - f7 - 3,3,3,3,3,3,3,0 # f8 - ff -) - -EUCTW_ST = ( - MachineState.ERROR,MachineState.ERROR,MachineState.START, 3, 3, 3, 4,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.START,MachineState.ERROR,#10-17 - MachineState.START,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#18-1f - 5,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.ERROR,MachineState.START,MachineState.START,#20-27 - MachineState.START,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START #28-2f -) - -EUCTW_CHAR_LEN_TABLE = (0, 0, 1, 2, 2, 2, 3) - -EUCTW_SM_MODEL = {'class_table': EUCTW_CLS, - 'class_factor': 7, - 'state_table': EUCTW_ST, - 'char_len_table': EUCTW_CHAR_LEN_TABLE, - 'name': 'x-euc-tw'} - -# GB2312 - -GB2312_CLS = ( - 1,1,1,1,1,1,1,1, # 00 - 07 - 1,1,1,1,1,1,0,0, # 08 - 0f - 1,1,1,1,1,1,1,1, # 10 - 17 - 1,1,1,0,1,1,1,1, # 18 - 1f - 1,1,1,1,1,1,1,1, # 20 - 27 - 1,1,1,1,1,1,1,1, # 28 - 2f - 3,3,3,3,3,3,3,3, # 30 - 37 - 3,3,1,1,1,1,1,1, # 38 - 3f - 2,2,2,2,2,2,2,2, # 40 - 47 - 2,2,2,2,2,2,2,2, # 48 - 4f - 2,2,2,2,2,2,2,2, # 50 - 57 - 2,2,2,2,2,2,2,2, # 58 - 5f - 2,2,2,2,2,2,2,2, # 60 - 67 - 2,2,2,2,2,2,2,2, # 68 - 6f - 2,2,2,2,2,2,2,2, # 70 - 77 - 2,2,2,2,2,2,2,4, # 78 - 7f - 5,6,6,6,6,6,6,6, # 80 - 87 - 6,6,6,6,6,6,6,6, # 88 - 8f - 6,6,6,6,6,6,6,6, # 90 - 97 - 6,6,6,6,6,6,6,6, # 98 - 9f - 6,6,6,6,6,6,6,6, # a0 - a7 - 6,6,6,6,6,6,6,6, # a8 - af - 6,6,6,6,6,6,6,6, # b0 - b7 - 6,6,6,6,6,6,6,6, # b8 - bf - 6,6,6,6,6,6,6,6, # c0 - c7 - 6,6,6,6,6,6,6,6, # c8 - cf - 6,6,6,6,6,6,6,6, # d0 - d7 - 6,6,6,6,6,6,6,6, # d8 - df - 6,6,6,6,6,6,6,6, # e0 - e7 - 6,6,6,6,6,6,6,6, # e8 - ef - 6,6,6,6,6,6,6,6, # f0 - f7 - 6,6,6,6,6,6,6,0 # f8 - ff -) - -GB2312_ST = ( - MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START, 3,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.START,#10-17 - 4,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#18-1f - MachineState.ERROR,MachineState.ERROR, 5,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,#20-27 - MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.START #28-2f -) - -# To be accurate, the length of class 6 can be either 2 or 4. -# But it is not necessary to discriminate between the two since -# it is used for frequency analysis only, and we are validating -# each code range there as well. So it is safe to set it to be -# 2 here. -GB2312_CHAR_LEN_TABLE = (0, 1, 1, 1, 1, 1, 2) - -GB2312_SM_MODEL = {'class_table': GB2312_CLS, - 'class_factor': 7, - 'state_table': GB2312_ST, - 'char_len_table': GB2312_CHAR_LEN_TABLE, - 'name': 'GB2312'} - -# Shift_JIS - -SJIS_CLS = ( - 1,1,1,1,1,1,1,1, # 00 - 07 - 1,1,1,1,1,1,0,0, # 08 - 0f - 1,1,1,1,1,1,1,1, # 10 - 17 - 1,1,1,0,1,1,1,1, # 18 - 1f - 1,1,1,1,1,1,1,1, # 20 - 27 - 1,1,1,1,1,1,1,1, # 28 - 2f - 1,1,1,1,1,1,1,1, # 30 - 37 - 1,1,1,1,1,1,1,1, # 38 - 3f - 2,2,2,2,2,2,2,2, # 40 - 47 - 2,2,2,2,2,2,2,2, # 48 - 4f - 2,2,2,2,2,2,2,2, # 50 - 57 - 2,2,2,2,2,2,2,2, # 58 - 5f - 2,2,2,2,2,2,2,2, # 60 - 67 - 2,2,2,2,2,2,2,2, # 68 - 6f - 2,2,2,2,2,2,2,2, # 70 - 77 - 2,2,2,2,2,2,2,1, # 78 - 7f - 3,3,3,3,3,2,2,3, # 80 - 87 - 3,3,3,3,3,3,3,3, # 88 - 8f - 3,3,3,3,3,3,3,3, # 90 - 97 - 3,3,3,3,3,3,3,3, # 98 - 9f - #0xa0 is illegal in sjis encoding, but some pages does - #contain such byte. We need to be more error forgiven. - 2,2,2,2,2,2,2,2, # a0 - a7 - 2,2,2,2,2,2,2,2, # a8 - af - 2,2,2,2,2,2,2,2, # b0 - b7 - 2,2,2,2,2,2,2,2, # b8 - bf - 2,2,2,2,2,2,2,2, # c0 - c7 - 2,2,2,2,2,2,2,2, # c8 - cf - 2,2,2,2,2,2,2,2, # d0 - d7 - 2,2,2,2,2,2,2,2, # d8 - df - 3,3,3,3,3,3,3,3, # e0 - e7 - 3,3,3,3,3,4,4,4, # e8 - ef - 3,3,3,3,3,3,3,3, # f0 - f7 - 3,3,3,3,3,0,0,0) # f8 - ff - - -SJIS_ST = ( - MachineState.ERROR,MachineState.START,MachineState.START, 3,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START #10-17 -) - -SJIS_CHAR_LEN_TABLE = (0, 1, 1, 2, 0, 0) - -SJIS_SM_MODEL = {'class_table': SJIS_CLS, - 'class_factor': 6, - 'state_table': SJIS_ST, - 'char_len_table': SJIS_CHAR_LEN_TABLE, - 'name': 'Shift_JIS'} - -# UCS2-BE - -UCS2BE_CLS = ( - 0,0,0,0,0,0,0,0, # 00 - 07 - 0,0,1,0,0,2,0,0, # 08 - 0f - 0,0,0,0,0,0,0,0, # 10 - 17 - 0,0,0,3,0,0,0,0, # 18 - 1f - 0,0,0,0,0,0,0,0, # 20 - 27 - 0,3,3,3,3,3,0,0, # 28 - 2f - 0,0,0,0,0,0,0,0, # 30 - 37 - 0,0,0,0,0,0,0,0, # 38 - 3f - 0,0,0,0,0,0,0,0, # 40 - 47 - 0,0,0,0,0,0,0,0, # 48 - 4f - 0,0,0,0,0,0,0,0, # 50 - 57 - 0,0,0,0,0,0,0,0, # 58 - 5f - 0,0,0,0,0,0,0,0, # 60 - 67 - 0,0,0,0,0,0,0,0, # 68 - 6f - 0,0,0,0,0,0,0,0, # 70 - 77 - 0,0,0,0,0,0,0,0, # 78 - 7f - 0,0,0,0,0,0,0,0, # 80 - 87 - 0,0,0,0,0,0,0,0, # 88 - 8f - 0,0,0,0,0,0,0,0, # 90 - 97 - 0,0,0,0,0,0,0,0, # 98 - 9f - 0,0,0,0,0,0,0,0, # a0 - a7 - 0,0,0,0,0,0,0,0, # a8 - af - 0,0,0,0,0,0,0,0, # b0 - b7 - 0,0,0,0,0,0,0,0, # b8 - bf - 0,0,0,0,0,0,0,0, # c0 - c7 - 0,0,0,0,0,0,0,0, # c8 - cf - 0,0,0,0,0,0,0,0, # d0 - d7 - 0,0,0,0,0,0,0,0, # d8 - df - 0,0,0,0,0,0,0,0, # e0 - e7 - 0,0,0,0,0,0,0,0, # e8 - ef - 0,0,0,0,0,0,0,0, # f0 - f7 - 0,0,0,0,0,0,4,5 # f8 - ff -) - -UCS2BE_ST = ( - 5, 7, 7,MachineState.ERROR, 4, 3,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME, 6, 6, 6, 6,MachineState.ERROR,MachineState.ERROR,#10-17 - 6, 6, 6, 6, 6,MachineState.ITS_ME, 6, 6,#18-1f - 6, 6, 6, 6, 5, 7, 7,MachineState.ERROR,#20-27 - 5, 8, 6, 6,MachineState.ERROR, 6, 6, 6,#28-2f - 6, 6, 6, 6,MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START #30-37 -) - -UCS2BE_CHAR_LEN_TABLE = (2, 2, 2, 0, 2, 2) - -UCS2BE_SM_MODEL = {'class_table': UCS2BE_CLS, - 'class_factor': 6, - 'state_table': UCS2BE_ST, - 'char_len_table': UCS2BE_CHAR_LEN_TABLE, - 'name': 'UTF-16BE'} - -# UCS2-LE - -UCS2LE_CLS = ( - 0,0,0,0,0,0,0,0, # 00 - 07 - 0,0,1,0,0,2,0,0, # 08 - 0f - 0,0,0,0,0,0,0,0, # 10 - 17 - 0,0,0,3,0,0,0,0, # 18 - 1f - 0,0,0,0,0,0,0,0, # 20 - 27 - 0,3,3,3,3,3,0,0, # 28 - 2f - 0,0,0,0,0,0,0,0, # 30 - 37 - 0,0,0,0,0,0,0,0, # 38 - 3f - 0,0,0,0,0,0,0,0, # 40 - 47 - 0,0,0,0,0,0,0,0, # 48 - 4f - 0,0,0,0,0,0,0,0, # 50 - 57 - 0,0,0,0,0,0,0,0, # 58 - 5f - 0,0,0,0,0,0,0,0, # 60 - 67 - 0,0,0,0,0,0,0,0, # 68 - 6f - 0,0,0,0,0,0,0,0, # 70 - 77 - 0,0,0,0,0,0,0,0, # 78 - 7f - 0,0,0,0,0,0,0,0, # 80 - 87 - 0,0,0,0,0,0,0,0, # 88 - 8f - 0,0,0,0,0,0,0,0, # 90 - 97 - 0,0,0,0,0,0,0,0, # 98 - 9f - 0,0,0,0,0,0,0,0, # a0 - a7 - 0,0,0,0,0,0,0,0, # a8 - af - 0,0,0,0,0,0,0,0, # b0 - b7 - 0,0,0,0,0,0,0,0, # b8 - bf - 0,0,0,0,0,0,0,0, # c0 - c7 - 0,0,0,0,0,0,0,0, # c8 - cf - 0,0,0,0,0,0,0,0, # d0 - d7 - 0,0,0,0,0,0,0,0, # d8 - df - 0,0,0,0,0,0,0,0, # e0 - e7 - 0,0,0,0,0,0,0,0, # e8 - ef - 0,0,0,0,0,0,0,0, # f0 - f7 - 0,0,0,0,0,0,4,5 # f8 - ff -) - -UCS2LE_ST = ( - 6, 6, 7, 6, 4, 3,MachineState.ERROR,MachineState.ERROR,#00-07 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#08-0f - MachineState.ITS_ME,MachineState.ITS_ME, 5, 5, 5,MachineState.ERROR,MachineState.ITS_ME,MachineState.ERROR,#10-17 - 5, 5, 5,MachineState.ERROR, 5,MachineState.ERROR, 6, 6,#18-1f - 7, 6, 8, 8, 5, 5, 5,MachineState.ERROR,#20-27 - 5, 5, 5,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 5, 5,#28-2f - 5, 5, 5,MachineState.ERROR, 5,MachineState.ERROR,MachineState.START,MachineState.START #30-37 -) - -UCS2LE_CHAR_LEN_TABLE = (2, 2, 2, 2, 2, 2) - -UCS2LE_SM_MODEL = {'class_table': UCS2LE_CLS, - 'class_factor': 6, - 'state_table': UCS2LE_ST, - 'char_len_table': UCS2LE_CHAR_LEN_TABLE, - 'name': 'UTF-16LE'} - -# UTF-8 - -UTF8_CLS = ( - 1,1,1,1,1,1,1,1, # 00 - 07 #allow 0x00 as a legal value - 1,1,1,1,1,1,0,0, # 08 - 0f - 1,1,1,1,1,1,1,1, # 10 - 17 - 1,1,1,0,1,1,1,1, # 18 - 1f - 1,1,1,1,1,1,1,1, # 20 - 27 - 1,1,1,1,1,1,1,1, # 28 - 2f - 1,1,1,1,1,1,1,1, # 30 - 37 - 1,1,1,1,1,1,1,1, # 38 - 3f - 1,1,1,1,1,1,1,1, # 40 - 47 - 1,1,1,1,1,1,1,1, # 48 - 4f - 1,1,1,1,1,1,1,1, # 50 - 57 - 1,1,1,1,1,1,1,1, # 58 - 5f - 1,1,1,1,1,1,1,1, # 60 - 67 - 1,1,1,1,1,1,1,1, # 68 - 6f - 1,1,1,1,1,1,1,1, # 70 - 77 - 1,1,1,1,1,1,1,1, # 78 - 7f - 2,2,2,2,3,3,3,3, # 80 - 87 - 4,4,4,4,4,4,4,4, # 88 - 8f - 4,4,4,4,4,4,4,4, # 90 - 97 - 4,4,4,4,4,4,4,4, # 98 - 9f - 5,5,5,5,5,5,5,5, # a0 - a7 - 5,5,5,5,5,5,5,5, # a8 - af - 5,5,5,5,5,5,5,5, # b0 - b7 - 5,5,5,5,5,5,5,5, # b8 - bf - 0,0,6,6,6,6,6,6, # c0 - c7 - 6,6,6,6,6,6,6,6, # c8 - cf - 6,6,6,6,6,6,6,6, # d0 - d7 - 6,6,6,6,6,6,6,6, # d8 - df - 7,8,8,8,8,8,8,8, # e0 - e7 - 8,8,8,8,8,9,8,8, # e8 - ef - 10,11,11,11,11,11,11,11, # f0 - f7 - 12,13,13,13,14,15,0,0 # f8 - ff -) - -UTF8_ST = ( - MachineState.ERROR,MachineState.START,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 12, 10,#00-07 - 9, 11, 8, 7, 6, 5, 4, 3,#08-0f - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#10-17 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#18-1f - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#20-27 - MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,MachineState.ITS_ME,#28-2f - MachineState.ERROR,MachineState.ERROR, 5, 5, 5, 5,MachineState.ERROR,MachineState.ERROR,#30-37 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#38-3f - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 5, 5, 5,MachineState.ERROR,MachineState.ERROR,#40-47 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#48-4f - MachineState.ERROR,MachineState.ERROR, 7, 7, 7, 7,MachineState.ERROR,MachineState.ERROR,#50-57 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#58-5f - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 7, 7,MachineState.ERROR,MachineState.ERROR,#60-67 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#68-6f - MachineState.ERROR,MachineState.ERROR, 9, 9, 9, 9,MachineState.ERROR,MachineState.ERROR,#70-77 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#78-7f - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 9,MachineState.ERROR,MachineState.ERROR,#80-87 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#88-8f - MachineState.ERROR,MachineState.ERROR, 12, 12, 12, 12,MachineState.ERROR,MachineState.ERROR,#90-97 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#98-9f - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR, 12,MachineState.ERROR,MachineState.ERROR,#a0-a7 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#a8-af - MachineState.ERROR,MachineState.ERROR, 12, 12, 12,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#b0-b7 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,#b8-bf - MachineState.ERROR,MachineState.ERROR,MachineState.START,MachineState.START,MachineState.START,MachineState.START,MachineState.ERROR,MachineState.ERROR,#c0-c7 - MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR,MachineState.ERROR #c8-cf -) - -UTF8_CHAR_LEN_TABLE = (0, 1, 0, 0, 0, 0, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6) - -UTF8_SM_MODEL = {'class_table': UTF8_CLS, - 'class_factor': 16, - 'state_table': UTF8_ST, - 'char_len_table': UTF8_CHAR_LEN_TABLE, - 'name': 'UTF-8'} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcharsetprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcharsetprober.py deleted file mode 100644 index 66e0dfc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcharsetprober.py +++ /dev/null @@ -1,132 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .enums import CharacterCategory, ProbingState, SequenceLikelihood - - -class SingleByteCharSetProber(CharSetProber): - SAMPLE_SIZE = 64 - SB_ENOUGH_REL_THRESHOLD = 1024 # 0.25 * SAMPLE_SIZE^2 - POSITIVE_SHORTCUT_THRESHOLD = 0.95 - NEGATIVE_SHORTCUT_THRESHOLD = 0.05 - - def __init__(self, model, reversed=False, name_prober=None): - super(SingleByteCharSetProber, self).__init__() - self._model = model - # TRUE if we need to reverse every pair in the model lookup - self._reversed = reversed - # Optional auxiliary prober for name decision - self._name_prober = name_prober - self._last_order = None - self._seq_counters = None - self._total_seqs = None - self._total_char = None - self._freq_char = None - self.reset() - - def reset(self): - super(SingleByteCharSetProber, self).reset() - # char order of last character - self._last_order = 255 - self._seq_counters = [0] * SequenceLikelihood.get_num_categories() - self._total_seqs = 0 - self._total_char = 0 - # characters that fall in our sampling range - self._freq_char = 0 - - @property - def charset_name(self): - if self._name_prober: - return self._name_prober.charset_name - else: - return self._model['charset_name'] - - @property - def language(self): - if self._name_prober: - return self._name_prober.language - else: - return self._model.get('language') - - def feed(self, byte_str): - if not self._model['keep_english_letter']: - byte_str = self.filter_international_words(byte_str) - if not byte_str: - return self.state - char_to_order_map = self._model['char_to_order_map'] - for i, c in enumerate(byte_str): - # XXX: Order is in range 1-64, so one would think we want 0-63 here, - # but that leads to 27 more test failures than before. - order = char_to_order_map[c] - # XXX: This was SYMBOL_CAT_ORDER before, with a value of 250, but - # CharacterCategory.SYMBOL is actually 253, so we use CONTROL - # to make it closer to the original intent. The only difference - # is whether or not we count digits and control characters for - # _total_char purposes. - if order < CharacterCategory.CONTROL: - self._total_char += 1 - if order < self.SAMPLE_SIZE: - self._freq_char += 1 - if self._last_order < self.SAMPLE_SIZE: - self._total_seqs += 1 - if not self._reversed: - i = (self._last_order * self.SAMPLE_SIZE) + order - model = self._model['precedence_matrix'][i] - else: # reverse the order of the letters in the lookup - i = (order * self.SAMPLE_SIZE) + self._last_order - model = self._model['precedence_matrix'][i] - self._seq_counters[model] += 1 - self._last_order = order - - charset_name = self._model['charset_name'] - if self.state == ProbingState.DETECTING: - if self._total_seqs > self.SB_ENOUGH_REL_THRESHOLD: - confidence = self.get_confidence() - if confidence > self.POSITIVE_SHORTCUT_THRESHOLD: - self.logger.debug('%s confidence = %s, we have a winner', - charset_name, confidence) - self._state = ProbingState.FOUND_IT - elif confidence < self.NEGATIVE_SHORTCUT_THRESHOLD: - self.logger.debug('%s confidence = %s, below negative ' - 'shortcut threshhold %s', charset_name, - confidence, - self.NEGATIVE_SHORTCUT_THRESHOLD) - self._state = ProbingState.NOT_ME - - return self.state - - def get_confidence(self): - r = 0.01 - if self._total_seqs > 0: - r = ((1.0 * self._seq_counters[SequenceLikelihood.POSITIVE]) / - self._total_seqs / self._model['typical_positive_ratio']) - r = r * self._freq_char / self._total_char - if r >= 1.0: - r = 0.99 - return r diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcsgroupprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcsgroupprober.py deleted file mode 100644 index 29bcc2a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sbcsgroupprober.py +++ /dev/null @@ -1,73 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetgroupprober import CharSetGroupProber -from .sbcharsetprober import SingleByteCharSetProber -from .langcyrillicmodel import (Win1251CyrillicModel, Koi8rModel, - Latin5CyrillicModel, MacCyrillicModel, - Ibm866Model, Ibm855Model) -from .langgreekmodel import Latin7GreekModel, Win1253GreekModel -from .langbulgarianmodel import Latin5BulgarianModel, Win1251BulgarianModel -# from .langhungarianmodel import Latin2HungarianModel, Win1250HungarianModel -from .langthaimodel import TIS620ThaiModel -from .langhebrewmodel import Win1255HebrewModel -from .hebrewprober import HebrewProber -from .langturkishmodel import Latin5TurkishModel - - -class SBCSGroupProber(CharSetGroupProber): - def __init__(self): - super(SBCSGroupProber, self).__init__() - self.probers = [ - SingleByteCharSetProber(Win1251CyrillicModel), - SingleByteCharSetProber(Koi8rModel), - SingleByteCharSetProber(Latin5CyrillicModel), - SingleByteCharSetProber(MacCyrillicModel), - SingleByteCharSetProber(Ibm866Model), - SingleByteCharSetProber(Ibm855Model), - SingleByteCharSetProber(Latin7GreekModel), - SingleByteCharSetProber(Win1253GreekModel), - SingleByteCharSetProber(Latin5BulgarianModel), - SingleByteCharSetProber(Win1251BulgarianModel), - # TODO: Restore Hungarian encodings (iso-8859-2 and windows-1250) - # after we retrain model. - # SingleByteCharSetProber(Latin2HungarianModel), - # SingleByteCharSetProber(Win1250HungarianModel), - SingleByteCharSetProber(TIS620ThaiModel), - SingleByteCharSetProber(Latin5TurkishModel), - ] - hebrew_prober = HebrewProber() - logical_hebrew_prober = SingleByteCharSetProber(Win1255HebrewModel, - False, hebrew_prober) - visual_hebrew_prober = SingleByteCharSetProber(Win1255HebrewModel, True, - hebrew_prober) - hebrew_prober.set_model_probers(logical_hebrew_prober, visual_hebrew_prober) - self.probers.extend([hebrew_prober, logical_hebrew_prober, - visual_hebrew_prober]) - - self.reset() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sjisprober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sjisprober.py deleted file mode 100644 index 683add0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/sjisprober.py +++ /dev/null @@ -1,92 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .mbcharsetprober import MultiByteCharSetProber -from .codingstatemachine import CodingStateMachine -from .chardistribution import SJISDistributionAnalysis -from .jpcntx import SJISContextAnalysis -from .mbcssm import SJIS_SM_MODEL -from .enums import ProbingState, MachineState - - -class SJISProber(MultiByteCharSetProber): - def __init__(self): - super(SJISProber, self).__init__() - self.coding_sm = CodingStateMachine(SJIS_SM_MODEL) - self.distribution_analyzer = SJISDistributionAnalysis() - self.context_analyzer = SJISContextAnalysis() - self.reset() - - def reset(self): - super(SJISProber, self).reset() - self.context_analyzer.reset() - - @property - def charset_name(self): - return self.context_analyzer.charset_name - - @property - def language(self): - return "Japanese" - - def feed(self, byte_str): - for i in range(len(byte_str)): - coding_state = self.coding_sm.next_state(byte_str[i]) - if coding_state == MachineState.ERROR: - self.logger.debug('%s %s prober hit error at byte %s', - self.charset_name, self.language, i) - self._state = ProbingState.NOT_ME - break - elif coding_state == MachineState.ITS_ME: - self._state = ProbingState.FOUND_IT - break - elif coding_state == MachineState.START: - char_len = self.coding_sm.get_current_charlen() - if i == 0: - self._last_char[1] = byte_str[0] - self.context_analyzer.feed(self._last_char[2 - char_len:], - char_len) - self.distribution_analyzer.feed(self._last_char, char_len) - else: - self.context_analyzer.feed(byte_str[i + 1 - char_len:i + 3 - - char_len], char_len) - self.distribution_analyzer.feed(byte_str[i - 1:i + 1], - char_len) - - self._last_char[0] = byte_str[-1] - - if self.state == ProbingState.DETECTING: - if (self.context_analyzer.got_enough_data() and - (self.get_confidence() > self.SHORTCUT_THRESHOLD)): - self._state = ProbingState.FOUND_IT - - return self.state - - def get_confidence(self): - context_conf = self.context_analyzer.get_confidence() - distrib_conf = self.distribution_analyzer.get_confidence() - return max(context_conf, distrib_conf) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/universaldetector.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/universaldetector.py deleted file mode 100644 index 8a6de3b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/universaldetector.py +++ /dev/null @@ -1,286 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is Mozilla Universal charset detector code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 2001 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# Shy Shalom - original C code -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### -""" -Module containing the UniversalDetector detector class, which is the primary -class a user of ``chardet`` should use. - -:author: Mark Pilgrim (initial port to Python) -:author: Shy Shalom (original C code) -:author: Dan Blanchard (major refactoring for 3.0) -:author: Ian Cordasco -""" - - -import codecs -import logging -import re - -from .charsetgroupprober import CharSetGroupProber -from .enums import InputState, LanguageFilter, ProbingState -from .escprober import EscCharSetProber -from .latin1prober import Latin1Prober -from .mbcsgroupprober import MBCSGroupProber -from .sbcsgroupprober import SBCSGroupProber - - -class UniversalDetector(object): - """ - The ``UniversalDetector`` class underlies the ``chardet.detect`` function - and coordinates all of the different charset probers. - - To get a ``dict`` containing an encoding and its confidence, you can simply - run: - - .. code:: - - u = UniversalDetector() - u.feed(some_bytes) - u.close() - detected = u.result - - """ - - MINIMUM_THRESHOLD = 0.20 - HIGH_BYTE_DETECTOR = re.compile(b'[\x80-\xFF]') - ESC_DETECTOR = re.compile(b'(\033|~{)') - WIN_BYTE_DETECTOR = re.compile(b'[\x80-\x9F]') - ISO_WIN_MAP = {'iso-8859-1': 'Windows-1252', - 'iso-8859-2': 'Windows-1250', - 'iso-8859-5': 'Windows-1251', - 'iso-8859-6': 'Windows-1256', - 'iso-8859-7': 'Windows-1253', - 'iso-8859-8': 'Windows-1255', - 'iso-8859-9': 'Windows-1254', - 'iso-8859-13': 'Windows-1257'} - - def __init__(self, lang_filter=LanguageFilter.ALL): - self._esc_charset_prober = None - self._charset_probers = [] - self.result = None - self.done = None - self._got_data = None - self._input_state = None - self._last_char = None - self.lang_filter = lang_filter - self.logger = logging.getLogger(__name__) - self._has_win_bytes = None - self.reset() - - def reset(self): - """ - Reset the UniversalDetector and all of its probers back to their - initial states. This is called by ``__init__``, so you only need to - call this directly in between analyses of different documents. - """ - self.result = {'encoding': None, 'confidence': 0.0, 'language': None} - self.done = False - self._got_data = False - self._has_win_bytes = False - self._input_state = InputState.PURE_ASCII - self._last_char = b'' - if self._esc_charset_prober: - self._esc_charset_prober.reset() - for prober in self._charset_probers: - prober.reset() - - def feed(self, byte_str): - """ - Takes a chunk of a document and feeds it through all of the relevant - charset probers. - - After calling ``feed``, you can check the value of the ``done`` - attribute to see if you need to continue feeding the - ``UniversalDetector`` more data, or if it has made a prediction - (in the ``result`` attribute). - - .. note:: - You should always call ``close`` when you're done feeding in your - document if ``done`` is not already ``True``. - """ - if self.done: - return - - if not len(byte_str): - return - - if not isinstance(byte_str, bytearray): - byte_str = bytearray(byte_str) - - # First check for known BOMs, since these are guaranteed to be correct - if not self._got_data: - # If the data starts with BOM, we know it is UTF - if byte_str.startswith(codecs.BOM_UTF8): - # EF BB BF UTF-8 with BOM - self.result = {'encoding': "UTF-8-SIG", - 'confidence': 1.0, - 'language': ''} - elif byte_str.startswith((codecs.BOM_UTF32_LE, - codecs.BOM_UTF32_BE)): - # FF FE 00 00 UTF-32, little-endian BOM - # 00 00 FE FF UTF-32, big-endian BOM - self.result = {'encoding': "UTF-32", - 'confidence': 1.0, - 'language': ''} - elif byte_str.startswith(b'\xFE\xFF\x00\x00'): - # FE FF 00 00 UCS-4, unusual octet order BOM (3412) - self.result = {'encoding': "X-ISO-10646-UCS-4-3412", - 'confidence': 1.0, - 'language': ''} - elif byte_str.startswith(b'\x00\x00\xFF\xFE'): - # 00 00 FF FE UCS-4, unusual octet order BOM (2143) - self.result = {'encoding': "X-ISO-10646-UCS-4-2143", - 'confidence': 1.0, - 'language': ''} - elif byte_str.startswith((codecs.BOM_LE, codecs.BOM_BE)): - # FF FE UTF-16, little endian BOM - # FE FF UTF-16, big endian BOM - self.result = {'encoding': "UTF-16", - 'confidence': 1.0, - 'language': ''} - - self._got_data = True - if self.result['encoding'] is not None: - self.done = True - return - - # If none of those matched and we've only see ASCII so far, check - # for high bytes and escape sequences - if self._input_state == InputState.PURE_ASCII: - if self.HIGH_BYTE_DETECTOR.search(byte_str): - self._input_state = InputState.HIGH_BYTE - elif self._input_state == InputState.PURE_ASCII and \ - self.ESC_DETECTOR.search(self._last_char + byte_str): - self._input_state = InputState.ESC_ASCII - - self._last_char = byte_str[-1:] - - # If we've seen escape sequences, use the EscCharSetProber, which - # uses a simple state machine to check for known escape sequences in - # HZ and ISO-2022 encodings, since those are the only encodings that - # use such sequences. - if self._input_state == InputState.ESC_ASCII: - if not self._esc_charset_prober: - self._esc_charset_prober = EscCharSetProber(self.lang_filter) - if self._esc_charset_prober.feed(byte_str) == ProbingState.FOUND_IT: - self.result = {'encoding': - self._esc_charset_prober.charset_name, - 'confidence': - self._esc_charset_prober.get_confidence(), - 'language': - self._esc_charset_prober.language} - self.done = True - # If we've seen high bytes (i.e., those with values greater than 127), - # we need to do more complicated checks using all our multi-byte and - # single-byte probers that are left. The single-byte probers - # use character bigram distributions to determine the encoding, whereas - # the multi-byte probers use a combination of character unigram and - # bigram distributions. - elif self._input_state == InputState.HIGH_BYTE: - if not self._charset_probers: - self._charset_probers = [MBCSGroupProber(self.lang_filter)] - # If we're checking non-CJK encodings, use single-byte prober - if self.lang_filter & LanguageFilter.NON_CJK: - self._charset_probers.append(SBCSGroupProber()) - self._charset_probers.append(Latin1Prober()) - for prober in self._charset_probers: - if prober.feed(byte_str) == ProbingState.FOUND_IT: - self.result = {'encoding': prober.charset_name, - 'confidence': prober.get_confidence(), - 'language': prober.language} - self.done = True - break - if self.WIN_BYTE_DETECTOR.search(byte_str): - self._has_win_bytes = True - - def close(self): - """ - Stop analyzing the current document and come up with a final - prediction. - - :returns: The ``result`` attribute, a ``dict`` with the keys - `encoding`, `confidence`, and `language`. - """ - # Don't bother with checks if we're already done - if self.done: - return self.result - self.done = True - - if not self._got_data: - self.logger.debug('no data received!') - - # Default to ASCII if it is all we've seen so far - elif self._input_state == InputState.PURE_ASCII: - self.result = {'encoding': 'ascii', - 'confidence': 1.0, - 'language': ''} - - # If we have seen non-ASCII, return the best that met MINIMUM_THRESHOLD - elif self._input_state == InputState.HIGH_BYTE: - prober_confidence = None - max_prober_confidence = 0.0 - max_prober = None - for prober in self._charset_probers: - if not prober: - continue - prober_confidence = prober.get_confidence() - if prober_confidence > max_prober_confidence: - max_prober_confidence = prober_confidence - max_prober = prober - if max_prober and (max_prober_confidence > self.MINIMUM_THRESHOLD): - charset_name = max_prober.charset_name - lower_charset_name = max_prober.charset_name.lower() - confidence = max_prober.get_confidence() - # Use Windows encoding name instead of ISO-8859 if we saw any - # extra Windows-specific bytes - if lower_charset_name.startswith('iso-8859'): - if self._has_win_bytes: - charset_name = self.ISO_WIN_MAP.get(lower_charset_name, - charset_name) - self.result = {'encoding': charset_name, - 'confidence': confidence, - 'language': max_prober.language} - - # Log all prober confidences if none met MINIMUM_THRESHOLD - if self.logger.getEffectiveLevel() == logging.DEBUG: - if self.result['encoding'] is None: - self.logger.debug('no probers hit minimum threshold') - for group_prober in self._charset_probers: - if not group_prober: - continue - if isinstance(group_prober, CharSetGroupProber): - for prober in group_prober.probers: - self.logger.debug('%s %s confidence = %s', - prober.charset_name, - prober.language, - prober.get_confidence()) - else: - self.logger.debug('%s %s confidence = %s', - prober.charset_name, - prober.language, - prober.get_confidence()) - return self.result diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/utf8prober.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/utf8prober.py deleted file mode 100644 index 4573267..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/utf8prober.py +++ /dev/null @@ -1,82 +0,0 @@ -######################## BEGIN LICENSE BLOCK ######################## -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is -# Netscape Communications Corporation. -# Portions created by the Initial Developer are Copyright (C) 1998 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Mark Pilgrim - port to Python -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -# 02110-1301 USA -######################### END LICENSE BLOCK ######################### - -from .charsetprober import CharSetProber -from .enums import ProbingState, MachineState -from .codingstatemachine import CodingStateMachine -from .mbcssm import UTF8_SM_MODEL - - - -class UTF8Prober(CharSetProber): - ONE_CHAR_PROB = 0.5 - - def __init__(self): - super(UTF8Prober, self).__init__() - self.coding_sm = CodingStateMachine(UTF8_SM_MODEL) - self._num_mb_chars = None - self.reset() - - def reset(self): - super(UTF8Prober, self).reset() - self.coding_sm.reset() - self._num_mb_chars = 0 - - @property - def charset_name(self): - return "utf-8" - - @property - def language(self): - return "" - - def feed(self, byte_str): - for c in byte_str: - coding_state = self.coding_sm.next_state(c) - if coding_state == MachineState.ERROR: - self._state = ProbingState.NOT_ME - break - elif coding_state == MachineState.ITS_ME: - self._state = ProbingState.FOUND_IT - break - elif coding_state == MachineState.START: - if self.coding_sm.get_current_charlen() >= 2: - self._num_mb_chars += 1 - - if self.state == ProbingState.DETECTING: - if self.get_confidence() > self.SHORTCUT_THRESHOLD: - self._state = ProbingState.FOUND_IT - - return self.state - - def get_confidence(self): - unlike = 0.99 - if self._num_mb_chars < 6: - unlike *= self.ONE_CHAR_PROB ** self._num_mb_chars - return 1.0 - unlike - else: - return unlike diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/version.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/version.py deleted file mode 100644 index f24d042..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/chardet/version.py +++ /dev/null @@ -1,9 +0,0 @@ -""" -This module exists only to simplify retrieving the version number of chardet -from within setup.py and from chardet subpackages. - -:author: Dan Blanchard (dan.blanchard@gmail.com) -""" - -__version__ = "3.0.4" -VERSION = __version__.split('.') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/__init__.py deleted file mode 100644 index 10c372d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. -from .initialise import init, deinit, reinit, colorama_text -from .ansi import Fore, Back, Style, Cursor -from .ansitowin32 import AnsiToWin32 - -__version__ = '0.3.9' - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansi.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansi.py deleted file mode 100644 index 8530fd0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansi.py +++ /dev/null @@ -1,102 +0,0 @@ -# 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansitowin32.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansitowin32.py deleted file mode 100644 index 0cb9efc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/ansitowin32.py +++ /dev/null @@ -1,236 +0,0 @@ -# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. -import re -import sys -import os - -from .ansi import AnsiFore, AnsiBack, AnsiStyle, Style -from .winterm import WinTerm, WinColor, WinStyle -from .win32 import windll, winapi_test - - -winterm = None -if windll is not None: - winterm = WinTerm() - - -def is_stream_closed(stream): - return not hasattr(stream, 'closed') or stream.closed - - -def is_a_tty(stream): - return hasattr(stream, 'isatty') and stream.isatty() - - -class StreamWrapper(object): - ''' - Wraps a stream (such as stdout), acting as a transparent proxy for all - attribute access apart from method 'write()', which is delegated to our - Converter instance. - ''' - def __init__(self, wrapped, converter): - # double-underscore everything to prevent clashes with names of - # attributes on the wrapped stream object. - self.__wrapped = wrapped - self.__convertor = converter - - def __getattr__(self, name): - return getattr(self.__wrapped, name) - - def write(self, text): - self.__convertor.write(text) - - -class AnsiToWin32(object): - ''' - Implements a 'write()' method which, on Windows, will strip ANSI character - sequences from the text, and if outputting to a tty, will convert them into - win32 function calls. - ''' - ANSI_CSI_RE = re.compile('\001?\033\\[((?:\\d|;)*)([a-zA-Z])\002?') # Control Sequence Introducer - ANSI_OSC_RE = re.compile('\001?\033\\]((?:.|;)*?)(\x07)\002?') # Operating System Command - - def __init__(self, wrapped, convert=None, strip=None, autoreset=False): - # The wrapped stream (normally sys.stdout or sys.stderr) - self.wrapped = wrapped - - # should we reset colors to defaults after every .write() - self.autoreset = autoreset - - # create the proxy wrapping our output stream - self.stream = StreamWrapper(wrapped, self) - - on_windows = os.name == 'nt' - # We test if the WinAPI works, because even if we are on Windows - # we may be using a terminal that doesn't support the WinAPI - # (e.g. Cygwin Terminal). In this case it's up to the terminal - # to support the ANSI codes. - conversion_supported = on_windows and winapi_test() - - # should we strip ANSI sequences from our output? - if strip is None: - strip = conversion_supported or (not is_stream_closed(wrapped) and not is_a_tty(wrapped)) - self.strip = strip - - # should we should convert ANSI sequences into win32 calls? - if convert is None: - convert = conversion_supported and not is_stream_closed(wrapped) and is_a_tty(wrapped) - self.convert = convert - - # dict of ansi codes to win32 functions and parameters - self.win32_calls = self.get_win32_calls() - - # are we wrapping stderr? - self.on_stderr = self.wrapped is sys.stderr - - def should_wrap(self): - ''' - True if this class is actually needed. If false, then the output - stream will not be affected, nor will win32 calls be issued, so - wrapping stdout is not actually required. This will generally be - False on non-Windows platforms, unless optional functionality like - autoreset has been requested using kwargs to init() - ''' - return self.convert or self.strip or self.autoreset - - def get_win32_calls(self): - if self.convert and winterm: - return { - AnsiStyle.RESET_ALL: (winterm.reset_all, ), - AnsiStyle.BRIGHT: (winterm.style, WinStyle.BRIGHT), - AnsiStyle.DIM: (winterm.style, WinStyle.NORMAL), - AnsiStyle.NORMAL: (winterm.style, WinStyle.NORMAL), - AnsiFore.BLACK: (winterm.fore, WinColor.BLACK), - AnsiFore.RED: (winterm.fore, WinColor.RED), - AnsiFore.GREEN: (winterm.fore, WinColor.GREEN), - AnsiFore.YELLOW: (winterm.fore, WinColor.YELLOW), - AnsiFore.BLUE: (winterm.fore, WinColor.BLUE), - AnsiFore.MAGENTA: (winterm.fore, WinColor.MAGENTA), - AnsiFore.CYAN: (winterm.fore, WinColor.CYAN), - AnsiFore.WHITE: (winterm.fore, WinColor.GREY), - AnsiFore.RESET: (winterm.fore, ), - AnsiFore.LIGHTBLACK_EX: (winterm.fore, WinColor.BLACK, True), - AnsiFore.LIGHTRED_EX: (winterm.fore, WinColor.RED, True), - AnsiFore.LIGHTGREEN_EX: (winterm.fore, WinColor.GREEN, True), - AnsiFore.LIGHTYELLOW_EX: (winterm.fore, WinColor.YELLOW, True), - AnsiFore.LIGHTBLUE_EX: (winterm.fore, WinColor.BLUE, True), - AnsiFore.LIGHTMAGENTA_EX: (winterm.fore, WinColor.MAGENTA, True), - AnsiFore.LIGHTCYAN_EX: (winterm.fore, WinColor.CYAN, True), - AnsiFore.LIGHTWHITE_EX: (winterm.fore, WinColor.GREY, True), - AnsiBack.BLACK: (winterm.back, WinColor.BLACK), - AnsiBack.RED: (winterm.back, WinColor.RED), - AnsiBack.GREEN: (winterm.back, WinColor.GREEN), - AnsiBack.YELLOW: (winterm.back, WinColor.YELLOW), - AnsiBack.BLUE: (winterm.back, WinColor.BLUE), - AnsiBack.MAGENTA: (winterm.back, WinColor.MAGENTA), - AnsiBack.CYAN: (winterm.back, WinColor.CYAN), - AnsiBack.WHITE: (winterm.back, WinColor.GREY), - AnsiBack.RESET: (winterm.back, ), - AnsiBack.LIGHTBLACK_EX: (winterm.back, WinColor.BLACK, True), - AnsiBack.LIGHTRED_EX: (winterm.back, WinColor.RED, True), - AnsiBack.LIGHTGREEN_EX: (winterm.back, WinColor.GREEN, True), - AnsiBack.LIGHTYELLOW_EX: (winterm.back, WinColor.YELLOW, True), - AnsiBack.LIGHTBLUE_EX: (winterm.back, WinColor.BLUE, True), - AnsiBack.LIGHTMAGENTA_EX: (winterm.back, WinColor.MAGENTA, True), - AnsiBack.LIGHTCYAN_EX: (winterm.back, WinColor.CYAN, True), - AnsiBack.LIGHTWHITE_EX: (winterm.back, WinColor.GREY, True), - } - return dict() - - def write(self, text): - if self.strip or self.convert: - self.write_and_convert(text) - else: - self.wrapped.write(text) - self.wrapped.flush() - if self.autoreset: - self.reset_all() - - - def reset_all(self): - if self.convert: - self.call_win32('m', (0,)) - elif not self.strip and not is_stream_closed(self.wrapped): - self.wrapped.write(Style.RESET_ALL) - - - def write_and_convert(self, text): - ''' - Write the given text to our wrapped stream, stripping any ANSI - sequences from the text, and optionally converting them into win32 - calls. - ''' - cursor = 0 - text = self.convert_osc(text) - for match in self.ANSI_CSI_RE.finditer(text): - start, end = match.span() - self.write_plain_text(text, cursor, start) - self.convert_ansi(*match.groups()) - cursor = end - self.write_plain_text(text, cursor, len(text)) - - - def write_plain_text(self, text, start, end): - if start < end: - self.wrapped.write(text[start:end]) - self.wrapped.flush() - - - def convert_ansi(self, paramstring, command): - if self.convert: - params = self.extract_params(command, paramstring) - self.call_win32(command, params) - - - def extract_params(self, command, paramstring): - if command in 'Hf': - params = tuple(int(p) if len(p) != 0 else 1 for p in paramstring.split(';')) - while len(params) < 2: - # defaults: - params = params + (1,) - else: - params = tuple(int(p) for p in paramstring.split(';') if len(p) != 0) - if len(params) == 0: - # defaults: - if command in 'JKm': - params = (0,) - elif command in 'ABCD': - params = (1,) - - return params - - - def call_win32(self, command, params): - if command == 'm': - for param in params: - if param in self.win32_calls: - func_args = self.win32_calls[param] - func = func_args[0] - args = func_args[1:] - kwargs = dict(on_stderr=self.on_stderr) - func(*args, **kwargs) - elif command in 'J': - winterm.erase_screen(params[0], on_stderr=self.on_stderr) - elif command in 'K': - winterm.erase_line(params[0], on_stderr=self.on_stderr) - elif command in 'Hf': # cursor position - absolute - winterm.set_cursor_position(params, on_stderr=self.on_stderr) - elif command in 'ABCD': # cursor position - relative - n = params[0] - # A - up, B - down, C - forward, D - back - x, y = {'A': (0, -n), 'B': (0, n), 'C': (n, 0), 'D': (-n, 0)}[command] - winterm.cursor_adjust(x, y, on_stderr=self.on_stderr) - - - def convert_osc(self, text): - for match in self.ANSI_OSC_RE.finditer(text): - start, end = match.span() - text = text[:start] + text[end:] - paramstring, command = match.groups() - if command in '\x07': # \x07 = BEL - params = paramstring.split(";") - # 0 - change title and icon (we will only change title) - # 1 - change icon (we don't support this) - # 2 - change title - if params[0] in '02': - winterm.set_title(params[1]) - return text diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/initialise.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/initialise.py deleted file mode 100644 index 7f03156..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/initialise.py +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. -import atexit -import contextlib -import sys - -from .ansitowin32 import AnsiToWin32 - - -orig_stdout = None -orig_stderr = None - -wrapped_stdout = None -wrapped_stderr = None - -atexit_done = False - - -def reset_all(): - if AnsiToWin32 is not None: # Issue #74: objects might become None at exit - AnsiToWin32(orig_stdout).reset_all() - - -def init(autoreset=False, convert=None, strip=None, wrap=True): - - if not wrap and any([autoreset, convert, strip]): - raise ValueError('wrap=False conflicts with any other arg=True') - - global wrapped_stdout, wrapped_stderr - global orig_stdout, orig_stderr - - orig_stdout = sys.stdout - orig_stderr = sys.stderr - - if sys.stdout is None: - wrapped_stdout = None - else: - sys.stdout = wrapped_stdout = \ - wrap_stream(orig_stdout, convert, strip, autoreset, wrap) - if sys.stderr is None: - wrapped_stderr = None - else: - sys.stderr = wrapped_stderr = \ - wrap_stream(orig_stderr, convert, strip, autoreset, wrap) - - global atexit_done - if not atexit_done: - atexit.register(reset_all) - atexit_done = True - - -def deinit(): - if orig_stdout is not None: - sys.stdout = orig_stdout - if orig_stderr is not None: - sys.stderr = orig_stderr - - -@contextlib.contextmanager -def colorama_text(*args, **kwargs): - init(*args, **kwargs) - try: - yield - finally: - deinit() - - -def reinit(): - if wrapped_stdout is not None: - sys.stdout = wrapped_stdout - if wrapped_stderr is not None: - sys.stderr = wrapped_stderr - - -def wrap_stream(stream, convert, strip, autoreset, wrap): - if wrap: - wrapper = AnsiToWin32(stream, - convert=convert, strip=strip, autoreset=autoreset) - if wrapper.should_wrap(): - stream = wrapper.stream - return stream - - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/win32.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/win32.py deleted file mode 100644 index 1485e69..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/win32.py +++ /dev/null @@ -1,156 +0,0 @@ -# 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.SetConsoleTitleW - _SetConsoleTitleW.argtypes = [ - wintypes.LPCWSTR - ] - _SetConsoleTitleW.restype = wintypes.BOOL - - handles = { - STDOUT: _GetStdHandle(STDOUT), - STDERR: _GetStdHandle(STDERR), - } - - def _winapi_test(handle): - csbi = CONSOLE_SCREEN_BUFFER_INFO() - success = _GetConsoleScreenBufferInfo( - handle, byref(csbi)) - return bool(success) - - def winapi_test(): - return any(_winapi_test(h) for h in handles.values()) - - 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/winterm.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/winterm.py deleted file mode 100644 index 385862e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/colorama/winterm.py +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. -from . import win32 - - -# from wincon.h -class WinColor(object): - BLACK = 0 - BLUE = 1 - GREEN = 2 - CYAN = 3 - RED = 4 - MAGENTA = 5 - YELLOW = 6 - GREY = 7 - -# from wincon.h -class WinStyle(object): - NORMAL = 0x00 # dim text, dim background - BRIGHT = 0x08 # bright text, dim background - BRIGHT_BACKGROUND = 0x80 # dim text, bright background - -class WinTerm(object): - - def __init__(self): - self._default = win32.GetConsoleScreenBufferInfo(win32.STDOUT).wAttributes - self.set_attrs(self._default) - self._default_fore = self._fore - self._default_back = self._back - self._default_style = self._style - # In order to emulate LIGHT_EX in windows, we borrow the BRIGHT style. - # So that LIGHT_EX colors and BRIGHT style do not clobber each other, - # we track them separately, since LIGHT_EX is overwritten by Fore/Back - # and BRIGHT is overwritten by Style codes. - self._light = 0 - - def get_attrs(self): - return self._fore + self._back * 16 + (self._style | self._light) - - def set_attrs(self, value): - self._fore = value & 7 - self._back = (value >> 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/__init__.py deleted file mode 100644 index 9430718..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2017 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -import logging - -__version__ = '0.2.7' - -class DistlibException(Exception): - pass - -try: - from logging import NullHandler -except ImportError: # pragma: no cover - class NullHandler(logging.Handler): - def handle(self, record): pass - def emit(self, record): pass - def createLock(self): self.lock = None - -logger = logging.getLogger(__name__) -logger.addHandler(NullHandler()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/__init__.py deleted file mode 100644 index e6143f1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -"""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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/misc.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/misc.py deleted file mode 100644 index 6eb7b86..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/misc.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/shutil.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/shutil.py deleted file mode 100644 index becbfd7..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/shutil.py +++ /dev/null @@ -1,761 +0,0 @@ -# -*- 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 registry operation with the archiving - and unpacking registries 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 registry.""" - 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.cfg b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.cfg deleted file mode 100644 index c92cd48..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.cfg +++ /dev/null @@ -1,84 +0,0 @@ -[posix_prefix] -# Configuration directories. Some of these come straight out of the -# configure script. They are for implementing the other variables, not to -# be used directly in [resource_locations]. -confdir = /etc -datadir = /usr/share -libdir = /usr/lib -statedir = /var -# User resource directory -local = ~/.local/{distribution.name} - -stdlib = {base}/lib/python{py_version_short} -platstdlib = {platbase}/lib/python{py_version_short} -purelib = {base}/lib/python{py_version_short}/site-packages -platlib = {platbase}/lib/python{py_version_short}/site-packages -include = {base}/include/python{py_version_short}{abiflags} -platinclude = {platbase}/include/python{py_version_short}{abiflags} -data = {base} - -[posix_home] -stdlib = {base}/lib/python -platstdlib = {base}/lib/python -purelib = {base}/lib/python -platlib = {base}/lib/python -include = {base}/include/python -platinclude = {base}/include/python -scripts = {base}/bin -data = {base} - -[nt] -stdlib = {base}/Lib -platstdlib = {base}/Lib -purelib = {base}/Lib/site-packages -platlib = {base}/Lib/site-packages -include = {base}/Include -platinclude = {base}/Include -scripts = {base}/Scripts -data = {base} - -[os2] -stdlib = {base}/Lib -platstdlib = {base}/Lib -purelib = {base}/Lib/site-packages -platlib = {base}/Lib/site-packages -include = {base}/Include -platinclude = {base}/Include -scripts = {base}/Scripts -data = {base} - -[os2_home] -stdlib = {userbase}/lib/python{py_version_short} -platstdlib = {userbase}/lib/python{py_version_short} -purelib = {userbase}/lib/python{py_version_short}/site-packages -platlib = {userbase}/lib/python{py_version_short}/site-packages -include = {userbase}/include/python{py_version_short} -scripts = {userbase}/bin -data = {userbase} - -[nt_user] -stdlib = {userbase}/Python{py_version_nodot} -platstdlib = {userbase}/Python{py_version_nodot} -purelib = {userbase}/Python{py_version_nodot}/site-packages -platlib = {userbase}/Python{py_version_nodot}/site-packages -include = {userbase}/Python{py_version_nodot}/Include -scripts = {userbase}/Scripts -data = {userbase} - -[posix_user] -stdlib = {userbase}/lib/python{py_version_short} -platstdlib = {userbase}/lib/python{py_version_short} -purelib = {userbase}/lib/python{py_version_short}/site-packages -platlib = {userbase}/lib/python{py_version_short}/site-packages -include = {userbase}/include/python{py_version_short} -scripts = {userbase}/bin -data = {userbase} - -[osx_framework_user] -stdlib = {userbase}/lib/python -platstdlib = {userbase}/lib/python -purelib = {userbase}/lib/python/site-packages -platlib = {userbase}/lib/python/site-packages -include = {userbase}/include -scripts = {userbase}/bin -data = {userbase} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.py deleted file mode 100644 index b243da3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/sysconfig.py +++ /dev/null @@ -1,788 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012 The Python Software Foundation. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -"""Access to Python's configuration information.""" - -import codecs -import os -import re -import sys -from os.path import pardir, realpath -try: - import configparser -except ImportError: - import ConfigParser as configparser - - -__all__ = [ - 'get_config_h_filename', - 'get_config_var', - 'get_config_vars', - 'get_makefile_filename', - 'get_path', - 'get_path_names', - 'get_paths', - 'get_platform', - 'get_python_version', - 'get_scheme_names', - 'parse_config_h', -] - - -def _safe_realpath(path): - try: - return realpath(path) - except OSError: - return path - - -if sys.executable: - _PROJECT_BASE = os.path.dirname(_safe_realpath(sys.executable)) -else: - # sys.executable can be empty if argv[0] has been changed and Python is - # unable to retrieve the real program name - _PROJECT_BASE = _safe_realpath(os.getcwd()) - -if os.name == "nt" and "pcbuild" in _PROJECT_BASE[-8:].lower(): - _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir)) -# PC/VS7.1 -if os.name == "nt" and "\\pc\\v" in _PROJECT_BASE[-10:].lower(): - _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir)) -# PC/AMD64 -if os.name == "nt" and "\\pcbuild\\amd64" in _PROJECT_BASE[-14:].lower(): - _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir)) - - -def is_python_build(): - for fn in ("Setup.dist", "Setup.local"): - if os.path.isfile(os.path.join(_PROJECT_BASE, "Modules", fn)): - return True - return False - -_PYTHON_BUILD = is_python_build() - -_cfg_read = False - -def _ensure_cfg_read(): - global _cfg_read - if not _cfg_read: - from ..resources import finder - backport_package = __name__.rsplit('.', 1)[0] - _finder = finder(backport_package) - _cfgfile = _finder.find('sysconfig.cfg') - assert _cfgfile, 'sysconfig.cfg exists' - with _cfgfile.as_stream() as s: - _SCHEMES.readfp(s) - if _PYTHON_BUILD: - for scheme in ('posix_prefix', 'posix_home'): - _SCHEMES.set(scheme, 'include', '{srcdir}/Include') - _SCHEMES.set(scheme, 'platinclude', '{projectbase}/.') - - _cfg_read = True - - -_SCHEMES = configparser.RawConfigParser() -_VAR_REPL = re.compile(r'\{([^{]*?)\}') - -def _expand_globals(config): - _ensure_cfg_read() - if config.has_section('globals'): - globals = config.items('globals') - else: - globals = tuple() - - sections = config.sections() - for section in sections: - if section == 'globals': - continue - for option, value in globals: - if config.has_option(section, option): - continue - config.set(section, option, value) - config.remove_section('globals') - - # now expanding local variables defined in the cfg file - # - for section in config.sections(): - variables = dict(config.items(section)) - - def _replacer(matchobj): - name = matchobj.group(1) - if name in variables: - return variables[name] - return matchobj.group(0) - - for option, value in config.items(section): - config.set(section, option, _VAR_REPL.sub(_replacer, value)) - -#_expand_globals(_SCHEMES) - - # FIXME don't rely on sys.version here, its format is an implementation detail - # of CPython, use sys.version_info or sys.hexversion -_PY_VERSION = sys.version.split()[0] -_PY_VERSION_SHORT = sys.version[:3] -_PY_VERSION_SHORT_NO_DOT = _PY_VERSION[0] + _PY_VERSION[2] -_PREFIX = os.path.normpath(sys.prefix) -_EXEC_PREFIX = os.path.normpath(sys.exec_prefix) -_CONFIG_VARS = None -_USER_BASE = None - - -def _subst_vars(path, local_vars): - """In the string `path`, replace tokens like {some.thing} with the - corresponding value from the map `local_vars`. - - If there is no corresponding value, leave the token unchanged. - """ - def _replacer(matchobj): - name = matchobj.group(1) - if name in local_vars: - return local_vars[name] - elif name in os.environ: - return os.environ[name] - return matchobj.group(0) - return _VAR_REPL.sub(_replacer, path) - - -def _extend_dict(target_dict, other_dict): - target_keys = target_dict.keys() - for key, value in other_dict.items(): - if key in target_keys: - continue - target_dict[key] = value - - -def _expand_vars(scheme, vars): - res = {} - if vars is None: - vars = {} - _extend_dict(vars, get_config_vars()) - - for key, value in _SCHEMES.items(scheme): - if os.name in ('posix', 'nt'): - value = os.path.expanduser(value) - res[key] = os.path.normpath(_subst_vars(value, vars)) - return res - - -def format_value(value, vars): - def _replacer(matchobj): - name = matchobj.group(1) - if name in vars: - return vars[name] - return matchobj.group(0) - return _VAR_REPL.sub(_replacer, value) - - -def _get_default_scheme(): - if os.name == 'posix': - # the default scheme for posix is posix_prefix - return 'posix_prefix' - return os.name - - -def _getuserbase(): - env_base = os.environ.get("PYTHONUSERBASE", None) - - def joinuser(*args): - return os.path.expanduser(os.path.join(*args)) - - # what about 'os2emx', 'riscos' ? - if os.name == "nt": - base = os.environ.get("APPDATA") or "~" - if env_base: - return env_base - else: - return joinuser(base, "Python") - - if sys.platform == "darwin": - framework = get_config_var("PYTHONFRAMEWORK") - if framework: - if env_base: - return env_base - else: - return joinuser("~", "Library", framework, "%d.%d" % - sys.version_info[:2]) - - if env_base: - return env_base - else: - return joinuser("~", ".local") - - -def _parse_makefile(filename, vars=None): - """Parse a Makefile-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. - """ - # Regexes needed for parsing Makefile (and similar syntaxes, - # like old-style Setup files). - _variable_rx = re.compile(r"([a-zA-Z][a-zA-Z0-9_]+)\s*=\s*(.*)") - _findvar1_rx = re.compile(r"\$\(([A-Za-z][A-Za-z0-9_]*)\)") - _findvar2_rx = re.compile(r"\${([A-Za-z][A-Za-z0-9_]*)}") - - if vars is None: - vars = {} - done = {} - notdone = {} - - with codecs.open(filename, encoding='utf-8', errors="surrogateescape") as f: - lines = f.readlines() - - for line in lines: - if line.startswith('#') or line.strip() == '': - continue - m = _variable_rx.match(line) - if m: - n, v = m.group(1, 2) - v = v.strip() - # `$$' is a literal `$' in make - tmpv = v.replace('$$', '') - - if "$" in tmpv: - notdone[n] = v - else: - try: - v = int(v) - except ValueError: - # insert literal `$' - done[n] = v.replace('$$', '$') - else: - done[n] = v - - # do variable interpolation here - variables = list(notdone.keys()) - - # Variables with a 'PY_' prefix in the makefile. These need to - # be made available without that prefix through sysconfig. - # Special care is needed to ensure that variable expansion works, even - # if the expansion uses the name without a prefix. - renamed_variables = ('CFLAGS', 'LDFLAGS', 'CPPFLAGS') - - while len(variables) > 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(r'-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(r'-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(r'-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(r'-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'<key>ProductUserVisibleVersion</key>\s*' - r'<string>(.*?)</string>', 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(r'-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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/tarfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/tarfile.py deleted file mode 100644 index b0599bc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/_backport/tarfile.py +++ /dev/null @@ -1,2607 +0,0 @@ -#------------------------------------------------------------------- -# tarfile.py -#------------------------------------------------------------------- -# Copyright (C) 2002 Lars Gustaebel <lars@gustaebel.de> -# 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 unreadable 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("<L", int(time.time())) - self.__write(b"\037\213\010\010" + timestamp + b"\002\377") - if self.name.endswith(".gz"): - self.name = self.name[:-3] - # RFC1952 says we must use ISO-8859-1 for the FNAME field. - self.__write(self.name.encode("iso-8859-1", "replace") + NUL) - - def write(self, s): - """Write string s to the stream. - """ - if self.comptype == "gz": - self.crc = self.zlib.crc32(s, self.crc) - self.pos += len(s) - if self.comptype != "tar": - s = self.cmp.compress(s) - self.__write(s) - - def __write(self, s): - """Write string s to the stream if a whole new block - is ready to be written. - """ - self.buf += s - while len(self.buf) > 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("<L", self.crc & 0xffffffff)) - self.fileobj.write(struct.pack("<L", self.pos & 0xffffFFFF)) - - if not self._extfileobj: - self.fileobj.close() - - self.closed = True - - def _init_read_gz(self): - """Initialize for reading a gzip compressed fileobj. - """ - self.cmp = self.zlib.decompressobj(-self.zlib.MAX_WBITS) - self.dbuf = b"" - - # taken from gzip.GzipFile with some alterations - if self.__read(2) != b"\037\213": - raise ReadError("not a gzip file") - if self.__read(1) != b"\010": - raise CompressionError("unsupported compression method") - - flag = ord(self.__read(1)) - self.__read(6) - - if flag & 4: - xlen = ord(self.__read(1)) + 256 * ord(self.__read(1)) - self.read(xlen) - if flag & 8: - while True: - s = self.__read(1) - if not s or s == NUL: - break - if flag & 16: - while True: - s = self.__read(1) - if not s or s == NUL: - break - if flag & 2: - self.__read(2) - - def tell(self): - """Return the stream's file pointer position. - """ - return self.pos - - def seek(self, pos=0): - """Set the stream's file pointer to pos. Negative seeking - is forbidden. - """ - if pos - self.pos >= 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/compat.py deleted file mode 100644 index 09929b0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/compat.py +++ /dev/null @@ -1,1120 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2017 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -from __future__ import absolute_import - -import os -import re -import sys - -try: - import ssl -except ImportError: # pragma: no cover - ssl = None - -if sys.version_info[0] < 3: # pragma: no cover - from StringIO import StringIO - string_types = basestring, - text_type = unicode - from types import FileType as file_type - import __builtin__ as builtins - import ConfigParser as configparser - from ._backport import shutil - from urlparse import urlparse, urlunparse, urljoin, urlsplit, urlunsplit - from urllib import (urlretrieve, quote as _quote, unquote, url2pathname, - pathname2url, ContentTooShortError, splittype) - - def quote(s): - if isinstance(s, unicode): - s = s.encode('utf-8') - return _quote(s) - - import urllib2 - from urllib2 import (Request, urlopen, URLError, HTTPError, - HTTPBasicAuthHandler, HTTPPasswordMgr, - HTTPHandler, HTTPRedirectHandler, - build_opener) - if ssl: - from urllib2 import HTTPSHandler - import httplib - import xmlrpclib - import Queue as queue - from HTMLParser import HTMLParser - import htmlentitydefs - raw_input = raw_input - from itertools import ifilter as filter - from itertools import ifilterfalse as filterfalse - - _userprog = None - def splituser(host): - """splituser('user[:passwd]@host[:port]') --> '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, - HTTPHandler, HTTPRedirectHandler, - build_opener) - if ssl: - from urllib.request import HTTPSHandler - 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 survey 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: # pragma: no cover - 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 - # Issue #99: on some systems (e.g. containerised), - # sys.getfilesystemencoding() returns None, and we need a real value, - # so fall back to utf-8. From the CPython 2.7 docs relating to Unix and - # sys.getfilesystemencoding(): the return value is "the user’s preference - # according to the result of nl_langinfo(CODESET), or None if the - # nl_langinfo(CODESET) failed." - _fsencoding = sys.getfilesystemencoding() or 'utf-8' - 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(r"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 argument, 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 importlib.util import cache_from_source # Python >= 3.4 -except ImportError: # pragma: no cover - 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<prefix>[a-z]+)://(?P<suffix>.*)$') - - 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/database.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/database.py deleted file mode 100644 index 54483e1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/database.py +++ /dev/null @@ -1,1336 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2017 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 version is not 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(): - # We hit a problem on Travis where enum34 was installed and doesn't - # have a provides attribute ... - if not hasattr(dist, 'provides'): - logger.debug('No "provides": %s', dist) - else: - 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 '<Distribution %s (%s)%s>' % (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.modules = [] - self.finder = finder = resources.finder_for_path(path) - if finder is None: - raise ValueError('finder unavailable for %s' % path) - 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) - - r = finder.find('REQUESTED') - self.requested = r is not None - p = os.path.join(path, 'top_level.txt') - if os.path.exists(p): - with open(p, 'rb') as f: - data = f.read() - self.modules = data.splitlines() - - def __repr__(self): - return '<InstalledDistribution %r %s at %r>' % ( - 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 - - tl_path = tl_data = None - if path.endswith('.egg'): - if os.path.isdir(path): - p = os.path.join(path, 'EGG-INFO') - meta_path = os.path.join(p, 'PKG-INFO') - metadata = Metadata(path=meta_path, scheme='legacy') - req_path = os.path.join(p, 'requires.txt') - tl_path = os.path.join(p, 'top_level.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') - tl_data = zipf.get_data('EGG-INFO/top_level.txt').decode('utf-8') - 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') - tl_path = os.path.join(path, 'top_level.txt') - 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) - # look for top-level modules in top_level.txt, if present - if tl_data is None: - if tl_path is not None and os.path.exists(tl_path): - with open(tl_path, 'rb') as f: - tl_data = f.read().decode('utf-8') - if not tl_data: - tl_data = [] - else: - tl_data = tl_data.splitlines() - self.modules = tl_data - return metadata - - def __repr__(self): - return '<EggInfoDistribution %r %s at %r>' % ( - 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') - if os.path.exists(record_path): - 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 'Placeholder for summary' - return Distribution(md) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/index.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/index.py deleted file mode 100644 index 7197238..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/index.py +++ /dev/null @@ -1,516 +0,0 @@ -# -*- 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 - with open(os.devnull, 'w') as sink: - # Use gpg by default rather than gpg2, as gpg2 insists on - # prompting for passwords - for s in ('gpg', 'gpg2'): - 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 actual 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', - 'protocol_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} - rpc_proxy = ServerProxy(self.url, timeout=3.0) - try: - return rpc_proxy.search(terms, operator or 'and') - finally: - rpc_proxy('close')() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/locators.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/locators.py deleted file mode 100644 index 9131b77..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/locators.py +++ /dev/null @@ -1,1292 +0,0 @@ -# -*- 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, text_type, - Request, HTTPError, URLError) -from .database import Distribution, DistributionPath, make_dist -from .metadata import Metadata, MetadataInvalidError -from .util import (cached_property, parse_credentials, ensure_slash, - split_filename, get_project_data, parse_requirement, - parse_name_and_version, ServerProxy, normalize_name) -from .version import get_scheme, UnsupportedVersionError -from .wheel import Wheel, is_compatible - -logger = logging.getLogger(__name__) - -HASHER_HASH = re.compile(r'^(\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) - try: - return client.list_packages() - finally: - client('close')() - -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: # pragma: no cover - 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 - self.errors = queue.Queue() - - def get_errors(self): - """ - Return any errors which have occurred. - """ - result = [] - while not self.errors.empty(): # pragma: no cover - try: - e = self.errors.get(False) - result.append(e) - except self.errors.Empty: - continue - self.errors.task_done() - return result - - def clear_errors(self): - """ - Clear any errors which may have been logged. - """ - # Just get the errors and throw them away - self.get_errors() - - 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: # pragma: no cover - result = self._get_project(name) - elif name in self._cache: - result = self._cache[name] - else: - self.clear_errors() - 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') - is_downloadable = basename.endswith(self.downloadable_extensions) - if is_wheel: - compatible = is_compatible(Wheel(basename), self.wheel_tags) - return (t.scheme == 'https', 'pypi.python.org' in t.netloc, - is_downloadable, 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): - return normalize_name(name1) == normalize_name(name2) - - result = None - scheme, netloc, path, params, query, frag = urlparse(url) - if frag.lower().startswith('egg='): # pragma: no cover - 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] == '/': # pragma: no cover - 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: # pragma: no cover - logger.warning('invalid path for wheel: %s', path) - elif not path.endswith(self.downloadable_extensions): # pragma: no cover - logger.debug('Not downloadable: %s', path) - else: # downloadable extension - 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: # pragma: no cover - 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: # pragma: no cover - 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: # pragma: no cover - 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: # pragma: no cover - 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: - self.errors.put(text_type(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<rel1>[^"]*)"|'(?P<rel2>[^']*)'|(?P<rel3>[^>\\s\n]*))\\s+)? -href\\s*=\\s*(?:"(?P<url1>[^"]*)"|'(?P<url2>[^']*)'|(?P<url3>[^>\\s\n]*)) -(\\s+rel\\s*=\\s*(?:"(?P<rel4>[^"]*)"|'(?P<rel5>[^']*)'|(?P<rel6>[^>\\s\n]*)))? -""", re.I | re.S | re.X) - _base = re.compile(r"""<base\s+href\s*=\s*['"]?([^'">]+)""", 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: - try: - 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) - except MetadataInvalidError: # e.g. invalid versions - pass - except Exception as e: # pragma: no cover - self.errors.put(text_type(e)) - 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('<a href=[^>]*>([^<]+)<') - - 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<name>[\w-]+)\s*' - r'\(\s*(==\s*)?(?P<ver>[^)]+)\)$') - -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 meta_extras and 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/manifest.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/manifest.py deleted file mode 100644 index 92688d0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/manifest.py +++ /dev/null @@ -1,393 +0,0 @@ -# -*- 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 -import sys - -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) - -# -# Due to the different results returned by fnmatch.translate, we need -# to do slightly different processing for Python 2.7 and 3.2 ... this needed -# to be brought in for Python 3.6 onwards. -# -_PYTHON_VERSION = sys.version_info[:2] - -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 <pattern1> <pattern2> ...' % 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 <dir> <pattern1> <pattern2> ...' % 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 <dir_pattern>' % 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 _PYTHON_VERSION > (3, 2): - # ditch start and end characters - start, _, end = self._glob_to_re('_').partition('_') - - if pattern: - pattern_re = self._glob_to_re(pattern) - if _PYTHON_VERSION > (3, 2): - assert pattern_re.startswith(start) and pattern_re.endswith(end) - else: - pattern_re = '' - - base = re.escape(os.path.join(self.base, '')) - if prefix is not None: - # ditch end of pattern character - if _PYTHON_VERSION <= (3, 2): - empty_pattern = self._glob_to_re('') - prefix_re = self._glob_to_re(prefix)[:-len(empty_pattern)] - else: - prefix_re = self._glob_to_re(prefix) - assert prefix_re.startswith(start) and prefix_re.endswith(end) - prefix_re = prefix_re[len(start): len(prefix_re) - len(end)] - sep = os.sep - if os.sep == '\\': - sep = r'\\' - if _PYTHON_VERSION <= (3, 2): - pattern_re = '^' + base + sep.join((prefix_re, - '.*' + pattern_re)) - else: - pattern_re = pattern_re[len(start): len(pattern_re) - len(end)] - pattern_re = r'%s%s%s%s.*%s%s' % (start, base, prefix_re, sep, - pattern_re, end) - else: # no prefix -- respect anchor flag - if anchor: - if _PYTHON_VERSION <= (3, 2): - pattern_re = '^' + base + pattern_re - else: - pattern_re = r'%s%s%s' % (start, base, pattern_re[len(start):]) - - 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'((?<!\\)(\\\\)*)\.', escaped, pattern_re) - return pattern_re diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/markers.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/markers.py deleted file mode 100644 index 82fcfb8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/markers.py +++ /dev/null @@ -1,131 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2017 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -""" -Parser for the environment markers micro-language defined in PEP 508. -""" - -# Note: In PEP 345, the micro-language was Python compatible, so the ast -# module could be used to parse it. However, PEP 508 introduced operators such -# as ~= and === which aren't in Python, necessitating a different approach. - -import os -import sys -import platform -import re - -from .compat import python_implementation, urlparse, string_types -from .util import in_venv, parse_marker - -__all__ = ['interpret'] - -def _is_literal(o): - if not isinstance(o, string_types) or not o: - return False - return o[0] in '\'"' - -class Evaluator(object): - """ - This class is used to evaluate marker expessions. - """ - - operations = { - '==': lambda x, y: x == y, - '===': lambda x, y: x == y, - '~=': lambda x, y: x == y or x > y, - '!=': lambda x, y: x != y, - '<': lambda x, y: x < y, - '<=': lambda x, y: x == y or x < y, - '>': lambda x, y: x > y, - '>=': lambda x, y: x == y or x > y, - 'and': lambda x, y: x and y, - 'or': lambda x, y: x or y, - 'in': lambda x, y: x in y, - 'not in': lambda x, y: x not in y, - } - - def evaluate(self, expr, context): - """ - Evaluate a marker expression returned by the :func:`parse_requirement` - function in the specified context. - """ - if isinstance(expr, string_types): - if expr[0] in '\'"': - result = expr[1:-1] - else: - if expr not in context: - raise SyntaxError('unknown variable: %s' % expr) - result = context[expr] - else: - assert isinstance(expr, dict) - op = expr['op'] - if op not in self.operations: - raise NotImplementedError('op not implemented: %s' % op) - elhs = expr['lhs'] - erhs = expr['rhs'] - if _is_literal(expr['lhs']) and _is_literal(expr['rhs']): - raise SyntaxError('invalid comparison: %s %s %s' % (elhs, op, erhs)) - - lhs = self.evaluate(elhs, context) - rhs = self.evaluate(erhs, context) - result = self.operations[op](lhs, rhs) - return result - -def default_context(): - def format_full_version(info): - version = '%s.%s.%s' % (info.major, info.minor, info.micro) - kind = info.releaselevel - if kind != 'final': - version += kind[0] + str(info.serial) - return version - - if hasattr(sys, 'implementation'): - implementation_version = format_full_version(sys.implementation.version) - implementation_name = sys.implementation.name - else: - implementation_version = '0' - implementation_name = '' - - result = { - 'implementation_name': implementation_name, - 'implementation_version': implementation_version, - 'os_name': os.name, - 'platform_machine': platform.machine(), - 'platform_python_implementation': platform.python_implementation(), - 'platform_release': platform.release(), - 'platform_system': platform.system(), - 'platform_version': platform.version(), - 'platform_in_venv': str(in_venv()), - 'python_full_version': platform.python_version(), - 'python_version': platform.python_version()[:3], - 'sys_platform': sys.platform, - } - return result - -DEFAULT_CONTEXT = default_context() -del default_context - -evaluator = Evaluator() - -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 - """ - try: - expr, rest = parse_marker(marker) - except Exception as e: - raise SyntaxError('Unable to interpret marker syntax: %s: %s' % (marker, e)) - if rest and rest[0] != '#': - raise SyntaxError('unexpected trailing data in marker: %s: %s' % (marker, rest)) - context = dict(DEFAULT_CONTEXT) - if execution_context: - context.update(execution_context) - return evaluator.evaluate(expr, context) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/metadata.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/metadata.py deleted file mode 100644 index 10a1fee..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/metadata.py +++ /dev/null @@ -1,1091 +0,0 @@ -# -*- 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') - -_566_FIELDS = _426_FIELDS + ('Description-Content-Type',) - -_566_MARKERS = ('Description-Content-Type',) - -_ALL_FIELDS = set() -_ALL_FIELDS.update(_241_FIELDS) -_ALL_FIELDS.update(_314_FIELDS) -_ALL_FIELDS.update(_345_FIELDS) -_ALL_FIELDS.update(_426_FIELDS) -_ALL_FIELDS.update(_566_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 in ('1.3', '2.1'): - return _345_FIELDS + _566_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', '1.3', '2.0', '2.1'] - - # 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') - logger.debug('Removed 1.0 due to %s', key) - if key not in _314_FIELDS and '1.1' in possible_versions: - possible_versions.remove('1.1') - logger.debug('Removed 1.1 due to %s', key) - if key not in _345_FIELDS and '1.2' in possible_versions: - possible_versions.remove('1.2') - logger.debug('Removed 1.2 due to %s', key) - if key not in _566_FIELDS and '1.3' in possible_versions: - possible_versions.remove('1.3') - logger.debug('Removed 1.3 due to %s', key) - if key not in _566_FIELDS and '2.1' in possible_versions: - if key != 'Description': # In 2.1, description allowed after headers - possible_versions.remove('2.1') - logger.debug('Removed 2.1 due to %s', key) - if key not in _426_FIELDS and '2.0' in possible_versions: - possible_versions.remove('2.0') - logger.debug('Removed 2.0 due to %s', key) - - # possible_version contains qualified versions - if len(possible_versions) == 1: - return possible_versions[0] # found ! - elif len(possible_versions) == 0: - logger.debug('Out of options - unknown metadata set: %s', fields) - 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_1 = '2.1' in possible_versions and _has_marker(keys, _566_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_1) + int(is_2_0) > 1: - raise MetadataConflictError('You used incompatible 1.1/1.2/2.0/2.1 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_1 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' - if is_2_1: - return '2.1' - - 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) - logger.debug('Attempting to set metadata for %s', self) - 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( - "'%s': '%s' is not valid (field '%s')", - 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("'%s': '%s' is not a valid version (field '%s')", - project_name, value, name) - elif name in _VERSION_FIELDS and value is not None: - if not scheme.is_valid_version(value): - logger.warning("'%s': '%s' is not a valid version (field '%s')", - 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 '%s': %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(r'^\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 not d: - d = self._data.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("'%s' is an invalid value for " - "the '%s' 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/resources.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/resources.py deleted file mode 100644 index cd618a6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/resources.py +++ /dev/null @@ -1,355 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2017 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: - # In Python 3.6, _frozen_importlib -> _frozen_importlib_external - try: - import _frozen_importlib_external as _fi - except ImportError: - import _frozen_importlib as _fi - _finder_registry[_fi.SourceFileLoader] = ResourceFinder - _finder_registry[_fi.FileFinder] = ResourceFinder - del _fi -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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/scripts.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/scripts.py deleted file mode 100644 index 440bd30..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/scripts.py +++ /dev/null @@ -1,415 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2015 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -from io import BytesIO -import logging -import os -import re -import struct -import sys - -from .compat import sysconfig, detect_encoding, ZipFile -from .resources import finder -from .util import (FileOperator, get_export_entry, convert_path, - get_executable, in_venv) - -logger = logging.getLogger(__name__) - -_DEFAULT_MANIFEST = ''' -<?xml version="1.0" encoding="UTF-8" standalone="yes"?> -<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> - <assemblyIdentity version="1.0.0.0" - processorArchitecture="X86" - name="%s" - type="win32"/> - - <!-- Identify the application security requirements. --> - <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> - <security> - <requestedPrivileges> - <requestedExecutionLevel level="asInvoker" uiAccess="false"/> - </requestedPrivileges> - </security> - </trustInfo> -</assembly>'''.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 = r'''# -*- 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 _build_shebang(self, executable, post_interp): - """ - Build a shebang line. In the simple case (on Windows, or a shebang line - which is not too long or contains spaces) use a simple formulation for - the shebang. Otherwise, use /bin/sh as the executable, with a contrived - shebang which allows the script to run either under Python or sh, using - suitable quoting. Thanks to Harald Nordgren for his input. - - See also: http://www.in-ulm.de/~mascheck/various/shebang/#length - https://hg.mozilla.org/mozilla-central/file/tip/mach - """ - if os.name != 'posix': - simple_shebang = True - else: - # Add 3 for '#!' prefix and newline suffix. - shebang_length = len(executable) + len(post_interp) + 3 - if sys.platform == 'darwin': - max_shebang_length = 512 - else: - max_shebang_length = 127 - simple_shebang = ((b' ' not in executable) and - (shebang_length <= max_shebang_length)) - - if simple_shebang: - result = b'#!' + executable + post_interp + b'\n' - else: - result = b'#!/bin/sh\n' - result += b"'''exec' " + executable + post_interp + b' "$0" "$@"\n' - result += b"' '''" - return result - - 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 = self._build_shebang(executable, post_interp) - # 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t32.exe b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t32.exe deleted file mode 100644 index a09d926872d84ae22a617dfe9ebb560d420b37de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92672 zcmeFae|!{0wm01KBgrHTnE?_A5MachXi%deNF0I#WI|jC4hCk362KMWILj(RH{ePj zu``%XGb_8R_v$|4mCL$UukKy$uKZHLgkS~~70^XiSdF_`t+BHjmuwgyrl0Sro=Jjw z?{oin-_P^UgJ!zA>QvRKQ>RXyI(4eL;;wCiMGyol{&Zas_TfqYJpA{+|A`|xbHb~c z!Yk?TT(QqI@0}|a2Jc_%TD|7M`_|m^W7oa+Jn+DSqU(n%U2CKVT=zfVD!rr9_2UOu zth|2c(2Tr9(NA5t<NC8tT~V9-yW`aU+CSkvn$lGJ4S&8-`#yiFwJ+iMhxXsq{t?f! zPq}Iz<MEFt;9pBTU+2#|@4q)lW&T$!@OcGco+(9m^+zAvm4s;*%%&lx3_&=8m}iaH zUtWi&6MyaW?lHn<K}Zoy6w&__n(+=I7JY33Jw5dtkn&Mx{_KBHq_Emz5@t}qXA*wp zqrkWR?J^0TbV1nmsUYNjD{1iSzP@kuRXeq7FvR8I>&2BDL`2=vh9AO<+De^2=$}gv zmS4YS#XaIZf{>Aqgm(N*!QV0b4f^Ln)z=$f!r^I1aH3)=lNe*rKaU_ZU%zJUntKt) z+ln>|cjCo%Iii5`T)$@Jss{o1@0myk4S0EXeFttfQvct-{|_jzNbRiew1NS4Gz_05 z6uzl=d*xc2AbBHRr%#vck#O%NT@UJz5kcY;ANvDFj(j-FNbm)xT=WR+p`nOt_W0P8 zEK0P8OnSD^?h(|A-okg706sq2ikj34TcA*nl=b=?2UD8I&k}qKn1+r<j&QR$c0Wa_ z>28~3R^yR!lj^nQw?s+{dbRh|=(1`mLGGLq2+l*55pQpy9$cP}GL+h0rM8RRhgu4c zx}%OKT7nA!v4FXBT@RT9y41`3IS_AnE*m8XPb*%Q(%Yx&^5HyXQK#aKyQ8%hr8Zva z2W*_ct~S75vx4y|(HP0bibhZgHnoctqFDK`%N-TRsa>Izsz~hz=bl$<ZTV4)H~zHR zg)(FH=$eCIUaOzA3=ssy+pVHfLFl?vHBeu&w*5c~wfd=|Zgy-qy>+9aw}7MCRoLu4 z?|8B~xEgIzq)s2ZjiSAs`QGkO3TmtZ@Y4nkR5g3YCJ4YrK0GB~>d2Sc^UpnOF6;>j zerni!qbjs1!0tswy!f`U&F4=CpFsIO*7*&mOQdwBzVvP_vqp99--U!4_b@T7+#Ox} zrDjpQT~yT4(a7%Ys#?aoR_?U>L)U{qg*}QCXIB7;sw#BqIDasB-7JH5fPu}gXWPIS zND<4lhXTP@P<X`K?L&Y1Sd?Set@1vY?cjXo?vrkdc;mh|4g-?<QgaO|5-d7Uq?AQ~ z0Y6JaUxBCGZPEvtrLd=r(A|>;jFzcwOF6oJwM);=0wVHNLdYC4fjm@{PtPtTw(Sb{ zNOnDY1_8uVB~uyl8T?0MWB86>(JX30dPqQyTtF2zdyMpsczx$tbiOg14l50Lr|||( z26Gkafq+t)m#b$_rAkgmO7on)&}uw3_(JKGdiE4VqgcDVG0(YLN<pETxv)8S3@!Ju zJ9~A#ersMM4f+D2F3%|%Iqk?9?BsCQ0xnd#)Q@7P27K(yd`?D1%$uwhO$S)0M?d95 z;tJLcMv7YV?3bwca~S3*^B+cHkbP(*PUeZHjKppuaTR;jNG#=v`;A0XaLNde5G~DH zLQ|uj?Ll3rCWq>p;tK=<;JJV<0x3P)i8KVWg3Eac>rsLVDD)X(b9NGWK@OJz1$vbe z-a66{&N0e`bmFghcnvo4VhT7Sh;|y%=NJUW0?=J8DgD$Vy!JAHD$&XMht$8~%t)CH z($2A0r~%C<$nlBdn2^oKB+OvMx{@8hy#}!KJ~9kdt8H?dO}!L*hq|=d7P1HTQJKsG z-YPsAZieWo44y{R0`{wmx*mBX$FVm}KAb}pjG(edC(0I+eOnpK?Ir3<07vWPs2Mp3 zJd?n`z!2c5d|o5pDyZkh(T=^TlyD-M0EEmn#i`QgiG+QL1kqO5T%)8SHNcjFAu2Jz z7ow)IdPrDY|2Yjw$P^#@<^t90tdZRlrK^xdo;k77@kDd5kz@4<QjKzeTANvJH3PvU z6hzW-4z(Xps2=DO;#U!VHzv`@;n_9bn%rdM5R`=sfR;X2y>_Jl(tYXOd|cLd=3%B8 zn2SgxXIs(5HS+X{qBZ2wQbH5uW^2^~A3Fd@qobnXcC_&b*k8+wtTt=I2#4QbV&Nia zaCORVf;8m%L7F}MA+YLXUO@@HPZVv+ZUz`_Xf#aEA0kp_X7x#WDLh)E*k?z=T?qTy zj46z*MElivVRKjqNim*W-%yY4jAJ}S9-|qgu%}9W&mCWz-88K3;!x3EcQHduo8>;T z<}1ytevOPhB;Tj=Y^x|+Rb?dH4MFT{OBM3Z`vW0cF!l|NsRAHMBD?U6`yAz2!ShT< z9-?!DM476pBD?8XQ@ouX{XDZBb2O)i!87Bf&v{Q?8Qg|K(C0qZb)Jg=^D?8qRwXlJ zSk6;-xmzX1vs@8uPG&j4vl#F*z6U-M?j%zAmF@IoKf;d^?!a$hbMbb12D_;!V#PHm zied>c=;}+vE<voyb6^}r%FURNEYTYG`%+JS%Za$!rSb~Clc0ppq8OF;;CB+$BPwT@ zh!4f(pt$fE6nE%E+;YScp?raec%#kF4xsP)J2tokDEZj29?brniFD2;`fkEk-_6^y z4IqAhfIW-ZPd;1_U|)bWj>YoO4ep_&UrFY3t+DH%BSCbm)}c6+j0Jn>N^M7BGX#qJ z6Hvk(m9p4}V+0{8jD(zFKS8jtS$hN!lAWsp&^$gyM-<QG(Bet<OU#>!*M^)!*>;{Y z2RXH)(2Qz|-I9wn_7@lGi+H<yK|+S@$|W@I+73*8PJbo)C0E{@ink-`CH+WeP^mC? zb+9wY-wM&mPC^B&YE^YeR=+CQFinnN`A7_nT&fhX_eKM}P0I_`As@<w{>X-NZON{r zLN-{@jx=_OpajgPyckT4HR>X}W~*_(B@UOHAsK8n;iFPlO|esiut|WCQYu~t6fj<k zawg8gU|5L301=YoXD?ETn9ymy_OU9wRVk^-3KqyKdj&t~7eI&FaLqV^M#F)9PO-OF z9KnLf0{k-AGAgN}SFv$LA&H=0{kpBpPL<uuZn*}uF0-lStCUQ&JgCgKs+sPg!LhRh zakx6vH5!UR`D!VR#jXNes#<1sr%cX4;z$*l`qOQ!d;*nYMQo2}wOPuN%U7FGiAl>) zZ7A7er9@~QhpYleL+*4IHdh9Uy-r61t;4`BVB0b5H|XjFr}z-u2Xb$Yy+i=D_OLE~ z0;MY}Qqjc<kN|Z}-jF3ov+_T2?6tb(_^dTU<@jCeZE~~Av9}A-sEZ~nL=U0pR36<7 znXgwk#nKwgfw$JUyTn#)Ix&%Buf@l{x>gX7)p$?yu}|=h3B{Nykj=3dWTl)bl=FyV zFaB@KZ>g*86_$!=YDHYWXZ1JBApDI+mXxDw1;6w#BmuRwo*KgWY!qt+mnT|UgCK9I zcCT7t4<8l(oc}dil=-a|9Y>3fJNBBs)1nsMBH(qB@H#HGa=Z@Zw`e24Uz~A?Q)CPR zG$zSOm81Y%YG41LKOmP74+>Han|}kie>{8YIxLWMV9Q<r1t4e7h*q@~+9y^;11!6k z<aa!*OIL;LON&!po(#qqTFLH28KiN%h|%#U40;TuQ~W^_qn1_4ZX^J92ys!tj!Fuf z@2+m$Cpc#btvi~_Xco&_iu`H&1T)5cs=KW=O>NsrDIu$mJ%1x%wDVWfNNJVEhpc|3 zh|<{B%MwyTV-_!MEj+oO%GFYK5WHeH%PlVXkhT6o9Yn^)FG77w0pSEhKt0qFPf@Mm zI%sR^MfvjyEuW{VR<MsQ+T3lT6?K`F8<Bl>{e{)Yu<_kxh0RM_+2pB$P*)-n{lpa3 z4IK0$s*8<)BpoDNc>CO4YbMtBEl1t!$Efe-A8EOeBDXjfu$m%4sGn~a>d-VTLvC|n zVX*|%P4*SUiX6|X9Vs_EeXJP3P&Dex4S0wYuN}M%-JP-w2qNBccgvayCA`9%`sH?g zv##g2prO2=Q9!+_y4A?Ld{EvB8x?sWt9C>p4@Z&}eiytn&t3^pbEmp6&sKP*X-S^_ z{2?eZ5D-ln@*&erZ;NYWW)g2QVx=!+W?eHppk8YEi_P*0J)D+Lw6V*e1Bsc*93JG5 z{(g5W!TwdvD17@3y{~VR<%0aRUicn$-lu}eR4=xxKj=mISKg$Fqg!H51nmf#wIj<S zv-P`MBeVOK(JzK0etYqolz+f?xXf(z)Bp4*@H|HO{ZLmy2cEuQ!C-X_`plVt`y8gQ zESl!{w6G7$vDg$7O$nG)=T0MTbbD=U(nx7Z)&2m|se<asf`W04+E!CMUL1=_K)yg? z=mLqM7FUe|83j!@NBV1FbL`KcS7l{L_rD>aR4j51QwJY`hM-i$-ET{y*gvDnsDP0O zCPz>eV*i0~afNN|FkUHJhuF}>ST&@g`|VA0LhXeo7oY!Hj+@uq94Sq=m5{At{Rnn| z3O?*^6?3D)F^FAl7}O+MW*{m(DiA&7W*fwqdK%JrD4W3Rr6H<q;muk=Xa@AvS<Ho^ zfFWo(j8-9j_A;0Wvyj@Q+1ck<i-)eQ!o2f!B@09BRH<!|m7P$F4HF9KSxFh$iFwsY zBE6av&k7sKUYcniKsJ)ARaO0hHIap68lU=JLvvAOqUR#s9Fk2^)_}yTyqP1J0KlAs z@*(!@SVYx2L0qM}7n8~uxi(7>voK4KV%Gulgj7C0j3g6R<y9#MGT$yA(F;$WKVR(4 zT6cwfNf+&vA*_wcJ-p!nXc+)lzuWQK+N|?sc00Nh_8j#S(WaK=z;dFcMZMi*2ZVy% z@DWIx01`_vyMml0j>f+uR=wmty#|IOcWtlZvDXk0(5KM?4%Ubt-YN*!Y_ghWnrh?u zpFpBtQ`@W7cE!Sga#we+St8eV3*v<Rpw8yPlkPvROIKUY!vxc!rKznHXw5&Q4dD}x z`}BIV+UoZ9uD=^ZkNa8sOt7<${iVccQ?vL83BVO5Z#@6>HQrt=&(FRjj;Gi=Wps}? z5$vLS<BcXX?{*!^hPOL>#u2^>wX5E&*y}Xu)M6owZnjhR*w`rGk8WcvAVO4_2&`j| z6V!aWOO573WS^Iuu?8c?sdYlR+@?dhYzH`*V>*f@r+7oLlqFtUEagbo@zNbAoeVPU zRWyJKU%?B<6eF-S%Gk{QiU+j59AmgEM9ZAZxaC7AwlD<_QW#T^9SWnyvpr8z!VnVu z*|3U7op*6Q%&Kk$s=El)BC7F>QcZert<8OjG}~6x{2tbf3GP~hAlN1LCaQpTP;KWh z;#sBE7GO~fg(@&-&s@7ldN9C#fbQTVA1lZEpnDx}xtIb0@#%z?Pg5=SCuz#kQuc3v z*48sCZ?kj__0DJl%~JUk(>|f4J=J237=ZgYpeL_R%wi=27`2n>vZ6yTuI`Yo3@{CK zs?da-K8$aBfPD<Yf;6y4{g{(D_uE=^7)5cddLv<<kfz`=L8vMA+9YVpM={A`IMC}_ zs8U{Nke%bObl+>8rHvz%He`x;ZTQu*S70{6jBB}qOd9l8VZX8^G5!~*UMJGBSRF7< zkn>6esRF3+P=sOJsIXx?k5lP)6blRhUc|BvGWVw-yJPRL0O?HEJNC{*wi<|n;VM>R zhr~f^>@FA)1VpqzlOG0X=?^t>v7l7+iZdV)9ebxk+ozn_j=eWh<~G0{0<4+r0myud zAW>$@1oIuYW0>%cCO|rRd-Ge)pB~$MrMGt(EO`md*j@?ogxS=62`uvr@J+PwRs@M< zR)U6DmKC|FgQ{SkEM8`X#dn!CWUBPD-`~au0Bk|-R>#&$#K8ef%CtEl+4ARFW0Me4 z)6_d`>goJHD%IURhb(BzDPpNC&PwuU6Iwn??J2#<S_fV`;Xc0Bsdm-fk|CMq%yyqz z^AF^qkuQx^TVtnDe#6NPU$Jh?5(b{J#}Eh3H8~ny;k8>qHQN=7x?|7NYjs?e;`uF> zLoJt5P*Ws#J8>n}d#Z)kT7X&~h7l8@BF;W5=Z%4Yl3eOs%uF`R5iPxLdWK}ty*3Y& zn{(&q+65OTC=cb}^6@{7OyTB-Q$Q|lI#(mXbL*Yz9rm6Un`k@VLKC8BQRhM;qvD>@ z0;^S|BB5wO%&FdPi???vDe@T7$7x9a5bYx^-iC3Cp3P>K{syyO!zNBOO(tP51WW2F zTBOm-wUA;kk$-0eT7}GftoR7p=y+Ozs%7>UWXZ`(G^k1C-Y2(zCD%GlN|{~C^s_%e zPMM&et#k@iel~tGh+1Z^YG{7gCb#zjMjQEpNgV!yP0W0enkl74%W_DQHs(b?>z&SJ zeA8UC=qO|*q=n<jmdGp}+9sOYMa^A{CSBItEJP&uaBqgu+*?)2iLsU;_nE{Lxz8+p z#M}RmMEfC*`7AwwOGo?nP@xiKaw`0Q@+8>5qz=ln;8%-QK&2+Bp{);KX?uNf(Go<6 z_p!bo2*OT=y%m;&5PCVCHG=2SDYqM$fYU6#z;+Wp3y@Z&#<j^lRz^X0bln&=wML$? zp+p)63%t$8#3aLr4!O;$Vr?&-q?sRjLu#aSgIVhaS)2lDT!N;D(%9Z>P!P>Uy@r7A zBjMc!iS%W9QcL_fLYS*GQMnm%0%F0e6o8<TlY@$XKxeQapiGr|+WoQkhf4M$kcg}{ zh0K07qKoS_N?M@~BgiQB6v{GIN-Tn)N^)2mTj}?)oAZtF5tXi>TB1}7%r8mN4E2p0 zJib7#R@kfq0rrB8w;&f>Gl=g3@_RanoW-u=Rq<)_I3R~awbGt4yDU!kv)z-ZTjFfm z?Rc`i&;op{20Z`;gb%g%bZxj=mJ1bTh>wl@3QefV#jI6h7iitbS*w6(n1d>4o*@em zOfJds^m|m7U@$*|#P>r{wMQJvi-6fCk6Php|Ni$RgRvPzz(I^f^R@N?iuJSe1eIi| zPH>AEtFzS*6vPwz$0wJ!M`5w5g6<#63i=4SM^JTPPjS(6U_xn#ADdWMiLJt9w6EeW znz>Me2kSiQ*=ajwAY8wXVrc(e`eOeOh}N3o#vH^*XXSk&o|)_3FFabjiy??Xrc`vW zyTJ9}Fk2{>k-lEVbQn5#gp<wV5%=9eywl5W1iB!tEi{(3jsu>0cCg(e?0kk+moLx9 zDCnS3@Oec7%Eq=66kCoC;@Q&KR*DFj*uB(DFd-H@4^z|*8cREu<Hx5LEyP1F^5K_F z=rlOb+g>bnNU1(%0yLY9AMJW<(y2BzU8y*Wea_$AhEhP^l}z=XRlMzTZHGYcpTh{p z(g2@eLDk#NR$)J(m3<6^V^2aJ@>#CFb265RJL3}|`iFMYZ*~{`j_ah~B1XR@9r&%; zn(cJaW2lus#<lavl(YOX=`?>__W>TyJf30$i0Tz~_Tp9bT6YR~heol}PVwAG8ciuj znhF2ypv0ZMpkOqm3%}`Bp*fn;jSxD~u-Pl&(^$jrXvA{eu)yls8>s_4C;~+NH?*h< zvrhH~L<V2})Ptaipj<)#m~8<g6HJiGHa6(6NM8+*{<+?{BL^1w!jqMxxM0p!7IiC& z;>w~f%|d%2@=TXV)@nI^k60kb*N9ij@%7>;wgr5c7%bNy2!-Yzvmm@?0!_7{g=gf7 zUXzyoS~^;SpxM}<C_FkV0OiKfa0=0phc~|}c)%w|9Sym7hha;OS2`a51==odmYK`Z z(1W1NhKP5Ti*sa_BVH%74Dkvq${pby$WiQ#JHp2R6ZOXND#&j;W36}&`6Tu_9zCrd zNBB29-op)eQEwN4#h&JgW=D7%0?>fuzw}|+lHWEDiK6|nI>gGgaX}LM%XMiF$ZVl_ zm&`InZ#n1yq_Sm}>IjcUiRW8|W)Ryu<Rfh^Eqo+*{mNeb4eSMayQxC$MjksUeNk^R zW<ny*u==;j;-WcVn*k|K!=igsGY>i4zoFv@pQU9;ZI|F^cn)QST+57pDV{0DLl%GV z6?8glUI>(F&)*Sl1d!a8Isk+oERiJYN}eSp_&Rd<*`G8%&M@ksYGwcpOw`&eY>XV? z$p;4~J1N;LXcI$e!LvO1U;2~B%59mHY!U|XOCdH(W{ShvJ(hkZu_CDD2J1i&T5Wr2 zGY}KsXO)C`7DP79vo5UH^ptjt0J0gE+hL1THdvME$_AUVAy+AP^0jct8C)$uR4hP| zg=e_6AAJ7&MDRIQEHo*$ySY8i5qS&L;C8o&bysnYcsH3vNWUq6k;pF1ij;jL$DQkk zN6KK;+HnO+01X?SNaoU~?((y5Ad#x7cqyuNSC0pCk=^HK3;#yZW!lfwIOaR;-q3Vb zPJ&Gx%I$pC|Aa+je(*UgNs?J*ZXv6~;0rhNIB5hbU_WLkh`%ejyR@;W!vG{xnvr$J zF4Ukbv%4>eBkS+uHaF<n$}*cWL0Oh7-{AzO8T$)EfVmoF8_ke+YHbI|vfBlmj9Cbp z<<6{$vy%2XLjVr4HNhGiAfrNBC7X{~wMu@T_V$F(ya?Yf!rnal_y!DIF2)SW6bTpb zC9B<#PD;2PuS(=B{XTh`ez$)>zq^mq?}20Zt=alyoIfJu8d0-#`w{*KALfteoB886 zujBE|<KZqmAVwn<RwY84Z&6+!2~Q==DDAdhCDK6wa7u*GRV$o`K|tXfS%$m}!ANWf z$p{yykbxv7!Te6xj_rv?SJ8|D##>hS&fV;pzZwQ2%)bXmL3sK@X7(lx#lu+Tb5Dna zAYEz@S1%&c>e-FFT+vdkw|{$e|65G0#|oQ$^p8dH0><y}8F<=Q-`NH^FOHZcU$}0~ z*OBtS$rpyL&kPM+3@y<5&J#$hZcQmgzEEbB`v}%-Eijc;x3bOPF*GH0Uwj1Y*NAIn ztCCT@MwH#C$It$Z>{!DrP;Bf`1gqc`^E#eN0o0>o^e^Zt@(3$**w(;FrFl+eRh~0~ zzx;M=9dl;65uQSC`jnLn%Ogn71na>I2X?a+J1JkQTG6#a!CDdYTt+6hzg90WN<Vfi zvBJ#ZMlf})t+0r;&H`#`n^%V*=K?eGh?7hQL)H0K%X@|P>CDjqtmoUYw`08Pf5E#K z8$H$<Lj<GOBa4_)*{j}-IgBY4o${qVaarUxA!5B-owp?`Qo05Ea9yOh#<9JTrGCh$ zDpYC;H*fH4o~wFcazw4tyLGj?Am*u<@dl%?m8t{^evZN|Y$HdZ+h|=Y8PxDkI||y? z7vH<~$L%nIlspABNf2E@da`qOkfbB~nnPWLiTO@Fo8sleSX0^&!=3;>P@#(#+r{C0 zKQW-buO4ClWJJTpMFR0#SoNSk2V?aay`!1sHZ<^B<Rr%uy|~iuXt)D`M6qwPSxAbF zM$9pC=UABML|132^YU^Q-RWDfAn3Wdp9c*2a2RejwiU`GY9v4l)WtSHPbnO&uC~j4 zeWDv>OqDP8iB|XD*Igf(x-PQh_fB;PFqR*&3evHliCQto#t!)eVL!tB<paEEyH-37 z{eftc17fzKSnK&&)>OpoBRH`T^<j6=R(OQj(7HuxFh^f)*H=5q20Rl@z=*8oFldHi z-iJv+fM?r0WV%LwC|7?dM}KHC%T54d_ivFuP^o@Fd;Wzd3wz*vcH(Zn(E39CT5W;E zoB*tN>QSWY`e)dh1(8C+ox#sQmIZA7vw{Fj$vtURp6$*B@Q=x2yA9D$eaI$+;GBiY zoYb;y5C+_j<;j+vw7;dcB*r`0hQzT6Be~maU+Z8+kXgyisOnb7Z!7HBCB=%!R94t5 z_qDGd;Sbr8JGHd!g%N*~TtYiuf|%=P%d#-o5O<QBro_}_Q5p<UPE?i}HDSe1+d0?$ z3M3LILX8qf$qeoj<sx>~TKAFDV(Y%){MU*_Nb9~~6jotwSG#xzlB;1Zb_Y&hLlnXm zpW32qvMQTw$|ifur_LcQkxkB*UV3T2kVSlL2XOwoZ&1%SWtkeCo;#%TkuBr!dJys( zaW=%wm(DLsNYMJuTrk3*`6v(xGgv%*`Z}wg{REoKcPD6q?nO%qn;RRr*P+K9UDMqZ z{t}>VVVVYA4b5UfWcyc$aO^qa*kf@YSwAwr#p8=SF_h9nt~*&angA4==9sXv+R!YW zLU*kr=S*ZmeLmDpps)mn1U6>@sykDOc*J6|3G^oikg1aO@S$Cr06;$u00g<&gMdzO zpgf}6Rxef4(_#`c>*l47b2e>Fp<=aRJuPN2o1$D4g@PKlrV_!lw8m$6fZF<ocBetc zXt)E#{0k5+JbDcet4~r)q#=_sS&m2Ua><uQug|EPmpRTES>V!!$`?nkx6`XDvY@@u zsafE)Jj?ywnzrP$_x#5+?ZMcvjWn#UU`J(7r(?9nckrF~xvRx-^5#{7I7(d~1asO# zF81%3Yp}b*(ol74Xei4icL6d#0R*d5cM;#Np9Y)A7|fi{7_954?;|b|(_qZ~g!CT* zQsxF#4vlO8eF~sS#fC(L_ES~rKm~usW_5C5-RZ1E&(P-0b0|g`my1ybfh3KOrce-M zz%cw33YuQsD|!>#<Jt_l?;C0OV36kkqMecZdZpncKRwogMC~x;O~V8sFJJwQ+Sb3f z-su{|thA?tWq*LJK!3o=r3YqoxLRhat?X5FB-Tf?WI@AVg4tJq#yT2)M#y<P<mQ5s zE(F(nUazxnun=kx0a>q;hmxZqh_GXC6w1a6oN|r^KVl+Y=7S>_4GJ0$HzSIV(8!!z z*kq=|Rig0ZZ1A`8h*eo@FJ8nPTWHMG)qaU0-$y7SebtoNfTb50Kyd6S!$>(AdlBJ5 z#e5BMuU2%Rm>(T2fKna#PY-nx3=jEDWhM-=YaDxKI`%Zf=;Cc}s+)pDTd8{-N;A!M z$Jc#9PP1+1x|xD>937`)iQZ<DYul|TVNFbp0=MWK?y=79#|~g9RheUt%yCAPsVL~K z8ui8+r2uwnY*YR~`dU55J_Jzg6%5L{d6scjSYFrlQ1P2|!4W2BjL4kv`}?SoHk;=* z>4G}P%7!5eN>wUt@Un%jVaO~)R6RnXO8d9sBH|NAcp(ag#fQehQm+4<;R7KnxQhnD zXE2h=7416PiiwF7{<Dl0=IXK_`kXz4!AtH!bF7Yr0Ck1S3>(BP*u8^o4O>wSWr*BQ zD>DoU_0qZL<tw@4BzpxJt6)BAr<EIZkSd+k*9H4W$uPAnSYnJ5AM>6Cu(C8*sg}^l z&_C=cTa88R7s%F=LZj2<2>%H$7$Hw*Cx_r1>&_`?AEw@&1^j8>ITg>sX4tIccuK9a zMx8gu2`4<S3(+184rxd!A)#G6v}s;WZeycsBqhX*1c4GDuyRPkG&W8iMQNYueAM=% zJ%W$se#EzelvT<&8sU}thshBQ5(!!XkR3rYSF1J&MqtTRf5~WWCG%4*HUV~7!_1&r z<(2JFklNX^h-;NgwnBS??{MfF=11REMN=pOSfO#oEDMW95mAcvG6MQ3^|4(@g#Kmm z(F?3*123-(erX<fi7fL)y*Bi@Q2$6g4>T6jRZF4>`4Q|rW`NC-@2yU~!X}~U4*;J+ zMWQ0EDR8Bi(4ZYx83}|MNy7hYXhA8b6961Bvi#W8Ew2MF@-=7`A1tw92`&cJEkrRy zEQO!IUFsGh8Qw<WZG?~Q{v!t69?HdLlZ~lL-9l|10C-{mU>_`mRaN>PDvxa(h<^w{ z%GhjVEJev4b<1JAT}MON$9w=#w~&$NjXM0~M}4e>M;%YR-M|ZL#v98+5T;;t3(>!1 zGWFKj;-?5FLigZpkhXg$iCsEPwMI7e_w8n*Z-=RAz<vmjfR*wT0TnOn#g5!u>p=7y z6fH-2S4aJ97rkEA$K)jD#^MBAG1adYxX+7|1Ilz3qM?pCa4fd35yX~Wm4r!f+ZbaK zTuUshMwgO*I{F0@@Ntqm55R`ZaxhfXE@J{NTMf-^6DHtXW}@iTs}i$t9yB(Zh3k<6 z+1Wpl^x>O8MdV8-x2^KCDs&i$n||v&N)WVzfPUObxuuR)(pnq9n5}yD%Xn~SIlo@C z8b#>YyAZ=&`N!%-GaxRE)vnsr5AX^Bv@LDjv5Kn17Vt<IcT4*r_2cqTO3`;vd6b@s zd2Jsu$wPS!v0cz5V1w$Swy*gb3zivwg`~@VoywJL(Xu7a#Q|JngOBH2WmA^2X?5F{ zBWT2&wk@|~=+B9k1xbEDs{9kRh_|2Q>0ni2Cg9Oz?v@URPAs{UvQ^NWZ99li2<z)s zvDYwjR3$|fq$y0$K&KVe0uL0wl$0K#^CBJ~CE0M7)QhNv*rYg&9@UR?a?KBBnNg>S zt%7|98>Ykuw}5Dz7Db*x^a0c4;OGR46Fb1#ewb)8->So_C*9BHoI-424{B;gJe|ED z?VN2!MZ6wc$jNdctiT6LTS3Mg6Udm4tsLNtZH|UG+M$-^p%U<S&mT~jS~kUaW5(N5 z<Lx8kZHDo7%y{z{ZwHOHQsZrx@m6lU{j2e|q=dSOD)|{jfLu1B64wbg1<Bt9P3Tty zbwlDqb0Xj*%>za+y_boMh$FeKZd!%Ba18hjG|eh^3HK4rs@M4#vcsWYN(-=S2Y1|f z<nl8+mCJ(I4<dHv-S;mrPC$i3*v@`og!RB+W+R`%bT$<u72^?m`b9@T@!$q<BSdy^ z6+L%Or;a-nT+UzkcsLbY%wKqyo{~!lLQsonSnQ->AdZwv2oO$+Fwye>W)CTE2aT+q zl(K_HLo|gl9+~aIJ_JGWyvBgsnHV{ah8DEV7>1Z-ND1V!^?49VFQV*f5shR0lmU}K zRyWEskTr(pP6Jt92m1^Rimtp@Eg?HrP$@+Tyfpno{rJx0s4h+N^D_`S34SiPoSy-X za>f!bPl2LzIWN;WoHVY_!GCd?F$wJ>Hx0Qni(E4t4UeI5m9%{uspw>F?-K`is`Inp zk?^*Z4dEIof1^geFnYbU2DVb{9B8+5zmAZJdv=Vc9k#wdp<2)dP99a_6!oVxhdB0F zO`0pRsP|6zc`UNQ*1<jkgK;l10u-&}>M^}KP7Yt)GCXPN7zLjsgE^mp7F-gcVc9_& zULm}QE%2U#8ujCe`IKruLZX%;`LVrYAsb7<@*5Jv#;yd7Y5C%3kAsgPJ=qgjXZzXW zFLcCxbO(js<iD?C*7UQT_yvZERWi-hu#`K%HcmAY3wyJE0$avz$-btOwu{M=TrSy0 zx{)|KNKf`~2`U7V85|#qs$#GEpr)?+6n(r9KWqn~OXh=x{y;FW5itz_*f$Sp2YvX# z_O-ihtwT*iF=mMIsMX!K=4-j+394t=QgLjMLd=n<32s*0e<GV=$>luc3VKKwJ&Sz< zkl;cFFd}gPPAE><2yS&WoJRlb+<;({*ZHp^p75%IUj7`S^`b_UqZScQLUlW>R3C>s za8NI5Kr|wtkAI+4!*S`f{FN19_oX$rvzso!@RcV14KFkGn<*QcfG8zRf8QvNqLM`v zSD%$qioK`BOe&}PxZ*v{OI53nYcEB;9jifu`r3|-c&r@;e=L<coe1IWuxg)0z3p`z zpuHgh&^`dr&H)VbybFzi8-*ZU6XmVOV8wLDhGB(G%)$<kW`K0jhS*CqqqnkMU<;#L zK~%nX{98;8Sd=9?8?pR6<<rSnGFiZAp&0M2cqJRgPZF=3L0F8$1S-4<2viwv*4#SH zQ?V^xVRPHx-1Q}dc!o!gk6iO5KQ~}~^A$uT>aFi2p*&~>%$L7@wx4FBc;T5U<$x7+ z!u70S6#zpPHX3FW_>jRXC(VekQ3RL{!jPPyk?<w(sqdqekfUK5fP$T0fkm?{r2c^= z0_+Gl2W_YI5^1ABIu3O3cS!PA*6e&Wk93mB;F8xanMsgI6N0a!0Qe+rOXd^pNejFS z`!0U=%GHA40ai2CUF&E6hL?!dOX5*IlK*bVa^gbp6%>&F$4VcIU`+C@D(OJ*Wken% zwBQ9L@OYpkJ+JSkCL^vB3Nc4h`dQHFG6})u$Pi%nSMX?UX(j!OJq%KXy7lboz*y~a zpA*aAATQ1;Y;Lm8ZQPn-Ls>P&xpPIEr=%P0T*GjTi7N0#!j$G~tiHrHmV<`L2pCO{ zQCZ1F?1#trBG$s51&%~|F&q8xGkPK7B*-p}3=+lJB$R3J!dQf8Z=Hk*r0vcZU}a1S zw<3D!-{*kWBLp8w7dnAg-8yi-q;nq5h`a(3c^VjnJR#RoKU;-fsj9+OM~h^`Vms!* zdt{pcM&HR@u!=-DV!02kohCP@$mN&xny5z?GL&))0uzLcHqRA!DQqmiK`kP9oRE(A zF4ebD0dNa@r!r7eT=AKsArr*H@nCn0qXD-92x<<TyRoxtX+21gbYA%5jb`=Z;&D`6 z?T_AQz=JSk#{kWbbS;omD9sgV<T=vZEo*N~;3O}%2zARR)XB>W1p`0)x-x*=4T9<b zN|twll>5Y*laP`|6&wFmOI3Mgg?jkRrZu$Jz}4R+w8s!YcQvJxHLwD%VbTzg>;sSt zBrQ?T!#_=p!do7WX_l$R$pFfXgD~FSCZVy+%6AweWp?B;b`~8Cv?SBZY_d0QovXtM z@6yJf7M@YhQ4ySMw27d@Nf33X*3GxpX%DrPS?l3$of7I<tYt*z=;RS7H~#}=a@LH? zIQBLhy4OtTZ3)~8Ct<!8l$r4GmZ%humM+IFk`+PQcW@G?03R)bz@n+(Eq#uB$>P`= zL`dg-u4f-dlc8$e4JSl$yy@Y*ha<i{B&Obdhh$0>bh4|9Q+9#>)=dDbw<Akr3&SXM z8<7?=;B=84;Vr}Ar@s&qoZJ<x7K2`m)6o1Mm(}{MvJxdV%>!q}!7aKprPym1|A&~h ze5W*WOQuGC#tSr1Ly6A+X^97n60s}3oTgYe_R6^DFV-7B18rzeJY-p>)V8}z=#Wb7 zLiIe~RxZxn1&e56N85qD-H$Nni8J7Z*dgm#8z&pP&&mDhvmiH*p-t<3M*+;=uxUM4 z+mTe;F_U5Fb+C)r9>dhbrkR0(AxI1}Lz!JYQunE)@J!tWv*dY^?0;f0HueJQ%zP-_ zo2CS?w|<ruZ$5S_cMgD4ndE?fA>0cca{D*rUYJIn+Vb1_GGvr%tQZbU)mH4t82!yx zI}+AQML?!XyTQ*kg3q{&BG#G!cXz>qYP0-oEh_S{mrzgD`O{Tnn`!w?j$&DGQ~)i% z!iE#~FMz=hjhRi2!IJSZ7XulUa6*ua!E|w{DsUG8Kbp}B@e6Txa<;OlH%Uvi91fr| zyvG;WB%FQt0bxc&9}l8yql;^8QWot3pg(R%BuSQZI5^ezGRQ8WOlv5FGTff*2tPZ< zE5Qz=p<>|l08|Vc?t18ecd7R*Ta7kQPrQr-=%3i%qH;kh8eDJe!(ftU{Nr`3SxwTo zi1i=)Xbn7_k6^t(j^-rAifG5=l(+GHNO^47$ax$PBUbxb)hpF;#2o&Elo=ffNijmk z@c?mXKz~2Lwqmav*8)_*{9E65Iu{3*&T`0Q<mV`+6Ql&2-1`IRpV3BOV)D_azDdRE z*~?J{w~V|%U9<30>YBN9((_F5xE##ba8(`-1rKM(=!~l|k*(^c9sol`rgDUF6vnDX zwI7Fa*#Dx1BGlSTl7sDUAJ}`-e4z}sn23deQ#@YE=d^&}GsLSjD!^WALsr(%p9yaE z+7M-?hUMpTl$7j?<Y4$4AX`!DH3`Zav#LL0v<#*ovQJ$}iI|mbp<ygQKDjt;aoGth zxzkk{C_EFwDIZ*s(V<kgpL?meIt$Id_({@8%C;j&GwU`q04GeKlabfRXdEEQX73Mx ztuw&1A7R<0Z-zz49bb<dJ34eJH{vD7g{Zf4Hj2P814Uv!82|M}xB&xO=vh!xirlRm zC+Za)8?Y(T-k75eLmpox8%o22Gjj_3cr*ugI;uMwm(0{1+naIXn>#b}UZvA6z-P_? zKA(Ne(XMWVTL2+#3t&2eYp>)imh94S?4JBPuz}emji17V=W1$yX726HdQbweH+(MK zm)2dYPM=fh4?g>AtYr>h%E1bXcK7G9cc`lA6QwHFijXp0^Qk$31mF_}U>h#$!2H}N zjfOI=!~ON?M4n0PamtgU!N>IBu{calKu-1(L>k9P*f@ebq7PUEfe=kTgN_7U=;PQ7 zl2-68PBtu?U565kV_qk)f>qo2-ZVdMkV1#MK2cBQ;|Qh=CVSc%!O33Ha)$){9P`iz z0APPZuFyn&@=1F=F^J$_wF!C!P#r^zjkN|5iXx1;N6+rygNuWc)3trwaI697$bgvc z!6pp0sMmbWJwz5nu(O_zlOGOC%h;nsTB>4S+${+Gv1!TJ4-m_XTR=SMXX#k=Dma%0 zKk*kH1xd?*W|S_nfqe_I94vbSrh*sXY|HX_(nKU_f5Gk^T**f&ORX>9^eUMJ)cJ5S z?^7}{51=seOFv>p7!Vk*FVbNrX$rd$!w{AMoRGD%Nj&UvcS%FhS~k8K6u>yc&f{B4 z5X5XilTg6XP)DWXQ1MJ$m4g$*^K<g!x8XRl`_iUy0np0Mev26z^D|UQtwKKHLaj8P zJPiL0`GPKvl`qiAm=?Kxf_egH8Tf&h#L1Y%ffuVw%nF$+D;KbpAkUSDFrrBIPeQFt z6}Cp3HWDH&KqpYBI!}Lf#kIYVlLnnMIw8Q7FRm;Z1M0sN4WFFp7Y&ahNOUIka6mNV zLNw&CeFI>3C%~QnSV9Uw1V94RV}R+mu1m*q7=g`NYQ%agBuBr<0F(O$O9?-u#B7oh z8C*(W|1T*h$YIM66yGC7qWy_nir|noq)3fYx~cEK5F@?NTN0kA|AHWz_}_?;|3Iq- zMw^qp(Vsb{B8mML@82UvezYHA<Y&gfr7?dS+d@@Aj8wCY2tkZ2<YI&a1_4Ot8ggos zd7JtM3ld)<*VU|ya^+~_AxOs2Ef_dzO`_xmL?=Ya$v^VO42Tkvix7#~EQ14a7x~`+ zD0Y#0l+JB98oomC1&<^AIX%r#@;RIGLo)IaI=*3y5GY6QRDt=m6tJF>s;|q@*TH3d zMH=FK>^|6#iO=aYpre840xoqlJc<DP;UAS2_}MK4NxWO&XV)9yJ~0nRv#!7k)+_$V z48B@n!|;v~QAML6t!kN;!iPeW$C~%(j7Oz3I&$p7ntu~N9|GGRnsNED5ol;?ras^5 z*khWdWNKM_ZPM<<@!@ogKPZ3b@P5NrXRf-4&mW<_#frC6S=51HKbCc3mqvC8>;#?( zp@V@?3#S6e7x%f1HaA~|teL<L0Yb@PFZ2Vl+bJ)g=L1@8L(>9uX2@urnubMH)4T#J zR&O}E5H>RZs6Vq7tiMQOW&M1dSaQGbXh=mNQ12Y!Z(#Dnkvp-dsk9)^+<ZLV=<RbH zY%UL3tHjaea2q&u{x}If`OkgIA}5>+l<F?+Cq}F^nvFGTGVz)?BmC+^IFL+J51oMX zn-iy!aH|xAyOX_w{UG%;beS&9sN>mt081R?_>c!lsifvT0E7(75v@gL`O#R1QkprL zCjEt(Q&flL-JV(2a<x_bNz-j9br&*ltePxUt8gblU2UJxI7D?s=9m&5d~KzfDH)<q zbu`V(oJ7E04t#5)O?7yT90Y1c<p7<OAx+|-R}m-<!=l`*Bq+eJiXpJ8GD1S6f-OL^ zd}^9LHC4}M?X*yKG;9EfTEXB;-uPn#-MA;=u@w}TW~%6pl%`sHggQq<2jo0(H9Hz; zKL#^rMx8rDN~yD1HA|iAl3LwG$F5qHYUnxL?$ZwW1S*F6RFi4O7)Qfz@iGJMQjL~5 zvq0n6&nVH`UG6@zHYYO6L`TBtoE?(dEE$>v`fESdy-wf^XAL@6s9%n?lws@`VJ-r7 zm>}M&ru6{Taxn`oh#BJkHp@^ot*Jt9oR^xSO>$RvVWCY4&!L}m<J{-d3u&aH0}yQm z{2U-e_dGmW2Da0()ik5+9%`gnOKCCzc^tm=c7Y5gG|~}1j#dx_kKlQG(~yRv8&c=Q zw%`SdK72wnha9(V9)Zf&WZv%BGsIK3za1L9AhM<rjy-QV4l4ADBaTBEP85N)u0>Yu zC%BA9vRY1S9@WuPdLx=NX-?z98&hB`*qGilLUlAQ%$zib>;=iUtLEgN)`p)y{WKgS zG5Oip8+`5O#4;woy6Xg^2@xLSU2v`&xVeW8`Zh~bllPR2rhOi{qLVxzp|H^Y)3DbN zg<~TSu8y#Z?gxEhvhh?$!4TDoBQX}ZJajAbMiyvo;E5r)yXn7W3i6GBlO1$0`2yJD zk7%%bVW>E)Mj1l4bTpgM^ReBCr7eV(KA4Wi(~UWDaRv;XWQcNxGWh9FVxk7h?RDa? zA?Fe^UAT4`Zx7;<yE&IEN^;5M8k|zd5Pt^;;Tpw4oDwHap}++MCaGy{rKwkCXx9?w zq#3|r&N_WW;H7tR)-mGKjY5Ebl7Yq$1C7R*7Bj6qsl-5;W-Yx&6;Kzz&?yjUv7ck6 zGsquGS&H*#qu2x3tT99^TZf=h5DU??8UL{(d=~{)b_%g2G(Q@)9#}1o&~h$JdpvX- zNFT&?30_ECPwX#?B-9>|Dtu;x&CM-oYsRpV39w5i`>T8wLG7g43Nf7&(dQtpA*Izc z$3dL2l-o^W+dh)XZm)A}vj?;3d&onzy~2wjVXEz|Wbdt@368wjFenSKmQ85zmF(wO zWO6OALmS0557hmbQ4Sp}OD+KI#09X1bRwx0&8uXiR-)McwJo?eo6YF2mwj>qMU(!b zdYl96gDgz?bUNZ5I#P)HfrcQ1u|oJQ;Bh}tIhU9tu~b?!44Y<<`!?2nJ$0{Li(=py z+XfSf)o|95r0Z*dU7N{TkUzOr_+4n^Vwy)6=Gn;y7pIc%hanoixA2Y}S%0w(xz}XM zC97Z-#qqOPW({;^^@4oSy5`37f0RG9i1z#wjcIb!B*#or4^Dlz+bk{gaN_Zn{AWu` z%q*s!dkF<+7;s+@94f#LU}>Ipz<2}u4;Tc8B58Yo%r+a@J+Fc=q|b9gIM@RIPCET^ z$SIv48A;q?AkD7~pzm$h!mx3x@EW<|O0G)wGIpM-6zpF~BO+x`!g1x0lDb&Ig$QL< z_{iQ$UaT{fr8!tfKqoN|BLTR~b9cfZWN6uRWzyBOoFNMm$`waL-@!4E`Wn0bB@nF1 zq3aLHJ)sJe?3sn5gQ@bv$dsqwX5BDE9oA^pP2@0V$5f9C*UtVup$EgnliI4M8YHOi zti$XyXk#VeT3FZ&4<h2iNaR=0k&|aCIw%|_Pcnrcmr%lVpu#vFp@iwgg%YOI6be6K z!5-cNkCLPB(fbpK1#9KASMi$ApsNwAJFp8W<l7W}83FQor15t%R&aD2Qi37hjrgip z=@dWdfQdT+=sEzktEDf6-wCjrAN4n@Z}AHO{ujZGh8U&`0iX}!+L=KY0+`i9J)XQe zNBAL(Oi1NFIvVansA)vvC`p7LC5h}qt&LB9h2Msgj)tFNOJ@#Daog$0Nb&Bo_;qZ3 z7?F|L?K2jycQ_6navZG7>GDATbWlG!4mPw*$7?99C2p-!!dsC8djyZUkVnr8Pg)Jg z2%RbcZ5#1Wc5}Mz=JednDY=^tq$s-&<2M$=;uUq^q?-5xnOVeXxY0$NR9;Re!z_;Q zTS%581aFHS><?RGzv~a1V!uYXp2N`aiv4qck~yX#TzBzWX$p1`lmpbs>gHbM0O8{9 zb3|74gIdq?6Ev~A5To+G|50;><KSD7QrmHZ7h<;}377B@(o++~UUhk~lt#s7^J3{u zkEQbhDLlA9Udory8tX3JCN8SG7!*tEF0K-D>MpK#gij&fXb)|h#G(Y|UL}p3lZeEa zF}f@EGLj7HIAhQChh4EJ5N@)}m?n*{d&D$V%E45V$O{T3@~#HVj6x1^lL7HOky+o2 zuHnoOn@<oc;CD&S`yCB4>G>eG6zM5B8m_1321mnH^jz#{7>}p2oA}`h-nWr3jWC~M z&mpJ~K1iW(b5of3t_qipM2;g6;rzyO;M>q-nPXJj05xhCA})jIxdc)k#3G1TCBDM( z_#UVaj)uh;;{3SdtLS)fp3G*6POwfM{%qytj_^xZDAXNtMZ=A#3^@dY?_+-CJI}{? z0dRJNpGDFjia(Cmfn+ITAW7w%4LgODvY%*${x<-f)b;@eqXS%yhCZwYU{D&eqXV~N z7^k{aezq&hr3fJuI|dk;fqE06Xan!f`Pgrx))D?15>;O6_f#YnIQGu%^>N?$h;cC^ z&Sjxuc-`HDLg_fSI3dc#7FDH<XqwyG$N{4qjv|eW25zy9R2?Rt#85$Yw_0w6HaFF1 zB(bC84FN~QP>Y!LG+j<Os3|uiyV3KpDG2Up?{Bq_jm<~@$FdPE$5%TZFF^-58Yc1X zTj|(p;qmu5e!3SZ$?^NejdJ_}@p?J_AlBfZOAqg>I)fAj@<0X4rbN%69BsKArtxjX zwTyVEt9w}hmLF2ee~8tiQG!df*QjBVabyIv89^m=fJU*Iv_3T`&LxV+s134BP<aHd zoTww*+d)0tz7ep>QCrLo1TM=J;g?+U3oDfEL@g!!9Da+r_^7qx4o|$nJ|Jiz3Ab<F zC*5mA@qP*v^W;sb#`IHvfPi-bcvFeW3#f0a1|Y7CfC;IIOLE9z66@$OXX5nWZmLf` ztz{SmQ+A-soj-uF60W1<xxGrb0fEFw)w#gN5W^*sh&A}xr}LsBJVzxw5gXyv3WuoU z>H(4$^5NY2&p{CZM;bVy0xtG527aYp^h5%-s;ce)jr{v?0TV1-0|46w0NmF}!xH_8 z)<GH&-6~@(_%+%<U9LoEj@GV~*;+@#0}vA!CJl>8C8pWpHR=@Jdr>}@UyU3I-ZA<S zq7!|06X2UTfOSDz_yZJJ&={uMIHG)}M`sGLOu(S8k--tpqVl6KPq@S!gD5>MP)Zzc z%<a|S>om9bX>9~(Ns*SPF-M*p02&iMxq0M9Sb)|#&z~M~>ikCoEliB5Z9w^=dRj6U zev3UgFN~47R6cLqeR3IJsI5byQtB0aN{vY8aH}X<pmPBgZr+?q$>Mb?AL&ou=?he{ z&wqfy)l#5rH&_Fg<6S7;lxpD=ZOojn9f)|(<+qh3@B$TZIu%9Ya$5X~KLm57sqfYm z7l;9!O8}MswwVe%+O4<MAU+MtHY{S#<#Qo-0(W(A={Fz;4C$w(-Bvdp+OG$&|1e;U zn&bndDuCd0X3ZFGMAIVl10uw9qpz;h#?Ur@;w@jpPM}#FW~4#XlZHX0GiLF8-h}*w z21gC=X|cmj64%BJo?v#l?qEOv2YUGc2?rgw1nQeV(K%_=1Ek@p+xdLOnFW3#1jT-F zbCSDkxZLb|gVC%g`~cOXjW%XC_3d2+cd(*w75*3bz+nIZOCqr-VQb+bl@nSCKZO|F z6`)5b;0vYli^#*<=mkeL*aaB9xp0@J74ul}dVM#gUWO@MUT&b-ISud!s4T1lq+e@S z%KT)pu8lD=V1QExC!h}k8dhaa2Vvt)iAIUnBpUS{sx86Z;AK>k5A36=#1Z;#3a}6U z9RSbsxGI$^7EP8$t_I-j%Lp|>`hqcLn~ulUfK1<`I2(ex-yx^$MRLg5_Qrj1A6n@V zzQo_W8jtW4{&wOohQHB4kFjw==3YPhcoA9!<r${D5r>oOT&Uw(1#XUkaS6*ixM_5@ zBNMr4kjLQ+ypX;NwzvD31-Ysy!&q*;Ox!PNEQ;|h0BfD=n|=oZMoaOFt!P$qDgHaW z$XFczGoAyMQ`#H2Y$>iLz*hHzu@MOVpO@m5tcEx6`xe?gB)n+5g%;W)2TC4qRQ7!f zZ5c_%Li<0cSYtsY<B%A(6=DCx)@dviLyRw^$FM_(s8O`yXDbopW`Wpec%?NSRz_pk za{~}_`XO2Y5qN`?DEBApvf0J~m<b5RNC%^tqN0o0(cSzw85A1n2RP)Le+pNP-Sn+n zRgd6SRovnVubf$z-xJ$rzMbxRJxX_~9uePk?8U}k3vSN4xzbO!Cj?E9@jlj!&1&w! zD&?}S7URl7qg9Z4i9>5q4F>Z*y37!9i92HZU0dbEC9#e$nKTo$`87&P(B?J-4casy z9lKq?=#zugeq1KBE{i=f06HE)7$lZ~b^m|4Kz0geiT(>@u@hFK@{26FK=#^B#LE+Q zlLfe_UgZ}ykuyxMno0*-d}>Jn1_xbr>8r$9Byt676=#LaxB(v9UUW917ZC+G+3tgZ zbsE876kUs(;ot!HAP7zNhz;5Njwalvw+A)?A|nm2o?@I5gtt;Jd*;_DO4HzBp%&3C zQTR>)F%zw!w}XH+a=b(|&GoZlkgzHumL>0Q|Ew}(of}|tfe9@3I59={Pl0Rs9bzku zva}*UGa(<{>QNQhU=k<dgB&c&K%Pz}&GH9)>|a0SBL_@(o7`%ROx;9R$VqSN939sC zJW?kSW&#ePMN{ayE1GxUSAdhytvbK=ik;$6gaW?_3Fj7#iwk1td7R>h|5Y~$oh~fb zzb329($<>dOc88`i$-ixJn`(R%x{Y<He(LY{|L?EK3qeQw~O*dv4h!)v(;>FF0rs( z`;6OJNbq4Nsl#VTKGC;>JNxySr1YLTVnGuO?YQhKx5rb8EfQSJupgiy6AoSMqCB`@ zi%vw-mvO2f8_Q7@D3P$XWB!D`;%5R<zbg={+8`0J@)2>};9F=Y7o2n?2lgD8Ds5)S z$Bz)-FCTx77a8(#J)Q&dk&wJhKK>{H=IaMz=MMbO<YO5%W3V9-XNmvN2h>O|I#?fy zNmTqjhR3z2&ya`DQZWNIHojdbj>lfx80`G9*iLT6I*-LFxIjrI>sXnU%z+6n995{F z&aXANR^H&WNO`zjw#1e4i_v0s$rbd-ESX4;v=YJdv`I=~yK(dazMwd85qxi*2i`jy z&<n|fd4|&x9a(`!3(iyLFM(`STLQSD942ymWdAl05J#QAs&C<;mbF&n@^UbEn(DLR zIzJNS{{WPHF$EWREXRqUW>2hxN5GHxGy)J*mFm*v%KYV63d$F3j_@ADhVrV^O-tkz z#WrY^_WBD{{>H!IUYJcQN`8v(DoN?lvK2BSwM`{RGv4dz{ecpQN8_FPS6f>0i{yKl z-shJ@lJAew`^*x|1O`0qr)bxg{5<*IMDOEEcAFFF$S7!;C9lvs?#f#ML~tB^1rGe5 ztWq|ufWI3WxPV@kF25UcgxE2805XMr4F?B^8oG+h5H&d@YDkvPFa*tF3@-?pR8vzb zjJaQMDf21L5|R6&QnG}kj4r-ylu)S^`q|aUP)7o0F$ow`CHp;{JmTh4@m4=X;WIdb zjRA{cH5bbZ%Q-sadqn3bu<biYybv~meD(K<7pjo0=TH>9T)Z^FvTIxtvH&}8m4(fI zB~AT1uDFcSz6<Vrvf&6Ov=gt*s*HfRuA4bgA|C;7@9!t#qYGu^oH0XBgO%CVl-g*9 z>z%!6ykk$RuZ%rPDgiiXgq}uc3t-=@us5aZUV9_HN3#f*4LKXmh&S<zC10$&<PuZr zE~QKVf|9Ilv*8Z}6$Q<7G{k^LQ|b(tXq}NRrIu;u=4*f93CEE@vnLS5W!Z$FQ#Tc! znL}4PmCdS~xkS7`*j`1O#S{3=wYVYy`-T%GEAA{FN_S468E6FBa3Y3DcKB_)a`Tee zXwXsVYibL6P+Y`uv;l?NXQYdBaTcNk24x?BuVmY?BS?)L+LVgs8I991=O<gL4P`$` zfLO}(G$bvum&N>;Qjk5Z%`6bbD1$SWiAc0$>D?&K0wJfH`Y#Q$W8d5#C>}>gZZX;) zgpO&r;yYn>_g6NK%gQI0y*LK_4!SH(DO!b|#?+dIwoT8GEVx`wUDQjvU6qxQ+HRHs ziAKuGVS5Q`y>;ymX!GoXzIL`6Z~5FDu{yA&Jq_1I(Kb<66@1XHNo2S51^iUNQBuZv z0p&aCA~}U$Du-PYath{?biz}{j&nuE)OEVB$NjN!zhg~tVPfhkNK9P?QWw5+(~Ac9 z{r>z`|B1NASLyd-r_fLv+QjKT763Y2XJ`|z^<(EHj%~_rK#|r!PQATs+p`2A_2TP0 ze98lN(uavCoX{OGmF`=vV?97Wf$u$M!*9s&?+X$X{ropjbo!^$$u|$=m2u9rm4P?r zf984ZHHZ{k<|qyg<EHKN$9K}5a@tDx=mY6&`=^+WahD{%)|G8TxUkDOdq__!f9IEC zXA1=9?Jo3o6?VDLOKAu1K*^djd`_~fZ9|96h3`kZb4ZuMFZDTpN-3gRxZ|HZX*KN} zB{lM?V4xnavku>l!ik&4>OQ499`zoh4Kp0S5!03G58AxC6GkBK2Q=;*tM!QYtdGq# zc-ImB7&fSVLLKH=uTvU+-s=?b(I7g*b5^w0Rp@otp_SV$`K|krxtWZtb>f_IadNrn zVjp7*M9Gmeb=HEAv6HqEA+;^`F#wf{Zfz`ZgP@^e1r*z9-0$PTEdq=1;jyfcvnszu zycvJj;%^-OoHFxB&lfN1=EJvB8xPkh3kuV+5inE0jsUd;WmMx(h4WPu3>UEdf|XVi z0+QS<n+wIs7$kY<rcosVvWW{z1Qa7(7xgk;%0dK?LC|hTfLAcPM1bW_oLVA)BFK73 zyoUAePPXt9gp3x-2$44-)Kz3f7ThX=0HFkIa5r8ZLg6Sp*oMx-_&I;#%8DF#0|2Ir zVBncIyuP9fA!~g_H{JJ!op$Ssd>hP?UfcD8OH4P?ZQ76*oMM{sf(s?fAr;@o30COK zSFj%f3)v+o<CzzssE~sK*)4>c5L<4@8@0p<E~AxgSCq(t0E>8!VQ6(?bYZ<q1F#*X zt%i))hxFzvkHFm^A6;e=C)KaSvR>cJvm+PsemCRI>a_2we#Tn3FX>Eh>=g`L_8fls zol!A38Uc~^<oO4w^#51}o$T8}rSNQA3+<79!zvIJ6@~(D?K$J{M1|gec%nkL5%e_H zUW#r>RgcqFS^u@j<U~~khmg9Xrp9?@Toe1PbR<Vg&3SdMy2grc>Q;VJ-dLean|oU7 z91Smkdq5zwxElV4DF2sVp<yI$;r~3E9s51hzv(h?5`9Qq*NtVY4v8$UJPo}%;yq2V zzk~vB%=u&BG;n&1G(wHSJcpE7^U=j9s#QG1&!|mfZWM3C?CSCAsDCo*e}jhTe!&Aa zt98Pq-+T7TsFadkfoo{ez3}vKUKw?_h@~aOT;es*B=MMtH?#4E2fbObghd)|l^WmX z?K5dPn5y>CwUe9+G7x9htoRiYgV)jUGMK1P2Ob`HI6K1I@d_En1;dpsC{gejhi55R zCq9HN!SKTzhT-FfTOL3V{j?4ade(LMxHH2Mz8g`FgWkSE9VXoIc)^CpTs+7#vJWbz zIW`<`SeW6)eAZJy#BmNeBp$=<w}|*FBDm`(oKG5l3Mz*z5pM_4aXOs&IMo~t>xlYs zvlxPtj3fLqFvIb~uU>mYkQP&`xkDcvaRP$xAQ7OBE%$@*fu!TH00N2HHzaF!G|*84 z1A}{w$SV&4gD~luu{2Z%M}<i+e+eah_>sl{AG&>@iaqn62@!&OzGKVKuo7ydG&T@2 z17-pCzY{ng!W7KOKa;ofW+O%WCCEaUhb(u)^(czZ*Ol<r-g5=#8rZhr*o&-|xcigM ze}bq0U(=oOs-52!Pa}Z%+LYI1yQ!kD?$gZ$w*LwOtkC4dmpGa~O{@F!=8U)MYQGU0 zZPFE7nvbPi#@2J9Xro+foy~QbB-z9z$%g)6o0KIX98$nBWN$afq;EzTUo<391yR)R zgY@Js5c0pO$JGadJvIvpT5JbaT96>`4r(WNQ&Fs$&|+eXu<^ss2(q927Wy#Gqf9nK zX<mlXlV7)zauVOJf=9>&02xw#J3=tPRAF|5Qd~=Sg<~@LxVSbK*UovfCT&JXlLw_o zd<#cP2K%KG590oaC2{Ice1f1o>BN!^27w1Jim}j~=>iV82LT_XD6Z`gCl}YYi=47( ziP2RF;-bf_b-cw_&PI!kiJu=;HGK5BpNgGbK}>r%C$Z8b=M>V&@Jb4~jlPqVjSmjh zkVaeMHsjbJZUj1H);>d|V{b-&OXAu>es>}L7z@@4TjI846WuF{(q_%DwA4@Mmn46M z@9h}ZB$wwno;ai)x~z!)1#kHb3ygBJvMT+Ky$_`po(y0^oxZ^_7AFvJh{t_lO*(GD zv-}a~i!)}+&69Be5trw1Z{2=mlK6!Bg5~Hx<8H+rpr_!IJLwCSTv5Bx8^?u;{kJFL zW<`*mfPxTB0=t$|2pcitLTKaHQ5?2TDaFTA=%$fdR8L+Dn{XcU1^g;|(aE^UXy6V; zegz{w(u3=h3s2V571H>$B3e$jCnvz^(C@c1P&=Sd0?$Px*Mn?}2Xml}&AUSos?k#1 z>-gRK`fh?VPnKHVTX=*m{yD#|&#C$*->LfY?qpeLlziCso$LBg19CYR`9P>HRFb%V z((r*fOdq_o8aGP<YBJqDNVg8^;w|{D=M-H`b&GjZ)?J5N2UYv;m3et~x^{5m?=eG+ zGVUEL{k@IdhN@KxEJHxsOD;}{D=NW#XbVoRu25-K7V00i5)L?Czre2EX)j)2lTv6~ zM`*2F@LCskhP5Gy01B}yx7(CCR^><bMGJh3tE#K+hRH)eo>X%UO`LxPSY4FE7ftT> zH%-7uRNuO7dJazZ;zENS`KYeqTUq7qL$xN4;?03BTwI+e4MBI)g|$}2o2M3$;gWpe zC&MTy<zQTsjoJDpAqG*DXB>m?!gNlSkvkEc{0Pr^Ob+xBo?H7r!ZZC{u*bJP!t<ji zAnP%M4}63NOC8cxyNj#4#h0<!0M#o8b<z+<ZL~ezj=Etr0AiJu27r@<;wf%cHEyWj z>TMXK_!`ygq6v?tGP=0=@tp?Zxq~xuw@9@Xhq5-!HZDix$WJ5W-7V`!vQ2alv==9u zg3&bkd=NH-wJ|>SAHVoE@`jlYfVW~*hAO%^{swv&FB2;(i>qCdwX#x6#jR7^<3An% zVe|BCTJxa=0XF}ixboJ`ya+%lS4CEK5ZCi>FmHUEc5)JHN|b9Odw=fFFz}?w7|K*q zqFf@HA?$qYubAiL!+Dn(;uED@_Sq*|U2`tT9n1x}16<%DF393s;2hwBT;c+-0A!xF zdDDz~y$ci7`l*Baeg=*Ue!K4<#5ldY@9Eky@l_n~@P+U>Rt8UT%<)7YY6)=wY62OD z(J3OtVj^5&P_2^XJeefcz}J@U`04i$>nl(YWa7k1oZCv0Nh9s&aPIe!iHyT!H@p`b zA1-8MH&7|CU|!9ib~b@Ooop0;W-$kU=CCw+PGbUpb+I@w(%0p&F8-X%7=KP-?fhB5 zPV?tfcAP(R*%AJn&YJmi2HS_HeAuI}^RVCWs8aSkf0ncD{5g+3$)C74fIk<qFn=y) zwfwn+N&LB-{g^*ju$BB7WYzq+iY?;L)vSU)Mdszt4XlJeH?kr;357j%7)k7Eirv#d z!CW3}q~I_f+)BYz9^6L3OA&&7f`VN<_!I^I%7f2P@FO04j)L#;;IAlnm<L~=;C>!_ zor3?tgUuA&$%BU}_!JKwp<sjuF<1rmD1sd2<Mbx-1X{td`+4v*1()*RSqfJ2U^@lN zd9Z_mB|OL|coPqHQt)aX{D6YFJlI9SVLXWCD%#J3aSC4AO6{j9mUZ!<0CCCw%7b*F z1p9~w=~x(h4?&JHoh)N5Ji$r9Jv^92!IyY2hl0=XU@irp<Utn&n|Lsff}448G6h8* zoI=6-d9Z+jOL=fA1uJ=QIt9yla0UfSc+f+^n|QF4f>-lkIR$eO<S5Uhw@jYkqo9Qc z7g8{;5(ySl@NYc0go1zO!Q~YE5JAk0$t?h5*ojqYsyl^W4hQG@R{(+=r0_vbJB+;| zV*b^LvAI*6iI{ChOo2OPdLm{Mk6Aa>T{MHo;8qBVxx6Ar!x!isY*M&WvJ&~qjFO!0 zl$=D&R3j$Kosye~nP|l1xKmt-7^e}F>rTl_#Pl_BtX=qwXd<T5h{<!OOi9FiWW-E& zr+5-EM~s*m?v&C*%pN1g<4!40#Qe&LDRrmJOT_%#h$(lc_!2R7JZ9ZIchN!~<7W?0 z3|gO18li9b6I*TAZ-W+$JFJ_`8O=EVcgW;;$(n})*U*BG>WG(HVA1DEZ6?P~Yu?%~ zar*GEEBPHK?5X$zWYsm!%#L6uvCCsD6V@SwWkMkq-LO<z8_n9E)xYO=HQ5^Nsh$RY zr1Ts-V1~gS%$}iKi36o=##UGYS9-u-+)9@%CqAz@Lp9%GlCB3*SKV@tNt%?=A&zTd z&Rb@grO}8ScFR2$$tky3<wMqt4qR4@RZ8o&vCSv`H+x?KS5>wBzZpbS^kQnFX<ikF z!~t_iMdc!cf}$WQnggMLf(QurI+O}}p~NeuuX@>FX=>T{tQ?xmsnp6+v%$<9%IXr9 zl%|;E{(rywoC6m`vwH9M`~3g^cVOLp&K}oVd+mAewNKi2xb42U3z8?SeoN5BcSAJa zgFpm2c5#<G?boF^*!PFSN3h+)_}@kR+b|?3S!|#L{>4LBIhzlCi;kU+LmqpAuFUcd zDl;uwjp%XjCgRF&VeDjY6hFrPy~+NaDd@_i1Y51*Mi%U#+>6EqyTPzy9sAa?bd-JD zx%JZjq0)a?uxR-P9qq-Q**JXa;js@phdp60{foo{7O@;=K0cQ>#*YP%1ZaB*OA)o9 zGj;J`w<Qtoh<5Q{T#4af->V|uUlBR-w8F3Q<%VrDxGt6`JYC^yx#q{d$BhVL!#!LV zSGXdM?~&#wfc=1X0B->{0bT&C131E#oh}T!|1?Y|Oef4UFwej&g;@&oJk0Yj%V3tl zEQeWM<XHsLg-5AJnZXT7qP+o)0UZHcFi5}_7gFr{u2HYsP^Miu0(KaFaZ_}8(Y(Ip zdLH;!=0W}6&#f;<x=SBKD)QnN;B<eyA}%9OE@^oZz&u$FT;PMAm#@bAJAgBQB@rHN z4=o<-VgE^S@2uk9D=twJH{DNVUj5{5KdW+Kv5U{;F8)9PDAe=pClC8s=B#Pa7}T;Z zArQ9(2n_+m0LB9D0!#yB0qg+qx&?UM0;V5KKbVbSHiqd76N=iG`M~sn=?&8xrYB6# zs(GXF=yAli4zLNZk8vA$6X5|4xa5WU2DL8v0NUV3v#XMKMnTg}4x}#bWRbA?FTuTX zZdjihu36a5a+X;Xt@C#=9Byx@yHpR_OJ$E;s0p4`SE)K3A>{~pd;V#w|Fh`XVHXw* zA#t1PhqxDvsRZoYT@-Sq;_df}w{rbWVRU2lr$efW(+6cpRh&N;MWD4~%?Y)M)7&xD za{dYI0DIykRFjrD=;_|f<v)3_1cNJ!%c$A;eSfr-^`FF)$g~{~LE@D1%(ebl{nEw; zVDj3I_*&bUKY{$|i64Es1Fnwx{V!pSsc(!YCTM=1e!<5BwfhcS*Oh%{`g=Ye(cY7A zfUFjsu?=A&HfJynP5lzJsx2n2Lx8KUrsRm)nNTlxsI`e>cbYqwDcS(M0eH8CI!C?; zlAti{2zRq`otWK$w~68!{*;WCvnMzXYxhDGWnreRB-Vj@a7|bkb$VG_55cW2j#Zq& zz8Tr$?26Zt*WV^iYxq-g^V=kJ4S!1NzD-is@CQ?XtlF{Cv{;Q3PC}>s{F7Ly{|vT$ z!%y03LoZbq%tH5t+7fgmj=Y6Nks61~?U%iAzuV<{xZmxvr|lNUh`S1-KPeo17wl~V z9V3zoqYv&KoWve3Z8|&Z2ZEirA<9v|Ctf_%XW!^!^P4%MkAb0%_z8t!4ZUUfv68Qx zrsuIt;^jKe#W-5Y*-3G7^vQ8J{x;Fu0i|-dSqd82&`Wz0SnXDBRndY<I0GjrW;$3n zI0?6XUVNN;FANo0{lSIGTwiOc{8Ss2$d-7i^xRQpBNf|G&s{kNbWjXtTC@-ZI<5p< zE*k8KDc)>boO5+Q*c`$4xS%6BLtf(!cf8;(Rgc|4yR%I(Tzwp}6$oQB*mg4%Yr}S+ zvb|lmwRYPn-D8S+zNSkpmF!_4>lmOEM}A)Dg>6n)%3Q0E3HRofLJWU7Tpg3<32j+V zV9gB5RiOS=lX`|%p0V4hR+=B~zQ$=NZVXEEnYMv)y81Dcsh?4%RAItI5+|x$_0iTL zl{hc=7Ci2D9)wSgft+*#(rV@sdV16zFQ~7Pa%&cPQCjka_wgOO5$v*K_IJjm0`@ch zl_#lC+~P2?35~B9T_YJ2w&(FcqJ2OZvIB#Dr)~bUbr2g|@Nx>(rPAHa&c0*7KIG4| zm2gr!!c6(<$bBy|3fecPEvCa-Mj}7ww^e-)srVkNzK0p#Ye(S?m5T2)ixwlotc`)) z8vfuMv$oqEiy?#i)~8=<Fnr*eG`f~iZz1+;bjAq1quQR<tSI_eY#LN$md2*JL5~h% z_PT&8v20k7^A*A@N_wmzE<xc=>urb#?rkJg9G<~Tvo*wuE|3_yVEyTga)fqJxF|bJ zZ{Q!A9!@Gp3PQz>R_lU_p*_b4RaBWwe#Gc+df`o1Wy0GiI7h{E3|~1u<Nc&KCAZ6c zgzY@2`aa+gr+W)M>!Mf3S>FofCcCKI#FsJZebMK%vNf9bDK|z(mkMJ(hQgT9N?{Bn zb>eQ<&hMuy4P@rx4V~Ywv<;yth3+K>(OWdIa>w<3yKp0r%?~}|pEYC}=*V<{rj?R5 zj-La5F>Uqn((lm5Mh&kKR*#{!67JQbE(falE|?2>MJ<PjaObm6S`1WJL|qwMoCIqm z>5L#c8YRVPu+xa)y&!XLwO?{y0F@#hw#I9CZ{Wn;$|$U_eK_kOs9yiR^e`k?9T;Uj zqqc6=!*q;uRUQh~MEx#W>OJvxdLg4wrDET3NgxWSTLktipi(og6!D|LLjjj<Qr}v< zRK#i-<E)3Ne(oh{iTg)peK5v(`Cs^UE=8Kg?IPTW<h%zK4r~<Y&(h!wz!!Fqm3-}- zQpLWJW)JO4@9VU36G_kqvnsDa@x?VLUE$4$y(9$Jp!i~L_~*V8y{#b3+xc8CtR*;( z5O=3H*`_qGSsMo(&+!d7HzrMZoQQMwd6#2XA8u<ll!Co>x;dJwV60`hRtMUZ4QM(G zdVY(hU|S#c8;IY&SfS)Z>PuKuhyJlv&Sx<P2sPgK!_awuJ6_p<I^acHPQDUX)I!tI z=VAZ8)z0ss8lsQC`+Em36|V9}oQsQs@e93YR_IS~vvq*bT|C6iKrNj^8JAf&11qCH zjCr);mWca8SRd$(F;Sr^)#*NsNp!3yj&Y7g3yj<`<v-#M1aO0FZO=SY{!)B6zgrK^ zSkiIr;}D!!F(XyegF9m!9<pa`$Ir5f8F@`5jHdj%;5+DNt4|+=nkhd9-?B*y%EBte z5)~K?aY1K9Ld^pAwne9|u)u=PB?Y7hr``&tqK;fr&#{?Q_SgX>4%`J%&;nl$FOR+U zIXE-XWJyfV#iP$Jj{entS0Aj6@@PQGP}AExabu&OA_R*VMNBi`1CMCz=&}UuGu^u$ z5yNjm80@j_Y&v`*W7U%3KRj{NMk+)~ZowWk%@cNrxcH$`3l65!Y86GFN99;l#E4>X zZh$<|Lu)g>+HS-F2!NybirN_LjX59VC?HV|0oG~CHOcY1@a9lSJBlbR9y<#QC_8;O zlTD_j7d(LHHqtLl`COl^h?A@7m67fVKVQE}#4oFWjKs~fbR#}w0pph{_F_9?>W>wz z{_eKcrma1oV&)1sy^~r86f*9Gn@L|`5mVMZj+DyI`Qq(ha!Qcmq^Tg1>8MEEbv&)N zK?Oiep>lWTRq@<H;X(Q|Y%poiSEXlKbP4m>#olmtG+5F|!*cN`Q%^^O!Z1^x;<J#Z z9`8{!`%pC3;4^O<Wd?_#h^VQ6lZl$7^@Ylgdw+)y#|J$w1Sml$Di{J!(B+ZSen}(f z+*rj-%li##HZ(l;i29ZY+#wXP@QQ4NG5x2wEL;T%fSQP+f{yTwJXAI{XJaUnQ~ul( zFM{@%mIl#ocYvx8pd!GuC>>-M^SqyiI&`-%LtT&_0yq1576{<3VNQ`H?vsdosA+2> zkK-O6Y53cLe{;9Z%+<8|<5LR#9EvQDJ#L#Bh4!0L=<Bg(;Wk=aA!V=qS;|t`X{kn8 zBJEr$8%)ZmHs7IDe_9!5KG<kkL^0F}b0O=JPF9fPAtmfvZ*o&o@9_~y!*z8e>YC(i zK!ujQqsN6YW2TM9YFklJX$cBsQPB`Y8?aNI%ZzdCj2WYA`6xeWK{qVuxGDc(y%ecj z1sQu{it>9ga7|fj_3_wDk3q+CKPbWCM1Mr1i8gE|I255;7Hj2JWpq8Tqa+x(FeH`C z$jz*dWY0cE!N-_N@zlPa(u){bCaT77S8a%}rQ5eDKh`c#jL}yWK`01{UC!2ny<F!w zycPzQ1nb3fB0k5JbT?`nR^}EA2vx@9^=YnFbo`wSRrnSR-wdyIv)ViB<4}kMsH%d? zQ@FrzlJiR|J7(0c!LD~ZcvnM1>eu)Riy#Q=+y%38(>m7!s%%={qI-L+!kcp-UT@@3 z&x+QlZCp34>nmV!&WtjoZ5-+esf;;NORT0tJuksY+r<6_qa{sF(i97Oou)?43(H(- zSyPpko1C9lI6LpgYst}T>Im`jq>hk};+!9vU1;!v29WM?&KTNZ6zhM=!ZQW+bkV|2 zeB4fR8oPfnQf#JHcyMtN?pVC5BH5Y<`xLGkVL}n6`bDu9LVYaQ7U`&s(J!{c<34B` zX3~7zyh;XQKQ(tQF9^g)W{HrvH}C`JL)##u*l#>g+8Wq{J7Hhd2OEQ(xv-_z+)tqd z!v;-i<%PA4dEpySF!2KF^{NUcHqb^LX0A!W#5(25bAh;~7eCXm*iu;VIKI)<3~-La zr`~HS#~MVQe$WmICU_>+P%x3`qF~}Ewt@f06ii^-Z-s&hb&kJq^AQrD>wDlC$VxR6 zuhdmXdUwFmP%=>nD;FgbTk=+87^f?la1^}-pVN2LF>T5B-U0hG@10K1NtzB0G%)#R zG3HIHJ<dh(#4E3GW#6u=o=|Ej3e`DegVQ`1YVe*sF8&@>h^~5K2vtw?4A`So2Q*e^ ziQj{39i^$_->i57!<xcBt$4z|o~L_7aSvccg%&kvo?yI<;jFWu*c<QKq2Q}DPyC2! zj+!)2d<y$YWe3H3=&feW6VJoR&^+;E#k;xq0lfc_=7~)BxxVI!X!?NWiEx_GJTZVK zG*9%R3C$B-XwHEG0h(h?`7L4E*HdI*sB^VNO6iKGd*UH9k?7*rtb5||*Q@ECc&NJW ziM!#W_)TmxHgr#Hb;Eo9Xm_N^tG2l<x(3}78_>g7x+i$R6(J1W6LAQq9kKq8>Ylia z&b2yyeI4Bs@4=7KJ;A=Ip?l(0;7Z*S+#s#%G`L#H#dUN~+}R3|8oDP~qmlMM);%$o z$yL!k(O=U&(d&kEPxK@yTGkhL#CsLx6Hh>0`M6@<!>N={P@6XNZK(W%@(Bsz?PX9t z@hT9d@`*WAKG8`jpZErDx&i@>7g`<n2Z|?-qvUab6NUYUTIg#ko-i16<BBJ~0zW;j zI0lzF;>(NcfCxR4G<6la4u%@^Ppm{%{M$57ti!pZ3e6L&=`p`ip?QKS-MHonHj)@h zvXoq{d4f?D{VB~8D!S`wo-jNt=bR_hSU@$!H8fAKBGDB76c(}J*0oMpb*&TQ(FCcM z;%(%JmI-?c=&u9hNEaGctrNZAe~I#NZLJdx;m6QA(UkH3HLVl3K<h+PrFEj=#Uu8Q z#r4%r=rUsnhbpgstan1GRJb9%6Rhu*-U&@GD)df}SAVQ`VhTh{*E=!xD!mhy$P_!K zMRdgzzXbec#S<)t|3SqQr2LwSCz@f!riuy$L-7QAel;ncX#T5FuT)n&!E~xBo_On( zs*zt$@dTAfD8&;>*My;XVlix$;)%Rw$Vb-fR6IdjDxRR}*ye(1rQ(Sk9DuNIV_a7& zo?w8giYIU+4C^2@DV|V7U8Q*98*Her!Zo{6yP*_Mutsu@$Hf@-^?b!#XLZFBCau8s zxB#USNnoe0dITc{rGuolsh|k>)X>GQri$Xt6pjzEBHiyfi@0NhMWh1W1vGrtB3c5b z03L!{)dgQ_`t}UK?eiB8w%zA=r=2LpFneEiUB}LG58|YZr~mFQ0*ej>qNG?G&ct%L z1uFyCQi+M9c$}asch<qAhW!Bc9PYI>bYh#LJ_>d0b$nhDg>}iI=yD9ec`%KNEx4U@ zudR_b)<T)86XWcPFyl%NT<a9i@7S%0^MMIm&uu)-+XI6|e}v#MBwp`?6(Db_TW;Yz zjCpc9M#8Vb)JDRN-HyY>Yfum3oImz4@fH}UntWdOx4goivj<*F4ylt0Mg7%D1zbI% zshWi9xnbQs?Wdq>GRArDO)kSoDw4!rM}0KRN$k&AS5mS5vBJ?OOPV>mR;JKfOH@PI zSf%s<YB)LL7=6<DPq^=99J`o=zEY-CA*u_=ov%L%CSenOVF<T~*SAOdc<&AIWA2nR z#D`~5NMks`3Qe(agm~K%ag&By<sv0nWOA;`HCV&-XBV#A<XlwY<ZOr6lH*sOuYl4` zH&6RXiyo_SHc{<}=7k_W)F>ElD&S>LIP(7jFn-feE7*06^Dr%_HL%SX=U%+KYL?!L zZ=5*LHA_Q>#_lB+fB)S6Q19ymL1Uc%)B>Zhk8v(>iD*H!h%&Ab5tgT)R1rnHL=@r@ zQLkzdwYw^!3l`5j>qO)cW_{CY#qbcN^PDz;&&J_3lyFfp5&Dznmo5l|lIuA)Ik0Fj z;5?KcH_#PcHvkI<oX4%sFRcbIl+NvagM;Rm&O4X_F)lINBRsFnsqetC5!?yjX7_S0 zsn4tI5TG0rMOdFTE`xf1G7G#~{(vfQtPRu}iv>Q+9~-yQQ%?%BgetMEP5MsswfgqC zmG@zLV_&$ou!YrJEC8z#TI%eIwJc~i={vTu?N-f`muX7_EPuJ)myL=1k`G9?X^U5k z^BwS0sq~yrwJ3{Uz^DC^+k$qO{hep-@iCTpOb_iE34X<nNvk8XaPK>}y%+3&Z!V+x z2B{#~=020$a1bMp;gOgrA9WcHJe1iJvwknW6YtLN=TT}qY3^u+H9aU?t_gxO_tEoc z43@*8O}{kFt!iqff`0H+@`kFwc=`vcpX!Pp>Rmu#trTY1bKkfB6f{3uu$d#e)KRz( zi9*XuNIQ{-ag?jd6@8~SWAs+{q>aNGUDfJ!{}>*hsJFw`5t~}D*~j0f$Hy0cb{xT* zH_TGU?u$vV-{;sv)8kOdV7yO&4b`^7&!OT&Ump75(2;uY+0I`)=O~3QDBOgL@5S#t z4rMn8g1_0`*`^@)omFRe032=^<&TRM@#c*;pNmJ)?>Z_R?>i1VzF<0&cKK@hh;Xe9 zREOE;;DCE`GS1lv-N|v|Fvf&V6Wr)k3#WsyLB&hw&UNOoLXCN>UJx78R!(Ha;GT4> zeMuafcgIu~?#AU@mTy`x>=(d(oSMu!Skq+I91fcDZ^A``@1ku{i@|7ape>avuk(G1 ziZ)$lZ}=1bt~$-%f)~_pnfg7Ve$T7lW9oOK`aOtW=g>s_Ja#w3JdSTQnY9$3`ear& zyyk7&0T-n$^)0*@lUYC3#oEV(pexn`rmaoU7l%{f<}>Q|9re3`zYm?nZ%WW-ru=pA zkNr9xmkPJ7h8^_n;n%cu4y-ZN1f4O|Xu5Tmsp@3YX2zvWHU+v)Hqn}sO(V$Cvf8Hm z>LVWPimUgoHq}IOLDNbYg#{YD8Xq(cXq+Jjicexhh;*stv~sEmyNR@^rY&%-vzgwD zx8l`a#8=Pa=PTabil4;$LS>KQAc~hWg!(Klz-x*fQ$hg_sFe0JGKYv@3|g2{5eZbB z(z19IY@l`wubda!s;f9vPJQWlJ;@TqU5t3!Rf(65jJJV`S8<@&UB$?E*BJR-{JpnE zcv+-1)?PNvYO$9=&8fW%YEJjVNh687Zi=_zC&eC|ZfodqNw-EDTl_SvHHP>WKU(o_ zE?$Or)7IMdvfj34DfV3Vp0=AXSkeQ6N5wPfxvYogdb{Sjz6?0YT;MfAx$4SIG3eLk zm^kLo@2Q+H%M_qqFwN9Py<ncH8DG{@EWp7}V2mtM61KO1xy*r+vnh*naVe*Zkl$2Q z+8rGOQ~q}Rs_CK@@Mg_bs!AaMcWT?pOa-SfU1X=K(v^Blnp8WA$VQC;mZELt_|UXU zZY#xWVFAkm^z|1mL-czK=od>vqWCyIFBXtmZIbCdSZa}&i?`vu(#=*|w|8t)Dd8|l zt?gtIWa)y6!K{gtV|;nxDkf^mzl6F1yEN+QlPt8fuO}wLv6&y3iCoqY^ia(PuBpVE zR((KeGxRlk{l*Fp4YylFgj59d-NwN44i+Cn#A-t71n{RK)Q5<-v$iS!JlYIc6ubc+ zrmYn89v31E{5Bs%a6|Cd;oUlDalt;AMFpGii?uBpP)m<rAvdzUD^l(;MFr$&jB}7$ zPr=Y;uBmYIMp%{9PAODwnh(qy!&0kyihBbGmofoL`e{>DJv6pboRykXhOyp+<+w`u zDE^tVP3wuUDE=PrE<B8J{`x6}=b)O9f|k^8Au3q;#;?5$6IE|3drVY)k1-7=sxmlH z<*z2Ho`Rdkjy&jVWV(~}vH(t&jH##?kc-aXi>e6c&p}4$EL3_?Syw_YJ@umUwa{a) zs?;df#TS_~s=|RrRK|~*P?sW+M=T$KH;?0v&@x9{dGV+Cu-$}OX{s$=lS)QXGBju( z^n)uYb?jSsX)Wv)+)?zhrp#2WL#dh^%1k#P1@IM9N|k)aVKgW+rI0e9!$VhQx*IVr zhovJF%1j@`i=OFnGfR@1QeqfQJTT;>s1>OY@vh2DSFx~AndvtmM=3L9D5cDF6JBDl zt?<E$8KV^YHu8YlOuxi9OOrDAaG6sIR@zJ%sQ~SR3srfIFKz}oF5Jwh_p0_2^@J$# zSK3VPLCry#f1KSTYBT)^0X1J8;7iY4jr*t>!Si|WnHGq93kvolLg*RCuYE@>zCXen zw0`5aI3AvKxkM;a0lzEDwzY*8uSMezm70bsrKX|fkCZgk-N0Hyv8ihMb!%%)(@X}% zdXmeLQ@VCjyQ*LWr<q8<k_b#QF@T}ol=f76OH)^GT0kO-HeZIwJCwatHKMDAQ)Y#x z;k4ET&_)fXOBunDikT)dMw@9WU_?sEsX`QmL#smzRmEkU#PNh<PhOuuYn&{i>^YPK zYW36}5m?e+Reai{dZl}10WYaDLQP3|dF;gW`?&xW{7{*eihbKgM2Sq;0O}p8c7;Ze z0Bqid$a$u9DQSS)YCO{dO1yCEP~$Z7xRk;oX6;_Z1#-->?FhaDRD~I^jl3yTqPW4w z=3jEF)+nW!wN`0_bBUVSU}1*NZR#{VE;lm_CT#e->J$7HDd9m)NN>*j)YKAr!>Ofi zT26b~+B;M#CC$?UwYVL-M>soIkNs==wu1;MY||a9&fo>Nv?fAJFy5+E#6}IwnmRsa zsPo-lkZTyc7ckeL2-RP1rjtgDmYj13W@9|I(ZjfcFLO7Rbj2zcK4eKdtwd`SNtKHR zU5cPB`m_>1#JnClLDo(>L07RX9{w>Q%D8ow*|%+ASSmE-i_>Eae5_Y?<DeB4Rt{Av z&>MjseN{Q81nq$s9W0&+4)s;NOHM4Y-++lFH(1ut-PJ1HigD)TQToKvQ*T+sQ*YoX z3ZUDY7I6>YKEQ{7ci^UN1H@1@9<vJLw7Hg?SWWi>r&5e*6%(%Su=j5uZN2mhi_ypT zvE6ES3g}FSx^!EkxU};n-f?NamUzUaUBC^{rx1DV!WLdVc8o8%+4*G#JM8G`3FkL> zwVSzXf;$&A1fspQbJ-uv8y{4k^F29nj-8ljaQv)r&^Gk(qNfY$9+2Ml{(;gOsH0+Q z8SsJCH`3}Ic?~S=K3*7ZmNapWuEb&@UZH?U>7_ET&}O9koFN*9&h{1F;jhZPOLJ#S z-H&^PALsfRkf=|u)|+u5%o|fqA38j})zz6DITh9n!FV=`_X?{UhC!Qtxv;)ZABxB( zdE0v7%E}Q~xmOoq;=9>Z_xeJQ*TmDf+Sizz3IvaFTbs3|id)+QsVkf<3hP5fwG&Pv zYq0hDDDd5lTZ!j;Bawznk%*of7(~~kq=RAg3qbv*4IveAh=H3bc<|v^T0Q4C4wf+7 zpUFXfB5EAitzg8^bHSV8rNvYf#LBDZHmZ~48RFN0E-toncq*G(Y72d-$^K7RUx>h^ zq~q-iu=%17Fy!&eaZu%k9r?=cmaAD&3-fd(9=vxMCq<kc5r=*LF{mIYnuLps6y1!| zdJ8^Ch<%Tx#E!!SxXTssn~3~w72rEu#_WcnbbyBE&MRJE=E+(frG>WB*k2-Ta|ai9 zMj2NZR^M_T!eIyfN!0#{MLvoSOaf__S34Rm+@)yRmD6;O1sA1x%RQD_b*W1b*Hj}= z$yYnSuLYernj{>+^&PmmL(i{06dc^Qjz))E^>p38!lJ}XY?6*l1e;@dgmHI@>FkbJ z6di1YK!99qqW(H}r?a;84*dX7iYeC(5aP=pGk*g4W8qH>f9~Q>R#9Odq90;Ah|Sw~ zICf$4gw<5yfq81Ux)nwG4uQUeuT9n#j$J*z-1&pM)w{4+QKV-S)V7`UuzD?S7Ba;4 z+xW4&9Y-#HY2WP|fD3C!Iu7F)AKctRqHMqIEMXYL<T=z<c4zTuvJ$#MJEP86%gb#H zC6$%4VYqh17q=uf#I2(BwRtZ0LO+!0d$bP^@D-EG7<kNT<jllgZtaL=BfMdkId&@h zaf-+-7N2Ue%v6A`g}~%p<JU2B!l{#4y)oftLiF|GaaH}@*xrpDQcizFpiN;pn=vlV zbfIo`(cX(t?Sn4QHajmt^-o%xNri#VRd}Pn0)57-crFlIj6*4$!}HSgX{i~r{;)Uv z1me9Y+9x(Hehl`fMmLU)E1c+~X5Y#osR-B@SJjycfCMJlyn{ZlZYy*vd0m^2x0l^* zDu{s#PO0SQ(7bHAcREax@-J-W1}Vkk8In8HIrZf-`TYQUbni6Q>p;vs;;N$sP!9`b z*E3lnaJa+~j=NUX<)wbkiOLQ-SeirJZ^j&yAH8aGbC@Ya4wl^P_$Xi>PM^4sEvW|$ z*zcJh*-;cG+>FW|YBH(Ow!|MjXv|>!{<Ojm;_B=0!kit}&j(m<<*|ciO2sc6K6C5| zsKqcl%iJ#>VLX-JC8dg}Sm@)!iHHL@zA&tBZ5-6y>1na|6}F3GENPxG&e?VlUy4#{ zE64nicUm3ioCToGQ5(rL3AhsD+=o$@I&9<cyn|)!M;x2MhAkeWRPjR+k$+>*MBC2e zjx9fDU91o3Gf*$$o*Y(qEHiPqff5x|&~a;W+JHFcPtiyh+v70@H9F{oH5NxM`p$M& z`svEnkfNYk)9`Dn>+Fr}S*vXJ*ygOEPEK48W$l5kKsV=28{kG=!OqUlu#Yo0Ug<Xm z?!%pnkhq2i+cI9=-q%)!!jD=Oc;1rc>Fm7-l&)ori0o)#U|+?4TO&B#qMWo;t=kI& z9ZKCXkbgCRiiye(p<XX_MnFP91n#C;`a4MM+ryOqE6k#vZ$g<v4^RkowNxjfRAiwG zf_q!B;NjNe0x6iC<~|<UDaxG()&mWX-7(G*6jYrjcfx^guj+2`&h*8)G?)s$MH(or zJ>Dzw9E=HV6grRH7r(gWJ!r+-7mK@~dqUQbQzm=#dFi|dv(H*V#r@C2kP^6HMR%p# z`44;{>&AgP+&g!av<&wgT-X5U_w}-!Q?*90$vzzXPxHhmjNEXZf;9>aw_)@$GNw2H zZ-~|gPRw_|c%o>qJ5+xyEkKL|;DR{r#%oNPryj>DEe=irCNfp1+Vpv?uwmg$PqL@G z%IxAV-~#2AW5zg}BqI{w`}I%*UmSf1U_f=O<P6G~(r?lq^kAMFhpW#o8QnO4lv_)5 z!+4(<ZVPsq`EHA=4{=5aGU9>h{~D*jJ=G*Q&eT1Ml+lIOs{s2MKj;F&CD(4$Z{m$x zE1`hK`RX_5FNHgm(zL?SxXe#l$MG6n7U75C=GfQveZ;{_ctd#fd%kZ#=`FvR7VkkW z=6a)Iy7w)-sjI-^pi{R=3~Dv>C&t3Sj4|@DsdFpVGW2^fU*NKaP$%7{afX1YG=WI7 zoy7r}d3AF=gU)4pI(B2pX%DIqND<KZP-PlX>-`8*pW~H#7{&d7gQ{oB=;aV_;ML3J zAl*P=6j12#rMhp?IT-2M`_!`4b9Pe5VDFc(e<V@pOST1F&Yd|A$>vN4(Z~(88u9qo zQW|#%oASfJNG9_lI_cb^+6N*^O<xy}40)t5ytM5usICNhw%eQ^V6{TiK<GS-SL5hT zp%-v%Yda6kN~V13-bYf<xaef0-K!);!GVC#Py)jKIG1?Ua%@p!t;bwfTMYI1Xh{ez zIE^=Lnd=E9wc3p<hsqXS78Z;gV_<^C)<G}@)cv)m2}OUm(u4x10eO+0d5*e8!@Bz~ zX_)u*!o2t07B?*EP}O!(-uvz)&b&m=+>-j0E_to<3aI$iR$HkFow%FKXeV|EsLMps zmHlqye-r1{$wpP?yc4gu3lARZPrw3MA(j#*?v8itQT-ZI!A^my;gJ1Q?#>@-Ta$4M z@?)?-=Ooh$FdUtm%rR#COk(GzHedv-a^qo@n*giK6bpVbV(>HTF8nOWg2PnU<z~Vz zcQ)*DbF+%J<RQ+Y?fi|ht;GqmNL(rXgD1K~O<mK=tz9(Bw<y;)%61kPa$Ef|Zowsc z^&K}CHZ7XvS(NJ;iQ83hEt`k64$s?1434y296Kpt;_f#vp&|kf2D~5Z*kyRQd2v(a zVW+c76hmz1#ue9tY&r9GvjM<K*qfb;@H*~7t<`83aDz#j+cX@kvfv2s+5}Y$@OIa1 zLyxmMm4@+8Vg-lG?t(9lY9LxD488nN?a3y?P!=#qad(bGP<=QMYag%?X<UJh;UsrV zIr4)-tgW14bsrbPmh)gwv^P%mH0iIZW$V{m8Pyw4{rd4G%UFdN*N-=I?ga|^)^}X1 zt=3_S2cVFv3&@{Sj%~oAl2e%0Xv$lLdHr}1Y^q&9&ijYa-;Yak$4%tp>+P<%VY##O z#Yj-OL%V}~je4)RgZ$Bxpb&D0JIEvWT6qV#ok?hSkh|-5kOzE#OUMhPaS3^+gNntd zxJriWw>z^5z!}3Ezl6L=9M6))I!_$0tU++&4$_^7MP$E{mOP(Tj=Igqfm?B5HL=|J z$^j$YzPOFN9&aPpmal6&cDKVUgQ&cY9OG%Muc|W(xQ>AJ$M7f6!_0C^b06b;EgZ;d znn$gz;0E>o=kiq4V2CG<2l{A=4;M~iC8JL8xh|0^{T^{x3a<B_HJWwKe4ni$uim-E zOuY^5>z-ax+u8xzLE7SEKU8D%`##&N-#4?}-M{O%7jL`qwx{1oTpxftDi8H|uir^) z9jsqUneBe@3&+m!>~g8|VjeMR9@CH&mT4`1vp_bf=5Z~BZ?_?WR-8h+f}`r%{Q{M% zxLkzg(rvwc`1P^X!MEqdQ&>ZdyLd`p#>JAXhqj=5%H!~OILUTPA^ZP*{$Jog85Br) z)p8Slfc5|jU?d;~Fb}X2unF)!;3S|Na1-vNX%FZPhyY9iWC4Dv>n4r?*5Q34;4Q!> zfHQzA0N>gO2j~YF1F!-X12zJ701g6<0e%2n05pI`tM-6EK!3n+z@30;fLVY%z=MEw zfHwg90Y?Bo0LlP$>$r(FfKGsZfC#`?KsI10;3>dsfR6!R1Ihq50e>?f5HJuh9B>!F z3djen2D}2;5BLqhXDMi_{_Jdt1Ngxf@y$x;GkFiY)Mi^Myqx^hBC>C-{H}1&U*4Gh z$(?*f3nHTV!f|(r5Tz*4Lt2H1Dfr8Q)o3wFM2Ie;kIQ>^(OV1?;jp3ma1kj&#Rw6m zY=(#-qMw+7zkUeM7=%dD|2hjZ($fCS%8oX3^*`bfExIZDZpw~fV_?T8L^s1kGB8U< z{FCvUt=xu-OfjpP-3a)y!rt%|2lp)4xQ4_)PfP{mz@ASO-qVq?@ty(Sd_oX1TcpB` zI40tK3iXhJFUg2M8=+`tgi90|E;bsz0$d`F0(>G~7?>)27&mb+($>rjd@~)!sHJVB zYotkkOo#C#B0d|^Ptrrs53#NM9tCXaBge%q9_c3`hGZApQSjyZ9Sxi_T*Ab`z3Mm9 zHqsN26s7~!?J915Gd|+Zc!(>*^FTts88iCjDB(!L)7c!2$IO?xctmt`x1^+Qc)=5c z><<BiB~MA7F*#Xf`0&hG74IXaSTkuImz-raEJJKlZ8<<J%9gI;h_Yp<j10-jPE~oB zm_0@1U-IN^TVl56Cox04A{~MF1>$9#0&y`OK!%7;oGTCq%xn>nJXu5~W{9{%t1UYT z4tOH6Q`Ot3X}0Vf-7Y>kDI;0`7-iGmqBAp;Yn)9t6Riv@5Kh3qfIk600`6icO4Ue6 zPdG|k4{^KbigGp#e=5E7oQUk?WD${`6PIiqlbDWhcpvQY9+IA(IYoKKkDI%PXDzSV z-gWBM^Qqs!<lFG3Mva@?+|;jG^IKZ9ytS3Nb(^;S?b>(fcw47{&Rx283+#S-kDk4H z-_fUUzo7mD1_oO~28D)&M+_bk88viR^zaceu_NO~jUE#}cHEugCrq4_a985wDM`sG zQ>Ue-O;4YZk(o6!JI899HG9t7yYHDde?hJY&CCv;lWL90&YY6W+@As2n*!O$hLj|O zvLuu+<_}9$1|%yLK9W&Gu$*Tre`ZBWeZlo=%GWTIr#Sq%`q5nDP%8}=gKKbsEFn}h zN)~-w9a4bby+t6n-9s?0F7OiqY_z(Ab%+^|iC@+n#4j2cL;@GHq9#e%r6`PND8JJ{ zNe<o;@yigbyI9Y#4rIAZ1+`Q0m7&UVs;bLe<Dz>i(oBVWI)3lg{jpTlRi#dgpZ=2I zK1I2+Br{DjQez!shD!#1=K^=8O1CWhF-9#!DqJ#<4`xt9Dz#W=z?L<nS^1m}{59OI zDD9-4xtD_&)0Ll0kper$$GkKsV_j9rr!I<5GmtjxRMtag(GfNO6ntfi+whfw_%iTK znu!x_C;{XrDY}|d845>Aj#lrJK1!Br$S{QyYgXdbRpl<_$jI;8EAl%7VM%c^{E=Hz zL8}=lWFahDAI7T1o(@x^mbQ#nbD0632KI)$8tHVeNT+7GVk}kjn{gZb4h6oW@XdT7 z?==^V!{in5>-ry&i|TX)R?uPKWbmyf3X-bv`*!pxjPk|YPE@5rqlcxdrZ~(><|wxY zE|vLrySSqwJ_C;%%fH!3tL7B1&O_JqdjEy=Sdv&q|4MqjD$>h>Olo;Q3vp#5PWD04 z!L_SPj!_mXIi|_s?V@Kzd^gUo1Ypiy!yKe*MVTdsj4w)}k&Bh78Re_H=v$FqP5GUP zTxEV~H6P1!rm7uSOD3aEWG$7fVqhNd(dg)2O^%2SV`4p^)h(>2C^I$H^{(+$$`A3o zI-VKeGHW?fK27mIQPo{q9Web5<Nqu2QZ*&^>BwV^y9WK0<&fNGtzboc%6fDf{IV5b zFWBI%Rx^_`MjmPL1iIwUjmraL)nt%z!S<Rhw<~^uF8Oog@v=wFzPS-&P6f6`z6YW= z#B|s`ryyT46>nH;u&v9&H{V%{vvp!ir*Vd@hgQ35VJKadyr4XAOce7Iba=un`_ZDd zNvwv+UdLFNoG2798^Tz9#v*XkM2v;mi1sl3U@R}ewY4xUFrj8i9Q?r|Zh?6hOe(AJ zg?TIOi!GuROmCQGn5&%@(HiE)?<|mG!~>I^ODoK~VUC4a4l@QOhiri`qgB~p`^Ykr zqG%oiJJPMy3ZWtZe`b^zN;V}}>sbxM8%Hpe<CnUMN`V%He>jj0zA@&h$`{*T*3?>P z#x-4Wb2fel!Z-7#Y6{^9r}f=hBj&mo&$-6dPtn{Fp;@xhA+vlsX4ulx@ruo_UYG#~ zzdgK!m%FcLczAd%KD`1F4?UXu#Eh-&E$#>mjE}+QJF}TtCcN*Ob{8HY=48#m;|(9U zSjyWQhByBB`QHZ|Fkki85%q@lceUHqHbamz*Za#CSN~P@zfe^ExrrP5bB$q<sQhzB zxxJA;BfR;)GH_M?v&HxymH@Yf6@P9w_!v1zbCFx+pS#<Q{Tbn}mgqlg^G79sDK*BQ zks`k;-+iIx_s=}l{ofe1mA-sM<-7LghT0VevKB6~=NH_2-{Qh0j-^G*?q9y*9}hhE z&_5qu`N*S>J-+IRCs(g|YVEr9Pd~Ha+2@{r;l-E!wejUwUfr~L%huOkf8))!w!OW5 z$Ie~5-+6b>-hJ=A|H1wbKRR&m(8q^A`Si2Tk9=|T%VS?1KXLNZ*WaA}_Pg($#Xpps z`SGW-r9c02?)<M8E|y*T?Q;3=xLWJ)PE1^T;^BrSCjPhS|KCpkZ}b0;CWfx<t|o^5 zx9P8iyPxXmtwBq?d+P7l^jPs;gm<Igu*~KCewTObVXN@7!sY!RF7FSxyz_2jBhJk( z?;c3M4gm299{?uw^f|Nm)QqIe*>ToHYbxdkVLv)2IeWz9wB#w)$c&WC>>0`-UJElU zF~=G*#hN-RIVLm9mZjp+zO`sXG-lxvrzQ`|oD+|E{5Un!SbdHWQ3<cSynFK&=Ak3z zac|zei}D)Rs)e3dK|ui+7Z{iqleZYXs*WA{#Kh;JpM}m?Ow3{gGk45eoQF^X-LYxY zrg?kUo|Ba|J1eV7Ka48}!vS1p@Q2@sL~CNYIXOE!Guxb+VNOr9WlWitoZZjdE=NuJ zWuw2!Cn7O5Jvqs2%`|6bC1;qE=Oj<DSraFxbE0>224Cow0)CkjGt7xu@RS7qocRSq zy1MwuPEJfRr(|c&fNvFCv~A6GhY(;i1UwlF6Pve~D4wXy$-t|E)#jPD<m|br8B@(E z3ZbjqbCRuA7iW=UO#)d-wygBjDJrv!fQTDznKo<9j&K80YIduncM6EHCY!Ug8CJ6` zhe>y6m!88jCoVjjnrsEjQmy7GnMuj!%oHO8`~4jEl8XYPd(LoX!<>w9LIzB2w5J^L z6Fw&kf~Vzz#%aViV@4u)4sJ7PklLXu@}>jda;7CuPK0H8YDO~hGaWO)HN-J{TB<cU zCo6GEvN<uunw)L!(9M>U-EDGeMz`dQSsjdkl{BlAEAyWz!DDK6X2y)<46EV4YFf$J zGg33aeqaNZLs+`Zv}J;E$X6Fpx)#!-T!L%iW~W-GG3#=yiP<XFKNFoxz9?FBKGnb* zutVXkl?_*ZR>_N`WR<P1?z$+99u?80PZhr^#SU#dm=ksEDGjb6Ys#Yztvi5KSX!8^ z<O`vzWp53*SIwa+DO@c_*;8%Iyc~1K<XI@)sVU~<8Cll3w_QJ-$q*U6;3sn3gGIp* zND7^KM)HhIEcdh#?J(BNfoay?%r)3yor*&97atzJj*-x|kMJYo!s6W9X0<xG`&9UI z?Kah0>Gks(9_$S5H-Ytc&V(@##<>$v$Fm~OnUIq@BP%^Q!KnKtB&Ft9Cs=#j-Zd*p zRet7Pm{+(1Yqj^*j2!l$acV$(qMOEdKy!-<V0>41AM1a8_l51Q@BU)P>$|^t+x6Ys z2VCF1R_Chj`(5ap&;|E}0Qea6VONmigYmuO_NwmH>7N)>)!j9I#@h{R?R<>*s)v7d zkcG|_?nkPne>~Ju;r64;dv$-S!z=y0;PSqsT6`f<Rnx0ZuTN}M_v-ZgbEM`Dl*MGc zUyH70qpHSJJ)P#0ukUW3d42Z>W>s~sj^}szRoz|r_1L`@@e+WKfxoN!$%icBG{Dup zIv+oLxT<^ge2sdfs(W?%$F9G=d-tcSx>u(!Yg1MC>gjjhTh)DEH97cspXM&`biw-z z9&UV9&jRinIf=RgdvJ_rCG5gZ8DCY+|L)cK_wChb=H|NGeV-fp>!DizXc$_fc+t`` zE}0$Dm_+Necrg=SuDy8lG_{_+*dRhxzs?v0U<je&vSnwZk<@L)CC~W8RBJ?Lb{rbz z^khBkRQSwD&PG!hnwgQ4nVuYK%}x(Tql*0zH;a&*oYbiqdJLm7E0Yu_m;%ucMGw(P zLNs=VZFFXmEj>8`o#o+)GeCw|?-9#hu*(RfGNP#-(YADJ>Y%yS<WZUNsY%J9(-O1A zLpntj{z9-zh;heRlZK%G$bPsxzd42p=U@PmP5!tLq4~=eP7$W}rjzxcBSmO>W{&YS zG<@Xn@L^~@lhU!dAlxm^nvMTR;2k$)SbRuKq;fdmJ|sCYOKqnRAE<Y2>%>nYJOkaX z(CkzzI_&9jXrMXt5`8^}B`3~GzREsTqaqu5FlufVxpQx|d=C+aRs2<R8+qz!^eZd* zeb{q!#x%u`r0_XYu*C&wgYiHJTqi%S?d%bm6P7&LHg#%pc1(714m124_s9&8k(i!( zcXh-=GLqu5QZqs`ZSeO4Xl4&GCNq_^i}$(v#^u}3bEGwWbOt(qN#a9Aizc7gxuIx{ zp(Kd2NDZOU51XEx6q$jc3A=RIWaes*hz<K`3>y*}Bg7r#;fU~PzSjjE*x8brq~s8z zRq?LpsPr6tU&~&;!?U*cWgox56zyvdzf^|$F+NRdH3>nk<dAzV()F&wTq{wdrg2Od znFMKJNJ@W5QWBVm5lg#T@el<i{UVcbXfbMx6XzHUO9t~^OwnWkLjqeCSrRV}fs^UU zD2vs^=@rko^knQd>f$jhG&(U0@(K9?mODH~0ux3kL<&>mtC1}t(T(JVR}OZxa5?ef zDDkMtK{Tr51><4~M%imv%P5+oGAqifct$JNG0E9#yqhrvbqM4G67c|I8I?L^x=!~_ z7w+km1=u%N(LXl_8?#2GBApz?8N7-6_3}@PcoFO|EHg1_SnA|#Y{mlBA1j#}nXF~< zqbhE_@`6OX;PQ=31!v;jBGPR+(-_$xTS^Lg)I!`xZn@MZo{%FQv&`%WjFN5HC}zp3 zTqI#<(u}Oc?Boi*$1}7G|HdR{r*dc!FXA+pq!B4h4)Xz|QID842zuRG=|&k7!e5gX zz19M0|6e{kdPBtU(9~v}bvF3wri;O~S2vgM>aTPs{P+1U2X2%Dl&9g}S>AlP+4eAo z;rGn|LzXy3=es9>YxlJP^#L5Ca~`%ffb+1NtEEXhnw*fN8|RJ<H^$4bG)(};OEIS% z_X}{Z0D<<c0kp?(UVVq?-=X?9DmxWsq;4Olo2*9||2P2CMz==AGXtg>fJ#X1F+e9l z;YvE_KMz2h7wYCBn54xHpnE=m_+ai@t;9c}f3JZ_eAfY(-ZKFD+X^5}9|7q8Ie_kd zU<&y|AYcBokMA`fEnV|9pZ_dg|5LGFd+|%d;M$8X|5F(L=hL~S2<R=$HATSupU3Tg zFoplyMWHeJ2kxHU>rf%zwP^05);jB+KB2v=S+AK3pFGJeP{OhxPnjFwf9KkxYt5ST zRlf_bXjT^8+<b%nLv;UJ;Qzo=r=MyrzJ1F1)c9-1zhI3D5sL;S_UNReW|43-?da`S z`#*f-_{mE`bYGxh#(Aqy`0DemMf3y&0y+aa0{j7HfFHmY;0-80Z4spaC*T<12;dXI zLBM{%KEOMG9e}q0uK_jzHUeG%tOKkBEC(zG(0?9a4j>DV1egGb0fYf8fc}6$Kns8` zpbi>KH=QzXd<#I?H^2+v1e^pM0qg_32G{_25ReDR0!#pm0t^F$0r~@a0y+cy0WAQH z0X_gvK>63Ws~T_wuph7kK>wRyZUC$V<O8gLy8y!gVSxUCjsO8Ta|$LNH}(7P|M71Y zQYF&A`%OHn<LZs`S;n*SXUN6{i&%XTG$QTg&2eT}e;z-F{egJ$*x>(-$4K8Wji`)o z!@QRLwcP)#e<L2lG{XPa{QDgEqdiFO)gBN1F;WgJg&YDXkB>s`%(Wh9X1LMps)K;+ zwg~uR$kiWD_&3A<wSZ-T^1%3A<-&3pb=D04f~kjnSJ%f_N2stHTFa~A{l71NnFDAt z@OY>-(T*67G{6_eDtR1pErtn0J(|DTDo<C#p84|{Ob?g`Vba|RljAga%46pE!K@84 z5GD-uXz{qI-3&u&u&2!2Rf9bP&v6kbBOcl>zJ~qEYuInNhW%^Tu-|tL`y<z|ch+Ff zwz&-U-Xq<F6U;lU5g<xOxrvUjH@^MGxQPuIpc&sgCgI#Om}-1?OoDs6%I|}P_(qS~ zaG&!i{3CAT`{Wb&29J#IAy48gwM%*(;bsO{0B%A@3hy;NUAuM_g9i^5@$vB@H8oY( zY&MZck9m3c&l4+Gt`yHa^Ne`?_1DFY9XrJ5pMNf{T)DzFPx(@w@lnbzA94TwJRf1& zJA3v4^?5*^Ezk2QpFMltJbE}Q_m>}#`!B+IFTTC;aTa0mJ$p94od=+9L4Ctk3UB<J zmE|eQefGRk?=uK2_vqiV4|ta`d`b%9=aWnS`wyg~96<W&Tg9J}k`8<L$z}ZIaOVR* z%0I*NNxz8ia-@G?kNQR;jQ<4FSI<SH5A6{LxTr`w;#Yp)(g}QBpa+HjqVgsC%lBVk z9Q?jAazZ3Ll&2$peAjyGy~ejazW)G7NFjf`kG#0B5gCA|jNiW(+}?25{sZu_6y6d4 zvyXP~qj^x@Wgi|`*XD)&$}im!?o3F3S%%<h4gmOnw06|~vho9YJLnGn$lphAFDqBh z^bh_PKVBx4v*JIaaB9x<uhd-}(VSKM3O7d1_!jHW4)rO@TkXg_>5&(lCqye3@W8tp zK#9gROuEybYdFSJ6Xe2P<_R}|2cR~<1ZX8G=e__l;E&|IXV0EE?~D_qadG1AyYE)G z88W_n`Ev2xbI*xQn>HyK|Ln8R#JAsmTOsFJoNn2OI&|aK+LZKrvhI;vQnriS?Ps^A zOwSa#$fA_(P{OypBmt5zJ@=<y6Sm+b_la+zeeQC~{P(^cJ$m%^lwm!ehnX-vYUT(j zHz&vig&nq!ADtj_<=X9=M>D?Hp(>^n-}1+c7dHwe#rHtnbE{U;w{|NjJaho<U|r2% z_@RG-N#hfFWKn!VMRc8~UAuN7ARqwy4Fko10Ru!x2+r?DMk?OL#>NV$?1Cn#abn`c ziDE%ggqS*Ysz^&q6EkMa5ZT!{7mE60{`~o3jV)L_fA;|K>VhC)pBgTfP7f6iW`>Bz zvMu7xh5f{fd6DALg_FhBm04oX{X@mUwbMn%x25R3ON#D$qzHaTieB$a(f=bUCVVJG z=qFMPJt{@)2`O>_qraA7{P$8!IVr{DGg2&ExKI=p7K#-sR)~imepo#6$RpzM#~&A~ zSFaZ9*RNOkyK&=2v3c`mRhPZ>)?4E6?u}y6&r)nImEzrZ-xcq@_n!Fh!w<!wLx;pC zpL`;Y9z80)`syoj_S+-k@GnxFI(16PMR9SlIDhsB@y#VEN=r+{#fuk}tdOnl-7voy zgE>tIjrVfQ18#)yps+V6g`CQp!~oe{jF+)uuAC`W$`xX>d>Q+P4jJ{SXpHb}V$i;3 z2{B-~5W_ZN{t@A)mZGhc4aE|Ke;naoLiimB|1rX!b_w4e;Vm&j+?j>5Ov{B>wo!;@ z5q?*x5Qh-{2*Mvn_-_!t7~#(%`~{cr-P&VMW(Z_`Jod$66>;M-jLDzHzJ}c>gdaB) z@<?|fzls&|^h_atSRrKT%R*i_RDplD#t7dA;R6wVAi_r@JmM-%MfkZ5g<R5I$W^gI z{%fX?J69mimxcWHP-S>@K4Lr(-V5O|X}S^PsspHhO3{gt=9`2Z*j>m8u|nQGQ^<!` z2)X5DAwM}(8D2ENp3<i1@3h9g-T)Na-r@ixzZ7S!Wy3p#?4BiL?7c$Hd|b#CuL$|_ zJ|PdCa0zcl_}&OV4B;mu{2YW|hVbhU{#As38{zjNJknfo4B@{;_|l5-ow0j!C}K!O z4EG_1^@!me#Bd5Rls1&&m+n%WkCo!WOerp|kmAzIQd~X+1^ZI9r{Wfb?}G5b2tN|x zry%?+gkOyCk2I9x>F!c&ij`v5OeqemkmA_OQj{F34DXHb<UkXIzXjo2BYb;=?~L#R z8%i;@yA(5HrC2%>ajlSI`^!=sJyaRKYSoaSJ+79ap@TvOg@h@qVVyd*^Ka9p{oo1@ zA%mhKBg4X?LW6@t!V<c4?9ic||KP!G6Lb$@k#NR;BwoV85&~|chrxr*x_eY~Xn0gG zq7M%Z2_6)Z(3u|EwQJK_caMy=ghYjehJ_+LG3(knAYh=5BfUgLM;TAVEq+ZCy21lv z@Nd)F+!jbiGXAKj$l$1imW`VE!5tnt>K@uBAbfBLBM6O3xTR5}W}3Ug(Z7uuNJdt~ zpU|Xnqeepqs0acSm960p{KFVNBns}08?_v&<2I}lQ9$^F;E?FyQBmPh3C$TnGry)y zZ}#!=X)%mA(wz!AqLE5M^C}(^$OgKHhDS$6MMZ~4x2oa+?j1U*_y<LYMTJL)MMvD) zyosI!Qb@S1W0zr|pYeyPBn+-4^!Eb_`~v?}{N011!Q$xfsAxrm!qMPA@J|TqZXpU$ z(a{ObBO)3#Y6K!G+!K0xC0M$JBZ=W~zcnI4QQ4xxJ=9do)TcpUcvM(4xE#?+QQ0y= z7mwh6AtASWm}&(ECqySiM}|jhSfUEip2*OigF?G`y44-7JCIkAVW_Tj_k_OPeCv3* zxiuUD42fcNR4@do(mmvkUV%O8czE9w3CGYukma5|LqjXw6A}i6j0kE_yH;<c5SqZ) zBf~1wPY9*ljR>mmUfV+V&|rvblo1^KBYz-ZmU;~vj7SKL4i18>RXD@lc!u~k>>C{d zK1RAYlmB7L2kh_Y5gLS|;_9s8NB%~IK@cOud-bd4>=HjRIx?hR)zBy(RiEf8k)wW< zJ95iRdBG>qx!3{7)8Oy)=W-E8b&xgn<?=*uwf@}o`zc0$Zsf?3sz0(Id2mJF<C!@F z#p2X(u`)YUY+4j9Ha@yQ+_4XR3e<B$K9^z)`VQ<f%z^pOfBsWE_Sj=$)v8ru&6+i0 z-MV$Eukh-tud4pw8*jWJ*jM;;$1~zF^fxx5ukg-0?}(2+`bhN+PJewueEs#;;`Hg$ zqNJomoH=tw{POcz)i?O{*I&i&zyB^)T$JKv^c4<WcByB(wMIjC2O2t*%jHwh(9K0d zcRw1sr$s}#NpzQQi&(i&%#?@43VBStEWbtjUD?ivZfFo={16_E?efkD-y7jA2p@&; z;}L!)!rzDRs}TMbgntj=PgJxs|Lv!MegEyJ{9oBm;W>Xk&6_tzArhjQngwm{*RET) zZk=dvZr<FldFxKCd>b^l75(96Z92AV*P&gvhQ6lT>f^h4>$V*_z;8p}R^0-+1&9`H zI(6*UvTnDA@X(-s{aahKZr8C}y}BK5)h*2Cj-9%Bd;4@mnA>h@P`|lf(@x#$d3)Eb zQ>&KGZ6;H5Pp{^kTGsQfON(y4t(w$!tK9~EyLD?>rxxSC+0VTZzUsBDTc=I{#sRI{ z-Qv*#t_ac+-$*~8MdJ=_1G;q!=m7kYey4x{|A2tj0gApBc+7ZOw^pAb*93h5wc!zc zWd&|9YkFvJ_@RG<6RiYJ9%Fm~xC`JW%=rCVk2^x6$F8<<px3U<S}>XN|HN}G>aUkJ z@vR4F(yCRf)-VbFfcACj)WHY{$5a%j(1jK_N~~?eFgT9Sf6GJu)CXX6b3+e#>kFXx zo1c90$#}FoZ=OAS_Pd{c`ssVLJzxL$<B#9MJaPW~`Lh_8o<4T$*votO?sZ_@A)tT% z{*Zj;zS?@jc(^5neE2i`V_vgizNvlt_HAL3SDaqHk;iZR`0>HL@xb#fm`A)H<7l~k z`*!*L_uosjrxNonoS>2?PMnY!e@nW928l8FS5Bw17_^@H_~VbC*tv6O?w~<~dLSO= z6V-e)1vCT@7v^hS9r#Wj(~VniaO_kx#au;?va+(@@Q#M_hVgF(ejh*??8!LpxZ{rY z#1D8W{NI27eTg|z3H;=1uf3-5#vGFT?z`{g!Gi}S<`k4ahCv^J_NNi%$(LV#dH&X| zTj!(O7jC!PM`UGXg)LjQEC&5*;&vM#plQ>lJutU%=k2%OPTu*2g@tuwym<dp_@6s> zPNFZfqHWu@y}-j|Km726#GGygpAQ^3AiwzH3xy~0N8!%AIeGG={PN2$)i-G}0DT_y z4w*au^Upt*LGCUiPUmmG{U(3;<(G4xe){R_-+c4U38Zz2VL;~tC~v)h!!m~bv-qPw zC6QJI5Pt*6R|A+Q1`vPpil*_-Z-PMwP2yt!aFzxj&!qu|onihJ{CDr(y%hP_1~QRP zT6XQ)rD&jhV7^H*4=~T9<b^o0OrQ)a^YG!rlEAXT{GiG5!Lq|JAAInEqJepc@-LYW zn5*X$ZpDM|%djt}JIXLOP26btZFb?p1&L-z$$y_decDrw3Csh`o5?rdd{ZLNCHl;& z3^NayCzw}LK-~B3+b3C8jvP6n-bn-N0LmN73G;}!ZTU&c<fFJ=;3Fw}z9(h3cX`j7 zlwEh={>b;GeC}H*f4y+wFv<$c|BXBf|F_?MdxgKhe=qdmm!ZCt$PYyW>m23*`AT}2 z7sQ?K%>U!Zk1OCic}{*4U&;b$A>QOaW%Q{tQigpdrR8H>NrEZ(JFsTZV;^XEN6Jp1 zq5U=~+q@y=vSU~qC@+8fMv#Xeg+J<gX#nvzz{m^3{43>z<$&@Me_YDJINTNbDfmws zkO#d#kn(oWknuUzJ8<V-$|2m6`L+_P(i_De^Q4sJr9FD|XaiZuCmqNKMUO!TP4bd* zME=)A2l-B(Gmj`Ylz-N{7_%vaMgaezUurZA!XdALz_lM}z<jdI0$s#E^{|xwZ)wHi zM)60RA&vT<@{jgN5{&$yN&F2tr~ETNC|8sXgBF%?${FRJWy3I8F8IWql5#j`h=Tk_ zfZwEH01m_T#YGRKArNH&^W?JQcIBP*=#4zhh(GG$6`14ig?w1Xa>lx)CORnZu6bg} z6;1M=?rawrmi3J5Gv+kPC~5dg%1F=<4jMN8=<4H|??1!k(Q6RX?9!!6675VCAPoi> zbkvk51}(01T)uo+9(sM1Tt6>LJ~}g4{xj2}5WDj`DMx=JW$Z~Qqe;UTdU=M-^f$^g z>m-zC)=BMA4p^SMK%Q8puV9_61{xIp$nT|?yJ&-YJ)g9&KBQ^TK$CJ$xvox!Azzer z%F>Dbo8&XI`^&Yq0rH8Qfr<taFtHeV{dF2*PDnWnI1K>}73G;U=;gU9>m<~v?NBGR z1`VxV)9O}4v#=Ts3ja23+Emp4Xye(=UzHy$zibbT{9t+Dw^2@rKk7ZX<KZOv{M`QX z>DdG1Q=nlLXyB8G`f~zk7>hc76mI_@4Muq;4Murpoz#6V_>LPPZX*rgzZp99N1&d< z^HELsqrO-2kFvIm{UMe)gARih<^kIS*E}(3p-KE%Pi|fqB44^ENInM|)`NyMRt^80 zvr^tw0vepSiV8HaJhM)ULY-ukXVPGlXVPGlXVys_-&FWttd2j+8QT~1vnqfz7*L%K zqpY~n!FSTYXKQX>`O3V0@};|j<g;@?!>j@F*U}&4=P1skAptaCjZMb8lxNmSEYBe* z3#^m+piW}@Y}82|w&Pj{4gc!(QZwR@{{7Nky?V7lA0?l3uwJA|nIRqQ^Ux$Mv}0Rq z^vmeR_LhAHK5yjpm0K3{l`n&a7eT`Y(D2qHnezNu2+s{X#h`Nr@}v*jXV75uF*>}h z1+LD2))$8S_v_cMJ@di<mRI6U+=#nD3+sN?_Z-)--eg<FwvEr*i~7jdLBr++{p7}Z zLGlIAP`x}qggR-(j1akW`XISDHB{QChRWQeFzK+}DUW}CP?84MK87mKsFV2Agg@$g zCI7%@8F43GG>H@OW_ci=jXYr;@7h0Re~2_v{&z1PD7S%z*FeLj`Je%1f#sPruspL) zdIa?<X;@Ag(gw-<rh$f(Fu5QpT+u*0*~eh}Z1gdDp?$-1mHe~LU>nAM1YyI54f6Tt zpO@^H8errH&FhsD%*)DyPbA8n_B-TT3qb?Q!mFU+UwV0FowUX_P_D`zC|70$%Lg+o z^8WM?=>QG)f`&z)VLoW!Q@xKd31tJ%RrL??hb$=hhg|2AmV58LSHAGV3yL0t2AbER zgEUdL7}j~{Rk<tw4!Hv~ya^gqc?J!vlZ^7b8g<g+*}?MREQ@>qG%N!ROF%;b<Y-}X zm_n3wQiw|*<5iS<JXh8K#NUwrprD}k#DREXS4ag7%okTWu1Cx7zn9BXJ0F$rE)A92 z?S15%dU<A@WR&N1sFO&;V>%80fE+EG9wG}<H5!Ph>SLh4Jq)l4_0<(AKd2`A{A|WN zNBg@1`xv4!GBVyLt}Kr%0}B=`P&By8S9Myd=Lx@AC$KF1(ewE`FIDt0Se}dY@?0(4 zb^AZWpLsuI$Png(eD>LARo{z!8q5#KS+izU&~QCEu9qjohjr2>)=7U<o<Rej8hBlk zRWtGldu?{2?vx!mbdU)N2@-oVB>QzaIXTj5waTSSm#T7&DIZnuurE{-E#y7h2G&*V z3$Z`S@c<u|=L1jMWchCxZ>*iA+Gp23#v^)pUXHTBrzT_#JIqy>(AOV@Z-sxCE?s(K zYflEQQz$_{TIIu2Pdz0^j2I!Yw@4Nh6-lfq$p;^NP~pSzJ^4)<*cPyzpj;6+h9M2C zPbr6N3(2E*9AWa~XNdm=`Tn|Dm3<791@<vmo>?b7IwzXw|Ka!xbAN?c3SCI~fvm5< zxW5<n!MuPnEa4`hyH%o0NPZ6;I#l(0updU%pTwQGGLJ}u0kk8(DSI5}uy4n_V0mDf zR^=J_!1mcF&#aSN%k%!NPqH8Qn8EAonSJ~AeGq$k)I12&*2}WQ9z|XxC^4rcZ@cX_ ziN3YMg?O;P;R>X|0D}&ijE_K>GU8_4`r)d{@~r|3+Gnkg!S?z2`Jr;_15@RfA8e5q ze*N_@^81G8AF!8F=I7_1!yYBMXwjly@4WL)nVz1m_>OU<k|ol>a>02Y;zl~E)519j zw!@Tr_K{dtI3KYc<4M}FkHmI@wAAo`1(%L9zy9p}5931FU5z=)6ZhP6&lTc{eWMCk zrVSc8b?PLscTMF3+YHJ)`#uI8#FzL}=1C{V1~ge7SVmYLj69)98D!tYXnQ#J=J*-% z@~7rMS+*$ukfk-)FZKz`DOSYgym|9fK9C01tC(AsW5<qF_RIs)U;t?_#=RU<vX4!< zC!RDZL!`}+FWR$D#XdLcl7C?CsW<i+-p?__U%{VpPoOMuzL_);H_ka@@0}{Yp`oGD zVzEf<PEq+lcZM-&plQgJktaquVfi5LhDkZ%n1OP|ejxMCnBM^YTyFCL+{mNqPtd&- zO8{-a!+e(KZQHgf8pt2c8=`zD8WIx|<*;GHlx$&5Ug1w(ljo#`c(WX^{-Hg`2$Uc8 zwYQ@june$FFkaTd!2Js1$@lZ~vmoD}!n~6cNOR4H>pC~`sQ!Z?gY5qpd?h|7PMlEq zAa5o57Ti^=$^-ISLf(`Nu#F<0>7T%F(!hF@JZ1g=$}6wPmtJ~FwSoWo*S}Oa&Jlo5 zPSkA^(MHY#?z>=jACTs{$BnMvG$X$3|FHf?d0fVCmN%Njh562U0dlJP5?Ciubt}rc zYTsDbP`)X1#GmDW<&t?qIbj}fK8x<g!*|BZJYs&ZJqNw(fj8?-t`pwqqwqK6l%}f; zlLiBb8|k79u`Jwo-+dBwmSj8a`Vcn*7>4x>>mojsAC8F##GQ0K`Q($FV_c16I)4^- z(x~t^`v2f}K4~!OMS~WD2AbqI>n60_YMelsVq5FVU*gJd;?KM>`Vd^#q1;oJ$a9t< z)EO&*$6vv{0)JQeXC2|1A2sC(>Eaywgb5QQ_T?)1HhAu8(jR4svQB%p0mR){AHf)D z)!)Ef;m<UT@h{q*Wt2;{L8OCakbGkO!Mcv^k!zliw_CPsk&iz5sFG*$+W^u{*<smX zzlq<J8OF!90CnawILh@``A*#VG$TH)?IQ6vfHW9zy*yzY*b}Ydp^PyMX(PUrt?j5g zNsECy`lnC-MS0h-uKZQ=KPX>n{EPNGpR|zwGz~gv8g$SkPg%dPED)GCv|~Q7?qoS- zp0O_CS_0RgNDKLnH2z9GQ;BiaH-*0;|L7~UC!Yw{%M<qR+5aJ3T$dwIwrK9zvq#mt z<N?bo<(>Gm96%n|A^E>6Gp-agBR`G#Pt+3?^FO44Z72ILtp6wnY>(J>lE)l#lK0F9 z_63Z5;5X}h*0rq1Fs4xJ8ld^#jXUX3^6x4e)#cpyHp;E5Nm=JN{V*>m^W-yWq^v`Z zuAq<LL|(C7<sOSa(>4*mKYDJ02kt@mPXg26-Usf}_}h=nL*uf2_Uv*|TV4sCJ^Lii z=agzD-qiQM&-BpabJI<nenEP8{-$ZfXT<M<cOIk1_YU1W`FG4*9Z#v5Zo28Ao3(Y* zq?@gDGgvosbyI4l8%^%hG6O7tzqn6}`+L~GB~YHP*;hnPF9cu~TwVaUKK$m2O7;0b zL|5a(wEQp@3`CnBm7JU$i~fEX=KMoo9|&Ndy9uB|P8s)CWm3+<TF;Qrv^6%)1#?Z| zcC778z})a>zbKThhXZMCfm>_tz}Rjk%5)j)GxRxsMSWY0w%`ovrK9MdKZSX+H1vVP z;J-Vd4f-2rr(%tR>tvh@wP601Yu;RI{p6gK2QVv#^GJMtg8yqhEm4QBMVe)-KUqg| zyhI!b#u|p+=f8q_^&INl!>BjkV8mQA<$5F6xwyW<IdQHJeR^KXgP{Ee)_Pm9p2oaF zBIcgP5C`_1IQC@w$a<Y^5$kI9W!X=m8{hei$66KFJh|4!H6HF?;2IUzcew7)H8wui zA|CdwI0nENGy~&>G`7EN*Er5)y6i`jCp!JA@1(`3{c^qRPR!kMy^m{Un@U|>YkcP- zma9Cd^f?}6AAvv|2&~@;<O$oaAHO{+pRtco>k^y~=QH_7tatsOt((RH2d?{a4+Q7- zx#nxgBiDPm&e$L3r&VRL726byUlY;K9YZ_}T$umt0}~gvKW{!VL(OS(&6#uZM*75I z5^&(UC)dxFJOT%<wQ-Gy^2jwRu61&qa2(1Ao_%_rv|>Asd6x{Fze{7=OfYa@pMyMM z-}<Emp=zy<>oc53<ioTHTzlpEG1vTD<&k??xJJXZKCUrQ9s{<ipcjnv*$*<-7ul|| zpJw#m3|tt3^U9nHT#NZkuKD6Dom_}A=86O5aZELN#QuF%Cb*Y|@>p%1t`*bAdP*YZ z6~?&Y!L%voH2HA7jcX)aFXTGamWQ+caLw?C-*8j=39NYn2kz%#nc$i&AA^4OD{!xF zMs99y8vCFG0}sxdkQaP7zs|KLu5oa!jO$EX-{3kK*O<7r!8J0jFU^~x!9N$JO5&j8 z5$mqT+Bf5KO`mlDfqff-D;~s!`M>kNV9E8aSAYZOG&wiUH5SSv*SWa9!nH=V#-*n} zKPiGqsWM^6;{fmhPeuN-Z-#Y<M4Y=E!@7XuefG~uH*p~kXnwplRjnIxy^3qMTr=d_ z^OO2|A<G2UN4Qp)hczmL2TaVhj^^4eo(lPA*}~c04AlQ=EQ_pnI4<DWjyz%ALw=lh zej(p~AV#edaDJNd$TfV<O&eu`>r7nh<2qTcjsp{mIiaoNPe9toF4Cr=4r;~zC1sH1 zkbQod#DhS75Qqo)#C*8kb9mRk)S4;R>hggD*GsECSJi(^-{Ej1KJmm8W4JcN{y6a< z&pEE<n40sZ#DlzGeMC1tT)*W$0HaLQB#-o`%UVrFEB3K5Uy*_NmKo&3{rBIm>OI!G zZ2wsQQx?b%$|BPyE__%fe){?o`Qz80p-fbhN0bT5BcGZQHsqh<an5saPM199_zGoF zjkj1fiIb5(u6e_}cy~pNEIs{+Jp0XOmGX!(!S!p(<6{fPG5H$Xf7Gq)Z?|IlSc^Cn z9L!$bY_&EGoeFZvk|k<<N1RwMvK$Z(@__k6-kftDl^?B{E?>8YsJ#G&JU%ryLca1) zmMl4q&Pk=LRbj)xfdhMBzIQI^z&d8;<jIrw;{3LpK7G2H2gV*rHFsf*eaLh2gZ$_C zj<P_05dZ2A<AlGDAzQ9(ZI$%-fpxLbDEDd{$hMyAGF)3iKTBfYx1!q^e-RG?`9VCY z=MC{=yT!VL<5EQ58^HeE^`2H7gQEZO1J@F{E`f8VlJl>`Vdl)4itnrs*bXvoLk5@@ z>jk5%qMazmy3AC_at``P)HTLEPk%I~YDHdw_sek!&mOMvaE=}a{w4E*>uYG2RXXes zknc>Nz&;uKXoiWl>NoK79>nz|)+>HQ+8he}(WB&#Wsq^PZ%2M}E|)UMxpb~;uzV0t zWA2K1z<Pn<hzohadYg47@!Y<B`~66`!5<|KcUAteew&DMbYqw{<77S)2j~fq&?_K^ z4<D{@BMt=mVHu!5$_@KTtS`7P5p&^d5HH6HH}a_Zm-P?!(Wf!K6PS}{o6kCjYYWg> zpw^gKE{Go=^1+znWq+A#D(ts|hR2cUjiycfRQiTIldlBgL121pkDwz#)eYRMO4=!N z%rEkqbhA#z+{@E{GHsPU(?MOM>i?SXF#5nab0BfvQOy;zU&uKp%H!WiTcuBWjrNza zM0yz~fps3s9LqN8q>OR@4)<Q*T!5+{{vzE>n@=m!U!Cu+{AV5zSogB-V?IMC1m*8X z%!d^s4$hza)rV(IeE%Y_eEm`Vc1^s>Tj9*ETg7?ZR(aqBzzra70O-#M(+WWd!LTzR z7w-g_SA!0gysOUbn#Hvq?A2o2H9nBX&?ldKaue2QE})M33Hw6+@$}PASE+Zf25=T} zWIp%YbIKlmJlC#W8;SYsw_kkmMU|gM8^(M_o&K3?Vq8zd{%6j!UPc@zA%Evt4mmca zyuO4nNF4fg+}9Y4vDIT32jbak#6iE5Y4+ia{)|zkSeGSW+{7^x=MX+dx27ldb>cDl z$AaqzOp9fW^%8;d%CLMAF+AZIc&pYWQ+E2#uQ0c;ZelqiuIxKdwhz9wPOiw*`i4{V z@f*jF9KUj`z_Cgo#!8O>FRrz6OitV>|4jGU1(B+ca}Hy$$AB~A;8>hvFV019+{bZe zAB;OWN6kJJ@n*fnhhrFyp<aDxreqwhPYJ46&gpO-fnzrEkNLzli2WcwZ{8cO`db`- zaO}ac5Bs_tZ@ln$p=2B!hYtZB%s=R!QS02S!^nq|@2rtq@&>5!B>V2{w{zUUvD5tI z!77co6H;!#xEANUWo~Y++9SesHRdJd#o)j4jGu!$H>!UBe2jhchs16s|IjX|dW&mv z+&{puhRnUZV4(cr<YC26j-d)tRr==*`JwEwu4lc&yu{gc#Z%VR%**4uo|3OD8m#tn zubMMdzW>HEOn$Qw9%olnUybz_<%ab(`&`Tq)~Bwx@SSbB5tb(X8~IP(8U3ykXeXII z+arz>7&q%>wEelR;aN`;Z^lDjz+IImw%MFdVpxu|*>+<srb<}Gv!M11A-(|Np@V>V zEinAhKfy%5ZkWh4n{huYDobiya}&@=tiGsk%^hyE^H$o{Jm98%QP-L$G#c^CtTe6F z(tY9!e!O&_xRn=maBa~)F()T^#^m(5<~cLcGjayBv1MoU%b7AQc}8MRml>&3vNLls zQ><NZ<ypVPoEcqbb#G(FWqhgsr@bqUuBy7i4<(SrAQ93gpe~;QAyAr}d!~Eln@AW9 z5G>dLu>_J}6eKJXB4SixsYZ(sAu8Gkk*0_g5D>y_5u!$9P%JnFjRP2E)H0+DrTc}J zrK^AXqkp<q-j8?Qd-t7v_xaAZzkT1jZ|yxXudwJ&Xo>*6Lu`VVgc4lGcHyuonl`<# zx!=rxX^mW&2Qv$y*CI5qc%a!%7#?O?9`r$kJ`cGW)9xvTz6f{c6<$5~<HP-%+cbhB z>Co40a(Hs&*(QuH96Y7CU{c<+gz)rxQgd>k(S}W!IDT?rUV<~pS8e}v@>Tmk`o@2p z-6a3SSCf2o(J<X4{~J%2k(!a3mNt0Uz|72ly=Zy=zr!PP_0a%v)()kjF=!@w3avx0 zql0L<*A92bIk*td!pm_DehXj3*OQwFC;iB1QcRvA)#Pomo17rm(lE6&osOZ!^bz_D zt)xroTKWcki+)6p(4#b9cd$}+l$~X9-1296HGh|1<WYVH{}$i+zw)2-SNX5|*9tC5 z#dD&M94haXGvztCUTsl()IdF4=jsAoZluk(Q|v=_tKDJi?NQrgTf10ygX`nC>*wxv z54gu&rCaKDyUXsnATH3sy#Xu?qPqfy{^&#UC_PIr(VJOMwuZgKQvLP*D3K;><!*UM zek)t4v1+l7gCC%S&7Ed~nPQ5}V`i>--ZYrQ=A`LulPt5^uC_JJKGfO0_5gVDmHp0s z58hn1ZCxi9=eoPT&U3y?bwk`JH{MNj#qL2@3f{fws@-c)-zsuPV>=8}(Gv6qYC!$G ziC&qvz<bC0*t-_T;#+Vc7I+9Aju+!K_-XP7vWy%d$H{pT0;EUN5;_m?{fuJPfyeT` zd>~)M-{kM}dcULSD#nRCQ6O5&RGBI3)W@oe4(mQz=u~~Xenda1EA&deLGRKh^sQ!$ zxz8Lj=S@Gm*1m5CxI0{)yWh=sFSsRcliTl3xO483YZJ5&x&^6#=Yzq#;L{*-b7>H0 zXCE{Ty@j6eHh9T+Fdl;!;GK9EK8WjaBR+x8;Y+v;=}h8DnDiu=2-2SnC!@$XQc9jB zTggRo4ed)Y6?7P#NaxTttT!WU5-Vg|*$(y*JH!qHYkpu&>@thu9bu(i`7OK;+!)e4 zg%99Ecm^NE$MS4mz<<Yo&lm88yo&#cujFg_CSJ$)@DF%BFzp(@oBy%@x!>rY^sg6> ziMiq>u|lj7JH;NcUz`w4;yT$?66xdsd8f>h_sOMlwLA!%I4A!hd#iWVXX=#lfrq1Y zkuK4X>T+GH-`7WgE7Z&~tIPrOrD-&st*{O_y3($*@7NgE&GmP8!Okys``j0<Q-A{z zOb8|g_Xn$j4Z+UfVgMz#LPfxXD0Dp<hJKB5PzibwEk%3KC+Kr@9MyS8y|Z3doR43H z2;7eM<8PZ$4U=9Zg^VO)NDf5e3*-}$1Q^a^8`%aPBjUtCd0DpC33{XcR!^}#T$20J zeed!ED6iLCz(K$;1dT+e5%zMuIbH)UCS_zWJx1Fx#LC%Xwwdh{Z_3fSQrCfvJr*WR zz0zaiR@58)5_yOri7aSFG5Rg~Bie>eqBw6oo=d7oC(weibP;`pzD8^5K2U&OY!sW% zD%m>N(@xyyo&9)!l9(yhiml?3h?bpYcbOzlsLQIY?x;KKcs(0<x>WDg-Aqrzj51?Q zHpJp9rpD|ryUc#`nQ3b~*>1Mhr3J4BJAyBQzeUzIE7V-$v<-?!nP>(YN(vxy_K}n1 z?<9sYnn|NrJim!2^Pzk^zZ=+*>JRnbZ01Ic7%hGfJET$LRFnG3opEi0uE8&Y5kU^% z_IU7o@aJG#u<y#5%AueE@IMO00UFD_dhfJ%0U|dVcfc`N;&J#PJR6tcIk+5G;Dxvn zSK;sQDSR3?fr?Hb_W|1TNCjC)D#<qT4e1IB+Jh!SG$8o9o}h+42Jui%E9gSHlbvTF z9>u%xi026$H+x>dYxov^hM(uH{5F0^zq23qOF>D?{dmz!_`-<+qDE{Hwc-PDR$LGv z87B+mboroMAZz3s@@@H{te3~-8F@iQsrKq;>IQYIN>WleHBgOES?W2p2ADq_lrYPz zH5*N>xnR23CAJl4Sgl(Z9E#vw6$+)nz)`jLFdjx8A<vM5<P4b)`+kg01SYL!N7yO0 zoDcOU`A_?2K%a=XUEgLtus?UVxtxd=u7-MrFbqIzf#aL;>v#v`nq7D=9!|2zbg}^U z?;I(mhiNoRVEtGgTgA??m-q^v0a@dIIYG@-i`2{ZXvEg`=32#}p6DL*4BCLIaC_E? zbzyPr26i*+&U!J;hOu#MHv0?P&%R^r_+6kJi}+^#4UhG21}=>CbNy<+#{a>O6Fo$_ zco_7eR&12p<X&}5&D1aH1NyLj*{n31fQbi8tPR^_$O%WR1??<_>{AUqi4;Oc;7%`; zgq}b(sI|ApJB}$)WCZyQd5A=E<a_KO`;>hF`UbTv8m{!S&GfRoY>3EwugII>t?*WR z>)cjAd$;?mt9M_!WA3!O=voIIg4p23phwU*pn(a}g7jcykQLdFQ&$R)oOVsFELaxQ z1&t7d$oQ6d_Ia#21iL(5PdYDCdqtcN_~Wx}}@dez=`ufYr9Fiyc)I2)Hh-me19 zX}}@S?-Y_vCX-N1t57WPK7_!UNR)jgl2i(5WQt6agJinQkRu`MWXWuqEA!=KIaL<P z8L~vqlCx!*oFmI+g<L2rWtFU!%j62s*>!TG+$y(27OsOl{GM!(U&}^$OrDabWs|%p zL#nlkRvlD~idFIIMio{)RHEvukfKT`qf%6w8l=)yh8n3dfw$QzSLLh8YN{$yGgOJ1 zrDm%#)d(>i4Z4!3({-lK(%EoLkq>I#V86DF_Lz-!9b61tO~kt!UD)+-iIBsEGcLuY xxj`=7Ww?<p(@k|nZiXvyv)pV~=H|F^R}o=d%cBK>76e)lXhEO_f&V)M{t5GqzHtBm diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t64.exe b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/t64.exe deleted file mode 100644 index 9da9b40de922fb203df6b9a1d0ad4139af536850..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 102400 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�vlnW`{LoXpTySn$@;x8yoz96jn?+Kk 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�?dYNUd4WaURX_A__M4W}D0!0n z7SR(e=lh+Vr^EqKYQV(ghEpn%^81ij&>v^w)H{5^yoQ|?r%v<sP^T5es?%n4SEmv0 zX=C~|^=(XQNOVLh$GB+a7-Pz==`viY{(Nr*)9KSq^(l%W&(V@+O(XGl?g;kT_=5hz z9Nm<oh`7c9iSOIW6HfSShL$G29d<e&gGY>NH+Pk{cX9uSFPLU`P2cV+c3QVkzP3P% zS)-Nul6VD%p~E{aEK!9y<CL=~Q8{NMDCfAI%2_#}_0*>1##0*lRD=zPQv-?|YQT)1 zY5;XPU|MqPDNTJEdo?6fB<gZ?r(7}0F|D0Wubj^@OPc)yEfj`dzmd?kXb1G&u1*Vk zQuS<ztLS0#LX$8vzcB6(M~D4V*Qd}>zJ8;+tJA%YsMCucR;Q19NSz+GStZ!vDhQXT z%NVU<$F!I6j0~l&=j$6xdti)87{~gnvYnrV2c=i~wtA5C*SeJ&m(?CuVz+SBZA^G- zke@#DF!#z<YK)zh$xpXXexxoR$9)H1uI=YFa1Je~g|^wW0~02(cO>m4TJ;{|&~+x^ z^DpJpJ6|yTufbp83x)3$sd|lzSG{iSkr$?U*5<JRv8LXr&jFR~br#I~lqpJG4K3HU zkO;qiBYLR*MN?J(8F{MzxGAcC*komD*|gaVG7~nShZ^8bh8Oz63#X_7VZBsRQ}4#a z2Hd2LdTE=qhki4nX`|g#zcEP-Vac&7nf8@T`$~pSlE-{I@0@;xQn&I2c}LfgH;#B| z|MVBM`&LO&$|3YQ$jP76uj273yBxp4d_LwQwmB>*MkRUqXn#rMDQQe%Lzt<@yu=gT z8iVxddo^=FzFr>+btqr|So*XCXhh!zP5a-f%aIor8KxrV;ohk&X!~B+_l=<+?5_IG z08+Po$Mmky@kyMTHgV9V2eg4k(+q9G26R^g?xLJciH(ki_=>pv9;va^Rifm9ez`yW za{n=XTMg|EuL!>$Ek}+^?5V*#Cv;N@-e~wAI3}(ktb4fXJ|-%)Uuq9Ea9oiZ7<Q#P zzNa;Hy&J-6+K>+PYBD20Y<`e7+g2#`8DA)!KJ<Y_Jyo9>@$`jps?V(n6`CG1V(A;` zALttr6T7KI%9uDtMw9lq9;#L9RlZMxdDd|eA3W5Dd`rI?rtKIT;GsU_aGPew4^KFV zQ{p%L7Z0DnE6`K(N+tZK`-m9bCc8^rO>7?z`u>Qf$d^aj0>cK!s=?#>slop|wKciv zl*T>{y($v(6Y?~_ObgF5?c0o5L0VkR0<oH}(#}8QU)DfxFX}0g`c6>2Gke||+Zxl< ztueA8IR4RX*!+@6{u7kr#U2%U+_d?tFZ|VeY|qNh;Zj549E9ts9Dk<VViy}O<x36g z8LoPciA}ZnTfFOj^klFzJ)YmB)P6pRQ($7>Sa_Floc^WnwBD^jP6(F0_;>ID-(T#q zo3`3vj2>e+H0b}8-z&A@0i|9G(&}`^jaz#(b#IJrh^mOpkH`y8mA+Z%)9<_<YRI_j zB8G&OM0CZYPUaoo#-nd<RjT*n?L2x?{=?4^z7YQ<(?`*VCBuKo@E`qE#kZw1a~HQw z_=0Vr-=G-PYlee9xu@z?sYkkeDU+@{X}|W|s6TU~{<IbP5yM}V;dZ;ck9N7C%XZlq zY4Z(vJAN)fzw4#nrH`}w-KHSTFMeIAxqLAnK~#RGj(XykwnF;-D%<Nw`qQi5P^y;i zOxu4X_`Pp3-?YtPN%W!cY|@{5R>bGW<(YOzd!vu<NBgwrW~SfAAAMSDucm}XLy6eD zlgznVWzH2A6|SPju_MquOm&w&wU^K`7Fq(wm>6`wy4t2gu>DukeujsuQ^V@a{1Q6# z8$w^}9S84@Rei%!RdBu`4JItEn~I~~h?{2Smth0r)Ie{d8d#J-zvxf{+sDhieq-X5 z)4PQE(PHLDKITX4iiTAvGfOo6Wd%YQoiF;9rqiVLm|wRuz+087aJJhyv0MMoppO$_ zwe9ym=erHf{&T+D(Bc1<^W6i(Iv!`N4?}L4Y2-0EtZ-+kVUg2|ML?EU;9W3Ft-#b# z+KAN4NFdcFm8s=Q_QA+mJQbzm@>N!{_zoVIjES06Q0kpjUOAmbe_62|b|F3&6<4yn z&MaS4RbEz{>8&iwVzJIy)>D+Ls;YGUB0Gi|<?TtT_az0%ekKyCU=r%oaBOqSi+p9p zlMvipR<Mv_sQV+PibSr1q_jPv(uiDNnYVP}_1@wc<+DnQiZd4!RH~oaB?|d-DRr&H zJ>6U6L0%;?!5A@%oHa`Xlt=@GJ{<~S{8g$CmD`r=7283lsm!wSs-Wr8tZA2J<%}IO zvZ$;K8AjN2Zzcb;$@g?m&Ma46wsv?m+*4doF{!eclwZ=gOT-fDpDJq+;+@ROQZK^8 zvgrs8L`1C8BXWuh78jpjUtvm7Ngd3%zCx&TbEkTDsTU%HlB#yfz7sif(E?raqO7Hb z96Tl!NKDd7JtQSRsdIQlc9pw$o^SsA;>x_r;wq`yvm&Q?%Pudi^!f_QW-dYsRHW2E zvCAnhzt&eV2|=$UK+#0Rk}NKn1r?k&7B2A?FZHS+VrPP8EmbYy*^3}RL0Rbyor~;R zR5ZP!bWvuxk90qVS|Z=dD=!tQspsUZbqDk7nzG09IkE_$+2sgmG-dy${TPnth=QhG zp754hB)BUxPpOL~#FVUD!Q&|Z<>ahLb1L$7b!FJ3vMPzPpo|mFSBZ%vjp+(8>1wVP zs&?S7=X6S@P0d&!66$QIHe37~R!}*Ts<Z`HQ4xejUV6INnD$_JkNO@LH4A3Z?L#e- zG>nTOkornek+vh;p?)CY*><3!Dx`?B)QeE8teDo?iQyU|r<WCTW_(mcPG)XF1sn{A zk=pi%Y2;KQWPFv>1Pzj3%@32JX0?l6O}MIA>TStKR}QLQdzmCIY2&m`XH>B9&L|JH zX!Tpu^7D!-wRC<_A^Za$Q1ic#SZ0(KUTc?oR|o3a-3jEa*5$vxievUON=c_mQwB`^ z*zO_3VwQ46<dhc_<&@5=<XAnWKB#$QTCu5^jXG|-dxInX+`&xcK$)wlMPJndiEN^; zqy$z|>NcTPhyJFB^XCgI3Mz|3v@I4N9cXlUL1n23EoZ3$<5D!GM50t`s+7Ynmh>a6 zn+&JZUbyRQIKu9`$o_wR|05Kr&Nt`kf{6vq$L;DT1YJ)KWv*{#7AN=9(M9~r_n+T? zDDWQ&{MRWEY;$AodTYcT!<2gdYUhh3FN@L#^Aq<|_=4?C_V)#6Nvo3iqWI$ZI47z1 z{iA_#d@(lcZo^ohxb@%*x=FkeR-l7V;+3vK?Btv+;!6FA{UAQEKbKF;F58@Gn;DXH zm}$2CbQ{V@An_x@)oC+5)$uF@I{6qz6x&7Y{F?krImCZ8pX7O!4OauDEH!-MUdt!> z;rxU?F?y$M{tZy_cMqSG^?p9__ZXj)=><M<f0a+%lOc-GD@ZfYf8#IVq(76W^Q6Cj zW2XKGqdxiJER%_o9}fB-%;dj0sgtsRJxZUH1)TrpjQ#IK|Nl5k<eh8gUt!^q(ygj{ z=%DjgU%z^gP0jn>GRSZ4HE`9hn~n;Wv7%bTP59q-_rbfJ#`%Q5tBx6~3>!Z3J^j0E z|BvE--(839I#s=Qmvt8#VV!=V_*eW!hnUKMGWFm!2c2r}!5<tP)5$me@k<B(-t?tX zqgR-asJ#hfcJP&A-%A*5L#GV~*f80KeQcOu!x$SX8@3%b_Z=)79<bqF8#dVR2^(&) z;lnoEY{Lg^xXFh1*l?o_H`wrY8{THa^)_5<!=*MXvtf}9gYnO?%`<G6W5Wy^rr9vX zhRHTeuwk4Hl?|;gO!*JkusZ{OSO+>c+V;C`*kHpgHr#B(O*Y(U!}T_-wqb=0XWKBt zhN(78wqb$|V{E8w*!H=}XR8e@8#dYSfDIdMxZ8#eHr!&vO*UL_!)hB=*f1D>zHQF4 zVTKJ;Y?y3AWkc&TlfO4?__7TfY<Rm3t8Lhk#vRE0e;lp7@c4CG=LG(@-GvU{MvILT zyUu?`q_J;|F)%OI!1Z={^Tr!9-G-jyy1N;3u>4{#ziOHM{TqLs%huW4IqA;soz4HM z|9>_7zdQcU`RQ!#oc@2z|8G*@yY88Uclt%xzhG$(gq!xd+lImRKGAN+Bk?F-uzy%@ z_Y-B)O}PIqTxtJqv*WF><Na5m@VDf%GoL^34>Ml;pMtX1l%LF#<fkr;k|pl{xgV>B zO1@<FnK>?^UgvwbcbIwu_yP;~8Q3=hxAx`?BKQ-)p?#16fTsX+_-+Rmcrgp>6z~k- zaD)q+PYKg7zCY`9>=S^e@`?Xc;1s_6USTQ^ID$od5qK)FhHvnxVd@^>+kAb%4*`d8 znL_MSfO~9wFYuky$$vlm0GACk@e3T|G-bI6IAD+oD=?E!^56#EZ`*GIzGmY^XOOqS z@Sx-k_)EUs;P(J`^1Tec8yGkX88)~YN<4g@gKq*p!?(UKet?HlNEdpx0k1jRlqDZH z@Enr|C-4>IHaYk?08AaO)B<pU@9;GxQ!d~&BiJRwJ|Ea0#*;c406d*DnmfRqz+dn+ zCWWaD!0=RLJbgHy1iX>6nJM7QfIs4svabiq^gIW9Iot8tIO<w(;MVi0FYqUTy)PhL z@BzU27m_ac0^l8d63+%;k95jTKI4Gr@JZRdz}xu5kHCj*T;NxHQjZB2u@l61fH*UN zv-z69^MM6?hrla<*YR24Uf{EQ66aoE$#_%V1;EewgjNC%O;GAX{0qD@1KA8T*$7N^ zQFr~JE%06z9jVxF0^XDb9l+5grZ)3Q{7sXPIe847=Kvq#lRQ5RJUbgc!+#p^YCiFw z4@{cOc_i$U1@h^-05<SRSb?8i3eVu@bD%HB*e?a<<{~?zy@(E`IzI7#Gw?1Oe*ze= zaW1H+v3vvYKMuH%PtvLY4xD0eC-6^s)H{AGV9%*0&WnI|AY7Y`{RZG$e3E|)*nfuc zGXVJU<&+UWt-wXI@B>}}{LIEb2VOth*e?S{BA}D@F7S_hyTLaD&%V;oa5!)&pOi~r z(N!E}kvM^$^QFQw0&kpS>hU(<4Odey*e?S%@JSg3-ggagVZRC3Iv0K$Kt6#z^9}DM z0IT>UEidpEJ}KjEz<_PfC3JN)-|fV+9{6{@P2f$yg@u#_yc+m}BFX|@2E3`*q`MaQ zw-WS~Vt)X5&H}rPz$xYMANF~`Yb!WIDPe)P^65MP`(J1L4*-6|Hyplg1rDv`zC3se za1o#6A9YtMs>;wd2KexD`eFPCoV>!slLH*Kl70jG;lLTyv^{Wv7N4XWxr#oMZxi-= zfnha<Zjrz`K508Q13k5d&H{U^;jts^<A9lbk{>s44WGoh7P!&I1y=mf#3OLyTGJ;8 zEMI5(w+dj1pRt3!dI50G&8FWLcpIP8ufV-FE^uW%yn+9OA0b!Zy9j&+@aRto4=(V9 zpTVo(jll4q8y-jnesu@=5I?|Me?dKh-v<2WFX?l@KL=KBPz*}&0C2~zX@lSb|9m&? z3;bcA^B&W03q0puV?P{N&nGn52+X^We1hi#WA5iXIJgt|555d=4ydR{_&nfSfUooA zfWHC!l27P4{I~S;zgMaZd-NHqhxjD^hk;K%K%WBM0DP5C{2u`J{DYxe0x<bc&<;NW zf5oTs1}xuf@Cx8&J_#$Z=0U?hwZPav8$1qJwiUi19)XuWPX9@tnFBoYFO&;>Fwn=B z555$5$xg$Q9^jjNQjbl*?Yr1-$IlL6-`yq;$-pIil82>&KT93qXFV`#uToEdCje*i zNnbr1_-h;A2z-@K%5?yE_VXqW!+|^br2p9sJmWR`Si%kl?&lNUei^vpAazY&Q4Rc@ zPx2t}j@PMo>~{e7zDa$73taye`v~9y@8OeiP2l7v({^%z(TAv7{KNoj_+(ymJ23Tq z`Yh}P9^-ohT>V3-QGAkaDzL)F1^(8?w*V6@`Vjp00p8urSO$I%u-^xSB@Y9Dv-r6D zpwMfnZV-ELxrZWmR^0dzDEB?Q@VP*_$04{txvwF91j@Yz!3D~_1HlE#{Q$uQF0gUA zBOvGd#a^JCsTW+}E*ls4iH*ydc{%Scegw*yR>1{k+jt&O&N_>|Ksoy>`4lMUdc|I# zoTn9BpqxDwT%epQ6<pxOHZEsNud#8c^q=4Npg^Sd6QLr2DX@J{U<FY22-gAu`e*z_ z>vhjY>}7qj1t{Sff#MF^R!0HxRNW0g^Q(>qrUC)_XW|LdH#j|A*wb26ei!x<c&Rwr zzhFFKTzeAx+fQP@=_K}BPGZ0NB=!eRVsCX}FLKy6>|<_a&IR!fnF6TR+Zgw;51NyI z#{4Fx-P~{|V<tomx~JTO`;c~X;~vZj?dGKi@lV`A|4o0#42^<j&s$-f0c$s>;O6AZ z;A6JH-;@7FjvT2jx#SWxYt}4PT3V`nKA)-<@72}(uU5C;e!IH={`=L|ty@(?LxXzt z)mPQAW5<*%U&WX9jG<Lbaq7o=tGUy+Ysr#*+PE+9$<gY#qf3@7TP7Yp3G6+(FR=Fr z&bu(jVEBZvn3pUOv$YQ;+}ez7K*jLqlfcmu?Y?ALYs`lP4(zneOZLUIN%)cy;+Nk_ z@xOOpNy$Fa*Jd4mNeNF_2k^5};y;SJ{P3gwOL+N}9l?B*^!M%5W)hM3-;(t8?+EFm z;C~<aBes$f$=}g^U%rLuuz1k<Uww4l-lKaDOB`Z8Hf>He9*&j~Kjx?>_VhV>!`^)q zp+x8tbKnoFdJ6&gwTbzgHDeNU_U^;S&3GsN-~M8Bn(?5`ZO`w!=ZpvTYQN%6xDQ<y z1=<K6r~U8S`@-Eb_O>0}SKT0H=o9#6=2LA)wX^t#zRerj0@_*AU!t&#v-sCa&<_}A z9ly?-L@x2IwSNuTsE!V7SlJX&J)xSVN{253Jd97X#z~;Ki@%QHB%ZFmmDmTWRTy6c zUo@YCZ(u<9Jb};2_g#EGZrnK5WoRUwK3&~#!woubK^|Yfe!cqL?|!Eqe)wU{<FCB( zihA$8_d<MLA;$wY(}!+;ELu4I#)=yQkCr^8RzCH~Qzh4ytCdty$y2<y_EgJUIN{or zAAd3TQIM5)zQ_AuUzaT3^WMyvGoLES8TWhO+-oOaHzg2wWNu(Z-O#75nmJdk4BY+H zBQqtwtv{0ZR|Wzf9XYaDX)eBzxz50WfrRLR0Tp3?lpWG_{RRDqfB77SPC}y$O(!~{ zZ}|-wGDHm<HVpj>scQWA@yg{wA8dBErrp%3Q`O~{U#_mW;tF;3)mN((MU&M0`SaBe ze((deaN$B#S&5!e`j6$ym#g3SCaB-vFkU^hB3;$Y&r&yEo2hOqcd1`iW~jfcx={V0 zI$Ql>)jajs?G<Y0k1th?cVDYgo(!nrPY2ZKodGprM?jtXY(QP~LO{)VKA<vRMqG9< zpr*bRP*r?0-wCLz{t-}xD36=>VL+`~wMy01)u~%<xkdf_=Ra3>+;NB6uwjGRxN)Pp z_uhMT{cdKW{KzAZ=)UZUC!SC*ZQra`e;QDav<B2O&pe~{?AfE9fBt#3fB$~<^2;x) zg9i_)H{X0yee&J`_0m5B>g~7R)_l?2+^jzT<OB8YmjTt<+NzEmIih(*$QnM1^>ZF) zaA2C4^~}XL!#p(ho~`g{pqCmS7_F`fOjXwhu2Z)MZc&c}9#k&}_6Pe@)ratB<T1Wh zC^ddP>x#|DE(kxrm9a9AsMZmF1L6Nj_y)qiNcck?!k<O>j69{TtYGf79vRVQ=A(pv zx|R7e;SUi0?}UGs@Xdt(gz$$ugdcSl>mL`qeiid#FY|ELXZu*ov~H&nzL=;22S%&F zn^RTb&~+;C!7VD#`k)FN-XF^Us6K>0gYc<@znJj3geR`nQo>)Kr~>OotH7_Os=%MF zQ-N)_5a)v`@ZSFR@Jv4PA_?D(@ZAX?OL+R9Rwgk4XD=1Fc(e-4nW_ReT&Ds*zeNQe zeNY8n-rpWx^;CJPFY}#2YCXE{HluxXADrKc?%qJ+l`1g0LItMYqypD%P=Q<itO5`2 zR)PI*bqMby{CR}WA^beTFD3ks2!9XZA0qsdgx^JY(!Avj!oNrO)=>E2XsfuC7)puZ zhs1C%G3+3Qw~3)OF`)iAI-owE8c>I?3#cQv1k{%g2GrO41EKK!2|t4H69_+z@P&k5 zO!&2gzaufA?i(FY4^IuKr>_gBeYXVE8xICl%l`K8F@zTiBoV$p;Rg}^EW!^b{Kbg@ zHG6bGT{ktLZoZDVZV9NT9t^01``g1G-!;rNzmArfnG;<TU2biab56>T!DpOt)+Hei zu8EVgv)%5=nG+_s+;c~y3>`XT@Fka=IoI~!&c>Pl*&uHB++k;nhf6MT+U}EcGqWa7 zAo{FK*My0#xx>Z7kRfLbvfZ<DGhCBhneI%&OU_0PA2#e_JCEXJa_;2dZ&Lr{zH>+7 zL1Gwu#vtdJWHMXgpFBBx!sNN9_3oF9J04PO4`<CK`~;UokU4p7|K7d(8F!t>!Dl$h zWOgY2xk-I`_r7$zj$oKB<sjV2zgxn)Cga|x_i2~fdCNIRvOxH`6I{8MO`e=JdG4ta zLBHg_eNTytiyM$5c@%e1>Yhs~b5A|a!(1VQxMybNW>21+o0U88I1jiFJx9ksG1omg zE7zSn>GV^R>?BBG?%63LawxyVpQ)1wQf=-<$z(xH&`-xdIz1N>=VndL)rHV`4AP(c z&vlQ^kSt8j&7FJdq)EMd_ofgb_qpeFo0~BzizF_?{q#wbbSVdf+%p|fj<lYsS(Dwl zP<hfoUCPrY+3YdlLYHeygd-|-!ra`sx!GB{CYN*}=9is0Zer%B$gtSUYzLuLwwvzC zcAtB}sD$p_!om_g<WRDhJ9z?()b8#&|J>BE-6LXpW#gDR5ndiQE;F;;eeT?et|{p~ zqod9vh0M7Ud$zkh{kfUKcT>{i!=p3AJ#zx=Iyo2|`u%_Hoe6Z6)wRbjRi1!VV&7{G z6q^tf0(lygA^`#k5-K=BwMB}y8ZinAVTepmAYrJWAVaklp-2V_n0phM1O#Q0D#cb2 zL~$rVM2#SVGBhf(-~V@VPrQTx0eo-0x0YwEopZl?zwewqpMCZ|_Xhq*!BWq^=)$gd zbi6U8t#qy8V}0&h=ctQX-`GKX>=N-Y{7-Xt=>1kLI<}RmM1JhXmwc~FlOlHM)Ur*b zk0ZvHpu2QvbL`Wyk7L`7#|$q2YHPB~>gJ^EP;jwEkW&t46VGL9jLKkD#d0};luGg3 z$>S6s&)t0U%`P4pm2quF>@jax`@n=godVMbbqp*S(<!iE#;8E64T>q`=Q_V-f$oYO zh#7{df8vQJ0yAgM49uD}E0C9$7nn0=j*Ar*FJA28!4)f31c(*3u9+8@sd!_7VukhV z*9TsG^;H)e?Alop*tv6OVArl)fjxWn1U~)r)4&&>?{l%ip+koP-+c2;VA{Vduu!qW z>t9Fs*~Erg=vrx^lU+{jrG;*|7P=`~=;j74vL%5lZB^ixwjnUkwgjfxdx3@aq1Nwj z*O@?~7Q}ARdR~j|)c@4;SL^vyJ%62^zfI2%)br!@{471cNYDRG&zDrJGvCK4V&C_1 z%KytarGB8i)vsS)Mx<P7J^t2@zAP~@u^F#o>(`I2->_Ls)P)yPQ>_;lf7xYCE=#;9 zs&3N@bX~t;qb5ys??q8Di3y1bfd+BS;u9~alX#JCxbT7te%7GjW$}sU*NOjG_>I`u z_-2W<YW*-?&ouqfg%{M1zPMT9`L$}*sa><?51ZDlTmRgDtKaOB^J~@Njl`&!AD>s_ zyg1#Pn0QI;nvDOG=pX#MuFh{%r*`cG?E@NK_S173=u<s%iLNz&LWBQk(kLM@F`<d@ z*Zj>A5-v?hXqe#WYoHdZ*07<w3}n|;?c_Y&s94!S4fRzu-uL%#zn%-kxSU`>;d$Ur zL5)DH{+?C)fu2^x9#F(y0X6lSng2K1iKsu>+~9k@;KwmBF%8uNmkJu!u3cL@ApP8y z<CH>Zm5T%y2t3F2@;hnphjF#LsaAu(Q3BLIcJ}Pqw`$#4xo_XTk3ReCvyZj*?A*I| z?}zG34jw$XPy5nc@4ffl!k1rud7{qwBqS#%OY@Pw`>F`zXm{o0b~^k+)-23FYTUSS zBlYl#^m27t^li7@mU6Y4ZvLtAh*PwWw$-aw+s7Y&Y+6rEc^48?R#H-8+J76Liw4sk z{GX+zrJsn__cw3e{M6dDYqPJp=9(572RStmTr9Xq04~V2P8fI%kNNB;f=dJ!D_7B? ztgP%Sz1G56ZT#zr->=CAf6f@KTD58ne!|P)zj5P6Q;yVxpDka$+~KVpl6~~iN49Cx zCR0wq-N!SE5qN)>o|(OH;lh#2mMt5pu&>kDv17Xq7%(7h^5n_g6jy^=Q$fPT7hl{$ zxs9GzU3C?_i%v^Ri)UQDJ}vwY95`T#Wu`T1)TpI+IC=N(-KLyw1)pDg?KOM*?YAAC zl8?h3+3eV{!`^-OU3U#l9u)Jq*V4IzpMU;&ne^^!jamBDS6|r|Uwm<3>(;H$eel5t zC7SC?o)Mjo$=+HDhsiv9y7()eGR;*1;O_yxdO#)~z#m@G``26po(_8O@gSVdgJf<V z{CmDX6Z~I%@x@7!W1Mti9JH)kx6aXkekk8$$Uu1}r!U}$O~{5_zh%o71F#L`L63c4 zJ3RBsE3Y^jkfH3~kb`pdq;M;muD{m%NBCSee3fXZuKm_KeE6_w8FKocl$6vMJqD10 z@@BSj<w}#xO);~xVPt?zlvi^A?i)62Fl=Spwr%b;G~ff!H|zu%f!k93KhKPJ%u-%8 z`}yC@68~zJp#RN$#Tv7lH<}fGXm;rE;VrTi?7uqA;lFCts%e*AdTC3=@RQ{)P4aLw z;B$}xe1#rl0q(p;{@b^2cff0S4!^+{U4RzwhX3ej{-<VXZ<?iUHfyUCd@I!qT5J#v z>&=>phQ=?L#jP-#{GMt9M~-l6p*qdsFJEsSz~6(Hh40VAPOt;?<<{+H*KX5yIkt-b z&>$IH{fgODq9OAw)jN(T-~GB-^Hol*_E!ga-BV9_QgnGzixw^7qzmJqLvnERcsl6e zC3*z^tD*zG!*gVW-k|^ZUG3Q%LS2Rb_3xI`aE-n{*<QG|5e>>G+W^r8{(ZKXUHW{v zSyUH)tr_P1Kl-or$N(=7dhqvpj{YML^a|bZv|!`t8G4Ux_#V5U-SWQKO`_pC>Hjap zZ)j+@$*lE1%4ujWTTq_d;#a%d@uSsg^}t`gc$#wjEhUG^*cra1Dmu{jNSS!OqKE%{ z&bq*}_?gJoeV1$$8vbe4MKp904GZ>0-f_a$pX-wuCm^QYmtTHqT4#;{Xz<|as7fZD zmPk6j{`zZs{kd88ml4<5jDackME_KWSkI5le*J;jFL#*T2n}zC?O8gL?Clw!Bzwju zHI^M<&zDP|u<4_!vsFQZ!(Z~Aq})ZE{Q5X(!5`9l8tBn`^tv(~Ucb<FbgAU;OKjfI zWGfil&YsF@?`VL4-+p5Dn=lRCO3ZE$PMt+Vg*`(<*q*PzC&{N?CZE($G{h_~_pKUc zbR`-b{&8_}75-mqJnQ^%^1yys54=3E2d=%HfWQ2nt@+d4795^zbBDIGe9<sVG|<xJ zKW`TeJ>=tmwbKk5ygfsMw`Y9Pl`o6$FPb%l2Jt`kIkT?vQ);hPg}?m0(|_68Wa1%g z&eP#(K?bY`kuveL(1SmI^4ZZHtoXsURwx?&A{z1@D91l*pV^&zL_?|Bt)c;Y#wT4T zpXBWs8oWJ2gSTgVQv6DX|Gz5ZkDal;D9)+?Xz);(4sR=wbnqG)Xv?x&+oBO|toXm$ z+S9{C!;p4%X#Z||OXds>cZden*zDE_d&VbW&mCk7_@pHHB-Ur|lbWnHYgCSZWxrGp z{1x9%YT2@7oMM!5(1Bm1M`xgen1>!(c#pN#$7OuRdP~eeTanY+mX2y|3q?bbXqYb= zo`15x9o#47sYd%mboP@>l31TbgO4$qtSW!FGXL=xUjN&)Y10^4c)(u48{EL%(}M5E z-?Oj5Z?aagw$WCNNwVie!?UB>*n$ylEhHK$+w&jglcx3SV3Y2@#wPUXXk+i~XxVqC z*~Gy;ZTnlB3>qS13}?^sNwli)m%n%VFMKA0J9yE96L@0}@Y%}*A0HVX6AwWn`v2mD z_V$8kSS}itj1&#B1?(9buxEVIlk%(3Fcli^yT-=%77h2L*{HiaIU2x|7=!iM#~3ZO zzNsCj|M(2nFyaVc{`~nC3<iz3)Pt7?{mJY^d0E@^RJyGl+sd9FEgEDCi$%jTVSC0W z<qd9cvj(-d=>t;i@yt}4(zk<66b%oFhB2aHq-da3jxl~G+fX~s|A4=A!Rf#BdK|Po z^w2{V3WXd!o(B38(E&~97SEQxzS!1{Yh`Oh!%ETM>{&G6le|6W$|wDKP>TI&K&m|^ z8YYW|M?}N#rAMPP(j21rqz(}=#$wsM+Hw9L{Js9SZQHgnIDn^4g;dahTq5Z>87<#@ zbHv_XJH!4usiUnPn`A4)_KZ*R_B=;E2^waGY50TmX!89X?BPD;G=Qj!F%)m#Aebe8 zb=2&YO1jTwJ!G!+cbd*IT$h=dxe;8kM{Ho!s8NoFNd2lzOJ$jGjZeT9PSxI8UtAGm zV9$?+?YYu(Cyjr=AK7>A+!;C8(@#I`VlQGE<p*rYkRcT`oQ#f>$pn1xNlWlar?O|! zK&yh+RlQXYKIyE@TKP_E(xi#qamO8|vl&KQmz9-e4?OUIO`0^x*|kzW&hHQlRYeQD zXKlb&5epHIvLB#f&#%oLY)8J*exqQBTc0Cij3>kPJXN+ps|s2Fo^lm+73=>>*AD;7 zFTeb19qq}~zu?}ZINHe}KR@5PcI|39TV#(u`lzX<WRE}oxWkA2J^Y3S)&kZE^a@}P z0}c37^pLd>9<864W}D}M|6$uWXUMlPhHQZt1AE3N%@}qg=$~@`rQF}cDus?lf28Zv zwC``Jb1)&<u<0|?|HL!dgmHcS_1C+&N9SRj{{(k%MMluzf%o7yy2n0;*bZ4>57@M` zXUT!}+1oQdDbk+*zHBye;7rf!ll84zw|-n_dR!iaxx=<>I-_VhlVr+iS<|LXO|iAZ z1w4p1A^{pacsl4A4?w5<*!b3e%(}~-|9z^~=kgeX^*K1Qqb+;vUVHbIrFQtxp)Hbk zwet@;OKIcAjXR(-N;YQ9m_t2#_O!lz`#QdBU+HuS8n6rUKHvr&m1!Xd!8(lI6C+_O z<ReyVKgoN<NURgkQbiLBzTA$yPB;I<ShC$*<tR%YeDJ}e;Hh(?4zOuYL$hYhOlQ}e z99T2Zd14<=2l#?NIuD)f4d}54Yy^AoGNDHYiB0_4!`_?yv-IV(@}Jli`Y&C|(|NHs zuv1mUZN!KXP7ct3UsZ0|di3bw-bV(|-~k%^zLz~EF*bS+p7iJtw0ZsFePSwNZuycw zDED-=&KXW&4{;{=qxS&1M7|lCz>S=<&fYou?bxxSrKYBuPNz6I@Hx+T8tA=Vd6{@S z!9Kv<_vjIO2K0(J5ZU?shVZA{_CrB+n)9Ecdy+~3apK`P?D>TkUT`$PAM%E>4@X0K zdb-_k!wpWiRFil3!)tgBE#QqE;D30ZJp%eeti4)xfDK?1jEfHz?ngDwxajEURLMPG zd8bk#P0fe8PIa1#AG{6{|9HNFPf1CM!$-0;#TJ|@cJ?57oAk};0BaO{=6--{Xuyxc zQ~dv;MT@MsxY(_M&ph*tdyX7|_*5$2_FJuyBZT`py*FM+Q}?KD{iYuH693@;Wsj4& z#@^_`1-auFq^B;HP@Tm2R@u5+-|#i)H#!IY*a3ElOwbc#Kt7Aled9IbA|vF%dM<kZ zBE0dN)CsHG9R6NU=_7R*8a#j-bfH7o!uavyO+L$5rz0D<dEgoR48Dkl{;($kz#Y0~ z&z?<=F;`!UKV96R(c$mofAM=9G<d)0Y4J4B!*6_()^4{?K&M!1Bl!!iT!TNd@i7E- z9rPYug6G(fe8zO)aVEG|;2){~_=re(R3#JWBFBFF?YEoG<vRWLJdf<T4_!jnd7m`^ z+<kpSd!$)sfxE+>IsE=tYtLl#k~IiAutE5Q|G?L=9!1Io-Y#9b)Mm_>;q)1Pdw_0q z2iqZT;u@V{Jk|pF%z66hgfrzkxYO!^Pvp7?{vM#g!^vdA7&;T}#zDt;2HL<E-C8Z* z2`wIX#iw)6P~Xe3{`RlS|H!`F{#WbwIB0?Y^qvlSPX|3b#lK(+0J7md<bdzQPLUbD zh*|<QC}@H2n&V9T%(oaH`^w?(^<S|<WB3G|OeVzl#6QqQT@FCE=wEv2CFghH0rrZ% zgFkj4eVn7|&sJw5DX0fOeg0E^q9XqT4XmBSFZe(7fc1#A6CShYg!jmSSisAHYkWSw z7C)vvg{y0b=I<JJ=y3WUsT-B`++TaUjqK5NuDJ(Up!4t<8qsy>(NV<+rIHovDrYQC zXKez%Q?(!I2F@V-PXcpr_JMO6XWcAEi_7YvLyrW`v!f|Phwjk#bM}|_dgZRayZ)T; zcs0VkzWt*4)XuW^<N5I;@Xld)U9SoEJI<!h4&!O%eT{H`PPjiW+}92FG2uQX+-HY- zEAMO2#|xiWL8{;k&uN{jM~QC%^!bFbq9i?9pe(o@7DP6#si;)W2Wq$~8*@c#FW6jb z{&g7{8NXD#pQfCD2fg21K+OGPL4}?&_CL$ahN#xl`OWeg8@XU=3RkJNbGvfGZ+_uW zIvEbo+Ms65nys|A8z`GD!=EYUJS2bniPnNo<(J-3e4ej7*?o$E({%rpf;hz+`|eeZ zgE|?x&{XAbsd-Z`e&c}IYs$*$`$)9UbpMIkCGz0~nzIc5iH~Hz1P*|&VT5D;qw=c< z<a4*kZ?0fqYNpg1sdG_ZAtz3KXzM|<O`^RTwcZ%~wDJn+$~|=l2Vy7oo~)1fb=D$$ zHL)yl3ZL<scAIKd)I6!RQRCtK0yQe?JJkKDvC&RMyxxyt51>70ruGZ>vHr5IvCm~* z;%Imhrr*U*<s+8=rC!!kxm)Ue)XJ9ZkNmXC*A%fL^})^0evlXe00#j74!{%Eue~3> zWAny#cXbK!;k3K<s@}D`yl#4naG>tX83=Ow)O@`@QtzeCn5=&5u{s&Unxg${y5ijK z;NfvW{=~rG!uqrF$$l=UP0g8{yq_N&ekUBLds07l`Y0TzwNc|iAE{AM>!eQj8`+53 zhOkUxSjUxj$<+7n?qh8RJPyPh@Pyd9cvMGM>!UtH9+Ae}0JT@@$JG2H^^vnI)M%*n zQDZ_M6JBtS9`^GS2l@IU>nd@YkKa5lJV9QWTwsCnnbdssT{;^r8;isNee7OIA9a4; z*#u{4(8o%3x)|nHJtbXvh3=7fFgJQmPov&Ojf8q3b*iO*8gR;*;qI@@29>DhDI7S@ zgH2GgrFr^^D~1mro|&DUeIGF>;PD`D0xxLf*Qqs8<DgbXor(Gebuwy9)HbM*QC}L- zs~nyf)5pNU>7(kdzV^*{k@MpN0Ad>;5)W`e{%gml81=42!hxJ7xp8VN=p%J5>MPV5 zU5zU||H!+4!BoyBygs%QAJi)3Pi&?-M7q9r*&ScNexLXpy1@k=&~Gm2<LZXgtEk;l zGo<!BJ6tcsCa8~4E6h=i%JYE9B7HQqTeS-P$F}s{-c0%b`>;j)4*LT3cJKt>13wOy zzHJ*H>*neN<fqX`YWU=)y-iSOqSi;9EIW(?lXWX8ujAjYx!?O2?^O7p7~)HG5IZF1 zrw0!JegNPBpOC}J+Lm?CxSA=ox^cpRdTFJ0od09~i4!NLKlRj8-Kh-`kAnw1XJ5^p zn!G7^zzh5lpV6q_at^@TL{<98ePLazs*54UR=y%r`Idh0Vak*#&hO!OS^x0==mPve z7nvJeXxPMOJKwOqJKvN|RMJP;1o}v;YGSYd?8nJ-kkf_7?5|{tZoh?Xf|Hj|q->DI zU#E4m{kz_<eILB}tv<>os9&RxGe`Y~>8o7-<y(ojW0+sHi1$-ci0X#A+O&RC!5(?! z5x2hsC;TFI03PrF`M{e4rSI6QdH36MV>`IB0A3&ShyTJB{c(Wp*`?s*TU|Sb4ei^v zZ=rneaOhASv;SRp-Sx7*zis#5f4|EE>x`t!UHH8ZJcl3fpZy)W06)OLa$`*0w^_Os zxz-*tKNqTt{aSYK_JOSR)McnGDb6yT`*w8u{TFxu@B=(5%Le>dx9}b8OEvt}0^+-q zwHWrGia&N!OQbHL@0l9;S8y0OaG>Km{(yCmvAqs37k<Ips@91ks>|FfUCvUBbX1da z=IK;>su*}B-cRk_yZ1}fc*xP~3;%{JsIO^VcJmMqz<1^ch{=f2e6O|YEAjI|jWt{K zioKeft-z_8(?4vGv54*9H@RGNkX$--4eSFveeMbw;1_rfT;K(M8=ncDt5>g{qKPj& z)#Uoz*}v+y>G~dBcjjhH<O~k_odDDC3fN6I-Q;is2Y`F90q#R@h?DRaoJ&+LJWu1Y zSEx>N{ulqFbM*HyUWsz@toisHY76?!0#{?kF2IilAAF9Nc$u0Cal2^vvnH+X+~DWt z_xcQ90q_8rkM&5uk>Gp-XH}scokL#m8oKex%Dv1z&AHwD%p+gp{C`z=_!wB<IWT?S z(dCMX3&}a5k7qHrn;&}p`im|>FJl7uJZuizhE8;h^E;fq(DwqIe>g+BnVS{^{gwG1 z$$w-3;Cu0X$XUM$f&T4PKI~zQLH^`S8{ajFIzzy|PUYWDh}V%AeP_2u#rJh%a>NTk z4MCt9z<vIi7(D`{=sgeFdJR}k6~DofbKLiKV*@8@I;+LlRW|8k$Jw)IFHw!=uzb{K zIv4VXxpU_p<9Ad8*rzf27Zw(}_jS*?1qB6Nl+RvOR8-{T>DMsiET8^n<Yd&-bpDw< z>(?4%hxG3tcF5iseJ$1=<QBzsoNG+c-fE`yfojYA7~G3a6T|s<#@iIW><;al*fWts z*sQST=Q`J^=Huf4^#kU@*6>RJ`pUDkbZt-A11~EN$=rM4KZn#W#W!I`;7aU(Zf|;i zj!o-d9vk)w@88%zvVUc-z+R=f_DW9*FKVsq$-y1{XWpkrb#XDy0qwzN3TMV(FV5bJ zTm<_*_MJ)EcaozfrUGyL7L7d&d#J^K9B7OY+4jiAlG7oNz@82MAt%-#;vm|}hdQ}< zi~R?C5B5I9y6iVXe}32)gMD~s;eq`0+cU1tjSqtlJJ#pf(wuf~KS}IP+|Is%z0=5y zYuy~Tl$g!ezE<D!w(RU|cSeM|8nQ%RJpbLz`m<^60vGp>)ZQoDAof}Kr**;kEoyR{ zAK+Q9a|=hcx7|CoIDWE+`h6ca|3R-m=pMcvzk@9G-F3%Pd^NJ%zAoPujk(sH=bkm} zdfT{S9@9VTpVxO+T&#xwLT~Wf#9YV&e;SDkuUX6ev-I5W<qz+C+*P7=lKEMW*e5VH zepzdOcI5N;Y4Bzoc%jdoJ+Wq!PvTkj*{t2F#T@f2<BU2l)FDa`I42AN^(O*<5BCFg zxwnQAnX$1^>d$q*xTfEij4Hq4_tt)(&$y?S`?a-m^jY~8zqNL*e$j}lSoce7HN$u6 zO85L*_|91OD{JQklGC%YGWy-scX;fuetk2u+QkhXl-VY$SMQ8|=~<We>(gsc|E&J^ zJaBoh{{7mdXZ5>c$dz%i{n9i0+>?>z|Ep)axGS${9@qYYI<c|I4-6Wd<^IoYHAibv z{+yo7%IGy%{}yw&8z)vRc~Hi{!I~xG?rwwn4AFmLyf-7O;={;~I}OvL{KwN9GKOUI zjqS_dc5&%hT{4ICzdvJ8T<qXJ9eVZBzw~SucTalXtc<w!$%z$XANz2{_z`y;H+yp8 zF}NltRuHYnlM_8Z+jr~GtwUN`mz%Eb(Ifog`|IzHANq+O_vPN@`D^kw<Zsgd_}QP| zydbFny=Mb6KX-ZVhTLtrrMYFfweq6#;`5U7I_LGs>zy|&Z$jSmy!m;{^ETvd%PY+* z%i{+g-@s^dqjGbeo?1A)Ft>1i;ex{Dg=-2o6mBZqR=A_Ev~Yi6Sz#bpD;O1w4#o!K zgUy3U!PH>qV7Fk8;GMzV!2!Wx!JOcP;MCysU~X`Ja6xc+a7}PSa8qzwa7VB#7zou0 zMTMe6v7z`-^H5SKHPkuOEz~1)XQ+2*KxkMfCo~~6H8eex8=4<l5LzBu6WS2k6xtTr z5h@Ms50!-iMYW2eilU2Ri{gu#7bO*?7IiLKUbL;KtSGuTsd!lN)Z*#IxyAE~7Zk54 z7A>jz?OSyN@`vT;<WI<-o}ZgPKYu~K=hwFU9pYJ8exRUMK~zC>L2N;MLGyxc1w9Jx eEa+V@pkP=*PQiqNsRh%;(eK;$9QeP+f&T_bxyt<j diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/util.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/util.py deleted file mode 100644 index b1d3f90..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/util.py +++ /dev/null @@ -1,1755 +0,0 @@ -# -# Copyright (C) 2012-2017 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 socket -try: - import ssl -except ImportError: # pragma: no cover - ssl = None -import subprocess -import sys -import tarfile -import tempfile -import textwrap - -try: - import threading -except ImportError: # pragma: no cover - 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, BaseConfigurator, valid_ident, - Container, configparser, URLError, ZipFile, fsdecode, - unquote, urlparse) - -logger = logging.getLogger(__name__) - -# -# Requirement parsing code as per PEP 508 -# - -IDENTIFIER = re.compile(r'^([\w\.-]+)\s*') -VERSION_IDENTIFIER = re.compile(r'^([\w\.*+-]+)\s*') -COMPARE_OP = re.compile(r'^(<=?|>=?|={2,3}|[~!]=)\s*') -MARKER_OP = re.compile(r'^((<=?)|(>=?)|={2,3}|[~!]=|in|not\s+in)\s*') -OR = re.compile(r'^or\b\s*') -AND = re.compile(r'^and\b\s*') -NON_SPACE = re.compile(r'(\S+)\s*') -STRING_CHUNK = re.compile(r'([\s\w\.{}()*+#:;,/?!~`@$%^&=|<>\[\]-]+)') - - -def parse_marker(marker_string): - """ - Parse a marker string and return a dictionary containing a marker expression. - - The dictionary will contain keys "op", "lhs" and "rhs" for non-terminals in - the expression grammar, or strings. A string contained in quotes is to be - interpreted as a literal string, and a string not contained in quotes is a - variable (such as os_name). - """ - def marker_var(remaining): - # either identifier, or literal string - m = IDENTIFIER.match(remaining) - if m: - result = m.groups()[0] - remaining = remaining[m.end():] - elif not remaining: - raise SyntaxError('unexpected end of input') - else: - q = remaining[0] - if q not in '\'"': - raise SyntaxError('invalid expression: %s' % remaining) - oq = '\'"'.replace(q, '') - remaining = remaining[1:] - parts = [q] - while remaining: - # either a string chunk, or oq, or q to terminate - if remaining[0] == q: - break - elif remaining[0] == oq: - parts.append(oq) - remaining = remaining[1:] - else: - m = STRING_CHUNK.match(remaining) - if not m: - raise SyntaxError('error in string literal: %s' % remaining) - parts.append(m.groups()[0]) - remaining = remaining[m.end():] - else: - s = ''.join(parts) - raise SyntaxError('unterminated string: %s' % s) - parts.append(q) - result = ''.join(parts) - remaining = remaining[1:].lstrip() # skip past closing quote - return result, remaining - - def marker_expr(remaining): - if remaining and remaining[0] == '(': - result, remaining = marker(remaining[1:].lstrip()) - if remaining[0] != ')': - raise SyntaxError('unterminated parenthesis: %s' % remaining) - remaining = remaining[1:].lstrip() - else: - lhs, remaining = marker_var(remaining) - while remaining: - m = MARKER_OP.match(remaining) - if not m: - break - op = m.groups()[0] - remaining = remaining[m.end():] - rhs, remaining = marker_var(remaining) - lhs = {'op': op, 'lhs': lhs, 'rhs': rhs} - result = lhs - return result, remaining - - def marker_and(remaining): - lhs, remaining = marker_expr(remaining) - while remaining: - m = AND.match(remaining) - if not m: - break - remaining = remaining[m.end():] - rhs, remaining = marker_expr(remaining) - lhs = {'op': 'and', 'lhs': lhs, 'rhs': rhs} - return lhs, remaining - - def marker(remaining): - lhs, remaining = marker_and(remaining) - while remaining: - m = OR.match(remaining) - if not m: - break - remaining = remaining[m.end():] - rhs, remaining = marker_and(remaining) - lhs = {'op': 'or', 'lhs': lhs, 'rhs': rhs} - return lhs, remaining - - return marker(marker_string) - - -def parse_requirement(req): - """ - Parse a requirement passed in as a string. Return a Container - whose attributes contain the various parts of the requirement. - """ - remaining = req.strip() - if not remaining or remaining.startswith('#'): - return None - m = IDENTIFIER.match(remaining) - if not m: - raise SyntaxError('name expected: %s' % remaining) - distname = m.groups()[0] - remaining = remaining[m.end():] - extras = mark_expr = versions = uri = None - if remaining and remaining[0] == '[': - i = remaining.find(']', 1) - if i < 0: - raise SyntaxError('unterminated extra: %s' % remaining) - s = remaining[1:i] - remaining = remaining[i + 1:].lstrip() - extras = [] - while s: - m = IDENTIFIER.match(s) - if not m: - raise SyntaxError('malformed extra: %s' % s) - extras.append(m.groups()[0]) - s = s[m.end():] - if not s: - break - if s[0] != ',': - raise SyntaxError('comma expected in extras: %s' % s) - s = s[1:].lstrip() - if not extras: - extras = None - if remaining: - if remaining[0] == '@': - # it's a URI - remaining = remaining[1:].lstrip() - m = NON_SPACE.match(remaining) - if not m: - raise SyntaxError('invalid URI: %s' % remaining) - uri = m.groups()[0] - t = urlparse(uri) - # there are issues with Python and URL parsing, so this test - # is a bit crude. See bpo-20271, bpo-23505. Python doesn't - # always parse invalid URLs correctly - it should raise - # exceptions for malformed URLs - if not (t.scheme and t.netloc): - raise SyntaxError('Invalid URL: %s' % uri) - remaining = remaining[m.end():].lstrip() - else: - - def get_versions(ver_remaining): - """ - Return a list of operator, version tuples if any are - specified, else None. - """ - m = COMPARE_OP.match(ver_remaining) - versions = None - if m: - versions = [] - while True: - op = m.groups()[0] - ver_remaining = ver_remaining[m.end():] - m = VERSION_IDENTIFIER.match(ver_remaining) - if not m: - raise SyntaxError('invalid version: %s' % ver_remaining) - v = m.groups()[0] - versions.append((op, v)) - ver_remaining = ver_remaining[m.end():] - if not ver_remaining or ver_remaining[0] != ',': - break - ver_remaining = ver_remaining[1:].lstrip() - m = COMPARE_OP.match(ver_remaining) - if not m: - raise SyntaxError('invalid constraint: %s' % ver_remaining) - if not versions: - versions = None - return versions, ver_remaining - - if remaining[0] != '(': - versions, remaining = get_versions(remaining) - else: - i = remaining.find(')', 1) - if i < 0: - raise SyntaxError('unterminated parenthesis: %s' % remaining) - s = remaining[1:i] - remaining = remaining[i + 1:].lstrip() - # As a special diversion from PEP 508, allow a version number - # a.b.c in parentheses as a synonym for ~= a.b.c (because this - # is allowed in earlier PEPs) - if COMPARE_OP.match(s): - versions, _ = get_versions(s) - else: - m = VERSION_IDENTIFIER.match(s) - if not m: - raise SyntaxError('invalid constraint: %s' % s) - v = m.groups()[0] - s = s[m.end():].lstrip() - if s: - raise SyntaxError('invalid constraint: %s' % s) - versions = [('~=', v)] - - if remaining: - if remaining[0] != ';': - raise SyntaxError('invalid requirement: %s' % remaining) - remaining = remaining[1:].lstrip() - - mark_expr, remaining = parse_marker(remaining) - - if remaining and remaining[0] != '#': - raise SyntaxError('unexpected trailing data: %s' % remaining) - - if not versions: - rs = distname - else: - rs = '%s %s' % (distname, ', '.join(['%s %s' % con for con in versions])) - return Container(name=distname, extras=extras, constraints=versions, - marker=mark_expr, url=uri, requirement=rs) - - -def get_resources_dests(resources_root, rules): - """Find destinations for resources files""" - - def get_rel_path(root, path): - # normalizes and returns a lstripped-/-separated path - root = root.replace(os.path.sep, '/') - path = path.replace(os.path.sep, '/') - assert path.startswith(root) - return path[len(root):].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): # pragma: no cover - return '<ExportEntry %s = %s:%s %s>' % (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<name>(\w|[-.+])+) - \s*=\s*(?P<callable>(\w+)([:\.]\w+)*) - \s*(\[\s*(?P<flags>\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 " - "'%s'" % 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 " - "'%s'" % specification) - prefix, suffix = path.split(':') - flags = d['flags'] - if flags is None: - if '[' in specification or ']' in specification: - raise DistlibException("Invalid specification " - "'%s'" % 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 - filename = unquote(filename).replace(' ', '-') - 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<name>[\w .-]+)\s*' - r'\(\s*(?P<ver>[^\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): # pragma: no cover - 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: # pragma: no cover - raise ValueError('%r not a successor of anything' % succ) - try: - preds.remove(pred) - succs.remove(succ) - except KeyError: # pragma: no cover - 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: # pragma: no cover - 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 - -if ssl: - from .compat import (HTTPSHandler as BaseHTTPSHandler, match_hostname, - CertificateError) - - -# -# 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: # pragma: no cover - 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: # pragma: no cover - 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)) - - - if ssl: - 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 - -if ssl: - 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'] = '' - # Python 3 determines encoding from locale. Force 'utf-8' - # file encoding to match other forced utf-8 encoding - kwargs['encoding'] = 'utf-8' - 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 - - -class SubprocessMixin(object): - """ - Mixin for running subprocesses and capturing their output - """ - 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 - - -def normalize_name(name): - """Normalize a python package name a la PEP 503""" - # https://www.python.org/dev/peps/pep-0503/#normalized-names - return re.sub('[-_.]+', '-', name).lower() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/version.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/version.py deleted file mode 100644 index 959f153..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/version.py +++ /dev/null @@ -1,736 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2017 The Python Software Foundation. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -""" -Implementation of a flexible versioning scheme providing support for PEP-440, -setuptools-compatible and semantic versioning. -""" - -import logging -import re - -from .compat import string_types -from .util import parse_requirement - -__all__ = ['NormalizedVersion', 'NormalizedMatcher', - 'LegacyVersion', 'LegacyMatcher', - 'SemanticVersion', 'SemanticMatcher', - 'UnsupportedVersionError', 'get_scheme'] - -logger = logging.getLogger(__name__) - - -class UnsupportedVersionError(ValueError): - """This is an unsupported version.""" - pass - - -class Version(object): - def __init__(self, s): - self._string = s = s.strip() - self._parts = parts = self.parse(s) - assert isinstance(parts, tuple) - assert len(parts) > 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 - - # 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, - } - - # this is a method only to support alternative implementations - # via overriding - def parse_requirement(self, s): - return parse_requirement(s) - - def __init__(self, s): - if self.version_class is None: - raise ValueError('Please specify a version class') - self._string = s = s.strip() - r = self.parse_requirement(s) - if not r: - raise ValueError('Not valid: %r' % s) - self.name = r.name - self.key = self.name.lower() # for case-insensitive comparisons - clist = [] - if r.constraints: - # import pdb; pdb.set_trace() - for op, s in r.constraints: - 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 - # 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: String 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 # minimum 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 probably 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(r'^(\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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w32.exe b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w32.exe deleted file mode 100644 index 732215a9d34ccb7b417d637a7646d9b843ecafa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89088 zcmeFae|S?>wm*FGqitH!CO`{C3REl(SahnPNDYM`O{q#T7)Xdvz$<hz5gjb&0FD$| zPs=nt#$jgk-tk`NUb*PJIy$3wMg@OiORy=5PEkZ0P^;6cyPm2=Y8#~Xyq~pC(iU~@ z_dd`2ywCg3TS)e=wSTX@_S$Q$y;FJf9>F9Cf*Bu86NCeB>CeT#|L3nblC!40kR?2m z{>H@z3`^g*ct!B1Tk<#8{Ol(+x7?n8>n(TO@iQ_1pEl;#NO$D_^p5<p8@>6r|7^p? zD>5@P3KB)%InlPUc<U{5lb_$uJ2!U@!dIxT&CTYnHuoCtzCL#`-1%8w%`JjkymkHD zpYr&>Cg9H}+(GW%^wV2|ROUbGfyXTfOART)i?<!WISJD#7!6|#8G`TvV*Xu^z32+K zc6>T0?9%;4K}Zn{6fx`yPa}*$9C+R!7zI~72c&$InY+UdMGBkF3c`HyxD3K09`bzW z?_q;rO&5ec#{?noJ4vI19bbHBt~vx^h2FH$V8i|^#EsiUg#JboP3@w-(&Uf&%NK<8 zSJZ5{MZ852W)~s>WeT(LIf&1wKNqULLI)GN_(-E-D)X~ZK=1;t<%*guHMhdg`-(mb zHzDv1KBN9zR9?--O+N$ReOXAr81V9z!X5SJ5`=3<1^<8V|AP@&sr2}Qvp;hQT24iW zOHg|EiZd1ojV;oo#(r^ba2`^8T22{~_UQ@YMZp7O1R*2@?SerFE~TuJB_wDaYC0h8 zfONF1t%{=H`W`bdYp+>YBsg9Ty9ec3iy+O3xa}TIvPK#Q&udyx1MvwG0(#iaGC|N| zJ#3?<Y4YLRkU`54s9BYRjyISA>){9$tW;Y34lPnX=&>D4X~|k7c$TwEfOzs@Yh#Nz z`FV;`(w!E`sKg@`2E}bDY>ku^4XS@tV(WO*<eu67;0Clk;vRHp!Qf<+5w0B!*Y>g? zYH=KK#%%Yu1~&m>IlB^#2^syGG|2AB1(}4aOcaC%!)}%`I7AIC2(Ro3yW`GSttng^ z_xb=ECor!L{-PNO>_ulJ3%fm=O0X!s%)$GZ?~I94l-^KEAX0n$?4wGpr7&i4#~)OB zQD%2NrWUKtZuYT1Vnu}AeF`cSgx>Rkk@}Lg{WltgT76VeA2aic`cTnpXrt2WXmJkM z9%u<Rp-*9{$HQ)>Xm?McyDyZ28Ux7mpxy?mnmvzMMr-85vkRrJLaDRx>|I7je+cM+ zj{RJ(3Vrgke;W@#D!y%U%fQLtlPKTAzWtVuOQdXpwsy6eRjt^cZ%0D4bF7$F;f!th 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ð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 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w64.exe b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/w64.exe deleted file mode 100644 index c41bd0a011fd760ce20ba795d9e535e0d2c39876..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99328 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 B=L-M; diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/wheel.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/wheel.py deleted file mode 100644 index 3693410..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distlib/wheel.py +++ /dev/null @@ -1,984 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2017 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -from __future__ import unicode_literals - -import base64 -import codecs -import datetime -import distutils.util -from email import message_from_file -import hashlib -import imp -import json -import logging -import os -import posixpath -import re -import shutil -import sys -import tempfile -import zipfile - -from . import __version__, DistlibException -from .compat import sysconfig, ZipFile, fsdecode, text_type, filter -from .database import InstalledDistribution -from .metadata import Metadata, METADATA_FILENAME, WHEEL_METADATA_FILENAME -from .util import (FileOperator, convert_path, CSVReader, CSVWriter, Cache, - cached_property, get_cache_base, read_exports, tempdir) -from .version import NormalizedVersion, UnsupportedVersionError - -logger = logging.getLogger(__name__) - -cache = None # created when needed - -if hasattr(sys, 'pypy_version_info'): # pragma: no cover - IMP_PREFIX = 'pp' -elif sys.platform.startswith('java'): # pragma: no cover - IMP_PREFIX = 'jy' -elif sys.platform == 'cli': # pragma: no cover - IMP_PREFIX = 'ip' -else: - IMP_PREFIX = 'cp' - -VER_SUFFIX = sysconfig.get_config_var('py_version_nodot') -if not VER_SUFFIX: # pragma: no cover - VER_SUFFIX = '%s%s' % sys.version_info[:2] -PYVER = 'py' + VER_SUFFIX -IMPVER = IMP_PREFIX + VER_SUFFIX - -ARCH = distutils.util.get_platform().replace('-', '_').replace('.', '_') - -ABI = sysconfig.get_config_var('SOABI') -if ABI and ABI.startswith('cpython-'): - ABI = ABI.replace('cpython-', 'cp') -else: - def _derive_abi(): - parts = ['cp', VER_SUFFIX] - if sysconfig.get_config_var('Py_DEBUG'): - parts.append('d') - if sysconfig.get_config_var('WITH_PYMALLOC'): - parts.append('m') - if sysconfig.get_config_var('Py_UNICODE_SIZE') == 4: - parts.append('u') - return ''.join(parts) - ABI = _derive_abi() - del _derive_abi - -FILENAME_RE = re.compile(r''' -(?P<nm>[^-]+) --(?P<vn>\d+[^-]*) -(-(?P<bn>\d+[^-]*))? --(?P<py>\w+\d+(\.\w+\d+)*) --(?P<bi>\w+) --(?P<ar>\w+(\.\w+)*) -\.whl$ -''', re.IGNORECASE | re.VERBOSE) - -NAME_VERSION_RE = re.compile(r''' -(?P<nm>[^-]+) --(?P<vn>\d+[^-]*) -(-(?P<bn>\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): - fns = [WHEEL_METADATA_FILENAME, METADATA_FILENAME, 'METADATA'] - else: - fns = [WHEEL_METADATA_FILENAME, METADATA_FILENAME] - result = None - for fn in fns: - try: - metadata_filename = posixpath.join(info_dir, fn) - with zf.open(metadata_filename) as bf: - wf = wrapper(bf) - result = Metadata(fileobj=wf) - if result: - break - except KeyError: - pass - if not result: - raise ValueError('Invalid wheel, because metadata is ' - 'missing: looked in %s' % ', '.join(fns)) - 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(r'(\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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distro.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distro.py deleted file mode 100644 index 0f792ea..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/distro.py +++ /dev/null @@ -1,1104 +0,0 @@ -# Copyright 2015,2016 Nir Cohen -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -""" -The ``distro`` package (``distro`` stands for Linux Distribution) provides -information about the Linux distribution it runs on, such as a reliable -machine-readable distro ID, or version information. - -It is a renewed alternative implementation for Python's original -:py:func:`platform.linux_distribution` function, but it provides much more -functionality. An alternative implementation became necessary because Python -3.5 deprecated this function, and Python 3.7 is expected to remove it -altogether. Its predecessor function :py:func:`platform.dist` was already -deprecated since Python 2.6 and is also expected to be removed in Python 3.7. -Still, there are many cases in which access to Linux distribution information -is needed. See `Python issue 1322 <https://bugs.python.org/issue1322>`_ for -more information. -""" - -import os -import re -import sys -import json -import shlex -import logging -import argparse -import subprocess - - -_UNIXCONFDIR = os.environ.get('UNIXCONFDIR', '/etc') -_OS_RELEASE_BASENAME = 'os-release' - -#: Translation table for normalizing the "ID" attribute defined in os-release -#: files, for use by the :func:`distro.id` method. -#: -#: * Key: Value as defined in the os-release file, translated to lower case, -#: with blanks translated to underscores. -#: -#: * Value: Normalized value. -NORMALIZED_OS_ID = {} - -#: Translation table for normalizing the "Distributor ID" attribute returned by -#: the lsb_release command, for use by the :func:`distro.id` method. -#: -#: * Key: Value as returned by the lsb_release command, translated to lower -#: case, with blanks translated to underscores. -#: -#: * Value: Normalized value. -NORMALIZED_LSB_ID = { - 'enterpriseenterprise': 'oracle', # Oracle Enterprise Linux - 'redhatenterpriseworkstation': 'rhel', # RHEL 6, 7 Workstation - 'redhatenterpriseserver': 'rhel', # RHEL 6, 7 Server -} - -#: Translation table for normalizing the distro ID derived from the file name -#: of distro release files, for use by the :func:`distro.id` method. -#: -#: * Key: Value as derived from the file name of a distro release file, -#: translated to lower case, with blanks translated to underscores. -#: -#: * Value: Normalized value. -NORMALIZED_DISTRO_ID = { - 'redhat': 'rhel', # RHEL 6.x, 7.x -} - -# Pattern for content of distro release file (reversed) -_DISTRO_RELEASE_CONTENT_REVERSED_PATTERN = re.compile( - r'(?:[^)]*\)(.*)\()? *(?:STL )?([\d.+\-a-z]*\d) *(?:esaeler *)?(.+)') - -# Pattern for base file name of distro release file -_DISTRO_RELEASE_BASENAME_PATTERN = re.compile( - r'(\w+)[-_](release|version)$') - -# Base file names to be ignored when searching for distro release file -_DISTRO_RELEASE_IGNORE_BASENAMES = ( - 'debian_version', - 'lsb-release', - 'oem-release', - _OS_RELEASE_BASENAME, - 'system-release' -) - - -def linux_distribution(full_distribution_name=True): - """ - Return information about the current Linux distribution as a tuple - ``(id_name, version, codename)`` with items as follows: - - * ``id_name``: If *full_distribution_name* is false, the result of - :func:`distro.id`. Otherwise, the result of :func:`distro.name`. - - * ``version``: The result of :func:`distro.version`. - - * ``codename``: The result of :func:`distro.codename`. - - The interface of this function is compatible with the original - :py:func:`platform.linux_distribution` function, supporting a subset of - its parameters. - - The data it returns may not exactly be the same, because it uses more data - sources than the original function, and that may lead to different data if - the Linux distribution is not consistent across multiple data sources it - provides (there are indeed such distributions ...). - - Another reason for differences is the fact that the :func:`distro.id` - method normalizes the distro ID string to a reliable machine-readable value - for a number of popular Linux distributions. - """ - return _distro.linux_distribution(full_distribution_name) - - -def id(): - """ - Return the distro ID of the current Linux distribution, as a - machine-readable string. - - For a number of Linux distributions, the returned distro ID value is - *reliable*, in the sense that it is documented and that it does not change - across releases of the distribution. - - This package maintains the following reliable distro ID values: - - ============== ========================================= - Distro ID Distribution - ============== ========================================= - "ubuntu" Ubuntu - "debian" Debian - "rhel" RedHat Enterprise Linux - "centos" CentOS - "fedora" Fedora - "sles" SUSE Linux Enterprise Server - "opensuse" openSUSE - "amazon" Amazon Linux - "arch" Arch Linux - "cloudlinux" CloudLinux OS - "exherbo" Exherbo Linux - "gentoo" GenToo Linux - "ibm_powerkvm" IBM PowerKVM - "kvmibm" KVM for IBM z Systems - "linuxmint" Linux Mint - "mageia" Mageia - "mandriva" Mandriva Linux - "parallels" Parallels - "pidora" Pidora - "raspbian" Raspbian - "oracle" Oracle Linux (and Oracle Enterprise Linux) - "scientific" Scientific Linux - "slackware" Slackware - "xenserver" XenServer - ============== ========================================= - - If you have a need to get distros for reliable IDs added into this set, - or if you find that the :func:`distro.id` function returns a different - distro ID for one of the listed distros, please create an issue in the - `distro issue tracker`_. - - **Lookup hierarchy and transformations:** - - First, the ID is obtained from the following sources, in the specified - order. The first available and non-empty value is used: - - * the value of the "ID" attribute of the os-release file, - - * the value of the "Distributor ID" attribute returned by the lsb_release - command, - - * the first part of the file name of the distro release file, - - The so determined ID value then passes the following transformations, - before it is returned by this method: - - * it is translated to lower case, - - * blanks (which should not be there anyway) are translated to underscores, - - * a normalization of the ID is performed, based upon - `normalization tables`_. The purpose of this normalization is to ensure - that the ID is as reliable as possible, even across incompatible changes - in the Linux distributions. A common reason for an incompatible change is - the addition of an os-release file, or the addition of the lsb_release - command, with ID values that differ from what was previously determined - from the distro release file name. - """ - return _distro.id() - - -def name(pretty=False): - """ - Return the name of the current Linux distribution, as a human-readable - string. - - If *pretty* is false, the name is returned without version or codename. - (e.g. "CentOS Linux") - - If *pretty* is true, the version and codename are appended. - (e.g. "CentOS Linux 7.1.1503 (Core)") - - **Lookup hierarchy:** - - The name is obtained from the following sources, in the specified order. - The first available and non-empty value is used: - - * If *pretty* is false: - - - the value of the "NAME" attribute of the os-release file, - - - the value of the "Distributor ID" attribute returned by the lsb_release - command, - - - the value of the "<name>" field of the distro release file. - - * If *pretty* is true: - - - the value of the "PRETTY_NAME" attribute of the os-release file, - - - the value of the "Description" attribute returned by the lsb_release - command, - - - the value of the "<name>" field of the distro release file, appended - with the value of the pretty version ("<version_id>" and "<codename>" - fields) of the distro release file, if available. - """ - return _distro.name(pretty) - - -def version(pretty=False, best=False): - """ - Return the version of the current Linux distribution, as a human-readable - string. - - If *pretty* is false, the version is returned without codename (e.g. - "7.0"). - - If *pretty* is true, the codename in parenthesis is appended, if the - codename is non-empty (e.g. "7.0 (Maipo)"). - - Some distributions provide version numbers with different precisions in - the different sources of distribution information. Examining the different - sources in a fixed priority order does not always yield the most precise - version (e.g. for Debian 8.2, or CentOS 7.1). - - The *best* parameter can be used to control the approach for the returned - version: - - If *best* is false, the first non-empty version number in priority order of - the examined sources is returned. - - If *best* is true, the most precise version number out of all examined - sources is returned. - - **Lookup hierarchy:** - - In all cases, the version number is obtained from the following sources. - If *best* is false, this order represents the priority order: - - * the value of the "VERSION_ID" attribute of the os-release file, - * the value of the "Release" attribute returned by the lsb_release - command, - * the version number parsed from the "<version_id>" field of the first line - of the distro release file, - * the version number parsed from the "PRETTY_NAME" attribute of the - os-release file, if it follows the format of the distro release files. - * the version number parsed from the "Description" attribute returned by - the lsb_release command, if it follows the format of the distro release - files. - """ - return _distro.version(pretty, best) - - -def version_parts(best=False): - """ - Return the version of the current Linux distribution as a tuple - ``(major, minor, build_number)`` with items as follows: - - * ``major``: The result of :func:`distro.major_version`. - - * ``minor``: The result of :func:`distro.minor_version`. - - * ``build_number``: The result of :func:`distro.build_number`. - - For a description of the *best* parameter, see the :func:`distro.version` - method. - """ - return _distro.version_parts(best) - - -def major_version(best=False): - """ - Return the major version of the current Linux distribution, as a string, - if provided. - Otherwise, the empty string is returned. The major version is the first - part of the dot-separated version string. - - For a description of the *best* parameter, see the :func:`distro.version` - method. - """ - return _distro.major_version(best) - - -def minor_version(best=False): - """ - Return the minor version of the current Linux distribution, as a string, - if provided. - Otherwise, the empty string is returned. The minor version is the second - part of the dot-separated version string. - - For a description of the *best* parameter, see the :func:`distro.version` - method. - """ - return _distro.minor_version(best) - - -def build_number(best=False): - """ - Return the build number of the current Linux distribution, as a string, - if provided. - Otherwise, the empty string is returned. The build number is the third part - of the dot-separated version string. - - For a description of the *best* parameter, see the :func:`distro.version` - method. - """ - return _distro.build_number(best) - - -def like(): - """ - Return a space-separated list of distro IDs of distributions that are - closely related to the current Linux distribution in regards to packaging - and programming interfaces, for example distributions the current - distribution is a derivative from. - - **Lookup hierarchy:** - - This information item is only provided by the os-release file. - For details, see the description of the "ID_LIKE" attribute in the - `os-release man page - <http://www.freedesktop.org/software/systemd/man/os-release.html>`_. - """ - return _distro.like() - - -def codename(): - """ - Return the codename for the release of the current Linux distribution, - as a string. - - If the distribution does not have a codename, an empty string is returned. - - Note that the returned codename is not always really a codename. For - example, openSUSE returns "x86_64". This function does not handle such - cases in any special way and just returns the string it finds, if any. - - **Lookup hierarchy:** - - * the codename within the "VERSION" attribute of the os-release file, if - provided, - - * the value of the "Codename" attribute returned by the lsb_release - command, - - * the value of the "<codename>" field of the distro release file. - """ - return _distro.codename() - - -def info(pretty=False, best=False): - """ - Return certain machine-readable information items about the current Linux - distribution in a dictionary, as shown in the following example: - - .. sourcecode:: python - - { - 'id': 'rhel', - 'version': '7.0', - 'version_parts': { - 'major': '7', - 'minor': '0', - 'build_number': '' - }, - 'like': 'fedora', - 'codename': 'Maipo' - } - - The dictionary structure and keys are always the same, regardless of which - information items are available in the underlying data sources. The values - for the various keys are as follows: - - * ``id``: The result of :func:`distro.id`. - - * ``version``: The result of :func:`distro.version`. - - * ``version_parts -> major``: The result of :func:`distro.major_version`. - - * ``version_parts -> minor``: The result of :func:`distro.minor_version`. - - * ``version_parts -> build_number``: The result of - :func:`distro.build_number`. - - * ``like``: The result of :func:`distro.like`. - - * ``codename``: The result of :func:`distro.codename`. - - For a description of the *pretty* and *best* parameters, see the - :func:`distro.version` method. - """ - return _distro.info(pretty, best) - - -def os_release_info(): - """ - Return a dictionary containing key-value pairs for the information items - from the os-release file data source of the current Linux distribution. - - See `os-release file`_ for details about these information items. - """ - return _distro.os_release_info() - - -def lsb_release_info(): - """ - Return a dictionary containing key-value pairs for the information items - from the lsb_release command data source of the current Linux distribution. - - See `lsb_release command output`_ for details about these information - items. - """ - return _distro.lsb_release_info() - - -def distro_release_info(): - """ - Return a dictionary containing key-value pairs for the information items - from the distro release file data source of the current Linux distribution. - - See `distro release file`_ for details about these information items. - """ - return _distro.distro_release_info() - - -def os_release_attr(attribute): - """ - Return a single named information item from the os-release file data source - of the current Linux distribution. - - Parameters: - - * ``attribute`` (string): Key of the information item. - - Returns: - - * (string): Value of the information item, if the item exists. - The empty string, if the item does not exist. - - See `os-release file`_ for details about these information items. - """ - return _distro.os_release_attr(attribute) - - -def lsb_release_attr(attribute): - """ - Return a single named information item from the lsb_release command output - data source of the current Linux distribution. - - Parameters: - - * ``attribute`` (string): Key of the information item. - - Returns: - - * (string): Value of the information item, if the item exists. - The empty string, if the item does not exist. - - See `lsb_release command output`_ for details about these information - items. - """ - return _distro.lsb_release_attr(attribute) - - -def distro_release_attr(attribute): - """ - Return a single named information item from the distro release file - data source of the current Linux distribution. - - Parameters: - - * ``attribute`` (string): Key of the information item. - - Returns: - - * (string): Value of the information item, if the item exists. - The empty string, if the item does not exist. - - See `distro release file`_ for details about these information items. - """ - return _distro.distro_release_attr(attribute) - - -class cached_property(object): - """A version of @property which caches the value. On access, it calls the - underlying function and sets the value in `__dict__` so future accesses - will not re-call the property. - """ - def __init__(self, f): - self._fname = f.__name__ - self._f = f - - def __get__(self, obj, owner): - assert obj is not None, 'call {} on an instance'.format(self._fname) - ret = obj.__dict__[self._fname] = self._f(obj) - return ret - - -class LinuxDistribution(object): - """ - Provides information about a Linux distribution. - - This package creates a private module-global instance of this class with - default initialization arguments, that is used by the - `consolidated accessor functions`_ and `single source accessor functions`_. - By using default initialization arguments, that module-global instance - returns data about the current Linux distribution (i.e. the distro this - package runs on). - - Normally, it is not necessary to create additional instances of this class. - However, in situations where control is needed over the exact data sources - that are used, instances of this class can be created with a specific - distro release file, or a specific os-release file, or without invoking the - lsb_release command. - """ - - def __init__(self, - include_lsb=True, - os_release_file='', - distro_release_file=''): - """ - The initialization method of this class gathers information from the - available data sources, and stores that in private instance attributes. - Subsequent access to the information items uses these private instance - attributes, so that the data sources are read only once. - - Parameters: - - * ``include_lsb`` (bool): Controls whether the - `lsb_release command output`_ is included as a data source. - - If the lsb_release command is not available in the program execution - path, the data source for the lsb_release command will be empty. - - * ``os_release_file`` (string): The path name of the - `os-release file`_ that is to be used as a data source. - - An empty string (the default) will cause the default path name to - be used (see `os-release file`_ for details). - - If the specified or defaulted os-release file does not exist, the - data source for the os-release file will be empty. - - * ``distro_release_file`` (string): The path name of the - `distro release file`_ that is to be used as a data source. - - An empty string (the default) will cause a default search algorithm - to be used (see `distro release file`_ for details). - - If the specified distro release file does not exist, or if no default - distro release file can be found, the data source for the distro - release file will be empty. - - Public instance attributes: - - * ``os_release_file`` (string): The path name of the - `os-release file`_ that is actually used as a data source. The - empty string if no distro release file is used as a data source. - - * ``distro_release_file`` (string): The path name of the - `distro release file`_ that is actually used as a data source. The - empty string if no distro release file is used as a data source. - - * ``include_lsb`` (bool): The result of the ``include_lsb`` parameter. - This controls whether the lsb information will be loaded. - - Raises: - - * :py:exc:`IOError`: Some I/O issue with an os-release file or distro - release file. - - * :py:exc:`subprocess.CalledProcessError`: The lsb_release command had - some issue (other than not being available in the program execution - path). - - * :py:exc:`UnicodeError`: A data source has unexpected characters or - uses an unexpected encoding. - """ - self.os_release_file = os_release_file or \ - os.path.join(_UNIXCONFDIR, _OS_RELEASE_BASENAME) - self.distro_release_file = distro_release_file or '' # updated later - self.include_lsb = include_lsb - - def __repr__(self): - """Return repr of all info - """ - return \ - "LinuxDistribution(" \ - "os_release_file={self.os_release_file!r}, " \ - "distro_release_file={self.distro_release_file!r}, " \ - "include_lsb={self.include_lsb!r}, " \ - "_os_release_info={self._os_release_info!r}, " \ - "_lsb_release_info={self._lsb_release_info!r}, " \ - "_distro_release_info={self._distro_release_info!r})".format( - self=self) - - def linux_distribution(self, full_distribution_name=True): - """ - Return information about the Linux distribution that is compatible - with Python's :func:`platform.linux_distribution`, supporting a subset - of its parameters. - - For details, see :func:`distro.linux_distribution`. - """ - return ( - self.name() if full_distribution_name else self.id(), - self.version(), - self.codename() - ) - - def id(self): - """Return the distro ID of the Linux distribution, as a string. - - For details, see :func:`distro.id`. - """ - def normalize(distro_id, table): - distro_id = distro_id.lower().replace(' ', '_') - return table.get(distro_id, distro_id) - - distro_id = self.os_release_attr('id') - if distro_id: - return normalize(distro_id, NORMALIZED_OS_ID) - - distro_id = self.lsb_release_attr('distributor_id') - if distro_id: - return normalize(distro_id, NORMALIZED_LSB_ID) - - distro_id = self.distro_release_attr('id') - if distro_id: - return normalize(distro_id, NORMALIZED_DISTRO_ID) - - return '' - - def name(self, pretty=False): - """ - Return the name of the Linux distribution, as a string. - - For details, see :func:`distro.name`. - """ - name = self.os_release_attr('name') \ - or self.lsb_release_attr('distributor_id') \ - or self.distro_release_attr('name') - if pretty: - name = self.os_release_attr('pretty_name') \ - or self.lsb_release_attr('description') - if not name: - name = self.distro_release_attr('name') - version = self.version(pretty=True) - if version: - name = name + ' ' + version - return name or '' - - def version(self, pretty=False, best=False): - """ - Return the version of the Linux distribution, as a string. - - For details, see :func:`distro.version`. - """ - versions = [ - self.os_release_attr('version_id'), - self.lsb_release_attr('release'), - self.distro_release_attr('version_id'), - self._parse_distro_release_content( - self.os_release_attr('pretty_name')).get('version_id', ''), - self._parse_distro_release_content( - self.lsb_release_attr('description')).get('version_id', '') - ] - version = '' - if best: - # This algorithm uses the last version in priority order that has - # the best precision. If the versions are not in conflict, that - # does not matter; otherwise, using the last one instead of the - # first one might be considered a surprise. - for v in versions: - if v.count(".") > version.count(".") or version == '': - version = v - else: - for v in versions: - if v != '': - version = v - break - if pretty and version and self.codename(): - version = u'{0} ({1})'.format(version, self.codename()) - return version - - def version_parts(self, best=False): - """ - Return the version of the Linux distribution, as a tuple of version - numbers. - - For details, see :func:`distro.version_parts`. - """ - version_str = self.version(best=best) - if version_str: - version_regex = re.compile(r'(\d+)\.?(\d+)?\.?(\d+)?') - matches = version_regex.match(version_str) - if matches: - major, minor, build_number = matches.groups() - return major, minor or '', build_number or '' - return '', '', '' - - def major_version(self, best=False): - """ - Return the major version number of the current distribution. - - For details, see :func:`distro.major_version`. - """ - return self.version_parts(best)[0] - - def minor_version(self, best=False): - """ - Return the minor version number of the Linux distribution. - - For details, see :func:`distro.minor_version`. - """ - return self.version_parts(best)[1] - - def build_number(self, best=False): - """ - Return the build number of the Linux distribution. - - For details, see :func:`distro.build_number`. - """ - return self.version_parts(best)[2] - - def like(self): - """ - Return the IDs of distributions that are like the Linux distribution. - - For details, see :func:`distro.like`. - """ - return self.os_release_attr('id_like') or '' - - def codename(self): - """ - Return the codename of the Linux distribution. - - For details, see :func:`distro.codename`. - """ - return self.os_release_attr('codename') \ - or self.lsb_release_attr('codename') \ - or self.distro_release_attr('codename') \ - or '' - - def info(self, pretty=False, best=False): - """ - Return certain machine-readable information about the Linux - distribution. - - For details, see :func:`distro.info`. - """ - return dict( - id=self.id(), - version=self.version(pretty, best), - version_parts=dict( - major=self.major_version(best), - minor=self.minor_version(best), - build_number=self.build_number(best) - ), - like=self.like(), - codename=self.codename(), - ) - - def os_release_info(self): - """ - Return a dictionary containing key-value pairs for the information - items from the os-release file data source of the Linux distribution. - - For details, see :func:`distro.os_release_info`. - """ - return self._os_release_info - - def lsb_release_info(self): - """ - Return a dictionary containing key-value pairs for the information - items from the lsb_release command data source of the Linux - distribution. - - For details, see :func:`distro.lsb_release_info`. - """ - return self._lsb_release_info - - def distro_release_info(self): - """ - Return a dictionary containing key-value pairs for the information - items from the distro release file data source of the Linux - distribution. - - For details, see :func:`distro.distro_release_info`. - """ - return self._distro_release_info - - def os_release_attr(self, attribute): - """ - Return a single named information item from the os-release file data - source of the Linux distribution. - - For details, see :func:`distro.os_release_attr`. - """ - return self._os_release_info.get(attribute, '') - - def lsb_release_attr(self, attribute): - """ - Return a single named information item from the lsb_release command - output data source of the Linux distribution. - - For details, see :func:`distro.lsb_release_attr`. - """ - return self._lsb_release_info.get(attribute, '') - - def distro_release_attr(self, attribute): - """ - Return a single named information item from the distro release file - data source of the Linux distribution. - - For details, see :func:`distro.distro_release_attr`. - """ - return self._distro_release_info.get(attribute, '') - - @cached_property - def _os_release_info(self): - """ - Get the information items from the specified os-release file. - - Returns: - A dictionary containing all information items. - """ - if os.path.isfile(self.os_release_file): - with open(self.os_release_file) as release_file: - return self._parse_os_release_content(release_file) - return {} - - @staticmethod - def _parse_os_release_content(lines): - """ - Parse the lines of an os-release file. - - Parameters: - - * lines: Iterable through the lines in the os-release file. - Each line must be a unicode string or a UTF-8 encoded byte - string. - - Returns: - A dictionary containing all information items. - """ - props = {} - lexer = shlex.shlex(lines, posix=True) - lexer.whitespace_split = True - - # The shlex module defines its `wordchars` variable using literals, - # making it dependent on the encoding of the Python source file. - # In Python 2.6 and 2.7, the shlex source file is encoded in - # 'iso-8859-1', and the `wordchars` variable is defined as a byte - # string. This causes a UnicodeDecodeError to be raised when the - # parsed content is a unicode object. The following fix resolves that - # (... but it should be fixed in shlex...): - if sys.version_info[0] == 2 and isinstance(lexer.wordchars, bytes): - lexer.wordchars = lexer.wordchars.decode('iso-8859-1') - - tokens = list(lexer) - for token in tokens: - # At this point, all shell-like parsing has been done (i.e. - # comments processed, quotes and backslash escape sequences - # processed, multi-line values assembled, trailing newlines - # stripped, etc.), so the tokens are now either: - # * variable assignments: var=value - # * commands or their arguments (not allowed in os-release) - if '=' in token: - k, v = token.split('=', 1) - if isinstance(v, bytes): - v = v.decode('utf-8') - props[k.lower()] = v - if k == 'VERSION': - # this handles cases in which the codename is in - # the `(CODENAME)` (rhel, centos, fedora) format - # or in the `, CODENAME` format (Ubuntu). - codename = re.search(r'(\(\D+\))|,(\s+)?\D+', v) - if codename: - codename = codename.group() - codename = codename.strip('()') - codename = codename.strip(',') - codename = codename.strip() - # codename appears within paranthese. - props['codename'] = codename - else: - props['codename'] = '' - else: - # Ignore any tokens that are not variable assignments - pass - return props - - @cached_property - def _lsb_release_info(self): - """ - Get the information items from the lsb_release command output. - - Returns: - A dictionary containing all information items. - """ - if not self.include_lsb: - return {} - with open(os.devnull, 'w') as devnull: - try: - cmd = ('lsb_release', '-a') - stdout = subprocess.check_output(cmd, stderr=devnull) - except OSError: # Command not found - return {} - content = stdout.decode(sys.getfilesystemencoding()).splitlines() - return self._parse_lsb_release_content(content) - - @staticmethod - def _parse_lsb_release_content(lines): - """ - Parse the output of the lsb_release command. - - Parameters: - - * lines: Iterable through the lines of the lsb_release output. - Each line must be a unicode string or a UTF-8 encoded byte - string. - - Returns: - A dictionary containing all information items. - """ - props = {} - for line in lines: - kv = line.strip('\n').split(':', 1) - if len(kv) != 2: - # Ignore lines without colon. - continue - k, v = kv - props.update({k.replace(' ', '_').lower(): v.strip()}) - return props - - @cached_property - def _distro_release_info(self): - """ - Get the information items from the specified distro release file. - - Returns: - A dictionary containing all information items. - """ - if self.distro_release_file: - # If it was specified, we use it and parse what we can, even if - # its file name or content does not match the expected pattern. - distro_info = self._parse_distro_release_file( - self.distro_release_file) - basename = os.path.basename(self.distro_release_file) - # The file name pattern for user-specified distro release files - # is somewhat more tolerant (compared to when searching for the - # file), because we want to use what was specified as best as - # possible. - match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename) - if match: - distro_info['id'] = match.group(1) - return distro_info - else: - try: - basenames = os.listdir(_UNIXCONFDIR) - # We sort for repeatability in cases where there are multiple - # distro specific files; e.g. CentOS, Oracle, Enterprise all - # containing `redhat-release` on top of their own. - basenames.sort() - except OSError: - # This may occur when /etc is not readable but we can't be - # sure about the *-release files. Check common entries of - # /etc for information. If they turn out to not be there the - # error is handled in `_parse_distro_release_file()`. - basenames = ['SuSE-release', - 'arch-release', - 'base-release', - 'centos-release', - 'fedora-release', - 'gentoo-release', - 'mageia-release', - 'mandrake-release', - 'mandriva-release', - 'mandrivalinux-release', - 'manjaro-release', - 'oracle-release', - 'redhat-release', - 'sl-release', - 'slackware-version'] - for basename in basenames: - if basename in _DISTRO_RELEASE_IGNORE_BASENAMES: - continue - match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename) - if match: - filepath = os.path.join(_UNIXCONFDIR, basename) - distro_info = self._parse_distro_release_file(filepath) - if 'name' in distro_info: - # The name is always present if the pattern matches - self.distro_release_file = filepath - distro_info['id'] = match.group(1) - return distro_info - return {} - - def _parse_distro_release_file(self, filepath): - """ - Parse a distro release file. - - Parameters: - - * filepath: Path name of the distro release file. - - Returns: - A dictionary containing all information items. - """ - try: - with open(filepath) as fp: - # Only parse the first line. For instance, on SLES there - # are multiple lines. We don't want them... - return self._parse_distro_release_content(fp.readline()) - except (OSError, IOError): - # Ignore not being able to read a specific, seemingly version - # related file. - # See https://github.com/nir0s/distro/issues/162 - return {} - - @staticmethod - def _parse_distro_release_content(line): - """ - Parse a line from a distro release file. - - Parameters: - * line: Line from the distro release file. Must be a unicode string - or a UTF-8 encoded byte string. - - Returns: - A dictionary containing all information items. - """ - if isinstance(line, bytes): - line = line.decode('utf-8') - matches = _DISTRO_RELEASE_CONTENT_REVERSED_PATTERN.match( - line.strip()[::-1]) - distro_info = {} - if matches: - # regexp ensures non-None - distro_info['name'] = matches.group(3)[::-1] - if matches.group(2): - distro_info['version_id'] = matches.group(2)[::-1] - if matches.group(1): - distro_info['codename'] = matches.group(1)[::-1] - elif line: - distro_info['name'] = line.strip() - return distro_info - - -_distro = LinuxDistribution() - - -def main(): - logger = logging.getLogger(__name__) - logger.setLevel(logging.DEBUG) - logger.addHandler(logging.StreamHandler(sys.stdout)) - - parser = argparse.ArgumentParser(description="Linux distro info tool") - parser.add_argument( - '--json', - '-j', - help="Output in machine readable format", - action="store_true") - args = parser.parse_args() - - if args.json: - logger.info(json.dumps(info(), indent=4, sort_keys=True)) - else: - logger.info('Name: %s', name(pretty=True)) - distribution_version = version(pretty=True) - logger.info('Version: %s', distribution_version) - distribution_codename = codename() - logger.info('Codename: %s', distribution_codename) - - -if __name__ == '__main__': - main() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/__init__.py deleted file mode 100644 index 0b54002..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/__init__.py +++ /dev/null @@ -1,35 +0,0 @@ -""" -HTML parsing library based on the `WHATWG HTML specification -<https://whatwg.org/html>`_. The parser is designed to be compatible with -existing HTML found in the wild and implements well-defined error recovery that -is largely compatible with modern desktop web browsers. - -Example usage:: - - from pip._vendor import html5lib - with open("my_document.html", "rb") as f: - tree = html5lib.parse(f) - -For convenience, this module re-exports the following names: - -* :func:`~.html5parser.parse` -* :func:`~.html5parser.parseFragment` -* :class:`~.html5parser.HTMLParser` -* :func:`~.treebuilders.getTreeBuilder` -* :func:`~.treewalkers.getTreeWalker` -* :func:`~.serializer.serialize` -""" - -from __future__ import absolute_import, division, unicode_literals - -from .html5parser import HTMLParser, parse, parseFragment -from .treebuilders import getTreeBuilder -from .treewalkers import getTreeWalker -from .serializer import serialize - -__all__ = ["HTMLParser", "parse", "parseFragment", "getTreeBuilder", - "getTreeWalker", "serialize"] - -# this has to be at the top level, see how setup.py parses this -#: Distribution version number. -__version__ = "1.0.1" diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_ihatexml.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_ihatexml.py deleted file mode 100644 index 68f9b1e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_ihatexml.py +++ /dev/null @@ -1,288 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -import re -import warnings - -from .constants import DataLossWarning - -baseChar = """ -[#x0041-#x005A] | [#x0061-#x007A] | [#x00C0-#x00D6] | [#x00D8-#x00F6] | -[#x00F8-#x00FF] | [#x0100-#x0131] | [#x0134-#x013E] | [#x0141-#x0148] | -[#x014A-#x017E] | [#x0180-#x01C3] | [#x01CD-#x01F0] | [#x01F4-#x01F5] | -[#x01FA-#x0217] | [#x0250-#x02A8] | [#x02BB-#x02C1] | #x0386 | -[#x0388-#x038A] | #x038C | [#x038E-#x03A1] | [#x03A3-#x03CE] | -[#x03D0-#x03D6] | #x03DA | #x03DC | #x03DE | #x03E0 | [#x03E2-#x03F3] | -[#x0401-#x040C] | [#x040E-#x044F] | [#x0451-#x045C] | [#x045E-#x0481] | -[#x0490-#x04C4] | [#x04C7-#x04C8] | [#x04CB-#x04CC] | [#x04D0-#x04EB] | -[#x04EE-#x04F5] | [#x04F8-#x04F9] | [#x0531-#x0556] | #x0559 | -[#x0561-#x0586] | [#x05D0-#x05EA] | [#x05F0-#x05F2] | [#x0621-#x063A] | -[#x0641-#x064A] | [#x0671-#x06B7] | [#x06BA-#x06BE] | [#x06C0-#x06CE] | -[#x06D0-#x06D3] | #x06D5 | [#x06E5-#x06E6] | [#x0905-#x0939] | #x093D | -[#x0958-#x0961] | [#x0985-#x098C] | [#x098F-#x0990] | [#x0993-#x09A8] | -[#x09AA-#x09B0] | #x09B2 | [#x09B6-#x09B9] | [#x09DC-#x09DD] | -[#x09DF-#x09E1] | [#x09F0-#x09F1] | [#x0A05-#x0A0A] | [#x0A0F-#x0A10] | -[#x0A13-#x0A28] | [#x0A2A-#x0A30] | [#x0A32-#x0A33] | [#x0A35-#x0A36] | -[#x0A38-#x0A39] | [#x0A59-#x0A5C] | #x0A5E | [#x0A72-#x0A74] | -[#x0A85-#x0A8B] | #x0A8D | [#x0A8F-#x0A91] | [#x0A93-#x0AA8] | -[#x0AAA-#x0AB0] | [#x0AB2-#x0AB3] | [#x0AB5-#x0AB9] | #x0ABD | #x0AE0 | -[#x0B05-#x0B0C] | [#x0B0F-#x0B10] | [#x0B13-#x0B28] | [#x0B2A-#x0B30] | -[#x0B32-#x0B33] | [#x0B36-#x0B39] | #x0B3D | [#x0B5C-#x0B5D] | -[#x0B5F-#x0B61] | [#x0B85-#x0B8A] | [#x0B8E-#x0B90] | [#x0B92-#x0B95] | -[#x0B99-#x0B9A] | #x0B9C | [#x0B9E-#x0B9F] | [#x0BA3-#x0BA4] | -[#x0BA8-#x0BAA] | [#x0BAE-#x0BB5] | [#x0BB7-#x0BB9] | [#x0C05-#x0C0C] | -[#x0C0E-#x0C10] | [#x0C12-#x0C28] | [#x0C2A-#x0C33] | [#x0C35-#x0C39] | -[#x0C60-#x0C61] | [#x0C85-#x0C8C] | [#x0C8E-#x0C90] | [#x0C92-#x0CA8] | -[#x0CAA-#x0CB3] | [#x0CB5-#x0CB9] | #x0CDE | [#x0CE0-#x0CE1] | -[#x0D05-#x0D0C] | [#x0D0E-#x0D10] | [#x0D12-#x0D28] | [#x0D2A-#x0D39] | -[#x0D60-#x0D61] | [#x0E01-#x0E2E] | #x0E30 | [#x0E32-#x0E33] | -[#x0E40-#x0E45] | [#x0E81-#x0E82] | #x0E84 | [#x0E87-#x0E88] | #x0E8A | -#x0E8D | [#x0E94-#x0E97] | [#x0E99-#x0E9F] | [#x0EA1-#x0EA3] | #x0EA5 | -#x0EA7 | [#x0EAA-#x0EAB] | [#x0EAD-#x0EAE] | #x0EB0 | [#x0EB2-#x0EB3] | -#x0EBD | [#x0EC0-#x0EC4] | [#x0F40-#x0F47] | [#x0F49-#x0F69] | -[#x10A0-#x10C5] | [#x10D0-#x10F6] | #x1100 | [#x1102-#x1103] | -[#x1105-#x1107] | #x1109 | [#x110B-#x110C] | [#x110E-#x1112] | #x113C | -#x113E | #x1140 | #x114C | #x114E | #x1150 | [#x1154-#x1155] | #x1159 | -[#x115F-#x1161] | #x1163 | #x1165 | #x1167 | #x1169 | [#x116D-#x116E] | -[#x1172-#x1173] | #x1175 | #x119E | #x11A8 | #x11AB | [#x11AE-#x11AF] | -[#x11B7-#x11B8] | #x11BA | [#x11BC-#x11C2] | #x11EB | #x11F0 | #x11F9 | -[#x1E00-#x1E9B] | [#x1EA0-#x1EF9] | [#x1F00-#x1F15] | [#x1F18-#x1F1D] | -[#x1F20-#x1F45] | [#x1F48-#x1F4D] | [#x1F50-#x1F57] | #x1F59 | #x1F5B | -#x1F5D | [#x1F5F-#x1F7D] | [#x1F80-#x1FB4] | [#x1FB6-#x1FBC] | #x1FBE | -[#x1FC2-#x1FC4] | [#x1FC6-#x1FCC] | [#x1FD0-#x1FD3] | [#x1FD6-#x1FDB] | -[#x1FE0-#x1FEC] | [#x1FF2-#x1FF4] | [#x1FF6-#x1FFC] | #x2126 | -[#x212A-#x212B] | #x212E | [#x2180-#x2182] | [#x3041-#x3094] | -[#x30A1-#x30FA] | [#x3105-#x312C] | [#xAC00-#xD7A3]""" - -ideographic = """[#x4E00-#x9FA5] | #x3007 | [#x3021-#x3029]""" - -combiningCharacter = """ -[#x0300-#x0345] | [#x0360-#x0361] | [#x0483-#x0486] | [#x0591-#x05A1] | -[#x05A3-#x05B9] | [#x05BB-#x05BD] | #x05BF | [#x05C1-#x05C2] | #x05C4 | -[#x064B-#x0652] | #x0670 | [#x06D6-#x06DC] | [#x06DD-#x06DF] | -[#x06E0-#x06E4] | [#x06E7-#x06E8] | [#x06EA-#x06ED] | [#x0901-#x0903] | -#x093C | [#x093E-#x094C] | #x094D | [#x0951-#x0954] | [#x0962-#x0963] | -[#x0981-#x0983] | #x09BC | #x09BE | #x09BF | [#x09C0-#x09C4] | -[#x09C7-#x09C8] | [#x09CB-#x09CD] | #x09D7 | [#x09E2-#x09E3] | #x0A02 | -#x0A3C | #x0A3E | #x0A3F | [#x0A40-#x0A42] | [#x0A47-#x0A48] | -[#x0A4B-#x0A4D] | [#x0A70-#x0A71] | [#x0A81-#x0A83] | #x0ABC | -[#x0ABE-#x0AC5] | [#x0AC7-#x0AC9] | [#x0ACB-#x0ACD] | [#x0B01-#x0B03] | -#x0B3C | [#x0B3E-#x0B43] | [#x0B47-#x0B48] | [#x0B4B-#x0B4D] | -[#x0B56-#x0B57] | [#x0B82-#x0B83] | [#x0BBE-#x0BC2] | [#x0BC6-#x0BC8] | -[#x0BCA-#x0BCD] | #x0BD7 | [#x0C01-#x0C03] | [#x0C3E-#x0C44] | -[#x0C46-#x0C48] | [#x0C4A-#x0C4D] | [#x0C55-#x0C56] | [#x0C82-#x0C83] | -[#x0CBE-#x0CC4] | [#x0CC6-#x0CC8] | [#x0CCA-#x0CCD] | [#x0CD5-#x0CD6] | -[#x0D02-#x0D03] | [#x0D3E-#x0D43] | [#x0D46-#x0D48] | [#x0D4A-#x0D4D] | -#x0D57 | #x0E31 | [#x0E34-#x0E3A] | [#x0E47-#x0E4E] | #x0EB1 | -[#x0EB4-#x0EB9] | [#x0EBB-#x0EBC] | [#x0EC8-#x0ECD] | [#x0F18-#x0F19] | -#x0F35 | #x0F37 | #x0F39 | #x0F3E | #x0F3F | [#x0F71-#x0F84] | -[#x0F86-#x0F8B] | [#x0F90-#x0F95] | #x0F97 | [#x0F99-#x0FAD] | -[#x0FB1-#x0FB7] | #x0FB9 | [#x20D0-#x20DC] | #x20E1 | [#x302A-#x302F] | -#x3099 | #x309A""" - -digit = """ -[#x0030-#x0039] | [#x0660-#x0669] | [#x06F0-#x06F9] | [#x0966-#x096F] | -[#x09E6-#x09EF] | [#x0A66-#x0A6F] | [#x0AE6-#x0AEF] | [#x0B66-#x0B6F] | -[#x0BE7-#x0BEF] | [#x0C66-#x0C6F] | [#x0CE6-#x0CEF] | [#x0D66-#x0D6F] | -[#x0E50-#x0E59] | [#x0ED0-#x0ED9] | [#x0F20-#x0F29]""" - -extender = """ -#x00B7 | #x02D0 | #x02D1 | #x0387 | #x0640 | #x0E46 | #x0EC6 | #x3005 | -#[#x3031-#x3035] | [#x309D-#x309E] | [#x30FC-#x30FE]""" - -letter = " | ".join([baseChar, ideographic]) - -# Without the -name = " | ".join([letter, digit, ".", "-", "_", combiningCharacter, - extender]) -nameFirst = " | ".join([letter, "_"]) - -reChar = re.compile(r"#x([\d|A-F]{4,4})") -reCharRange = re.compile(r"\[#x([\d|A-F]{4,4})-#x([\d|A-F]{4,4})\]") - - -def charStringToList(chars): - charRanges = [item.strip() for item in chars.split(" | ")] - rv = [] - for item in charRanges: - foundMatch = False - for regexp in (reChar, reCharRange): - match = regexp.match(item) - if match is not None: - rv.append([hexToInt(item) for item in match.groups()]) - if len(rv[-1]) == 1: - rv[-1] = rv[-1] * 2 - foundMatch = True - break - if not foundMatch: - assert len(item) == 1 - - rv.append([ord(item)] * 2) - rv = normaliseCharList(rv) - return rv - - -def normaliseCharList(charList): - charList = sorted(charList) - for item in charList: - assert item[1] >= item[0] - rv = [] - i = 0 - while i < len(charList): - j = 1 - rv.append(charList[i]) - while i + j < len(charList) and charList[i + j][0] <= rv[-1][1] + 1: - rv[-1][1] = charList[i + j][1] - j += 1 - i += j - return rv - -# We don't really support characters above the BMP :( -max_unicode = int("FFFF", 16) - - -def missingRanges(charList): - rv = [] - if charList[0] != 0: - rv.append([0, charList[0][0] - 1]) - for i, item in enumerate(charList[:-1]): - rv.append([item[1] + 1, charList[i + 1][0] - 1]) - if charList[-1][1] != max_unicode: - rv.append([charList[-1][1] + 1, max_unicode]) - return rv - - -def listToRegexpStr(charList): - rv = [] - for item in charList: - if item[0] == item[1]: - rv.append(escapeRegexp(chr(item[0]))) - else: - rv.append(escapeRegexp(chr(item[0])) + "-" + - escapeRegexp(chr(item[1]))) - return "[%s]" % "".join(rv) - - -def hexToInt(hex_str): - return int(hex_str, 16) - - -def escapeRegexp(string): - specialCharacters = (".", "^", "$", "*", "+", "?", "{", "}", - "[", "]", "|", "(", ")", "-") - for char in specialCharacters: - string = string.replace(char, "\\" + char) - - return string - -# output from the above -nonXmlNameBMPRegexp = re.compile('[\x00-,/:-@\\[-\\^`\\{-\xb6\xb8-\xbf\xd7\xf7\u0132-\u0133\u013f-\u0140\u0149\u017f\u01c4-\u01cc\u01f1-\u01f3\u01f6-\u01f9\u0218-\u024f\u02a9-\u02ba\u02c2-\u02cf\u02d2-\u02ff\u0346-\u035f\u0362-\u0385\u038b\u038d\u03a2\u03cf\u03d7-\u03d9\u03db\u03dd\u03df\u03e1\u03f4-\u0400\u040d\u0450\u045d\u0482\u0487-\u048f\u04c5-\u04c6\u04c9-\u04ca\u04cd-\u04cf\u04ec-\u04ed\u04f6-\u04f7\u04fa-\u0530\u0557-\u0558\u055a-\u0560\u0587-\u0590\u05a2\u05ba\u05be\u05c0\u05c3\u05c5-\u05cf\u05eb-\u05ef\u05f3-\u0620\u063b-\u063f\u0653-\u065f\u066a-\u066f\u06b8-\u06b9\u06bf\u06cf\u06d4\u06e9\u06ee-\u06ef\u06fa-\u0900\u0904\u093a-\u093b\u094e-\u0950\u0955-\u0957\u0964-\u0965\u0970-\u0980\u0984\u098d-\u098e\u0991-\u0992\u09a9\u09b1\u09b3-\u09b5\u09ba-\u09bb\u09bd\u09c5-\u09c6\u09c9-\u09ca\u09ce-\u09d6\u09d8-\u09db\u09de\u09e4-\u09e5\u09f2-\u0a01\u0a03-\u0a04\u0a0b-\u0a0e\u0a11-\u0a12\u0a29\u0a31\u0a34\u0a37\u0a3a-\u0a3b\u0a3d\u0a43-\u0a46\u0a49-\u0a4a\u0a4e-\u0a58\u0a5d\u0a5f-\u0a65\u0a75-\u0a80\u0a84\u0a8c\u0a8e\u0a92\u0aa9\u0ab1\u0ab4\u0aba-\u0abb\u0ac6\u0aca\u0ace-\u0adf\u0ae1-\u0ae5\u0af0-\u0b00\u0b04\u0b0d-\u0b0e\u0b11-\u0b12\u0b29\u0b31\u0b34-\u0b35\u0b3a-\u0b3b\u0b44-\u0b46\u0b49-\u0b4a\u0b4e-\u0b55\u0b58-\u0b5b\u0b5e\u0b62-\u0b65\u0b70-\u0b81\u0b84\u0b8b-\u0b8d\u0b91\u0b96-\u0b98\u0b9b\u0b9d\u0ba0-\u0ba2\u0ba5-\u0ba7\u0bab-\u0bad\u0bb6\u0bba-\u0bbd\u0bc3-\u0bc5\u0bc9\u0bce-\u0bd6\u0bd8-\u0be6\u0bf0-\u0c00\u0c04\u0c0d\u0c11\u0c29\u0c34\u0c3a-\u0c3d\u0c45\u0c49\u0c4e-\u0c54\u0c57-\u0c5f\u0c62-\u0c65\u0c70-\u0c81\u0c84\u0c8d\u0c91\u0ca9\u0cb4\u0cba-\u0cbd\u0cc5\u0cc9\u0cce-\u0cd4\u0cd7-\u0cdd\u0cdf\u0ce2-\u0ce5\u0cf0-\u0d01\u0d04\u0d0d\u0d11\u0d29\u0d3a-\u0d3d\u0d44-\u0d45\u0d49\u0d4e-\u0d56\u0d58-\u0d5f\u0d62-\u0d65\u0d70-\u0e00\u0e2f\u0e3b-\u0e3f\u0e4f\u0e5a-\u0e80\u0e83\u0e85-\u0e86\u0e89\u0e8b-\u0e8c\u0e8e-\u0e93\u0e98\u0ea0\u0ea4\u0ea6\u0ea8-\u0ea9\u0eac\u0eaf\u0eba\u0ebe-\u0ebf\u0ec5\u0ec7\u0ece-\u0ecf\u0eda-\u0f17\u0f1a-\u0f1f\u0f2a-\u0f34\u0f36\u0f38\u0f3a-\u0f3d\u0f48\u0f6a-\u0f70\u0f85\u0f8c-\u0f8f\u0f96\u0f98\u0fae-\u0fb0\u0fb8\u0fba-\u109f\u10c6-\u10cf\u10f7-\u10ff\u1101\u1104\u1108\u110a\u110d\u1113-\u113b\u113d\u113f\u1141-\u114b\u114d\u114f\u1151-\u1153\u1156-\u1158\u115a-\u115e\u1162\u1164\u1166\u1168\u116a-\u116c\u116f-\u1171\u1174\u1176-\u119d\u119f-\u11a7\u11a9-\u11aa\u11ac-\u11ad\u11b0-\u11b6\u11b9\u11bb\u11c3-\u11ea\u11ec-\u11ef\u11f1-\u11f8\u11fa-\u1dff\u1e9c-\u1e9f\u1efa-\u1eff\u1f16-\u1f17\u1f1e-\u1f1f\u1f46-\u1f47\u1f4e-\u1f4f\u1f58\u1f5a\u1f5c\u1f5e\u1f7e-\u1f7f\u1fb5\u1fbd\u1fbf-\u1fc1\u1fc5\u1fcd-\u1fcf\u1fd4-\u1fd5\u1fdc-\u1fdf\u1fed-\u1ff1\u1ff5\u1ffd-\u20cf\u20dd-\u20e0\u20e2-\u2125\u2127-\u2129\u212c-\u212d\u212f-\u217f\u2183-\u3004\u3006\u3008-\u3020\u3030\u3036-\u3040\u3095-\u3098\u309b-\u309c\u309f-\u30a0\u30fb\u30ff-\u3104\u312d-\u4dff\u9fa6-\uabff\ud7a4-\uffff]') # noqa - -nonXmlNameFirstBMPRegexp = re.compile('[\x00-@\\[-\\^`\\{-\xbf\xd7\xf7\u0132-\u0133\u013f-\u0140\u0149\u017f\u01c4-\u01cc\u01f1-\u01f3\u01f6-\u01f9\u0218-\u024f\u02a9-\u02ba\u02c2-\u0385\u0387\u038b\u038d\u03a2\u03cf\u03d7-\u03d9\u03db\u03dd\u03df\u03e1\u03f4-\u0400\u040d\u0450\u045d\u0482-\u048f\u04c5-\u04c6\u04c9-\u04ca\u04cd-\u04cf\u04ec-\u04ed\u04f6-\u04f7\u04fa-\u0530\u0557-\u0558\u055a-\u0560\u0587-\u05cf\u05eb-\u05ef\u05f3-\u0620\u063b-\u0640\u064b-\u0670\u06b8-\u06b9\u06bf\u06cf\u06d4\u06d6-\u06e4\u06e7-\u0904\u093a-\u093c\u093e-\u0957\u0962-\u0984\u098d-\u098e\u0991-\u0992\u09a9\u09b1\u09b3-\u09b5\u09ba-\u09db\u09de\u09e2-\u09ef\u09f2-\u0a04\u0a0b-\u0a0e\u0a11-\u0a12\u0a29\u0a31\u0a34\u0a37\u0a3a-\u0a58\u0a5d\u0a5f-\u0a71\u0a75-\u0a84\u0a8c\u0a8e\u0a92\u0aa9\u0ab1\u0ab4\u0aba-\u0abc\u0abe-\u0adf\u0ae1-\u0b04\u0b0d-\u0b0e\u0b11-\u0b12\u0b29\u0b31\u0b34-\u0b35\u0b3a-\u0b3c\u0b3e-\u0b5b\u0b5e\u0b62-\u0b84\u0b8b-\u0b8d\u0b91\u0b96-\u0b98\u0b9b\u0b9d\u0ba0-\u0ba2\u0ba5-\u0ba7\u0bab-\u0bad\u0bb6\u0bba-\u0c04\u0c0d\u0c11\u0c29\u0c34\u0c3a-\u0c5f\u0c62-\u0c84\u0c8d\u0c91\u0ca9\u0cb4\u0cba-\u0cdd\u0cdf\u0ce2-\u0d04\u0d0d\u0d11\u0d29\u0d3a-\u0d5f\u0d62-\u0e00\u0e2f\u0e31\u0e34-\u0e3f\u0e46-\u0e80\u0e83\u0e85-\u0e86\u0e89\u0e8b-\u0e8c\u0e8e-\u0e93\u0e98\u0ea0\u0ea4\u0ea6\u0ea8-\u0ea9\u0eac\u0eaf\u0eb1\u0eb4-\u0ebc\u0ebe-\u0ebf\u0ec5-\u0f3f\u0f48\u0f6a-\u109f\u10c6-\u10cf\u10f7-\u10ff\u1101\u1104\u1108\u110a\u110d\u1113-\u113b\u113d\u113f\u1141-\u114b\u114d\u114f\u1151-\u1153\u1156-\u1158\u115a-\u115e\u1162\u1164\u1166\u1168\u116a-\u116c\u116f-\u1171\u1174\u1176-\u119d\u119f-\u11a7\u11a9-\u11aa\u11ac-\u11ad\u11b0-\u11b6\u11b9\u11bb\u11c3-\u11ea\u11ec-\u11ef\u11f1-\u11f8\u11fa-\u1dff\u1e9c-\u1e9f\u1efa-\u1eff\u1f16-\u1f17\u1f1e-\u1f1f\u1f46-\u1f47\u1f4e-\u1f4f\u1f58\u1f5a\u1f5c\u1f5e\u1f7e-\u1f7f\u1fb5\u1fbd\u1fbf-\u1fc1\u1fc5\u1fcd-\u1fcf\u1fd4-\u1fd5\u1fdc-\u1fdf\u1fed-\u1ff1\u1ff5\u1ffd-\u2125\u2127-\u2129\u212c-\u212d\u212f-\u217f\u2183-\u3006\u3008-\u3020\u302a-\u3040\u3095-\u30a0\u30fb-\u3104\u312d-\u4dff\u9fa6-\uabff\ud7a4-\uffff]') # noqa - -# Simpler things -nonPubidCharRegexp = re.compile("[^\x20\x0D\x0Aa-zA-Z0-9\\-'()+,./:=?;!*#@$_%]") - - -class InfosetFilter(object): - replacementRegexp = re.compile(r"U[\dA-F]{5,5}") - - def __init__(self, - dropXmlnsLocalName=False, - dropXmlnsAttrNs=False, - preventDoubleDashComments=False, - preventDashAtCommentEnd=False, - replaceFormFeedCharacters=True, - preventSingleQuotePubid=False): - - self.dropXmlnsLocalName = dropXmlnsLocalName - self.dropXmlnsAttrNs = dropXmlnsAttrNs - - self.preventDoubleDashComments = preventDoubleDashComments - self.preventDashAtCommentEnd = preventDashAtCommentEnd - - self.replaceFormFeedCharacters = replaceFormFeedCharacters - - self.preventSingleQuotePubid = preventSingleQuotePubid - - self.replaceCache = {} - - def coerceAttribute(self, name, namespace=None): - if self.dropXmlnsLocalName and name.startswith("xmlns:"): - warnings.warn("Attributes cannot begin with xmlns", DataLossWarning) - return None - elif (self.dropXmlnsAttrNs and - namespace == "http://www.w3.org/2000/xmlns/"): - warnings.warn("Attributes cannot be in the xml namespace", DataLossWarning) - return None - else: - return self.toXmlName(name) - - def coerceElement(self, name): - return self.toXmlName(name) - - def coerceComment(self, data): - if self.preventDoubleDashComments: - while "--" in data: - warnings.warn("Comments cannot contain adjacent dashes", DataLossWarning) - data = data.replace("--", "- -") - if data.endswith("-"): - warnings.warn("Comments cannot end in a dash", DataLossWarning) - data += " " - return data - - def coerceCharacters(self, data): - if self.replaceFormFeedCharacters: - for _ in range(data.count("\x0C")): - warnings.warn("Text cannot contain U+000C", DataLossWarning) - data = data.replace("\x0C", " ") - # Other non-xml characters - return data - - def coercePubid(self, data): - dataOutput = data - for char in nonPubidCharRegexp.findall(data): - warnings.warn("Coercing non-XML pubid", DataLossWarning) - replacement = self.getReplacementCharacter(char) - dataOutput = dataOutput.replace(char, replacement) - if self.preventSingleQuotePubid and dataOutput.find("'") >= 0: - warnings.warn("Pubid cannot contain single quote", DataLossWarning) - dataOutput = dataOutput.replace("'", self.getReplacementCharacter("'")) - return dataOutput - - def toXmlName(self, name): - nameFirst = name[0] - nameRest = name[1:] - m = nonXmlNameFirstBMPRegexp.match(nameFirst) - if m: - warnings.warn("Coercing non-XML name", DataLossWarning) - nameFirstOutput = self.getReplacementCharacter(nameFirst) - else: - nameFirstOutput = nameFirst - - nameRestOutput = nameRest - replaceChars = set(nonXmlNameBMPRegexp.findall(nameRest)) - for char in replaceChars: - warnings.warn("Coercing non-XML name", DataLossWarning) - replacement = self.getReplacementCharacter(char) - nameRestOutput = nameRestOutput.replace(char, replacement) - return nameFirstOutput + nameRestOutput - - def getReplacementCharacter(self, char): - if char in self.replaceCache: - replacement = self.replaceCache[char] - else: - replacement = self.escapeChar(char) - return replacement - - def fromXmlName(self, name): - for item in set(self.replacementRegexp.findall(name)): - name = name.replace(item, self.unescapeChar(item)) - return name - - def escapeChar(self, char): - replacement = "U%05X" % ord(char) - self.replaceCache[char] = replacement - return replacement - - def unescapeChar(self, charcode): - return chr(int(charcode[1:], 16)) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_inputstream.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_inputstream.py deleted file mode 100644 index 21c6bbc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_inputstream.py +++ /dev/null @@ -1,923 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from pip._vendor.six import text_type, binary_type -from pip._vendor.six.moves import http_client, urllib - -import codecs -import re - -from pip._vendor import webencodings - -from .constants import EOF, spaceCharacters, asciiLetters, asciiUppercase -from .constants import _ReparseException -from . import _utils - -from io import StringIO - -try: - from io import BytesIO -except ImportError: - BytesIO = StringIO - -# Non-unicode versions of constants for use in the pre-parser -spaceCharactersBytes = frozenset([item.encode("ascii") for item in spaceCharacters]) -asciiLettersBytes = frozenset([item.encode("ascii") for item in asciiLetters]) -asciiUppercaseBytes = frozenset([item.encode("ascii") for item in asciiUppercase]) -spacesAngleBrackets = spaceCharactersBytes | frozenset([b">", b"<"]) - - -invalid_unicode_no_surrogate = "[\u0001-\u0008\u000B\u000E-\u001F\u007F-\u009F\uFDD0-\uFDEF\uFFFE\uFFFF\U0001FFFE\U0001FFFF\U0002FFFE\U0002FFFF\U0003FFFE\U0003FFFF\U0004FFFE\U0004FFFF\U0005FFFE\U0005FFFF\U0006FFFE\U0006FFFF\U0007FFFE\U0007FFFF\U0008FFFE\U0008FFFF\U0009FFFE\U0009FFFF\U000AFFFE\U000AFFFF\U000BFFFE\U000BFFFF\U000CFFFE\U000CFFFF\U000DFFFE\U000DFFFF\U000EFFFE\U000EFFFF\U000FFFFE\U000FFFFF\U0010FFFE\U0010FFFF]" # noqa - -if _utils.supports_lone_surrogates: - # Use one extra step of indirection and create surrogates with - # eval. Not using this indirection would introduce an illegal - # unicode literal on platforms not supporting such lone - # surrogates. - assert invalid_unicode_no_surrogate[-1] == "]" and invalid_unicode_no_surrogate.count("]") == 1 - invalid_unicode_re = re.compile(invalid_unicode_no_surrogate[:-1] + - eval('"\\uD800-\\uDFFF"') + # pylint:disable=eval-used - "]") -else: - invalid_unicode_re = re.compile(invalid_unicode_no_surrogate) - -non_bmp_invalid_codepoints = set([0x1FFFE, 0x1FFFF, 0x2FFFE, 0x2FFFF, 0x3FFFE, - 0x3FFFF, 0x4FFFE, 0x4FFFF, 0x5FFFE, 0x5FFFF, - 0x6FFFE, 0x6FFFF, 0x7FFFE, 0x7FFFF, 0x8FFFE, - 0x8FFFF, 0x9FFFE, 0x9FFFF, 0xAFFFE, 0xAFFFF, - 0xBFFFE, 0xBFFFF, 0xCFFFE, 0xCFFFF, 0xDFFFE, - 0xDFFFF, 0xEFFFE, 0xEFFFF, 0xFFFFE, 0xFFFFF, - 0x10FFFE, 0x10FFFF]) - -ascii_punctuation_re = re.compile("[\u0009-\u000D\u0020-\u002F\u003A-\u0040\u005C\u005B-\u0060\u007B-\u007E]") - -# Cache for charsUntil() -charsUntilRegEx = {} - - -class BufferedStream(object): - """Buffering for streams that do not have buffering of their own - - The buffer is implemented as a list of chunks on the assumption that - joining many strings will be slow since it is O(n**2) - """ - - def __init__(self, stream): - self.stream = stream - self.buffer = [] - self.position = [-1, 0] # chunk number, offset - - def tell(self): - pos = 0 - for chunk in self.buffer[:self.position[0]]: - pos += len(chunk) - pos += self.position[1] - return pos - - def seek(self, pos): - assert pos <= self._bufferedBytes() - offset = pos - i = 0 - while len(self.buffer[i]) < offset: - offset -= len(self.buffer[i]) - i += 1 - self.position = [i, offset] - - def read(self, bytes): - if not self.buffer: - return self._readStream(bytes) - elif (self.position[0] == len(self.buffer) and - self.position[1] == len(self.buffer[-1])): - return self._readStream(bytes) - else: - return self._readFromBuffer(bytes) - - def _bufferedBytes(self): - return sum([len(item) for item in self.buffer]) - - def _readStream(self, bytes): - data = self.stream.read(bytes) - self.buffer.append(data) - self.position[0] += 1 - self.position[1] = len(data) - return data - - def _readFromBuffer(self, bytes): - remainingBytes = bytes - rv = [] - bufferIndex = self.position[0] - bufferOffset = self.position[1] - while bufferIndex < len(self.buffer) and remainingBytes != 0: - assert remainingBytes > 0 - bufferedData = self.buffer[bufferIndex] - - if remainingBytes <= len(bufferedData) - bufferOffset: - bytesToRead = remainingBytes - self.position = [bufferIndex, bufferOffset + bytesToRead] - else: - bytesToRead = len(bufferedData) - bufferOffset - self.position = [bufferIndex, len(bufferedData)] - bufferIndex += 1 - rv.append(bufferedData[bufferOffset:bufferOffset + bytesToRead]) - remainingBytes -= bytesToRead - - bufferOffset = 0 - - if remainingBytes: - rv.append(self._readStream(remainingBytes)) - - return b"".join(rv) - - -def HTMLInputStream(source, **kwargs): - # Work around Python bug #20007: read(0) closes the connection. - # http://bugs.python.org/issue20007 - if (isinstance(source, http_client.HTTPResponse) or - # Also check for addinfourl wrapping HTTPResponse - (isinstance(source, urllib.response.addbase) and - isinstance(source.fp, http_client.HTTPResponse))): - isUnicode = False - elif hasattr(source, "read"): - isUnicode = isinstance(source.read(0), text_type) - else: - isUnicode = isinstance(source, text_type) - - if isUnicode: - encodings = [x for x in kwargs if x.endswith("_encoding")] - if encodings: - raise TypeError("Cannot set an encoding with a unicode input, set %r" % encodings) - - return HTMLUnicodeInputStream(source, **kwargs) - else: - return HTMLBinaryInputStream(source, **kwargs) - - -class HTMLUnicodeInputStream(object): - """Provides a unicode stream of characters to the HTMLTokenizer. - - This class takes care of character encoding and removing or replacing - incorrect byte-sequences and also provides column and line tracking. - - """ - - _defaultChunkSize = 10240 - - def __init__(self, source): - """Initialises the HTMLInputStream. - - HTMLInputStream(source, [encoding]) -> Normalized stream from source - for use by html5lib. - - source can be either a file-object, local filename or a string. - - 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) - - """ - - if not _utils.supports_lone_surrogates: - # Such platforms will have already checked for such - # surrogate errors, so no need to do this checking. - self.reportCharacterErrors = None - elif len("\U0010FFFF") == 1: - self.reportCharacterErrors = self.characterErrorsUCS4 - else: - self.reportCharacterErrors = self.characterErrorsUCS2 - - # List of where new lines occur - self.newLines = [0] - - self.charEncoding = (lookupEncoding("utf-8"), "certain") - self.dataStream = self.openStream(source) - - self.reset() - - def reset(self): - self.chunk = "" - self.chunkSize = 0 - self.chunkOffset = 0 - self.errors = [] - - # number of (complete) lines in previous chunks - self.prevNumLines = 0 - # number of columns in the last line of the previous chunk - self.prevNumCols = 0 - - # Deal with CR LF and surrogates split over chunk boundaries - self._bufferedCharacter = None - - def openStream(self, source): - """Produces a file object from source. - - source can be either a file object, local filename or a string. - - """ - # Already a file object - if hasattr(source, 'read'): - stream = source - else: - stream = StringIO(source) - - return stream - - def _position(self, offset): - chunk = self.chunk - nLines = chunk.count('\n', 0, offset) - positionLine = self.prevNumLines + nLines - lastLinePos = chunk.rfind('\n', 0, offset) - if lastLinePos == -1: - positionColumn = self.prevNumCols + offset - else: - positionColumn = offset - (lastLinePos + 1) - return (positionLine, positionColumn) - - def position(self): - """Returns (line, col) of the current position in the stream.""" - line, col = self._position(self.chunkOffset) - return (line + 1, col) - - def char(self): - """ Read one character from the stream or queue if available. Return - EOF when EOF is reached. - """ - # Read a new chunk from the input stream if necessary - if self.chunkOffset >= self.chunkSize: - if not self.readChunk(): - return EOF - - chunkOffset = self.chunkOffset - char = self.chunk[chunkOffset] - self.chunkOffset = chunkOffset + 1 - - return char - - def readChunk(self, chunkSize=None): - if chunkSize is None: - chunkSize = self._defaultChunkSize - - self.prevNumLines, self.prevNumCols = self._position(self.chunkSize) - - self.chunk = "" - self.chunkSize = 0 - self.chunkOffset = 0 - - data = self.dataStream.read(chunkSize) - - # Deal with CR LF and surrogates broken across chunks - if self._bufferedCharacter: - data = self._bufferedCharacter + data - self._bufferedCharacter = None - elif not data: - # We have no more data, bye-bye stream - return False - - if len(data) > 1: - lastv = ord(data[-1]) - if lastv == 0x0D or 0xD800 <= lastv <= 0xDBFF: - self._bufferedCharacter = data[-1] - data = data[:-1] - - if self.reportCharacterErrors: - self.reportCharacterErrors(data) - - # Replace invalid characters - data = data.replace("\r\n", "\n") - data = data.replace("\r", "\n") - - self.chunk = data - self.chunkSize = len(data) - - return True - - def characterErrorsUCS4(self, data): - for _ in range(len(invalid_unicode_re.findall(data))): - self.errors.append("invalid-codepoint") - - def characterErrorsUCS2(self, data): - # Someone picked the wrong compile option - # You lose - skip = False - for match in invalid_unicode_re.finditer(data): - if skip: - continue - codepoint = ord(match.group()) - pos = match.start() - # Pretty sure there should be endianness issues here - if _utils.isSurrogatePair(data[pos:pos + 2]): - # We have a surrogate pair! - char_val = _utils.surrogatePairToCodepoint(data[pos:pos + 2]) - if char_val in non_bmp_invalid_codepoints: - self.errors.append("invalid-codepoint") - skip = True - elif (codepoint >= 0xD800 and codepoint <= 0xDFFF and - pos == len(data) - 1): - self.errors.append("invalid-codepoint") - else: - skip = False - self.errors.append("invalid-codepoint") - - def charsUntil(self, characters, opposite=False): - """ Returns a string of characters from the stream up to but not - including any character in 'characters' or EOF. 'characters' must be - a container that supports the 'in' method and iteration over its - characters. - """ - - # Use a cache of regexps to find the required characters - try: - chars = charsUntilRegEx[(characters, opposite)] - except KeyError: - if __debug__: - for c in characters: - assert(ord(c) < 128) - regex = "".join(["\\x%02x" % ord(c) for c in characters]) - if not opposite: - regex = "^%s" % regex - chars = charsUntilRegEx[(characters, opposite)] = re.compile("[%s]+" % regex) - - rv = [] - - while True: - # Find the longest matching prefix - m = chars.match(self.chunk, self.chunkOffset) - if m is None: - # If nothing matched, and it wasn't because we ran out of chunk, - # then stop - if self.chunkOffset != self.chunkSize: - break - else: - end = m.end() - # If not the whole chunk matched, return everything - # up to the part that didn't match - if end != self.chunkSize: - rv.append(self.chunk[self.chunkOffset:end]) - self.chunkOffset = end - break - # If the whole remainder of the chunk matched, - # use it all and read the next chunk - rv.append(self.chunk[self.chunkOffset:]) - if not self.readChunk(): - # Reached EOF - break - - r = "".join(rv) - return r - - def unget(self, char): - # Only one character is allowed to be ungotten at once - it must - # be consumed again before any further call to unget - if char is not None: - if self.chunkOffset == 0: - # unget is called quite rarely, so it's a good idea to do - # more work here if it saves a bit of work in the frequently - # called char and charsUntil. - # So, just prepend the ungotten character onto the current - # chunk: - self.chunk = char + self.chunk - self.chunkSize += 1 - else: - self.chunkOffset -= 1 - assert self.chunk[self.chunkOffset] == char - - -class HTMLBinaryInputStream(HTMLUnicodeInputStream): - """Provides a unicode stream of characters to the HTMLTokenizer. - - This class takes care of character encoding and removing or replacing - incorrect byte-sequences and also provides column and line tracking. - - """ - - def __init__(self, source, override_encoding=None, transport_encoding=None, - same_origin_parent_encoding=None, likely_encoding=None, - default_encoding="windows-1252", useChardet=True): - """Initialises the HTMLInputStream. - - HTMLInputStream(source, [encoding]) -> Normalized stream from source - for use by html5lib. - - source can be either a file-object, local filename or a string. - - 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) - - """ - # Raw Stream - for unicode objects this will encode to utf-8 and set - # self.charEncoding as appropriate - self.rawStream = self.openStream(source) - - HTMLUnicodeInputStream.__init__(self, self.rawStream) - - # Encoding Information - # Number of bytes to use when looking for a meta element with - # encoding information - self.numBytesMeta = 1024 - # Number of bytes to use when using detecting encoding using chardet - self.numBytesChardet = 100 - # Things from args - self.override_encoding = override_encoding - self.transport_encoding = transport_encoding - self.same_origin_parent_encoding = same_origin_parent_encoding - self.likely_encoding = likely_encoding - self.default_encoding = default_encoding - - # Determine encoding - self.charEncoding = self.determineEncoding(useChardet) - assert self.charEncoding[0] is not None - - # Call superclass - self.reset() - - def reset(self): - self.dataStream = self.charEncoding[0].codec_info.streamreader(self.rawStream, 'replace') - HTMLUnicodeInputStream.reset(self) - - def openStream(self, source): - """Produces a file object from source. - - source can be either a file object, local filename or a string. - - """ - # Already a file object - if hasattr(source, 'read'): - stream = source - else: - stream = BytesIO(source) - - try: - stream.seek(stream.tell()) - except: # pylint:disable=bare-except - stream = BufferedStream(stream) - - return stream - - def determineEncoding(self, chardet=True): - # BOMs take precedence over everything - # This will also read past the BOM if present - charEncoding = self.detectBOM(), "certain" - if charEncoding[0] is not None: - return charEncoding - - # If we've been overriden, we've been overriden - charEncoding = lookupEncoding(self.override_encoding), "certain" - if charEncoding[0] is not None: - return charEncoding - - # Now check the transport layer - charEncoding = lookupEncoding(self.transport_encoding), "certain" - if charEncoding[0] is not None: - return charEncoding - - # Look for meta elements with encoding information - charEncoding = self.detectEncodingMeta(), "tentative" - if charEncoding[0] is not None: - return charEncoding - - # Parent document encoding - charEncoding = lookupEncoding(self.same_origin_parent_encoding), "tentative" - if charEncoding[0] is not None and not charEncoding[0].name.startswith("utf-16"): - return charEncoding - - # "likely" encoding - charEncoding = lookupEncoding(self.likely_encoding), "tentative" - if charEncoding[0] is not None: - return charEncoding - - # Guess with chardet, if available - if chardet: - try: - from pip._vendor.chardet.universaldetector import UniversalDetector - except ImportError: - pass - else: - buffers = [] - detector = UniversalDetector() - while not detector.done: - buffer = self.rawStream.read(self.numBytesChardet) - assert isinstance(buffer, bytes) - if not buffer: - break - buffers.append(buffer) - detector.feed(buffer) - detector.close() - encoding = lookupEncoding(detector.result['encoding']) - self.rawStream.seek(0) - if encoding is not None: - return encoding, "tentative" - - # Try the default encoding - charEncoding = lookupEncoding(self.default_encoding), "tentative" - if charEncoding[0] is not None: - return charEncoding - - # Fallback to html5lib's default if even that hasn't worked - return lookupEncoding("windows-1252"), "tentative" - - def changeEncoding(self, newEncoding): - assert self.charEncoding[1] != "certain" - newEncoding = lookupEncoding(newEncoding) - if newEncoding is None: - return - if newEncoding.name in ("utf-16be", "utf-16le"): - newEncoding = lookupEncoding("utf-8") - assert newEncoding is not None - elif newEncoding == self.charEncoding[0]: - self.charEncoding = (self.charEncoding[0], "certain") - else: - self.rawStream.seek(0) - self.charEncoding = (newEncoding, "certain") - self.reset() - raise _ReparseException("Encoding changed from %s to %s" % (self.charEncoding[0], newEncoding)) - - def detectBOM(self): - """Attempts to detect at BOM at the start of the stream. If - an encoding can be determined from the BOM return the name of the - encoding otherwise return None""" - bomDict = { - codecs.BOM_UTF8: 'utf-8', - codecs.BOM_UTF16_LE: 'utf-16le', codecs.BOM_UTF16_BE: 'utf-16be', - codecs.BOM_UTF32_LE: 'utf-32le', codecs.BOM_UTF32_BE: 'utf-32be' - } - - # Go to beginning of file and read in 4 bytes - string = self.rawStream.read(4) - assert isinstance(string, bytes) - - # Try detecting the BOM using bytes from the string - encoding = bomDict.get(string[:3]) # UTF-8 - seek = 3 - if not encoding: - # Need to detect UTF-32 before UTF-16 - encoding = bomDict.get(string) # UTF-32 - seek = 4 - if not encoding: - encoding = bomDict.get(string[:2]) # UTF-16 - seek = 2 - - # Set the read position past the BOM if one was found, otherwise - # set it to the start of the stream - if encoding: - self.rawStream.seek(seek) - return lookupEncoding(encoding) - else: - self.rawStream.seek(0) - return None - - def detectEncodingMeta(self): - """Report the encoding declared by the meta element - """ - buffer = self.rawStream.read(self.numBytesMeta) - assert isinstance(buffer, bytes) - parser = EncodingParser(buffer) - self.rawStream.seek(0) - encoding = parser.getEncoding() - - if encoding is not None and encoding.name in ("utf-16be", "utf-16le"): - encoding = lookupEncoding("utf-8") - - return encoding - - -class EncodingBytes(bytes): - """String-like object with an associated position and various extra methods - If the position is ever greater than the string length then an exception is - raised""" - def __new__(self, value): - assert isinstance(value, bytes) - return bytes.__new__(self, value.lower()) - - def __init__(self, value): - # pylint:disable=unused-argument - self._position = -1 - - def __iter__(self): - return self - - def __next__(self): - p = self._position = self._position + 1 - if p >= len(self): - raise StopIteration - elif p < 0: - raise TypeError - return self[p:p + 1] - - def next(self): - # Py2 compat - return self.__next__() - - def previous(self): - p = self._position - if p >= len(self): - raise StopIteration - elif p < 0: - raise TypeError - self._position = p = p - 1 - return self[p:p + 1] - - def setPosition(self, position): - if self._position >= len(self): - raise StopIteration - self._position = position - - def getPosition(self): - if self._position >= len(self): - raise StopIteration - if self._position >= 0: - return self._position - else: - return None - - position = property(getPosition, setPosition) - - def getCurrentByte(self): - return self[self.position:self.position + 1] - - currentByte = property(getCurrentByte) - - def skip(self, chars=spaceCharactersBytes): - """Skip past a list of characters""" - p = self.position # use property for the error-checking - while p < len(self): - c = self[p:p + 1] - if c not in chars: - self._position = p - return c - p += 1 - self._position = p - return None - - def skipUntil(self, chars): - p = self.position - while p < len(self): - c = self[p:p + 1] - if c in chars: - self._position = p - return c - p += 1 - self._position = p - return None - - def matchBytes(self, bytes): - """Look for a sequence of bytes at the start of a string. If the bytes - are found return True and advance the position to the byte after the - match. Otherwise return False and leave the position alone""" - p = self.position - data = self[p:p + len(bytes)] - rv = data.startswith(bytes) - if rv: - self.position += len(bytes) - return rv - - def jumpTo(self, bytes): - """Look for the next sequence of bytes matching a given sequence. If - a match is found advance the position to the last byte of the match""" - newPosition = self[self.position:].find(bytes) - if newPosition > -1: - # XXX: This is ugly, but I can't see a nicer way to fix this. - if self._position == -1: - self._position = 0 - self._position += (newPosition + len(bytes) - 1) - return True - else: - raise StopIteration - - -class EncodingParser(object): - """Mini parser for detecting character encoding from meta elements""" - - def __init__(self, data): - """string - the data to work on for encoding detection""" - self.data = EncodingBytes(data) - self.encoding = None - - def getEncoding(self): - methodDispatch = ( - (b"<!--", self.handleComment), - (b"<meta", self.handleMeta), - (b"</", self.handlePossibleEndTag), - (b"<!", self.handleOther), - (b"<?", self.handleOther), - (b"<", self.handlePossibleStartTag)) - for _ in self.data: - keepParsing = True - for key, method in methodDispatch: - if self.data.matchBytes(key): - try: - keepParsing = method() - break - except StopIteration: - keepParsing = False - break - if not keepParsing: - break - - return self.encoding - - def handleComment(self): - """Skip over comments""" - return self.data.jumpTo(b"-->") - - def handleMeta(self): - if self.data.currentByte not in spaceCharactersBytes: - # if we have <meta not followed by a space so just keep going - return True - # We have a valid meta element we want to search for attributes - hasPragma = False - pendingEncoding = None - while True: - # Try to find the next attribute after the current position - attr = self.getAttribute() - if attr is None: - return True - else: - if attr[0] == b"http-equiv": - hasPragma = attr[1] == b"content-type" - if hasPragma and pendingEncoding is not None: - self.encoding = pendingEncoding - return False - elif attr[0] == b"charset": - tentativeEncoding = attr[1] - codec = lookupEncoding(tentativeEncoding) - if codec is not None: - self.encoding = codec - return False - elif attr[0] == b"content": - contentParser = ContentAttrParser(EncodingBytes(attr[1])) - tentativeEncoding = contentParser.parse() - if tentativeEncoding is not None: - codec = lookupEncoding(tentativeEncoding) - if codec is not None: - if hasPragma: - self.encoding = codec - return False - else: - pendingEncoding = codec - - def handlePossibleStartTag(self): - return self.handlePossibleTag(False) - - def handlePossibleEndTag(self): - next(self.data) - return self.handlePossibleTag(True) - - def handlePossibleTag(self, endTag): - data = self.data - if data.currentByte not in asciiLettersBytes: - # If the next byte is not an ascii letter either ignore this - # fragment (possible start tag case) or treat it according to - # handleOther - if endTag: - data.previous() - self.handleOther() - return True - - c = data.skipUntil(spacesAngleBrackets) - if c == b"<": - # return to the first step in the overall "two step" algorithm - # reprocessing the < byte - data.previous() - else: - # Read all attributes - attr = self.getAttribute() - while attr is not None: - attr = self.getAttribute() - return True - - def handleOther(self): - return self.data.jumpTo(b">") - - def getAttribute(self): - """Return a name,value pair for the next attribute in the stream, - if one is found, or None""" - data = self.data - # Step 1 (skip chars) - c = data.skip(spaceCharactersBytes | frozenset([b"/"])) - assert c is None or len(c) == 1 - # Step 2 - if c in (b">", None): - return None - # Step 3 - attrName = [] - attrValue = [] - # Step 4 attribute name - while True: - if c == b"=" and attrName: - break - elif c in spaceCharactersBytes: - # Step 6! - c = data.skip() - break - elif c in (b"/", b">"): - return b"".join(attrName), b"" - elif c in asciiUppercaseBytes: - attrName.append(c.lower()) - elif c is None: - return None - else: - attrName.append(c) - # Step 5 - c = next(data) - # Step 7 - if c != b"=": - data.previous() - return b"".join(attrName), b"" - # Step 8 - next(data) - # Step 9 - c = data.skip() - # Step 10 - if c in (b"'", b'"'): - # 10.1 - quoteChar = c - while True: - # 10.2 - c = next(data) - # 10.3 - if c == quoteChar: - next(data) - return b"".join(attrName), b"".join(attrValue) - # 10.4 - elif c in asciiUppercaseBytes: - attrValue.append(c.lower()) - # 10.5 - else: - attrValue.append(c) - elif c == b">": - return b"".join(attrName), b"" - elif c in asciiUppercaseBytes: - attrValue.append(c.lower()) - elif c is None: - return None - else: - attrValue.append(c) - # Step 11 - while True: - c = next(data) - if c in spacesAngleBrackets: - return b"".join(attrName), b"".join(attrValue) - elif c in asciiUppercaseBytes: - attrValue.append(c.lower()) - elif c is None: - return None - else: - attrValue.append(c) - - -class ContentAttrParser(object): - def __init__(self, data): - assert isinstance(data, bytes) - self.data = data - - def parse(self): - try: - # Check if the attr name is charset - # otherwise return - self.data.jumpTo(b"charset") - self.data.position += 1 - self.data.skip() - if not self.data.currentByte == b"=": - # If there is no = sign keep looking for attrs - return None - self.data.position += 1 - self.data.skip() - # Look for an encoding between matching quote marks - if self.data.currentByte in (b'"', b"'"): - quoteMark = self.data.currentByte - self.data.position += 1 - oldPosition = self.data.position - if self.data.jumpTo(quoteMark): - return self.data[oldPosition:self.data.position] - else: - return None - else: - # Unquoted value - oldPosition = self.data.position - try: - self.data.skipUntil(spaceCharactersBytes) - return self.data[oldPosition:self.data.position] - except StopIteration: - # Return the whole remaining value - return self.data[oldPosition:] - except StopIteration: - return None - - -def lookupEncoding(encoding): - """Return the python codec name corresponding to an encoding or None if the - string doesn't correspond to a valid encoding.""" - if isinstance(encoding, binary_type): - try: - encoding = encoding.decode("ascii") - except UnicodeDecodeError: - return None - - if encoding is not None: - try: - return webencodings.lookup(encoding) - except AttributeError: - return None - else: - return None diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_tokenizer.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_tokenizer.py deleted file mode 100644 index ef1ccf8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_tokenizer.py +++ /dev/null @@ -1,1721 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from pip._vendor.six import unichr as chr - -from collections import deque - -from .constants import spaceCharacters -from .constants import entities -from .constants import asciiLetters, asciiUpper2Lower -from .constants import digits, hexDigits, EOF -from .constants import tokenTypes, tagTokenTypes -from .constants import replacementCharacters - -from ._inputstream import HTMLInputStream - -from ._trie import Trie - -entitiesTrie = Trie(entities) - - -class HTMLTokenizer(object): - """ This class takes care of tokenizing HTML. - - * self.currentToken - Holds the token that is currently being processed. - - * self.state - Holds a reference to the method to be invoked... XXX - - * self.stream - Points to HTMLInputStream object. - """ - - def __init__(self, stream, parser=None, **kwargs): - - self.stream = HTMLInputStream(stream, **kwargs) - self.parser = parser - - # Setup the initial tokenizer state - self.escapeFlag = False - self.lastFourChars = [] - self.state = self.dataState - self.escape = False - - # The current token being created - self.currentToken = None - super(HTMLTokenizer, self).__init__() - - def __iter__(self): - """ This is where the magic happens. - - We do our usually processing through the states and when we have a token - to return we yield the token which pauses processing until the next token - is requested. - """ - self.tokenQueue = deque([]) - # Start processing. When EOF is reached self.state will return False - # instead of True and the loop will terminate. - while self.state(): - while self.stream.errors: - yield {"type": tokenTypes["ParseError"], "data": self.stream.errors.pop(0)} - while self.tokenQueue: - yield self.tokenQueue.popleft() - - def consumeNumberEntity(self, isHex): - """This function returns either U+FFFD or the character based on the - decimal or hexadecimal representation. It also discards ";" if present. - If not present self.tokenQueue.append({"type": tokenTypes["ParseError"]}) is invoked. - """ - - allowed = digits - radix = 10 - if isHex: - allowed = hexDigits - radix = 16 - - charStack = [] - - # Consume all the characters that are in range while making sure we - # don't hit an EOF. - c = self.stream.char() - while c in allowed and c is not EOF: - charStack.append(c) - c = self.stream.char() - - # Convert the set of characters consumed to an int. - charAsInt = int("".join(charStack), radix) - - # Certain characters get replaced with others - if charAsInt in replacementCharacters: - char = replacementCharacters[charAsInt] - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "illegal-codepoint-for-numeric-entity", - "datavars": {"charAsInt": charAsInt}}) - elif ((0xD800 <= charAsInt <= 0xDFFF) or - (charAsInt > 0x10FFFF)): - char = "\uFFFD" - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "illegal-codepoint-for-numeric-entity", - "datavars": {"charAsInt": charAsInt}}) - else: - # Should speed up this check somehow (e.g. move the set to a constant) - if ((0x0001 <= charAsInt <= 0x0008) or - (0x000E <= charAsInt <= 0x001F) or - (0x007F <= charAsInt <= 0x009F) or - (0xFDD0 <= charAsInt <= 0xFDEF) or - charAsInt in frozenset([0x000B, 0xFFFE, 0xFFFF, 0x1FFFE, - 0x1FFFF, 0x2FFFE, 0x2FFFF, 0x3FFFE, - 0x3FFFF, 0x4FFFE, 0x4FFFF, 0x5FFFE, - 0x5FFFF, 0x6FFFE, 0x6FFFF, 0x7FFFE, - 0x7FFFF, 0x8FFFE, 0x8FFFF, 0x9FFFE, - 0x9FFFF, 0xAFFFE, 0xAFFFF, 0xBFFFE, - 0xBFFFF, 0xCFFFE, 0xCFFFF, 0xDFFFE, - 0xDFFFF, 0xEFFFE, 0xEFFFF, 0xFFFFE, - 0xFFFFF, 0x10FFFE, 0x10FFFF])): - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": - "illegal-codepoint-for-numeric-entity", - "datavars": {"charAsInt": charAsInt}}) - try: - # Try/except needed as UCS-2 Python builds' unichar only works - # within the BMP. - char = chr(charAsInt) - except ValueError: - v = charAsInt - 0x10000 - char = chr(0xD800 | (v >> 10)) + chr(0xDC00 | (v & 0x3FF)) - - # Discard the ; if present. Otherwise, put it back on the queue and - # invoke parseError on parser. - if c != ";": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "numeric-entity-without-semicolon"}) - self.stream.unget(c) - - return char - - def consumeEntity(self, allowedChar=None, fromAttribute=False): - # Initialise to the default output for when no entity is matched - output = "&" - - charStack = [self.stream.char()] - if (charStack[0] in spaceCharacters or charStack[0] in (EOF, "<", "&") or - (allowedChar is not None and allowedChar == charStack[0])): - self.stream.unget(charStack[0]) - - elif charStack[0] == "#": - # Read the next character to see if it's hex or decimal - hex = False - charStack.append(self.stream.char()) - if charStack[-1] in ("x", "X"): - hex = True - charStack.append(self.stream.char()) - - # charStack[-1] should be the first digit - if (hex and charStack[-1] in hexDigits) \ - or (not hex and charStack[-1] in digits): - # At least one digit found, so consume the whole number - self.stream.unget(charStack[-1]) - output = self.consumeNumberEntity(hex) - else: - # No digits found - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "expected-numeric-entity"}) - self.stream.unget(charStack.pop()) - output = "&" + "".join(charStack) - - else: - # At this point in the process might have named entity. Entities - # are stored in the global variable "entities". - # - # Consume characters and compare to these to a substring of the - # entity names in the list until the substring no longer matches. - while (charStack[-1] is not EOF): - if not entitiesTrie.has_keys_with_prefix("".join(charStack)): - break - charStack.append(self.stream.char()) - - # At this point we have a string that starts with some characters - # that may match an entity - # Try to find the longest entity the string will match to take care - # of ¬i for instance. - try: - entityName = entitiesTrie.longest_prefix("".join(charStack[:-1])) - entityLength = len(entityName) - except KeyError: - entityName = None - - if entityName is not None: - if entityName[-1] != ";": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "named-entity-without-semicolon"}) - if (entityName[-1] != ";" and fromAttribute and - (charStack[entityLength] in asciiLetters or - charStack[entityLength] in digits or - charStack[entityLength] == "=")): - self.stream.unget(charStack.pop()) - output = "&" + "".join(charStack) - else: - output = entities[entityName] - self.stream.unget(charStack.pop()) - output += "".join(charStack[entityLength:]) - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-named-entity"}) - self.stream.unget(charStack.pop()) - output = "&" + "".join(charStack) - - if fromAttribute: - self.currentToken["data"][-1][1] += output - else: - if output in spaceCharacters: - tokenType = "SpaceCharacters" - else: - tokenType = "Characters" - self.tokenQueue.append({"type": tokenTypes[tokenType], "data": output}) - - def processEntityInAttribute(self, allowedChar): - """This method replaces the need for "entityInAttributeValueState". - """ - self.consumeEntity(allowedChar=allowedChar, fromAttribute=True) - - def emitCurrentToken(self): - """This method is a generic handler for emitting the tags. It also sets - the state to "data" because that's what's needed after a token has been - emitted. - """ - token = self.currentToken - # Add token to the queue to be yielded - if (token["type"] in tagTokenTypes): - token["name"] = token["name"].translate(asciiUpper2Lower) - if token["type"] == tokenTypes["EndTag"]: - if token["data"]: - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "attributes-in-end-tag"}) - if token["selfClosing"]: - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "self-closing-flag-on-end-tag"}) - self.tokenQueue.append(token) - self.state = self.dataState - - # Below are the various tokenizer states worked out. - def dataState(self): - data = self.stream.char() - if data == "&": - self.state = self.entityDataState - elif data == "<": - self.state = self.tagOpenState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\u0000"}) - elif data is EOF: - # Tokenization ends. - return False - elif data in spaceCharacters: - # Directly after emitting a token you switch back to the "data - # state". At that point spaceCharacters are important so they are - # emitted separately. - self.tokenQueue.append({"type": tokenTypes["SpaceCharacters"], "data": - data + self.stream.charsUntil(spaceCharacters, True)}) - # No need to update lastFourChars here, since the first space will - # have already been appended to lastFourChars and will have broken - # any <!-- or --> sequences - else: - chars = self.stream.charsUntil(("&", "<", "\u0000")) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + chars}) - return True - - def entityDataState(self): - self.consumeEntity() - self.state = self.dataState - return True - - def rcdataState(self): - data = self.stream.char() - if data == "&": - self.state = self.characterReferenceInRcdata - elif data == "<": - self.state = self.rcdataLessThanSignState - elif data == EOF: - # Tokenization ends. - return False - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - elif data in spaceCharacters: - # Directly after emitting a token you switch back to the "data - # state". At that point spaceCharacters are important so they are - # emitted separately. - self.tokenQueue.append({"type": tokenTypes["SpaceCharacters"], "data": - data + self.stream.charsUntil(spaceCharacters, True)}) - # No need to update lastFourChars here, since the first space will - # have already been appended to lastFourChars and will have broken - # any <!-- or --> sequences - else: - chars = self.stream.charsUntil(("&", "<", "\u0000")) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + chars}) - return True - - def characterReferenceInRcdata(self): - self.consumeEntity() - self.state = self.rcdataState - return True - - def rawtextState(self): - data = self.stream.char() - if data == "<": - self.state = self.rawtextLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - elif data == EOF: - # Tokenization ends. - return False - else: - chars = self.stream.charsUntil(("<", "\u0000")) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + chars}) - return True - - def scriptDataState(self): - data = self.stream.char() - if data == "<": - self.state = self.scriptDataLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - elif data == EOF: - # Tokenization ends. - return False - else: - chars = self.stream.charsUntil(("<", "\u0000")) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + chars}) - return True - - def plaintextState(self): - data = self.stream.char() - if data == EOF: - # Tokenization ends. - return False - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + self.stream.charsUntil("\u0000")}) - return True - - def tagOpenState(self): - data = self.stream.char() - if data == "!": - self.state = self.markupDeclarationOpenState - elif data == "/": - self.state = self.closeTagOpenState - elif data in asciiLetters: - self.currentToken = {"type": tokenTypes["StartTag"], - "name": data, "data": [], - "selfClosing": False, - "selfClosingAcknowledged": False} - self.state = self.tagNameState - elif data == ">": - # XXX In theory it could be something besides a tag name. But - # do we really care? - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-tag-name-but-got-right-bracket"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<>"}) - self.state = self.dataState - elif data == "?": - # XXX In theory it could be something besides a tag name. But - # do we really care? - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-tag-name-but-got-question-mark"}) - self.stream.unget(data) - self.state = self.bogusCommentState - else: - # XXX - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-tag-name"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.stream.unget(data) - self.state = self.dataState - return True - - def closeTagOpenState(self): - data = self.stream.char() - if data in asciiLetters: - self.currentToken = {"type": tokenTypes["EndTag"], "name": data, - "data": [], "selfClosing": False} - self.state = self.tagNameState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-closing-tag-but-got-right-bracket"}) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-closing-tag-but-got-eof"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "</"}) - self.state = self.dataState - else: - # XXX data can be _'_... - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-closing-tag-but-got-char", - "datavars": {"data": data}}) - self.stream.unget(data) - self.state = self.bogusCommentState - return True - - def tagNameState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeAttributeNameState - elif data == ">": - self.emitCurrentToken() - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-tag-name"}) - self.state = self.dataState - elif data == "/": - self.state = self.selfClosingStartTagState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["name"] += "\uFFFD" - else: - self.currentToken["name"] += data - # (Don't use charsUntil here, because tag names are - # very short and it's faster to not do anything fancy) - return True - - def rcdataLessThanSignState(self): - data = self.stream.char() - if data == "/": - self.temporaryBuffer = "" - self.state = self.rcdataEndTagOpenState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.stream.unget(data) - self.state = self.rcdataState - return True - - def rcdataEndTagOpenState(self): - data = self.stream.char() - if data in asciiLetters: - self.temporaryBuffer += data - self.state = self.rcdataEndTagNameState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "</"}) - self.stream.unget(data) - self.state = self.rcdataState - return True - - def rcdataEndTagNameState(self): - appropriate = self.currentToken and self.currentToken["name"].lower() == self.temporaryBuffer.lower() - data = self.stream.char() - if data in spaceCharacters and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.beforeAttributeNameState - elif data == "/" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.selfClosingStartTagState - elif data == ">" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.emitCurrentToken() - self.state = self.dataState - elif data in asciiLetters: - self.temporaryBuffer += data - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "</" + self.temporaryBuffer}) - self.stream.unget(data) - self.state = self.rcdataState - return True - - def rawtextLessThanSignState(self): - data = self.stream.char() - if data == "/": - self.temporaryBuffer = "" - self.state = self.rawtextEndTagOpenState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.stream.unget(data) - self.state = self.rawtextState - return True - - def rawtextEndTagOpenState(self): - data = self.stream.char() - if data in asciiLetters: - self.temporaryBuffer += data - self.state = self.rawtextEndTagNameState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "</"}) - self.stream.unget(data) - self.state = self.rawtextState - return True - - def rawtextEndTagNameState(self): - appropriate = self.currentToken and self.currentToken["name"].lower() == self.temporaryBuffer.lower() - data = self.stream.char() - if data in spaceCharacters and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.beforeAttributeNameState - elif data == "/" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.selfClosingStartTagState - elif data == ">" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.emitCurrentToken() - self.state = self.dataState - elif data in asciiLetters: - self.temporaryBuffer += data - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "</" + self.temporaryBuffer}) - self.stream.unget(data) - self.state = self.rawtextState - return True - - def scriptDataLessThanSignState(self): - data = self.stream.char() - if data == "/": - self.temporaryBuffer = "" - self.state = self.scriptDataEndTagOpenState - elif data == "!": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<!"}) - self.state = self.scriptDataEscapeStartState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.stream.unget(data) - self.state = self.scriptDataState - return True - - def scriptDataEndTagOpenState(self): - data = self.stream.char() - if data in asciiLetters: - self.temporaryBuffer += data - self.state = self.scriptDataEndTagNameState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "</"}) - self.stream.unget(data) - self.state = self.scriptDataState - return True - - def scriptDataEndTagNameState(self): - appropriate = self.currentToken and self.currentToken["name"].lower() == self.temporaryBuffer.lower() - data = self.stream.char() - if data in spaceCharacters and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.beforeAttributeNameState - elif data == "/" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.selfClosingStartTagState - elif data == ">" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.emitCurrentToken() - self.state = self.dataState - elif data in asciiLetters: - self.temporaryBuffer += data - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "</" + self.temporaryBuffer}) - self.stream.unget(data) - self.state = self.scriptDataState - return True - - def scriptDataEscapeStartState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataEscapeStartDashState - else: - self.stream.unget(data) - self.state = self.scriptDataState - return True - - def scriptDataEscapeStartDashState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataEscapedDashDashState - else: - self.stream.unget(data) - self.state = self.scriptDataState - return True - - def scriptDataEscapedState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataEscapedDashState - elif data == "<": - self.state = self.scriptDataEscapedLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - elif data == EOF: - self.state = self.dataState - else: - chars = self.stream.charsUntil(("<", "-", "\u0000")) - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": - data + chars}) - return True - - def scriptDataEscapedDashState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataEscapedDashDashState - elif data == "<": - self.state = self.scriptDataEscapedLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - self.state = self.scriptDataEscapedState - elif data == EOF: - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.state = self.scriptDataEscapedState - return True - - def scriptDataEscapedDashDashState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - elif data == "<": - self.state = self.scriptDataEscapedLessThanSignState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": ">"}) - self.state = self.scriptDataState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - self.state = self.scriptDataEscapedState - elif data == EOF: - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.state = self.scriptDataEscapedState - return True - - def scriptDataEscapedLessThanSignState(self): - data = self.stream.char() - if data == "/": - self.temporaryBuffer = "" - self.state = self.scriptDataEscapedEndTagOpenState - elif data in asciiLetters: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<" + data}) - self.temporaryBuffer = data - self.state = self.scriptDataDoubleEscapeStartState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.stream.unget(data) - self.state = self.scriptDataEscapedState - return True - - def scriptDataEscapedEndTagOpenState(self): - data = self.stream.char() - if data in asciiLetters: - self.temporaryBuffer = data - self.state = self.scriptDataEscapedEndTagNameState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "</"}) - self.stream.unget(data) - self.state = self.scriptDataEscapedState - return True - - def scriptDataEscapedEndTagNameState(self): - appropriate = self.currentToken and self.currentToken["name"].lower() == self.temporaryBuffer.lower() - data = self.stream.char() - if data in spaceCharacters and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.beforeAttributeNameState - elif data == "/" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.state = self.selfClosingStartTagState - elif data == ">" and appropriate: - self.currentToken = {"type": tokenTypes["EndTag"], - "name": self.temporaryBuffer, - "data": [], "selfClosing": False} - self.emitCurrentToken() - self.state = self.dataState - elif data in asciiLetters: - self.temporaryBuffer += data - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "</" + self.temporaryBuffer}) - self.stream.unget(data) - self.state = self.scriptDataEscapedState - return True - - def scriptDataDoubleEscapeStartState(self): - data = self.stream.char() - if data in (spaceCharacters | frozenset(("/", ">"))): - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - if self.temporaryBuffer.lower() == "script": - self.state = self.scriptDataDoubleEscapedState - else: - self.state = self.scriptDataEscapedState - elif data in asciiLetters: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.temporaryBuffer += data - else: - self.stream.unget(data) - self.state = self.scriptDataEscapedState - return True - - def scriptDataDoubleEscapedState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataDoubleEscapedDashState - elif data == "<": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.state = self.scriptDataDoubleEscapedLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - elif data == EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-script-in-script"}) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - return True - - def scriptDataDoubleEscapedDashState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - self.state = self.scriptDataDoubleEscapedDashDashState - elif data == "<": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.state = self.scriptDataDoubleEscapedLessThanSignState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - self.state = self.scriptDataDoubleEscapedState - elif data == EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-script-in-script"}) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.state = self.scriptDataDoubleEscapedState - return True - - def scriptDataDoubleEscapedDashDashState(self): - data = self.stream.char() - if data == "-": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "-"}) - elif data == "<": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "<"}) - self.state = self.scriptDataDoubleEscapedLessThanSignState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": ">"}) - self.state = self.scriptDataState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": "\uFFFD"}) - self.state = self.scriptDataDoubleEscapedState - elif data == EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-script-in-script"}) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.state = self.scriptDataDoubleEscapedState - return True - - def scriptDataDoubleEscapedLessThanSignState(self): - data = self.stream.char() - if data == "/": - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": "/"}) - self.temporaryBuffer = "" - self.state = self.scriptDataDoubleEscapeEndState - else: - self.stream.unget(data) - self.state = self.scriptDataDoubleEscapedState - return True - - def scriptDataDoubleEscapeEndState(self): - data = self.stream.char() - if data in (spaceCharacters | frozenset(("/", ">"))): - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - if self.temporaryBuffer.lower() == "script": - self.state = self.scriptDataEscapedState - else: - self.state = self.scriptDataDoubleEscapedState - elif data in asciiLetters: - self.tokenQueue.append({"type": tokenTypes["Characters"], "data": data}) - self.temporaryBuffer += data - else: - self.stream.unget(data) - self.state = self.scriptDataDoubleEscapedState - return True - - def beforeAttributeNameState(self): - data = self.stream.char() - if data in spaceCharacters: - self.stream.charsUntil(spaceCharacters, True) - elif data in asciiLetters: - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - elif data == ">": - self.emitCurrentToken() - elif data == "/": - self.state = self.selfClosingStartTagState - elif data in ("'", '"', "=", "<"): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "invalid-character-in-attribute-name"}) - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"].append(["\uFFFD", ""]) - self.state = self.attributeNameState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-attribute-name-but-got-eof"}) - self.state = self.dataState - else: - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - return True - - def attributeNameState(self): - data = self.stream.char() - leavingThisState = True - emitToken = False - if data == "=": - self.state = self.beforeAttributeValueState - elif data in asciiLetters: - self.currentToken["data"][-1][0] += data +\ - self.stream.charsUntil(asciiLetters, True) - leavingThisState = False - elif data == ">": - # XXX If we emit here the attributes are converted to a dict - # without being checked and when the code below runs we error - # because data is a dict not a list - emitToken = True - elif data in spaceCharacters: - self.state = self.afterAttributeNameState - elif data == "/": - self.state = self.selfClosingStartTagState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"][-1][0] += "\uFFFD" - leavingThisState = False - elif data in ("'", '"', "<"): - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": - "invalid-character-in-attribute-name"}) - self.currentToken["data"][-1][0] += data - leavingThisState = False - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "eof-in-attribute-name"}) - self.state = self.dataState - else: - self.currentToken["data"][-1][0] += data - leavingThisState = False - - if leavingThisState: - # Attributes are not dropped at this stage. That happens when the - # start tag token is emitted so values can still be safely appended - # to attributes, but we do want to report the parse error in time. - self.currentToken["data"][-1][0] = ( - self.currentToken["data"][-1][0].translate(asciiUpper2Lower)) - for name, _ in self.currentToken["data"][:-1]: - if self.currentToken["data"][-1][0] == name: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "duplicate-attribute"}) - break - # XXX Fix for above XXX - if emitToken: - self.emitCurrentToken() - return True - - def afterAttributeNameState(self): - data = self.stream.char() - if data in spaceCharacters: - self.stream.charsUntil(spaceCharacters, True) - elif data == "=": - self.state = self.beforeAttributeValueState - elif data == ">": - self.emitCurrentToken() - elif data in asciiLetters: - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - elif data == "/": - self.state = self.selfClosingStartTagState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"].append(["\uFFFD", ""]) - self.state = self.attributeNameState - elif data in ("'", '"', "<"): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "invalid-character-after-attribute-name"}) - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-end-of-tag-but-got-eof"}) - self.state = self.dataState - else: - self.currentToken["data"].append([data, ""]) - self.state = self.attributeNameState - return True - - def beforeAttributeValueState(self): - data = self.stream.char() - if data in spaceCharacters: - self.stream.charsUntil(spaceCharacters, True) - elif data == "\"": - self.state = self.attributeValueDoubleQuotedState - elif data == "&": - self.state = self.attributeValueUnQuotedState - self.stream.unget(data) - elif data == "'": - self.state = self.attributeValueSingleQuotedState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-attribute-value-but-got-right-bracket"}) - self.emitCurrentToken() - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"][-1][1] += "\uFFFD" - self.state = self.attributeValueUnQuotedState - elif data in ("=", "<", "`"): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "equals-in-unquoted-attribute-value"}) - self.currentToken["data"][-1][1] += data - self.state = self.attributeValueUnQuotedState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-attribute-value-but-got-eof"}) - self.state = self.dataState - else: - self.currentToken["data"][-1][1] += data - self.state = self.attributeValueUnQuotedState - return True - - def attributeValueDoubleQuotedState(self): - data = self.stream.char() - if data == "\"": - self.state = self.afterAttributeValueState - elif data == "&": - self.processEntityInAttribute('"') - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"][-1][1] += "\uFFFD" - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-attribute-value-double-quote"}) - self.state = self.dataState - else: - self.currentToken["data"][-1][1] += data +\ - self.stream.charsUntil(("\"", "&", "\u0000")) - return True - - def attributeValueSingleQuotedState(self): - data = self.stream.char() - if data == "'": - self.state = self.afterAttributeValueState - elif data == "&": - self.processEntityInAttribute("'") - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"][-1][1] += "\uFFFD" - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-attribute-value-single-quote"}) - self.state = self.dataState - else: - self.currentToken["data"][-1][1] += data +\ - self.stream.charsUntil(("'", "&", "\u0000")) - return True - - def attributeValueUnQuotedState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeAttributeNameState - elif data == "&": - self.processEntityInAttribute(">") - elif data == ">": - self.emitCurrentToken() - elif data in ('"', "'", "=", "<", "`"): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-character-in-unquoted-attribute-value"}) - self.currentToken["data"][-1][1] += data - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"][-1][1] += "\uFFFD" - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-attribute-value-no-quotes"}) - self.state = self.dataState - else: - self.currentToken["data"][-1][1] += data + self.stream.charsUntil( - frozenset(("&", ">", '"', "'", "=", "<", "`", "\u0000")) | spaceCharacters) - return True - - def afterAttributeValueState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeAttributeNameState - elif data == ">": - self.emitCurrentToken() - elif data == "/": - self.state = self.selfClosingStartTagState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-EOF-after-attribute-value"}) - self.stream.unget(data) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-character-after-attribute-value"}) - self.stream.unget(data) - self.state = self.beforeAttributeNameState - return True - - def selfClosingStartTagState(self): - data = self.stream.char() - if data == ">": - self.currentToken["selfClosing"] = True - self.emitCurrentToken() - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": - "unexpected-EOF-after-solidus-in-tag"}) - self.stream.unget(data) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-character-after-solidus-in-tag"}) - self.stream.unget(data) - self.state = self.beforeAttributeNameState - return True - - def bogusCommentState(self): - # Make a new comment token and give it as value all the characters - # until the first > or EOF (charsUntil checks for EOF automatically) - # and emit it. - data = self.stream.charsUntil(">") - data = data.replace("\u0000", "\uFFFD") - self.tokenQueue.append( - {"type": tokenTypes["Comment"], "data": data}) - - # Eat the character directly after the bogus comment which is either a - # ">" or an EOF. - self.stream.char() - self.state = self.dataState - return True - - def markupDeclarationOpenState(self): - charStack = [self.stream.char()] - if charStack[-1] == "-": - charStack.append(self.stream.char()) - if charStack[-1] == "-": - self.currentToken = {"type": tokenTypes["Comment"], "data": ""} - self.state = self.commentStartState - return True - elif charStack[-1] in ('d', 'D'): - matched = True - for expected in (('o', 'O'), ('c', 'C'), ('t', 'T'), - ('y', 'Y'), ('p', 'P'), ('e', 'E')): - charStack.append(self.stream.char()) - if charStack[-1] not in expected: - matched = False - break - if matched: - self.currentToken = {"type": tokenTypes["Doctype"], - "name": "", - "publicId": None, "systemId": None, - "correct": True} - self.state = self.doctypeState - return True - elif (charStack[-1] == "[" and - self.parser is not None and - self.parser.tree.openElements and - self.parser.tree.openElements[-1].namespace != self.parser.tree.defaultNamespace): - matched = True - for expected in ["C", "D", "A", "T", "A", "["]: - charStack.append(self.stream.char()) - if charStack[-1] != expected: - matched = False - break - if matched: - self.state = self.cdataSectionState - return True - - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-dashes-or-doctype"}) - - while charStack: - self.stream.unget(charStack.pop()) - self.state = self.bogusCommentState - return True - - def commentStartState(self): - data = self.stream.char() - if data == "-": - self.state = self.commentStartDashState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "incorrect-comment"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-comment"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["data"] += data - self.state = self.commentState - return True - - def commentStartDashState(self): - data = self.stream.char() - if data == "-": - self.state = self.commentEndState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "-\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "incorrect-comment"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-comment"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["data"] += "-" + data - self.state = self.commentState - return True - - def commentState(self): - data = self.stream.char() - if data == "-": - self.state = self.commentEndDashState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "\uFFFD" - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "eof-in-comment"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["data"] += data + \ - self.stream.charsUntil(("-", "\u0000")) - return True - - def commentEndDashState(self): - data = self.stream.char() - if data == "-": - self.state = self.commentEndState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "-\uFFFD" - self.state = self.commentState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-comment-end-dash"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["data"] += "-" + data - self.state = self.commentState - return True - - def commentEndState(self): - data = self.stream.char() - if data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "--\uFFFD" - self.state = self.commentState - elif data == "!": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-bang-after-double-dash-in-comment"}) - self.state = self.commentEndBangState - elif data == "-": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-dash-after-double-dash-in-comment"}) - self.currentToken["data"] += data - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-comment-double-dash"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - # XXX - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-comment"}) - self.currentToken["data"] += "--" + data - self.state = self.commentState - return True - - def commentEndBangState(self): - data = self.stream.char() - if data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == "-": - self.currentToken["data"] += "--!" - self.state = self.commentEndDashState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["data"] += "--!\uFFFD" - self.state = self.commentState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-comment-end-bang-state"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["data"] += "--!" + data - self.state = self.commentState - return True - - def doctypeState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeDoctypeNameState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-doctype-name-but-got-eof"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "need-space-after-doctype"}) - self.stream.unget(data) - self.state = self.beforeDoctypeNameState - return True - - def beforeDoctypeNameState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-doctype-name-but-got-right-bracket"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["name"] = "\uFFFD" - self.state = self.doctypeNameState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-doctype-name-but-got-eof"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["name"] = data - self.state = self.doctypeNameState - return True - - def doctypeNameState(self): - data = self.stream.char() - if data in spaceCharacters: - self.currentToken["name"] = self.currentToken["name"].translate(asciiUpper2Lower) - self.state = self.afterDoctypeNameState - elif data == ">": - self.currentToken["name"] = self.currentToken["name"].translate(asciiUpper2Lower) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["name"] += "\uFFFD" - self.state = self.doctypeNameState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype-name"}) - self.currentToken["correct"] = False - self.currentToken["name"] = self.currentToken["name"].translate(asciiUpper2Lower) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["name"] += data - return True - - def afterDoctypeNameState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.currentToken["correct"] = False - self.stream.unget(data) - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - if data in ("p", "P"): - matched = True - for expected in (("u", "U"), ("b", "B"), ("l", "L"), - ("i", "I"), ("c", "C")): - data = self.stream.char() - if data not in expected: - matched = False - break - if matched: - self.state = self.afterDoctypePublicKeywordState - return True - elif data in ("s", "S"): - matched = True - for expected in (("y", "Y"), ("s", "S"), ("t", "T"), - ("e", "E"), ("m", "M")): - data = self.stream.char() - if data not in expected: - matched = False - break - if matched: - self.state = self.afterDoctypeSystemKeywordState - return True - - # All the characters read before the current 'data' will be - # [a-zA-Z], so they're garbage in the bogus doctype and can be - # discarded; only the latest character might be '>' or EOF - # and needs to be ungetted - self.stream.unget(data) - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "expected-space-or-right-bracket-in-doctype", "datavars": - {"data": data}}) - self.currentToken["correct"] = False - self.state = self.bogusDoctypeState - - return True - - def afterDoctypePublicKeywordState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeDoctypePublicIdentifierState - elif data in ("'", '"'): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.stream.unget(data) - self.state = self.beforeDoctypePublicIdentifierState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.stream.unget(data) - self.state = self.beforeDoctypePublicIdentifierState - return True - - def beforeDoctypePublicIdentifierState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == "\"": - self.currentToken["publicId"] = "" - self.state = self.doctypePublicIdentifierDoubleQuotedState - elif data == "'": - self.currentToken["publicId"] = "" - self.state = self.doctypePublicIdentifierSingleQuotedState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-end-of-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["correct"] = False - self.state = self.bogusDoctypeState - return True - - def doctypePublicIdentifierDoubleQuotedState(self): - data = self.stream.char() - if data == "\"": - self.state = self.afterDoctypePublicIdentifierState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["publicId"] += "\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-end-of-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["publicId"] += data - return True - - def doctypePublicIdentifierSingleQuotedState(self): - data = self.stream.char() - if data == "'": - self.state = self.afterDoctypePublicIdentifierState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["publicId"] += "\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-end-of-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["publicId"] += data - return True - - def afterDoctypePublicIdentifierState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.betweenDoctypePublicAndSystemIdentifiersState - elif data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == '"': - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierDoubleQuotedState - elif data == "'": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierSingleQuotedState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["correct"] = False - self.state = self.bogusDoctypeState - return True - - def betweenDoctypePublicAndSystemIdentifiersState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data == '"': - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierDoubleQuotedState - elif data == "'": - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierSingleQuotedState - elif data == EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["correct"] = False - self.state = self.bogusDoctypeState - return True - - def afterDoctypeSystemKeywordState(self): - data = self.stream.char() - if data in spaceCharacters: - self.state = self.beforeDoctypeSystemIdentifierState - elif data in ("'", '"'): - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.stream.unget(data) - self.state = self.beforeDoctypeSystemIdentifierState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.stream.unget(data) - self.state = self.beforeDoctypeSystemIdentifierState - return True - - def beforeDoctypeSystemIdentifierState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == "\"": - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierDoubleQuotedState - elif data == "'": - self.currentToken["systemId"] = "" - self.state = self.doctypeSystemIdentifierSingleQuotedState - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.currentToken["correct"] = False - self.state = self.bogusDoctypeState - return True - - def doctypeSystemIdentifierDoubleQuotedState(self): - data = self.stream.char() - if data == "\"": - self.state = self.afterDoctypeSystemIdentifierState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["systemId"] += "\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-end-of-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["systemId"] += data - return True - - def doctypeSystemIdentifierSingleQuotedState(self): - data = self.stream.char() - if data == "'": - self.state = self.afterDoctypeSystemIdentifierState - elif data == "\u0000": - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - self.currentToken["systemId"] += "\uFFFD" - elif data == ">": - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-end-of-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.currentToken["systemId"] += data - return True - - def afterDoctypeSystemIdentifierState(self): - data = self.stream.char() - if data in spaceCharacters: - pass - elif data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "eof-in-doctype"}) - self.currentToken["correct"] = False - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - self.tokenQueue.append({"type": tokenTypes["ParseError"], "data": - "unexpected-char-in-doctype"}) - self.state = self.bogusDoctypeState - return True - - def bogusDoctypeState(self): - data = self.stream.char() - if data == ">": - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - elif data is EOF: - # XXX EMIT - self.stream.unget(data) - self.tokenQueue.append(self.currentToken) - self.state = self.dataState - else: - pass - return True - - def cdataSectionState(self): - data = [] - while True: - data.append(self.stream.charsUntil("]")) - data.append(self.stream.charsUntil(">")) - char = self.stream.char() - if char == EOF: - break - else: - assert char == ">" - if data[-1][-2:] == "]]": - data[-1] = data[-1][:-2] - break - else: - data.append(char) - - data = "".join(data) # pylint:disable=redefined-variable-type - # Deal with null here rather than in the parser - nullCount = data.count("\u0000") - if nullCount > 0: - for _ in range(nullCount): - self.tokenQueue.append({"type": tokenTypes["ParseError"], - "data": "invalid-codepoint"}) - data = data.replace("\u0000", "\uFFFD") - if data: - self.tokenQueue.append({"type": tokenTypes["Characters"], - "data": data}) - self.state = self.dataState - return True diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/__init__.py deleted file mode 100644 index ccc70bd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from .py import Trie as PyTrie - -Trie = PyTrie - -# pylint:disable=wrong-import-position -try: - from .datrie import Trie as DATrie -except ImportError: - pass -else: - Trie = DATrie -# pylint:enable=wrong-import-position diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/_base.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/_base.py deleted file mode 100644 index ecfff32..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/_base.py +++ /dev/null @@ -1,37 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from collections import Mapping - - -class Trie(Mapping): - """Abstract base class for tries""" - - def keys(self, prefix=None): - # pylint:disable=arguments-differ - keys = super(Trie, self).keys() - - if prefix is None: - return set(keys) - - return {x for x in keys if x.startswith(prefix)} - - def has_keys_with_prefix(self, prefix): - for key in self.keys(): - if key.startswith(prefix): - return True - - return False - - def longest_prefix(self, prefix): - if prefix in self: - return prefix - - for i in range(1, len(prefix) + 1): - if prefix[:-i] in self: - return prefix[:-i] - - raise KeyError(prefix) - - def longest_prefix_item(self, prefix): - lprefix = self.longest_prefix(prefix) - return (lprefix, self[lprefix]) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/datrie.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/datrie.py deleted file mode 100644 index cb1af60..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/datrie.py +++ /dev/null @@ -1,44 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from datrie import Trie as DATrie -from pip._vendor.six import text_type - -from ._base import Trie as ABCTrie - - -class Trie(ABCTrie): - def __init__(self, data): - chars = set() - for key in data.keys(): - if not isinstance(key, text_type): - raise TypeError("All keys must be strings") - for char in key: - chars.add(char) - - self._data = DATrie("".join(chars)) - for key, value in data.items(): - self._data[key] = value - - def __contains__(self, key): - return key in self._data - - def __len__(self): - return len(self._data) - - def __iter__(self): - raise NotImplementedError() - - def __getitem__(self, key): - return self._data[key] - - def keys(self, prefix=None): - return self._data.keys(prefix) - - def has_keys_with_prefix(self, prefix): - return self._data.has_keys_with_prefix(prefix) - - def longest_prefix(self, prefix): - return self._data.longest_prefix(prefix) - - def longest_prefix_item(self, prefix): - return self._data.longest_prefix_item(prefix) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/py.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/py.py deleted file mode 100644 index 5531263..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_trie/py.py +++ /dev/null @@ -1,67 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import text_type - -from bisect import bisect_left - -from ._base import Trie as ABCTrie - - -class Trie(ABCTrie): - def __init__(self, data): - if not all(isinstance(x, text_type) for x in data.keys()): - raise TypeError("All keys must be strings") - - self._data = data - self._keys = sorted(data.keys()) - self._cachestr = "" - self._cachepoints = (0, len(data)) - - def __contains__(self, key): - return key in self._data - - def __len__(self): - return len(self._data) - - def __iter__(self): - return iter(self._data) - - def __getitem__(self, key): - return self._data[key] - - def keys(self, prefix=None): - if prefix is None or prefix == "" or not self._keys: - return set(self._keys) - - if prefix.startswith(self._cachestr): - lo, hi = self._cachepoints - start = i = bisect_left(self._keys, prefix, lo, hi) - else: - start = i = bisect_left(self._keys, prefix) - - keys = set() - if start == len(self._keys): - return keys - - while self._keys[i].startswith(prefix): - keys.add(self._keys[i]) - i += 1 - - self._cachestr = prefix - self._cachepoints = (start, i) - - return keys - - def has_keys_with_prefix(self, prefix): - if prefix in self._data: - return True - - if prefix.startswith(self._cachestr): - lo, hi = self._cachepoints - i = bisect_left(self._keys, prefix, lo, hi) - else: - i = bisect_left(self._keys, prefix) - - if i == len(self._keys): - return False - - return self._keys[i].startswith(prefix) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_utils.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_utils.py deleted file mode 100644 index a559fa0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/_utils.py +++ /dev/null @@ -1,124 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from types import ModuleType - -from pip._vendor.six import text_type - -try: - import xml.etree.cElementTree as default_etree -except ImportError: - import xml.etree.ElementTree as default_etree - - -__all__ = ["default_etree", "MethodDispatcher", "isSurrogatePair", - "surrogatePairToCodepoint", "moduleFactoryFactory", - "supports_lone_surrogates"] - - -# Platforms not supporting lone surrogates (\uD800-\uDFFF) should be -# caught by the below test. In general this would be any platform -# using UTF-16 as its encoding of unicode strings, such as -# Jython. This is because UTF-16 itself is based on the use of such -# surrogates, and there is no mechanism to further escape such -# escapes. -try: - _x = eval('"\\uD800"') # pylint:disable=eval-used - if not isinstance(_x, text_type): - # We need this with u"" because of http://bugs.jython.org/issue2039 - _x = eval('u"\\uD800"') # pylint:disable=eval-used - assert isinstance(_x, text_type) -except: # pylint:disable=bare-except - supports_lone_surrogates = False -else: - supports_lone_surrogates = True - - -class MethodDispatcher(dict): - """Dict with 2 special properties: - - On initiation, keys that are lists, sets or tuples are converted to - multiple keys so accessing any one of the items in the original - list-like object returns the matching value - - md = MethodDispatcher({("foo", "bar"):"baz"}) - md["foo"] == "baz" - - A default value which can be set through the default attribute. - """ - - def __init__(self, items=()): - # Using _dictEntries instead of directly assigning to self is about - # twice as fast. Please do careful performance testing before changing - # anything here. - _dictEntries = [] - for name, value in items: - if isinstance(name, (list, tuple, frozenset, set)): - for item in name: - _dictEntries.append((item, value)) - else: - _dictEntries.append((name, value)) - dict.__init__(self, _dictEntries) - assert len(self) == len(_dictEntries) - self.default = None - - def __getitem__(self, key): - return dict.get(self, key, self.default) - - -# Some utility functions to deal with weirdness around UCS2 vs UCS4 -# python builds - -def isSurrogatePair(data): - return (len(data) == 2 and - ord(data[0]) >= 0xD800 and ord(data[0]) <= 0xDBFF and - ord(data[1]) >= 0xDC00 and ord(data[1]) <= 0xDFFF) - - -def surrogatePairToCodepoint(data): - char_val = (0x10000 + (ord(data[0]) - 0xD800) * 0x400 + - (ord(data[1]) - 0xDC00)) - return char_val - -# Module Factory Factory (no, this isn't Java, I know) -# Here to stop this being duplicated all over the place. - - -def moduleFactoryFactory(factory): - moduleCache = {} - - def moduleFactory(baseModule, *args, **kwargs): - if isinstance(ModuleType.__name__, type("")): - name = "_%s_factory" % baseModule.__name__ - else: - name = b"_%s_factory" % baseModule.__name__ - - kwargs_tuple = tuple(kwargs.items()) - - try: - return moduleCache[name][args][kwargs_tuple] - except KeyError: - mod = ModuleType(name) - objs = factory(baseModule, *args, **kwargs) - mod.__dict__.update(objs) - if "name" not in moduleCache: - moduleCache[name] = {} - if "args" not in moduleCache[name]: - moduleCache[name][args] = {} - if "kwargs" not in moduleCache[name][args]: - moduleCache[name][args][kwargs_tuple] = {} - moduleCache[name][args][kwargs_tuple] = mod - return mod - - return moduleFactory - - -def memoize(func): - cache = {} - - def wrapped(*args, **kwargs): - key = (tuple(args), tuple(kwargs.items())) - if key not in cache: - cache[key] = func(*args, **kwargs) - return cache[key] - - return wrapped diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/constants.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/constants.py deleted file mode 100644 index bca155e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/constants.py +++ /dev/null @@ -1,2947 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -import string - -EOF = None - -E = { - "null-character": - "Null character in input stream, replaced with U+FFFD.", - "invalid-codepoint": - "Invalid codepoint in stream.", - "incorrectly-placed-solidus": - "Solidus (/) incorrectly placed in tag.", - "incorrect-cr-newline-entity": - "Incorrect CR newline entity, replaced with LF.", - "illegal-windows-1252-entity": - "Entity used with illegal number (windows-1252 reference).", - "cant-convert-numeric-entity": - "Numeric entity couldn't be converted to character " - "(codepoint U+%(charAsInt)08x).", - "illegal-codepoint-for-numeric-entity": - "Numeric entity represents an illegal codepoint: " - "U+%(charAsInt)08x.", - "numeric-entity-without-semicolon": - "Numeric entity didn't end with ';'.", - "expected-numeric-entity-but-got-eof": - "Numeric entity expected. Got end of file instead.", - "expected-numeric-entity": - "Numeric entity expected but none found.", - "named-entity-without-semicolon": - "Named entity didn't end with ';'.", - "expected-named-entity": - "Named entity expected. Got none.", - "attributes-in-end-tag": - "End tag contains unexpected attributes.", - 'self-closing-flag-on-end-tag': - "End tag contains unexpected self-closing flag.", - "expected-tag-name-but-got-right-bracket": - "Expected tag name. Got '>' 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.", - "unexpected-inhead-noscript-tag": - "Element %(name)s not allowed in a inhead-noscript context", - "eof-in-head-noscript": - "Unexpected end of file. Expected inhead-noscript content", - "char-in-head-noscript": - "Unexpected non-space character. Expected inhead-noscript content", - "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"], "annotation-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") -]) - -adjustSVGAttributes = { - "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" -} - -adjustMathMLAttributes = {"definitionurl": "definitionURL"} - -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", "itemscope"]), - "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"]), - "iframe": frozenset(["seamless"]), -} - -# 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", - 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", -} - -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): - """Raised when the current tree is unable to represent the input data""" - pass - - -class _ReparseException(Exception): - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/alphabeticalattributes.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/alphabeticalattributes.py deleted file mode 100644 index d9e234a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/alphabeticalattributes.py +++ /dev/null @@ -1,29 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - -from collections import OrderedDict - - -def _attr_key(attr): - """Return an appropriate key for an attribute for sorting - - Attributes have a namespace that can be either ``None`` or a string. We - can't compare the two because they're different types, so we convert - ``None`` to an empty string first. - - """ - return (attr[0][0] or ''), attr[0][1] - - -class Filter(base.Filter): - """Alphabetizes attributes for elements""" - 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=_attr_key): - attrs[name] = value - token["data"] = attrs - yield token diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/base.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/base.py deleted file mode 100644 index f5aa523..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/base.py +++ /dev/null @@ -1,12 +0,0 @@ -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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/inject_meta_charset.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/inject_meta_charset.py deleted file mode 100644 index 2f8ec4f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/inject_meta_charset.py +++ /dev/null @@ -1,73 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - - -class Filter(base.Filter): - """Injects ``<meta charset=ENCODING>`` tag into head of document""" - def __init__(self, source, encoding): - """Creates a Filter - - :arg source: the source token stream - - :arg encoding: the encoding to set - - """ - 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/lint.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/lint.py deleted file mode 100644 index b5bbd97..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/lint.py +++ /dev/null @@ -1,93 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from pip._vendor.six import text_type - -from . import base -from ..constants import namespaces, voidElements - -from ..constants import spaceCharacters -spaceCharacters = "".join(spaceCharacters) - - -class Filter(base.Filter): - """Lints the token stream for errors - - If it finds any errors, it'll raise an ``AssertionError``. - - """ - def __init__(self, source, require_matching_tags=True): - """Creates a Filter - - :arg source: the source token stream - - :arg require_matching_tags: whether or not to require matching tags - - """ - super(Filter, self).__init__(source) - self.require_matching_tags = require_matching_tags - - def __iter__(self): - open_elements = [] - for token in base.Filter.__iter__(self): - type = token["type"] - if type in ("StartTag", "EmptyTag"): - namespace = token["namespace"] - name = token["name"] - assert namespace is None or isinstance(namespace, text_type) - assert namespace != "" - assert isinstance(name, text_type) - assert name != "" - assert isinstance(token["data"], dict) - if (not namespace or namespace == namespaces["html"]) and name in voidElements: - assert type == "EmptyTag" - else: - assert type == "StartTag" - if type == "StartTag" and self.require_matching_tags: - open_elements.append((namespace, name)) - for (namespace, name), value in token["data"].items(): - assert namespace is None or isinstance(namespace, text_type) - assert namespace != "" - assert isinstance(name, text_type) - assert name != "" - assert isinstance(value, text_type) - - elif type == "EndTag": - namespace = token["namespace"] - name = token["name"] - assert namespace is None or isinstance(namespace, text_type) - assert namespace != "" - assert isinstance(name, text_type) - assert name != "" - if (not namespace or namespace == namespaces["html"]) and name in voidElements: - assert False, "Void element reported as EndTag token: %(tag)s" % {"tag": name} - elif self.require_matching_tags: - start = open_elements.pop() - assert start == (namespace, name) - - elif type == "Comment": - data = token["data"] - assert isinstance(data, text_type) - - elif type in ("Characters", "SpaceCharacters"): - data = token["data"] - assert isinstance(data, text_type) - assert data != "" - if type == "SpaceCharacters": - assert data.strip(spaceCharacters) == "" - - elif type == "Doctype": - name = token["name"] - assert name is None or isinstance(name, text_type) - assert token["publicId"] is None or isinstance(name, text_type) - assert token["systemId"] is None or isinstance(name, text_type) - - elif type == "Entity": - assert isinstance(token["name"], text_type) - - elif type == "SerializerError": - assert isinstance(token["data"], text_type) - - else: - assert False, "Unknown token type: %(type)s" % {"type": type} - - yield token diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/optionaltags.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/optionaltags.py deleted file mode 100644 index c8d5e54..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/optionaltags.py +++ /dev/null @@ -1,207 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - - -class Filter(base.Filter): - """Removes optional tags from the token stream""" - def slider(self): - previous1 = previous2 = None - for token in self.source: - if previous1 is not None: - yield previous2, previous1, token - previous2 = previous1 - previous1 = token - if previous1 is not None: - yield previous2, previous1, None - - def __iter__(self): - for previous, token, next in self.slider(): - type = token["type"] - if type == "StartTag": - if (token["data"] or - not self.is_optional_start(token["name"], previous, next)): - yield token - elif type == "EndTag": - if not self.is_optional_end(token["name"], next): - yield token - else: - yield token - - def is_optional_start(self, tagname, previous, next): - type = next and next["type"] or None - if tagname in 'html': - # An html element's start tag may be omitted if the first thing - # inside the html element is not a space character or a comment. - return type not in ("Comment", "SpaceCharacters") - elif tagname == 'head': - # A head element's start tag may be omitted if the first thing - # inside the head element is an element. - # XXX: we also omit the start tag if the head element is empty - if type in ("StartTag", "EmptyTag"): - return True - elif type == "EndTag": - return next["name"] == "head" - elif tagname == 'body': - # A body element's start tag may be omitted if the first thing - # inside the body element is not a space character or a comment, - # except if the first thing inside the body element is a script - # or style element and the node immediately preceding the body - # element is a head element whose end tag has been omitted. - if type in ("Comment", "SpaceCharacters"): - return False - elif type == "StartTag": - # XXX: we do not look at the preceding event, so we never omit - # the body element's start tag if it's followed by a script or - # a style element. - return next["name"] not in ('script', 'style') - else: - return True - elif tagname == 'colgroup': - # A colgroup element's start tag may be omitted if the first thing - # inside the colgroup element is a col element, and if the element - # is not immediately preceded by another colgroup element whose - # end tag has been omitted. - if type in ("StartTag", "EmptyTag"): - # XXX: we do not look at the preceding event, so instead we never - # omit the colgroup element's end tag when it is immediately - # followed by another colgroup element. See is_optional_end. - return next["name"] == "col" - else: - return False - elif tagname == 'tbody': - # A tbody element's start tag may be omitted if the first thing - # inside the tbody element is a tr element, and if the element is - # not immediately preceded by a tbody, thead, or tfoot element - # whose end tag has been omitted. - if type == "StartTag": - # omit the thead and tfoot elements' end tag when they are - # immediately followed by a tbody element. See is_optional_end. - if previous and previous['type'] == 'EndTag' and \ - previous['name'] in ('tbody', 'thead', 'tfoot'): - return False - return next["name"] == 'tr' - else: - return False - return False - - def is_optional_end(self, tagname, next): - type = next and next["type"] or None - if tagname in ('html', 'head', 'body'): - # An html element's end tag may be omitted if the html element - # is not immediately followed by a space character or a comment. - return type not in ("Comment", "SpaceCharacters") - elif tagname in ('li', 'optgroup', 'tr'): - # A li element's end tag may be omitted if the li element is - # immediately followed by another li element or if there is - # no more content in the parent element. - # An optgroup element's end tag may be omitted if the optgroup - # element is immediately followed by another optgroup element, - # or if there is no more content in the parent element. - # A tr element's end tag may be omitted if the tr element is - # immediately followed by another tr element, or if there is - # no more content in the parent element. - if type == "StartTag": - return next["name"] == tagname - else: - return type == "EndTag" or type is None - elif tagname in ('dt', 'dd'): - # A dt element's end tag may be omitted if the dt element is - # immediately followed by another dt element or a dd element. - # A dd element's end tag may be omitted if the dd element is - # immediately followed by another dd element or a dt element, - # or if there is no more content in the parent element. - if type == "StartTag": - return next["name"] in ('dt', 'dd') - elif tagname == 'dd': - return type == "EndTag" or type is None - else: - return False - elif tagname == 'p': - # A p element's end tag may be omitted if the p element is - # immediately followed by an address, article, aside, - # blockquote, datagrid, dialog, dir, div, dl, fieldset, - # footer, form, h1, h2, h3, h4, h5, h6, header, hr, menu, - # nav, ol, p, pre, section, table, or ul, element, or if - # there is no more content in the parent element. - if type in ("StartTag", "EmptyTag"): - return next["name"] in ('address', 'article', 'aside', - 'blockquote', 'datagrid', 'dialog', - 'dir', 'div', 'dl', 'fieldset', 'footer', - 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', - 'header', 'hr', 'menu', 'nav', 'ol', - 'p', 'pre', 'section', 'table', 'ul') - else: - return type == "EndTag" or type is None - elif tagname == 'option': - # An option element's end tag may be omitted if the option - # element is immediately followed by another option element, - # or if it is immediately followed by an <code>optgroup</code> - # 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/sanitizer.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/sanitizer.py deleted file mode 100644 index c3199a5..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/sanitizer.py +++ /dev/null @@ -1,896 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -import re -from xml.sax.saxutils import escape, unescape - -from pip._vendor.six.moves import urllib_parse as urlparse - -from . import base -from ..constants import namespaces, prefixes - -__all__ = ["Filter"] - - -allowed_elements = frozenset(( - (namespaces['html'], 'a'), - (namespaces['html'], 'abbr'), - (namespaces['html'], 'acronym'), - (namespaces['html'], 'address'), - (namespaces['html'], 'area'), - (namespaces['html'], 'article'), - (namespaces['html'], 'aside'), - (namespaces['html'], 'audio'), - (namespaces['html'], 'b'), - (namespaces['html'], 'big'), - (namespaces['html'], 'blockquote'), - (namespaces['html'], 'br'), - (namespaces['html'], 'button'), - (namespaces['html'], 'canvas'), - (namespaces['html'], 'caption'), - (namespaces['html'], 'center'), - (namespaces['html'], 'cite'), - (namespaces['html'], 'code'), - (namespaces['html'], 'col'), - (namespaces['html'], 'colgroup'), - (namespaces['html'], 'command'), - (namespaces['html'], 'datagrid'), - (namespaces['html'], 'datalist'), - (namespaces['html'], 'dd'), - (namespaces['html'], 'del'), - (namespaces['html'], 'details'), - (namespaces['html'], 'dfn'), - (namespaces['html'], 'dialog'), - (namespaces['html'], 'dir'), - (namespaces['html'], 'div'), - (namespaces['html'], 'dl'), - (namespaces['html'], 'dt'), - (namespaces['html'], 'em'), - (namespaces['html'], 'event-source'), - (namespaces['html'], 'fieldset'), - (namespaces['html'], 'figcaption'), - (namespaces['html'], 'figure'), - (namespaces['html'], 'footer'), - (namespaces['html'], 'font'), - (namespaces['html'], 'form'), - (namespaces['html'], 'header'), - (namespaces['html'], 'h1'), - (namespaces['html'], 'h2'), - (namespaces['html'], 'h3'), - (namespaces['html'], 'h4'), - (namespaces['html'], 'h5'), - (namespaces['html'], 'h6'), - (namespaces['html'], 'hr'), - (namespaces['html'], 'i'), - (namespaces['html'], 'img'), - (namespaces['html'], 'input'), - (namespaces['html'], 'ins'), - (namespaces['html'], 'keygen'), - (namespaces['html'], 'kbd'), - (namespaces['html'], 'label'), - (namespaces['html'], 'legend'), - (namespaces['html'], 'li'), - (namespaces['html'], 'm'), - (namespaces['html'], 'map'), - (namespaces['html'], 'menu'), - (namespaces['html'], 'meter'), - (namespaces['html'], 'multicol'), - (namespaces['html'], 'nav'), - (namespaces['html'], 'nextid'), - (namespaces['html'], 'ol'), - (namespaces['html'], 'output'), - (namespaces['html'], 'optgroup'), - (namespaces['html'], 'option'), - (namespaces['html'], 'p'), - (namespaces['html'], 'pre'), - (namespaces['html'], 'progress'), - (namespaces['html'], 'q'), - (namespaces['html'], 's'), - (namespaces['html'], 'samp'), - (namespaces['html'], 'section'), - (namespaces['html'], 'select'), - (namespaces['html'], 'small'), - (namespaces['html'], 'sound'), - (namespaces['html'], 'source'), - (namespaces['html'], 'spacer'), - (namespaces['html'], 'span'), - (namespaces['html'], 'strike'), - (namespaces['html'], 'strong'), - (namespaces['html'], 'sub'), - (namespaces['html'], 'sup'), - (namespaces['html'], 'table'), - (namespaces['html'], 'tbody'), - (namespaces['html'], 'td'), - (namespaces['html'], 'textarea'), - (namespaces['html'], 'time'), - (namespaces['html'], 'tfoot'), - (namespaces['html'], 'th'), - (namespaces['html'], 'thead'), - (namespaces['html'], 'tr'), - (namespaces['html'], 'tt'), - (namespaces['html'], 'u'), - (namespaces['html'], 'ul'), - (namespaces['html'], 'var'), - (namespaces['html'], 'video'), - (namespaces['mathml'], 'maction'), - (namespaces['mathml'], 'math'), - (namespaces['mathml'], 'merror'), - (namespaces['mathml'], 'mfrac'), - (namespaces['mathml'], 'mi'), - (namespaces['mathml'], 'mmultiscripts'), - (namespaces['mathml'], 'mn'), - (namespaces['mathml'], 'mo'), - (namespaces['mathml'], 'mover'), - (namespaces['mathml'], 'mpadded'), - (namespaces['mathml'], 'mphantom'), - (namespaces['mathml'], 'mprescripts'), - (namespaces['mathml'], 'mroot'), - (namespaces['mathml'], 'mrow'), - (namespaces['mathml'], 'mspace'), - (namespaces['mathml'], 'msqrt'), - (namespaces['mathml'], 'mstyle'), - (namespaces['mathml'], 'msub'), - (namespaces['mathml'], 'msubsup'), - (namespaces['mathml'], 'msup'), - (namespaces['mathml'], 'mtable'), - (namespaces['mathml'], 'mtd'), - (namespaces['mathml'], 'mtext'), - (namespaces['mathml'], 'mtr'), - (namespaces['mathml'], 'munder'), - (namespaces['mathml'], 'munderover'), - (namespaces['mathml'], 'none'), - (namespaces['svg'], 'a'), - (namespaces['svg'], 'animate'), - (namespaces['svg'], 'animateColor'), - (namespaces['svg'], 'animateMotion'), - (namespaces['svg'], 'animateTransform'), - (namespaces['svg'], 'clipPath'), - (namespaces['svg'], 'circle'), - (namespaces['svg'], 'defs'), - (namespaces['svg'], 'desc'), - (namespaces['svg'], 'ellipse'), - (namespaces['svg'], 'font-face'), - (namespaces['svg'], 'font-face-name'), - (namespaces['svg'], 'font-face-src'), - (namespaces['svg'], 'g'), - (namespaces['svg'], 'glyph'), - (namespaces['svg'], 'hkern'), - (namespaces['svg'], 'linearGradient'), - (namespaces['svg'], 'line'), - (namespaces['svg'], 'marker'), - (namespaces['svg'], 'metadata'), - (namespaces['svg'], 'missing-glyph'), - (namespaces['svg'], 'mpath'), - (namespaces['svg'], 'path'), - (namespaces['svg'], 'polygon'), - (namespaces['svg'], 'polyline'), - (namespaces['svg'], 'radialGradient'), - (namespaces['svg'], 'rect'), - (namespaces['svg'], 'set'), - (namespaces['svg'], 'stop'), - (namespaces['svg'], 'svg'), - (namespaces['svg'], 'switch'), - (namespaces['svg'], 'text'), - (namespaces['svg'], 'title'), - (namespaces['svg'], 'tspan'), - (namespaces['svg'], 'use'), -)) - -allowed_attributes = frozenset(( - # HTML attributes - (None, 'abbr'), - (None, 'accept'), - (None, 'accept-charset'), - (None, 'accesskey'), - (None, 'action'), - (None, 'align'), - (None, 'alt'), - (None, 'autocomplete'), - (None, 'autofocus'), - (None, 'axis'), - (None, 'background'), - (None, 'balance'), - (None, 'bgcolor'), - (None, 'bgproperties'), - (None, 'border'), - (None, 'bordercolor'), - (None, 'bordercolordark'), - (None, 'bordercolorlight'), - (None, 'bottompadding'), - (None, 'cellpadding'), - (None, 'cellspacing'), - (None, 'ch'), - (None, 'challenge'), - (None, 'char'), - (None, 'charoff'), - (None, 'choff'), - (None, 'charset'), - (None, 'checked'), - (None, 'cite'), - (None, 'class'), - (None, 'clear'), - (None, 'color'), - (None, 'cols'), - (None, 'colspan'), - (None, 'compact'), - (None, 'contenteditable'), - (None, 'controls'), - (None, 'coords'), - (None, 'data'), - (None, 'datafld'), - (None, 'datapagesize'), - (None, 'datasrc'), - (None, 'datetime'), - (None, 'default'), - (None, 'delay'), - (None, 'dir'), - (None, 'disabled'), - (None, 'draggable'), - (None, 'dynsrc'), - (None, 'enctype'), - (None, 'end'), - (None, 'face'), - (None, 'for'), - (None, 'form'), - (None, 'frame'), - (None, 'galleryimg'), - (None, 'gutter'), - (None, 'headers'), - (None, 'height'), - (None, 'hidefocus'), - (None, 'hidden'), - (None, 'high'), - (None, 'href'), - (None, 'hreflang'), - (None, 'hspace'), - (None, 'icon'), - (None, 'id'), - (None, 'inputmode'), - (None, 'ismap'), - (None, 'keytype'), - (None, 'label'), - (None, 'leftspacing'), - (None, 'lang'), - (None, 'list'), - (None, 'longdesc'), - (None, 'loop'), - (None, 'loopcount'), - (None, 'loopend'), - (None, 'loopstart'), - (None, 'low'), - (None, 'lowsrc'), - (None, 'max'), - (None, 'maxlength'), - (None, 'media'), - (None, 'method'), - (None, 'min'), - (None, 'multiple'), - (None, 'name'), - (None, 'nohref'), - (None, 'noshade'), - (None, 'nowrap'), - (None, 'open'), - (None, 'optimum'), - (None, 'pattern'), - (None, 'ping'), - (None, 'point-size'), - (None, 'poster'), - (None, 'pqg'), - (None, 'preload'), - (None, 'prompt'), - (None, 'radiogroup'), - (None, 'readonly'), - (None, 'rel'), - (None, 'repeat-max'), - (None, 'repeat-min'), - (None, 'replace'), - (None, 'required'), - (None, 'rev'), - (None, 'rightspacing'), - (None, 'rows'), - (None, 'rowspan'), - (None, 'rules'), - (None, 'scope'), - (None, 'selected'), - (None, 'shape'), - (None, 'size'), - (None, 'span'), - (None, 'src'), - (None, 'start'), - (None, 'step'), - (None, 'style'), - (None, 'summary'), - (None, 'suppress'), - (None, 'tabindex'), - (None, 'target'), - (None, 'template'), - (None, 'title'), - (None, 'toppadding'), - (None, 'type'), - (None, 'unselectable'), - (None, 'usemap'), - (None, 'urn'), - (None, 'valign'), - (None, 'value'), - (None, 'variable'), - (None, 'volume'), - (None, 'vspace'), - (None, 'vrml'), - (None, 'width'), - (None, 'wrap'), - (namespaces['xml'], 'lang'), - # MathML attributes - (None, 'actiontype'), - (None, 'align'), - (None, 'columnalign'), - (None, 'columnalign'), - (None, 'columnalign'), - (None, 'columnlines'), - (None, 'columnspacing'), - (None, 'columnspan'), - (None, 'depth'), - (None, 'display'), - (None, 'displaystyle'), - (None, 'equalcolumns'), - (None, 'equalrows'), - (None, 'fence'), - (None, 'fontstyle'), - (None, 'fontweight'), - (None, 'frame'), - (None, 'height'), - (None, 'linethickness'), - (None, 'lspace'), - (None, 'mathbackground'), - (None, 'mathcolor'), - (None, 'mathvariant'), - (None, 'mathvariant'), - (None, 'maxsize'), - (None, 'minsize'), - (None, 'other'), - (None, 'rowalign'), - (None, 'rowalign'), - (None, 'rowalign'), - (None, 'rowlines'), - (None, 'rowspacing'), - (None, 'rowspan'), - (None, 'rspace'), - (None, 'scriptlevel'), - (None, 'selection'), - (None, 'separator'), - (None, 'stretchy'), - (None, 'width'), - (None, 'width'), - (namespaces['xlink'], 'href'), - (namespaces['xlink'], 'show'), - (namespaces['xlink'], 'type'), - # SVG attributes - (None, 'accent-height'), - (None, 'accumulate'), - (None, 'additive'), - (None, 'alphabetic'), - (None, 'arabic-form'), - (None, 'ascent'), - (None, 'attributeName'), - (None, 'attributeType'), - (None, 'baseProfile'), - (None, 'bbox'), - (None, 'begin'), - (None, 'by'), - (None, 'calcMode'), - (None, 'cap-height'), - (None, 'class'), - (None, 'clip-path'), - (None, 'color'), - (None, 'color-rendering'), - (None, 'content'), - (None, 'cx'), - (None, 'cy'), - (None, 'd'), - (None, 'dx'), - (None, 'dy'), - (None, 'descent'), - (None, 'display'), - (None, 'dur'), - (None, 'end'), - (None, 'fill'), - (None, 'fill-opacity'), - (None, 'fill-rule'), - (None, 'font-family'), - (None, 'font-size'), - (None, 'font-stretch'), - (None, 'font-style'), - (None, 'font-variant'), - (None, 'font-weight'), - (None, 'from'), - (None, 'fx'), - (None, 'fy'), - (None, 'g1'), - (None, 'g2'), - (None, 'glyph-name'), - (None, 'gradientUnits'), - (None, 'hanging'), - (None, 'height'), - (None, 'horiz-adv-x'), - (None, 'horiz-origin-x'), - (None, 'id'), - (None, 'ideographic'), - (None, 'k'), - (None, 'keyPoints'), - (None, 'keySplines'), - (None, 'keyTimes'), - (None, 'lang'), - (None, 'marker-end'), - (None, 'marker-mid'), - (None, 'marker-start'), - (None, 'markerHeight'), - (None, 'markerUnits'), - (None, 'markerWidth'), - (None, 'mathematical'), - (None, 'max'), - (None, 'min'), - (None, 'name'), - (None, 'offset'), - (None, 'opacity'), - (None, 'orient'), - (None, 'origin'), - (None, 'overline-position'), - (None, 'overline-thickness'), - (None, 'panose-1'), - (None, 'path'), - (None, 'pathLength'), - (None, 'points'), - (None, 'preserveAspectRatio'), - (None, 'r'), - (None, 'refX'), - (None, 'refY'), - (None, 'repeatCount'), - (None, 'repeatDur'), - (None, 'requiredExtensions'), - (None, 'requiredFeatures'), - (None, 'restart'), - (None, 'rotate'), - (None, 'rx'), - (None, 'ry'), - (None, 'slope'), - (None, 'stemh'), - (None, 'stemv'), - (None, 'stop-color'), - (None, 'stop-opacity'), - (None, 'strikethrough-position'), - (None, 'strikethrough-thickness'), - (None, 'stroke'), - (None, 'stroke-dasharray'), - (None, 'stroke-dashoffset'), - (None, 'stroke-linecap'), - (None, 'stroke-linejoin'), - (None, 'stroke-miterlimit'), - (None, 'stroke-opacity'), - (None, 'stroke-width'), - (None, 'systemLanguage'), - (None, 'target'), - (None, 'text-anchor'), - (None, 'to'), - (None, 'transform'), - (None, 'type'), - (None, 'u1'), - (None, 'u2'), - (None, 'underline-position'), - (None, 'underline-thickness'), - (None, 'unicode'), - (None, 'unicode-range'), - (None, 'units-per-em'), - (None, 'values'), - (None, 'version'), - (None, 'viewBox'), - (None, 'visibility'), - (None, 'width'), - (None, 'widths'), - (None, 'x'), - (None, 'x-height'), - (None, 'x1'), - (None, 'x2'), - (namespaces['xlink'], 'actuate'), - (namespaces['xlink'], 'arcrole'), - (namespaces['xlink'], 'href'), - (namespaces['xlink'], 'role'), - (namespaces['xlink'], 'show'), - (namespaces['xlink'], 'title'), - (namespaces['xlink'], 'type'), - (namespaces['xml'], 'base'), - (namespaces['xml'], 'lang'), - (namespaces['xml'], 'space'), - (None, 'y'), - (None, 'y1'), - (None, 'y2'), - (None, 'zoomAndPan'), -)) - -attr_val_is_uri = frozenset(( - (None, 'href'), - (None, 'src'), - (None, 'cite'), - (None, 'action'), - (None, 'longdesc'), - (None, 'poster'), - (None, 'background'), - (None, 'datasrc'), - (None, 'dynsrc'), - (None, 'lowsrc'), - (None, 'ping'), - (namespaces['xlink'], 'href'), - (namespaces['xml'], 'base'), -)) - -svg_attr_val_allows_ref = frozenset(( - (None, 'clip-path'), - (None, 'color-profile'), - (None, 'cursor'), - (None, 'fill'), - (None, 'filter'), - (None, 'marker'), - (None, 'marker-start'), - (None, 'marker-mid'), - (None, 'marker-end'), - (None, 'mask'), - (None, 'stroke'), -)) - -svg_allow_local_href = frozenset(( - (None, 'altGlyph'), - (None, 'animate'), - (None, 'animateColor'), - (None, 'animateMotion'), - (None, 'animateTransform'), - (None, 'cursor'), - (None, 'feImage'), - (None, 'filter'), - (None, 'linearGradient'), - (None, 'pattern'), - (None, 'radialGradient'), - (None, 'textpath'), - (None, 'tref'), - (None, 'set'), - (None, 'use') -)) - -allowed_css_properties = frozenset(( - 'azimuth', - 'background-color', - 'border-bottom-color', - 'border-collapse', - 'border-color', - 'border-left-color', - 'border-right-color', - 'border-top-color', - 'clear', - 'color', - 'cursor', - 'direction', - 'display', - 'elevation', - 'float', - 'font', - 'font-family', - 'font-size', - 'font-style', - 'font-variant', - 'font-weight', - 'height', - 'letter-spacing', - 'line-height', - 'overflow', - 'pause', - 'pause-after', - 'pause-before', - 'pitch', - 'pitch-range', - 'richness', - 'speak', - 'speak-header', - 'speak-numeral', - 'speak-punctuation', - 'speech-rate', - 'stress', - 'text-align', - 'text-decoration', - 'text-indent', - 'unicode-bidi', - 'vertical-align', - 'voice-family', - 'volume', - 'white-space', - 'width', -)) - -allowed_css_keywords = frozenset(( - 'auto', - 'aqua', - 'black', - 'block', - 'blue', - 'bold', - 'both', - 'bottom', - 'brown', - 'center', - 'collapse', - 'dashed', - 'dotted', - 'fuchsia', - 'gray', - 'green', - '!important', - 'italic', - 'left', - 'lime', - 'maroon', - 'medium', - 'none', - 'navy', - 'normal', - 'nowrap', - 'olive', - 'pointer', - 'purple', - 'red', - 'right', - 'solid', - 'silver', - 'teal', - 'top', - 'transparent', - 'underline', - 'white', - 'yellow', -)) - -allowed_svg_properties = frozenset(( - 'fill', - 'fill-opacity', - 'fill-rule', - 'stroke', - 'stroke-width', - 'stroke-linecap', - 'stroke-linejoin', - 'stroke-opacity', -)) - -allowed_protocols = frozenset(( - 'ed2k', - 'ftp', - 'http', - 'https', - 'irc', - 'mailto', - 'news', - 'gopher', - 'nntp', - 'telnet', - 'webcal', - 'xmpp', - 'callto', - 'feed', - 'urn', - 'aim', - 'rsync', - 'tag', - 'ssh', - 'sftp', - 'rtsp', - 'afs', - 'data', -)) - -allowed_content_types = frozenset(( - 'image/png', - 'image/jpeg', - 'image/gif', - 'image/webp', - 'image/bmp', - 'text/plain', -)) - - -data_content_type = re.compile(r''' - ^ - # Match a content type <application>/<type> - (?P<content_type>[-a-zA-Z0-9.]+/[-a-zA-Z0-9.]+) - # Match any character set and encoding - (?:(?:;charset=(?:[-a-zA-Z0-9]+)(?:;(?:base64))?) - |(?:;(?:base64))?(?:;charset=(?:[-a-zA-Z0-9]+))?) - # Assume the rest is data - ,.* - $ - ''', - re.VERBOSE) - - -class Filter(base.Filter): - """Sanitizes token stream of XHTML+MathML+SVG and of inline style attributes""" - def __init__(self, - source, - allowed_elements=allowed_elements, - allowed_attributes=allowed_attributes, - allowed_css_properties=allowed_css_properties, - allowed_css_keywords=allowed_css_keywords, - allowed_svg_properties=allowed_svg_properties, - allowed_protocols=allowed_protocols, - allowed_content_types=allowed_content_types, - attr_val_is_uri=attr_val_is_uri, - svg_attr_val_allows_ref=svg_attr_val_allows_ref, - svg_allow_local_href=svg_allow_local_href): - """Creates a Filter - - :arg allowed_elements: set of elements to allow--everything else will - be escaped - - :arg allowed_attributes: set of attributes to allow in - elements--everything else will be stripped - - :arg allowed_css_properties: set of CSS properties to allow--everything - else will be stripped - - :arg allowed_css_keywords: set of CSS keywords to allow--everything - else will be stripped - - :arg allowed_svg_properties: set of SVG properties to allow--everything - else will be removed - - :arg allowed_protocols: set of allowed protocols for URIs - - :arg allowed_content_types: set of allowed content types for ``data`` URIs. - - :arg attr_val_is_uri: set of attributes that have URI values--values - that have a scheme not listed in ``allowed_protocols`` are removed - - :arg svg_attr_val_allows_ref: set of SVG attributes that can have - references - - :arg svg_allow_local_href: set of SVG elements that can have local - hrefs--these are removed - - """ - super(Filter, self).__init__(source) - self.allowed_elements = allowed_elements - self.allowed_attributes = allowed_attributes - self.allowed_css_properties = allowed_css_properties - self.allowed_css_keywords = allowed_css_keywords - self.allowed_svg_properties = allowed_svg_properties - self.allowed_protocols = allowed_protocols - self.allowed_content_types = allowed_content_types - self.attr_val_is_uri = attr_val_is_uri - self.svg_attr_val_allows_ref = svg_attr_val_allows_ref - self.svg_allow_local_href = svg_allow_local_href - - def __iter__(self): - for token in base.Filter.__iter__(self): - token = self.sanitize_token(token) - if token: - yield token - - # Sanitize the +html+, escaping all elements not in ALLOWED_ELEMENTS, and - # stripping out all attributes not in ALLOWED_ATTRIBUTES. Style attributes - # are parsed, and a restricted set, specified by ALLOWED_CSS_PROPERTIES and - # ALLOWED_CSS_KEYWORDS, are allowed through. attributes in ATTR_VAL_IS_URI - # are scanned, and only URI schemes specified in ALLOWED_PROTOCOLS are - # allowed. - # - # sanitize_html('<script> do_nasty_stuff() </script>') - # => <script> do_nasty_stuff() </script> - # sanitize_html('<a href="javascript: sucker();">Click here for $100</a>') - # => <a>Click here for $100</a> - def sanitize_token(self, token): - - # accommodate filters which use token_type differently - token_type = token["type"] - if token_type in ("StartTag", "EndTag", "EmptyTag"): - name = token["name"] - namespace = token["namespace"] - if ((namespace, name) in self.allowed_elements or - (namespace is None and - (namespaces["html"], name) in self.allowed_elements)): - return self.allowed_token(token) - else: - return self.disallowed_token(token) - elif token_type == "Comment": - pass - else: - return token - - def allowed_token(self, token): - if "data" in token: - attrs = token["data"] - attr_names = set(attrs.keys()) - - # Remove forbidden attributes - for to_remove in (attr_names - self.allowed_attributes): - del token["data"][to_remove] - attr_names.remove(to_remove) - - # Remove attributes with disallowed URL values - for attr in (attr_names & self.attr_val_is_uri): - assert attr in attrs - # I don't have a clue where this regexp comes from or why it matches those - # characters, nor why we call unescape. I just know it's always been here. - # Should you be worried by this comment in a sanitizer? Yes. On the other hand, all - # this will do is remove *more* than it otherwise would. - val_unescaped = re.sub("[`\x00-\x20\x7f-\xa0\\s]+", '', - unescape(attrs[attr])).lower() - # remove replacement characters from unescaped characters - val_unescaped = val_unescaped.replace("\ufffd", "") - try: - uri = urlparse.urlparse(val_unescaped) - except ValueError: - uri = None - del attrs[attr] - if uri and uri.scheme: - if uri.scheme not in self.allowed_protocols: - del attrs[attr] - if uri.scheme == 'data': - m = data_content_type.match(uri.path) - if not m: - del attrs[attr] - elif m.group('content_type') not in self.allowed_content_types: - del attrs[attr] - - for attr in self.svg_attr_val_allows_ref: - if attr in attrs: - attrs[attr] = re.sub(r'url\s*\(\s*[^#\s][^)]+?\)', - ' ', - unescape(attrs[attr])) - if (token["name"] in self.svg_allow_local_href and - (namespaces['xlink'], 'href') in attrs and re.search(r'^\s*[^#\s].*', - attrs[(namespaces['xlink'], 'href')])): - del attrs[(namespaces['xlink'], 'href')] - if (None, 'style') in attrs: - attrs[(None, 'style')] = self.sanitize_css(attrs[(None, 'style')]) - token["data"] = attrs - return token - - def disallowed_token(self, token): - token_type = token["type"] - if token_type == "EndTag": - token["data"] = "</%s>" % token["name"] - elif token["data"]: - assert token_type in ("StartTag", "EmptyTag") - attrs = [] - for (ns, name), v in token["data"].items(): - attrs.append(' %s="%s"' % (name if ns is None else "%s:%s" % (prefixes[ns], name), escape(v))) - token["data"] = "<%s%s>" % (token["name"], ''.join(attrs)) - else: - token["data"] = "<%s>" % token["name"] - if token.get("selfClosing"): - token["data"] = token["data"][:-1] + "/>" - - token["type"] = "Characters" - - del token["name"] - return token - - def sanitize_css(self, style): - # disallow urls - style = re.compile(r'url\s*\(\s*[^\s)]+?\s*\)\s*').sub(' ', style) - - # gauntlet - if not re.match(r"""^([:,;#%.\sa-zA-Z0-9!]|\w-\w|'[\s\w]+'|"[\s\w]+"|\([\d,\s]+\))*$""", style): - return '' - if not re.match(r"^\s*([-\w]+\s*:[^:;]*(;\s*|$))*$", style): - return '' - - clean = [] - for prop, value in re.findall(r"([-\w]+)\s*:\s*([^:;]*)", style): - if not value: - continue - if prop.lower() in self.allowed_css_properties: - clean.append(prop + ': ' + value + ';') - elif prop.split('-')[0].lower() in ['background', 'border', 'margin', - 'padding']: - for keyword in value.split(): - if keyword not in self.allowed_css_keywords and \ - not re.match(r"^(#[0-9a-fA-F]+|rgb\(\d+%?,\d*%?,?\d*%?\)?|\d{0,2}\.?\d{0,2}(cm|em|ex|in|mm|pc|pt|px|%|,|\))?)$", keyword): # noqa - break - else: - clean.append(prop + ': ' + value + ';') - elif prop.lower() in self.allowed_svg_properties: - clean.append(prop + ': ' + value + ';') - - return ' '.join(clean) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/whitespace.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/whitespace.py deleted file mode 100644 index 24bb0de..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/filters/whitespace.py +++ /dev/null @@ -1,38 +0,0 @@ -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): - """Collapses whitespace except in pre, textarea, and script elements""" - 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/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/html5parser.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/html5parser.py deleted file mode 100644 index b185971..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/html5parser.py +++ /dev/null @@ -1,2791 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import with_metaclass, viewkeys - -import types -from collections import OrderedDict - -from . import _inputstream -from . import _tokenizer - -from . import treebuilders -from .treebuilders.base import Marker - -from . import _utils -from .constants import ( - spaceCharacters, asciiUpper2Lower, - specialElements, headingElements, cdataElements, rcdataElements, - tokenTypes, tagTokenTypes, - namespaces, - htmlIntegrationPointElements, mathmlTextIntegrationPointElements, - adjustForeignAttributes as adjustForeignAttributesMap, - adjustMathMLAttributes, adjustSVGAttributes, - E, - _ReparseException -) - - -def parse(doc, treebuilder="etree", namespaceHTMLElements=True, **kwargs): - """Parse an HTML document as a string or file-like object into a tree - - :arg doc: the document to parse as a string or file-like object - - :arg treebuilder: the treebuilder to use when parsing - - :arg namespaceHTMLElements: whether or not to namespace HTML elements - - :returns: parsed tree - - Example: - - >>> from html5lib.html5parser import parse - >>> parse('<html><body><p>This is a doc</p></body></html>') - <Element u'{http://www.w3.org/1999/xhtml}html' at 0x7feac4909db0> - - """ - tb = treebuilders.getTreeBuilder(treebuilder) - p = HTMLParser(tb, namespaceHTMLElements=namespaceHTMLElements) - return p.parse(doc, **kwargs) - - -def parseFragment(doc, container="div", treebuilder="etree", namespaceHTMLElements=True, **kwargs): - """Parse an HTML fragment as a string or file-like object into a tree - - :arg doc: the fragment to parse as a string or file-like object - - :arg container: the container context to parse the fragment in - - :arg treebuilder: the treebuilder to use when parsing - - :arg namespaceHTMLElements: whether or not to namespace HTML elements - - :returns: parsed tree - - Example: - - >>> from html5lib.html5libparser import parseFragment - >>> parseFragment('<b>this is a fragment</b>') - <Element u'DOCUMENT_FRAGMENT' at 0x7feac484b090> - - """ - tb = treebuilders.getTreeBuilder(treebuilder) - p = HTMLParser(tb, namespaceHTMLElements=namespaceHTMLElements) - return p.parseFragment(doc, container=container, **kwargs) - - -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, strict=False, namespaceHTMLElements=True, debug=False): - """ - :arg tree: a treebuilder class controlling the type of tree that will be - returned. Built in treebuilders can be accessed through - html5lib.treebuilders.getTreeBuilder(treeType) - - :arg strict: raise an exception when a parse error is encountered - - :arg namespaceHTMLElements: whether or not to namespace HTML elements - - :arg debug: whether or not to enable debug mode which logs things - - Example: - - >>> from html5lib.html5parser import HTMLParser - >>> parser = HTMLParser() # generates parser with etree builder - >>> parser = HTMLParser('lxml', strict=True) # generates parser with lxml builder which is strict - - """ - - # Raise an exception on the first error encountered - self.strict = strict - - if tree is None: - tree = treebuilders.getTreeBuilder("etree") - self.tree = tree(namespaceHTMLElements) - 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", scripting=False, **kwargs): - - self.innerHTMLMode = innerHTML - self.container = container - self.scripting = scripting - self.tokenizer = _tokenizer.HTMLTokenizer(stream, parser=self, **kwargs) - self.reset() - - try: - self.mainLoop() - except _ReparseException: - self.reset() - self.mainLoop() - - 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 # pylint:disable=redefined-variable-type - self.phase = self.phases["initial"] - - self.lastPhase = None - - self.beforeRCDataPhase = None - - self.framesetOK = True - - @property - def documentEncoding(self): - """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].name - - 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(): - prev_token = None - new_token = token - while new_token is not None: - prev_token = new_token - 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 - type == StartTagToken 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 prev_token["selfClosing"] and - not prev_token["selfClosingAcknowledged"]): - self.parseError("non-void-element-with-trailing-solidus", - {"name": prev_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, *args, **kwargs): - """Parse a HTML document into a well-formed tree - - :arg stream: a file-like 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). - - :arg scripting: treat noscript elements as if JavaScript was turned on - - :returns: parsed tree - - Example: - - >>> from html5lib.html5parser import HTMLParser - >>> parser = HTMLParser() - >>> parser.parse('<html><body><p>This is a doc</p></body></html>') - <Element u'{http://www.w3.org/1999/xhtml}html' at 0x7feac4909db0> - - """ - self._parse(stream, False, None, *args, **kwargs) - return self.tree.getDocument() - - def parseFragment(self, stream, *args, **kwargs): - """Parse a HTML fragment into a well-formed tree fragment - - :arg container: name of the element we're setting the innerHTML - property if set to None, default to 'div' - - :arg stream: a file-like 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) - - :arg scripting: treat noscript elements as if JavaScript was turned on - - :returns: parsed tree - - Example: - - >>> from html5lib.html5libparser import HTMLParser - >>> parser = HTMLParser() - >>> parser.parseFragment('<b>this is a fragment</b>') - <Element u'DOCUMENT_FRAGMENT' at 0x7feac484b090> - - """ - self._parse(stream, True, *args, **kwargs) - return self.tree.getFragment() - - def parseError(self, errorcode="XXX-undefined-error", datavars=None): - # XXX The idea is to make errorcode mandatory. - if datavars is None: - datavars = {} - 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"]: - raw = token["data"] - token["data"] = OrderedDict(raw) - if len(raw) > len(token["data"]): - # we had some duplicated attribute, fix so first wins - token["data"].update(raw[::-1]) - - return token - - def adjustMathMLAttributes(self, token): - adjust_attributes(token, adjustMathMLAttributes) - - def adjustSVGAttributes(self, token): - adjust_attributes(token, adjustSVGAttributes) - - def adjustForeignAttributes(self, token): - adjust_attributes(token, adjustForeignAttributesMap) - - def reparseTokenNormal(self, token): - # pylint:disable=unused-argument - 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 - 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"] - - -@_utils.memoize -def getPhases(debug): - def log(function): - """Logger that records which phase processes each token""" - type_names = dict((value, key) for key, value in - 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 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 - - # pylint:disable=unused-argument - 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), - (("noframes", "style"), self.startTagNoFramesStyle), - ("noscript", self.startTagNoscript), - ("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 startTagNoFramesStyle(self, token): - # Need to decide whether to implement the scripting-disabled case - self.parser.parseRCDataRawtext(token, "RAWTEXT") - - def startTagNoscript(self, token): - if self.parser.scripting: - self.parser.parseRCDataRawtext(token, "RAWTEXT") - else: - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inHeadNoscript"] - - 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")) - - class InHeadNoscriptPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - (("basefont", "bgsound", "link", "meta", "noframes", "style"), self.startTagBaseLinkCommand), - (("head", "noscript"), self.startTagHeadNoscript), - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("noscript", self.endTagNoscript), - ("br", self.endTagBr), - ]) - self.endTagHandler.default = self.endTagOther - - def processEOF(self): - self.parser.parseError("eof-in-head-noscript") - self.anythingElse() - return True - - def processComment(self, token): - return self.parser.phases["inHead"].processComment(token) - - def processCharacters(self, token): - self.parser.parseError("char-in-head-noscript") - self.anythingElse() - return token - - def processSpaceCharacters(self, token): - return self.parser.phases["inHead"].processSpaceCharacters(token) - - def startTagHtml(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def startTagBaseLinkCommand(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagHeadNoscript(self, token): - self.parser.parseError("unexpected-start-tag", {"name": token["name"]}) - - def startTagOther(self, token): - self.parser.parseError("unexpected-inhead-noscript-tag", {"name": token["name"]}) - self.anythingElse() - return token - - def endTagNoscript(self, token): - node = self.parser.tree.openElements.pop() - assert node.name == "noscript", "Expected noscript got %s" % node.name - self.parser.phase = self.parser.phases["inHead"] - - def endTagBr(self, token): - self.parser.parseError("unexpected-inhead-noscript-tag", {"name": token["name"]}) - self.anythingElse() - return token - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - def anythingElse(self): - # Caller must raise parse error first! - self.endTagNoscript(impliedTagToken("noscript")) - - 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) - - # Set this to the default handler - self.processSpaceCharacters = self.processSpaceCharactersNonPre - - 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", - "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), - ("noscript", self.startTagNoscript), - (("noembed", "noframes"), 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): - return (node1.name == node2.name and - node1.namespace == node2.namespace and - node1.attributes == node2.attributes) - - # 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 <pre>, <listing>, and <textarea> blocks) we - # want to drop leading newlines - data = token["data"] - self.processSpaceCharacters = self.processSpaceCharactersNonPre - if (data.startswith("\n") and - self.tree.openElements[-1].name in ("pre", "listing", "textarea") and - not self.tree.openElements[-1].hasContent()): - data = data[1:] - if data: - self.tree.reconstructActiveFormattingElements() - self.tree.insertText(data) - - def processCharacters(self, token): - if token["data"] == "\u0000": - # The tokenizer should always emit null on its own - return - self.tree.reconstructActiveFormattingElements() - self.tree.insertText(token["data"]) - # This must be bad for performance - if (self.parser.framesetOK and - any([char not in spaceCharacters - for char in token["data"]])): - self.parser.framesetOK = False - - def processSpaceCharactersNonPre(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertText(token["data"]) - - def startTagProcessInHead(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagBody(self, token): - self.parser.parseError("unexpected-start-tag", {"name": "body"}) - if (len(self.tree.openElements) == 1 or - self.tree.openElements[1].name != "body"): - assert self.parser.innerHTML - else: - self.parser.framesetOK = False - for attr, value in token["data"].items(): - if attr not in self.tree.openElements[1].attributes: - self.tree.openElements[1].attributes[attr] = value - - def startTagFrameset(self, token): - self.parser.parseError("unexpected-start-tag", {"name": "frameset"}) - if (len(self.tree.openElements) == 1 or self.tree.openElements[1].name != "body"): - assert self.parser.innerHTML - elif not self.parser.framesetOK: - pass - else: - if self.tree.openElements[1].parent: - self.tree.openElements[1].parent.removeChild(self.tree.openElements[1]) - while self.tree.openElements[-1].name != "html": - self.tree.openElements.pop() - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inFrameset"] - - def startTagCloseP(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.insertElement(token) - - def startTagPreListing(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.insertElement(token) - self.parser.framesetOK = False - self.processSpaceCharacters = self.processSpaceCharactersDropNewline - - def startTagForm(self, token): - if self.tree.formPointer: - self.parser.parseError("unexpected-start-tag", {"name": "form"}) - else: - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.insertElement(token) - self.tree.formPointer = self.tree.openElements[-1] - - def startTagListItem(self, token): - self.parser.framesetOK = False - - stopNamesMap = {"li": ["li"], - "dt": ["dt", "dd"], - "dd": ["dt", "dd"]} - stopNames = stopNamesMap[token["name"]] - for node in reversed(self.tree.openElements): - if node.name in stopNames: - self.parser.phase.processEndTag( - impliedTagToken(node.name, "EndTag")) - break - if (node.nameTuple in specialElements and - node.name not in ("address", "div", "p")): - break - - if self.tree.elementInScope("p", variant="button"): - self.parser.phase.processEndTag( - impliedTagToken("p", "EndTag")) - - self.tree.insertElement(token) - - def startTagPlaintext(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.insertElement(token) - self.parser.tokenizer.state = self.parser.tokenizer.plaintextState - - def startTagHeading(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - if self.tree.openElements[-1].name in headingElements: - self.parser.parseError("unexpected-start-tag", {"name": token["name"]}) - self.tree.openElements.pop() - self.tree.insertElement(token) - - def startTagA(self, token): - afeAElement = self.tree.elementInActiveFormattingElements("a") - if afeAElement: - self.parser.parseError("unexpected-start-tag-implies-end-tag", - {"startName": "a", "endName": "a"}) - self.endTagFormatting(impliedTagToken("a")) - if afeAElement in self.tree.openElements: - self.tree.openElements.remove(afeAElement) - if afeAElement in self.tree.activeFormattingElements: - self.tree.activeFormattingElements.remove(afeAElement) - self.tree.reconstructActiveFormattingElements() - self.addFormattingElement(token) - - def startTagFormatting(self, token): - self.tree.reconstructActiveFormattingElements() - self.addFormattingElement(token) - - def startTagNobr(self, token): - self.tree.reconstructActiveFormattingElements() - if self.tree.elementInScope("nobr"): - self.parser.parseError("unexpected-start-tag-implies-end-tag", - {"startName": "nobr", "endName": "nobr"}) - self.processEndTag(impliedTagToken("nobr")) - # XXX Need tests that trigger the following - self.tree.reconstructActiveFormattingElements() - self.addFormattingElement(token) - - def startTagButton(self, token): - if self.tree.elementInScope("button"): - self.parser.parseError("unexpected-start-tag-implies-end-tag", - {"startName": "button", "endName": "button"}) - self.processEndTag(impliedTagToken("button")) - return token - else: - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - self.parser.framesetOK = False - - def startTagAppletMarqueeObject(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - self.tree.activeFormattingElements.append(Marker) - self.parser.framesetOK = False - - def startTagXmp(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.reconstructActiveFormattingElements() - self.parser.framesetOK = False - self.parser.parseRCDataRawtext(token, "RAWTEXT") - - def startTagTable(self, token): - if self.parser.compatMode != "quirks": - if self.tree.elementInScope("p", variant="button"): - self.processEndTag(impliedTagToken("p")) - self.tree.insertElement(token) - self.parser.framesetOK = False - self.parser.phase = self.parser.phases["inTable"] - - def startTagVoidFormatting(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - self.parser.framesetOK = False - - def startTagInput(self, token): - framesetOK = self.parser.framesetOK - self.startTagVoidFormatting(token) - if ("type" in token["data"] and - token["data"]["type"].translate(asciiUpper2Lower) == "hidden"): - # input type=hidden doesn't change framesetOK - self.parser.framesetOK = framesetOK - - def startTagParamSource(self, token): - self.tree.insertElement(token) - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - - def startTagHr(self, token): - if self.tree.elementInScope("p", variant="button"): - self.endTagP(impliedTagToken("p")) - self.tree.insertElement(token) - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - self.parser.framesetOK = False - - def startTagImage(self, token): - # No really... - self.parser.parseError("unexpected-start-tag-treated-as", - {"originalName": "image", "newName": "img"}) - self.processStartTag(impliedTagToken("img", "StartTag", - attributes=token["data"], - selfClosing=token["selfClosing"])) - - def startTagIsIndex(self, token): - self.parser.parseError("deprecated-tag", {"name": "isindex"}) - if self.tree.formPointer: - return - form_attrs = {} - if "action" in token["data"]: - form_attrs["action"] = token["data"]["action"] - self.processStartTag(impliedTagToken("form", "StartTag", - attributes=form_attrs)) - self.processStartTag(impliedTagToken("hr", "StartTag")) - self.processStartTag(impliedTagToken("label", "StartTag")) - # XXX Localization ... - if "prompt" in token["data"]: - prompt = token["data"]["prompt"] - else: - prompt = "This is a searchable index. Enter search keywords: " - self.processCharacters( - {"type": tokenTypes["Characters"], "data": prompt}) - attributes = token["data"].copy() - if "action" in attributes: - del attributes["action"] - if "prompt" in attributes: - del attributes["prompt"] - attributes["name"] = "isindex" - self.processStartTag(impliedTagToken("input", "StartTag", - attributes=attributes, - selfClosing=token["selfClosing"])) - self.processEndTag(impliedTagToken("label")) - self.processStartTag(impliedTagToken("hr", "StartTag")) - self.processEndTag(impliedTagToken("form")) - - def startTagTextarea(self, token): - self.tree.insertElement(token) - self.parser.tokenizer.state = self.parser.tokenizer.rcdataState - self.processSpaceCharacters = self.processSpaceCharactersDropNewline - self.parser.framesetOK = False - - def startTagIFrame(self, token): - self.parser.framesetOK = False - self.startTagRawtext(token) - - def startTagNoscript(self, token): - if self.parser.scripting: - self.startTagRawtext(token) - else: - self.startTagOther(token) - - def startTagRawtext(self, token): - """iframe, noembed noframes, noscript(if scripting enabled)""" - self.parser.parseRCDataRawtext(token, "RAWTEXT") - - def startTagOpt(self, token): - if self.tree.openElements[-1].name == "option": - self.parser.phase.processEndTag(impliedTagToken("option")) - self.tree.reconstructActiveFormattingElements() - self.parser.tree.insertElement(token) - - def startTagSelect(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - self.parser.framesetOK = False - if self.parser.phase in (self.parser.phases["inTable"], - self.parser.phases["inCaption"], - self.parser.phases["inColumnGroup"], - self.parser.phases["inTableBody"], - self.parser.phases["inRow"], - self.parser.phases["inCell"]): - self.parser.phase = self.parser.phases["inSelectInTable"] - else: - self.parser.phase = self.parser.phases["inSelect"] - - def startTagRpRt(self, token): - if self.tree.elementInScope("ruby"): - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != "ruby": - self.parser.parseError() - self.tree.insertElement(token) - - def startTagMath(self, token): - self.tree.reconstructActiveFormattingElements() - self.parser.adjustMathMLAttributes(token) - self.parser.adjustForeignAttributes(token) - token["namespace"] = namespaces["mathml"] - self.tree.insertElement(token) - # Need to get the parse error right for the case where the token - # has a namespace not equal to the xmlns attribute - if token["selfClosing"]: - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - - def startTagSvg(self, token): - self.tree.reconstructActiveFormattingElements() - self.parser.adjustSVGAttributes(token) - self.parser.adjustForeignAttributes(token) - token["namespace"] = namespaces["svg"] - self.tree.insertElement(token) - # Need to get the parse error right for the case where the token - # has a namespace not equal to the xmlns attribute - if token["selfClosing"]: - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - - def startTagMisplaced(self, token): - """ Elements that should be children of other elements that have a - different insertion mode; here they are ignored - "caption", "col", "colgroup", "frame", "frameset", "head", - "option", "optgroup", "tbody", "td", "tfoot", "th", "thead", - "tr", "noscript" - """ - self.parser.parseError("unexpected-start-tag-ignored", {"name": token["name"]}) - - def startTagOther(self, token): - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(token) - - def endTagP(self, token): - if not self.tree.elementInScope("p", variant="button"): - self.startTagCloseP(impliedTagToken("p", "StartTag")) - self.parser.parseError("unexpected-end-tag", {"name": "p"}) - self.endTagP(impliedTagToken("p", "EndTag")) - else: - self.tree.generateImpliedEndTags("p") - if self.tree.openElements[-1].name != "p": - self.parser.parseError("unexpected-end-tag", {"name": "p"}) - node = self.tree.openElements.pop() - while node.name != "p": - node = self.tree.openElements.pop() - - def endTagBody(self, token): - if not self.tree.elementInScope("body"): - self.parser.parseError() - return - elif self.tree.openElements[-1].name != "body": - for node in self.tree.openElements[2:]: - if node.name not in frozenset(("dd", "dt", "li", "optgroup", - "option", "p", "rp", "rt", - "tbody", "td", "tfoot", - "th", "thead", "tr", "body", - "html")): - # Not sure this is the correct name for the parse error - self.parser.parseError( - "expected-one-end-tag-but-got-another", - {"gotName": "body", "expectedName": node.name}) - break - self.parser.phase = self.parser.phases["afterBody"] - - def endTagHtml(self, token): - # We repeat the test for the body end tag token being ignored here - if self.tree.elementInScope("body"): - self.endTagBody(impliedTagToken("body")) - return token - - def endTagBlock(self, token): - # Put us back in the right whitespace handling mode - if token["name"] == "pre": - self.processSpaceCharacters = self.processSpaceCharactersNonPre - inScope = self.tree.elementInScope(token["name"]) - if inScope: - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("end-tag-too-early", {"name": token["name"]}) - if inScope: - node = self.tree.openElements.pop() - while node.name != token["name"]: - node = self.tree.openElements.pop() - - def endTagForm(self, token): - node = self.tree.formPointer - self.tree.formPointer = None - if node is None or not self.tree.elementInScope(node): - self.parser.parseError("unexpected-end-tag", - {"name": "form"}) - else: - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1] != node: - self.parser.parseError("end-tag-too-early-ignored", - {"name": "form"}) - self.tree.openElements.remove(node) - - def endTagListItem(self, token): - if token["name"] == "li": - variant = "list" - else: - variant = None - if not self.tree.elementInScope(token["name"], variant=variant): - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - else: - self.tree.generateImpliedEndTags(exclude=token["name"]) - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError( - "end-tag-too-early", - {"name": token["name"]}) - node = self.tree.openElements.pop() - while node.name != token["name"]: - node = self.tree.openElements.pop() - - def endTagHeading(self, token): - for item in headingElements: - if self.tree.elementInScope(item): - self.tree.generateImpliedEndTags() - break - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("end-tag-too-early", {"name": token["name"]}) - - for item in headingElements: - if self.tree.elementInScope(item): - item = self.tree.openElements.pop() - while item.name not in headingElements: - item = self.tree.openElements.pop() - break - - def endTagFormatting(self, token): - """The much-feared adoption agency algorithm""" - # http://svn.whatwg.org/webapps/complete.html#adoptionAgency revision 7867 - # XXX Better parseError messages appreciated. - - # Step 1 - outerLoopCounter = 0 - - # Step 2 - while outerLoopCounter < 8: - - # Step 3 - outerLoopCounter += 1 - - # Step 4: - - # Let the formatting element be the last element in - # the list of active formatting elements that: - # - is between the end of the list and the last scope - # marker in the list, if any, or the start of the list - # otherwise, and - # - has the same tag name as the token. - formattingElement = self.tree.elementInActiveFormattingElements( - token["name"]) - if (not formattingElement or - (formattingElement in self.tree.openElements and - not self.tree.elementInScope(formattingElement.name))): - # If there is no such node, then abort these steps - # and instead act as described in the "any other - # end tag" entry below. - self.endTagOther(token) - return - - # Otherwise, if there is such a node, but that node is - # not in the stack of open elements, then this is a - # parse error; remove the element from the list, and - # abort these steps. - elif formattingElement not in self.tree.openElements: - self.parser.parseError("adoption-agency-1.2", {"name": token["name"]}) - self.tree.activeFormattingElements.remove(formattingElement) - return - - # Otherwise, if there is such a node, and that node is - # also in the stack of open elements, but the element - # is not in scope, then this is a parse error; ignore - # the token, and abort these steps. - elif not self.tree.elementInScope(formattingElement.name): - self.parser.parseError("adoption-agency-4.4", {"name": token["name"]}) - return - - # Otherwise, there is a formatting element and that - # element is in the stack and is in scope. If the - # element is not the current node, this is a parse - # error. In any case, proceed with the algorithm as - # written in the following steps. - else: - if formattingElement != self.tree.openElements[-1]: - self.parser.parseError("adoption-agency-1.3", {"name": token["name"]}) - - # Step 5: - - # Let the furthest block be the topmost node in the - # stack of open elements that is lower in the stack - # than the formatting element, and is an element in - # the special category. There might not be one. - afeIndex = self.tree.openElements.index(formattingElement) - furthestBlock = None - for element in self.tree.openElements[afeIndex:]: - if element.nameTuple in specialElements: - furthestBlock = element - break - - # Step 6: - - # If there is no furthest block, then the UA must - # first pop all the nodes from the bottom of the stack - # of open elements, from the current node up to and - # including the formatting element, then remove the - # formatting element from the list of active - # formatting elements, and finally abort these steps. - if furthestBlock is None: - element = self.tree.openElements.pop() - while element != formattingElement: - element = self.tree.openElements.pop() - self.tree.activeFormattingElements.remove(element) - return - - # Step 7 - commonAncestor = self.tree.openElements[afeIndex - 1] - - # Step 8: - # The bookmark is supposed to help us identify where to reinsert - # nodes in step 15. We have to ensure that we reinsert nodes after - # the node before the active formatting element. Note the bookmark - # can move in step 9.7 - bookmark = self.tree.activeFormattingElements.index(formattingElement) - - # Step 9 - lastNode = node = furthestBlock - innerLoopCounter = 0 - - index = self.tree.openElements.index(node) - while innerLoopCounter < 3: - innerLoopCounter += 1 - # Node is element before node in open elements - index -= 1 - node = self.tree.openElements[index] - if node not in self.tree.activeFormattingElements: - self.tree.openElements.remove(node) - continue - # Step 9.6 - if node == formattingElement: - break - # Step 9.7 - if lastNode == furthestBlock: - bookmark = self.tree.activeFormattingElements.index(node) + 1 - # Step 9.8 - clone = node.cloneNode() - # Replace node with clone - self.tree.activeFormattingElements[ - self.tree.activeFormattingElements.index(node)] = clone - self.tree.openElements[ - self.tree.openElements.index(node)] = clone - node = clone - # Step 9.9 - # Remove lastNode from its parents, if any - if lastNode.parent: - lastNode.parent.removeChild(lastNode) - node.appendChild(lastNode) - # Step 9.10 - lastNode = node - - # Step 10 - # Foster parent lastNode if commonAncestor is a - # table, tbody, tfoot, thead, or tr we need to foster - # parent the lastNode - if lastNode.parent: - lastNode.parent.removeChild(lastNode) - - if commonAncestor.name in frozenset(("table", "tbody", "tfoot", "thead", "tr")): - parent, insertBefore = self.tree.getTableMisnestedNodePosition() - parent.insertBefore(lastNode, insertBefore) - else: - commonAncestor.appendChild(lastNode) - - # Step 11 - clone = formattingElement.cloneNode() - - # Step 12 - furthestBlock.reparentChildren(clone) - - # Step 13 - furthestBlock.appendChild(clone) - - # Step 14 - self.tree.activeFormattingElements.remove(formattingElement) - self.tree.activeFormattingElements.insert(bookmark, clone) - - # Step 15 - self.tree.openElements.remove(formattingElement) - self.tree.openElements.insert( - self.tree.openElements.index(furthestBlock) + 1, clone) - - def endTagAppletMarqueeObject(self, token): - if self.tree.elementInScope(token["name"]): - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("end-tag-too-early", {"name": token["name"]}) - - if self.tree.elementInScope(token["name"]): - element = self.tree.openElements.pop() - while element.name != token["name"]: - element = self.tree.openElements.pop() - self.tree.clearActiveFormattingElements() - - def endTagBr(self, token): - self.parser.parseError("unexpected-end-tag-treated-as", - {"originalName": "br", "newName": "br element"}) - self.tree.reconstructActiveFormattingElements() - self.tree.insertElement(impliedTagToken("br", "StartTag")) - self.tree.openElements.pop() - - def endTagOther(self, token): - for node in self.tree.openElements[::-1]: - if node.name == token["name"]: - self.tree.generateImpliedEndTags(exclude=token["name"]) - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - while self.tree.openElements.pop() != node: - pass - break - else: - if node.nameTuple in specialElements: - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - break - - class TextPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.startTagHandler = _utils.MethodDispatcher([]) - self.startTagHandler.default = self.startTagOther - self.endTagHandler = _utils.MethodDispatcher([ - ("script", self.endTagScript)]) - self.endTagHandler.default = self.endTagOther - - def processCharacters(self, token): - self.tree.insertText(token["data"]) - - def processEOF(self): - self.parser.parseError("expected-named-closing-tag-but-got-eof", - {"name": self.tree.openElements[-1].name}) - self.tree.openElements.pop() - self.parser.phase = self.parser.originalPhase - return True - - def startTagOther(self, token): - assert False, "Tried to process start tag %s in RCDATA/RAWTEXT mode" % token['name'] - - def endTagScript(self, token): - node = self.tree.openElements.pop() - assert node.name == "script" - self.parser.phase = self.parser.originalPhase - # The rest of this method is all stuff that only happens if - # document.write works - - def endTagOther(self, token): - self.tree.openElements.pop() - self.parser.phase = self.parser.originalPhase - - class InTablePhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-table - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("caption", self.startTagCaption), - ("colgroup", self.startTagColgroup), - ("col", self.startTagCol), - (("tbody", "tfoot", "thead"), self.startTagRowGroup), - (("td", "th", "tr"), self.startTagImplyTbody), - ("table", self.startTagTable), - (("style", "script"), self.startTagStyleScript), - ("input", self.startTagInput), - ("form", self.startTagForm) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("table", self.endTagTable), - (("body", "caption", "col", "colgroup", "html", "tbody", "td", - "tfoot", "th", "thead", "tr"), self.endTagIgnore) - ]) - self.endTagHandler.default = self.endTagOther - - # helper methods - def clearStackToTableContext(self): - # "clear the stack back to a table context" - while self.tree.openElements[-1].name not in ("table", "html"): - # self.parser.parseError("unexpected-implied-end-tag-in-table", - # {"name": self.tree.openElements[-1].name}) - self.tree.openElements.pop() - # When the current node is <html> it's an innerHTML case - - # processing methods - def processEOF(self): - if self.tree.openElements[-1].name != "html": - self.parser.parseError("eof-in-table") - else: - assert self.parser.innerHTML - # Stop parsing - - def processSpaceCharacters(self, token): - originalPhase = self.parser.phase - self.parser.phase = self.parser.phases["inTableText"] - self.parser.phase.originalPhase = originalPhase - self.parser.phase.processSpaceCharacters(token) - - def processCharacters(self, token): - originalPhase = self.parser.phase - self.parser.phase = self.parser.phases["inTableText"] - self.parser.phase.originalPhase = originalPhase - self.parser.phase.processCharacters(token) - - def insertText(self, token): - # If we get here there must be at least one non-whitespace character - # Do the table magic! - self.tree.insertFromTable = True - self.parser.phases["inBody"].processCharacters(token) - self.tree.insertFromTable = False - - def startTagCaption(self, token): - self.clearStackToTableContext() - self.tree.activeFormattingElements.append(Marker) - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inCaption"] - - def startTagColgroup(self, token): - self.clearStackToTableContext() - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inColumnGroup"] - - def startTagCol(self, token): - self.startTagColgroup(impliedTagToken("colgroup", "StartTag")) - return token - - def startTagRowGroup(self, token): - self.clearStackToTableContext() - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inTableBody"] - - def startTagImplyTbody(self, token): - self.startTagRowGroup(impliedTagToken("tbody", "StartTag")) - return token - - def startTagTable(self, token): - self.parser.parseError("unexpected-start-tag-implies-end-tag", - {"startName": "table", "endName": "table"}) - self.parser.phase.processEndTag(impliedTagToken("table")) - if not self.parser.innerHTML: - return token - - def startTagStyleScript(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagInput(self, token): - if ("type" in token["data"] and - token["data"]["type"].translate(asciiUpper2Lower) == "hidden"): - self.parser.parseError("unexpected-hidden-input-in-table") - self.tree.insertElement(token) - # XXX associate with form - self.tree.openElements.pop() - else: - self.startTagOther(token) - - def startTagForm(self, token): - self.parser.parseError("unexpected-form-in-table") - if self.tree.formPointer is None: - self.tree.insertElement(token) - self.tree.formPointer = self.tree.openElements[-1] - self.tree.openElements.pop() - - def startTagOther(self, token): - self.parser.parseError("unexpected-start-tag-implies-table-voodoo", {"name": token["name"]}) - # Do the table magic! - self.tree.insertFromTable = True - self.parser.phases["inBody"].processStartTag(token) - self.tree.insertFromTable = False - - def endTagTable(self, token): - if self.tree.elementInScope("table", variant="table"): - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != "table": - self.parser.parseError("end-tag-too-early-named", - {"gotName": "table", - "expectedName": self.tree.openElements[-1].name}) - while self.tree.openElements[-1].name != "table": - self.tree.openElements.pop() - self.tree.openElements.pop() - self.parser.resetInsertionMode() - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def endTagIgnore(self, token): - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag-implies-table-voodoo", {"name": token["name"]}) - # Do the table magic! - self.tree.insertFromTable = True - self.parser.phases["inBody"].processEndTag(token) - self.tree.insertFromTable = False - - class InTableTextPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.originalPhase = None - self.characterTokens = [] - - def flushCharacters(self): - data = "".join([item["data"] for item in self.characterTokens]) - if any([item not in spaceCharacters for item in data]): - token = {"type": tokenTypes["Characters"], "data": data} - self.parser.phases["inTable"].insertText(token) - elif data: - self.tree.insertText(data) - self.characterTokens = [] - - def processComment(self, token): - self.flushCharacters() - self.parser.phase = self.originalPhase - return token - - def processEOF(self): - self.flushCharacters() - self.parser.phase = self.originalPhase - return True - - def processCharacters(self, token): - if token["data"] == "\u0000": - return - self.characterTokens.append(token) - - def processSpaceCharacters(self, token): - # pretty sure we should never reach here - self.characterTokens.append(token) - # assert False - - def processStartTag(self, token): - self.flushCharacters() - self.parser.phase = self.originalPhase - return token - - def processEndTag(self, token): - self.flushCharacters() - self.parser.phase = self.originalPhase - return token - - class InCaptionPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-caption - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - (("caption", "col", "colgroup", "tbody", "td", "tfoot", "th", - "thead", "tr"), self.startTagTableElement) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("caption", self.endTagCaption), - ("table", self.endTagTable), - (("body", "col", "colgroup", "html", "tbody", "td", "tfoot", "th", - "thead", "tr"), self.endTagIgnore) - ]) - self.endTagHandler.default = self.endTagOther - - def ignoreEndTagCaption(self): - return not self.tree.elementInScope("caption", variant="table") - - def processEOF(self): - self.parser.phases["inBody"].processEOF() - - def processCharacters(self, token): - return self.parser.phases["inBody"].processCharacters(token) - - def startTagTableElement(self, token): - self.parser.parseError() - # XXX Have to duplicate logic here to find out if the tag is ignored - ignoreEndTag = self.ignoreEndTagCaption() - self.parser.phase.processEndTag(impliedTagToken("caption")) - if not ignoreEndTag: - return token - - def startTagOther(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def endTagCaption(self, token): - if not self.ignoreEndTagCaption(): - # AT this code is quite similar to endTagTable in "InTable" - self.tree.generateImpliedEndTags() - if self.tree.openElements[-1].name != "caption": - self.parser.parseError("expected-one-end-tag-but-got-another", - {"gotName": "caption", - "expectedName": self.tree.openElements[-1].name}) - while self.tree.openElements[-1].name != "caption": - self.tree.openElements.pop() - self.tree.openElements.pop() - self.tree.clearActiveFormattingElements() - self.parser.phase = self.parser.phases["inTable"] - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def endTagTable(self, token): - self.parser.parseError() - ignoreEndTag = self.ignoreEndTagCaption() - self.parser.phase.processEndTag(impliedTagToken("caption")) - if not ignoreEndTag: - return token - - def endTagIgnore(self, token): - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - def endTagOther(self, token): - return self.parser.phases["inBody"].processEndTag(token) - - class InColumnGroupPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-column - - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("col", self.startTagCol) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("colgroup", self.endTagColgroup), - ("col", self.endTagCol) - ]) - self.endTagHandler.default = self.endTagOther - - def ignoreEndTagColgroup(self): - return self.tree.openElements[-1].name == "html" - - def processEOF(self): - if self.tree.openElements[-1].name == "html": - assert self.parser.innerHTML - return - else: - ignoreEndTag = self.ignoreEndTagColgroup() - self.endTagColgroup(impliedTagToken("colgroup")) - if not ignoreEndTag: - return True - - def processCharacters(self, token): - ignoreEndTag = self.ignoreEndTagColgroup() - self.endTagColgroup(impliedTagToken("colgroup")) - if not ignoreEndTag: - return token - - def startTagCol(self, token): - self.tree.insertElement(token) - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - - def startTagOther(self, token): - ignoreEndTag = self.ignoreEndTagColgroup() - self.endTagColgroup(impliedTagToken("colgroup")) - if not ignoreEndTag: - return token - - def endTagColgroup(self, token): - if self.ignoreEndTagColgroup(): - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - else: - self.tree.openElements.pop() - self.parser.phase = self.parser.phases["inTable"] - - def endTagCol(self, token): - self.parser.parseError("no-end-tag", {"name": "col"}) - - def endTagOther(self, token): - ignoreEndTag = self.ignoreEndTagColgroup() - self.endTagColgroup(impliedTagToken("colgroup")) - if not ignoreEndTag: - return token - - class InTableBodyPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-table0 - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("tr", self.startTagTr), - (("td", "th"), self.startTagTableCell), - (("caption", "col", "colgroup", "tbody", "tfoot", "thead"), - self.startTagTableOther) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - (("tbody", "tfoot", "thead"), self.endTagTableRowGroup), - ("table", self.endTagTable), - (("body", "caption", "col", "colgroup", "html", "td", "th", - "tr"), self.endTagIgnore) - ]) - self.endTagHandler.default = self.endTagOther - - # helper methods - def clearStackToTableBodyContext(self): - while self.tree.openElements[-1].name not in ("tbody", "tfoot", - "thead", "html"): - # self.parser.parseError("unexpected-implied-end-tag-in-table", - # {"name": self.tree.openElements[-1].name}) - self.tree.openElements.pop() - if self.tree.openElements[-1].name == "html": - assert self.parser.innerHTML - - # the rest - def processEOF(self): - self.parser.phases["inTable"].processEOF() - - def processSpaceCharacters(self, token): - return self.parser.phases["inTable"].processSpaceCharacters(token) - - def processCharacters(self, token): - return self.parser.phases["inTable"].processCharacters(token) - - def startTagTr(self, token): - self.clearStackToTableBodyContext() - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inRow"] - - def startTagTableCell(self, token): - self.parser.parseError("unexpected-cell-in-table-body", - {"name": token["name"]}) - self.startTagTr(impliedTagToken("tr", "StartTag")) - return token - - def startTagTableOther(self, token): - # XXX AT Any ideas on how to share this with endTagTable? - if (self.tree.elementInScope("tbody", variant="table") or - self.tree.elementInScope("thead", variant="table") or - self.tree.elementInScope("tfoot", variant="table")): - self.clearStackToTableBodyContext() - self.endTagTableRowGroup( - impliedTagToken(self.tree.openElements[-1].name)) - return token - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def startTagOther(self, token): - return self.parser.phases["inTable"].processStartTag(token) - - def endTagTableRowGroup(self, token): - if self.tree.elementInScope(token["name"], variant="table"): - self.clearStackToTableBodyContext() - self.tree.openElements.pop() - self.parser.phase = self.parser.phases["inTable"] - else: - self.parser.parseError("unexpected-end-tag-in-table-body", - {"name": token["name"]}) - - def endTagTable(self, token): - if (self.tree.elementInScope("tbody", variant="table") or - self.tree.elementInScope("thead", variant="table") or - self.tree.elementInScope("tfoot", variant="table")): - self.clearStackToTableBodyContext() - self.endTagTableRowGroup( - impliedTagToken(self.tree.openElements[-1].name)) - return token - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def endTagIgnore(self, token): - self.parser.parseError("unexpected-end-tag-in-table-body", - {"name": token["name"]}) - - def endTagOther(self, token): - return self.parser.phases["inTable"].processEndTag(token) - - class InRowPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-row - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - (("td", "th"), self.startTagTableCell), - (("caption", "col", "colgroup", "tbody", "tfoot", "thead", - "tr"), self.startTagTableOther) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("tr", self.endTagTr), - ("table", self.endTagTable), - (("tbody", "tfoot", "thead"), self.endTagTableRowGroup), - (("body", "caption", "col", "colgroup", "html", "td", "th"), - self.endTagIgnore) - ]) - self.endTagHandler.default = self.endTagOther - - # helper methods (XXX unify this with other table helper methods) - def clearStackToTableRowContext(self): - while self.tree.openElements[-1].name not in ("tr", "html"): - self.parser.parseError("unexpected-implied-end-tag-in-table-row", - {"name": self.tree.openElements[-1].name}) - self.tree.openElements.pop() - - def ignoreEndTagTr(self): - return not self.tree.elementInScope("tr", variant="table") - - # the rest - def processEOF(self): - self.parser.phases["inTable"].processEOF() - - def processSpaceCharacters(self, token): - return self.parser.phases["inTable"].processSpaceCharacters(token) - - def processCharacters(self, token): - return self.parser.phases["inTable"].processCharacters(token) - - def startTagTableCell(self, token): - self.clearStackToTableRowContext() - self.tree.insertElement(token) - self.parser.phase = self.parser.phases["inCell"] - self.tree.activeFormattingElements.append(Marker) - - def startTagTableOther(self, token): - ignoreEndTag = self.ignoreEndTagTr() - self.endTagTr(impliedTagToken("tr")) - # XXX how are we sure it's always ignored in the innerHTML case? - if not ignoreEndTag: - return token - - def startTagOther(self, token): - return self.parser.phases["inTable"].processStartTag(token) - - def endTagTr(self, token): - if not self.ignoreEndTagTr(): - self.clearStackToTableRowContext() - self.tree.openElements.pop() - self.parser.phase = self.parser.phases["inTableBody"] - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def endTagTable(self, token): - ignoreEndTag = self.ignoreEndTagTr() - self.endTagTr(impliedTagToken("tr")) - # Reprocess the current tag if the tr end tag was not ignored - # XXX how are we sure it's always ignored in the innerHTML case? - if not ignoreEndTag: - return token - - def endTagTableRowGroup(self, token): - if self.tree.elementInScope(token["name"], variant="table"): - self.endTagTr(impliedTagToken("tr")) - return token - else: - self.parser.parseError() - - def endTagIgnore(self, token): - self.parser.parseError("unexpected-end-tag-in-table-row", - {"name": token["name"]}) - - def endTagOther(self, token): - return self.parser.phases["inTable"].processEndTag(token) - - class InCellPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-cell - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - (("caption", "col", "colgroup", "tbody", "td", "tfoot", "th", - "thead", "tr"), self.startTagTableOther) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - (("td", "th"), self.endTagTableCell), - (("body", "caption", "col", "colgroup", "html"), self.endTagIgnore), - (("table", "tbody", "tfoot", "thead", "tr"), self.endTagImply) - ]) - self.endTagHandler.default = self.endTagOther - - # helper - def closeCell(self): - if self.tree.elementInScope("td", variant="table"): - self.endTagTableCell(impliedTagToken("td")) - elif self.tree.elementInScope("th", variant="table"): - self.endTagTableCell(impliedTagToken("th")) - - # the rest - def processEOF(self): - self.parser.phases["inBody"].processEOF() - - def processCharacters(self, token): - return self.parser.phases["inBody"].processCharacters(token) - - def startTagTableOther(self, token): - if (self.tree.elementInScope("td", variant="table") or - self.tree.elementInScope("th", variant="table")): - self.closeCell() - return token - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def startTagOther(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def endTagTableCell(self, token): - if self.tree.elementInScope(token["name"], variant="table"): - self.tree.generateImpliedEndTags(token["name"]) - if self.tree.openElements[-1].name != token["name"]: - self.parser.parseError("unexpected-cell-end-tag", - {"name": token["name"]}) - while True: - node = self.tree.openElements.pop() - if node.name == token["name"]: - break - else: - self.tree.openElements.pop() - self.tree.clearActiveFormattingElements() - self.parser.phase = self.parser.phases["inRow"] - else: - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - def endTagIgnore(self, token): - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - def endTagImply(self, token): - if self.tree.elementInScope(token["name"], variant="table"): - self.closeCell() - return token - else: - # sometimes innerHTML case - self.parser.parseError() - - def endTagOther(self, token): - return self.parser.phases["inBody"].processEndTag(token) - - class InSelectPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("option", self.startTagOption), - ("optgroup", self.startTagOptgroup), - ("select", self.startTagSelect), - (("input", "keygen", "textarea"), self.startTagInput), - ("script", self.startTagScript) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("option", self.endTagOption), - ("optgroup", self.endTagOptgroup), - ("select", self.endTagSelect) - ]) - self.endTagHandler.default = self.endTagOther - - # http://www.whatwg.org/specs/web-apps/current-work/#in-select - def processEOF(self): - if self.tree.openElements[-1].name != "html": - self.parser.parseError("eof-in-select") - else: - assert self.parser.innerHTML - - def processCharacters(self, token): - if token["data"] == "\u0000": - return - self.tree.insertText(token["data"]) - - def startTagOption(self, token): - # We need to imply </option> if <option> is the current node. - if self.tree.openElements[-1].name == "option": - self.tree.openElements.pop() - self.tree.insertElement(token) - - def startTagOptgroup(self, token): - if self.tree.openElements[-1].name == "option": - self.tree.openElements.pop() - if self.tree.openElements[-1].name == "optgroup": - self.tree.openElements.pop() - self.tree.insertElement(token) - - def startTagSelect(self, token): - self.parser.parseError("unexpected-select-in-select") - self.endTagSelect(impliedTagToken("select")) - - def startTagInput(self, token): - self.parser.parseError("unexpected-input-in-select") - if self.tree.elementInScope("select", variant="select"): - self.endTagSelect(impliedTagToken("select")) - return token - else: - assert self.parser.innerHTML - - def startTagScript(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("unexpected-start-tag-in-select", - {"name": token["name"]}) - - def endTagOption(self, token): - if self.tree.openElements[-1].name == "option": - self.tree.openElements.pop() - else: - self.parser.parseError("unexpected-end-tag-in-select", - {"name": "option"}) - - def endTagOptgroup(self, token): - # </optgroup> implicitly closes <option> - if (self.tree.openElements[-1].name == "option" and - self.tree.openElements[-2].name == "optgroup"): - self.tree.openElements.pop() - # It also closes </optgroup> - if self.tree.openElements[-1].name == "optgroup": - self.tree.openElements.pop() - # But nothing else - else: - self.parser.parseError("unexpected-end-tag-in-select", - {"name": "optgroup"}) - - def endTagSelect(self, token): - if self.tree.elementInScope("select", variant="select"): - node = self.tree.openElements.pop() - while node.name != "select": - node = self.tree.openElements.pop() - self.parser.resetInsertionMode() - else: - # innerHTML case - assert self.parser.innerHTML - self.parser.parseError() - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag-in-select", - {"name": token["name"]}) - - class InSelectInTablePhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - (("caption", "table", "tbody", "tfoot", "thead", "tr", "td", "th"), - self.startTagTable) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - (("caption", "table", "tbody", "tfoot", "thead", "tr", "td", "th"), - self.endTagTable) - ]) - self.endTagHandler.default = self.endTagOther - - def processEOF(self): - self.parser.phases["inSelect"].processEOF() - - def processCharacters(self, token): - return self.parser.phases["inSelect"].processCharacters(token) - - def startTagTable(self, token): - self.parser.parseError("unexpected-table-element-start-tag-in-select-in-table", {"name": token["name"]}) - self.endTagOther(impliedTagToken("select")) - return token - - def startTagOther(self, token): - return self.parser.phases["inSelect"].processStartTag(token) - - def endTagTable(self, token): - self.parser.parseError("unexpected-table-element-end-tag-in-select-in-table", {"name": token["name"]}) - if self.tree.elementInScope(token["name"], variant="table"): - self.endTagOther(impliedTagToken("select")) - return token - - def endTagOther(self, token): - return self.parser.phases["inSelect"].processEndTag(token) - - class InForeignContentPhase(Phase): - breakoutElements = frozenset(["b", "big", "blockquote", "body", "br", - "center", "code", "dd", "div", "dl", "dt", - "em", "embed", "h1", "h2", "h3", - "h4", "h5", "h6", "head", "hr", "i", "img", - "li", "listing", "menu", "meta", "nobr", - "ol", "p", "pre", "ruby", "s", "small", - "span", "strong", "strike", "sub", "sup", - "table", "tt", "u", "ul", "var"]) - - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - def adjustSVGTagNames(self, token): - replacements = {"altglyph": "altGlyph", - "altglyphdef": "altGlyphDef", - "altglyphitem": "altGlyphItem", - "animatecolor": "animateColor", - "animatemotion": "animateMotion", - "animatetransform": "animateTransform", - "clippath": "clipPath", - "feblend": "feBlend", - "fecolormatrix": "feColorMatrix", - "fecomponenttransfer": "feComponentTransfer", - "fecomposite": "feComposite", - "feconvolvematrix": "feConvolveMatrix", - "fediffuselighting": "feDiffuseLighting", - "fedisplacementmap": "feDisplacementMap", - "fedistantlight": "feDistantLight", - "feflood": "feFlood", - "fefunca": "feFuncA", - "fefuncb": "feFuncB", - "fefuncg": "feFuncG", - "fefuncr": "feFuncR", - "fegaussianblur": "feGaussianBlur", - "feimage": "feImage", - "femerge": "feMerge", - "femergenode": "feMergeNode", - "femorphology": "feMorphology", - "feoffset": "feOffset", - "fepointlight": "fePointLight", - "fespecularlighting": "feSpecularLighting", - "fespotlight": "feSpotLight", - "fetile": "feTile", - "feturbulence": "feTurbulence", - "foreignobject": "foreignObject", - "glyphref": "glyphRef", - "lineargradient": "linearGradient", - "radialgradient": "radialGradient", - "textpath": "textPath"} - - if token["name"] in replacements: - token["name"] = replacements[token["name"]] - - def processCharacters(self, token): - if token["data"] == "\u0000": - token["data"] = "\uFFFD" - elif (self.parser.framesetOK and - any(char not in spaceCharacters for char in token["data"])): - self.parser.framesetOK = False - Phase.processCharacters(self, token) - - def processStartTag(self, token): - currentNode = self.tree.openElements[-1] - if (token["name"] in self.breakoutElements or - (token["name"] == "font" and - set(token["data"].keys()) & set(["color", "face", "size"]))): - self.parser.parseError("unexpected-html-element-in-foreign-content", - {"name": token["name"]}) - while (self.tree.openElements[-1].namespace != - self.tree.defaultNamespace and - not self.parser.isHTMLIntegrationPoint(self.tree.openElements[-1]) and - not self.parser.isMathMLTextIntegrationPoint(self.tree.openElements[-1])): - self.tree.openElements.pop() - return token - - else: - if currentNode.namespace == namespaces["mathml"]: - self.parser.adjustMathMLAttributes(token) - elif currentNode.namespace == namespaces["svg"]: - self.adjustSVGTagNames(token) - self.parser.adjustSVGAttributes(token) - self.parser.adjustForeignAttributes(token) - token["namespace"] = currentNode.namespace - self.tree.insertElement(token) - if token["selfClosing"]: - self.tree.openElements.pop() - token["selfClosingAcknowledged"] = True - - def processEndTag(self, token): - nodeIndex = len(self.tree.openElements) - 1 - node = self.tree.openElements[-1] - if node.name.translate(asciiUpper2Lower) != token["name"]: - self.parser.parseError("unexpected-end-tag", {"name": token["name"]}) - - while True: - if node.name.translate(asciiUpper2Lower) == token["name"]: - # XXX this isn't in the spec but it seems necessary - if self.parser.phase == self.parser.phases["inTableText"]: - self.parser.phase.flushCharacters() - self.parser.phase = self.parser.phase.originalPhase - while self.tree.openElements.pop() != node: - assert self.tree.openElements - new_token = None - break - nodeIndex -= 1 - - node = self.tree.openElements[nodeIndex] - if node.namespace != self.tree.defaultNamespace: - continue - else: - new_token = self.parser.phase.processEndTag(token) - break - return new_token - - class AfterBodyPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([("html", self.endTagHtml)]) - self.endTagHandler.default = self.endTagOther - - def processEOF(self): - # Stop parsing - pass - - def processComment(self, token): - # This is needed because data is to be appended to the <html> element - # here and not to whatever is currently open. - self.tree.insertComment(token, self.tree.openElements[0]) - - def processCharacters(self, token): - self.parser.parseError("unexpected-char-after-body") - self.parser.phase = self.parser.phases["inBody"] - return token - - def startTagHtml(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("unexpected-start-tag-after-body", - {"name": token["name"]}) - self.parser.phase = self.parser.phases["inBody"] - return token - - def endTagHtml(self, name): - if self.parser.innerHTML: - self.parser.parseError("unexpected-end-tag-after-body-innerhtml") - else: - self.parser.phase = self.parser.phases["afterAfterBody"] - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag-after-body", - {"name": token["name"]}) - self.parser.phase = self.parser.phases["inBody"] - return token - - class InFramesetPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#in-frameset - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("frameset", self.startTagFrameset), - ("frame", self.startTagFrame), - ("noframes", self.startTagNoframes) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("frameset", self.endTagFrameset) - ]) - self.endTagHandler.default = self.endTagOther - - def processEOF(self): - if self.tree.openElements[-1].name != "html": - self.parser.parseError("eof-in-frameset") - else: - assert self.parser.innerHTML - - def processCharacters(self, token): - self.parser.parseError("unexpected-char-in-frameset") - - def startTagFrameset(self, token): - self.tree.insertElement(token) - - def startTagFrame(self, token): - self.tree.insertElement(token) - self.tree.openElements.pop() - - def startTagNoframes(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("unexpected-start-tag-in-frameset", - {"name": token["name"]}) - - def endTagFrameset(self, token): - if self.tree.openElements[-1].name == "html": - # innerHTML case - self.parser.parseError("unexpected-frameset-in-frameset-innerhtml") - else: - self.tree.openElements.pop() - if (not self.parser.innerHTML and - self.tree.openElements[-1].name != "frameset"): - # If we're not in innerHTML mode and the current node is not a - # "frameset" element (anymore) then switch. - self.parser.phase = self.parser.phases["afterFrameset"] - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag-in-frameset", - {"name": token["name"]}) - - class AfterFramesetPhase(Phase): - # http://www.whatwg.org/specs/web-apps/current-work/#after3 - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("noframes", self.startTagNoframes) - ]) - self.startTagHandler.default = self.startTagOther - - self.endTagHandler = _utils.MethodDispatcher([ - ("html", self.endTagHtml) - ]) - self.endTagHandler.default = self.endTagOther - - def processEOF(self): - # Stop parsing - pass - - def processCharacters(self, token): - self.parser.parseError("unexpected-char-after-frameset") - - def startTagNoframes(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("unexpected-start-tag-after-frameset", - {"name": token["name"]}) - - def endTagHtml(self, token): - self.parser.phase = self.parser.phases["afterAfterFrameset"] - - def endTagOther(self, token): - self.parser.parseError("unexpected-end-tag-after-frameset", - {"name": token["name"]}) - - class AfterAfterBodyPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml) - ]) - self.startTagHandler.default = self.startTagOther - - def processEOF(self): - pass - - def processComment(self, token): - self.tree.insertComment(token, self.tree.document) - - def processSpaceCharacters(self, token): - return self.parser.phases["inBody"].processSpaceCharacters(token) - - def processCharacters(self, token): - self.parser.parseError("expected-eof-but-got-char") - self.parser.phase = self.parser.phases["inBody"] - return token - - def startTagHtml(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("expected-eof-but-got-start-tag", - {"name": token["name"]}) - self.parser.phase = self.parser.phases["inBody"] - return token - - def processEndTag(self, token): - self.parser.parseError("expected-eof-but-got-end-tag", - {"name": token["name"]}) - self.parser.phase = self.parser.phases["inBody"] - return token - - class AfterAfterFramesetPhase(Phase): - def __init__(self, parser, tree): - Phase.__init__(self, parser, tree) - - self.startTagHandler = _utils.MethodDispatcher([ - ("html", self.startTagHtml), - ("noframes", self.startTagNoFrames) - ]) - self.startTagHandler.default = self.startTagOther - - def processEOF(self): - pass - - def processComment(self, token): - self.tree.insertComment(token, self.tree.document) - - def processSpaceCharacters(self, token): - return self.parser.phases["inBody"].processSpaceCharacters(token) - - def processCharacters(self, token): - self.parser.parseError("expected-eof-but-got-char") - - def startTagHtml(self, token): - return self.parser.phases["inBody"].processStartTag(token) - - def startTagNoFrames(self, token): - return self.parser.phases["inHead"].processStartTag(token) - - def startTagOther(self, token): - self.parser.parseError("expected-eof-but-got-start-tag", - {"name": token["name"]}) - - def processEndTag(self, token): - self.parser.parseError("expected-eof-but-got-end-tag", - {"name": token["name"]}) - # pylint:enable=unused-argument - - return { - "initial": InitialPhase, - "beforeHtml": BeforeHtmlPhase, - "beforeHead": BeforeHeadPhase, - "inHead": InHeadPhase, - "inHeadNoscript": InHeadNoscriptPhase, - "afterHead": AfterHeadPhase, - "inBody": InBodyPhase, - "text": TextPhase, - "inTable": InTablePhase, - "inTableText": InTableTextPhase, - "inCaption": InCaptionPhase, - "inColumnGroup": InColumnGroupPhase, - "inTableBody": InTableBodyPhase, - "inRow": InRowPhase, - "inCell": InCellPhase, - "inSelect": InSelectPhase, - "inSelectInTable": InSelectInTablePhase, - "inForeignContent": InForeignContentPhase, - "afterBody": AfterBodyPhase, - "inFrameset": InFramesetPhase, - "afterFrameset": AfterFramesetPhase, - "afterAfterBody": AfterAfterBodyPhase, - "afterAfterFrameset": AfterAfterFramesetPhase, - # XXX after after frameset - } - - -def adjust_attributes(token, replacements): - needs_adjustment = viewkeys(token['data']) & viewkeys(replacements) - if needs_adjustment: - token['data'] = OrderedDict((replacements.get(k, k), v) - for k, v in token['data'].items()) - - -def impliedTagToken(name, type="EndTag", attributes=None, - selfClosing=False): - if attributes is None: - attributes = {} - return {"type": tokenTypes[type], "name": name, "data": attributes, - "selfClosing": selfClosing} - - -class ParseError(Exception): - """Error in parsed document""" - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/serializer.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/serializer.py deleted file mode 100644 index 641323e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/serializer.py +++ /dev/null @@ -1,409 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import text_type - -import re - -from codecs import register_error, xmlcharrefreplace_errors - -from .constants import voidElements, booleanAttributes, spaceCharacters -from .constants import rcdataElements, entities, xmlEntities -from . import treewalkers, _utils -from xml.sax.saxutils import escape - -_quoteAttributeSpecChars = "".join(spaceCharacters) + "\"'=<>`" -_quoteAttributeSpec = re.compile("[" + _quoteAttributeSpecChars + "]") -_quoteAttributeLegacy = re.compile("[" + _quoteAttributeSpecChars + - "\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n" - "\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15" - "\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" - "\x20\x2f\x60\xa0\u1680\u180e\u180f\u2000" - "\u2001\u2002\u2003\u2004\u2005\u2006\u2007" - "\u2008\u2009\u200a\u2028\u2029\u202f\u205f" - "\u3000]") - - -_encode_entity_map = {} -_is_ucs4 = len("\U0010FFFF") == 1 -for k, v in list(entities.items()): - # skip multi-character entities - if ((_is_ucs4 and len(v) > 1) or - (not _is_ucs4 and len(v) > 2)): - continue - if v != "&": - if len(v) == 2: - v = _utils.surrogatePairToCodepoint(v) - else: - v = ord(v) - if v not in _encode_entity_map or k.islower(): - # prefer < over < and similarly for &, >, etc. - _encode_entity_map[v] = k - - -def htmlentityreplace_errors(exc): - if isinstance(exc, (UnicodeEncodeError, UnicodeTranslateError)): - res = [] - codepoints = [] - skip = False - for i, c in enumerate(exc.object[exc.start:exc.end]): - if skip: - skip = False - continue - index = i + exc.start - if _utils.isSurrogatePair(exc.object[index:min([exc.end, index + 2])]): - codepoint = _utils.surrogatePairToCodepoint(exc.object[index:index + 2]) - skip = True - else: - codepoint = ord(c) - codepoints.append(codepoint) - for cp in codepoints: - e = _encode_entity_map.get(cp) - if e: - res.append("&") - res.append(e) - if not e.endswith(";"): - res.append(";") - else: - res.append("&#x%s;" % (hex(cp)[2:])) - return ("".join(res), exc.end) - else: - return xmlcharrefreplace_errors(exc) - - -register_error("htmlentityreplace", htmlentityreplace_errors) - - -def serialize(input, tree="etree", encoding=None, **serializer_opts): - """Serializes the input token stream using the specified treewalker - - :arg input: the token stream to serialize - - :arg tree: the treewalker to use - - :arg encoding: the encoding to use - - :arg serializer_opts: any options to pass to the - :py:class:`html5lib.serializer.HTMLSerializer` that gets created - - :returns: the tree serialized as a string - - Example: - - >>> from html5lib.html5parser import parse - >>> from html5lib.serializer import serialize - >>> token_stream = parse('<html><body><p>Hi!</p></body></html>') - >>> serialize(token_stream, omit_optional_tags=False) - '<html><head></head><body><p>Hi!</p></body></html>' - - """ - # XXX: Should we cache this? - walker = treewalkers.getTreeWalker(tree) - s = HTMLSerializer(**serializer_opts) - return s.render(walker(input), encoding) - - -class HTMLSerializer(object): - - # attribute quoting options - quote_attr_values = "legacy" # be secure by default - quote_char = '"' - use_best_quote_char = True - - # tag syntax options - omit_optional_tags = True - minimize_boolean_attributes = True - use_trailing_solidus = False - space_before_trailing_solidus = True - - # escaping options - escape_lt_in_attrs = False - escape_rcdata = False - resolve_entities = True - - # miscellaneous options - alphabetical_attributes = False - inject_meta_charset = True - strip_whitespace = False - sanitize = False - - options = ("quote_attr_values", "quote_char", "use_best_quote_char", - "omit_optional_tags", "minimize_boolean_attributes", - "use_trailing_solidus", "space_before_trailing_solidus", - "escape_lt_in_attrs", "escape_rcdata", "resolve_entities", - "alphabetical_attributes", "inject_meta_charset", - "strip_whitespace", "sanitize") - - def __init__(self, **kwargs): - """Initialize HTMLSerializer - - :arg inject_meta_charset: Whether or not to inject the meta charset. - - Defaults to ``True``. - - :arg quote_attr_values: Whether to quote attribute values that don't - require quoting per legacy browser behavior (``"legacy"``), when - required by the standard (``"spec"``), or always (``"always"``). - - Defaults to ``"legacy"``. - - :arg quote_char: Use given quote character for attribute quoting. - - Defaults to ``"`` which will use double quotes unless attribute - value contains a double quote, in which case single quotes are - used. - - :arg escape_lt_in_attrs: Whether or not to escape ``<`` in attribute - values. - - Defaults to ``False``. - - :arg escape_rcdata: Whether to escape characters that need to be - escaped within normal elements within rcdata elements such as - style. - - Defaults to ``False``. - - :arg resolve_entities: Whether to resolve named character entities that - appear in the source tree. The XML predefined entities < > - & " ' are unaffected by this setting. - - Defaults to ``True``. - - :arg strip_whitespace: Whether to remove semantically meaningless - whitespace. (This compresses all whitespace to a single space - except within ``pre``.) - - Defaults to ``False``. - - :arg minimize_boolean_attributes: Shortens boolean attributes to give - just the attribute value, for example:: - - <input disabled="disabled"> - - becomes:: - - <input disabled> - - Defaults to ``True``. - - :arg use_trailing_solidus: Includes a close-tag slash at the end of the - start tag of void elements (empty elements whose end tag is - forbidden). E.g. ``<hr/>``. - - Defaults to ``False``. - - :arg space_before_trailing_solidus: Places a space immediately before - the closing slash in a tag using a trailing solidus. E.g. - ``<hr />``. Requires ``use_trailing_solidus=True``. - - Defaults to ``True``. - - :arg sanitize: Strip all unsafe or unknown constructs from output. - See :py:class:`html5lib.filters.sanitizer.Filter`. - - Defaults to ``False``. - - :arg omit_optional_tags: Omit start/end tags that are optional. - - Defaults to ``True``. - - :arg alphabetical_attributes: Reorder attributes to be in alphabetical order. - - Defaults to ``False``. - - """ - unexpected_args = frozenset(kwargs) - frozenset(self.options) - if len(unexpected_args) > 0: - raise TypeError("__init__() got an unexpected keyword argument '%s'" % next(iter(unexpected_args))) - if 'quote_char' in kwargs: - self.use_best_quote_char = False - for attr in self.options: - setattr(self, attr, kwargs.get(attr, getattr(self, attr))) - self.errors = [] - self.strict = False - - def encode(self, string): - assert(isinstance(string, text_type)) - if self.encoding: - return string.encode(self.encoding, "htmlentityreplace") - else: - return string - - def encodeStrict(self, string): - assert(isinstance(string, text_type)) - if self.encoding: - return string.encode(self.encoding, "strict") - else: - return string - - def serialize(self, treewalker, encoding=None): - # pylint:disable=too-many-nested-blocks - self.encoding = encoding - in_cdata = False - self.errors = [] - - if encoding and self.inject_meta_charset: - from .filters.inject_meta_charset import Filter - treewalker = Filter(treewalker, encoding) - # Alphabetical attributes is here under the assumption that none of - # the later filters add or change order of attributes; it needs to be - # before the sanitizer so escaped elements come out correctly - if self.alphabetical_attributes: - from .filters.alphabeticalattributes import Filter - treewalker = Filter(treewalker) - # WhitespaceFilter should be used before OptionalTagFilter - # for maximum efficiently of this latter filter - if self.strip_whitespace: - from .filters.whitespace import Filter - treewalker = Filter(treewalker) - if self.sanitize: - from .filters.sanitizer import Filter - treewalker = Filter(treewalker) - if self.omit_optional_tags: - from .filters.optionaltags import Filter - treewalker = Filter(treewalker) - - for token in treewalker: - type = token["type"] - if type == "Doctype": - doctype = "<!DOCTYPE %s" % token["name"] - - if token["publicId"]: - doctype += ' PUBLIC "%s"' % token["publicId"] - elif token["systemId"]: - doctype += " SYSTEM" - if token["systemId"]: - if token["systemId"].find('"') >= 0: - if token["systemId"].find("'") >= 0: - self.serializeError("System identifer contains both single and double quote characters") - quote_char = "'" - else: - quote_char = '"' - doctype += " %s%s%s" % (quote_char, token["systemId"], quote_char) - - doctype += ">" - yield self.encodeStrict(doctype) - - elif type in ("Characters", "SpaceCharacters"): - if type == "SpaceCharacters" or in_cdata: - if in_cdata and token["data"].find("</") >= 0: - self.serializeError("Unexpected </ in CDATA") - yield self.encode(token["data"]) - else: - yield self.encode(escape(token["data"])) - - elif type in ("StartTag", "EmptyTag"): - name = token["name"] - yield self.encodeStrict("<%s" % name) - if name in rcdataElements and not self.escape_rcdata: - in_cdata = True - elif in_cdata: - self.serializeError("Unexpected child element of a CDATA element") - for (_, attr_name), attr_value in token["data"].items(): - # TODO: Add namespace support here - k = attr_name - v = attr_value - yield self.encodeStrict(' ') - - yield self.encodeStrict(k) - if not self.minimize_boolean_attributes or \ - (k not in booleanAttributes.get(name, tuple()) and - k not in booleanAttributes.get("", tuple())): - yield self.encodeStrict("=") - if self.quote_attr_values == "always" or len(v) == 0: - quote_attr = True - elif self.quote_attr_values == "spec": - quote_attr = _quoteAttributeSpec.search(v) is not None - elif self.quote_attr_values == "legacy": - quote_attr = _quoteAttributeLegacy.search(v) is not None - else: - raise ValueError("quote_attr_values must be one of: " - "'always', 'spec', or 'legacy'") - v = v.replace("&", "&") - if self.escape_lt_in_attrs: - v = v.replace("<", "<") - if quote_attr: - quote_char = self.quote_char - if self.use_best_quote_char: - if "'" in v and '"' not in v: - quote_char = '"' - elif '"' in v and "'" not in v: - quote_char = "'" - if quote_char == "'": - v = v.replace("'", "'") - else: - v = v.replace('"', """) - yield self.encodeStrict(quote_char) - yield self.encode(v) - yield self.encodeStrict(quote_char) - else: - yield self.encode(v) - if name in voidElements and self.use_trailing_solidus: - if self.space_before_trailing_solidus: - yield self.encodeStrict(" /") - else: - yield self.encodeStrict("/") - yield self.encode(">") - - elif type == "EndTag": - name = token["name"] - if name in rcdataElements: - in_cdata = False - elif in_cdata: - self.serializeError("Unexpected child element of a CDATA element") - yield self.encodeStrict("</%s>" % name) - - elif type == "Comment": - data = token["data"] - if data.find("--") >= 0: - self.serializeError("Comment contains --") - yield self.encodeStrict("<!--%s-->" % token["data"]) - - elif type == "Entity": - name = token["name"] - key = name + ";" - if key not in entities: - self.serializeError("Entity %s not recognized" % name) - if self.resolve_entities and key not in xmlEntities: - data = entities[key] - else: - data = "&%s;" % name - yield self.encodeStrict(data) - - else: - self.serializeError(token["data"]) - - def render(self, treewalker, encoding=None): - """Serializes the stream from the treewalker into a string - - :arg treewalker: the treewalker to serialize - - :arg encoding: the string encoding to use - - :returns: the serialized tree - - Example: - - >>> from html5lib import parse, getTreeWalker - >>> from html5lib.serializer import HTMLSerializer - >>> token_stream = parse('<html><body>Hi!</body></html>') - >>> walker = getTreeWalker('etree') - >>> serializer = HTMLSerializer(omit_optional_tags=False) - >>> serializer.render(walker(token_stream)) - '<html><head></head><body>Hi!</body></html>' - - """ - if encoding: - return b"".join(list(self.serialize(treewalker, encoding))) - else: - return "".join(list(self.serialize(treewalker))) - - def serializeError(self, data="XXX ERROR MESSAGE NEEDED"): - # XXX The idea is to make data mandatory. - self.errors.append(data) - if self.strict: - raise SerializeError - - -class SerializeError(Exception): - """Error in serialized tree""" - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/__init__.py deleted file mode 100644 index 8767fb0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/__init__.py +++ /dev/null @@ -1,30 +0,0 @@ -"""Tree adapters let you convert from one tree structure to another - -Example: - -.. code-block:: python - - from pip._vendor import html5lib - from pip._vendor.html5lib.treeadapters import genshi - - doc = '<html><body>Hi!</body></html>' - treebuilder = html5lib.getTreeBuilder('etree') - parser = html5lib.HTMLParser(tree=treebuilder) - tree = parser.parse(doc) - TreeWalker = html5lib.getTreeWalker('etree') - - genshi_tree = genshi.to_genshi(TreeWalker(tree)) - -""" -from __future__ import absolute_import, division, unicode_literals - -from . import sax - -__all__ = ["sax"] - -try: - from . import genshi # noqa -except ImportError: - pass -else: - __all__.append("genshi") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/genshi.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/genshi.py deleted file mode 100644 index 73c70c6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/genshi.py +++ /dev/null @@ -1,54 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from genshi.core import QName, Attrs -from genshi.core import START, END, TEXT, COMMENT, DOCTYPE - - -def to_genshi(walker): - """Convert a tree to a genshi tree - - :arg walker: the treewalker to use to walk the tree to convert it - - :returns: generator of genshi nodes - - """ - text = [] - for token in walker: - type = token["type"] - if type in ("Characters", "SpaceCharacters"): - text.append(token["data"]) - elif text: - yield TEXT, "".join(text), (None, -1, -1) - text = [] - - if type in ("StartTag", "EmptyTag"): - if token["namespace"]: - name = "{%s}%s" % (token["namespace"], token["name"]) - else: - name = token["name"] - attrs = Attrs([(QName("{%s}%s" % attr if attr[0] is not None else attr[1]), value) - for attr, value in token["data"].items()]) - yield (START, (QName(name), attrs), (None, -1, -1)) - if type == "EmptyTag": - type = "EndTag" - - if type == "EndTag": - if token["namespace"]: - name = "{%s}%s" % (token["namespace"], token["name"]) - else: - name = token["name"] - - yield END, QName(name), (None, -1, -1) - - elif type == "Comment": - yield COMMENT, token["data"], (None, -1, -1) - - elif type == "Doctype": - yield DOCTYPE, (token["name"], token["publicId"], - token["systemId"]), (None, -1, -1) - - else: - pass # FIXME: What to do? - - if text: - yield TEXT, "".join(text), (None, -1, -1) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/sax.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/sax.py deleted file mode 100644 index 1f06d13..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treeadapters/sax.py +++ /dev/null @@ -1,50 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from xml.sax.xmlreader import AttributesNSImpl - -from ..constants import adjustForeignAttributes, unadjustForeignAttributes - -prefix_mapping = {} -for prefix, localName, namespace in adjustForeignAttributes.values(): - if prefix is not None: - prefix_mapping[prefix] = namespace - - -def to_sax(walker, handler): - """Call SAX-like content handler based on treewalker walker - - :arg walker: the treewalker to use to walk the tree to convert it - - :arg handler: SAX handler to use - - """ - handler.startDocument() - for prefix, namespace in prefix_mapping.items(): - handler.startPrefixMapping(prefix, namespace) - - for token in walker: - type = token["type"] - if type == "Doctype": - continue - elif type in ("StartTag", "EmptyTag"): - attrs = AttributesNSImpl(token["data"], - unadjustForeignAttributes) - handler.startElementNS((token["namespace"], token["name"]), - token["name"], - attrs) - if type == "EmptyTag": - handler.endElementNS((token["namespace"], token["name"]), - token["name"]) - elif type == "EndTag": - handler.endElementNS((token["namespace"], token["name"]), - token["name"]) - elif type in ("Characters", "SpaceCharacters"): - handler.characters(token["data"]) - elif type == "Comment": - pass - else: - assert False, "Unknown token type" - - for prefix, namespace in prefix_mapping.items(): - handler.endPrefixMapping(prefix) - handler.endDocument() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/__init__.py deleted file mode 100644 index 2ce5c87..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/__init__.py +++ /dev/null @@ -1,88 +0,0 @@ -"""A collection of modules for building different kinds of trees from HTML -documents. - -To create a treebuilder for a new type of tree, you need to do -implement several things: - -1. A set of classes for various types of elements: Document, Doctype, Comment, - Element. These must implement the interface of ``base.treebuilders.Node`` - (although comment nodes have a different signature for their constructor, - see ``treebuilders.etree.Comment``) Textual content may also be implemented - as another node type, or not, as your tree implementation requires. - -2. A treebuilder object (called ``TreeBuilder`` by convention) that inherits - from ``treebuilders.base.TreeBuilder``. This has 4 required attributes: - - * ``documentClass`` - the class to use for the bottommost node of a document - * ``elementClass`` - the class to use for HTML Elements - * ``commentClass`` - the class to use for comments - * ``doctypeClass`` - the class to use for doctypes - - It also has one required method: - - * ``getDocument`` - Returns the root node of the complete document tree - -3. If you wish to run the unit tests, you must also create a ``testSerializer`` - method on your treebuilder which accepts a node and returns a string - containing Node and its children serialized according to the format used in - the unittests - -""" - -from __future__ import absolute_import, division, unicode_literals - -from .._utils import default_etree - -treeBuilderCache = {} - - -def getTreeBuilder(treeType, implementation=None, **kwargs): - """Get a TreeBuilder class for various types of trees with built-in support - - :arg treeType: the name of the tree type required (case-insensitive). Supported - values are: - - * "dom" - A generic builder for DOM implementations, defaulting to a - xml.dom.minidom based implementation. - * "etree" - A generic builder for tree implementations exposing an - ElementTree-like interface, defaulting to xml.etree.cElementTree if - available and xml.etree.ElementTree if not. - * "lxml" - A etree-based builder for lxml.etree, handling limitations - of lxml's implementation. - - :arg implementation: (Currently applies to the "etree" and "dom" tree - types). A module implementing the tree type e.g. xml.etree.ElementTree - or xml.etree.cElementTree. - - :arg kwargs: Any additional options to pass to the TreeBuilder when - creating it. - - Example: - - >>> from html5lib.treebuilders import getTreeBuilder - >>> builder = getTreeBuilder('etree') - - """ - - treeType = treeType.lower() - if treeType not in treeBuilderCache: - if treeType == "dom": - from . import dom - # Come up with a sane default (pref. from the stdlib) - if implementation is None: - from xml.dom import minidom - implementation = minidom - # NEVER cache here, caching is done in the dom submodule - return dom.getDomModule(implementation, **kwargs).TreeBuilder - elif treeType == "lxml": - from . import etree_lxml - treeBuilderCache[treeType] = etree_lxml.TreeBuilder - elif treeType == "etree": - from . import etree - if implementation is None: - implementation = default_etree - # NEVER cache here, caching is done in the etree submodule - return etree.getETreeModule(implementation, **kwargs).TreeBuilder - else: - raise ValueError("""Unrecognised treebuilder "%s" """ % treeType) - return treeBuilderCache.get(treeType) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/base.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/base.py deleted file mode 100644 index ed32fcb..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/base.py +++ /dev/null @@ -1,417 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import text_type - -from ..constants import scopingElements, tableInsertModeElements, namespaces - -# The scope markers are inserted when entering object elements, -# marquees, table cells, and table captions, and are used to prevent formatting -# from "leaking" into tables, object elements, and marquees. -Marker = None - -listElementsMap = { - None: (frozenset(scopingElements), False), - "button": (frozenset(scopingElements | set([(namespaces["html"], "button")])), False), - "list": (frozenset(scopingElements | set([(namespaces["html"], "ol"), - (namespaces["html"], "ul")])), False), - "table": (frozenset([(namespaces["html"], "html"), - (namespaces["html"], "table")]), False), - "select": (frozenset([(namespaces["html"], "optgroup"), - (namespaces["html"], "option")]), True) -} - - -class Node(object): - """Represents an item in the tree""" - def __init__(self, name): - """Creates a Node - - :arg name: The tag name associated with the node - - """ - # The tag name assocaited with the node - self.name = name - # The parent of the current node (or None for the document node) - self.parent = None - # The value of the current node (applies to text nodes and comments) - self.value = None - # A dict holding name -> value pairs for attributes of the node - self.attributes = {} - # A list of child nodes of the current node. This must include all - # elements but not necessarily other node types. - self.childNodes = [] - # A list of miscellaneous flags that can be set on the node. - self._flags = [] - - def __str__(self): - attributesStr = " ".join(["%s=\"%s\"" % (name, value) - for name, value in - self.attributes.items()]) - if attributesStr: - return "<%s %s>" % (self.name, attributesStr) - else: - return "<%s>" % (self.name) - - def __repr__(self): - return "<%s>" % (self.name) - - def appendChild(self, node): - """Insert node as a child of the current node - - :arg node: the node to insert - - """ - raise NotImplementedError - - def insertText(self, data, insertBefore=None): - """Insert data as text in the current node, positioned before the - start of node insertBefore or to the end of the node's text. - - :arg data: the data to insert - - :arg insertBefore: True if you want to insert the text before the node - and False if you want to insert it after the node - - """ - raise NotImplementedError - - def insertBefore(self, node, refNode): - """Insert node as a child of the current node, before refNode in the - list of child nodes. Raises ValueError if refNode is not a child of - the current node - - :arg node: the node to insert - - :arg refNode: the child node to insert the node before - - """ - raise NotImplementedError - - def removeChild(self, node): - """Remove node from the children of the current node - - :arg node: the child node to remove - - """ - raise NotImplementedError - - def reparentChildren(self, newParent): - """Move all the children of the current node to newParent. - This is needed so that trees that don't store text as nodes move the - text in the correct way - - :arg newParent: the node to move all this node's children to - - """ - # XXX - should this method be made more general? - for child in self.childNodes: - newParent.appendChild(child) - self.childNodes = [] - - def cloneNode(self): - """Return a shallow copy of the current node i.e. a node with the same - name and attributes but with no parent or child nodes - """ - raise NotImplementedError - - def hasContent(self): - """Return true if the node has children or text, false otherwise - """ - raise NotImplementedError - - -class ActiveFormattingElements(list): - def append(self, node): - equalCount = 0 - if node != Marker: - for element in self[::-1]: - if element == Marker: - break - if self.nodesEqual(element, node): - equalCount += 1 - if equalCount == 3: - self.remove(element) - break - list.append(self, node) - - def nodesEqual(self, node1, node2): - if not node1.nameTuple == node2.nameTuple: - return False - - if not node1.attributes == node2.attributes: - return False - - return True - - -class TreeBuilder(object): - """Base treebuilder implementation - - * documentClass - the class to use for the bottommost node of a document - * elementClass - the class to use for HTML Elements - * commentClass - the class to use for comments - * doctypeClass - the class to use for doctypes - - """ - # pylint:disable=not-callable - - # Document class - documentClass = None - - # The class to use for creating a node - elementClass = None - - # The class to use for creating comments - commentClass = None - - # The class to use for creating doctypes - doctypeClass = None - - # Fragment class - fragmentClass = None - - def __init__(self, namespaceHTMLElements): - """Create a TreeBuilder - - :arg namespaceHTMLElements: whether or not to namespace HTML elements - - """ - if namespaceHTMLElements: - self.defaultNamespace = "http://www.w3.org/1999/xhtml" - else: - self.defaultNamespace = None - self.reset() - - def reset(self): - self.openElements = [] - self.activeFormattingElements = ActiveFormattingElements() - - # XXX - rename these to headElement, formElement - self.headPointer = None - self.formPointer = None - - self.insertFromTable = False - - self.document = self.documentClass() - - def elementInScope(self, target, variant=None): - - # If we pass a node in we match that. if we pass a string - # match any node with that name - exactNode = hasattr(target, "nameTuple") - if not exactNode: - if isinstance(target, text_type): - target = (namespaces["html"], target) - assert isinstance(target, tuple) - - listElements, invert = listElementsMap[variant] - - for node in reversed(self.openElements): - if exactNode and node == target: - return True - elif not exactNode and node.nameTuple == target: - return True - elif (invert ^ (node.nameTuple in listElements)): - return False - - assert False # We should never reach this point - - def reconstructActiveFormattingElements(self): - # Within this algorithm the order of steps described in the - # specification is not quite the same as the order of steps in the - # code. It should still do the same though. - - # Step 1: stop the algorithm when there's nothing to do. - if not self.activeFormattingElements: - return - - # Step 2 and step 3: we start with the last element. So i is -1. - i = len(self.activeFormattingElements) - 1 - entry = self.activeFormattingElements[i] - if entry == Marker or entry in self.openElements: - return - - # Step 6 - while entry != Marker and entry not in self.openElements: - if i == 0: - # This will be reset to 0 below - i = -1 - break - i -= 1 - # Step 5: let entry be one earlier in the list. - entry = self.activeFormattingElements[i] - - while True: - # Step 7 - i += 1 - - # Step 8 - entry = self.activeFormattingElements[i] - clone = entry.cloneNode() # Mainly to get a new copy of the attributes - - # Step 9 - element = self.insertElement({"type": "StartTag", - "name": clone.name, - "namespace": clone.namespace, - "data": clone.attributes}) - - # Step 10 - self.activeFormattingElements[i] = element - - # Step 11 - if element == self.activeFormattingElements[-1]: - break - - def clearActiveFormattingElements(self): - entry = self.activeFormattingElements.pop() - while self.activeFormattingElements and entry != Marker: - entry = self.activeFormattingElements.pop() - - def elementInActiveFormattingElements(self, name): - """Check if an element exists between the end of the active - formatting elements and the last marker. If it does, return it, else - return false""" - - for item in self.activeFormattingElements[::-1]: - # Check for Marker first because if it's a Marker it doesn't have a - # name attribute. - if item == Marker: - break - elif item.name == name: - return item - return False - - def insertRoot(self, token): - element = self.createElement(token) - self.openElements.append(element) - self.document.appendChild(element) - - def insertDoctype(self, token): - name = token["name"] - publicId = token["publicId"] - systemId = token["systemId"] - - doctype = self.doctypeClass(name, publicId, systemId) - self.document.appendChild(doctype) - - def insertComment(self, token, parent=None): - if parent is None: - parent = self.openElements[-1] - parent.appendChild(self.commentClass(token["data"])) - - def createElement(self, token): - """Create an element but don't insert it anywhere""" - name = token["name"] - namespace = token.get("namespace", self.defaultNamespace) - element = self.elementClass(name, namespace) - element.attributes = token["data"] - return element - - def _getInsertFromTable(self): - return self._insertFromTable - - def _setInsertFromTable(self, value): - """Switch the function used to insert an element from the - normal one to the misnested table one and back again""" - self._insertFromTable = value - if value: - self.insertElement = self.insertElementTable - else: - self.insertElement = self.insertElementNormal - - insertFromTable = property(_getInsertFromTable, _setInsertFromTable) - - def insertElementNormal(self, token): - name = token["name"] - assert isinstance(name, text_type), "Element %s not unicode" % name - namespace = token.get("namespace", self.defaultNamespace) - element = self.elementClass(name, namespace) - element.attributes = token["data"] - self.openElements[-1].appendChild(element) - self.openElements.append(element) - return element - - def insertElementTable(self, token): - """Create an element and insert it into the tree""" - element = self.createElement(token) - if self.openElements[-1].name not in tableInsertModeElements: - return self.insertElementNormal(token) - else: - # We should be in the InTable mode. This means we want to do - # special magic element rearranging - parent, insertBefore = self.getTableMisnestedNodePosition() - if insertBefore is None: - parent.appendChild(element) - else: - parent.insertBefore(element, insertBefore) - self.openElements.append(element) - return element - - def insertText(self, data, parent=None): - """Insert text data.""" - if parent is None: - parent = self.openElements[-1] - - if (not self.insertFromTable or (self.insertFromTable and - self.openElements[-1].name - not in tableInsertModeElements)): - parent.insertText(data) - else: - # We should be in the InTable mode. This means we want to do - # special magic element rearranging - parent, insertBefore = self.getTableMisnestedNodePosition() - parent.insertText(data, insertBefore) - - def getTableMisnestedNodePosition(self): - """Get the foster parent element, and sibling to insert before - (or None) when inserting a misnested table node""" - # The foster parent element is the one which comes before the most - # recently opened table element - # XXX - this is really inelegant - lastTable = None - fosterParent = None - insertBefore = None - for elm in self.openElements[::-1]: - if elm.name == "table": - lastTable = elm - break - if lastTable: - # XXX - we should really check that this parent is actually a - # node here - if lastTable.parent: - fosterParent = lastTable.parent - insertBefore = lastTable - else: - fosterParent = self.openElements[ - self.openElements.index(lastTable) - 1] - else: - fosterParent = self.openElements[0] - return fosterParent, insertBefore - - def generateImpliedEndTags(self, exclude=None): - name = self.openElements[-1].name - # XXX td, th and tr are not actually needed - if (name in frozenset(("dd", "dt", "li", "option", "optgroup", "p", "rp", "rt")) and - name != exclude): - self.openElements.pop() - # XXX This is not entirely what the specification says. We should - # investigate it more closely. - self.generateImpliedEndTags(exclude) - - def getDocument(self): - """Return the final tree""" - return self.document - - def getFragment(self): - """Return the final fragment""" - # assert self.innerHTML - fragment = self.fragmentClass() - self.openElements[0].reparentChildren(fragment) - return fragment - - def testSerializer(self, node): - """Serialize the subtree of node in the format required by unit tests - - :arg node: the node from which to start serializing - - """ - raise NotImplementedError diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/dom.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/dom.py deleted file mode 100644 index 8117b2d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/dom.py +++ /dev/null @@ -1,236 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - - -from collections import MutableMapping -from xml.dom import minidom, Node -import weakref - -from . import base -from .. import constants -from ..constants import namespaces -from .._utils import moduleFactoryFactory - - -def getDomBuilder(DomImplementation): - Dom = DomImplementation - - class AttrList(MutableMapping): - def __init__(self, element): - self.element = element - - def __iter__(self): - return iter(self.element.attributes.keys()) - - def __setitem__(self, name, value): - if isinstance(name, tuple): - raise NotImplementedError - else: - attr = self.element.ownerDocument.createAttribute(name) - attr.value = value - self.element.attributes[name] = attr - - def __len__(self): - return len(self.element.attributes) - - def items(self): - return list(self.element.attributes.items()) - - def values(self): - return list(self.element.attributes.values()) - - def __getitem__(self, name): - if isinstance(name, tuple): - raise NotImplementedError - else: - return self.element.attributes[name].value - - def __delitem__(self, name): - if isinstance(name, tuple): - raise NotImplementedError - else: - del self.element.attributes[name] - - class NodeBuilder(base.Node): - def __init__(self, element): - base.Node.__init__(self, element.nodeName) - self.element = element - - namespace = property(lambda self: hasattr(self.element, "namespaceURI") and - self.element.namespaceURI or None) - - def appendChild(self, node): - node.parent = self - self.element.appendChild(node.element) - - def insertText(self, data, insertBefore=None): - text = self.element.ownerDocument.createTextNode(data) - if insertBefore: - self.element.insertBefore(text, insertBefore.element) - else: - self.element.appendChild(text) - - def insertBefore(self, node, refNode): - self.element.insertBefore(node.element, refNode.element) - node.parent = self - - def removeChild(self, node): - if node.element.parentNode == self.element: - self.element.removeChild(node.element) - node.parent = None - - def reparentChildren(self, newParent): - while self.element.hasChildNodes(): - child = self.element.firstChild - self.element.removeChild(child) - newParent.element.appendChild(child) - self.childNodes = [] - - def getAttributes(self): - return AttrList(self.element) - - def setAttributes(self, attributes): - if attributes: - for name, value in list(attributes.items()): - if isinstance(name, tuple): - if name[0] is not None: - qualifiedName = (name[0] + ":" + name[1]) - else: - qualifiedName = name[1] - self.element.setAttributeNS(name[2], qualifiedName, - value) - else: - self.element.setAttribute( - name, value) - attributes = property(getAttributes, setAttributes) - - def cloneNode(self): - return NodeBuilder(self.element.cloneNode(False)) - - def hasContent(self): - return self.element.hasChildNodes() - - def getNameTuple(self): - if self.namespace is None: - return namespaces["html"], self.name - else: - return self.namespace, self.name - - nameTuple = property(getNameTuple) - - class TreeBuilder(base.TreeBuilder): # pylint:disable=unused-variable - def documentClass(self): - self.dom = Dom.getDOMImplementation().createDocument(None, None, None) - return weakref.proxy(self) - - def insertDoctype(self, token): - name = token["name"] - publicId = token["publicId"] - systemId = token["systemId"] - - domimpl = Dom.getDOMImplementation() - doctype = domimpl.createDocumentType(name, publicId, systemId) - self.document.appendChild(NodeBuilder(doctype)) - if Dom == minidom: - doctype.ownerDocument = self.dom - - def elementClass(self, name, namespace=None): - if namespace is None and self.defaultNamespace is None: - node = self.dom.createElement(name) - else: - node = self.dom.createElementNS(namespace, name) - - return NodeBuilder(node) - - def commentClass(self, data): - return NodeBuilder(self.dom.createComment(data)) - - def fragmentClass(self): - return NodeBuilder(self.dom.createDocumentFragment()) - - def appendChild(self, node): - self.dom.appendChild(node.element) - - def testSerializer(self, element): - return testSerializer(element) - - def getDocument(self): - return self.dom - - def getFragment(self): - return base.TreeBuilder.getFragment(self).element - - def insertText(self, data, parent=None): - data = data - if parent != self: - base.TreeBuilder.insertText(self, data, parent) - else: - # HACK: allow text nodes as children of the document node - if hasattr(self.dom, '_child_node_types'): - # pylint:disable=protected-access - if Node.TEXT_NODE not in self.dom._child_node_types: - self.dom._child_node_types = list(self.dom._child_node_types) - self.dom._child_node_types.append(Node.TEXT_NODE) - self.dom.appendChild(self.dom.createTextNode(data)) - - implementation = DomImplementation - name = None - - def testSerializer(element): - element.normalize() - rv = [] - - def serializeElement(element, indent=0): - if element.nodeType == Node.DOCUMENT_TYPE_NODE: - if element.name: - if element.publicId or element.systemId: - publicId = element.publicId or "" - systemId = element.systemId or "" - rv.append("""|%s<!DOCTYPE %s "%s" "%s">""" % - (' ' * indent, element.name, publicId, systemId)) - else: - rv.append("|%s<!DOCTYPE %s>" % (' ' * indent, element.name)) - else: - rv.append("|%s<!DOCTYPE >" % (' ' * indent,)) - elif element.nodeType == Node.DOCUMENT_NODE: - rv.append("#document") - elif element.nodeType == Node.DOCUMENT_FRAGMENT_NODE: - rv.append("#document-fragment") - elif element.nodeType == Node.COMMENT_NODE: - rv.append("|%s<!-- %s -->" % (' ' * indent, element.nodeValue)) - elif element.nodeType == Node.TEXT_NODE: - rv.append("|%s\"%s\"" % (' ' * indent, element.nodeValue)) - else: - if (hasattr(element, "namespaceURI") and - element.namespaceURI is not None): - name = "%s %s" % (constants.prefixes[element.namespaceURI], - element.nodeName) - else: - name = element.nodeName - rv.append("|%s<%s>" % (' ' * indent, name)) - if element.hasAttributes(): - attributes = [] - for i in range(len(element.attributes)): - attr = element.attributes.item(i) - name = attr.nodeName - value = attr.value - ns = attr.namespaceURI - if ns: - name = "%s %s" % (constants.prefixes[ns], attr.localName) - else: - name = attr.nodeName - attributes.append((name, value)) - - for name, value in sorted(attributes): - rv.append('|%s%s="%s"' % (' ' * (indent + 2), name, value)) - indent += 2 - for child in element.childNodes: - serializeElement(child, indent) - serializeElement(element, 0) - - return "\n".join(rv) - - return locals() - - -# The actual means to get a module! -getDomModule = moduleFactoryFactory(getDomBuilder) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree.py deleted file mode 100644 index 9a4aa95..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree.py +++ /dev/null @@ -1,340 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -# pylint:disable=protected-access - -from pip._vendor.six import text_type - -import re - -from . import base -from .. import _ihatexml -from .. import constants -from ..constants import namespaces -from .._utils import moduleFactoryFactory - -tag_regexp = re.compile("{([^}]*)}(.*)") - - -def getETreeBuilder(ElementTreeImplementation, fullTree=False): - ElementTree = ElementTreeImplementation - ElementTreeCommentType = ElementTree.Comment("asd").tag - - class Element(base.Node): - def __init__(self, name, namespace=None): - self._name = name - self._namespace = namespace - self._element = ElementTree.Element(self._getETreeTag(name, - namespace)) - if namespace is None: - self.nameTuple = namespaces["html"], self._name - else: - self.nameTuple = self._namespace, self._name - self.parent = None - self._childNodes = [] - self._flags = [] - - def _getETreeTag(self, name, namespace): - if namespace is None: - etree_tag = name - else: - etree_tag = "{%s}%s" % (namespace, name) - return etree_tag - - def _setName(self, name): - self._name = name - self._element.tag = self._getETreeTag(self._name, self._namespace) - - def _getName(self): - return self._name - - name = property(_getName, _setName) - - def _setNamespace(self, namespace): - self._namespace = namespace - self._element.tag = self._getETreeTag(self._name, self._namespace) - - def _getNamespace(self): - return self._namespace - - namespace = property(_getNamespace, _setNamespace) - - def _getAttributes(self): - return self._element.attrib - - def _setAttributes(self, attributes): - # Delete existing attributes first - # XXX - there may be a better way to do this... - for key in list(self._element.attrib.keys()): - del self._element.attrib[key] - for key, value in attributes.items(): - if isinstance(key, tuple): - name = "{%s}%s" % (key[2], key[1]) - else: - name = key - self._element.set(name, value) - - attributes = property(_getAttributes, _setAttributes) - - def _getChildNodes(self): - return self._childNodes - - def _setChildNodes(self, value): - del self._element[:] - self._childNodes = [] - for element in value: - self.insertChild(element) - - childNodes = property(_getChildNodes, _setChildNodes) - - def hasContent(self): - """Return true if the node has children or text""" - return bool(self._element.text or len(self._element)) - - def appendChild(self, node): - self._childNodes.append(node) - self._element.append(node._element) - node.parent = self - - def insertBefore(self, node, refNode): - index = list(self._element).index(refNode._element) - self._element.insert(index, node._element) - node.parent = self - - def removeChild(self, node): - self._childNodes.remove(node) - self._element.remove(node._element) - node.parent = None - - def insertText(self, data, insertBefore=None): - if not(len(self._element)): - if not self._element.text: - self._element.text = "" - self._element.text += data - elif insertBefore is None: - # Insert the text as the tail of the last child element - if not self._element[-1].tail: - self._element[-1].tail = "" - self._element[-1].tail += data - else: - # Insert the text before the specified node - children = list(self._element) - index = children.index(insertBefore._element) - if index > 0: - if not self._element[index - 1].tail: - self._element[index - 1].tail = "" - self._element[index - 1].tail += data - else: - if not self._element.text: - self._element.text = "" - self._element.text += data - - def cloneNode(self): - element = type(self)(self.name, self.namespace) - for name, value in self.attributes.items(): - element.attributes[name] = value - return element - - def reparentChildren(self, newParent): - if newParent.childNodes: - newParent.childNodes[-1]._element.tail += self._element.text - else: - if not newParent._element.text: - newParent._element.text = "" - if self._element.text is not None: - newParent._element.text += self._element.text - self._element.text = "" - base.Node.reparentChildren(self, newParent) - - class Comment(Element): - def __init__(self, data): - # Use the superclass constructor to set all properties on the - # wrapper element - self._element = ElementTree.Comment(data) - self.parent = None - self._childNodes = [] - self._flags = [] - - def _getData(self): - return self._element.text - - def _setData(self, value): - self._element.text = value - - data = property(_getData, _setData) - - class DocumentType(Element): - def __init__(self, name, publicId, systemId): - Element.__init__(self, "<!DOCTYPE>") - self._element.text = name - self.publicId = publicId - self.systemId = systemId - - def _getPublicId(self): - return self._element.get("publicId", "") - - def _setPublicId(self, value): - if value is not None: - self._element.set("publicId", value) - - publicId = property(_getPublicId, _setPublicId) - - def _getSystemId(self): - return self._element.get("systemId", "") - - def _setSystemId(self, value): - if value is not None: - self._element.set("systemId", value) - - systemId = property(_getSystemId, _setSystemId) - - class Document(Element): - def __init__(self): - Element.__init__(self, "DOCUMENT_ROOT") - - class DocumentFragment(Element): - def __init__(self): - Element.__init__(self, "DOCUMENT_FRAGMENT") - - def testSerializer(element): - rv = [] - - def serializeElement(element, indent=0): - if not(hasattr(element, "tag")): - element = element.getroot() - if element.tag == "<!DOCTYPE>": - if element.get("publicId") or element.get("systemId"): - publicId = element.get("publicId") or "" - systemId = element.get("systemId") or "" - rv.append("""<!DOCTYPE %s "%s" "%s">""" % - (element.text, publicId, systemId)) - else: - rv.append("<!DOCTYPE %s>" % (element.text,)) - elif element.tag == "DOCUMENT_ROOT": - rv.append("#document") - if element.text is not None: - rv.append("|%s\"%s\"" % (' ' * (indent + 2), element.text)) - if element.tail is not None: - raise TypeError("Document node cannot have tail") - if hasattr(element, "attrib") and len(element.attrib): - raise TypeError("Document node cannot have attributes") - elif element.tag == ElementTreeCommentType: - rv.append("|%s<!-- %s -->" % (' ' * indent, element.text)) - else: - assert isinstance(element.tag, text_type), \ - "Expected unicode, got %s, %s" % (type(element.tag), element.tag) - nsmatch = tag_regexp.match(element.tag) - - if nsmatch is None: - name = element.tag - else: - ns, name = nsmatch.groups() - prefix = constants.prefixes[ns] - name = "%s %s" % (prefix, name) - rv.append("|%s<%s>" % (' ' * indent, name)) - - if hasattr(element, "attrib"): - attributes = [] - for name, value in element.attrib.items(): - nsmatch = tag_regexp.match(name) - if nsmatch is not None: - ns, name = nsmatch.groups() - prefix = constants.prefixes[ns] - attr_string = "%s %s" % (prefix, name) - else: - attr_string = name - attributes.append((attr_string, value)) - - for name, value in sorted(attributes): - rv.append('|%s%s="%s"' % (' ' * (indent + 2), name, value)) - if element.text: - rv.append("|%s\"%s\"" % (' ' * (indent + 2), element.text)) - indent += 2 - for child in element: - serializeElement(child, indent) - if element.tail: - rv.append("|%s\"%s\"" % (' ' * (indent - 2), element.tail)) - serializeElement(element, 0) - - return "\n".join(rv) - - def tostring(element): # pylint:disable=unused-variable - """Serialize an element and its child nodes to a string""" - rv = [] - filter = _ihatexml.InfosetFilter() - - def serializeElement(element): - if isinstance(element, ElementTree.ElementTree): - element = element.getroot() - - if element.tag == "<!DOCTYPE>": - if element.get("publicId") or element.get("systemId"): - publicId = element.get("publicId") or "" - systemId = element.get("systemId") or "" - rv.append("""<!DOCTYPE %s PUBLIC "%s" "%s">""" % - (element.text, publicId, systemId)) - else: - rv.append("<!DOCTYPE %s>" % (element.text,)) - elif element.tag == "DOCUMENT_ROOT": - if element.text is not None: - rv.append(element.text) - if element.tail is not None: - raise TypeError("Document node cannot have tail") - if hasattr(element, "attrib") and len(element.attrib): - raise TypeError("Document node cannot have attributes") - - for child in element: - serializeElement(child) - - elif element.tag == ElementTreeCommentType: - rv.append("<!--%s-->" % (element.text,)) - else: - # This is assumed to be an ordinary element - if not element.attrib: - rv.append("<%s>" % (filter.fromXmlName(element.tag),)) - else: - attr = " ".join(["%s=\"%s\"" % ( - filter.fromXmlName(name), value) - for name, value in element.attrib.items()]) - rv.append("<%s %s>" % (element.tag, attr)) - if element.text: - rv.append(element.text) - - for child in element: - serializeElement(child) - - rv.append("</%s>" % (element.tag,)) - - if element.tail: - rv.append(element.tail) - - serializeElement(element) - - return "".join(rv) - - class TreeBuilder(base.TreeBuilder): # pylint:disable=unused-variable - documentClass = Document - doctypeClass = DocumentType - elementClass = Element - commentClass = Comment - fragmentClass = DocumentFragment - implementation = ElementTreeImplementation - - def testSerializer(self, element): - return testSerializer(element) - - def getDocument(self): - if fullTree: - return self.document._element - else: - if self.defaultNamespace is not None: - return self.document._element.find( - "{%s}html" % self.defaultNamespace) - else: - return self.document._element.find("html") - - def getFragment(self): - return base.TreeBuilder.getFragment(self)._element - - return locals() - - -getETreeModule = moduleFactoryFactory(getETreeBuilder) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree_lxml.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree_lxml.py deleted file mode 100644 index 66a9ba3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treebuilders/etree_lxml.py +++ /dev/null @@ -1,366 +0,0 @@ -"""Module for supporting the lxml.etree library. The idea here is to use as much -of the native library as possible, without using fragile hacks like custom element -names that break between releases. The downside of this is that we cannot represent -all possible trees; specifically the following are known to cause problems: - -Text or comments as siblings of the root element -Docypes with no name - -When any of these things occur, we emit a DataLossWarning -""" - -from __future__ import absolute_import, division, unicode_literals -# pylint:disable=protected-access - -import warnings -import re -import sys - -from . import base -from ..constants import DataLossWarning -from .. import constants -from . import etree as etree_builders -from .. import _ihatexml - -import lxml.etree as etree - - -fullTree = True -tag_regexp = re.compile("{([^}]*)}(.*)") - -comment_type = etree.Comment("asd").tag - - -class DocumentType(object): - def __init__(self, name, publicId, systemId): - self.name = name - self.publicId = publicId - self.systemId = systemId - - -class Document(object): - def __init__(self): - self._elementTree = None - self._childNodes = [] - - def appendChild(self, element): - self._elementTree.getroot().addnext(element._element) - - def _getChildNodes(self): - return self._childNodes - - childNodes = property(_getChildNodes) - - -def testSerializer(element): - rv = [] - infosetFilter = _ihatexml.InfosetFilter(preventDoubleDashComments=True) - - def serializeElement(element, indent=0): - if not hasattr(element, "tag"): - if hasattr(element, "getroot"): - # Full tree case - rv.append("#document") - if element.docinfo.internalDTD: - if not (element.docinfo.public_id or - element.docinfo.system_url): - dtd_str = "<!DOCTYPE %s>" % element.docinfo.root_name - else: - dtd_str = """<!DOCTYPE %s "%s" "%s">""" % ( - element.docinfo.root_name, - element.docinfo.public_id, - element.docinfo.system_url) - rv.append("|%s%s" % (' ' * (indent + 2), dtd_str)) - next_element = element.getroot() - while next_element.getprevious() is not None: - next_element = next_element.getprevious() - while next_element is not None: - serializeElement(next_element, indent + 2) - next_element = next_element.getnext() - elif isinstance(element, str) or isinstance(element, bytes): - # Text in a fragment - assert isinstance(element, str) or sys.version_info[0] == 2 - rv.append("|%s\"%s\"" % (' ' * indent, element)) - else: - # Fragment case - rv.append("#document-fragment") - for next_element in element: - serializeElement(next_element, indent + 2) - elif element.tag == comment_type: - rv.append("|%s<!-- %s -->" % (' ' * indent, element.text)) - if hasattr(element, "tail") and element.tail: - rv.append("|%s\"%s\"" % (' ' * indent, element.tail)) - else: - assert isinstance(element, etree._Element) - nsmatch = etree_builders.tag_regexp.match(element.tag) - if nsmatch is not None: - ns = nsmatch.group(1) - tag = nsmatch.group(2) - prefix = constants.prefixes[ns] - rv.append("|%s<%s %s>" % (' ' * indent, prefix, - infosetFilter.fromXmlName(tag))) - else: - rv.append("|%s<%s>" % (' ' * indent, - infosetFilter.fromXmlName(element.tag))) - - if hasattr(element, "attrib"): - attributes = [] - for name, value in element.attrib.items(): - nsmatch = tag_regexp.match(name) - if nsmatch is not None: - ns, name = nsmatch.groups() - name = infosetFilter.fromXmlName(name) - prefix = constants.prefixes[ns] - attr_string = "%s %s" % (prefix, name) - else: - attr_string = infosetFilter.fromXmlName(name) - attributes.append((attr_string, value)) - - for name, value in sorted(attributes): - rv.append('|%s%s="%s"' % (' ' * (indent + 2), name, value)) - - if element.text: - rv.append("|%s\"%s\"" % (' ' * (indent + 2), element.text)) - indent += 2 - for child in element: - serializeElement(child, indent) - if hasattr(element, "tail") and element.tail: - rv.append("|%s\"%s\"" % (' ' * (indent - 2), element.tail)) - serializeElement(element, 0) - - return "\n".join(rv) - - -def tostring(element): - """Serialize an element and its child nodes to a string""" - rv = [] - - def serializeElement(element): - if not hasattr(element, "tag"): - if element.docinfo.internalDTD: - if element.docinfo.doctype: - dtd_str = element.docinfo.doctype - else: - dtd_str = "<!DOCTYPE %s>" % element.docinfo.root_name - rv.append(dtd_str) - serializeElement(element.getroot()) - - elif element.tag == comment_type: - rv.append("<!--%s-->" % (element.text,)) - - else: - # This is assumed to be an ordinary element - if not element.attrib: - rv.append("<%s>" % (element.tag,)) - else: - attr = " ".join(["%s=\"%s\"" % (name, value) - for name, value in element.attrib.items()]) - rv.append("<%s %s>" % (element.tag, attr)) - if element.text: - rv.append(element.text) - - for child in element: - serializeElement(child) - - rv.append("</%s>" % (element.tag,)) - - if hasattr(element, "tail") and element.tail: - rv.append(element.tail) - - serializeElement(element) - - return "".join(rv) - - -class TreeBuilder(base.TreeBuilder): - documentClass = Document - doctypeClass = DocumentType - elementClass = None - commentClass = None - fragmentClass = Document - implementation = etree - - def __init__(self, namespaceHTMLElements, fullTree=False): - builder = etree_builders.getETreeModule(etree, fullTree=fullTree) - infosetFilter = self.infosetFilter = _ihatexml.InfosetFilter(preventDoubleDashComments=True) - self.namespaceHTMLElements = namespaceHTMLElements - - class Attributes(dict): - def __init__(self, element, value=None): - if value is None: - value = {} - self._element = element - dict.__init__(self, value) # pylint:disable=non-parent-init-called - for key, value in self.items(): - if isinstance(key, tuple): - name = "{%s}%s" % (key[2], infosetFilter.coerceAttribute(key[1])) - else: - name = infosetFilter.coerceAttribute(key) - self._element._element.attrib[name] = value - - def __setitem__(self, key, value): - dict.__setitem__(self, key, value) - if isinstance(key, tuple): - name = "{%s}%s" % (key[2], infosetFilter.coerceAttribute(key[1])) - else: - name = infosetFilter.coerceAttribute(key) - self._element._element.attrib[name] = value - - class Element(builder.Element): - def __init__(self, name, namespace): - name = infosetFilter.coerceElement(name) - builder.Element.__init__(self, name, namespace=namespace) - self._attributes = Attributes(self) - - def _setName(self, name): - self._name = infosetFilter.coerceElement(name) - self._element.tag = self._getETreeTag( - self._name, self._namespace) - - def _getName(self): - return infosetFilter.fromXmlName(self._name) - - name = property(_getName, _setName) - - def _getAttributes(self): - return self._attributes - - def _setAttributes(self, attributes): - self._attributes = Attributes(self, attributes) - - attributes = property(_getAttributes, _setAttributes) - - def insertText(self, data, insertBefore=None): - data = infosetFilter.coerceCharacters(data) - builder.Element.insertText(self, data, insertBefore) - - def appendChild(self, child): - builder.Element.appendChild(self, child) - - class Comment(builder.Comment): - def __init__(self, data): - data = infosetFilter.coerceComment(data) - builder.Comment.__init__(self, data) - - def _setData(self, data): - data = infosetFilter.coerceComment(data) - self._element.text = data - - def _getData(self): - return self._element.text - - data = property(_getData, _setData) - - self.elementClass = Element - self.commentClass = Comment - # self.fragmentClass = builder.DocumentFragment - base.TreeBuilder.__init__(self, namespaceHTMLElements) - - def reset(self): - base.TreeBuilder.reset(self) - self.insertComment = self.insertCommentInitial - self.initial_comments = [] - self.doctype = None - - def testSerializer(self, element): - return testSerializer(element) - - def getDocument(self): - if fullTree: - return self.document._elementTree - else: - return self.document._elementTree.getroot() - - def getFragment(self): - fragment = [] - element = self.openElements[0]._element - if element.text: - fragment.append(element.text) - fragment.extend(list(element)) - if element.tail: - fragment.append(element.tail) - return fragment - - def insertDoctype(self, token): - name = token["name"] - publicId = token["publicId"] - systemId = token["systemId"] - - if not name: - warnings.warn("lxml cannot represent empty doctype", DataLossWarning) - self.doctype = None - else: - coercedName = self.infosetFilter.coerceElement(name) - if coercedName != name: - warnings.warn("lxml cannot represent non-xml doctype", DataLossWarning) - - doctype = self.doctypeClass(coercedName, publicId, systemId) - self.doctype = doctype - - def insertCommentInitial(self, data, parent=None): - assert parent is None or parent is self.document - assert self.document._elementTree is None - self.initial_comments.append(data) - - def insertCommentMain(self, data, parent=None): - if (parent == self.document and - self.document._elementTree.getroot()[-1].tag == comment_type): - warnings.warn("lxml cannot represent adjacent comments beyond the root elements", DataLossWarning) - super(TreeBuilder, self).insertComment(data, parent) - - def insertRoot(self, token): - # Because of the way libxml2 works, it doesn't seem to be possible to - # alter information like the doctype after the tree has been parsed. - # Therefore we need to use the built-in parser to create our initial - # tree, after which we can add elements like normal - docStr = "" - if self.doctype: - assert self.doctype.name - docStr += "<!DOCTYPE %s" % self.doctype.name - if (self.doctype.publicId is not None or - self.doctype.systemId is not None): - docStr += (' PUBLIC "%s" ' % - (self.infosetFilter.coercePubid(self.doctype.publicId or ""))) - if self.doctype.systemId: - sysid = self.doctype.systemId - if sysid.find("'") >= 0 and sysid.find('"') >= 0: - warnings.warn("DOCTYPE system cannot contain single and double quotes", DataLossWarning) - sysid = sysid.replace("'", 'U00027') - if sysid.find("'") >= 0: - docStr += '"%s"' % sysid - else: - docStr += "'%s'" % sysid - else: - docStr += "''" - docStr += ">" - if self.doctype.name != token["name"]: - warnings.warn("lxml cannot represent doctype with a different name to the root element", DataLossWarning) - docStr += "<THIS_SHOULD_NEVER_APPEAR_PUBLICLY/>" - root = etree.fromstring(docStr) - - # Append the initial comments: - for comment_token in self.initial_comments: - comment = self.commentClass(comment_token["data"]) - root.addprevious(comment._element) - - # Create the root document and add the ElementTree to it - self.document = self.documentClass() - self.document._elementTree = root.getroottree() - - # Give the root element the right name - name = token["name"] - namespace = token.get("namespace", self.defaultNamespace) - if namespace is None: - etree_tag = name - else: - etree_tag = "{%s}%s" % (namespace, name) - root.tag = etree_tag - - # Add the root element to the internal child/open data structures - root_element = self.elementClass(name, namespace) - root_element._element = root - self.document._childNodes.append(root_element) - self.openElements.append(root_element) - - # Reset to the default insert comment function - self.insertComment = self.insertCommentMain diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/__init__.py deleted file mode 100644 index 31a173d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/__init__.py +++ /dev/null @@ -1,154 +0,0 @@ -"""A collection of modules for iterating through different kinds of -tree, generating tokens identical to those produced by the tokenizer -module. - -To create a tree walker for a new type of tree, you need to do -implement a tree walker object (called TreeWalker by convention) that -implements a 'serialize' method taking a tree as sole argument and -returning an iterator generating tokens. -""" - -from __future__ import absolute_import, division, unicode_literals - -from .. import constants -from .._utils import default_etree - -__all__ = ["getTreeWalker", "pprint"] - -treeWalkerCache = {} - - -def getTreeWalker(treeType, implementation=None, **kwargs): - """Get a TreeWalker class for various types of tree with built-in support - - :arg str treeType: the name of the tree type required (case-insensitive). - Supported values are: - - * "dom": The xml.dom.minidom DOM implementation - * "etree": A generic walker for tree implementations exposing an - elementtree-like interface (known to work with ElementTree, - cElementTree and lxml.etree). - * "lxml": Optimized walker for lxml.etree - * "genshi": a Genshi stream - - :arg implementation: A module implementing the tree type e.g. - xml.etree.ElementTree or cElementTree (Currently applies to the "etree" - tree type only). - - :arg kwargs: keyword arguments passed to the etree walker--for other - walkers, this has no effect - - :returns: a TreeWalker class - - """ - - treeType = treeType.lower() - if treeType not in treeWalkerCache: - if treeType == "dom": - from . import dom - treeWalkerCache[treeType] = dom.TreeWalker - elif treeType == "genshi": - from . import genshi - treeWalkerCache[treeType] = genshi.TreeWalker - elif treeType == "lxml": - from . import etree_lxml - treeWalkerCache[treeType] = etree_lxml.TreeWalker - elif treeType == "etree": - from . import etree - if implementation is None: - implementation = default_etree - # XXX: NEVER cache here, caching is done in the etree submodule - return etree.getETreeModule(implementation, **kwargs).TreeWalker - return treeWalkerCache.get(treeType) - - -def concatenateCharacterTokens(tokens): - pendingCharacters = [] - for token in tokens: - type = token["type"] - if type in ("Characters", "SpaceCharacters"): - pendingCharacters.append(token["data"]) - else: - if pendingCharacters: - yield {"type": "Characters", "data": "".join(pendingCharacters)} - pendingCharacters = [] - yield token - if pendingCharacters: - yield {"type": "Characters", "data": "".join(pendingCharacters)} - - -def pprint(walker): - """Pretty printer for tree walkers - - Takes a TreeWalker instance and pretty prints the output of walking the tree. - - :arg walker: a TreeWalker instance - - """ - output = [] - indent = 0 - for token in concatenateCharacterTokens(walker): - type = token["type"] - if type in ("StartTag", "EmptyTag"): - # tag name - if token["namespace"] and token["namespace"] != constants.namespaces["html"]: - if token["namespace"] in constants.prefixes: - ns = constants.prefixes[token["namespace"]] - else: - ns = token["namespace"] - name = "%s %s" % (ns, token["name"]) - else: - name = token["name"] - output.append("%s<%s>" % (" " * indent, name)) - indent += 2 - # attributes (sorted for consistent ordering) - attrs = token["data"] - for (namespace, localname), value in sorted(attrs.items()): - if namespace: - if namespace in constants.prefixes: - ns = constants.prefixes[namespace] - else: - ns = namespace - name = "%s %s" % (ns, localname) - else: - name = localname - output.append("%s%s=\"%s\"" % (" " * indent, name, value)) - # self-closing - if type == "EmptyTag": - indent -= 2 - - elif type == "EndTag": - indent -= 2 - - elif type == "Comment": - output.append("%s<!-- %s -->" % (" " * indent, token["data"])) - - elif type == "Doctype": - if token["name"]: - if token["publicId"]: - output.append("""%s<!DOCTYPE %s "%s" "%s">""" % - (" " * indent, - token["name"], - token["publicId"], - token["systemId"] if token["systemId"] else "")) - elif token["systemId"]: - output.append("""%s<!DOCTYPE %s "" "%s">""" % - (" " * indent, - token["name"], - token["systemId"])) - else: - output.append("%s<!DOCTYPE %s>" % (" " * indent, - token["name"])) - else: - output.append("%s<!DOCTYPE >" % (" " * indent,)) - - elif type == "Characters": - output.append("%s\"%s\"" % (" " * indent, token["data"])) - - elif type == "SpaceCharacters": - assert False, "concatenateCharacterTokens should have got rid of all Space tokens" - - else: - raise ValueError("Unknown token type, %s" % type) - - return "\n".join(output) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/base.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/base.py deleted file mode 100644 index f82984b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/base.py +++ /dev/null @@ -1,252 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from xml.dom import Node -from ..constants import namespaces, voidElements, spaceCharacters - -__all__ = ["DOCUMENT", "DOCTYPE", "TEXT", "ELEMENT", "COMMENT", "ENTITY", "UNKNOWN", - "TreeWalker", "NonRecursiveTreeWalker"] - -DOCUMENT = Node.DOCUMENT_NODE -DOCTYPE = Node.DOCUMENT_TYPE_NODE -TEXT = Node.TEXT_NODE -ELEMENT = Node.ELEMENT_NODE -COMMENT = Node.COMMENT_NODE -ENTITY = Node.ENTITY_NODE -UNKNOWN = "<#UNKNOWN#>" - -spaceCharacters = "".join(spaceCharacters) - - -class TreeWalker(object): - """Walks a tree yielding tokens - - Tokens are dicts that all have a ``type`` field specifying the type of the - token. - - """ - def __init__(self, tree): - """Creates a TreeWalker - - :arg tree: the tree to walk - - """ - self.tree = tree - - def __iter__(self): - raise NotImplementedError - - def error(self, msg): - """Generates an error token with the given message - - :arg msg: the error message - - :returns: SerializeError token - - """ - return {"type": "SerializeError", "data": msg} - - def emptyTag(self, namespace, name, attrs, hasChildren=False): - """Generates an EmptyTag token - - :arg namespace: the namespace of the token--can be ``None`` - - :arg name: the name of the element - - :arg attrs: the attributes of the element as a dict - - :arg hasChildren: whether or not to yield a SerializationError because - this tag shouldn't have children - - :returns: EmptyTag token - - """ - yield {"type": "EmptyTag", "name": name, - "namespace": namespace, - "data": attrs} - if hasChildren: - yield self.error("Void element has children") - - def startTag(self, namespace, name, attrs): - """Generates a StartTag token - - :arg namespace: the namespace of the token--can be ``None`` - - :arg name: the name of the element - - :arg attrs: the attributes of the element as a dict - - :returns: StartTag token - - """ - return {"type": "StartTag", - "name": name, - "namespace": namespace, - "data": attrs} - - def endTag(self, namespace, name): - """Generates an EndTag token - - :arg namespace: the namespace of the token--can be ``None`` - - :arg name: the name of the element - - :returns: EndTag token - - """ - return {"type": "EndTag", - "name": name, - "namespace": namespace} - - def text(self, data): - """Generates SpaceCharacters and Characters tokens - - Depending on what's in the data, this generates one or more - ``SpaceCharacters`` and ``Characters`` tokens. - - For example: - - >>> from html5lib.treewalkers.base import TreeWalker - >>> # Give it an empty tree just so it instantiates - >>> walker = TreeWalker([]) - >>> list(walker.text('')) - [] - >>> list(walker.text(' ')) - [{u'data': ' ', u'type': u'SpaceCharacters'}] - >>> list(walker.text(' abc ')) # doctest: +NORMALIZE_WHITESPACE - [{u'data': ' ', u'type': u'SpaceCharacters'}, - {u'data': u'abc', u'type': u'Characters'}, - {u'data': u' ', u'type': u'SpaceCharacters'}] - - :arg data: the text data - - :returns: one or more ``SpaceCharacters`` and ``Characters`` tokens - - """ - data = data - middle = data.lstrip(spaceCharacters) - left = data[:len(data) - len(middle)] - if left: - yield {"type": "SpaceCharacters", "data": left} - data = middle - middle = data.rstrip(spaceCharacters) - right = data[len(middle):] - if middle: - yield {"type": "Characters", "data": middle} - if right: - yield {"type": "SpaceCharacters", "data": right} - - def comment(self, data): - """Generates a Comment token - - :arg data: the comment - - :returns: Comment token - - """ - return {"type": "Comment", "data": data} - - def doctype(self, name, publicId=None, systemId=None): - """Generates a Doctype token - - :arg name: - - :arg publicId: - - :arg systemId: - - :returns: the Doctype token - - """ - return {"type": "Doctype", - "name": name, - "publicId": publicId, - "systemId": systemId} - - def entity(self, name): - """Generates an Entity token - - :arg name: the entity name - - :returns: an Entity token - - """ - return {"type": "Entity", "name": name} - - def unknown(self, nodeType): - """Handles unknown node types""" - return self.error("Unknown node type: " + nodeType) - - -class NonRecursiveTreeWalker(TreeWalker): - def getNodeDetails(self, node): - raise NotImplementedError - - def getFirstChild(self, node): - raise NotImplementedError - - def getNextSibling(self, node): - raise NotImplementedError - - def getParentNode(self, node): - raise NotImplementedError - - def __iter__(self): - currentNode = self.tree - while currentNode is not None: - details = self.getNodeDetails(currentNode) - type, details = details[0], details[1:] - hasChildren = False - - if type == DOCTYPE: - yield self.doctype(*details) - - elif type == TEXT: - for token in self.text(*details): - yield token - - elif type == ELEMENT: - namespace, name, attributes, hasChildren = details - if (not namespace or namespace == namespaces["html"]) and name in voidElements: - for token in self.emptyTag(namespace, name, attributes, - hasChildren): - yield token - hasChildren = False - else: - yield self.startTag(namespace, name, attributes) - - elif type == COMMENT: - yield self.comment(details[0]) - - elif type == ENTITY: - yield self.entity(details[0]) - - elif type == DOCUMENT: - hasChildren = True - - else: - yield self.unknown(details[0]) - - if hasChildren: - firstChild = self.getFirstChild(currentNode) - else: - firstChild = None - - if firstChild is not None: - currentNode = firstChild - else: - while currentNode is not None: - details = self.getNodeDetails(currentNode) - type, details = details[0], details[1:] - if type == ELEMENT: - namespace, name, attributes, hasChildren = details - if (namespace and namespace != namespaces["html"]) or name not in voidElements: - yield self.endTag(namespace, name) - if self.tree is currentNode: - currentNode = None - break - nextSibling = self.getNextSibling(currentNode) - if nextSibling is not None: - currentNode = nextSibling - break - else: - currentNode = self.getParentNode(currentNode) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/dom.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/dom.py deleted file mode 100644 index b3e2753..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/dom.py +++ /dev/null @@ -1,43 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from xml.dom import Node - -from . import base - - -class TreeWalker(base.NonRecursiveTreeWalker): - def getNodeDetails(self, node): - if node.nodeType == Node.DOCUMENT_TYPE_NODE: - return base.DOCTYPE, node.name, node.publicId, node.systemId - - elif node.nodeType in (Node.TEXT_NODE, Node.CDATA_SECTION_NODE): - return base.TEXT, node.nodeValue - - elif node.nodeType == Node.ELEMENT_NODE: - attrs = {} - for attr in list(node.attributes.keys()): - attr = node.getAttributeNode(attr) - if attr.namespaceURI: - attrs[(attr.namespaceURI, attr.localName)] = attr.value - else: - attrs[(None, attr.name)] = attr.value - return (base.ELEMENT, node.namespaceURI, node.nodeName, - attrs, node.hasChildNodes()) - - elif node.nodeType == Node.COMMENT_NODE: - return base.COMMENT, node.nodeValue - - elif node.nodeType in (Node.DOCUMENT_NODE, Node.DOCUMENT_FRAGMENT_NODE): - return (base.DOCUMENT,) - - else: - return base.UNKNOWN, node.nodeType - - def getFirstChild(self, node): - return node.firstChild - - def getNextSibling(self, node): - return node.nextSibling - - def getParentNode(self, node): - return node.parentNode diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree.py deleted file mode 100644 index 1a35add..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree.py +++ /dev/null @@ -1,130 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from collections import OrderedDict -import re - -from pip._vendor.six import string_types - -from . import base -from .._utils import moduleFactoryFactory - -tag_regexp = re.compile("{([^}]*)}(.*)") - - -def getETreeBuilder(ElementTreeImplementation): - ElementTree = ElementTreeImplementation - ElementTreeCommentType = ElementTree.Comment("asd").tag - - class TreeWalker(base.NonRecursiveTreeWalker): # pylint:disable=unused-variable - """Given the particular ElementTree representation, this implementation, - to avoid using recursion, returns "nodes" as tuples with the following - content: - - 1. The current element - - 2. The index of the element relative to its parent - - 3. A stack of ancestor elements - - 4. A flag "text", "tail" or None to indicate if the current node is a - text node; either the text or tail of the current element (1) - """ - def getNodeDetails(self, node): - if isinstance(node, tuple): # It might be the root Element - elt, _, _, flag = node - if flag in ("text", "tail"): - return base.TEXT, getattr(elt, flag) - else: - node = elt - - if not(hasattr(node, "tag")): - node = node.getroot() - - if node.tag in ("DOCUMENT_ROOT", "DOCUMENT_FRAGMENT"): - return (base.DOCUMENT,) - - elif node.tag == "<!DOCTYPE>": - return (base.DOCTYPE, node.text, - node.get("publicId"), node.get("systemId")) - - elif node.tag == ElementTreeCommentType: - return base.COMMENT, node.text - - else: - assert isinstance(node.tag, string_types), type(node.tag) - # This is assumed to be an ordinary element - match = tag_regexp.match(node.tag) - if match: - namespace, tag = match.groups() - else: - namespace = None - tag = node.tag - attrs = OrderedDict() - for name, value in list(node.attrib.items()): - match = tag_regexp.match(name) - if match: - attrs[(match.group(1), match.group(2))] = value - else: - attrs[(None, name)] = value - return (base.ELEMENT, namespace, tag, - attrs, len(node) or node.text) - - def getFirstChild(self, node): - if isinstance(node, tuple): - element, key, parents, flag = node - else: - element, key, parents, flag = node, None, [], None - - if flag in ("text", "tail"): - return None - else: - if element.text: - return element, key, parents, "text" - elif len(element): - parents.append(element) - return element[0], 0, parents, None - else: - return None - - def getNextSibling(self, node): - if isinstance(node, tuple): - element, key, parents, flag = node - else: - return None - - if flag == "text": - if len(element): - parents.append(element) - return element[0], 0, parents, None - else: - return None - else: - if element.tail and flag != "tail": - return element, key, parents, "tail" - elif key < len(parents[-1]) - 1: - return parents[-1][key + 1], key + 1, parents, None - else: - return None - - def getParentNode(self, node): - if isinstance(node, tuple): - element, key, parents, flag = node - else: - return None - - if flag == "text": - if not parents: - return element - else: - return element, key, parents, None - else: - parent = parents.pop() - if not parents: - return parent - else: - assert list(parents[-1]).count(parent) == 1 - return parent, list(parents[-1]).index(parent), parents, None - - return locals() - -getETreeModule = moduleFactoryFactory(getETreeBuilder) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree_lxml.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree_lxml.py deleted file mode 100644 index f6f395a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/etree_lxml.py +++ /dev/null @@ -1,213 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import text_type - -from lxml import etree -from ..treebuilders.etree import tag_regexp - -from . import base - -from .. import _ihatexml - - -def ensure_str(s): - if s is None: - return None - elif isinstance(s, text_type): - return s - else: - return s.decode("ascii", "strict") - - -class Root(object): - def __init__(self, et): - self.elementtree = et - self.children = [] - - try: - if et.docinfo.internalDTD: - self.children.append(Doctype(self, - ensure_str(et.docinfo.root_name), - ensure_str(et.docinfo.public_id), - ensure_str(et.docinfo.system_url))) - except AttributeError: - pass - - try: - node = et.getroot() - except AttributeError: - node = et - - while node.getprevious() is not None: - node = node.getprevious() - while node is not None: - self.children.append(node) - node = node.getnext() - - self.text = None - self.tail = None - - def __getitem__(self, key): - return self.children[key] - - def getnext(self): - return None - - def __len__(self): - return 1 - - -class Doctype(object): - def __init__(self, root_node, name, public_id, system_id): - self.root_node = root_node - self.name = name - self.public_id = public_id - self.system_id = system_id - - self.text = None - self.tail = None - - def getnext(self): - return self.root_node.children[1] - - -class FragmentRoot(Root): - def __init__(self, children): - self.children = [FragmentWrapper(self, child) for child in children] - self.text = self.tail = None - - def getnext(self): - return None - - -class FragmentWrapper(object): - def __init__(self, fragment_root, obj): - self.root_node = fragment_root - self.obj = obj - if hasattr(self.obj, 'text'): - self.text = ensure_str(self.obj.text) - else: - self.text = None - if hasattr(self.obj, 'tail'): - self.tail = ensure_str(self.obj.tail) - else: - self.tail = None - - def __getattr__(self, name): - return getattr(self.obj, name) - - def getnext(self): - siblings = self.root_node.children - idx = siblings.index(self) - if idx < len(siblings) - 1: - return siblings[idx + 1] - else: - return None - - def __getitem__(self, key): - return self.obj[key] - - def __bool__(self): - return bool(self.obj) - - def getparent(self): - return None - - def __str__(self): - return str(self.obj) - - def __unicode__(self): - return str(self.obj) - - def __len__(self): - return len(self.obj) - - -class TreeWalker(base.NonRecursiveTreeWalker): - def __init__(self, tree): - # pylint:disable=redefined-variable-type - if isinstance(tree, list): - self.fragmentChildren = set(tree) - tree = FragmentRoot(tree) - else: - self.fragmentChildren = set() - tree = Root(tree) - base.NonRecursiveTreeWalker.__init__(self, tree) - self.filter = _ihatexml.InfosetFilter() - - def getNodeDetails(self, node): - if isinstance(node, tuple): # Text node - node, key = node - assert key in ("text", "tail"), "Text nodes are text or tail, found %s" % key - return base.TEXT, ensure_str(getattr(node, key)) - - elif isinstance(node, Root): - return (base.DOCUMENT,) - - elif isinstance(node, Doctype): - return base.DOCTYPE, node.name, node.public_id, node.system_id - - elif isinstance(node, FragmentWrapper) and not hasattr(node, "tag"): - return base.TEXT, ensure_str(node.obj) - - elif node.tag == etree.Comment: - return base.COMMENT, ensure_str(node.text) - - elif node.tag == etree.Entity: - return base.ENTITY, ensure_str(node.text)[1:-1] # strip &; - - else: - # This is assumed to be an ordinary element - match = tag_regexp.match(ensure_str(node.tag)) - if match: - namespace, tag = match.groups() - else: - namespace = None - tag = ensure_str(node.tag) - attrs = {} - for name, value in list(node.attrib.items()): - name = ensure_str(name) - value = ensure_str(value) - match = tag_regexp.match(name) - if match: - attrs[(match.group(1), match.group(2))] = value - else: - attrs[(None, name)] = value - return (base.ELEMENT, namespace, self.filter.fromXmlName(tag), - attrs, len(node) > 0 or node.text) - - def getFirstChild(self, node): - assert not isinstance(node, tuple), "Text nodes have no children" - - assert len(node) or node.text, "Node has no children" - if node.text: - return (node, "text") - else: - return node[0] - - def getNextSibling(self, node): - if isinstance(node, tuple): # Text node - node, key = node - assert key in ("text", "tail"), "Text nodes are text or tail, found %s" % key - if key == "text": - # XXX: we cannot use a "bool(node) and node[0] or None" construct here - # because node[0] might evaluate to False if it has no child element - if len(node): - return node[0] - else: - return None - else: # tail - return node.getnext() - - return (node, "tail") if node.tail else node.getnext() - - def getParentNode(self, node): - if isinstance(node, tuple): # Text node - node, key = node - assert key in ("text", "tail"), "Text nodes are text or tail, found %s" % key - if key == "text": - return node - # else: fallback to "normal" processing - elif node in self.fragmentChildren: - return None - - return node.getparent() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/genshi.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/genshi.py deleted file mode 100644 index 42cd559..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/html5lib/treewalkers/genshi.py +++ /dev/null @@ -1,69 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from genshi.core import QName -from genshi.core import START, END, XML_NAMESPACE, DOCTYPE, TEXT -from genshi.core import START_NS, END_NS, START_CDATA, END_CDATA, PI, COMMENT - -from . import base - -from ..constants import voidElements, namespaces - - -class TreeWalker(base.TreeWalker): - def __iter__(self): - # Buffer the events so we can pass in the following one - previous = None - for event in self.tree: - if previous is not None: - for token in self.tokens(previous, event): - yield token - previous = event - - # Don't forget the final event! - if previous is not None: - for token in self.tokens(previous, None): - yield token - - def tokens(self, event, next): - kind, data, _ = event - if kind == START: - tag, attribs = data - name = tag.localname - namespace = tag.namespace - converted_attribs = {} - for k, v in attribs: - if isinstance(k, QName): - converted_attribs[(k.namespace, k.localname)] = v - else: - converted_attribs[(None, k)] = v - - if namespace == namespaces["html"] and name in voidElements: - for token in self.emptyTag(namespace, name, converted_attribs, - not next or next[0] != END or - next[1] != tag): - yield token - else: - yield self.startTag(namespace, name, converted_attribs) - - elif kind == END: - name = data.localname - namespace = data.namespace - if namespace != namespaces["html"] or name not in voidElements: - yield self.endTag(namespace, name) - - elif kind == COMMENT: - yield self.comment(data) - - elif kind == TEXT: - for token in self.text(data): - yield token - - elif kind == DOCTYPE: - yield self.doctype(*data) - - elif kind in (XML_NAMESPACE, DOCTYPE, START_NS, END_NS, - START_CDATA, END_CDATA, PI): - pass - - else: - yield self.unknown(kind) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/__init__.py deleted file mode 100644 index 4ed56a1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from .package_data import __version__ -from .core import * diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/codec.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/codec.py deleted file mode 100644 index 65b06e2..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/codec.py +++ /dev/null @@ -1,118 +0,0 @@ -from .core import encode, decode, alabel, ulabel, IDNAError -import codecs -import re - -_unicode_dots_re = re.compile(u'[\u002e\u3002\uff0e\uff61]') - -class Codec(codecs.Codec): - - def encode(self, data, errors='strict'): - - if errors != 'strict': - raise IDNAError("Unsupported error handling \"{0}\"".format(errors)) - - if not data: - return "", 0 - - return encode(data), len(data) - - def decode(self, data, errors='strict'): - - if errors != 'strict': - raise IDNAError("Unsupported error handling \"{0}\"".format(errors)) - - if not data: - return u"", 0 - - return decode(data), len(data) - -class IncrementalEncoder(codecs.BufferedIncrementalEncoder): - def _buffer_encode(self, data, errors, final): - if errors != 'strict': - raise IDNAError("Unsupported error handling \"{0}\"".format(errors)) - - if not data: - return ("", 0) - - labels = _unicode_dots_re.split(data) - trailing_dot = u'' - if labels: - if not labels[-1]: - trailing_dot = '.' - del labels[-1] - elif not final: - # Keep potentially unfinished label until the next call - del labels[-1] - if labels: - trailing_dot = '.' - - result = [] - size = 0 - for label in labels: - result.append(alabel(label)) - if size: - size += 1 - size += len(label) - - # Join with U+002E - result = ".".join(result) + trailing_dot - size += len(trailing_dot) - return (result, size) - -class IncrementalDecoder(codecs.BufferedIncrementalDecoder): - def _buffer_decode(self, data, errors, final): - if errors != 'strict': - raise IDNAError("Unsupported error handling \"{0}\"".format(errors)) - - if not data: - return (u"", 0) - - # IDNA allows decoding to operate on Unicode strings, too. - if isinstance(data, unicode): - labels = _unicode_dots_re.split(data) - else: - # Must be ASCII string - data = str(data) - unicode(data, "ascii") - labels = data.split(".") - - trailing_dot = u'' - if labels: - if not labels[-1]: - trailing_dot = u'.' - del labels[-1] - elif not final: - # Keep potentially unfinished label until the next call - del labels[-1] - if labels: - trailing_dot = u'.' - - result = [] - size = 0 - for label in labels: - result.append(ulabel(label)) - if size: - size += 1 - size += len(label) - - result = u".".join(result) + trailing_dot - size += len(trailing_dot) - return (result, size) - - -class StreamWriter(Codec, codecs.StreamWriter): - pass - -class StreamReader(Codec, codecs.StreamReader): - pass - -def getregentry(): - return codecs.CodecInfo( - name='idna', - encode=Codec().encode, - decode=Codec().decode, - incrementalencoder=IncrementalEncoder, - incrementaldecoder=IncrementalDecoder, - streamwriter=StreamWriter, - streamreader=StreamReader, - ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/compat.py deleted file mode 100644 index f4d3f6d..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/compat.py +++ /dev/null @@ -1,12 +0,0 @@ -from .core import * -from .codec import * - -def ToASCII(label): - return encode(label) - -def ToUnicode(label): - return decode(label) - -def nameprep(s): - raise NotImplementedError("IDNA 2008 does not utilise nameprep protocol") - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/core.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/core.py deleted file mode 100644 index 944ff98..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/core.py +++ /dev/null @@ -1,387 +0,0 @@ -from . import idnadata -import bisect -import unicodedata -import re -import sys -from .intranges import intranges_contain - -_virama_combining_class = 9 -_alabel_prefix = b'xn--' -_unicode_dots_re = re.compile(u'[\u002e\u3002\uff0e\uff61]') - -if sys.version_info[0] == 3: - unicode = str - unichr = chr - -class IDNAError(UnicodeError): - """ Base exception for all IDNA-encoding related problems """ - pass - - -class IDNABidiError(IDNAError): - """ Exception when bidirectional requirements are not satisfied """ - pass - - -class InvalidCodepoint(IDNAError): - """ Exception when a disallowed or unallocated codepoint is used """ - pass - - -class InvalidCodepointContext(IDNAError): - """ Exception when the codepoint is not valid in the context it is used """ - pass - - -def _combining_class(cp): - return unicodedata.combining(unichr(cp)) - -def _is_script(cp, script): - return intranges_contain(ord(cp), idnadata.scripts[script]) - -def _punycode(s): - return s.encode('punycode') - -def _unot(s): - return 'U+{0:04X}'.format(s) - - -def valid_label_length(label): - - if len(label) > 63: - return False - return True - - -def valid_string_length(label, trailing_dot): - - if len(label) > (254 if trailing_dot else 253): - return False - return True - - -def check_bidi(label, check_ltr=False): - - # Bidi rules should only be applied if string contains RTL characters - bidi_label = False - for (idx, cp) in enumerate(label, 1): - direction = unicodedata.bidirectional(cp) - if direction == '': - # String likely comes from a newer version of Unicode - raise IDNABidiError('Unknown directionality in label {0} at position {1}'.format(repr(label), idx)) - if direction in ['R', 'AL', 'AN']: - bidi_label = True - break - if not bidi_label and not check_ltr: - return True - - # Bidi rule 1 - direction = unicodedata.bidirectional(label[0]) - if direction in ['R', 'AL']: - rtl = True - elif direction == 'L': - rtl = False - else: - raise IDNABidiError('First codepoint in label {0} must be directionality L, R or AL'.format(repr(label))) - - valid_ending = False - number_type = False - for (idx, cp) in enumerate(label, 1): - direction = unicodedata.bidirectional(cp) - - if rtl: - # Bidi rule 2 - if not direction in ['R', 'AL', 'AN', 'EN', 'ES', 'CS', 'ET', 'ON', 'BN', 'NSM']: - raise IDNABidiError('Invalid direction for codepoint at position {0} in a right-to-left label'.format(idx)) - # Bidi rule 3 - if direction in ['R', 'AL', 'EN', 'AN']: - valid_ending = True - elif direction != 'NSM': - valid_ending = False - # Bidi rule 4 - if direction in ['AN', 'EN']: - if not number_type: - number_type = direction - else: - if number_type != direction: - raise IDNABidiError('Can not mix numeral types in a right-to-left label') - else: - # Bidi rule 5 - if not direction in ['L', 'EN', 'ES', 'CS', 'ET', 'ON', 'BN', 'NSM']: - raise IDNABidiError('Invalid direction for codepoint at position {0} in a left-to-right label'.format(idx)) - # Bidi rule 6 - if direction in ['L', 'EN']: - valid_ending = True - elif direction != 'NSM': - valid_ending = False - - if not valid_ending: - raise IDNABidiError('Label ends with illegal codepoint directionality') - - return True - - -def check_initial_combiner(label): - - if unicodedata.category(label[0])[0] == 'M': - raise IDNAError('Label begins with an illegal combining character') - return True - - -def check_hyphen_ok(label): - - if label[2:4] == '--': - raise IDNAError('Label has disallowed hyphens in 3rd and 4th position') - if label[0] == '-' or label[-1] == '-': - raise IDNAError('Label must not start or end with a hyphen') - return True - - -def check_nfc(label): - - if unicodedata.normalize('NFC', label) != label: - raise IDNAError('Label must be in Normalization Form C') - - -def valid_contextj(label, pos): - - cp_value = ord(label[pos]) - - if cp_value == 0x200c: - - if pos > 0: - if _combining_class(ord(label[pos - 1])) == _virama_combining_class: - return True - - ok = False - for i in range(pos-1, -1, -1): - joining_type = idnadata.joining_types.get(ord(label[i])) - if joining_type == ord('T'): - continue - if joining_type in [ord('L'), ord('D')]: - ok = True - break - - if not ok: - return False - - ok = False - for i in range(pos+1, len(label)): - joining_type = idnadata.joining_types.get(ord(label[i])) - if joining_type == ord('T'): - continue - if joining_type in [ord('R'), ord('D')]: - ok = True - break - return ok - - if cp_value == 0x200d: - - if pos > 0: - if _combining_class(ord(label[pos - 1])) == _virama_combining_class: - return True - return False - - else: - - return False - - -def valid_contexto(label, pos, exception=False): - - cp_value = ord(label[pos]) - - if cp_value == 0x00b7: - if 0 < pos < len(label)-1: - if ord(label[pos - 1]) == 0x006c and ord(label[pos + 1]) == 0x006c: - return True - return False - - elif cp_value == 0x0375: - if pos < len(label)-1 and len(label) > 1: - return _is_script(label[pos + 1], 'Greek') - return False - - elif cp_value == 0x05f3 or cp_value == 0x05f4: - if pos > 0: - return _is_script(label[pos - 1], 'Hebrew') - return False - - elif cp_value == 0x30fb: - for cp in label: - if cp == u'\u30fb': - continue - if _is_script(cp, 'Hiragana') or _is_script(cp, 'Katakana') or _is_script(cp, 'Han'): - return True - return False - - elif 0x660 <= cp_value <= 0x669: - for cp in label: - if 0x6f0 <= ord(cp) <= 0x06f9: - return False - return True - - elif 0x6f0 <= cp_value <= 0x6f9: - for cp in label: - if 0x660 <= ord(cp) <= 0x0669: - return False - return True - - -def check_label(label): - - if isinstance(label, (bytes, bytearray)): - label = label.decode('utf-8') - if len(label) == 0: - raise IDNAError('Empty Label') - - check_nfc(label) - check_hyphen_ok(label) - check_initial_combiner(label) - - for (pos, cp) in enumerate(label): - cp_value = ord(cp) - if intranges_contain(cp_value, idnadata.codepoint_classes['PVALID']): - continue - elif intranges_contain(cp_value, idnadata.codepoint_classes['CONTEXTJ']): - if not valid_contextj(label, pos): - raise InvalidCodepointContext('Joiner {0} not allowed at position {1} in {2}'.format(_unot(cp_value), pos+1, repr(label))) - elif intranges_contain(cp_value, idnadata.codepoint_classes['CONTEXTO']): - if not valid_contexto(label, pos): - raise InvalidCodepointContext('Codepoint {0} not allowed at position {1} in {2}'.format(_unot(cp_value), pos+1, repr(label))) - else: - raise InvalidCodepoint('Codepoint {0} at position {1} of {2} not allowed'.format(_unot(cp_value), pos+1, repr(label))) - - check_bidi(label) - - -def alabel(label): - - try: - label = label.encode('ascii') - try: - ulabel(label) - except IDNAError: - raise IDNAError('The label {0} is not a valid A-label'.format(label)) - if not valid_label_length(label): - raise IDNAError('Label too long') - return label - except UnicodeEncodeError: - pass - - if not label: - raise IDNAError('No Input') - - label = unicode(label) - check_label(label) - label = _punycode(label) - label = _alabel_prefix + label - - if not valid_label_length(label): - raise IDNAError('Label too long') - - return label - - -def ulabel(label): - - if not isinstance(label, (bytes, bytearray)): - try: - label = label.encode('ascii') - except UnicodeEncodeError: - check_label(label) - return label - - label = label.lower() - if label.startswith(_alabel_prefix): - label = label[len(_alabel_prefix):] - else: - check_label(label) - return label.decode('ascii') - - label = label.decode('punycode') - check_label(label) - return label - - -def uts46_remap(domain, std3_rules=True, transitional=False): - """Re-map the characters in the string according to UTS46 processing.""" - from .uts46data import uts46data - output = u"" - try: - for pos, char in enumerate(domain): - code_point = ord(char) - uts46row = uts46data[code_point if code_point < 256 else - bisect.bisect_left(uts46data, (code_point, "Z")) - 1] - status = uts46row[1] - replacement = uts46row[2] if len(uts46row) == 3 else None - if (status == "V" or - (status == "D" and not transitional) or - (status == "3" and std3_rules and replacement is None)): - output += char - elif replacement is not None and (status == "M" or - (status == "3" and std3_rules) or - (status == "D" and transitional)): - output += replacement - elif status != "I": - raise IndexError() - return unicodedata.normalize("NFC", output) - except IndexError: - raise InvalidCodepoint( - "Codepoint {0} not allowed at position {1} in {2}".format( - _unot(code_point), pos + 1, repr(domain))) - - -def encode(s, strict=False, uts46=False, std3_rules=False, transitional=False): - - if isinstance(s, (bytes, bytearray)): - s = s.decode("ascii") - if uts46: - s = uts46_remap(s, std3_rules, transitional) - trailing_dot = False - result = [] - if strict: - labels = s.split('.') - else: - labels = _unicode_dots_re.split(s) - while labels and not labels[0]: - del labels[0] - if not labels: - raise IDNAError('Empty domain') - if labels[-1] == '': - del labels[-1] - trailing_dot = True - for label in labels: - result.append(alabel(label)) - if trailing_dot: - result.append(b'') - s = b'.'.join(result) - if not valid_string_length(s, trailing_dot): - raise IDNAError('Domain too long') - return s - - -def decode(s, strict=False, uts46=False, std3_rules=False): - - if isinstance(s, (bytes, bytearray)): - s = s.decode("ascii") - if uts46: - s = uts46_remap(s, std3_rules, False) - trailing_dot = False - result = [] - if not strict: - labels = _unicode_dots_re.split(s) - else: - labels = s.split(u'.') - while labels and not labels[0]: - del labels[0] - if not labels: - raise IDNAError('Empty domain') - if not labels[-1]: - del labels[-1] - trailing_dot = True - for label in labels: - result.append(ulabel(label)) - if trailing_dot: - result.append(u'') - return u'.'.join(result) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/idnadata.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/idnadata.py deleted file mode 100644 index c197a69..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/idnadata.py +++ /dev/null @@ -1,1585 +0,0 @@ -# This file is automatically generated by tools/idna-data - -__version__ = "6.3.0" -scripts = { - 'Greek': ( - 0x37000000374, - 0x37500000378, - 0x37a0000037e, - 0x38400000385, - 0x38600000387, - 0x3880000038b, - 0x38c0000038d, - 0x38e000003a2, - 0x3a3000003e2, - 0x3f000000400, - 0x1d2600001d2b, - 0x1d5d00001d62, - 0x1d6600001d6b, - 0x1dbf00001dc0, - 0x1f0000001f16, - 0x1f1800001f1e, - 0x1f2000001f46, - 0x1f4800001f4e, - 0x1f5000001f58, - 0x1f5900001f5a, - 0x1f5b00001f5c, - 0x1f5d00001f5e, - 0x1f5f00001f7e, - 0x1f8000001fb5, - 0x1fb600001fc5, - 0x1fc600001fd4, - 0x1fd600001fdc, - 0x1fdd00001ff0, - 0x1ff200001ff5, - 0x1ff600001fff, - 0x212600002127, - 0x101400001018b, - 0x1d2000001d246, - ), - 'Han': ( - 0x2e8000002e9a, - 0x2e9b00002ef4, - 0x2f0000002fd6, - 0x300500003006, - 0x300700003008, - 0x30210000302a, - 0x30380000303c, - 0x340000004db6, - 0x4e0000009fcd, - 0xf9000000fa6e, - 0xfa700000fada, - 0x200000002a6d7, - 0x2a7000002b735, - 0x2b7400002b81e, - 0x2f8000002fa1e, - ), - 'Hebrew': ( - 0x591000005c8, - 0x5d0000005eb, - 0x5f0000005f5, - 0xfb1d0000fb37, - 0xfb380000fb3d, - 0xfb3e0000fb3f, - 0xfb400000fb42, - 0xfb430000fb45, - 0xfb460000fb50, - ), - 'Hiragana': ( - 0x304100003097, - 0x309d000030a0, - 0x1b0010001b002, - 0x1f2000001f201, - ), - 'Katakana': ( - 0x30a1000030fb, - 0x30fd00003100, - 0x31f000003200, - 0x32d0000032ff, - 0x330000003358, - 0xff660000ff70, - 0xff710000ff9e, - 0x1b0000001b001, - ), -} -joining_types = { - 0x600: 85, - 0x601: 85, - 0x602: 85, - 0x603: 85, - 0x604: 85, - 0x608: 85, - 0x60b: 85, - 0x620: 68, - 0x621: 85, - 0x622: 82, - 0x623: 82, - 0x624: 82, - 0x625: 82, - 0x626: 68, - 0x627: 82, - 0x628: 68, - 0x629: 82, - 0x62a: 68, - 0x62b: 68, - 0x62c: 68, - 0x62d: 68, - 0x62e: 68, - 0x62f: 82, - 0x630: 82, - 0x631: 82, - 0x632: 82, - 0x633: 68, - 0x634: 68, - 0x635: 68, - 0x636: 68, - 0x637: 68, - 0x638: 68, - 0x639: 68, - 0x63a: 68, - 0x63b: 68, - 0x63c: 68, - 0x63d: 68, - 0x63e: 68, - 0x63f: 68, - 0x640: 67, - 0x641: 68, - 0x642: 68, - 0x643: 68, - 0x644: 68, - 0x645: 68, - 0x646: 68, - 0x647: 68, - 0x648: 82, - 0x649: 68, - 0x64a: 68, - 0x66e: 68, - 0x66f: 68, - 0x671: 82, - 0x672: 82, - 0x673: 82, - 0x674: 85, - 0x675: 82, - 0x676: 82, - 0x677: 82, - 0x678: 68, - 0x679: 68, - 0x67a: 68, - 0x67b: 68, - 0x67c: 68, - 0x67d: 68, - 0x67e: 68, - 0x67f: 68, - 0x680: 68, - 0x681: 68, - 0x682: 68, - 0x683: 68, - 0x684: 68, - 0x685: 68, - 0x686: 68, - 0x687: 68, - 0x688: 82, - 0x689: 82, - 0x68a: 82, - 0x68b: 82, - 0x68c: 82, - 0x68d: 82, - 0x68e: 82, - 0x68f: 82, - 0x690: 82, - 0x691: 82, - 0x692: 82, - 0x693: 82, - 0x694: 82, - 0x695: 82, - 0x696: 82, - 0x697: 82, - 0x698: 82, - 0x699: 82, - 0x69a: 68, - 0x69b: 68, - 0x69c: 68, - 0x69d: 68, - 0x69e: 68, - 0x69f: 68, - 0x6a0: 68, - 0x6a1: 68, - 0x6a2: 68, - 0x6a3: 68, - 0x6a4: 68, - 0x6a5: 68, - 0x6a6: 68, - 0x6a7: 68, - 0x6a8: 68, - 0x6a9: 68, - 0x6aa: 68, - 0x6ab: 68, - 0x6ac: 68, - 0x6ad: 68, - 0x6ae: 68, - 0x6af: 68, - 0x6b0: 68, - 0x6b1: 68, - 0x6b2: 68, - 0x6b3: 68, - 0x6b4: 68, - 0x6b5: 68, - 0x6b6: 68, - 0x6b7: 68, - 0x6b8: 68, - 0x6b9: 68, - 0x6ba: 68, - 0x6bb: 68, - 0x6bc: 68, - 0x6bd: 68, - 0x6be: 68, - 0x6bf: 68, - 0x6c0: 82, - 0x6c1: 68, - 0x6c2: 68, - 0x6c3: 82, - 0x6c4: 82, - 0x6c5: 82, - 0x6c6: 82, - 0x6c7: 82, - 0x6c8: 82, - 0x6c9: 82, - 0x6ca: 82, - 0x6cb: 82, - 0x6cc: 68, - 0x6cd: 82, - 0x6ce: 68, - 0x6cf: 82, - 0x6d0: 68, - 0x6d1: 68, - 0x6d2: 82, - 0x6d3: 82, - 0x6d5: 82, - 0x6dd: 85, - 0x6ee: 82, - 0x6ef: 82, - 0x6fa: 68, - 0x6fb: 68, - 0x6fc: 68, - 0x6ff: 68, - 0x710: 82, - 0x712: 68, - 0x713: 68, - 0x714: 68, - 0x715: 82, - 0x716: 82, - 0x717: 82, - 0x718: 82, - 0x719: 82, - 0x71a: 68, - 0x71b: 68, - 0x71c: 68, - 0x71d: 68, - 0x71e: 82, - 0x71f: 68, - 0x720: 68, - 0x721: 68, - 0x722: 68, - 0x723: 68, - 0x724: 68, - 0x725: 68, - 0x726: 68, - 0x727: 68, - 0x728: 82, - 0x729: 68, - 0x72a: 82, - 0x72b: 68, - 0x72c: 82, - 0x72d: 68, - 0x72e: 68, - 0x72f: 82, - 0x74d: 82, - 0x74e: 68, - 0x74f: 68, - 0x750: 68, - 0x751: 68, - 0x752: 68, - 0x753: 68, - 0x754: 68, - 0x755: 68, - 0x756: 68, - 0x757: 68, - 0x758: 68, - 0x759: 82, - 0x75a: 82, - 0x75b: 82, - 0x75c: 68, - 0x75d: 68, - 0x75e: 68, - 0x75f: 68, - 0x760: 68, - 0x761: 68, - 0x762: 68, - 0x763: 68, - 0x764: 68, - 0x765: 68, - 0x766: 68, - 0x767: 68, - 0x768: 68, - 0x769: 68, - 0x76a: 68, - 0x76b: 82, - 0x76c: 82, - 0x76d: 68, - 0x76e: 68, - 0x76f: 68, - 0x770: 68, - 0x771: 82, - 0x772: 68, - 0x773: 82, - 0x774: 82, - 0x775: 68, - 0x776: 68, - 0x777: 68, - 0x778: 82, - 0x779: 82, - 0x77a: 68, - 0x77b: 68, - 0x77c: 68, - 0x77d: 68, - 0x77e: 68, - 0x77f: 68, - 0x7ca: 68, - 0x7cb: 68, - 0x7cc: 68, - 0x7cd: 68, - 0x7ce: 68, - 0x7cf: 68, - 0x7d0: 68, - 0x7d1: 68, - 0x7d2: 68, - 0x7d3: 68, - 0x7d4: 68, - 0x7d5: 68, - 0x7d6: 68, - 0x7d7: 68, - 0x7d8: 68, - 0x7d9: 68, - 0x7da: 68, - 0x7db: 68, - 0x7dc: 68, - 0x7dd: 68, - 0x7de: 68, - 0x7df: 68, - 0x7e0: 68, - 0x7e1: 68, - 0x7e2: 68, - 0x7e3: 68, - 0x7e4: 68, - 0x7e5: 68, - 0x7e6: 68, - 0x7e7: 68, - 0x7e8: 68, - 0x7e9: 68, - 0x7ea: 68, - 0x7fa: 67, - 0x840: 82, - 0x841: 68, - 0x842: 68, - 0x843: 68, - 0x844: 68, - 0x845: 68, - 0x846: 82, - 0x847: 68, - 0x848: 68, - 0x849: 82, - 0x84a: 68, - 0x84b: 68, - 0x84c: 68, - 0x84d: 68, - 0x84e: 68, - 0x84f: 82, - 0x850: 68, - 0x851: 68, - 0x852: 68, - 0x853: 68, - 0x854: 82, - 0x855: 68, - 0x856: 85, - 0x857: 85, - 0x858: 85, - 0x8a0: 68, - 0x8a2: 68, - 0x8a3: 68, - 0x8a4: 68, - 0x8a5: 68, - 0x8a6: 68, - 0x8a7: 68, - 0x8a8: 68, - 0x8a9: 68, - 0x8aa: 82, - 0x8ab: 82, - 0x8ac: 82, - 0x1806: 85, - 0x1807: 68, - 0x180a: 67, - 0x180e: 85, - 0x1820: 68, - 0x1821: 68, - 0x1822: 68, - 0x1823: 68, - 0x1824: 68, - 0x1825: 68, - 0x1826: 68, - 0x1827: 68, - 0x1828: 68, - 0x1829: 68, - 0x182a: 68, - 0x182b: 68, - 0x182c: 68, - 0x182d: 68, - 0x182e: 68, - 0x182f: 68, - 0x1830: 68, - 0x1831: 68, - 0x1832: 68, - 0x1833: 68, - 0x1834: 68, - 0x1835: 68, - 0x1836: 68, - 0x1837: 68, - 0x1838: 68, - 0x1839: 68, - 0x183a: 68, - 0x183b: 68, - 0x183c: 68, - 0x183d: 68, - 0x183e: 68, - 0x183f: 68, - 0x1840: 68, - 0x1841: 68, - 0x1842: 68, - 0x1843: 68, - 0x1844: 68, - 0x1845: 68, - 0x1846: 68, - 0x1847: 68, - 0x1848: 68, - 0x1849: 68, - 0x184a: 68, - 0x184b: 68, - 0x184c: 68, - 0x184d: 68, - 0x184e: 68, - 0x184f: 68, - 0x1850: 68, - 0x1851: 68, - 0x1852: 68, - 0x1853: 68, - 0x1854: 68, - 0x1855: 68, - 0x1856: 68, - 0x1857: 68, - 0x1858: 68, - 0x1859: 68, - 0x185a: 68, - 0x185b: 68, - 0x185c: 68, - 0x185d: 68, - 0x185e: 68, - 0x185f: 68, - 0x1860: 68, - 0x1861: 68, - 0x1862: 68, - 0x1863: 68, - 0x1864: 68, - 0x1865: 68, - 0x1866: 68, - 0x1867: 68, - 0x1868: 68, - 0x1869: 68, - 0x186a: 68, - 0x186b: 68, - 0x186c: 68, - 0x186d: 68, - 0x186e: 68, - 0x186f: 68, - 0x1870: 68, - 0x1871: 68, - 0x1872: 68, - 0x1873: 68, - 0x1874: 68, - 0x1875: 68, - 0x1876: 68, - 0x1877: 68, - 0x1880: 85, - 0x1881: 85, - 0x1882: 85, - 0x1883: 85, - 0x1884: 85, - 0x1885: 85, - 0x1886: 85, - 0x1887: 68, - 0x1888: 68, - 0x1889: 68, - 0x188a: 68, - 0x188b: 68, - 0x188c: 68, - 0x188d: 68, - 0x188e: 68, - 0x188f: 68, - 0x1890: 68, - 0x1891: 68, - 0x1892: 68, - 0x1893: 68, - 0x1894: 68, - 0x1895: 68, - 0x1896: 68, - 0x1897: 68, - 0x1898: 68, - 0x1899: 68, - 0x189a: 68, - 0x189b: 68, - 0x189c: 68, - 0x189d: 68, - 0x189e: 68, - 0x189f: 68, - 0x18a0: 68, - 0x18a1: 68, - 0x18a2: 68, - 0x18a3: 68, - 0x18a4: 68, - 0x18a5: 68, - 0x18a6: 68, - 0x18a7: 68, - 0x18a8: 68, - 0x18aa: 68, - 0x200c: 85, - 0x200d: 67, - 0x2066: 85, - 0x2067: 85, - 0x2068: 85, - 0x2069: 85, - 0xa840: 68, - 0xa841: 68, - 0xa842: 68, - 0xa843: 68, - 0xa844: 68, - 0xa845: 68, - 0xa846: 68, - 0xa847: 68, - 0xa848: 68, - 0xa849: 68, - 0xa84a: 68, - 0xa84b: 68, - 0xa84c: 68, - 0xa84d: 68, - 0xa84e: 68, - 0xa84f: 68, - 0xa850: 68, - 0xa851: 68, - 0xa852: 68, - 0xa853: 68, - 0xa854: 68, - 0xa855: 68, - 0xa856: 68, - 0xa857: 68, - 0xa858: 68, - 0xa859: 68, - 0xa85a: 68, - 0xa85b: 68, - 0xa85c: 68, - 0xa85d: 68, - 0xa85e: 68, - 0xa85f: 68, - 0xa860: 68, - 0xa861: 68, - 0xa862: 68, - 0xa863: 68, - 0xa864: 68, - 0xa865: 68, - 0xa866: 68, - 0xa867: 68, - 0xa868: 68, - 0xa869: 68, - 0xa86a: 68, - 0xa86b: 68, - 0xa86c: 68, - 0xa86d: 68, - 0xa86e: 68, - 0xa86f: 68, - 0xa870: 68, - 0xa871: 68, - 0xa872: 76, - 0xa873: 85, -} -codepoint_classes = { - 'PVALID': ( - 0x2d0000002e, - 0x300000003a, - 0x610000007b, - 0xdf000000f7, - 0xf800000100, - 0x10100000102, - 0x10300000104, - 0x10500000106, - 0x10700000108, - 0x1090000010a, - 0x10b0000010c, - 0x10d0000010e, - 0x10f00000110, - 0x11100000112, - 0x11300000114, - 0x11500000116, - 0x11700000118, - 0x1190000011a, - 0x11b0000011c, - 0x11d0000011e, - 0x11f00000120, - 0x12100000122, - 0x12300000124, - 0x12500000126, - 0x12700000128, - 0x1290000012a, - 0x12b0000012c, - 0x12d0000012e, - 0x12f00000130, - 0x13100000132, - 0x13500000136, - 0x13700000139, - 0x13a0000013b, - 0x13c0000013d, - 0x13e0000013f, - 0x14200000143, - 0x14400000145, - 0x14600000147, - 0x14800000149, - 0x14b0000014c, - 0x14d0000014e, - 0x14f00000150, - 0x15100000152, - 0x15300000154, - 0x15500000156, - 0x15700000158, - 0x1590000015a, - 0x15b0000015c, - 0x15d0000015e, - 0x15f00000160, - 0x16100000162, - 0x16300000164, - 0x16500000166, - 0x16700000168, - 0x1690000016a, - 0x16b0000016c, - 0x16d0000016e, - 0x16f00000170, - 0x17100000172, - 0x17300000174, - 0x17500000176, - 0x17700000178, - 0x17a0000017b, - 0x17c0000017d, - 0x17e0000017f, - 0x18000000181, - 0x18300000184, - 0x18500000186, - 0x18800000189, - 0x18c0000018e, - 0x19200000193, - 0x19500000196, - 0x1990000019c, - 0x19e0000019f, - 0x1a1000001a2, - 0x1a3000001a4, - 0x1a5000001a6, - 0x1a8000001a9, - 0x1aa000001ac, - 0x1ad000001ae, - 0x1b0000001b1, - 0x1b4000001b5, - 0x1b6000001b7, - 0x1b9000001bc, - 0x1bd000001c4, - 0x1ce000001cf, - 0x1d0000001d1, - 0x1d2000001d3, - 0x1d4000001d5, - 0x1d6000001d7, - 0x1d8000001d9, - 0x1da000001db, - 0x1dc000001de, - 0x1df000001e0, - 0x1e1000001e2, - 0x1e3000001e4, - 0x1e5000001e6, - 0x1e7000001e8, - 0x1e9000001ea, - 0x1eb000001ec, - 0x1ed000001ee, - 0x1ef000001f1, - 0x1f5000001f6, - 0x1f9000001fa, - 0x1fb000001fc, - 0x1fd000001fe, - 0x1ff00000200, - 0x20100000202, - 0x20300000204, - 0x20500000206, - 0x20700000208, - 0x2090000020a, - 0x20b0000020c, - 0x20d0000020e, - 0x20f00000210, - 0x21100000212, - 0x21300000214, - 0x21500000216, - 0x21700000218, - 0x2190000021a, - 0x21b0000021c, - 0x21d0000021e, - 0x21f00000220, - 0x22100000222, - 0x22300000224, - 0x22500000226, - 0x22700000228, - 0x2290000022a, - 0x22b0000022c, - 0x22d0000022e, - 0x22f00000230, - 0x23100000232, - 0x2330000023a, - 0x23c0000023d, - 0x23f00000241, - 0x24200000243, - 0x24700000248, - 0x2490000024a, - 0x24b0000024c, - 0x24d0000024e, - 0x24f000002b0, - 0x2b9000002c2, - 0x2c6000002d2, - 0x2ec000002ed, - 0x2ee000002ef, - 0x30000000340, - 0x34200000343, - 0x3460000034f, - 0x35000000370, - 0x37100000372, - 0x37300000374, - 0x37700000378, - 0x37b0000037e, - 0x39000000391, - 0x3ac000003cf, - 0x3d7000003d8, - 0x3d9000003da, - 0x3db000003dc, - 0x3dd000003de, - 0x3df000003e0, - 0x3e1000003e2, - 0x3e3000003e4, - 0x3e5000003e6, - 0x3e7000003e8, - 0x3e9000003ea, - 0x3eb000003ec, - 0x3ed000003ee, - 0x3ef000003f0, - 0x3f3000003f4, - 0x3f8000003f9, - 0x3fb000003fd, - 0x43000000460, - 0x46100000462, - 0x46300000464, - 0x46500000466, - 0x46700000468, - 0x4690000046a, - 0x46b0000046c, - 0x46d0000046e, - 0x46f00000470, - 0x47100000472, - 0x47300000474, - 0x47500000476, - 0x47700000478, - 0x4790000047a, - 0x47b0000047c, - 0x47d0000047e, - 0x47f00000480, - 0x48100000482, - 0x48300000488, - 0x48b0000048c, - 0x48d0000048e, - 0x48f00000490, - 0x49100000492, - 0x49300000494, - 0x49500000496, - 0x49700000498, - 0x4990000049a, - 0x49b0000049c, - 0x49d0000049e, - 0x49f000004a0, - 0x4a1000004a2, - 0x4a3000004a4, - 0x4a5000004a6, - 0x4a7000004a8, - 0x4a9000004aa, - 0x4ab000004ac, - 0x4ad000004ae, - 0x4af000004b0, - 0x4b1000004b2, - 0x4b3000004b4, - 0x4b5000004b6, - 0x4b7000004b8, - 0x4b9000004ba, - 0x4bb000004bc, - 0x4bd000004be, - 0x4bf000004c0, - 0x4c2000004c3, - 0x4c4000004c5, - 0x4c6000004c7, - 0x4c8000004c9, - 0x4ca000004cb, - 0x4cc000004cd, - 0x4ce000004d0, - 0x4d1000004d2, - 0x4d3000004d4, - 0x4d5000004d6, - 0x4d7000004d8, - 0x4d9000004da, - 0x4db000004dc, - 0x4dd000004de, - 0x4df000004e0, - 0x4e1000004e2, - 0x4e3000004e4, - 0x4e5000004e6, - 0x4e7000004e8, - 0x4e9000004ea, - 0x4eb000004ec, - 0x4ed000004ee, - 0x4ef000004f0, - 0x4f1000004f2, - 0x4f3000004f4, - 0x4f5000004f6, - 0x4f7000004f8, - 0x4f9000004fa, - 0x4fb000004fc, - 0x4fd000004fe, - 0x4ff00000500, - 0x50100000502, - 0x50300000504, - 0x50500000506, - 0x50700000508, - 0x5090000050a, - 0x50b0000050c, - 0x50d0000050e, - 0x50f00000510, - 0x51100000512, - 0x51300000514, - 0x51500000516, - 0x51700000518, - 0x5190000051a, - 0x51b0000051c, - 0x51d0000051e, - 0x51f00000520, - 0x52100000522, - 0x52300000524, - 0x52500000526, - 0x52700000528, - 0x5590000055a, - 0x56100000587, - 0x591000005be, - 0x5bf000005c0, - 0x5c1000005c3, - 0x5c4000005c6, - 0x5c7000005c8, - 0x5d0000005eb, - 0x5f0000005f3, - 0x6100000061b, - 0x62000000640, - 0x64100000660, - 0x66e00000675, - 0x679000006d4, - 0x6d5000006dd, - 0x6df000006e9, - 0x6ea000006f0, - 0x6fa00000700, - 0x7100000074b, - 0x74d000007b2, - 0x7c0000007f6, - 0x8000000082e, - 0x8400000085c, - 0x8a0000008a1, - 0x8a2000008ad, - 0x8e4000008ff, - 0x90000000958, - 0x96000000964, - 0x96600000970, - 0x97100000978, - 0x97900000980, - 0x98100000984, - 0x9850000098d, - 0x98f00000991, - 0x993000009a9, - 0x9aa000009b1, - 0x9b2000009b3, - 0x9b6000009ba, - 0x9bc000009c5, - 0x9c7000009c9, - 0x9cb000009cf, - 0x9d7000009d8, - 0x9e0000009e4, - 0x9e6000009f2, - 0xa0100000a04, - 0xa0500000a0b, - 0xa0f00000a11, - 0xa1300000a29, - 0xa2a00000a31, - 0xa3200000a33, - 0xa3500000a36, - 0xa3800000a3a, - 0xa3c00000a3d, - 0xa3e00000a43, - 0xa4700000a49, - 0xa4b00000a4e, - 0xa5100000a52, - 0xa5c00000a5d, - 0xa6600000a76, - 0xa8100000a84, - 0xa8500000a8e, - 0xa8f00000a92, - 0xa9300000aa9, - 0xaaa00000ab1, - 0xab200000ab4, - 0xab500000aba, - 0xabc00000ac6, - 0xac700000aca, - 0xacb00000ace, - 0xad000000ad1, - 0xae000000ae4, - 0xae600000af0, - 0xb0100000b04, - 0xb0500000b0d, - 0xb0f00000b11, - 0xb1300000b29, - 0xb2a00000b31, - 0xb3200000b34, - 0xb3500000b3a, - 0xb3c00000b45, - 0xb4700000b49, - 0xb4b00000b4e, - 0xb5600000b58, - 0xb5f00000b64, - 0xb6600000b70, - 0xb7100000b72, - 0xb8200000b84, - 0xb8500000b8b, - 0xb8e00000b91, - 0xb9200000b96, - 0xb9900000b9b, - 0xb9c00000b9d, - 0xb9e00000ba0, - 0xba300000ba5, - 0xba800000bab, - 0xbae00000bba, - 0xbbe00000bc3, - 0xbc600000bc9, - 0xbca00000bce, - 0xbd000000bd1, - 0xbd700000bd8, - 0xbe600000bf0, - 0xc0100000c04, - 0xc0500000c0d, - 0xc0e00000c11, - 0xc1200000c29, - 0xc2a00000c34, - 0xc3500000c3a, - 0xc3d00000c45, - 0xc4600000c49, - 0xc4a00000c4e, - 0xc5500000c57, - 0xc5800000c5a, - 0xc6000000c64, - 0xc6600000c70, - 0xc8200000c84, - 0xc8500000c8d, - 0xc8e00000c91, - 0xc9200000ca9, - 0xcaa00000cb4, - 0xcb500000cba, - 0xcbc00000cc5, - 0xcc600000cc9, - 0xcca00000cce, - 0xcd500000cd7, - 0xcde00000cdf, - 0xce000000ce4, - 0xce600000cf0, - 0xcf100000cf3, - 0xd0200000d04, - 0xd0500000d0d, - 0xd0e00000d11, - 0xd1200000d3b, - 0xd3d00000d45, - 0xd4600000d49, - 0xd4a00000d4f, - 0xd5700000d58, - 0xd6000000d64, - 0xd6600000d70, - 0xd7a00000d80, - 0xd8200000d84, - 0xd8500000d97, - 0xd9a00000db2, - 0xdb300000dbc, - 0xdbd00000dbe, - 0xdc000000dc7, - 0xdca00000dcb, - 0xdcf00000dd5, - 0xdd600000dd7, - 0xdd800000de0, - 0xdf200000df4, - 0xe0100000e33, - 0xe3400000e3b, - 0xe4000000e4f, - 0xe5000000e5a, - 0xe8100000e83, - 0xe8400000e85, - 0xe8700000e89, - 0xe8a00000e8b, - 0xe8d00000e8e, - 0xe9400000e98, - 0xe9900000ea0, - 0xea100000ea4, - 0xea500000ea6, - 0xea700000ea8, - 0xeaa00000eac, - 0xead00000eb3, - 0xeb400000eba, - 0xebb00000ebe, - 0xec000000ec5, - 0xec600000ec7, - 0xec800000ece, - 0xed000000eda, - 0xede00000ee0, - 0xf0000000f01, - 0xf0b00000f0c, - 0xf1800000f1a, - 0xf2000000f2a, - 0xf3500000f36, - 0xf3700000f38, - 0xf3900000f3a, - 0xf3e00000f43, - 0xf4400000f48, - 0xf4900000f4d, - 0xf4e00000f52, - 0xf5300000f57, - 0xf5800000f5c, - 0xf5d00000f69, - 0xf6a00000f6d, - 0xf7100000f73, - 0xf7400000f75, - 0xf7a00000f81, - 0xf8200000f85, - 0xf8600000f93, - 0xf9400000f98, - 0xf9900000f9d, - 0xf9e00000fa2, - 0xfa300000fa7, - 0xfa800000fac, - 0xfad00000fb9, - 0xfba00000fbd, - 0xfc600000fc7, - 0x10000000104a, - 0x10500000109e, - 0x10d0000010fb, - 0x10fd00001100, - 0x120000001249, - 0x124a0000124e, - 0x125000001257, - 0x125800001259, - 0x125a0000125e, - 0x126000001289, - 0x128a0000128e, - 0x1290000012b1, - 0x12b2000012b6, - 0x12b8000012bf, - 0x12c0000012c1, - 0x12c2000012c6, - 0x12c8000012d7, - 0x12d800001311, - 0x131200001316, - 0x13180000135b, - 0x135d00001360, - 0x138000001390, - 0x13a0000013f5, - 0x14010000166d, - 0x166f00001680, - 0x16810000169b, - 0x16a0000016eb, - 0x17000000170d, - 0x170e00001715, - 0x172000001735, - 0x174000001754, - 0x17600000176d, - 0x176e00001771, - 0x177200001774, - 0x1780000017b4, - 0x17b6000017d4, - 0x17d7000017d8, - 0x17dc000017de, - 0x17e0000017ea, - 0x18100000181a, - 0x182000001878, - 0x1880000018ab, - 0x18b0000018f6, - 0x19000000191d, - 0x19200000192c, - 0x19300000193c, - 0x19460000196e, - 0x197000001975, - 0x1980000019ac, - 0x19b0000019ca, - 0x19d0000019da, - 0x1a0000001a1c, - 0x1a2000001a5f, - 0x1a6000001a7d, - 0x1a7f00001a8a, - 0x1a9000001a9a, - 0x1aa700001aa8, - 0x1b0000001b4c, - 0x1b5000001b5a, - 0x1b6b00001b74, - 0x1b8000001bf4, - 0x1c0000001c38, - 0x1c4000001c4a, - 0x1c4d00001c7e, - 0x1cd000001cd3, - 0x1cd400001cf7, - 0x1d0000001d2c, - 0x1d2f00001d30, - 0x1d3b00001d3c, - 0x1d4e00001d4f, - 0x1d6b00001d78, - 0x1d7900001d9b, - 0x1dc000001de7, - 0x1dfc00001e00, - 0x1e0100001e02, - 0x1e0300001e04, - 0x1e0500001e06, - 0x1e0700001e08, - 0x1e0900001e0a, - 0x1e0b00001e0c, - 0x1e0d00001e0e, - 0x1e0f00001e10, - 0x1e1100001e12, - 0x1e1300001e14, - 0x1e1500001e16, - 0x1e1700001e18, - 0x1e1900001e1a, - 0x1e1b00001e1c, - 0x1e1d00001e1e, - 0x1e1f00001e20, - 0x1e2100001e22, - 0x1e2300001e24, - 0x1e2500001e26, - 0x1e2700001e28, - 0x1e2900001e2a, - 0x1e2b00001e2c, - 0x1e2d00001e2e, - 0x1e2f00001e30, - 0x1e3100001e32, - 0x1e3300001e34, - 0x1e3500001e36, - 0x1e3700001e38, - 0x1e3900001e3a, - 0x1e3b00001e3c, - 0x1e3d00001e3e, - 0x1e3f00001e40, - 0x1e4100001e42, - 0x1e4300001e44, - 0x1e4500001e46, - 0x1e4700001e48, - 0x1e4900001e4a, - 0x1e4b00001e4c, - 0x1e4d00001e4e, - 0x1e4f00001e50, - 0x1e5100001e52, - 0x1e5300001e54, - 0x1e5500001e56, - 0x1e5700001e58, - 0x1e5900001e5a, - 0x1e5b00001e5c, - 0x1e5d00001e5e, - 0x1e5f00001e60, - 0x1e6100001e62, - 0x1e6300001e64, - 0x1e6500001e66, - 0x1e6700001e68, - 0x1e6900001e6a, - 0x1e6b00001e6c, - 0x1e6d00001e6e, - 0x1e6f00001e70, - 0x1e7100001e72, - 0x1e7300001e74, - 0x1e7500001e76, - 0x1e7700001e78, - 0x1e7900001e7a, - 0x1e7b00001e7c, - 0x1e7d00001e7e, - 0x1e7f00001e80, - 0x1e8100001e82, - 0x1e8300001e84, - 0x1e8500001e86, - 0x1e8700001e88, - 0x1e8900001e8a, - 0x1e8b00001e8c, - 0x1e8d00001e8e, - 0x1e8f00001e90, - 0x1e9100001e92, - 0x1e9300001e94, - 0x1e9500001e9a, - 0x1e9c00001e9e, - 0x1e9f00001ea0, - 0x1ea100001ea2, - 0x1ea300001ea4, - 0x1ea500001ea6, - 0x1ea700001ea8, - 0x1ea900001eaa, - 0x1eab00001eac, - 0x1ead00001eae, - 0x1eaf00001eb0, - 0x1eb100001eb2, - 0x1eb300001eb4, - 0x1eb500001eb6, - 0x1eb700001eb8, - 0x1eb900001eba, - 0x1ebb00001ebc, - 0x1ebd00001ebe, - 0x1ebf00001ec0, - 0x1ec100001ec2, - 0x1ec300001ec4, - 0x1ec500001ec6, - 0x1ec700001ec8, - 0x1ec900001eca, - 0x1ecb00001ecc, - 0x1ecd00001ece, - 0x1ecf00001ed0, - 0x1ed100001ed2, - 0x1ed300001ed4, - 0x1ed500001ed6, - 0x1ed700001ed8, - 0x1ed900001eda, - 0x1edb00001edc, - 0x1edd00001ede, - 0x1edf00001ee0, - 0x1ee100001ee2, - 0x1ee300001ee4, - 0x1ee500001ee6, - 0x1ee700001ee8, - 0x1ee900001eea, - 0x1eeb00001eec, - 0x1eed00001eee, - 0x1eef00001ef0, - 0x1ef100001ef2, - 0x1ef300001ef4, - 0x1ef500001ef6, - 0x1ef700001ef8, - 0x1ef900001efa, - 0x1efb00001efc, - 0x1efd00001efe, - 0x1eff00001f08, - 0x1f1000001f16, - 0x1f2000001f28, - 0x1f3000001f38, - 0x1f4000001f46, - 0x1f5000001f58, - 0x1f6000001f68, - 0x1f7000001f71, - 0x1f7200001f73, - 0x1f7400001f75, - 0x1f7600001f77, - 0x1f7800001f79, - 0x1f7a00001f7b, - 0x1f7c00001f7d, - 0x1fb000001fb2, - 0x1fb600001fb7, - 0x1fc600001fc7, - 0x1fd000001fd3, - 0x1fd600001fd8, - 0x1fe000001fe3, - 0x1fe400001fe8, - 0x1ff600001ff7, - 0x214e0000214f, - 0x218400002185, - 0x2c3000002c5f, - 0x2c6100002c62, - 0x2c6500002c67, - 0x2c6800002c69, - 0x2c6a00002c6b, - 0x2c6c00002c6d, - 0x2c7100002c72, - 0x2c7300002c75, - 0x2c7600002c7c, - 0x2c8100002c82, - 0x2c8300002c84, - 0x2c8500002c86, - 0x2c8700002c88, - 0x2c8900002c8a, - 0x2c8b00002c8c, - 0x2c8d00002c8e, - 0x2c8f00002c90, - 0x2c9100002c92, - 0x2c9300002c94, - 0x2c9500002c96, - 0x2c9700002c98, - 0x2c9900002c9a, - 0x2c9b00002c9c, - 0x2c9d00002c9e, - 0x2c9f00002ca0, - 0x2ca100002ca2, - 0x2ca300002ca4, - 0x2ca500002ca6, - 0x2ca700002ca8, - 0x2ca900002caa, - 0x2cab00002cac, - 0x2cad00002cae, - 0x2caf00002cb0, - 0x2cb100002cb2, - 0x2cb300002cb4, - 0x2cb500002cb6, - 0x2cb700002cb8, - 0x2cb900002cba, - 0x2cbb00002cbc, - 0x2cbd00002cbe, - 0x2cbf00002cc0, - 0x2cc100002cc2, - 0x2cc300002cc4, - 0x2cc500002cc6, - 0x2cc700002cc8, - 0x2cc900002cca, - 0x2ccb00002ccc, - 0x2ccd00002cce, - 0x2ccf00002cd0, - 0x2cd100002cd2, - 0x2cd300002cd4, - 0x2cd500002cd6, - 0x2cd700002cd8, - 0x2cd900002cda, - 0x2cdb00002cdc, - 0x2cdd00002cde, - 0x2cdf00002ce0, - 0x2ce100002ce2, - 0x2ce300002ce5, - 0x2cec00002ced, - 0x2cee00002cf2, - 0x2cf300002cf4, - 0x2d0000002d26, - 0x2d2700002d28, - 0x2d2d00002d2e, - 0x2d3000002d68, - 0x2d7f00002d97, - 0x2da000002da7, - 0x2da800002daf, - 0x2db000002db7, - 0x2db800002dbf, - 0x2dc000002dc7, - 0x2dc800002dcf, - 0x2dd000002dd7, - 0x2dd800002ddf, - 0x2de000002e00, - 0x2e2f00002e30, - 0x300500003008, - 0x302a0000302e, - 0x303c0000303d, - 0x304100003097, - 0x30990000309b, - 0x309d0000309f, - 0x30a1000030fb, - 0x30fc000030ff, - 0x31050000312e, - 0x31a0000031bb, - 0x31f000003200, - 0x340000004db6, - 0x4e0000009fcd, - 0xa0000000a48d, - 0xa4d00000a4fe, - 0xa5000000a60d, - 0xa6100000a62c, - 0xa6410000a642, - 0xa6430000a644, - 0xa6450000a646, - 0xa6470000a648, - 0xa6490000a64a, - 0xa64b0000a64c, - 0xa64d0000a64e, - 0xa64f0000a650, - 0xa6510000a652, - 0xa6530000a654, - 0xa6550000a656, - 0xa6570000a658, - 0xa6590000a65a, - 0xa65b0000a65c, - 0xa65d0000a65e, - 0xa65f0000a660, - 0xa6610000a662, - 0xa6630000a664, - 0xa6650000a666, - 0xa6670000a668, - 0xa6690000a66a, - 0xa66b0000a66c, - 0xa66d0000a670, - 0xa6740000a67e, - 0xa67f0000a680, - 0xa6810000a682, - 0xa6830000a684, - 0xa6850000a686, - 0xa6870000a688, - 0xa6890000a68a, - 0xa68b0000a68c, - 0xa68d0000a68e, - 0xa68f0000a690, - 0xa6910000a692, - 0xa6930000a694, - 0xa6950000a696, - 0xa6970000a698, - 0xa69f0000a6e6, - 0xa6f00000a6f2, - 0xa7170000a720, - 0xa7230000a724, - 0xa7250000a726, - 0xa7270000a728, - 0xa7290000a72a, - 0xa72b0000a72c, - 0xa72d0000a72e, - 0xa72f0000a732, - 0xa7330000a734, - 0xa7350000a736, - 0xa7370000a738, - 0xa7390000a73a, - 0xa73b0000a73c, - 0xa73d0000a73e, - 0xa73f0000a740, - 0xa7410000a742, - 0xa7430000a744, - 0xa7450000a746, - 0xa7470000a748, - 0xa7490000a74a, - 0xa74b0000a74c, - 0xa74d0000a74e, - 0xa74f0000a750, - 0xa7510000a752, - 0xa7530000a754, - 0xa7550000a756, - 0xa7570000a758, - 0xa7590000a75a, - 0xa75b0000a75c, - 0xa75d0000a75e, - 0xa75f0000a760, - 0xa7610000a762, - 0xa7630000a764, - 0xa7650000a766, - 0xa7670000a768, - 0xa7690000a76a, - 0xa76b0000a76c, - 0xa76d0000a76e, - 0xa76f0000a770, - 0xa7710000a779, - 0xa77a0000a77b, - 0xa77c0000a77d, - 0xa77f0000a780, - 0xa7810000a782, - 0xa7830000a784, - 0xa7850000a786, - 0xa7870000a789, - 0xa78c0000a78d, - 0xa78e0000a78f, - 0xa7910000a792, - 0xa7930000a794, - 0xa7a10000a7a2, - 0xa7a30000a7a4, - 0xa7a50000a7a6, - 0xa7a70000a7a8, - 0xa7a90000a7aa, - 0xa7fa0000a828, - 0xa8400000a874, - 0xa8800000a8c5, - 0xa8d00000a8da, - 0xa8e00000a8f8, - 0xa8fb0000a8fc, - 0xa9000000a92e, - 0xa9300000a954, - 0xa9800000a9c1, - 0xa9cf0000a9da, - 0xaa000000aa37, - 0xaa400000aa4e, - 0xaa500000aa5a, - 0xaa600000aa77, - 0xaa7a0000aa7c, - 0xaa800000aac3, - 0xaadb0000aade, - 0xaae00000aaf0, - 0xaaf20000aaf7, - 0xab010000ab07, - 0xab090000ab0f, - 0xab110000ab17, - 0xab200000ab27, - 0xab280000ab2f, - 0xabc00000abeb, - 0xabec0000abee, - 0xabf00000abfa, - 0xac000000d7a4, - 0xfa0e0000fa10, - 0xfa110000fa12, - 0xfa130000fa15, - 0xfa1f0000fa20, - 0xfa210000fa22, - 0xfa230000fa25, - 0xfa270000fa2a, - 0xfb1e0000fb1f, - 0xfe200000fe27, - 0xfe730000fe74, - 0x100000001000c, - 0x1000d00010027, - 0x100280001003b, - 0x1003c0001003e, - 0x1003f0001004e, - 0x100500001005e, - 0x10080000100fb, - 0x101fd000101fe, - 0x102800001029d, - 0x102a0000102d1, - 0x103000001031f, - 0x1033000010341, - 0x103420001034a, - 0x103800001039e, - 0x103a0000103c4, - 0x103c8000103d0, - 0x104280001049e, - 0x104a0000104aa, - 0x1080000010806, - 0x1080800010809, - 0x1080a00010836, - 0x1083700010839, - 0x1083c0001083d, - 0x1083f00010856, - 0x1090000010916, - 0x109200001093a, - 0x10980000109b8, - 0x109be000109c0, - 0x10a0000010a04, - 0x10a0500010a07, - 0x10a0c00010a14, - 0x10a1500010a18, - 0x10a1900010a34, - 0x10a3800010a3b, - 0x10a3f00010a40, - 0x10a6000010a7d, - 0x10b0000010b36, - 0x10b4000010b56, - 0x10b6000010b73, - 0x10c0000010c49, - 0x1100000011047, - 0x1106600011070, - 0x11080000110bb, - 0x110d0000110e9, - 0x110f0000110fa, - 0x1110000011135, - 0x1113600011140, - 0x11180000111c5, - 0x111d0000111da, - 0x11680000116b8, - 0x116c0000116ca, - 0x120000001236f, - 0x130000001342f, - 0x1680000016a39, - 0x16f0000016f45, - 0x16f5000016f7f, - 0x16f8f00016fa0, - 0x1b0000001b002, - 0x200000002a6d7, - 0x2a7000002b735, - 0x2b7400002b81e, - ), - 'CONTEXTJ': ( - 0x200c0000200e, - ), - 'CONTEXTO': ( - 0xb7000000b8, - 0x37500000376, - 0x5f3000005f5, - 0x6600000066a, - 0x6f0000006fa, - 0x30fb000030fc, - ), -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/intranges.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/intranges.py deleted file mode 100644 index 8202be8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/intranges.py +++ /dev/null @@ -1,53 +0,0 @@ -""" -Given a list of integers, made up of (hopefully) a small number of long runs -of consecutive integers, compute a representation of the form -((start1, end1), (start2, end2) ...). Then answer the question "was x present -in the original list?" in time O(log(# runs)). -""" - -import bisect - -def intranges_from_list(list_): - """Represent a list of integers as a sequence of ranges: - ((start_0, end_0), (start_1, end_1), ...), such that the original - integers are exactly those x such that start_i <= x < end_i for some i. - - Ranges are encoded as single integers (start << 32 | end), not as tuples. - """ - - sorted_list = sorted(list_) - ranges = [] - last_write = -1 - for i in range(len(sorted_list)): - if i+1 < len(sorted_list): - if sorted_list[i] == sorted_list[i+1]-1: - continue - current_range = sorted_list[last_write+1:i+1] - ranges.append(_encode_range(current_range[0], current_range[-1] + 1)) - last_write = i - - return tuple(ranges) - -def _encode_range(start, end): - return (start << 32) | end - -def _decode_range(r): - return (r >> 32), (r & ((1 << 32) - 1)) - - -def intranges_contain(int_, ranges): - """Determine if `int_` falls into one of the ranges in `ranges`.""" - tuple_ = _encode_range(int_, 0) - pos = bisect.bisect_left(ranges, tuple_) - # we could be immediately ahead of a tuple (start, end) - # with start < int_ <= end - if pos > 0: - left, right = _decode_range(ranges[pos-1]) - if left <= int_ < right: - return True - # or we could be immediately behind a tuple (int_, end) - if pos < len(ranges): - left, _ = _decode_range(ranges[pos]) - if left == int_: - return True - return False diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/package_data.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/package_data.py deleted file mode 100644 index 3073271..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/package_data.py +++ /dev/null @@ -1,2 +0,0 @@ -__version__ = '2.6' - diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/uts46data.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/uts46data.py deleted file mode 100644 index fa1d66a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/idna/uts46data.py +++ /dev/null @@ -1,7634 +0,0 @@ -# This file is automatically generated by tools/idna-data -# vim: set fileencoding=utf-8 : - -"""IDNA Mapping Table from UTS46.""" - - -__version__ = "6.3.0" -def _seg_0(): - return [ - (0x0, '3'), - (0x1, '3'), - (0x2, '3'), - (0x3, '3'), - (0x4, '3'), - (0x5, '3'), - (0x6, '3'), - (0x7, '3'), - (0x8, '3'), - (0x9, '3'), - (0xA, '3'), - (0xB, '3'), - (0xC, '3'), - (0xD, '3'), - (0xE, '3'), - (0xF, '3'), - (0x10, '3'), - (0x11, '3'), - (0x12, '3'), - (0x13, '3'), - (0x14, '3'), - (0x15, '3'), - (0x16, '3'), - (0x17, '3'), - (0x18, '3'), - (0x19, '3'), - (0x1A, '3'), - (0x1B, '3'), - (0x1C, '3'), - (0x1D, '3'), - (0x1E, '3'), - (0x1F, '3'), - (0x20, '3'), - (0x21, '3'), - (0x22, '3'), - (0x23, '3'), - (0x24, '3'), - (0x25, '3'), - (0x26, '3'), - (0x27, '3'), - (0x28, '3'), - (0x29, '3'), - (0x2A, '3'), - (0x2B, '3'), - (0x2C, '3'), - (0x2D, 'V'), - (0x2E, 'V'), - (0x2F, '3'), - (0x30, 'V'), - (0x31, 'V'), - (0x32, 'V'), - (0x33, 'V'), - (0x34, 'V'), - (0x35, 'V'), - (0x36, 'V'), - (0x37, 'V'), - (0x38, 'V'), - (0x39, 'V'), - (0x3A, '3'), - (0x3B, '3'), - (0x3C, '3'), - (0x3D, '3'), - (0x3E, '3'), - (0x3F, '3'), - (0x40, '3'), - (0x41, 'M', u'a'), - (0x42, 'M', u'b'), - (0x43, 'M', u'c'), - (0x44, 'M', u'd'), - (0x45, 'M', u'e'), - (0x46, 'M', u'f'), - (0x47, 'M', u'g'), - (0x48, 'M', u'h'), - (0x49, 'M', u'i'), - (0x4A, 'M', u'j'), - (0x4B, 'M', u'k'), - (0x4C, 'M', u'l'), - (0x4D, 'M', u'm'), - (0x4E, 'M', u'n'), - (0x4F, 'M', u'o'), - (0x50, 'M', u'p'), - (0x51, 'M', u'q'), - (0x52, 'M', u'r'), - (0x53, 'M', u's'), - (0x54, 'M', u't'), - (0x55, 'M', u'u'), - (0x56, 'M', u'v'), - (0x57, 'M', u'w'), - (0x58, 'M', u'x'), - (0x59, 'M', u'y'), - (0x5A, 'M', u'z'), - (0x5B, '3'), - (0x5C, '3'), - (0x5D, '3'), - (0x5E, '3'), - (0x5F, '3'), - (0x60, '3'), - (0x61, 'V'), - (0x62, 'V'), - (0x63, 'V'), - ] - -def _seg_1(): - return [ - (0x64, 'V'), - (0x65, 'V'), - (0x66, 'V'), - (0x67, 'V'), - (0x68, 'V'), - (0x69, 'V'), - (0x6A, 'V'), - (0x6B, 'V'), - (0x6C, 'V'), - (0x6D, 'V'), - (0x6E, 'V'), - (0x6F, 'V'), - (0x70, 'V'), - (0x71, 'V'), - (0x72, 'V'), - (0x73, 'V'), - (0x74, 'V'), - (0x75, 'V'), - (0x76, 'V'), - (0x77, 'V'), - (0x78, 'V'), - (0x79, 'V'), - (0x7A, 'V'), - (0x7B, '3'), - (0x7C, '3'), - (0x7D, '3'), - (0x7E, '3'), - (0x7F, '3'), - (0x80, 'X'), - (0x81, 'X'), - (0x82, 'X'), - (0x83, 'X'), - (0x84, 'X'), - (0x85, 'X'), - (0x86, 'X'), - (0x87, 'X'), - (0x88, 'X'), - (0x89, 'X'), - (0x8A, 'X'), - (0x8B, 'X'), - (0x8C, 'X'), - (0x8D, 'X'), - (0x8E, 'X'), - (0x8F, 'X'), - (0x90, 'X'), - (0x91, 'X'), - (0x92, 'X'), - (0x93, 'X'), - (0x94, 'X'), - (0x95, 'X'), - (0x96, 'X'), - (0x97, 'X'), - (0x98, 'X'), - (0x99, 'X'), - (0x9A, 'X'), - (0x9B, 'X'), - (0x9C, 'X'), - (0x9D, 'X'), - (0x9E, 'X'), - (0x9F, 'X'), - (0xA0, '3', u' '), - (0xA1, 'V'), - (0xA2, 'V'), - (0xA3, 'V'), - (0xA4, 'V'), - (0xA5, 'V'), - (0xA6, 'V'), - (0xA7, 'V'), - (0xA8, '3', u' ̈'), - (0xA9, 'V'), - (0xAA, 'M', u'a'), - (0xAB, 'V'), - (0xAC, 'V'), - (0xAD, 'I'), - (0xAE, 'V'), - (0xAF, '3', u' ̄'), - (0xB0, 'V'), - (0xB1, 'V'), - (0xB2, 'M', u'2'), - (0xB3, 'M', u'3'), - (0xB4, '3', u' ́'), - (0xB5, 'M', u'μ'), - (0xB6, 'V'), - (0xB7, 'V'), - (0xB8, '3', u' ̧'), - (0xB9, 'M', u'1'), - (0xBA, 'M', u'o'), - (0xBB, 'V'), - (0xBC, 'M', u'1⁄4'), - (0xBD, 'M', u'1⁄2'), - (0xBE, 'M', u'3⁄4'), - (0xBF, 'V'), - (0xC0, 'M', u'à'), - (0xC1, 'M', u'á'), - (0xC2, 'M', u'â'), - (0xC3, 'M', u'ã'), - (0xC4, 'M', u'ä'), - (0xC5, 'M', u'å'), - (0xC6, 'M', u'æ'), - (0xC7, 'M', u'ç'), - ] - -def _seg_2(): - return [ - (0xC8, 'M', u'è'), - (0xC9, 'M', u'é'), - (0xCA, 'M', u'ê'), - (0xCB, 'M', u'ë'), - (0xCC, 'M', u'ì'), - (0xCD, 'M', u'í'), - (0xCE, 'M', u'î'), - (0xCF, 'M', u'ï'), - (0xD0, 'M', u'ð'), - (0xD1, 'M', u'ñ'), - (0xD2, 'M', u'ò'), - (0xD3, 'M', u'ó'), - (0xD4, 'M', u'ô'), - (0xD5, 'M', u'õ'), - (0xD6, 'M', u'ö'), - (0xD7, 'V'), - (0xD8, 'M', u'ø'), - (0xD9, 'M', u'ù'), - (0xDA, 'M', u'ú'), - (0xDB, 'M', u'û'), - (0xDC, 'M', u'ü'), - (0xDD, 'M', u'ý'), - (0xDE, 'M', u'þ'), - (0xDF, 'D', u'ss'), - (0xE0, 'V'), - (0xE1, 'V'), - (0xE2, 'V'), - (0xE3, 'V'), - (0xE4, 'V'), - (0xE5, 'V'), - (0xE6, 'V'), - (0xE7, 'V'), - (0xE8, 'V'), - (0xE9, 'V'), - (0xEA, 'V'), - (0xEB, 'V'), - (0xEC, 'V'), - (0xED, 'V'), - (0xEE, 'V'), - (0xEF, 'V'), - (0xF0, 'V'), - (0xF1, 'V'), - (0xF2, 'V'), - (0xF3, 'V'), - (0xF4, 'V'), - (0xF5, 'V'), - (0xF6, 'V'), - (0xF7, 'V'), - (0xF8, 'V'), - (0xF9, 'V'), - (0xFA, 'V'), - (0xFB, 'V'), - (0xFC, 'V'), - (0xFD, 'V'), - (0xFE, 'V'), - (0xFF, 'V'), - (0x100, 'M', u'ā'), - (0x101, 'V'), - (0x102, 'M', u'ă'), - (0x103, 'V'), - (0x104, 'M', u'ą'), - (0x105, 'V'), - (0x106, 'M', u'ć'), - (0x107, 'V'), - (0x108, 'M', u'ĉ'), - (0x109, 'V'), - (0x10A, 'M', u'ċ'), - (0x10B, 'V'), - (0x10C, 'M', u'č'), - (0x10D, 'V'), - (0x10E, 'M', u'ď'), - (0x10F, 'V'), - (0x110, 'M', u'đ'), - (0x111, 'V'), - (0x112, 'M', u'ē'), - (0x113, 'V'), - (0x114, 'M', u'ĕ'), - (0x115, 'V'), - (0x116, 'M', u'ė'), - (0x117, 'V'), - (0x118, 'M', u'ę'), - (0x119, 'V'), - (0x11A, 'M', u'ě'), - (0x11B, 'V'), - (0x11C, 'M', u'ĝ'), - (0x11D, 'V'), - (0x11E, 'M', u'ğ'), - (0x11F, 'V'), - (0x120, 'M', u'ġ'), - (0x121, 'V'), - (0x122, 'M', u'ģ'), - (0x123, 'V'), - (0x124, 'M', u'ĥ'), - (0x125, 'V'), - (0x126, 'M', u'ħ'), - (0x127, 'V'), - (0x128, 'M', u'ĩ'), - (0x129, 'V'), - (0x12A, 'M', u'ī'), - (0x12B, 'V'), - ] - -def _seg_3(): - return [ - (0x12C, 'M', u'ĭ'), - (0x12D, 'V'), - (0x12E, 'M', u'į'), - (0x12F, 'V'), - (0x130, 'M', u'i̇'), - (0x131, 'V'), - (0x132, 'M', u'ij'), - (0x134, 'M', u'ĵ'), - (0x135, 'V'), - (0x136, 'M', u'ķ'), - (0x137, 'V'), - (0x139, 'M', u'ĺ'), - (0x13A, 'V'), - (0x13B, 'M', u'ļ'), - (0x13C, 'V'), - (0x13D, 'M', u'ľ'), - (0x13E, 'V'), - (0x13F, 'M', u'l·'), - (0x141, 'M', u'ł'), - (0x142, 'V'), - (0x143, 'M', u'ń'), - (0x144, 'V'), - (0x145, 'M', u'ņ'), - (0x146, 'V'), - (0x147, 'M', u'ň'), - (0x148, 'V'), - (0x149, 'M', u'ʼn'), - (0x14A, 'M', u'ŋ'), - (0x14B, 'V'), - (0x14C, 'M', u'ō'), - (0x14D, 'V'), - (0x14E, 'M', u'ŏ'), - (0x14F, 'V'), - (0x150, 'M', u'ő'), - (0x151, 'V'), - (0x152, 'M', u'œ'), - (0x153, 'V'), - (0x154, 'M', u'ŕ'), - (0x155, 'V'), - (0x156, 'M', u'ŗ'), - (0x157, 'V'), - (0x158, 'M', u'ř'), - (0x159, 'V'), - (0x15A, 'M', u'ś'), - (0x15B, 'V'), - (0x15C, 'M', u'ŝ'), - (0x15D, 'V'), - (0x15E, 'M', u'ş'), - (0x15F, 'V'), - (0x160, 'M', u'š'), - (0x161, 'V'), - (0x162, 'M', u'ţ'), - (0x163, 'V'), - (0x164, 'M', u'ť'), - (0x165, 'V'), - (0x166, 'M', u'ŧ'), - (0x167, 'V'), - (0x168, 'M', u'ũ'), - (0x169, 'V'), - (0x16A, 'M', u'ū'), - (0x16B, 'V'), - (0x16C, 'M', u'ŭ'), - (0x16D, 'V'), - (0x16E, 'M', u'ů'), - (0x16F, 'V'), - (0x170, 'M', u'ű'), - (0x171, 'V'), - (0x172, 'M', u'ų'), - (0x173, 'V'), - (0x174, 'M', u'ŵ'), - (0x175, 'V'), - (0x176, 'M', u'ŷ'), - (0x177, 'V'), - (0x178, 'M', u'ÿ'), - (0x179, 'M', u'ź'), - (0x17A, 'V'), - (0x17B, 'M', u'ż'), - (0x17C, 'V'), - (0x17D, 'M', u'ž'), - (0x17E, 'V'), - (0x17F, 'M', u's'), - (0x180, 'V'), - (0x181, 'M', u'ɓ'), - (0x182, 'M', u'ƃ'), - (0x183, 'V'), - (0x184, 'M', u'ƅ'), - (0x185, 'V'), - (0x186, 'M', u'ɔ'), - (0x187, 'M', u'ƈ'), - (0x188, 'V'), - (0x189, 'M', u'ɖ'), - (0x18A, 'M', u'ɗ'), - (0x18B, 'M', u'ƌ'), - (0x18C, 'V'), - (0x18E, 'M', u'ǝ'), - (0x18F, 'M', u'ə'), - (0x190, 'M', u'ɛ'), - (0x191, 'M', u'ƒ'), - (0x192, 'V'), - (0x193, 'M', u'ɠ'), - ] - -def _seg_4(): - return [ - (0x194, 'M', u'ɣ'), - (0x195, 'V'), - (0x196, 'M', u'ɩ'), - (0x197, 'M', u'ɨ'), - (0x198, 'M', u'ƙ'), - (0x199, 'V'), - (0x19C, 'M', u'ɯ'), - (0x19D, 'M', u'ɲ'), - (0x19E, 'V'), - (0x19F, 'M', u'ɵ'), - (0x1A0, 'M', u'ơ'), - (0x1A1, 'V'), - (0x1A2, 'M', u'ƣ'), - (0x1A3, 'V'), - (0x1A4, 'M', u'ƥ'), - (0x1A5, 'V'), - (0x1A6, 'M', u'ʀ'), - (0x1A7, 'M', u'ƨ'), - (0x1A8, 'V'), - (0x1A9, 'M', u'ʃ'), - (0x1AA, 'V'), - (0x1AC, 'M', u'ƭ'), - (0x1AD, 'V'), - (0x1AE, 'M', u'ʈ'), - (0x1AF, 'M', u'ư'), - (0x1B0, 'V'), - (0x1B1, 'M', u'ʊ'), - (0x1B2, 'M', u'ʋ'), - (0x1B3, 'M', u'ƴ'), - (0x1B4, 'V'), - (0x1B5, 'M', u'ƶ'), - (0x1B6, 'V'), - (0x1B7, 'M', u'ʒ'), - (0x1B8, 'M', u'ƹ'), - (0x1B9, 'V'), - (0x1BC, 'M', u'ƽ'), - (0x1BD, 'V'), - (0x1C4, 'M', u'dž'), - (0x1C7, 'M', u'lj'), - (0x1CA, 'M', u'nj'), - (0x1CD, 'M', u'ǎ'), - (0x1CE, 'V'), - (0x1CF, 'M', u'ǐ'), - (0x1D0, 'V'), - (0x1D1, 'M', u'ǒ'), - (0x1D2, 'V'), - (0x1D3, 'M', u'ǔ'), - (0x1D4, 'V'), - (0x1D5, 'M', u'ǖ'), - (0x1D6, 'V'), - (0x1D7, 'M', u'ǘ'), - (0x1D8, 'V'), - (0x1D9, 'M', u'ǚ'), - (0x1DA, 'V'), - (0x1DB, 'M', u'ǜ'), - (0x1DC, 'V'), - (0x1DE, 'M', u'ǟ'), - (0x1DF, 'V'), - (0x1E0, 'M', u'ǡ'), - (0x1E1, 'V'), - (0x1E2, 'M', u'ǣ'), - (0x1E3, 'V'), - (0x1E4, 'M', u'ǥ'), - (0x1E5, 'V'), - (0x1E6, 'M', u'ǧ'), - (0x1E7, 'V'), - (0x1E8, 'M', u'ǩ'), - (0x1E9, 'V'), - (0x1EA, 'M', u'ǫ'), - (0x1EB, 'V'), - (0x1EC, 'M', u'ǭ'), - (0x1ED, 'V'), - (0x1EE, 'M', u'ǯ'), - (0x1EF, 'V'), - (0x1F1, 'M', u'dz'), - (0x1F4, 'M', u'ǵ'), - (0x1F5, 'V'), - (0x1F6, 'M', u'ƕ'), - (0x1F7, 'M', u'ƿ'), - (0x1F8, 'M', u'ǹ'), - (0x1F9, 'V'), - (0x1FA, 'M', u'ǻ'), - (0x1FB, 'V'), - (0x1FC, 'M', u'ǽ'), - (0x1FD, 'V'), - (0x1FE, 'M', u'ǿ'), - (0x1FF, 'V'), - (0x200, 'M', u'ȁ'), - (0x201, 'V'), - (0x202, 'M', u'ȃ'), - (0x203, 'V'), - (0x204, 'M', u'ȅ'), - (0x205, 'V'), - (0x206, 'M', u'ȇ'), - (0x207, 'V'), - (0x208, 'M', u'ȉ'), - (0x209, 'V'), - (0x20A, 'M', u'ȋ'), - (0x20B, 'V'), - (0x20C, 'M', u'ȍ'), - ] - -def _seg_5(): - return [ - (0x20D, 'V'), - (0x20E, 'M', u'ȏ'), - (0x20F, 'V'), - (0x210, 'M', u'ȑ'), - (0x211, 'V'), - (0x212, 'M', u'ȓ'), - (0x213, 'V'), - (0x214, 'M', u'ȕ'), - (0x215, 'V'), - (0x216, 'M', u'ȗ'), - (0x217, 'V'), - (0x218, 'M', u'ș'), - (0x219, 'V'), - (0x21A, 'M', u'ț'), - (0x21B, 'V'), - (0x21C, 'M', u'ȝ'), - (0x21D, 'V'), - (0x21E, 'M', u'ȟ'), - (0x21F, 'V'), - (0x220, 'M', u'ƞ'), - (0x221, 'V'), - (0x222, 'M', u'ȣ'), - (0x223, 'V'), - (0x224, 'M', u'ȥ'), - (0x225, 'V'), - (0x226, 'M', u'ȧ'), - (0x227, 'V'), - (0x228, 'M', u'ȩ'), - (0x229, 'V'), - (0x22A, 'M', u'ȫ'), - (0x22B, 'V'), - (0x22C, 'M', u'ȭ'), - (0x22D, 'V'), - (0x22E, 'M', u'ȯ'), - (0x22F, 'V'), - (0x230, 'M', u'ȱ'), - (0x231, 'V'), - (0x232, 'M', u'ȳ'), - (0x233, 'V'), - (0x23A, 'M', u'ⱥ'), - (0x23B, 'M', u'ȼ'), - (0x23C, 'V'), - (0x23D, 'M', u'ƚ'), - (0x23E, 'M', u'ⱦ'), - (0x23F, 'V'), - (0x241, 'M', u'ɂ'), - (0x242, 'V'), - (0x243, 'M', u'ƀ'), - (0x244, 'M', u'ʉ'), - (0x245, 'M', u'ʌ'), - (0x246, 'M', u'ɇ'), - (0x247, 'V'), - (0x248, 'M', u'ɉ'), - (0x249, 'V'), - (0x24A, 'M', u'ɋ'), - (0x24B, 'V'), - (0x24C, 'M', u'ɍ'), - (0x24D, 'V'), - (0x24E, 'M', u'ɏ'), - (0x24F, 'V'), - (0x2B0, 'M', u'h'), - (0x2B1, 'M', u'ɦ'), - (0x2B2, 'M', u'j'), - (0x2B3, 'M', u'r'), - (0x2B4, 'M', u'ɹ'), - (0x2B5, 'M', u'ɻ'), - (0x2B6, 'M', u'ʁ'), - (0x2B7, 'M', u'w'), - (0x2B8, 'M', u'y'), - (0x2B9, 'V'), - (0x2D8, '3', u' ̆'), - (0x2D9, '3', u' ̇'), - (0x2DA, '3', u' ̊'), - (0x2DB, '3', u' ̨'), - (0x2DC, '3', u' ̃'), - (0x2DD, '3', u' ̋'), - (0x2DE, 'V'), - (0x2E0, 'M', u'ɣ'), - (0x2E1, 'M', u'l'), - (0x2E2, 'M', u's'), - (0x2E3, 'M', u'x'), - (0x2E4, 'M', u'ʕ'), - (0x2E5, 'V'), - (0x340, 'M', u'̀'), - (0x341, 'M', u'́'), - (0x342, 'V'), - (0x343, 'M', u'̓'), - (0x344, 'M', u'̈́'), - (0x345, 'M', u'ι'), - (0x346, 'V'), - (0x34F, 'I'), - (0x350, 'V'), - (0x370, 'M', u'ͱ'), - (0x371, 'V'), - (0x372, 'M', u'ͳ'), - (0x373, 'V'), - (0x374, 'M', u'ʹ'), - (0x375, 'V'), - (0x376, 'M', u'ͷ'), - (0x377, 'V'), - ] - -def _seg_6(): - return [ - (0x378, 'X'), - (0x37A, '3', u' ι'), - (0x37B, 'V'), - (0x37E, '3', u';'), - (0x37F, 'X'), - (0x384, '3', u' ́'), - (0x385, '3', u' ̈́'), - (0x386, 'M', u'ά'), - (0x387, 'M', u'·'), - (0x388, 'M', u'έ'), - (0x389, 'M', u'ή'), - (0x38A, 'M', u'ί'), - (0x38B, 'X'), - (0x38C, 'M', u'ό'), - (0x38D, 'X'), - (0x38E, 'M', u'ύ'), - (0x38F, 'M', u'ώ'), - (0x390, 'V'), - (0x391, 'M', u'α'), - (0x392, 'M', u'β'), - (0x393, 'M', u'γ'), - (0x394, 'M', u'δ'), - (0x395, 'M', u'ε'), - (0x396, 'M', u'ζ'), - (0x397, 'M', u'η'), - (0x398, 'M', u'θ'), - (0x399, 'M', u'ι'), - (0x39A, 'M', u'κ'), - (0x39B, 'M', u'λ'), - (0x39C, 'M', u'μ'), - (0x39D, 'M', u'ν'), - (0x39E, 'M', u'ξ'), - (0x39F, 'M', u'ο'), - (0x3A0, 'M', u'π'), - (0x3A1, 'M', u'ρ'), - (0x3A2, 'X'), - (0x3A3, 'M', u'σ'), - (0x3A4, 'M', u'τ'), - (0x3A5, 'M', u'υ'), - (0x3A6, 'M', u'φ'), - (0x3A7, 'M', u'χ'), - (0x3A8, 'M', u'ψ'), - (0x3A9, 'M', u'ω'), - (0x3AA, 'M', u'ϊ'), - (0x3AB, 'M', u'ϋ'), - (0x3AC, 'V'), - (0x3C2, 'D', u'σ'), - (0x3C3, 'V'), - (0x3CF, 'M', u'ϗ'), - (0x3D0, 'M', u'β'), - (0x3D1, 'M', u'θ'), - (0x3D2, 'M', u'υ'), - (0x3D3, 'M', u'ύ'), - (0x3D4, 'M', u'ϋ'), - (0x3D5, 'M', u'φ'), - (0x3D6, 'M', u'π'), - (0x3D7, 'V'), - (0x3D8, 'M', u'ϙ'), - (0x3D9, 'V'), - (0x3DA, 'M', u'ϛ'), - (0x3DB, 'V'), - (0x3DC, 'M', u'ϝ'), - (0x3DD, 'V'), - (0x3DE, 'M', u'ϟ'), - (0x3DF, 'V'), - (0x3E0, 'M', u'ϡ'), - (0x3E1, 'V'), - (0x3E2, 'M', u'ϣ'), - (0x3E3, 'V'), - (0x3E4, 'M', u'ϥ'), - (0x3E5, 'V'), - (0x3E6, 'M', u'ϧ'), - (0x3E7, 'V'), - (0x3E8, 'M', u'ϩ'), - (0x3E9, 'V'), - (0x3EA, 'M', u'ϫ'), - (0x3EB, 'V'), - (0x3EC, 'M', u'ϭ'), - (0x3ED, 'V'), - (0x3EE, 'M', u'ϯ'), - (0x3EF, 'V'), - (0x3F0, 'M', u'κ'), - (0x3F1, 'M', u'ρ'), - (0x3F2, 'M', u'σ'), - (0x3F3, 'V'), - (0x3F4, 'M', u'θ'), - (0x3F5, 'M', u'ε'), - (0x3F6, 'V'), - (0x3F7, 'M', u'ϸ'), - (0x3F8, 'V'), - (0x3F9, 'M', u'σ'), - (0x3FA, 'M', u'ϻ'), - (0x3FB, 'V'), - (0x3FD, 'M', u'ͻ'), - (0x3FE, 'M', u'ͼ'), - (0x3FF, 'M', u'ͽ'), - (0x400, 'M', u'ѐ'), - (0x401, 'M', u'ё'), - (0x402, 'M', u'ђ'), - (0x403, 'M', u'ѓ'), - ] - -def _seg_7(): - return [ - (0x404, 'M', u'є'), - (0x405, 'M', u'ѕ'), - (0x406, 'M', u'і'), - (0x407, 'M', u'ї'), - (0x408, 'M', u'ј'), - (0x409, 'M', u'љ'), - (0x40A, 'M', u'њ'), - (0x40B, 'M', u'ћ'), - (0x40C, 'M', u'ќ'), - (0x40D, 'M', u'ѝ'), - (0x40E, 'M', u'ў'), - (0x40F, 'M', u'џ'), - (0x410, 'M', u'а'), - (0x411, 'M', u'б'), - (0x412, 'M', u'в'), - (0x413, 'M', u'г'), - (0x414, 'M', u'д'), - (0x415, 'M', u'е'), - (0x416, 'M', u'ж'), - (0x417, 'M', u'з'), - (0x418, 'M', u'и'), - (0x419, 'M', u'й'), - (0x41A, 'M', u'к'), - (0x41B, 'M', u'л'), - (0x41C, 'M', u'м'), - (0x41D, 'M', u'н'), - (0x41E, 'M', u'о'), - (0x41F, 'M', u'п'), - (0x420, 'M', u'р'), - (0x421, 'M', u'с'), - (0x422, 'M', u'т'), - (0x423, 'M', u'у'), - (0x424, 'M', u'ф'), - (0x425, 'M', u'х'), - (0x426, 'M', u'ц'), - (0x427, 'M', u'ч'), - (0x428, 'M', u'ш'), - (0x429, 'M', u'щ'), - (0x42A, 'M', u'ъ'), - (0x42B, 'M', u'ы'), - (0x42C, 'M', u'ь'), - (0x42D, 'M', u'э'), - (0x42E, 'M', u'ю'), - (0x42F, 'M', u'я'), - (0x430, 'V'), - (0x460, 'M', u'ѡ'), - (0x461, 'V'), - (0x462, 'M', u'ѣ'), - (0x463, 'V'), - (0x464, 'M', u'ѥ'), - (0x465, 'V'), - (0x466, 'M', u'ѧ'), - (0x467, 'V'), - (0x468, 'M', u'ѩ'), - (0x469, 'V'), - (0x46A, 'M', u'ѫ'), - (0x46B, 'V'), - (0x46C, 'M', u'ѭ'), - (0x46D, 'V'), - (0x46E, 'M', u'ѯ'), - (0x46F, 'V'), - (0x470, 'M', u'ѱ'), - (0x471, 'V'), - (0x472, 'M', u'ѳ'), - (0x473, 'V'), - (0x474, 'M', u'ѵ'), - (0x475, 'V'), - (0x476, 'M', u'ѷ'), - (0x477, 'V'), - (0x478, 'M', u'ѹ'), - (0x479, 'V'), - (0x47A, 'M', u'ѻ'), - (0x47B, 'V'), - (0x47C, 'M', u'ѽ'), - (0x47D, 'V'), - (0x47E, 'M', u'ѿ'), - (0x47F, 'V'), - (0x480, 'M', u'ҁ'), - (0x481, 'V'), - (0x48A, 'M', u'ҋ'), - (0x48B, 'V'), - (0x48C, 'M', u'ҍ'), - (0x48D, 'V'), - (0x48E, 'M', u'ҏ'), - (0x48F, 'V'), - (0x490, 'M', u'ґ'), - (0x491, 'V'), - (0x492, 'M', u'ғ'), - (0x493, 'V'), - (0x494, 'M', u'ҕ'), - (0x495, 'V'), - (0x496, 'M', u'җ'), - (0x497, 'V'), - (0x498, 'M', u'ҙ'), - (0x499, 'V'), - (0x49A, 'M', u'қ'), - (0x49B, 'V'), - (0x49C, 'M', u'ҝ'), - (0x49D, 'V'), - (0x49E, 'M', u'ҟ'), - ] - -def _seg_8(): - return [ - (0x49F, 'V'), - (0x4A0, 'M', u'ҡ'), - (0x4A1, 'V'), - (0x4A2, 'M', u'ң'), - (0x4A3, 'V'), - (0x4A4, 'M', u'ҥ'), - (0x4A5, 'V'), - (0x4A6, 'M', u'ҧ'), - (0x4A7, 'V'), - (0x4A8, 'M', u'ҩ'), - (0x4A9, 'V'), - (0x4AA, 'M', u'ҫ'), - (0x4AB, 'V'), - (0x4AC, 'M', u'ҭ'), - (0x4AD, 'V'), - (0x4AE, 'M', u'ү'), - (0x4AF, 'V'), - (0x4B0, 'M', u'ұ'), - (0x4B1, 'V'), - (0x4B2, 'M', u'ҳ'), - (0x4B3, 'V'), - (0x4B4, 'M', u'ҵ'), - (0x4B5, 'V'), - (0x4B6, 'M', u'ҷ'), - (0x4B7, 'V'), - (0x4B8, 'M', u'ҹ'), - (0x4B9, 'V'), - (0x4BA, 'M', u'һ'), - (0x4BB, 'V'), - (0x4BC, 'M', u'ҽ'), - (0x4BD, 'V'), - (0x4BE, 'M', u'ҿ'), - (0x4BF, 'V'), - (0x4C0, 'X'), - (0x4C1, 'M', u'ӂ'), - (0x4C2, 'V'), - (0x4C3, 'M', u'ӄ'), - (0x4C4, 'V'), - (0x4C5, 'M', u'ӆ'), - (0x4C6, 'V'), - (0x4C7, 'M', u'ӈ'), - (0x4C8, 'V'), - (0x4C9, 'M', u'ӊ'), - (0x4CA, 'V'), - (0x4CB, 'M', u'ӌ'), - (0x4CC, 'V'), - (0x4CD, 'M', u'ӎ'), - (0x4CE, 'V'), - (0x4D0, 'M', u'ӑ'), - (0x4D1, 'V'), - (0x4D2, 'M', u'ӓ'), - (0x4D3, 'V'), - (0x4D4, 'M', u'ӕ'), - (0x4D5, 'V'), - (0x4D6, 'M', u'ӗ'), - (0x4D7, 'V'), - (0x4D8, 'M', u'ә'), - (0x4D9, 'V'), - (0x4DA, 'M', u'ӛ'), - (0x4DB, 'V'), - (0x4DC, 'M', u'ӝ'), - (0x4DD, 'V'), - (0x4DE, 'M', u'ӟ'), - (0x4DF, 'V'), - (0x4E0, 'M', u'ӡ'), - (0x4E1, 'V'), - (0x4E2, 'M', u'ӣ'), - (0x4E3, 'V'), - (0x4E4, 'M', u'ӥ'), - (0x4E5, 'V'), - (0x4E6, 'M', u'ӧ'), - (0x4E7, 'V'), - (0x4E8, 'M', u'ө'), - (0x4E9, 'V'), - (0x4EA, 'M', u'ӫ'), - (0x4EB, 'V'), - (0x4EC, 'M', u'ӭ'), - (0x4ED, 'V'), - (0x4EE, 'M', u'ӯ'), - (0x4EF, 'V'), - (0x4F0, 'M', u'ӱ'), - (0x4F1, 'V'), - (0x4F2, 'M', u'ӳ'), - (0x4F3, 'V'), - (0x4F4, 'M', u'ӵ'), - (0x4F5, 'V'), - (0x4F6, 'M', u'ӷ'), - (0x4F7, 'V'), - (0x4F8, 'M', u'ӹ'), - (0x4F9, 'V'), - (0x4FA, 'M', u'ӻ'), - (0x4FB, 'V'), - (0x4FC, 'M', u'ӽ'), - (0x4FD, 'V'), - (0x4FE, 'M', u'ӿ'), - (0x4FF, 'V'), - (0x500, 'M', u'ԁ'), - (0x501, 'V'), - (0x502, 'M', u'ԃ'), - (0x503, 'V'), - ] - -def _seg_9(): - return [ - (0x504, 'M', u'ԅ'), - (0x505, 'V'), - (0x506, 'M', u'ԇ'), - (0x507, 'V'), - (0x508, 'M', u'ԉ'), - (0x509, 'V'), - (0x50A, 'M', u'ԋ'), - (0x50B, 'V'), - (0x50C, 'M', u'ԍ'), - (0x50D, 'V'), - (0x50E, 'M', u'ԏ'), - (0x50F, 'V'), - (0x510, 'M', u'ԑ'), - (0x511, 'V'), - (0x512, 'M', u'ԓ'), - (0x513, 'V'), - (0x514, 'M', u'ԕ'), - (0x515, 'V'), - (0x516, 'M', u'ԗ'), - (0x517, 'V'), - (0x518, 'M', u'ԙ'), - (0x519, 'V'), - (0x51A, 'M', u'ԛ'), - (0x51B, 'V'), - (0x51C, 'M', u'ԝ'), - (0x51D, 'V'), - (0x51E, 'M', u'ԟ'), - (0x51F, 'V'), - (0x520, 'M', u'ԡ'), - (0x521, 'V'), - (0x522, 'M', u'ԣ'), - (0x523, 'V'), - (0x524, 'M', u'ԥ'), - (0x525, 'V'), - (0x526, 'M', u'ԧ'), - (0x527, 'V'), - (0x528, 'X'), - (0x531, 'M', u'ա'), - (0x532, 'M', u'բ'), - (0x533, 'M', u'գ'), - (0x534, 'M', u'դ'), - (0x535, 'M', u'ե'), - (0x536, 'M', u'զ'), - (0x537, 'M', u'է'), - (0x538, 'M', u'ը'), - (0x539, 'M', u'թ'), - (0x53A, 'M', u'ժ'), - (0x53B, 'M', u'ի'), - (0x53C, 'M', u'լ'), - (0x53D, 'M', u'խ'), - (0x53E, 'M', u'ծ'), - (0x53F, 'M', u'կ'), - (0x540, 'M', u'հ'), - (0x541, 'M', u'ձ'), - (0x542, 'M', u'ղ'), - (0x543, 'M', u'ճ'), - (0x544, 'M', u'մ'), - (0x545, 'M', u'յ'), - (0x546, 'M', u'ն'), - (0x547, 'M', u'շ'), - (0x548, 'M', u'ո'), - (0x549, 'M', u'չ'), - (0x54A, 'M', u'պ'), - (0x54B, 'M', u'ջ'), - (0x54C, 'M', u'ռ'), - (0x54D, 'M', u'ս'), - (0x54E, 'M', u'վ'), - (0x54F, 'M', u'տ'), - (0x550, 'M', u'ր'), - (0x551, 'M', u'ց'), - (0x552, 'M', u'ւ'), - (0x553, 'M', u'փ'), - (0x554, 'M', u'ք'), - (0x555, 'M', u'օ'), - (0x556, 'M', u'ֆ'), - (0x557, 'X'), - (0x559, 'V'), - (0x560, 'X'), - (0x561, 'V'), - (0x587, 'M', u'եւ'), - (0x588, 'X'), - (0x589, 'V'), - (0x58B, 'X'), - (0x58F, 'V'), - (0x590, 'X'), - (0x591, 'V'), - (0x5C8, 'X'), - (0x5D0, 'V'), - (0x5EB, 'X'), - (0x5F0, 'V'), - (0x5F5, 'X'), - (0x606, 'V'), - (0x61C, 'X'), - (0x61E, 'V'), - (0x675, 'M', u'اٴ'), - (0x676, 'M', u'وٴ'), - (0x677, 'M', u'ۇٴ'), - (0x678, 'M', u'يٴ'), - (0x679, 'V'), - (0x6DD, 'X'), - ] - -def _seg_10(): - return [ - (0x6DE, 'V'), - (0x70E, 'X'), - (0x710, 'V'), - (0x74B, 'X'), - (0x74D, 'V'), - (0x7B2, 'X'), - (0x7C0, 'V'), - (0x7FB, 'X'), - (0x800, 'V'), - (0x82E, 'X'), - (0x830, 'V'), - (0x83F, 'X'), - (0x840, 'V'), - (0x85C, 'X'), - (0x85E, 'V'), - (0x85F, 'X'), - (0x8A0, 'V'), - (0x8A1, 'X'), - (0x8A2, 'V'), - (0x8AD, 'X'), - (0x8E4, 'V'), - (0x8FF, 'X'), - (0x900, 'V'), - (0x958, 'M', u'क़'), - (0x959, 'M', u'ख़'), - (0x95A, 'M', u'ग़'), - (0x95B, 'M', u'ज़'), - (0x95C, 'M', u'ड़'), - (0x95D, 'M', u'ढ़'), - (0x95E, 'M', u'फ़'), - (0x95F, 'M', u'य़'), - (0x960, 'V'), - (0x978, 'X'), - (0x979, 'V'), - (0x980, 'X'), - (0x981, 'V'), - (0x984, 'X'), - (0x985, 'V'), - (0x98D, 'X'), - (0x98F, 'V'), - (0x991, 'X'), - (0x993, 'V'), - (0x9A9, 'X'), - (0x9AA, 'V'), - (0x9B1, 'X'), - (0x9B2, 'V'), - (0x9B3, 'X'), - (0x9B6, 'V'), - (0x9BA, 'X'), - (0x9BC, 'V'), - (0x9C5, 'X'), - (0x9C7, 'V'), - (0x9C9, 'X'), - (0x9CB, 'V'), - (0x9CF, 'X'), - (0x9D7, 'V'), - (0x9D8, 'X'), - (0x9DC, 'M', u'ড়'), - (0x9DD, 'M', u'ঢ়'), - (0x9DE, 'X'), - (0x9DF, 'M', u'য়'), - (0x9E0, 'V'), - (0x9E4, 'X'), - (0x9E6, 'V'), - (0x9FC, 'X'), - (0xA01, 'V'), - (0xA04, 'X'), - (0xA05, 'V'), - (0xA0B, 'X'), - (0xA0F, 'V'), - (0xA11, 'X'), - (0xA13, 'V'), - (0xA29, 'X'), - (0xA2A, 'V'), - (0xA31, 'X'), - (0xA32, 'V'), - (0xA33, 'M', u'ਲ਼'), - (0xA34, 'X'), - (0xA35, 'V'), - (0xA36, 'M', u'ਸ਼'), - (0xA37, 'X'), - (0xA38, 'V'), - (0xA3A, 'X'), - (0xA3C, 'V'), - (0xA3D, 'X'), - (0xA3E, 'V'), - (0xA43, 'X'), - (0xA47, 'V'), - (0xA49, 'X'), - (0xA4B, 'V'), - (0xA4E, 'X'), - (0xA51, 'V'), - (0xA52, 'X'), - (0xA59, 'M', u'ਖ਼'), - (0xA5A, 'M', u'ਗ਼'), - (0xA5B, 'M', u'ਜ਼'), - (0xA5C, 'V'), - (0xA5D, 'X'), - (0xA5E, 'M', u'ਫ਼'), - (0xA5F, 'X'), - ] - -def _seg_11(): - return [ - (0xA66, 'V'), - (0xA76, 'X'), - (0xA81, 'V'), - (0xA84, 'X'), - (0xA85, 'V'), - (0xA8E, 'X'), - (0xA8F, 'V'), - (0xA92, 'X'), - (0xA93, 'V'), - (0xAA9, 'X'), - (0xAAA, 'V'), - (0xAB1, 'X'), - (0xAB2, 'V'), - (0xAB4, 'X'), - (0xAB5, 'V'), - (0xABA, 'X'), - (0xABC, 'V'), - (0xAC6, 'X'), - (0xAC7, 'V'), - (0xACA, 'X'), - (0xACB, 'V'), - (0xACE, 'X'), - (0xAD0, 'V'), - (0xAD1, 'X'), - (0xAE0, 'V'), - (0xAE4, 'X'), - (0xAE6, 'V'), - (0xAF2, 'X'), - (0xB01, 'V'), - (0xB04, 'X'), - (0xB05, 'V'), - (0xB0D, 'X'), - (0xB0F, 'V'), - (0xB11, 'X'), - (0xB13, 'V'), - (0xB29, 'X'), - (0xB2A, 'V'), - (0xB31, 'X'), - (0xB32, 'V'), - (0xB34, 'X'), - (0xB35, 'V'), - (0xB3A, 'X'), - (0xB3C, 'V'), - (0xB45, 'X'), - (0xB47, 'V'), - (0xB49, 'X'), - (0xB4B, 'V'), - (0xB4E, 'X'), - (0xB56, 'V'), - (0xB58, 'X'), - (0xB5C, 'M', u'ଡ଼'), - (0xB5D, 'M', u'ଢ଼'), - (0xB5E, 'X'), - (0xB5F, 'V'), - (0xB64, 'X'), - (0xB66, 'V'), - (0xB78, 'X'), - (0xB82, 'V'), - (0xB84, 'X'), - (0xB85, 'V'), - (0xB8B, 'X'), - (0xB8E, 'V'), - (0xB91, 'X'), - (0xB92, 'V'), - (0xB96, 'X'), - (0xB99, 'V'), - (0xB9B, 'X'), - (0xB9C, 'V'), - (0xB9D, 'X'), - (0xB9E, 'V'), - (0xBA0, 'X'), - (0xBA3, 'V'), - (0xBA5, 'X'), - (0xBA8, 'V'), - (0xBAB, 'X'), - (0xBAE, 'V'), - (0xBBA, 'X'), - (0xBBE, 'V'), - (0xBC3, 'X'), - (0xBC6, 'V'), - (0xBC9, 'X'), - (0xBCA, 'V'), - (0xBCE, 'X'), - (0xBD0, 'V'), - (0xBD1, 'X'), - (0xBD7, 'V'), - (0xBD8, 'X'), - (0xBE6, 'V'), - (0xBFB, 'X'), - (0xC01, 'V'), - (0xC04, 'X'), - (0xC05, 'V'), - (0xC0D, 'X'), - (0xC0E, 'V'), - (0xC11, 'X'), - (0xC12, 'V'), - (0xC29, 'X'), - (0xC2A, 'V'), - (0xC34, 'X'), - (0xC35, 'V'), - ] - -def _seg_12(): - return [ - (0xC3A, 'X'), - (0xC3D, 'V'), - (0xC45, 'X'), - (0xC46, 'V'), - (0xC49, 'X'), - (0xC4A, 'V'), - (0xC4E, 'X'), - (0xC55, 'V'), - (0xC57, 'X'), - (0xC58, 'V'), - (0xC5A, 'X'), - (0xC60, 'V'), - (0xC64, 'X'), - (0xC66, 'V'), - (0xC70, 'X'), - (0xC78, 'V'), - (0xC80, 'X'), - (0xC82, 'V'), - (0xC84, 'X'), - (0xC85, 'V'), - (0xC8D, 'X'), - (0xC8E, 'V'), - (0xC91, 'X'), - (0xC92, 'V'), - (0xCA9, 'X'), - (0xCAA, 'V'), - (0xCB4, 'X'), - (0xCB5, 'V'), - (0xCBA, 'X'), - (0xCBC, 'V'), - (0xCC5, 'X'), - (0xCC6, 'V'), - (0xCC9, 'X'), - (0xCCA, 'V'), - (0xCCE, 'X'), - (0xCD5, 'V'), - (0xCD7, 'X'), - (0xCDE, 'V'), - (0xCDF, 'X'), - (0xCE0, 'V'), - (0xCE4, 'X'), - (0xCE6, 'V'), - (0xCF0, 'X'), - (0xCF1, 'V'), - (0xCF3, 'X'), - (0xD02, 'V'), - (0xD04, 'X'), - (0xD05, 'V'), - (0xD0D, 'X'), - (0xD0E, 'V'), - (0xD11, 'X'), - (0xD12, 'V'), - (0xD3B, 'X'), - (0xD3D, 'V'), - (0xD45, 'X'), - (0xD46, 'V'), - (0xD49, 'X'), - (0xD4A, 'V'), - (0xD4F, 'X'), - (0xD57, 'V'), - (0xD58, 'X'), - (0xD60, 'V'), - (0xD64, 'X'), - (0xD66, 'V'), - (0xD76, 'X'), - (0xD79, 'V'), - (0xD80, 'X'), - (0xD82, 'V'), - (0xD84, 'X'), - (0xD85, 'V'), - (0xD97, 'X'), - (0xD9A, 'V'), - (0xDB2, 'X'), - (0xDB3, 'V'), - (0xDBC, 'X'), - (0xDBD, 'V'), - (0xDBE, 'X'), - (0xDC0, 'V'), - (0xDC7, 'X'), - (0xDCA, 'V'), - (0xDCB, 'X'), - (0xDCF, 'V'), - (0xDD5, 'X'), - (0xDD6, 'V'), - (0xDD7, 'X'), - (0xDD8, 'V'), - (0xDE0, 'X'), - (0xDF2, 'V'), - (0xDF5, 'X'), - (0xE01, 'V'), - (0xE33, 'M', u'ํา'), - (0xE34, 'V'), - (0xE3B, 'X'), - (0xE3F, 'V'), - (0xE5C, 'X'), - (0xE81, 'V'), - (0xE83, 'X'), - (0xE84, 'V'), - (0xE85, 'X'), - (0xE87, 'V'), - ] - -def _seg_13(): - return [ - (0xE89, 'X'), - (0xE8A, 'V'), - (0xE8B, 'X'), - (0xE8D, 'V'), - (0xE8E, 'X'), - (0xE94, 'V'), - (0xE98, 'X'), - (0xE99, 'V'), - (0xEA0, 'X'), - (0xEA1, 'V'), - (0xEA4, 'X'), - (0xEA5, 'V'), - (0xEA6, 'X'), - (0xEA7, 'V'), - (0xEA8, 'X'), - (0xEAA, 'V'), - (0xEAC, 'X'), - (0xEAD, 'V'), - (0xEB3, 'M', u'ໍາ'), - (0xEB4, 'V'), - (0xEBA, 'X'), - (0xEBB, 'V'), - (0xEBE, 'X'), - (0xEC0, 'V'), - (0xEC5, 'X'), - (0xEC6, 'V'), - (0xEC7, 'X'), - (0xEC8, 'V'), - (0xECE, 'X'), - (0xED0, 'V'), - (0xEDA, 'X'), - (0xEDC, 'M', u'ຫນ'), - (0xEDD, 'M', u'ຫມ'), - (0xEDE, 'V'), - (0xEE0, 'X'), - (0xF00, 'V'), - (0xF0C, 'M', u'་'), - (0xF0D, 'V'), - (0xF43, 'M', u'གྷ'), - (0xF44, 'V'), - (0xF48, 'X'), - (0xF49, 'V'), - (0xF4D, 'M', u'ཌྷ'), - (0xF4E, 'V'), - (0xF52, 'M', u'དྷ'), - (0xF53, 'V'), - (0xF57, 'M', u'བྷ'), - (0xF58, 'V'), - (0xF5C, 'M', u'ཛྷ'), - (0xF5D, 'V'), - (0xF69, 'M', u'ཀྵ'), - (0xF6A, 'V'), - (0xF6D, 'X'), - (0xF71, 'V'), - (0xF73, 'M', u'ཱི'), - (0xF74, 'V'), - (0xF75, 'M', u'ཱུ'), - (0xF76, 'M', u'ྲྀ'), - (0xF77, 'M', u'ྲཱྀ'), - (0xF78, 'M', u'ླྀ'), - (0xF79, 'M', u'ླཱྀ'), - (0xF7A, 'V'), - (0xF81, 'M', u'ཱྀ'), - (0xF82, 'V'), - (0xF93, 'M', u'ྒྷ'), - (0xF94, 'V'), - (0xF98, 'X'), - (0xF99, 'V'), - (0xF9D, 'M', u'ྜྷ'), - (0xF9E, 'V'), - (0xFA2, 'M', u'ྡྷ'), - (0xFA3, 'V'), - (0xFA7, 'M', u'ྦྷ'), - (0xFA8, 'V'), - (0xFAC, 'M', u'ྫྷ'), - (0xFAD, 'V'), - (0xFB9, 'M', u'ྐྵ'), - (0xFBA, 'V'), - (0xFBD, 'X'), - (0xFBE, 'V'), - (0xFCD, 'X'), - (0xFCE, 'V'), - (0xFDB, 'X'), - (0x1000, 'V'), - (0x10A0, 'X'), - (0x10C7, 'M', u'ⴧ'), - (0x10C8, 'X'), - (0x10CD, 'M', u'ⴭ'), - (0x10CE, 'X'), - (0x10D0, 'V'), - (0x10FC, 'M', u'ნ'), - (0x10FD, 'V'), - (0x115F, 'X'), - (0x1161, 'V'), - (0x1249, 'X'), - (0x124A, 'V'), - (0x124E, 'X'), - (0x1250, 'V'), - (0x1257, 'X'), - (0x1258, 'V'), - ] - -def _seg_14(): - return [ - (0x1259, 'X'), - (0x125A, 'V'), - (0x125E, 'X'), - (0x1260, 'V'), - (0x1289, 'X'), - (0x128A, 'V'), - (0x128E, 'X'), - (0x1290, 'V'), - (0x12B1, 'X'), - (0x12B2, 'V'), - (0x12B6, 'X'), - (0x12B8, 'V'), - (0x12BF, 'X'), - (0x12C0, 'V'), - (0x12C1, 'X'), - (0x12C2, 'V'), - (0x12C6, 'X'), - (0x12C8, 'V'), - (0x12D7, 'X'), - (0x12D8, 'V'), - (0x1311, 'X'), - (0x1312, 'V'), - (0x1316, 'X'), - (0x1318, 'V'), - (0x135B, 'X'), - (0x135D, 'V'), - (0x137D, 'X'), - (0x1380, 'V'), - (0x139A, 'X'), - (0x13A0, 'V'), - (0x13F5, 'X'), - (0x1400, 'V'), - (0x1680, 'X'), - (0x1681, 'V'), - (0x169D, 'X'), - (0x16A0, 'V'), - (0x16F1, 'X'), - (0x1700, 'V'), - (0x170D, 'X'), - (0x170E, 'V'), - (0x1715, 'X'), - (0x1720, 'V'), - (0x1737, 'X'), - (0x1740, 'V'), - (0x1754, 'X'), - (0x1760, 'V'), - (0x176D, 'X'), - (0x176E, 'V'), - (0x1771, 'X'), - (0x1772, 'V'), - (0x1774, 'X'), - (0x1780, 'V'), - (0x17B4, 'X'), - (0x17B6, 'V'), - (0x17DE, 'X'), - (0x17E0, 'V'), - (0x17EA, 'X'), - (0x17F0, 'V'), - (0x17FA, 'X'), - (0x1800, 'V'), - (0x1806, 'X'), - (0x1807, 'V'), - (0x180B, 'I'), - (0x180E, 'X'), - (0x1810, 'V'), - (0x181A, 'X'), - (0x1820, 'V'), - (0x1878, 'X'), - (0x1880, 'V'), - (0x18AB, 'X'), - (0x18B0, 'V'), - (0x18F6, 'X'), - (0x1900, 'V'), - (0x191D, 'X'), - (0x1920, 'V'), - (0x192C, 'X'), - (0x1930, 'V'), - (0x193C, 'X'), - (0x1940, 'V'), - (0x1941, 'X'), - (0x1944, 'V'), - (0x196E, 'X'), - (0x1970, 'V'), - (0x1975, 'X'), - (0x1980, 'V'), - (0x19AC, 'X'), - (0x19B0, 'V'), - (0x19CA, 'X'), - (0x19D0, 'V'), - (0x19DB, 'X'), - (0x19DE, 'V'), - (0x1A1C, 'X'), - (0x1A1E, 'V'), - (0x1A5F, 'X'), - (0x1A60, 'V'), - (0x1A7D, 'X'), - (0x1A7F, 'V'), - (0x1A8A, 'X'), - (0x1A90, 'V'), - (0x1A9A, 'X'), - ] - -def _seg_15(): - return [ - (0x1AA0, 'V'), - (0x1AAE, 'X'), - (0x1B00, 'V'), - (0x1B4C, 'X'), - (0x1B50, 'V'), - (0x1B7D, 'X'), - (0x1B80, 'V'), - (0x1BF4, 'X'), - (0x1BFC, 'V'), - (0x1C38, 'X'), - (0x1C3B, 'V'), - (0x1C4A, 'X'), - (0x1C4D, 'V'), - (0x1C80, 'X'), - (0x1CC0, 'V'), - (0x1CC8, 'X'), - (0x1CD0, 'V'), - (0x1CF7, 'X'), - (0x1D00, 'V'), - (0x1D2C, 'M', u'a'), - (0x1D2D, 'M', u'æ'), - (0x1D2E, 'M', u'b'), - (0x1D2F, 'V'), - (0x1D30, 'M', u'd'), - (0x1D31, 'M', u'e'), - (0x1D32, 'M', u'ǝ'), - (0x1D33, 'M', u'g'), - (0x1D34, 'M', u'h'), - (0x1D35, 'M', u'i'), - (0x1D36, 'M', u'j'), - (0x1D37, 'M', u'k'), - (0x1D38, 'M', u'l'), - (0x1D39, 'M', u'm'), - (0x1D3A, 'M', u'n'), - (0x1D3B, 'V'), - (0x1D3C, 'M', u'o'), - (0x1D3D, 'M', u'ȣ'), - (0x1D3E, 'M', u'p'), - (0x1D3F, 'M', u'r'), - (0x1D40, 'M', u't'), - (0x1D41, 'M', u'u'), - (0x1D42, 'M', u'w'), - (0x1D43, 'M', u'a'), - (0x1D44, 'M', u'ɐ'), - (0x1D45, 'M', u'ɑ'), - (0x1D46, 'M', u'ᴂ'), - (0x1D47, 'M', u'b'), - (0x1D48, 'M', u'd'), - (0x1D49, 'M', u'e'), - (0x1D4A, 'M', u'ə'), - (0x1D4B, 'M', u'ɛ'), - (0x1D4C, 'M', u'ɜ'), - (0x1D4D, 'M', u'g'), - (0x1D4E, 'V'), - (0x1D4F, 'M', u'k'), - (0x1D50, 'M', u'm'), - (0x1D51, 'M', u'ŋ'), - (0x1D52, 'M', u'o'), - (0x1D53, 'M', u'ɔ'), - (0x1D54, 'M', u'ᴖ'), - (0x1D55, 'M', u'ᴗ'), - (0x1D56, 'M', u'p'), - (0x1D57, 'M', u't'), - (0x1D58, 'M', u'u'), - (0x1D59, 'M', u'ᴝ'), - (0x1D5A, 'M', u'ɯ'), - (0x1D5B, 'M', u'v'), - (0x1D5C, 'M', u'ᴥ'), - (0x1D5D, 'M', u'β'), - (0x1D5E, 'M', u'γ'), - (0x1D5F, 'M', u'δ'), - (0x1D60, 'M', u'φ'), - (0x1D61, 'M', u'χ'), - (0x1D62, 'M', u'i'), - (0x1D63, 'M', u'r'), - (0x1D64, 'M', u'u'), - (0x1D65, 'M', u'v'), - (0x1D66, 'M', u'β'), - (0x1D67, 'M', u'γ'), - (0x1D68, 'M', u'ρ'), - (0x1D69, 'M', u'φ'), - (0x1D6A, 'M', u'χ'), - (0x1D6B, 'V'), - (0x1D78, 'M', u'н'), - (0x1D79, 'V'), - (0x1D9B, 'M', u'ɒ'), - (0x1D9C, 'M', u'c'), - (0x1D9D, 'M', u'ɕ'), - (0x1D9E, 'M', u'ð'), - (0x1D9F, 'M', u'ɜ'), - (0x1DA0, 'M', u'f'), - (0x1DA1, 'M', u'ɟ'), - (0x1DA2, 'M', u'ɡ'), - (0x1DA3, 'M', u'ɥ'), - (0x1DA4, 'M', u'ɨ'), - (0x1DA5, 'M', u'ɩ'), - (0x1DA6, 'M', u'ɪ'), - (0x1DA7, 'M', u'ᵻ'), - (0x1DA8, 'M', u'ʝ'), - (0x1DA9, 'M', u'ɭ'), - ] - -def _seg_16(): - return [ - (0x1DAA, 'M', u'ᶅ'), - (0x1DAB, 'M', u'ʟ'), - (0x1DAC, 'M', u'ɱ'), - (0x1DAD, 'M', u'ɰ'), - (0x1DAE, 'M', u'ɲ'), - (0x1DAF, 'M', u'ɳ'), - (0x1DB0, 'M', u'ɴ'), - (0x1DB1, 'M', u'ɵ'), - (0x1DB2, 'M', u'ɸ'), - (0x1DB3, 'M', u'ʂ'), - (0x1DB4, 'M', u'ʃ'), - (0x1DB5, 'M', u'ƫ'), - (0x1DB6, 'M', u'ʉ'), - (0x1DB7, 'M', u'ʊ'), - (0x1DB8, 'M', u'ᴜ'), - (0x1DB9, 'M', u'ʋ'), - (0x1DBA, 'M', u'ʌ'), - (0x1DBB, 'M', u'z'), - (0x1DBC, 'M', u'ʐ'), - (0x1DBD, 'M', u'ʑ'), - (0x1DBE, 'M', u'ʒ'), - (0x1DBF, 'M', u'θ'), - (0x1DC0, 'V'), - (0x1DE7, 'X'), - (0x1DFC, 'V'), - (0x1E00, 'M', u'ḁ'), - (0x1E01, 'V'), - (0x1E02, 'M', u'ḃ'), - (0x1E03, 'V'), - (0x1E04, 'M', u'ḅ'), - (0x1E05, 'V'), - (0x1E06, 'M', u'ḇ'), - (0x1E07, 'V'), - (0x1E08, 'M', u'ḉ'), - (0x1E09, 'V'), - (0x1E0A, 'M', u'ḋ'), - (0x1E0B, 'V'), - (0x1E0C, 'M', u'ḍ'), - (0x1E0D, 'V'), - (0x1E0E, 'M', u'ḏ'), - (0x1E0F, 'V'), - (0x1E10, 'M', u'ḑ'), - (0x1E11, 'V'), - (0x1E12, 'M', u'ḓ'), - (0x1E13, 'V'), - (0x1E14, 'M', u'ḕ'), - (0x1E15, 'V'), - (0x1E16, 'M', u'ḗ'), - (0x1E17, 'V'), - (0x1E18, 'M', u'ḙ'), - (0x1E19, 'V'), - (0x1E1A, 'M', u'ḛ'), - (0x1E1B, 'V'), - (0x1E1C, 'M', u'ḝ'), - (0x1E1D, 'V'), - (0x1E1E, 'M', u'ḟ'), - (0x1E1F, 'V'), - (0x1E20, 'M', u'ḡ'), - (0x1E21, 'V'), - (0x1E22, 'M', u'ḣ'), - (0x1E23, 'V'), - (0x1E24, 'M', u'ḥ'), - (0x1E25, 'V'), - (0x1E26, 'M', u'ḧ'), - (0x1E27, 'V'), - (0x1E28, 'M', u'ḩ'), - (0x1E29, 'V'), - (0x1E2A, 'M', u'ḫ'), - (0x1E2B, 'V'), - (0x1E2C, 'M', u'ḭ'), - (0x1E2D, 'V'), - (0x1E2E, 'M', u'ḯ'), - (0x1E2F, 'V'), - (0x1E30, 'M', u'ḱ'), - (0x1E31, 'V'), - (0x1E32, 'M', u'ḳ'), - (0x1E33, 'V'), - (0x1E34, 'M', u'ḵ'), - (0x1E35, 'V'), - (0x1E36, 'M', u'ḷ'), - (0x1E37, 'V'), - (0x1E38, 'M', u'ḹ'), - (0x1E39, 'V'), - (0x1E3A, 'M', u'ḻ'), - (0x1E3B, 'V'), - (0x1E3C, 'M', u'ḽ'), - (0x1E3D, 'V'), - (0x1E3E, 'M', u'ḿ'), - (0x1E3F, 'V'), - (0x1E40, 'M', u'ṁ'), - (0x1E41, 'V'), - (0x1E42, 'M', u'ṃ'), - (0x1E43, 'V'), - (0x1E44, 'M', u'ṅ'), - (0x1E45, 'V'), - (0x1E46, 'M', u'ṇ'), - (0x1E47, 'V'), - (0x1E48, 'M', u'ṉ'), - (0x1E49, 'V'), - (0x1E4A, 'M', u'ṋ'), - ] - -def _seg_17(): - return [ - (0x1E4B, 'V'), - (0x1E4C, 'M', u'ṍ'), - (0x1E4D, 'V'), - (0x1E4E, 'M', u'ṏ'), - (0x1E4F, 'V'), - (0x1E50, 'M', u'ṑ'), - (0x1E51, 'V'), - (0x1E52, 'M', u'ṓ'), - (0x1E53, 'V'), - (0x1E54, 'M', u'ṕ'), - (0x1E55, 'V'), - (0x1E56, 'M', u'ṗ'), - (0x1E57, 'V'), - (0x1E58, 'M', u'ṙ'), - (0x1E59, 'V'), - (0x1E5A, 'M', u'ṛ'), - (0x1E5B, 'V'), - (0x1E5C, 'M', u'ṝ'), - (0x1E5D, 'V'), - (0x1E5E, 'M', u'ṟ'), - (0x1E5F, 'V'), - (0x1E60, 'M', u'ṡ'), - (0x1E61, 'V'), - (0x1E62, 'M', u'ṣ'), - (0x1E63, 'V'), - (0x1E64, 'M', u'ṥ'), - (0x1E65, 'V'), - (0x1E66, 'M', u'ṧ'), - (0x1E67, 'V'), - (0x1E68, 'M', u'ṩ'), - (0x1E69, 'V'), - (0x1E6A, 'M', u'ṫ'), - (0x1E6B, 'V'), - (0x1E6C, 'M', u'ṭ'), - (0x1E6D, 'V'), - (0x1E6E, 'M', u'ṯ'), - (0x1E6F, 'V'), - (0x1E70, 'M', u'ṱ'), - (0x1E71, 'V'), - (0x1E72, 'M', u'ṳ'), - (0x1E73, 'V'), - (0x1E74, 'M', u'ṵ'), - (0x1E75, 'V'), - (0x1E76, 'M', u'ṷ'), - (0x1E77, 'V'), - (0x1E78, 'M', u'ṹ'), - (0x1E79, 'V'), - (0x1E7A, 'M', u'ṻ'), - (0x1E7B, 'V'), - (0x1E7C, 'M', u'ṽ'), - (0x1E7D, 'V'), - (0x1E7E, 'M', u'ṿ'), - (0x1E7F, 'V'), - (0x1E80, 'M', u'ẁ'), - (0x1E81, 'V'), - (0x1E82, 'M', u'ẃ'), - (0x1E83, 'V'), - (0x1E84, 'M', u'ẅ'), - (0x1E85, 'V'), - (0x1E86, 'M', u'ẇ'), - (0x1E87, 'V'), - (0x1E88, 'M', u'ẉ'), - (0x1E89, 'V'), - (0x1E8A, 'M', u'ẋ'), - (0x1E8B, 'V'), - (0x1E8C, 'M', u'ẍ'), - (0x1E8D, 'V'), - (0x1E8E, 'M', u'ẏ'), - (0x1E8F, 'V'), - (0x1E90, 'M', u'ẑ'), - (0x1E91, 'V'), - (0x1E92, 'M', u'ẓ'), - (0x1E93, 'V'), - (0x1E94, 'M', u'ẕ'), - (0x1E95, 'V'), - (0x1E9A, 'M', u'aʾ'), - (0x1E9B, 'M', u'ṡ'), - (0x1E9C, 'V'), - (0x1E9E, 'M', u'ss'), - (0x1E9F, 'V'), - (0x1EA0, 'M', u'ạ'), - (0x1EA1, 'V'), - (0x1EA2, 'M', u'ả'), - (0x1EA3, 'V'), - (0x1EA4, 'M', u'ấ'), - (0x1EA5, 'V'), - (0x1EA6, 'M', u'ầ'), - (0x1EA7, 'V'), - (0x1EA8, 'M', u'ẩ'), - (0x1EA9, 'V'), - (0x1EAA, 'M', u'ẫ'), - (0x1EAB, 'V'), - (0x1EAC, 'M', u'ậ'), - (0x1EAD, 'V'), - (0x1EAE, 'M', u'ắ'), - (0x1EAF, 'V'), - (0x1EB0, 'M', u'ằ'), - (0x1EB1, 'V'), - (0x1EB2, 'M', u'ẳ'), - (0x1EB3, 'V'), - ] - -def _seg_18(): - return [ - (0x1EB4, 'M', u'ẵ'), - (0x1EB5, 'V'), - (0x1EB6, 'M', u'ặ'), - (0x1EB7, 'V'), - (0x1EB8, 'M', u'ẹ'), - (0x1EB9, 'V'), - (0x1EBA, 'M', u'ẻ'), - (0x1EBB, 'V'), - (0x1EBC, 'M', u'ẽ'), - (0x1EBD, 'V'), - (0x1EBE, 'M', u'ế'), - (0x1EBF, 'V'), - (0x1EC0, 'M', u'ề'), - (0x1EC1, 'V'), - (0x1EC2, 'M', u'ể'), - (0x1EC3, 'V'), - (0x1EC4, 'M', u'ễ'), - (0x1EC5, 'V'), - (0x1EC6, 'M', u'ệ'), - (0x1EC7, 'V'), - (0x1EC8, 'M', u'ỉ'), - (0x1EC9, 'V'), - (0x1ECA, 'M', u'ị'), - (0x1ECB, 'V'), - (0x1ECC, 'M', u'ọ'), - (0x1ECD, 'V'), - (0x1ECE, 'M', u'ỏ'), - (0x1ECF, 'V'), - (0x1ED0, 'M', u'ố'), - (0x1ED1, 'V'), - (0x1ED2, 'M', u'ồ'), - (0x1ED3, 'V'), - (0x1ED4, 'M', u'ổ'), - (0x1ED5, 'V'), - (0x1ED6, 'M', u'ỗ'), - (0x1ED7, 'V'), - (0x1ED8, 'M', u'ộ'), - (0x1ED9, 'V'), - (0x1EDA, 'M', u'ớ'), - (0x1EDB, 'V'), - (0x1EDC, 'M', u'ờ'), - (0x1EDD, 'V'), - (0x1EDE, 'M', u'ở'), - (0x1EDF, 'V'), - (0x1EE0, 'M', u'ỡ'), - (0x1EE1, 'V'), - (0x1EE2, 'M', u'ợ'), - (0x1EE3, 'V'), - (0x1EE4, 'M', u'ụ'), - (0x1EE5, 'V'), - (0x1EE6, 'M', u'ủ'), - (0x1EE7, 'V'), - (0x1EE8, 'M', u'ứ'), - (0x1EE9, 'V'), - (0x1EEA, 'M', u'ừ'), - (0x1EEB, 'V'), - (0x1EEC, 'M', u'ử'), - (0x1EED, 'V'), - (0x1EEE, 'M', u'ữ'), - (0x1EEF, 'V'), - (0x1EF0, 'M', u'ự'), - (0x1EF1, 'V'), - (0x1EF2, 'M', u'ỳ'), - (0x1EF3, 'V'), - (0x1EF4, 'M', u'ỵ'), - (0x1EF5, 'V'), - (0x1EF6, 'M', u'ỷ'), - (0x1EF7, 'V'), - (0x1EF8, 'M', u'ỹ'), - (0x1EF9, 'V'), - (0x1EFA, 'M', u'ỻ'), - (0x1EFB, 'V'), - (0x1EFC, 'M', u'ỽ'), - (0x1EFD, 'V'), - (0x1EFE, 'M', u'ỿ'), - (0x1EFF, 'V'), - (0x1F08, 'M', u'ἀ'), - (0x1F09, 'M', u'ἁ'), - (0x1F0A, 'M', u'ἂ'), - (0x1F0B, 'M', u'ἃ'), - (0x1F0C, 'M', u'ἄ'), - (0x1F0D, 'M', u'ἅ'), - (0x1F0E, 'M', u'ἆ'), - (0x1F0F, 'M', u'ἇ'), - (0x1F10, 'V'), - (0x1F16, 'X'), - (0x1F18, 'M', u'ἐ'), - (0x1F19, 'M', u'ἑ'), - (0x1F1A, 'M', u'ἒ'), - (0x1F1B, 'M', u'ἓ'), - (0x1F1C, 'M', u'ἔ'), - (0x1F1D, 'M', u'ἕ'), - (0x1F1E, 'X'), - (0x1F20, 'V'), - (0x1F28, 'M', u'ἠ'), - (0x1F29, 'M', u'ἡ'), - (0x1F2A, 'M', u'ἢ'), - (0x1F2B, 'M', u'ἣ'), - (0x1F2C, 'M', u'ἤ'), - (0x1F2D, 'M', u'ἥ'), - ] - -def _seg_19(): - return [ - (0x1F2E, 'M', u'ἦ'), - (0x1F2F, 'M', u'ἧ'), - (0x1F30, 'V'), - (0x1F38, 'M', u'ἰ'), - (0x1F39, 'M', u'ἱ'), - (0x1F3A, 'M', u'ἲ'), - (0x1F3B, 'M', u'ἳ'), - (0x1F3C, 'M', u'ἴ'), - (0x1F3D, 'M', u'ἵ'), - (0x1F3E, 'M', u'ἶ'), - (0x1F3F, 'M', u'ἷ'), - (0x1F40, 'V'), - (0x1F46, 'X'), - (0x1F48, 'M', u'ὀ'), - (0x1F49, 'M', u'ὁ'), - (0x1F4A, 'M', u'ὂ'), - (0x1F4B, 'M', u'ὃ'), - (0x1F4C, 'M', u'ὄ'), - (0x1F4D, 'M', u'ὅ'), - (0x1F4E, 'X'), - (0x1F50, 'V'), - (0x1F58, 'X'), - (0x1F59, 'M', u'ὑ'), - (0x1F5A, 'X'), - (0x1F5B, 'M', u'ὓ'), - (0x1F5C, 'X'), - (0x1F5D, 'M', u'ὕ'), - (0x1F5E, 'X'), - (0x1F5F, 'M', u'ὗ'), - (0x1F60, 'V'), - (0x1F68, 'M', u'ὠ'), - (0x1F69, 'M', u'ὡ'), - (0x1F6A, 'M', u'ὢ'), - (0x1F6B, 'M', u'ὣ'), - (0x1F6C, 'M', u'ὤ'), - (0x1F6D, 'M', u'ὥ'), - (0x1F6E, 'M', u'ὦ'), - (0x1F6F, 'M', u'ὧ'), - (0x1F70, 'V'), - (0x1F71, 'M', u'ά'), - (0x1F72, 'V'), - (0x1F73, 'M', u'έ'), - (0x1F74, 'V'), - (0x1F75, 'M', u'ή'), - (0x1F76, 'V'), - (0x1F77, 'M', u'ί'), - (0x1F78, 'V'), - (0x1F79, 'M', u'ό'), - (0x1F7A, 'V'), - (0x1F7B, 'M', u'ύ'), - (0x1F7C, 'V'), - (0x1F7D, 'M', u'ώ'), - (0x1F7E, 'X'), - (0x1F80, 'M', u'ἀι'), - (0x1F81, 'M', u'ἁι'), - (0x1F82, 'M', u'ἂι'), - (0x1F83, 'M', u'ἃι'), - (0x1F84, 'M', u'ἄι'), - (0x1F85, 'M', u'ἅι'), - (0x1F86, 'M', u'ἆι'), - (0x1F87, 'M', u'ἇι'), - (0x1F88, 'M', u'ἀι'), - (0x1F89, 'M', u'ἁι'), - (0x1F8A, 'M', u'ἂι'), - (0x1F8B, 'M', u'ἃι'), - (0x1F8C, 'M', u'ἄι'), - (0x1F8D, 'M', u'ἅι'), - (0x1F8E, 'M', u'ἆι'), - (0x1F8F, 'M', u'ἇι'), - (0x1F90, 'M', u'ἠι'), - (0x1F91, 'M', u'ἡι'), - (0x1F92, 'M', u'ἢι'), - (0x1F93, 'M', u'ἣι'), - (0x1F94, 'M', u'ἤι'), - (0x1F95, 'M', u'ἥι'), - (0x1F96, 'M', u'ἦι'), - (0x1F97, 'M', u'ἧι'), - (0x1F98, 'M', u'ἠι'), - (0x1F99, 'M', u'ἡι'), - (0x1F9A, 'M', u'ἢι'), - (0x1F9B, 'M', u'ἣι'), - (0x1F9C, 'M', u'ἤι'), - (0x1F9D, 'M', u'ἥι'), - (0x1F9E, 'M', u'ἦι'), - (0x1F9F, 'M', u'ἧι'), - (0x1FA0, 'M', u'ὠι'), - (0x1FA1, 'M', u'ὡι'), - (0x1FA2, 'M', u'ὢι'), - (0x1FA3, 'M', u'ὣι'), - (0x1FA4, 'M', u'ὤι'), - (0x1FA5, 'M', u'ὥι'), - (0x1FA6, 'M', u'ὦι'), - (0x1FA7, 'M', u'ὧι'), - (0x1FA8, 'M', u'ὠι'), - (0x1FA9, 'M', u'ὡι'), - (0x1FAA, 'M', u'ὢι'), - (0x1FAB, 'M', u'ὣι'), - (0x1FAC, 'M', u'ὤι'), - (0x1FAD, 'M', u'ὥι'), - (0x1FAE, 'M', u'ὦι'), - ] - -def _seg_20(): - return [ - (0x1FAF, 'M', u'ὧι'), - (0x1FB0, 'V'), - (0x1FB2, 'M', u'ὰι'), - (0x1FB3, 'M', u'αι'), - (0x1FB4, 'M', u'άι'), - (0x1FB5, 'X'), - (0x1FB6, 'V'), - (0x1FB7, 'M', u'ᾶι'), - (0x1FB8, 'M', u'ᾰ'), - (0x1FB9, 'M', u'ᾱ'), - (0x1FBA, 'M', u'ὰ'), - (0x1FBB, 'M', u'ά'), - (0x1FBC, 'M', u'αι'), - (0x1FBD, '3', u' ̓'), - (0x1FBE, 'M', u'ι'), - (0x1FBF, '3', u' ̓'), - (0x1FC0, '3', u' ͂'), - (0x1FC1, '3', u' ̈͂'), - (0x1FC2, 'M', u'ὴι'), - (0x1FC3, 'M', u'ηι'), - (0x1FC4, 'M', u'ήι'), - (0x1FC5, 'X'), - (0x1FC6, 'V'), - (0x1FC7, 'M', u'ῆι'), - (0x1FC8, 'M', u'ὲ'), - (0x1FC9, 'M', u'έ'), - (0x1FCA, 'M', u'ὴ'), - (0x1FCB, 'M', u'ή'), - (0x1FCC, 'M', u'ηι'), - (0x1FCD, '3', u' ̓̀'), - (0x1FCE, '3', u' ̓́'), - (0x1FCF, '3', u' ̓͂'), - (0x1FD0, 'V'), - (0x1FD3, 'M', u'ΐ'), - (0x1FD4, 'X'), - (0x1FD6, 'V'), - (0x1FD8, 'M', u'ῐ'), - (0x1FD9, 'M', u'ῑ'), - (0x1FDA, 'M', u'ὶ'), - (0x1FDB, 'M', u'ί'), - (0x1FDC, 'X'), - (0x1FDD, '3', u' ̔̀'), - (0x1FDE, '3', u' ̔́'), - (0x1FDF, '3', u' ̔͂'), - (0x1FE0, 'V'), - (0x1FE3, 'M', u'ΰ'), - (0x1FE4, 'V'), - (0x1FE8, 'M', u'ῠ'), - (0x1FE9, 'M', u'ῡ'), - (0x1FEA, 'M', u'ὺ'), - (0x1FEB, 'M', u'ύ'), - (0x1FEC, 'M', u'ῥ'), - (0x1FED, '3', u' ̈̀'), - (0x1FEE, '3', u' ̈́'), - (0x1FEF, '3', u'`'), - (0x1FF0, 'X'), - (0x1FF2, 'M', u'ὼι'), - (0x1FF3, 'M', u'ωι'), - (0x1FF4, 'M', u'ώι'), - (0x1FF5, 'X'), - (0x1FF6, 'V'), - (0x1FF7, 'M', u'ῶι'), - (0x1FF8, 'M', u'ὸ'), - (0x1FF9, 'M', u'ό'), - (0x1FFA, 'M', u'ὼ'), - (0x1FFB, 'M', u'ώ'), - (0x1FFC, 'M', u'ωι'), - (0x1FFD, '3', u' ́'), - (0x1FFE, '3', u' ̔'), - (0x1FFF, 'X'), - (0x2000, '3', u' '), - (0x200B, 'I'), - (0x200C, 'D', u''), - (0x200E, 'X'), - (0x2010, 'V'), - (0x2011, 'M', u'‐'), - (0x2012, 'V'), - (0x2017, '3', u' ̳'), - (0x2018, 'V'), - (0x2024, 'X'), - (0x2027, 'V'), - (0x2028, 'X'), - (0x202F, '3', u' '), - (0x2030, 'V'), - (0x2033, 'M', u'′′'), - (0x2034, 'M', u'′′′'), - (0x2035, 'V'), - (0x2036, 'M', u'‵‵'), - (0x2037, 'M', u'‵‵‵'), - (0x2038, 'V'), - (0x203C, '3', u'!!'), - (0x203D, 'V'), - (0x203E, '3', u' ̅'), - (0x203F, 'V'), - (0x2047, '3', u'??'), - (0x2048, '3', u'?!'), - (0x2049, '3', u'!?'), - (0x204A, 'V'), - (0x2057, 'M', u'′′′′'), - (0x2058, 'V'), - ] - -def _seg_21(): - return [ - (0x205F, '3', u' '), - (0x2060, 'I'), - (0x2061, 'X'), - (0x2064, 'I'), - (0x2065, 'X'), - (0x2070, 'M', u'0'), - (0x2071, 'M', u'i'), - (0x2072, 'X'), - (0x2074, 'M', u'4'), - (0x2075, 'M', u'5'), - (0x2076, 'M', u'6'), - (0x2077, 'M', u'7'), - (0x2078, 'M', u'8'), - (0x2079, 'M', u'9'), - (0x207A, '3', u'+'), - (0x207B, 'M', u'−'), - (0x207C, '3', u'='), - (0x207D, '3', u'('), - (0x207E, '3', u')'), - (0x207F, 'M', u'n'), - (0x2080, 'M', u'0'), - (0x2081, 'M', u'1'), - (0x2082, 'M', u'2'), - (0x2083, 'M', u'3'), - (0x2084, 'M', u'4'), - (0x2085, 'M', u'5'), - (0x2086, 'M', u'6'), - (0x2087, 'M', u'7'), - (0x2088, 'M', u'8'), - (0x2089, 'M', u'9'), - (0x208A, '3', u'+'), - (0x208B, 'M', u'−'), - (0x208C, '3', u'='), - (0x208D, '3', u'('), - (0x208E, '3', u')'), - (0x208F, 'X'), - (0x2090, 'M', u'a'), - (0x2091, 'M', u'e'), - (0x2092, 'M', u'o'), - (0x2093, 'M', u'x'), - (0x2094, 'M', u'ə'), - (0x2095, 'M', u'h'), - (0x2096, 'M', u'k'), - (0x2097, 'M', u'l'), - (0x2098, 'M', u'm'), - (0x2099, 'M', u'n'), - (0x209A, 'M', u'p'), - (0x209B, 'M', u's'), - (0x209C, 'M', u't'), - (0x209D, 'X'), - (0x20A0, 'V'), - (0x20A8, 'M', u'rs'), - (0x20A9, 'V'), - (0x20BB, 'X'), - (0x20D0, 'V'), - (0x20F1, 'X'), - (0x2100, '3', u'a/c'), - (0x2101, '3', u'a/s'), - (0x2102, 'M', u'c'), - (0x2103, 'M', u'°c'), - (0x2104, 'V'), - (0x2105, '3', u'c/o'), - (0x2106, '3', u'c/u'), - (0x2107, 'M', u'ɛ'), - (0x2108, 'V'), - (0x2109, 'M', u'°f'), - (0x210A, 'M', u'g'), - (0x210B, 'M', u'h'), - (0x210F, 'M', u'ħ'), - (0x2110, 'M', u'i'), - (0x2112, 'M', u'l'), - (0x2114, 'V'), - (0x2115, 'M', u'n'), - (0x2116, 'M', u'no'), - (0x2117, 'V'), - (0x2119, 'M', u'p'), - (0x211A, 'M', u'q'), - (0x211B, 'M', u'r'), - (0x211E, 'V'), - (0x2120, 'M', u'sm'), - (0x2121, 'M', u'tel'), - (0x2122, 'M', u'tm'), - (0x2123, 'V'), - (0x2124, 'M', u'z'), - (0x2125, 'V'), - (0x2126, 'M', u'ω'), - (0x2127, 'V'), - (0x2128, 'M', u'z'), - (0x2129, 'V'), - (0x212A, 'M', u'k'), - (0x212B, 'M', u'å'), - (0x212C, 'M', u'b'), - (0x212D, 'M', u'c'), - (0x212E, 'V'), - (0x212F, 'M', u'e'), - (0x2131, 'M', u'f'), - (0x2132, 'X'), - (0x2133, 'M', u'm'), - (0x2134, 'M', u'o'), - (0x2135, 'M', u'א'), - ] - -def _seg_22(): - return [ - (0x2136, 'M', u'ב'), - (0x2137, 'M', u'ג'), - (0x2138, 'M', u'ד'), - (0x2139, 'M', u'i'), - (0x213A, 'V'), - (0x213B, 'M', u'fax'), - (0x213C, 'M', u'π'), - (0x213D, 'M', u'γ'), - (0x213F, 'M', u'π'), - (0x2140, 'M', u'∑'), - (0x2141, 'V'), - (0x2145, 'M', u'd'), - (0x2147, 'M', u'e'), - (0x2148, 'M', u'i'), - (0x2149, 'M', u'j'), - (0x214A, 'V'), - (0x2150, 'M', u'1⁄7'), - (0x2151, 'M', u'1⁄9'), - (0x2152, 'M', u'1⁄10'), - (0x2153, 'M', u'1⁄3'), - (0x2154, 'M', u'2⁄3'), - (0x2155, 'M', u'1⁄5'), - (0x2156, 'M', u'2⁄5'), - (0x2157, 'M', u'3⁄5'), - (0x2158, 'M', u'4⁄5'), - (0x2159, 'M', u'1⁄6'), - (0x215A, 'M', u'5⁄6'), - (0x215B, 'M', u'1⁄8'), - (0x215C, 'M', u'3⁄8'), - (0x215D, 'M', u'5⁄8'), - (0x215E, 'M', u'7⁄8'), - (0x215F, 'M', u'1⁄'), - (0x2160, 'M', u'i'), - (0x2161, 'M', u'ii'), - (0x2162, 'M', u'iii'), - (0x2163, 'M', u'iv'), - (0x2164, 'M', u'v'), - (0x2165, 'M', u'vi'), - (0x2166, 'M', u'vii'), - (0x2167, 'M', u'viii'), - (0x2168, 'M', u'ix'), - (0x2169, 'M', u'x'), - (0x216A, 'M', u'xi'), - (0x216B, 'M', u'xii'), - (0x216C, 'M', u'l'), - (0x216D, 'M', u'c'), - (0x216E, 'M', u'd'), - (0x216F, 'M', u'm'), - (0x2170, 'M', u'i'), - (0x2171, 'M', u'ii'), - (0x2172, 'M', u'iii'), - (0x2173, 'M', u'iv'), - (0x2174, 'M', u'v'), - (0x2175, 'M', u'vi'), - (0x2176, 'M', u'vii'), - (0x2177, 'M', u'viii'), - (0x2178, 'M', u'ix'), - (0x2179, 'M', u'x'), - (0x217A, 'M', u'xi'), - (0x217B, 'M', u'xii'), - (0x217C, 'M', u'l'), - (0x217D, 'M', u'c'), - (0x217E, 'M', u'd'), - (0x217F, 'M', u'm'), - (0x2180, 'V'), - (0x2183, 'X'), - (0x2184, 'V'), - (0x2189, 'M', u'0⁄3'), - (0x218A, 'X'), - (0x2190, 'V'), - (0x222C, 'M', u'∫∫'), - (0x222D, 'M', u'∫∫∫'), - (0x222E, 'V'), - (0x222F, 'M', u'∮∮'), - (0x2230, 'M', u'∮∮∮'), - (0x2231, 'V'), - (0x2260, '3'), - (0x2261, 'V'), - (0x226E, '3'), - (0x2270, 'V'), - (0x2329, 'M', u'〈'), - (0x232A, 'M', u'〉'), - (0x232B, 'V'), - (0x23F4, 'X'), - (0x2400, 'V'), - (0x2427, 'X'), - (0x2440, 'V'), - (0x244B, 'X'), - (0x2460, 'M', u'1'), - (0x2461, 'M', u'2'), - (0x2462, 'M', u'3'), - (0x2463, 'M', u'4'), - (0x2464, 'M', u'5'), - (0x2465, 'M', u'6'), - (0x2466, 'M', u'7'), - (0x2467, 'M', u'8'), - (0x2468, 'M', u'9'), - (0x2469, 'M', u'10'), - (0x246A, 'M', u'11'), - (0x246B, 'M', u'12'), - ] - -def _seg_23(): - return [ - (0x246C, 'M', u'13'), - (0x246D, 'M', u'14'), - (0x246E, 'M', u'15'), - (0x246F, 'M', u'16'), - (0x2470, 'M', u'17'), - (0x2471, 'M', u'18'), - (0x2472, 'M', u'19'), - (0x2473, 'M', u'20'), - (0x2474, '3', u'(1)'), - (0x2475, '3', u'(2)'), - (0x2476, '3', u'(3)'), - (0x2477, '3', u'(4)'), - (0x2478, '3', u'(5)'), - (0x2479, '3', u'(6)'), - (0x247A, '3', u'(7)'), - (0x247B, '3', u'(8)'), - (0x247C, '3', u'(9)'), - (0x247D, '3', u'(10)'), - (0x247E, '3', u'(11)'), - (0x247F, '3', u'(12)'), - (0x2480, '3', u'(13)'), - (0x2481, '3', u'(14)'), - (0x2482, '3', u'(15)'), - (0x2483, '3', u'(16)'), - (0x2484, '3', u'(17)'), - (0x2485, '3', u'(18)'), - (0x2486, '3', u'(19)'), - (0x2487, '3', u'(20)'), - (0x2488, 'X'), - (0x249C, '3', u'(a)'), - (0x249D, '3', u'(b)'), - (0x249E, '3', u'(c)'), - (0x249F, '3', u'(d)'), - (0x24A0, '3', u'(e)'), - (0x24A1, '3', u'(f)'), - (0x24A2, '3', u'(g)'), - (0x24A3, '3', u'(h)'), - (0x24A4, '3', u'(i)'), - (0x24A5, '3', u'(j)'), - (0x24A6, '3', u'(k)'), - (0x24A7, '3', u'(l)'), - (0x24A8, '3', u'(m)'), - (0x24A9, '3', u'(n)'), - (0x24AA, '3', u'(o)'), - (0x24AB, '3', u'(p)'), - (0x24AC, '3', u'(q)'), - (0x24AD, '3', u'(r)'), - (0x24AE, '3', u'(s)'), - (0x24AF, '3', u'(t)'), - (0x24B0, '3', u'(u)'), - (0x24B1, '3', u'(v)'), - (0x24B2, '3', u'(w)'), - (0x24B3, '3', u'(x)'), - (0x24B4, '3', u'(y)'), - (0x24B5, '3', u'(z)'), - (0x24B6, 'M', u'a'), - (0x24B7, 'M', u'b'), - (0x24B8, 'M', u'c'), - (0x24B9, 'M', u'd'), - (0x24BA, 'M', u'e'), - (0x24BB, 'M', u'f'), - (0x24BC, 'M', u'g'), - (0x24BD, 'M', u'h'), - (0x24BE, 'M', u'i'), - (0x24BF, 'M', u'j'), - (0x24C0, 'M', u'k'), - (0x24C1, 'M', u'l'), - (0x24C2, 'M', u'm'), - (0x24C3, 'M', u'n'), - (0x24C4, 'M', u'o'), - (0x24C5, 'M', u'p'), - (0x24C6, 'M', u'q'), - (0x24C7, 'M', u'r'), - (0x24C8, 'M', u's'), - (0x24C9, 'M', u't'), - (0x24CA, 'M', u'u'), - (0x24CB, 'M', u'v'), - (0x24CC, 'M', u'w'), - (0x24CD, 'M', u'x'), - (0x24CE, 'M', u'y'), - (0x24CF, 'M', u'z'), - (0x24D0, 'M', u'a'), - (0x24D1, 'M', u'b'), - (0x24D2, 'M', u'c'), - (0x24D3, 'M', u'd'), - (0x24D4, 'M', u'e'), - (0x24D5, 'M', u'f'), - (0x24D6, 'M', u'g'), - (0x24D7, 'M', u'h'), - (0x24D8, 'M', u'i'), - (0x24D9, 'M', u'j'), - (0x24DA, 'M', u'k'), - (0x24DB, 'M', u'l'), - (0x24DC, 'M', u'm'), - (0x24DD, 'M', u'n'), - (0x24DE, 'M', u'o'), - (0x24DF, 'M', u'p'), - (0x24E0, 'M', u'q'), - (0x24E1, 'M', u'r'), - (0x24E2, 'M', u's'), - ] - -def _seg_24(): - return [ - (0x24E3, 'M', u't'), - (0x24E4, 'M', u'u'), - (0x24E5, 'M', u'v'), - (0x24E6, 'M', u'w'), - (0x24E7, 'M', u'x'), - (0x24E8, 'M', u'y'), - (0x24E9, 'M', u'z'), - (0x24EA, 'M', u'0'), - (0x24EB, 'V'), - (0x2700, 'X'), - (0x2701, 'V'), - (0x2A0C, 'M', u'∫∫∫∫'), - (0x2A0D, 'V'), - (0x2A74, '3', u'::='), - (0x2A75, '3', u'=='), - (0x2A76, '3', u'==='), - (0x2A77, 'V'), - (0x2ADC, 'M', u'⫝̸'), - (0x2ADD, 'V'), - (0x2B4D, 'X'), - (0x2B50, 'V'), - (0x2B5A, 'X'), - (0x2C00, 'M', u'ⰰ'), - (0x2C01, 'M', u'ⰱ'), - (0x2C02, 'M', u'ⰲ'), - (0x2C03, 'M', u'ⰳ'), - (0x2C04, 'M', u'ⰴ'), - (0x2C05, 'M', u'ⰵ'), - (0x2C06, 'M', u'ⰶ'), - (0x2C07, 'M', u'ⰷ'), - (0x2C08, 'M', u'ⰸ'), - (0x2C09, 'M', u'ⰹ'), - (0x2C0A, 'M', u'ⰺ'), - (0x2C0B, 'M', u'ⰻ'), - (0x2C0C, 'M', u'ⰼ'), - (0x2C0D, 'M', u'ⰽ'), - (0x2C0E, 'M', u'ⰾ'), - (0x2C0F, 'M', u'ⰿ'), - (0x2C10, 'M', u'ⱀ'), - (0x2C11, 'M', u'ⱁ'), - (0x2C12, 'M', u'ⱂ'), - (0x2C13, 'M', u'ⱃ'), - (0x2C14, 'M', u'ⱄ'), - (0x2C15, 'M', u'ⱅ'), - (0x2C16, 'M', u'ⱆ'), - (0x2C17, 'M', u'ⱇ'), - (0x2C18, 'M', u'ⱈ'), - (0x2C19, 'M', u'ⱉ'), - (0x2C1A, 'M', u'ⱊ'), - (0x2C1B, 'M', u'ⱋ'), - (0x2C1C, 'M', u'ⱌ'), - (0x2C1D, 'M', u'ⱍ'), - (0x2C1E, 'M', u'ⱎ'), - (0x2C1F, 'M', u'ⱏ'), - (0x2C20, 'M', u'ⱐ'), - (0x2C21, 'M', u'ⱑ'), - (0x2C22, 'M', u'ⱒ'), - (0x2C23, 'M', u'ⱓ'), - (0x2C24, 'M', u'ⱔ'), - (0x2C25, 'M', u'ⱕ'), - (0x2C26, 'M', u'ⱖ'), - (0x2C27, 'M', u'ⱗ'), - (0x2C28, 'M', u'ⱘ'), - (0x2C29, 'M', u'ⱙ'), - (0x2C2A, 'M', u'ⱚ'), - (0x2C2B, 'M', u'ⱛ'), - (0x2C2C, 'M', u'ⱜ'), - (0x2C2D, 'M', u'ⱝ'), - (0x2C2E, 'M', u'ⱞ'), - (0x2C2F, 'X'), - (0x2C30, 'V'), - (0x2C5F, 'X'), - (0x2C60, 'M', u'ⱡ'), - (0x2C61, 'V'), - (0x2C62, 'M', u'ɫ'), - (0x2C63, 'M', u'ᵽ'), - (0x2C64, 'M', u'ɽ'), - (0x2C65, 'V'), - (0x2C67, 'M', u'ⱨ'), - (0x2C68, 'V'), - (0x2C69, 'M', u'ⱪ'), - (0x2C6A, 'V'), - (0x2C6B, 'M', u'ⱬ'), - (0x2C6C, 'V'), - (0x2C6D, 'M', u'ɑ'), - (0x2C6E, 'M', u'ɱ'), - (0x2C6F, 'M', u'ɐ'), - (0x2C70, 'M', u'ɒ'), - (0x2C71, 'V'), - (0x2C72, 'M', u'ⱳ'), - (0x2C73, 'V'), - (0x2C75, 'M', u'ⱶ'), - (0x2C76, 'V'), - (0x2C7C, 'M', u'j'), - (0x2C7D, 'M', u'v'), - (0x2C7E, 'M', u'ȿ'), - (0x2C7F, 'M', u'ɀ'), - (0x2C80, 'M', u'ⲁ'), - (0x2C81, 'V'), - (0x2C82, 'M', u'ⲃ'), - ] - -def _seg_25(): - return [ - (0x2C83, 'V'), - (0x2C84, 'M', u'ⲅ'), - (0x2C85, 'V'), - (0x2C86, 'M', u'ⲇ'), - (0x2C87, 'V'), - (0x2C88, 'M', u'ⲉ'), - (0x2C89, 'V'), - (0x2C8A, 'M', u'ⲋ'), - (0x2C8B, 'V'), - (0x2C8C, 'M', u'ⲍ'), - (0x2C8D, 'V'), - (0x2C8E, 'M', u'ⲏ'), - (0x2C8F, 'V'), - (0x2C90, 'M', u'ⲑ'), - (0x2C91, 'V'), - (0x2C92, 'M', u'ⲓ'), - (0x2C93, 'V'), - (0x2C94, 'M', u'ⲕ'), - (0x2C95, 'V'), - (0x2C96, 'M', u'ⲗ'), - (0x2C97, 'V'), - (0x2C98, 'M', u'ⲙ'), - (0x2C99, 'V'), - (0x2C9A, 'M', u'ⲛ'), - (0x2C9B, 'V'), - (0x2C9C, 'M', u'ⲝ'), - (0x2C9D, 'V'), - (0x2C9E, 'M', u'ⲟ'), - (0x2C9F, 'V'), - (0x2CA0, 'M', u'ⲡ'), - (0x2CA1, 'V'), - (0x2CA2, 'M', u'ⲣ'), - (0x2CA3, 'V'), - (0x2CA4, 'M', u'ⲥ'), - (0x2CA5, 'V'), - (0x2CA6, 'M', u'ⲧ'), - (0x2CA7, 'V'), - (0x2CA8, 'M', u'ⲩ'), - (0x2CA9, 'V'), - (0x2CAA, 'M', u'ⲫ'), - (0x2CAB, 'V'), - (0x2CAC, 'M', u'ⲭ'), - (0x2CAD, 'V'), - (0x2CAE, 'M', u'ⲯ'), - (0x2CAF, 'V'), - (0x2CB0, 'M', u'ⲱ'), - (0x2CB1, 'V'), - (0x2CB2, 'M', u'ⲳ'), - (0x2CB3, 'V'), - (0x2CB4, 'M', u'ⲵ'), - (0x2CB5, 'V'), - (0x2CB6, 'M', u'ⲷ'), - (0x2CB7, 'V'), - (0x2CB8, 'M', u'ⲹ'), - (0x2CB9, 'V'), - (0x2CBA, 'M', u'ⲻ'), - (0x2CBB, 'V'), - (0x2CBC, 'M', u'ⲽ'), - (0x2CBD, 'V'), - (0x2CBE, 'M', u'ⲿ'), - (0x2CBF, 'V'), - (0x2CC0, 'M', u'ⳁ'), - (0x2CC1, 'V'), - (0x2CC2, 'M', u'ⳃ'), - (0x2CC3, 'V'), - (0x2CC4, 'M', u'ⳅ'), - (0x2CC5, 'V'), - (0x2CC6, 'M', u'ⳇ'), - (0x2CC7, 'V'), - (0x2CC8, 'M', u'ⳉ'), - (0x2CC9, 'V'), - (0x2CCA, 'M', u'ⳋ'), - (0x2CCB, 'V'), - (0x2CCC, 'M', u'ⳍ'), - (0x2CCD, 'V'), - (0x2CCE, 'M', u'ⳏ'), - (0x2CCF, 'V'), - (0x2CD0, 'M', u'ⳑ'), - (0x2CD1, 'V'), - (0x2CD2, 'M', u'ⳓ'), - (0x2CD3, 'V'), - (0x2CD4, 'M', u'ⳕ'), - (0x2CD5, 'V'), - (0x2CD6, 'M', u'ⳗ'), - (0x2CD7, 'V'), - (0x2CD8, 'M', u'ⳙ'), - (0x2CD9, 'V'), - (0x2CDA, 'M', u'ⳛ'), - (0x2CDB, 'V'), - (0x2CDC, 'M', u'ⳝ'), - (0x2CDD, 'V'), - (0x2CDE, 'M', u'ⳟ'), - (0x2CDF, 'V'), - (0x2CE0, 'M', u'ⳡ'), - (0x2CE1, 'V'), - (0x2CE2, 'M', u'ⳣ'), - (0x2CE3, 'V'), - (0x2CEB, 'M', u'ⳬ'), - (0x2CEC, 'V'), - (0x2CED, 'M', u'ⳮ'), - ] - -def _seg_26(): - return [ - (0x2CEE, 'V'), - (0x2CF2, 'M', u'ⳳ'), - (0x2CF3, 'V'), - (0x2CF4, 'X'), - (0x2CF9, 'V'), - (0x2D26, 'X'), - (0x2D27, 'V'), - (0x2D28, 'X'), - (0x2D2D, 'V'), - (0x2D2E, 'X'), - (0x2D30, 'V'), - (0x2D68, 'X'), - (0x2D6F, 'M', u'ⵡ'), - (0x2D70, 'V'), - (0x2D71, 'X'), - (0x2D7F, 'V'), - (0x2D97, 'X'), - (0x2DA0, 'V'), - (0x2DA7, 'X'), - (0x2DA8, 'V'), - (0x2DAF, 'X'), - (0x2DB0, 'V'), - (0x2DB7, 'X'), - (0x2DB8, 'V'), - (0x2DBF, 'X'), - (0x2DC0, 'V'), - (0x2DC7, 'X'), - (0x2DC8, 'V'), - (0x2DCF, 'X'), - (0x2DD0, 'V'), - (0x2DD7, 'X'), - (0x2DD8, 'V'), - (0x2DDF, 'X'), - (0x2DE0, 'V'), - (0x2E3C, 'X'), - (0x2E80, 'V'), - (0x2E9A, 'X'), - (0x2E9B, 'V'), - (0x2E9F, 'M', u'母'), - (0x2EA0, 'V'), - (0x2EF3, 'M', u'龟'), - (0x2EF4, 'X'), - (0x2F00, 'M', u'一'), - (0x2F01, 'M', u'丨'), - (0x2F02, 'M', u'丶'), - (0x2F03, 'M', u'丿'), - (0x2F04, 'M', u'乙'), - (0x2F05, 'M', u'亅'), - (0x2F06, 'M', u'二'), - (0x2F07, 'M', u'亠'), - (0x2F08, 'M', u'人'), - (0x2F09, 'M', u'儿'), - (0x2F0A, 'M', u'入'), - (0x2F0B, 'M', u'八'), - (0x2F0C, 'M', u'冂'), - (0x2F0D, 'M', u'冖'), - (0x2F0E, 'M', u'冫'), - (0x2F0F, 'M', u'几'), - (0x2F10, 'M', u'凵'), - (0x2F11, 'M', u'刀'), - (0x2F12, 'M', u'力'), - (0x2F13, 'M', u'勹'), - (0x2F14, 'M', u'匕'), - (0x2F15, 'M', u'匚'), - (0x2F16, 'M', u'匸'), - (0x2F17, 'M', u'十'), - (0x2F18, 'M', u'卜'), - (0x2F19, 'M', u'卩'), - (0x2F1A, 'M', u'厂'), - (0x2F1B, 'M', u'厶'), - (0x2F1C, 'M', u'又'), - (0x2F1D, 'M', u'口'), - (0x2F1E, 'M', u'囗'), - (0x2F1F, 'M', u'土'), - (0x2F20, 'M', u'士'), - (0x2F21, 'M', u'夂'), - (0x2F22, 'M', u'夊'), - (0x2F23, 'M', u'夕'), - (0x2F24, 'M', u'大'), - (0x2F25, 'M', u'女'), - (0x2F26, 'M', u'子'), - (0x2F27, 'M', u'宀'), - (0x2F28, 'M', u'寸'), - (0x2F29, 'M', u'小'), - (0x2F2A, 'M', u'尢'), - (0x2F2B, 'M', u'尸'), - (0x2F2C, 'M', u'屮'), - (0x2F2D, 'M', u'山'), - (0x2F2E, 'M', u'巛'), - (0x2F2F, 'M', u'工'), - (0x2F30, 'M', u'己'), - (0x2F31, 'M', u'巾'), - (0x2F32, 'M', u'干'), - (0x2F33, 'M', u'幺'), - (0x2F34, 'M', u'广'), - (0x2F35, 'M', u'廴'), - (0x2F36, 'M', u'廾'), - (0x2F37, 'M', u'弋'), - (0x2F38, 'M', u'弓'), - (0x2F39, 'M', u'彐'), - ] - -def _seg_27(): - return [ - (0x2F3A, 'M', u'彡'), - (0x2F3B, 'M', u'彳'), - (0x2F3C, 'M', u'心'), - (0x2F3D, 'M', u'戈'), - (0x2F3E, 'M', u'戶'), - (0x2F3F, 'M', u'手'), - (0x2F40, 'M', u'支'), - (0x2F41, 'M', u'攴'), - (0x2F42, 'M', u'文'), - (0x2F43, 'M', u'斗'), - (0x2F44, 'M', u'斤'), - (0x2F45, 'M', u'方'), - (0x2F46, 'M', u'无'), - (0x2F47, 'M', u'日'), - (0x2F48, 'M', u'曰'), - (0x2F49, 'M', u'月'), - (0x2F4A, 'M', u'木'), - (0x2F4B, 'M', u'欠'), - (0x2F4C, 'M', u'止'), - (0x2F4D, 'M', u'歹'), - (0x2F4E, 'M', u'殳'), - (0x2F4F, 'M', u'毋'), - (0x2F50, 'M', u'比'), - (0x2F51, 'M', u'毛'), - (0x2F52, 'M', u'氏'), - (0x2F53, 'M', u'气'), - (0x2F54, 'M', u'水'), - (0x2F55, 'M', u'火'), - (0x2F56, 'M', u'爪'), - (0x2F57, 'M', u'父'), - (0x2F58, 'M', u'爻'), - (0x2F59, 'M', u'爿'), - (0x2F5A, 'M', u'片'), - (0x2F5B, 'M', u'牙'), - (0x2F5C, 'M', u'牛'), - (0x2F5D, 'M', u'犬'), - (0x2F5E, 'M', u'玄'), - (0x2F5F, 'M', u'玉'), - (0x2F60, 'M', u'瓜'), - (0x2F61, 'M', u'瓦'), - (0x2F62, 'M', u'甘'), - (0x2F63, 'M', u'生'), - (0x2F64, 'M', u'用'), - (0x2F65, 'M', u'田'), - (0x2F66, 'M', u'疋'), - (0x2F67, 'M', u'疒'), - (0x2F68, 'M', u'癶'), - (0x2F69, 'M', u'白'), - (0x2F6A, 'M', u'皮'), - (0x2F6B, 'M', u'皿'), - (0x2F6C, 'M', u'目'), - (0x2F6D, 'M', u'矛'), - (0x2F6E, 'M', u'矢'), - (0x2F6F, 'M', u'石'), - (0x2F70, 'M', u'示'), - (0x2F71, 'M', u'禸'), - (0x2F72, 'M', u'禾'), - (0x2F73, 'M', u'穴'), - (0x2F74, 'M', u'立'), - (0x2F75, 'M', u'竹'), - (0x2F76, 'M', u'米'), - (0x2F77, 'M', u'糸'), - (0x2F78, 'M', u'缶'), - (0x2F79, 'M', u'网'), - (0x2F7A, 'M', u'羊'), - (0x2F7B, 'M', u'羽'), - (0x2F7C, 'M', u'老'), - (0x2F7D, 'M', u'而'), - (0x2F7E, 'M', u'耒'), - (0x2F7F, 'M', u'耳'), - (0x2F80, 'M', u'聿'), - (0x2F81, 'M', u'肉'), - (0x2F82, 'M', u'臣'), - (0x2F83, 'M', u'自'), - (0x2F84, 'M', u'至'), - (0x2F85, 'M', u'臼'), - (0x2F86, 'M', u'舌'), - (0x2F87, 'M', u'舛'), - (0x2F88, 'M', u'舟'), - (0x2F89, 'M', u'艮'), - (0x2F8A, 'M', u'色'), - (0x2F8B, 'M', u'艸'), - (0x2F8C, 'M', u'虍'), - (0x2F8D, 'M', u'虫'), - (0x2F8E, 'M', u'血'), - (0x2F8F, 'M', u'行'), - (0x2F90, 'M', u'衣'), - (0x2F91, 'M', u'襾'), - (0x2F92, 'M', u'見'), - (0x2F93, 'M', u'角'), - (0x2F94, 'M', u'言'), - (0x2F95, 'M', u'谷'), - (0x2F96, 'M', u'豆'), - (0x2F97, 'M', u'豕'), - (0x2F98, 'M', u'豸'), - (0x2F99, 'M', u'貝'), - (0x2F9A, 'M', u'赤'), - (0x2F9B, 'M', u'走'), - (0x2F9C, 'M', u'足'), - (0x2F9D, 'M', u'身'), - ] - -def _seg_28(): - return [ - (0x2F9E, 'M', u'車'), - (0x2F9F, 'M', u'辛'), - (0x2FA0, 'M', u'辰'), - (0x2FA1, 'M', u'辵'), - (0x2FA2, 'M', u'邑'), - (0x2FA3, 'M', u'酉'), - (0x2FA4, 'M', u'釆'), - (0x2FA5, 'M', u'里'), - (0x2FA6, 'M', u'金'), - (0x2FA7, 'M', u'長'), - (0x2FA8, 'M', u'門'), - (0x2FA9, 'M', u'阜'), - (0x2FAA, 'M', u'隶'), - (0x2FAB, 'M', u'隹'), - (0x2FAC, 'M', u'雨'), - (0x2FAD, 'M', u'靑'), - (0x2FAE, 'M', u'非'), - (0x2FAF, 'M', u'面'), - (0x2FB0, 'M', u'革'), - (0x2FB1, 'M', u'韋'), - (0x2FB2, 'M', u'韭'), - (0x2FB3, 'M', u'音'), - (0x2FB4, 'M', u'頁'), - (0x2FB5, 'M', u'風'), - (0x2FB6, 'M', u'飛'), - (0x2FB7, 'M', u'食'), - (0x2FB8, 'M', u'首'), - (0x2FB9, 'M', u'香'), - (0x2FBA, 'M', u'馬'), - (0x2FBB, 'M', u'骨'), - (0x2FBC, 'M', u'高'), - (0x2FBD, 'M', u'髟'), - (0x2FBE, 'M', u'鬥'), - (0x2FBF, 'M', u'鬯'), - (0x2FC0, 'M', u'鬲'), - (0x2FC1, 'M', u'鬼'), - (0x2FC2, 'M', u'魚'), - (0x2FC3, 'M', u'鳥'), - (0x2FC4, 'M', u'鹵'), - (0x2FC5, 'M', u'鹿'), - (0x2FC6, 'M', u'麥'), - (0x2FC7, 'M', u'麻'), - (0x2FC8, 'M', u'黃'), - (0x2FC9, 'M', u'黍'), - (0x2FCA, 'M', u'黑'), - (0x2FCB, 'M', u'黹'), - (0x2FCC, 'M', u'黽'), - (0x2FCD, 'M', u'鼎'), - (0x2FCE, 'M', u'鼓'), - (0x2FCF, 'M', u'鼠'), - (0x2FD0, 'M', u'鼻'), - (0x2FD1, 'M', u'齊'), - (0x2FD2, 'M', u'齒'), - (0x2FD3, 'M', u'龍'), - (0x2FD4, 'M', u'龜'), - (0x2FD5, 'M', u'龠'), - (0x2FD6, 'X'), - (0x3000, '3', u' '), - (0x3001, 'V'), - (0x3002, 'M', u'.'), - (0x3003, 'V'), - (0x3036, 'M', u'〒'), - (0x3037, 'V'), - (0x3038, 'M', u'十'), - (0x3039, 'M', u'卄'), - (0x303A, 'M', u'卅'), - (0x303B, 'V'), - (0x3040, 'X'), - (0x3041, 'V'), - (0x3097, 'X'), - (0x3099, 'V'), - (0x309B, '3', u' ゙'), - (0x309C, '3', u' ゚'), - (0x309D, 'V'), - (0x309F, 'M', u'より'), - (0x30A0, 'V'), - (0x30FF, 'M', u'コト'), - (0x3100, 'X'), - (0x3105, 'V'), - (0x312E, 'X'), - (0x3131, 'M', u'ᄀ'), - (0x3132, 'M', u'ᄁ'), - (0x3133, 'M', u'ᆪ'), - (0x3134, 'M', u'ᄂ'), - (0x3135, 'M', u'ᆬ'), - (0x3136, 'M', u'ᆭ'), - (0x3137, 'M', u'ᄃ'), - (0x3138, 'M', u'ᄄ'), - (0x3139, 'M', u'ᄅ'), - (0x313A, 'M', u'ᆰ'), - (0x313B, 'M', u'ᆱ'), - (0x313C, 'M', u'ᆲ'), - (0x313D, 'M', u'ᆳ'), - (0x313E, 'M', u'ᆴ'), - (0x313F, 'M', u'ᆵ'), - (0x3140, 'M', u'ᄚ'), - (0x3141, 'M', u'ᄆ'), - (0x3142, 'M', u'ᄇ'), - (0x3143, 'M', u'ᄈ'), - (0x3144, 'M', u'ᄡ'), - ] - -def _seg_29(): - return [ - (0x3145, 'M', u'ᄉ'), - (0x3146, 'M', u'ᄊ'), - (0x3147, 'M', u'ᄋ'), - (0x3148, 'M', u'ᄌ'), - (0x3149, 'M', u'ᄍ'), - (0x314A, 'M', u'ᄎ'), - (0x314B, 'M', u'ᄏ'), - (0x314C, 'M', u'ᄐ'), - (0x314D, 'M', u'ᄑ'), - (0x314E, 'M', u'ᄒ'), - (0x314F, 'M', u'ᅡ'), - (0x3150, 'M', u'ᅢ'), - (0x3151, 'M', u'ᅣ'), - (0x3152, 'M', u'ᅤ'), - (0x3153, 'M', u'ᅥ'), - (0x3154, 'M', u'ᅦ'), - (0x3155, 'M', u'ᅧ'), - (0x3156, 'M', u'ᅨ'), - (0x3157, 'M', u'ᅩ'), - (0x3158, 'M', u'ᅪ'), - (0x3159, 'M', u'ᅫ'), - (0x315A, 'M', u'ᅬ'), - (0x315B, 'M', u'ᅭ'), - (0x315C, 'M', u'ᅮ'), - (0x315D, 'M', u'ᅯ'), - (0x315E, 'M', u'ᅰ'), - (0x315F, 'M', u'ᅱ'), - (0x3160, 'M', u'ᅲ'), - (0x3161, 'M', u'ᅳ'), - (0x3162, 'M', u'ᅴ'), - (0x3163, 'M', u'ᅵ'), - (0x3164, 'X'), - (0x3165, 'M', u'ᄔ'), - (0x3166, 'M', u'ᄕ'), - (0x3167, 'M', u'ᇇ'), - (0x3168, 'M', u'ᇈ'), - (0x3169, 'M', u'ᇌ'), - (0x316A, 'M', u'ᇎ'), - (0x316B, 'M', u'ᇓ'), - (0x316C, 'M', u'ᇗ'), - (0x316D, 'M', u'ᇙ'), - (0x316E, 'M', u'ᄜ'), - (0x316F, 'M', u'ᇝ'), - (0x3170, 'M', u'ᇟ'), - (0x3171, 'M', u'ᄝ'), - (0x3172, 'M', u'ᄞ'), - (0x3173, 'M', u'ᄠ'), - (0x3174, 'M', u'ᄢ'), - (0x3175, 'M', u'ᄣ'), - (0x3176, 'M', u'ᄧ'), - (0x3177, 'M', u'ᄩ'), - (0x3178, 'M', u'ᄫ'), - (0x3179, 'M', u'ᄬ'), - (0x317A, 'M', u'ᄭ'), - (0x317B, 'M', u'ᄮ'), - (0x317C, 'M', u'ᄯ'), - (0x317D, 'M', u'ᄲ'), - (0x317E, 'M', u'ᄶ'), - (0x317F, 'M', u'ᅀ'), - (0x3180, 'M', u'ᅇ'), - (0x3181, 'M', u'ᅌ'), - (0x3182, 'M', u'ᇱ'), - (0x3183, 'M', u'ᇲ'), - (0x3184, 'M', u'ᅗ'), - (0x3185, 'M', u'ᅘ'), - (0x3186, 'M', u'ᅙ'), - (0x3187, 'M', u'ᆄ'), - (0x3188, 'M', u'ᆅ'), - (0x3189, 'M', u'ᆈ'), - (0x318A, 'M', u'ᆑ'), - (0x318B, 'M', u'ᆒ'), - (0x318C, 'M', u'ᆔ'), - (0x318D, 'M', u'ᆞ'), - (0x318E, 'M', u'ᆡ'), - (0x318F, 'X'), - (0x3190, 'V'), - (0x3192, 'M', u'一'), - (0x3193, 'M', u'二'), - (0x3194, 'M', u'三'), - (0x3195, 'M', u'四'), - (0x3196, 'M', u'上'), - (0x3197, 'M', u'中'), - (0x3198, 'M', u'下'), - (0x3199, 'M', u'甲'), - (0x319A, 'M', u'乙'), - (0x319B, 'M', u'丙'), - (0x319C, 'M', u'丁'), - (0x319D, 'M', u'天'), - (0x319E, 'M', u'地'), - (0x319F, 'M', u'人'), - (0x31A0, 'V'), - (0x31BB, 'X'), - (0x31C0, 'V'), - (0x31E4, 'X'), - (0x31F0, 'V'), - (0x3200, '3', u'(ᄀ)'), - (0x3201, '3', u'(ᄂ)'), - (0x3202, '3', u'(ᄃ)'), - (0x3203, '3', u'(ᄅ)'), - (0x3204, '3', u'(ᄆ)'), - ] - -def _seg_30(): - return [ - (0x3205, '3', u'(ᄇ)'), - (0x3206, '3', u'(ᄉ)'), - (0x3207, '3', u'(ᄋ)'), - (0x3208, '3', u'(ᄌ)'), - (0x3209, '3', u'(ᄎ)'), - (0x320A, '3', u'(ᄏ)'), - (0x320B, '3', u'(ᄐ)'), - (0x320C, '3', u'(ᄑ)'), - (0x320D, '3', u'(ᄒ)'), - (0x320E, '3', u'(가)'), - (0x320F, '3', u'(나)'), - (0x3210, '3', u'(다)'), - (0x3211, '3', u'(라)'), - (0x3212, '3', u'(마)'), - (0x3213, '3', u'(바)'), - (0x3214, '3', u'(사)'), - (0x3215, '3', u'(아)'), - (0x3216, '3', u'(자)'), - (0x3217, '3', u'(차)'), - (0x3218, '3', u'(카)'), - (0x3219, '3', u'(타)'), - (0x321A, '3', u'(파)'), - (0x321B, '3', u'(하)'), - (0x321C, '3', u'(주)'), - (0x321D, '3', u'(오전)'), - (0x321E, '3', u'(오후)'), - (0x321F, 'X'), - (0x3220, '3', u'(一)'), - (0x3221, '3', u'(二)'), - (0x3222, '3', u'(三)'), - (0x3223, '3', u'(四)'), - (0x3224, '3', u'(五)'), - (0x3225, '3', u'(六)'), - (0x3226, '3', u'(七)'), - (0x3227, '3', u'(八)'), - (0x3228, '3', u'(九)'), - (0x3229, '3', u'(十)'), - (0x322A, '3', u'(月)'), - (0x322B, '3', u'(火)'), - (0x322C, '3', u'(水)'), - (0x322D, '3', u'(木)'), - (0x322E, '3', u'(金)'), - (0x322F, '3', u'(土)'), - (0x3230, '3', u'(日)'), - (0x3231, '3', u'(株)'), - (0x3232, '3', u'(有)'), - (0x3233, '3', u'(社)'), - (0x3234, '3', u'(名)'), - (0x3235, '3', u'(特)'), - (0x3236, '3', u'(財)'), - (0x3237, '3', u'(祝)'), - (0x3238, '3', u'(労)'), - (0x3239, '3', u'(代)'), - (0x323A, '3', u'(呼)'), - (0x323B, '3', u'(学)'), - (0x323C, '3', u'(監)'), - (0x323D, '3', u'(企)'), - (0x323E, '3', u'(資)'), - (0x323F, '3', u'(協)'), - (0x3240, '3', u'(祭)'), - (0x3241, '3', u'(休)'), - (0x3242, '3', u'(自)'), - (0x3243, '3', u'(至)'), - (0x3244, 'M', u'問'), - (0x3245, 'M', u'幼'), - (0x3246, 'M', u'文'), - (0x3247, 'M', u'箏'), - (0x3248, 'V'), - (0x3250, 'M', u'pte'), - (0x3251, 'M', u'21'), - (0x3252, 'M', u'22'), - (0x3253, 'M', u'23'), - (0x3254, 'M', u'24'), - (0x3255, 'M', u'25'), - (0x3256, 'M', u'26'), - (0x3257, 'M', u'27'), - (0x3258, 'M', u'28'), - (0x3259, 'M', u'29'), - (0x325A, 'M', u'30'), - (0x325B, 'M', u'31'), - (0x325C, 'M', u'32'), - (0x325D, 'M', u'33'), - (0x325E, 'M', u'34'), - (0x325F, 'M', u'35'), - (0x3260, 'M', u'ᄀ'), - (0x3261, 'M', u'ᄂ'), - (0x3262, 'M', u'ᄃ'), - (0x3263, 'M', u'ᄅ'), - (0x3264, 'M', u'ᄆ'), - (0x3265, 'M', u'ᄇ'), - (0x3266, 'M', u'ᄉ'), - (0x3267, 'M', u'ᄋ'), - (0x3268, 'M', u'ᄌ'), - (0x3269, 'M', u'ᄎ'), - (0x326A, 'M', u'ᄏ'), - (0x326B, 'M', u'ᄐ'), - (0x326C, 'M', u'ᄑ'), - (0x326D, 'M', u'ᄒ'), - (0x326E, 'M', u'가'), - (0x326F, 'M', u'나'), - ] - -def _seg_31(): - return [ - (0x3270, 'M', u'다'), - (0x3271, 'M', u'라'), - (0x3272, 'M', u'마'), - (0x3273, 'M', u'바'), - (0x3274, 'M', u'사'), - (0x3275, 'M', u'아'), - (0x3276, 'M', u'자'), - (0x3277, 'M', u'차'), - (0x3278, 'M', u'카'), - (0x3279, 'M', u'타'), - (0x327A, 'M', u'파'), - (0x327B, 'M', u'하'), - (0x327C, 'M', u'참고'), - (0x327D, 'M', u'주의'), - (0x327E, 'M', u'우'), - (0x327F, 'V'), - (0x3280, 'M', u'一'), - (0x3281, 'M', u'二'), - (0x3282, 'M', u'三'), - (0x3283, 'M', u'四'), - (0x3284, 'M', u'五'), - (0x3285, 'M', u'六'), - (0x3286, 'M', u'七'), - (0x3287, 'M', u'八'), - (0x3288, 'M', u'九'), - (0x3289, 'M', u'十'), - (0x328A, 'M', u'月'), - (0x328B, 'M', u'火'), - (0x328C, 'M', u'水'), - (0x328D, 'M', u'木'), - (0x328E, 'M', u'金'), - (0x328F, 'M', u'土'), - (0x3290, 'M', u'日'), - (0x3291, 'M', u'株'), - (0x3292, 'M', u'有'), - (0x3293, 'M', u'社'), - (0x3294, 'M', u'名'), - (0x3295, 'M', u'特'), - (0x3296, 'M', u'財'), - (0x3297, 'M', u'祝'), - (0x3298, 'M', u'労'), - (0x3299, 'M', u'秘'), - (0x329A, 'M', u'男'), - (0x329B, 'M', u'女'), - (0x329C, 'M', u'適'), - (0x329D, 'M', u'優'), - (0x329E, 'M', u'印'), - (0x329F, 'M', u'注'), - (0x32A0, 'M', u'項'), - (0x32A1, 'M', u'休'), - (0x32A2, 'M', u'写'), - (0x32A3, 'M', u'正'), - (0x32A4, 'M', u'上'), - (0x32A5, 'M', u'中'), - (0x32A6, 'M', u'下'), - (0x32A7, 'M', u'左'), - (0x32A8, 'M', u'右'), - (0x32A9, 'M', u'医'), - (0x32AA, 'M', u'宗'), - (0x32AB, 'M', u'学'), - (0x32AC, 'M', u'監'), - (0x32AD, 'M', u'企'), - (0x32AE, 'M', u'資'), - (0x32AF, 'M', u'協'), - (0x32B0, 'M', u'夜'), - (0x32B1, 'M', u'36'), - (0x32B2, 'M', u'37'), - (0x32B3, 'M', u'38'), - (0x32B4, 'M', u'39'), - (0x32B5, 'M', u'40'), - (0x32B6, 'M', u'41'), - (0x32B7, 'M', u'42'), - (0x32B8, 'M', u'43'), - (0x32B9, 'M', u'44'), - (0x32BA, 'M', u'45'), - (0x32BB, 'M', u'46'), - (0x32BC, 'M', u'47'), - (0x32BD, 'M', u'48'), - (0x32BE, 'M', u'49'), - (0x32BF, 'M', u'50'), - (0x32C0, 'M', u'1月'), - (0x32C1, 'M', u'2月'), - (0x32C2, 'M', u'3月'), - (0x32C3, 'M', u'4月'), - (0x32C4, 'M', u'5月'), - (0x32C5, 'M', u'6月'), - (0x32C6, 'M', u'7月'), - (0x32C7, 'M', u'8月'), - (0x32C8, 'M', u'9月'), - (0x32C9, 'M', u'10月'), - (0x32CA, 'M', u'11月'), - (0x32CB, 'M', u'12月'), - (0x32CC, 'M', u'hg'), - (0x32CD, 'M', u'erg'), - (0x32CE, 'M', u'ev'), - (0x32CF, 'M', u'ltd'), - (0x32D0, 'M', u'ア'), - (0x32D1, 'M', u'イ'), - (0x32D2, 'M', u'ウ'), - (0x32D3, 'M', u'エ'), - ] - -def _seg_32(): - return [ - (0x32D4, 'M', u'オ'), - (0x32D5, 'M', u'カ'), - (0x32D6, 'M', u'キ'), - (0x32D7, 'M', u'ク'), - (0x32D8, 'M', u'ケ'), - (0x32D9, 'M', u'コ'), - (0x32DA, 'M', u'サ'), - (0x32DB, 'M', u'シ'), - (0x32DC, 'M', u'ス'), - (0x32DD, 'M', u'セ'), - (0x32DE, 'M', u'ソ'), - (0x32DF, 'M', u'タ'), - (0x32E0, 'M', u'チ'), - (0x32E1, 'M', u'ツ'), - (0x32E2, 'M', u'テ'), - (0x32E3, 'M', u'ト'), - (0x32E4, 'M', u'ナ'), - (0x32E5, 'M', u'ニ'), - (0x32E6, 'M', u'ヌ'), - (0x32E7, 'M', u'ネ'), - (0x32E8, 'M', u'ノ'), - (0x32E9, 'M', u'ハ'), - (0x32EA, 'M', u'ヒ'), - (0x32EB, 'M', u'フ'), - (0x32EC, 'M', u'ヘ'), - (0x32ED, 'M', u'ホ'), - (0x32EE, 'M', u'マ'), - (0x32EF, 'M', u'ミ'), - (0x32F0, 'M', u'ム'), - (0x32F1, 'M', u'メ'), - (0x32F2, 'M', u'モ'), - (0x32F3, 'M', u'ヤ'), - (0x32F4, 'M', u'ユ'), - (0x32F5, 'M', u'ヨ'), - (0x32F6, 'M', u'ラ'), - (0x32F7, 'M', u'リ'), - (0x32F8, 'M', u'ル'), - (0x32F9, 'M', u'レ'), - (0x32FA, 'M', u'ロ'), - (0x32FB, 'M', u'ワ'), - (0x32FC, 'M', u'ヰ'), - (0x32FD, 'M', u'ヱ'), - (0x32FE, 'M', u'ヲ'), - (0x32FF, 'X'), - (0x3300, 'M', u'アパート'), - (0x3301, 'M', u'アルファ'), - (0x3302, 'M', u'アンペア'), - (0x3303, 'M', u'アール'), - (0x3304, 'M', u'イニング'), - (0x3305, 'M', u'インチ'), - (0x3306, 'M', u'ウォン'), - (0x3307, 'M', u'エスクード'), - (0x3308, 'M', u'エーカー'), - (0x3309, 'M', u'オンス'), - (0x330A, 'M', u'オーム'), - (0x330B, 'M', u'カイリ'), - (0x330C, 'M', u'カラット'), - (0x330D, 'M', u'カロリー'), - (0x330E, 'M', u'ガロン'), - (0x330F, 'M', u'ガンマ'), - (0x3310, 'M', u'ギガ'), - (0x3311, 'M', u'ギニー'), - (0x3312, 'M', u'キュリー'), - (0x3313, 'M', u'ギルダー'), - (0x3314, 'M', u'キロ'), - (0x3315, 'M', u'キログラム'), - (0x3316, 'M', u'キロメートル'), - (0x3317, 'M', u'キロワット'), - (0x3318, 'M', u'グラム'), - (0x3319, 'M', u'グラムトン'), - (0x331A, 'M', u'クルゼイロ'), - (0x331B, 'M', u'クローネ'), - (0x331C, 'M', u'ケース'), - (0x331D, 'M', u'コルナ'), - (0x331E, 'M', u'コーポ'), - (0x331F, 'M', u'サイクル'), - (0x3320, 'M', u'サンチーム'), - (0x3321, 'M', u'シリング'), - (0x3322, 'M', u'センチ'), - (0x3323, 'M', u'セント'), - (0x3324, 'M', u'ダース'), - (0x3325, 'M', u'デシ'), - (0x3326, 'M', u'ドル'), - (0x3327, 'M', u'トン'), - (0x3328, 'M', u'ナノ'), - (0x3329, 'M', u'ノット'), - (0x332A, 'M', u'ハイツ'), - (0x332B, 'M', u'パーセント'), - (0x332C, 'M', u'パーツ'), - (0x332D, 'M', u'バーレル'), - (0x332E, 'M', u'ピアストル'), - (0x332F, 'M', u'ピクル'), - (0x3330, 'M', u'ピコ'), - (0x3331, 'M', u'ビル'), - (0x3332, 'M', u'ファラッド'), - (0x3333, 'M', u'フィート'), - (0x3334, 'M', u'ブッシェル'), - (0x3335, 'M', u'フラン'), - (0x3336, 'M', u'ヘクタール'), - (0x3337, 'M', u'ペソ'), - ] - -def _seg_33(): - return [ - (0x3338, 'M', u'ペニヒ'), - (0x3339, 'M', u'ヘルツ'), - (0x333A, 'M', u'ペンス'), - (0x333B, 'M', u'ページ'), - (0x333C, 'M', u'ベータ'), - (0x333D, 'M', u'ポイント'), - (0x333E, 'M', u'ボルト'), - (0x333F, 'M', u'ホン'), - (0x3340, 'M', u'ポンド'), - (0x3341, 'M', u'ホール'), - (0x3342, 'M', u'ホーン'), - (0x3343, 'M', u'マイクロ'), - (0x3344, 'M', u'マイル'), - (0x3345, 'M', u'マッハ'), - (0x3346, 'M', u'マルク'), - (0x3347, 'M', u'マンション'), - (0x3348, 'M', u'ミクロン'), - (0x3349, 'M', u'ミリ'), - (0x334A, 'M', u'ミリバール'), - (0x334B, 'M', u'メガ'), - (0x334C, 'M', u'メガトン'), - (0x334D, 'M', u'メートル'), - (0x334E, 'M', u'ヤード'), - (0x334F, 'M', u'ヤール'), - (0x3350, 'M', u'ユアン'), - (0x3351, 'M', u'リットル'), - (0x3352, 'M', u'リラ'), - (0x3353, 'M', u'ルピー'), - (0x3354, 'M', u'ルーブル'), - (0x3355, 'M', u'レム'), - (0x3356, 'M', u'レントゲン'), - (0x3357, 'M', u'ワット'), - (0x3358, 'M', u'0点'), - (0x3359, 'M', u'1点'), - (0x335A, 'M', u'2点'), - (0x335B, 'M', u'3点'), - (0x335C, 'M', u'4点'), - (0x335D, 'M', u'5点'), - (0x335E, 'M', u'6点'), - (0x335F, 'M', u'7点'), - (0x3360, 'M', u'8点'), - (0x3361, 'M', u'9点'), - (0x3362, 'M', u'10点'), - (0x3363, 'M', u'11点'), - (0x3364, 'M', u'12点'), - (0x3365, 'M', u'13点'), - (0x3366, 'M', u'14点'), - (0x3367, 'M', u'15点'), - (0x3368, 'M', u'16点'), - (0x3369, 'M', u'17点'), - (0x336A, 'M', u'18点'), - (0x336B, 'M', u'19点'), - (0x336C, 'M', u'20点'), - (0x336D, 'M', u'21点'), - (0x336E, 'M', u'22点'), - (0x336F, 'M', u'23点'), - (0x3370, 'M', u'24点'), - (0x3371, 'M', u'hpa'), - (0x3372, 'M', u'da'), - (0x3373, 'M', u'au'), - (0x3374, 'M', u'bar'), - (0x3375, 'M', u'ov'), - (0x3376, 'M', u'pc'), - (0x3377, 'M', u'dm'), - (0x3378, 'M', u'dm2'), - (0x3379, 'M', u'dm3'), - (0x337A, 'M', u'iu'), - (0x337B, 'M', u'平成'), - (0x337C, 'M', u'昭和'), - (0x337D, 'M', u'大正'), - (0x337E, 'M', u'明治'), - (0x337F, 'M', u'株式会社'), - (0x3380, 'M', u'pa'), - (0x3381, 'M', u'na'), - (0x3382, 'M', u'μa'), - (0x3383, 'M', u'ma'), - (0x3384, 'M', u'ka'), - (0x3385, 'M', u'kb'), - (0x3386, 'M', u'mb'), - (0x3387, 'M', u'gb'), - (0x3388, 'M', u'cal'), - (0x3389, 'M', u'kcal'), - (0x338A, 'M', u'pf'), - (0x338B, 'M', u'nf'), - (0x338C, 'M', u'μf'), - (0x338D, 'M', u'μg'), - (0x338E, 'M', u'mg'), - (0x338F, 'M', u'kg'), - (0x3390, 'M', u'hz'), - (0x3391, 'M', u'khz'), - (0x3392, 'M', u'mhz'), - (0x3393, 'M', u'ghz'), - (0x3394, 'M', u'thz'), - (0x3395, 'M', u'μl'), - (0x3396, 'M', u'ml'), - (0x3397, 'M', u'dl'), - (0x3398, 'M', u'kl'), - (0x3399, 'M', u'fm'), - (0x339A, 'M', u'nm'), - (0x339B, 'M', u'μm'), - ] - -def _seg_34(): - return [ - (0x339C, 'M', u'mm'), - (0x339D, 'M', u'cm'), - (0x339E, 'M', u'km'), - (0x339F, 'M', u'mm2'), - (0x33A0, 'M', u'cm2'), - (0x33A1, 'M', u'm2'), - (0x33A2, 'M', u'km2'), - (0x33A3, 'M', u'mm3'), - (0x33A4, 'M', u'cm3'), - (0x33A5, 'M', u'm3'), - (0x33A6, 'M', u'km3'), - (0x33A7, 'M', u'm∕s'), - (0x33A8, 'M', u'm∕s2'), - (0x33A9, 'M', u'pa'), - (0x33AA, 'M', u'kpa'), - (0x33AB, 'M', u'mpa'), - (0x33AC, 'M', u'gpa'), - (0x33AD, 'M', u'rad'), - (0x33AE, 'M', u'rad∕s'), - (0x33AF, 'M', u'rad∕s2'), - (0x33B0, 'M', u'ps'), - (0x33B1, 'M', u'ns'), - (0x33B2, 'M', u'μs'), - (0x33B3, 'M', u'ms'), - (0x33B4, 'M', u'pv'), - (0x33B5, 'M', u'nv'), - (0x33B6, 'M', u'μv'), - (0x33B7, 'M', u'mv'), - (0x33B8, 'M', u'kv'), - (0x33B9, 'M', u'mv'), - (0x33BA, 'M', u'pw'), - (0x33BB, 'M', u'nw'), - (0x33BC, 'M', u'μw'), - (0x33BD, 'M', u'mw'), - (0x33BE, 'M', u'kw'), - (0x33BF, 'M', u'mw'), - (0x33C0, 'M', u'kω'), - (0x33C1, 'M', u'mω'), - (0x33C2, 'X'), - (0x33C3, 'M', u'bq'), - (0x33C4, 'M', u'cc'), - (0x33C5, 'M', u'cd'), - (0x33C6, 'M', u'c∕kg'), - (0x33C7, 'X'), - (0x33C8, 'M', u'db'), - (0x33C9, 'M', u'gy'), - (0x33CA, 'M', u'ha'), - (0x33CB, 'M', u'hp'), - (0x33CC, 'M', u'in'), - (0x33CD, 'M', u'kk'), - (0x33CE, 'M', u'km'), - (0x33CF, 'M', u'kt'), - (0x33D0, 'M', u'lm'), - (0x33D1, 'M', u'ln'), - (0x33D2, 'M', u'log'), - (0x33D3, 'M', u'lx'), - (0x33D4, 'M', u'mb'), - (0x33D5, 'M', u'mil'), - (0x33D6, 'M', u'mol'), - (0x33D7, 'M', u'ph'), - (0x33D8, 'X'), - (0x33D9, 'M', u'ppm'), - (0x33DA, 'M', u'pr'), - (0x33DB, 'M', u'sr'), - (0x33DC, 'M', u'sv'), - (0x33DD, 'M', u'wb'), - (0x33DE, 'M', u'v∕m'), - (0x33DF, 'M', u'a∕m'), - (0x33E0, 'M', u'1日'), - (0x33E1, 'M', u'2日'), - (0x33E2, 'M', u'3日'), - (0x33E3, 'M', u'4日'), - (0x33E4, 'M', u'5日'), - (0x33E5, 'M', u'6日'), - (0x33E6, 'M', u'7日'), - (0x33E7, 'M', u'8日'), - (0x33E8, 'M', u'9日'), - (0x33E9, 'M', u'10日'), - (0x33EA, 'M', u'11日'), - (0x33EB, 'M', u'12日'), - (0x33EC, 'M', u'13日'), - (0x33ED, 'M', u'14日'), - (0x33EE, 'M', u'15日'), - (0x33EF, 'M', u'16日'), - (0x33F0, 'M', u'17日'), - (0x33F1, 'M', u'18日'), - (0x33F2, 'M', u'19日'), - (0x33F3, 'M', u'20日'), - (0x33F4, 'M', u'21日'), - (0x33F5, 'M', u'22日'), - (0x33F6, 'M', u'23日'), - (0x33F7, 'M', u'24日'), - (0x33F8, 'M', u'25日'), - (0x33F9, 'M', u'26日'), - (0x33FA, 'M', u'27日'), - (0x33FB, 'M', u'28日'), - (0x33FC, 'M', u'29日'), - (0x33FD, 'M', u'30日'), - (0x33FE, 'M', u'31日'), - (0x33FF, 'M', u'gal'), - ] - -def _seg_35(): - return [ - (0x3400, 'V'), - (0x4DB6, 'X'), - (0x4DC0, 'V'), - (0x9FCD, 'X'), - (0xA000, 'V'), - (0xA48D, 'X'), - (0xA490, 'V'), - (0xA4C7, 'X'), - (0xA4D0, 'V'), - (0xA62C, 'X'), - (0xA640, 'M', u'ꙁ'), - (0xA641, 'V'), - (0xA642, 'M', u'ꙃ'), - (0xA643, 'V'), - (0xA644, 'M', u'ꙅ'), - (0xA645, 'V'), - (0xA646, 'M', u'ꙇ'), - (0xA647, 'V'), - (0xA648, 'M', u'ꙉ'), - (0xA649, 'V'), - (0xA64A, 'M', u'ꙋ'), - (0xA64B, 'V'), - (0xA64C, 'M', u'ꙍ'), - (0xA64D, 'V'), - (0xA64E, 'M', u'ꙏ'), - (0xA64F, 'V'), - (0xA650, 'M', u'ꙑ'), - (0xA651, 'V'), - (0xA652, 'M', u'ꙓ'), - (0xA653, 'V'), - (0xA654, 'M', u'ꙕ'), - (0xA655, 'V'), - (0xA656, 'M', u'ꙗ'), - (0xA657, 'V'), - (0xA658, 'M', u'ꙙ'), - (0xA659, 'V'), - (0xA65A, 'M', u'ꙛ'), - (0xA65B, 'V'), - (0xA65C, 'M', u'ꙝ'), - (0xA65D, 'V'), - (0xA65E, 'M', u'ꙟ'), - (0xA65F, 'V'), - (0xA660, 'M', u'ꙡ'), - (0xA661, 'V'), - (0xA662, 'M', u'ꙣ'), - (0xA663, 'V'), - (0xA664, 'M', u'ꙥ'), - (0xA665, 'V'), - (0xA666, 'M', u'ꙧ'), - (0xA667, 'V'), - (0xA668, 'M', u'ꙩ'), - (0xA669, 'V'), - (0xA66A, 'M', u'ꙫ'), - (0xA66B, 'V'), - (0xA66C, 'M', u'ꙭ'), - (0xA66D, 'V'), - (0xA680, 'M', u'ꚁ'), - (0xA681, 'V'), - (0xA682, 'M', u'ꚃ'), - (0xA683, 'V'), - (0xA684, 'M', u'ꚅ'), - (0xA685, 'V'), - (0xA686, 'M', u'ꚇ'), - (0xA687, 'V'), - (0xA688, 'M', u'ꚉ'), - (0xA689, 'V'), - (0xA68A, 'M', u'ꚋ'), - (0xA68B, 'V'), - (0xA68C, 'M', u'ꚍ'), - (0xA68D, 'V'), - (0xA68E, 'M', u'ꚏ'), - (0xA68F, 'V'), - (0xA690, 'M', u'ꚑ'), - (0xA691, 'V'), - (0xA692, 'M', u'ꚓ'), - (0xA693, 'V'), - (0xA694, 'M', u'ꚕ'), - (0xA695, 'V'), - (0xA696, 'M', u'ꚗ'), - (0xA697, 'V'), - (0xA698, 'X'), - (0xA69F, 'V'), - (0xA6F8, 'X'), - (0xA700, 'V'), - (0xA722, 'M', u'ꜣ'), - (0xA723, 'V'), - (0xA724, 'M', u'ꜥ'), - (0xA725, 'V'), - (0xA726, 'M', u'ꜧ'), - (0xA727, 'V'), - (0xA728, 'M', u'ꜩ'), - (0xA729, 'V'), - (0xA72A, 'M', u'ꜫ'), - (0xA72B, 'V'), - (0xA72C, 'M', u'ꜭ'), - (0xA72D, 'V'), - (0xA72E, 'M', u'ꜯ'), - (0xA72F, 'V'), - (0xA732, 'M', u'ꜳ'), - (0xA733, 'V'), - ] - -def _seg_36(): - return [ - (0xA734, 'M', u'ꜵ'), - (0xA735, 'V'), - (0xA736, 'M', u'ꜷ'), - (0xA737, 'V'), - (0xA738, 'M', u'ꜹ'), - (0xA739, 'V'), - (0xA73A, 'M', u'ꜻ'), - (0xA73B, 'V'), - (0xA73C, 'M', u'ꜽ'), - (0xA73D, 'V'), - (0xA73E, 'M', u'ꜿ'), - (0xA73F, 'V'), - (0xA740, 'M', u'ꝁ'), - (0xA741, 'V'), - (0xA742, 'M', u'ꝃ'), - (0xA743, 'V'), - (0xA744, 'M', u'ꝅ'), - (0xA745, 'V'), - (0xA746, 'M', u'ꝇ'), - (0xA747, 'V'), - (0xA748, 'M', u'ꝉ'), - (0xA749, 'V'), - (0xA74A, 'M', u'ꝋ'), - (0xA74B, 'V'), - (0xA74C, 'M', u'ꝍ'), - (0xA74D, 'V'), - (0xA74E, 'M', u'ꝏ'), - (0xA74F, 'V'), - (0xA750, 'M', u'ꝑ'), - (0xA751, 'V'), - (0xA752, 'M', u'ꝓ'), - (0xA753, 'V'), - (0xA754, 'M', u'ꝕ'), - (0xA755, 'V'), - (0xA756, 'M', u'ꝗ'), - (0xA757, 'V'), - (0xA758, 'M', u'ꝙ'), - (0xA759, 'V'), - (0xA75A, 'M', u'ꝛ'), - (0xA75B, 'V'), - (0xA75C, 'M', u'ꝝ'), - (0xA75D, 'V'), - (0xA75E, 'M', u'ꝟ'), - (0xA75F, 'V'), - (0xA760, 'M', u'ꝡ'), - (0xA761, 'V'), - (0xA762, 'M', u'ꝣ'), - (0xA763, 'V'), - (0xA764, 'M', u'ꝥ'), - (0xA765, 'V'), - (0xA766, 'M', u'ꝧ'), - (0xA767, 'V'), - (0xA768, 'M', u'ꝩ'), - (0xA769, 'V'), - (0xA76A, 'M', u'ꝫ'), - (0xA76B, 'V'), - (0xA76C, 'M', u'ꝭ'), - (0xA76D, 'V'), - (0xA76E, 'M', u'ꝯ'), - (0xA76F, 'V'), - (0xA770, 'M', u'ꝯ'), - (0xA771, 'V'), - (0xA779, 'M', u'ꝺ'), - (0xA77A, 'V'), - (0xA77B, 'M', u'ꝼ'), - (0xA77C, 'V'), - (0xA77D, 'M', u'ᵹ'), - (0xA77E, 'M', u'ꝿ'), - (0xA77F, 'V'), - (0xA780, 'M', u'ꞁ'), - (0xA781, 'V'), - (0xA782, 'M', u'ꞃ'), - (0xA783, 'V'), - (0xA784, 'M', u'ꞅ'), - (0xA785, 'V'), - (0xA786, 'M', u'ꞇ'), - (0xA787, 'V'), - (0xA78B, 'M', u'ꞌ'), - (0xA78C, 'V'), - (0xA78D, 'M', u'ɥ'), - (0xA78E, 'V'), - (0xA78F, 'X'), - (0xA790, 'M', u'ꞑ'), - (0xA791, 'V'), - (0xA792, 'M', u'ꞓ'), - (0xA793, 'V'), - (0xA794, 'X'), - (0xA7A0, 'M', u'ꞡ'), - (0xA7A1, 'V'), - (0xA7A2, 'M', u'ꞣ'), - (0xA7A3, 'V'), - (0xA7A4, 'M', u'ꞥ'), - (0xA7A5, 'V'), - (0xA7A6, 'M', u'ꞧ'), - (0xA7A7, 'V'), - (0xA7A8, 'M', u'ꞩ'), - (0xA7A9, 'V'), - (0xA7AA, 'M', u'ɦ'), - (0xA7AB, 'X'), - (0xA7F8, 'M', u'ħ'), - ] - -def _seg_37(): - return [ - (0xA7F9, 'M', u'œ'), - (0xA7FA, 'V'), - (0xA82C, 'X'), - (0xA830, 'V'), - (0xA83A, 'X'), - (0xA840, 'V'), - (0xA878, 'X'), - (0xA880, 'V'), - (0xA8C5, 'X'), - (0xA8CE, 'V'), - (0xA8DA, 'X'), - (0xA8E0, 'V'), - (0xA8FC, 'X'), - (0xA900, 'V'), - (0xA954, 'X'), - (0xA95F, 'V'), - (0xA97D, 'X'), - (0xA980, 'V'), - (0xA9CE, 'X'), - (0xA9CF, 'V'), - (0xA9DA, 'X'), - (0xA9DE, 'V'), - (0xA9E0, 'X'), - (0xAA00, 'V'), - (0xAA37, 'X'), - (0xAA40, 'V'), - (0xAA4E, 'X'), - (0xAA50, 'V'), - (0xAA5A, 'X'), - (0xAA5C, 'V'), - (0xAA7C, 'X'), - (0xAA80, 'V'), - (0xAAC3, 'X'), - (0xAADB, 'V'), - (0xAAF7, 'X'), - (0xAB01, 'V'), - (0xAB07, 'X'), - (0xAB09, 'V'), - (0xAB0F, 'X'), - (0xAB11, 'V'), - (0xAB17, 'X'), - (0xAB20, 'V'), - (0xAB27, 'X'), - (0xAB28, 'V'), - (0xAB2F, 'X'), - (0xABC0, 'V'), - (0xABEE, 'X'), - (0xABF0, 'V'), - (0xABFA, 'X'), - (0xAC00, 'V'), - (0xD7A4, 'X'), - (0xD7B0, 'V'), - (0xD7C7, 'X'), - (0xD7CB, 'V'), - (0xD7FC, 'X'), - (0xF900, 'M', u'豈'), - (0xF901, 'M', u'更'), - (0xF902, 'M', u'車'), - (0xF903, 'M', u'賈'), - (0xF904, 'M', u'滑'), - (0xF905, 'M', u'串'), - (0xF906, 'M', u'句'), - (0xF907, 'M', u'龜'), - (0xF909, 'M', u'契'), - (0xF90A, 'M', u'金'), - (0xF90B, 'M', u'喇'), - (0xF90C, 'M', u'奈'), - (0xF90D, 'M', u'懶'), - (0xF90E, 'M', u'癩'), - (0xF90F, 'M', u'羅'), - (0xF910, 'M', u'蘿'), - (0xF911, 'M', u'螺'), - (0xF912, 'M', u'裸'), - (0xF913, 'M', u'邏'), - (0xF914, 'M', u'樂'), - (0xF915, 'M', u'洛'), - (0xF916, 'M', u'烙'), - (0xF917, 'M', u'珞'), - (0xF918, 'M', u'落'), - (0xF919, 'M', u'酪'), - (0xF91A, 'M', u'駱'), - (0xF91B, 'M', u'亂'), - (0xF91C, 'M', u'卵'), - (0xF91D, 'M', u'欄'), - (0xF91E, 'M', u'爛'), - (0xF91F, 'M', u'蘭'), - (0xF920, 'M', u'鸞'), - (0xF921, 'M', u'嵐'), - (0xF922, 'M', u'濫'), - (0xF923, 'M', u'藍'), - (0xF924, 'M', u'襤'), - (0xF925, 'M', u'拉'), - (0xF926, 'M', u'臘'), - (0xF927, 'M', u'蠟'), - (0xF928, 'M', u'廊'), - (0xF929, 'M', u'朗'), - (0xF92A, 'M', u'浪'), - (0xF92B, 'M', u'狼'), - (0xF92C, 'M', u'郎'), - (0xF92D, 'M', u'來'), - ] - -def _seg_38(): - return [ - (0xF92E, 'M', u'冷'), - (0xF92F, 'M', u'勞'), - (0xF930, 'M', u'擄'), - (0xF931, 'M', u'櫓'), - (0xF932, 'M', u'爐'), - (0xF933, 'M', u'盧'), - (0xF934, 'M', u'老'), - (0xF935, 'M', u'蘆'), - (0xF936, 'M', u'虜'), - (0xF937, 'M', u'路'), - (0xF938, 'M', u'露'), - (0xF939, 'M', u'魯'), - (0xF93A, 'M', u'鷺'), - (0xF93B, 'M', u'碌'), - (0xF93C, 'M', u'祿'), - (0xF93D, 'M', u'綠'), - (0xF93E, 'M', u'菉'), - (0xF93F, 'M', u'錄'), - (0xF940, 'M', u'鹿'), - (0xF941, 'M', u'論'), - (0xF942, 'M', u'壟'), - (0xF943, 'M', u'弄'), - (0xF944, 'M', u'籠'), - (0xF945, 'M', u'聾'), - (0xF946, 'M', u'牢'), - (0xF947, 'M', u'磊'), - (0xF948, 'M', u'賂'), - (0xF949, 'M', u'雷'), - (0xF94A, 'M', u'壘'), - (0xF94B, 'M', u'屢'), - (0xF94C, 'M', u'樓'), - (0xF94D, 'M', u'淚'), - (0xF94E, 'M', u'漏'), - (0xF94F, 'M', u'累'), - (0xF950, 'M', u'縷'), - (0xF951, 'M', u'陋'), - (0xF952, 'M', u'勒'), - (0xF953, 'M', u'肋'), - (0xF954, 'M', u'凜'), - (0xF955, 'M', u'凌'), - (0xF956, 'M', u'稜'), - (0xF957, 'M', u'綾'), - (0xF958, 'M', u'菱'), - (0xF959, 'M', u'陵'), - (0xF95A, 'M', u'讀'), - (0xF95B, 'M', u'拏'), - (0xF95C, 'M', u'樂'), - (0xF95D, 'M', u'諾'), - (0xF95E, 'M', u'丹'), - (0xF95F, 'M', u'寧'), - (0xF960, 'M', u'怒'), - (0xF961, 'M', u'率'), - (0xF962, 'M', u'異'), - (0xF963, 'M', u'北'), - (0xF964, 'M', u'磻'), - (0xF965, 'M', u'便'), - (0xF966, 'M', u'復'), - (0xF967, 'M', u'不'), - (0xF968, 'M', u'泌'), - (0xF969, 'M', u'數'), - (0xF96A, 'M', u'索'), - (0xF96B, 'M', u'參'), - (0xF96C, 'M', u'塞'), - (0xF96D, 'M', u'省'), - (0xF96E, 'M', u'葉'), - (0xF96F, 'M', u'說'), - (0xF970, 'M', u'殺'), - (0xF971, 'M', u'辰'), - (0xF972, 'M', u'沈'), - (0xF973, 'M', u'拾'), - (0xF974, 'M', u'若'), - (0xF975, 'M', u'掠'), - (0xF976, 'M', u'略'), - (0xF977, 'M', u'亮'), - (0xF978, 'M', u'兩'), - (0xF979, 'M', u'凉'), - (0xF97A, 'M', u'梁'), - (0xF97B, 'M', u'糧'), - (0xF97C, 'M', u'良'), - (0xF97D, 'M', u'諒'), - (0xF97E, 'M', u'量'), - (0xF97F, 'M', u'勵'), - (0xF980, 'M', u'呂'), - (0xF981, 'M', u'女'), - (0xF982, 'M', u'廬'), - (0xF983, 'M', u'旅'), - (0xF984, 'M', u'濾'), - (0xF985, 'M', u'礪'), - (0xF986, 'M', u'閭'), - (0xF987, 'M', u'驪'), - (0xF988, 'M', u'麗'), - (0xF989, 'M', u'黎'), - (0xF98A, 'M', u'力'), - (0xF98B, 'M', u'曆'), - (0xF98C, 'M', u'歷'), - (0xF98D, 'M', u'轢'), - (0xF98E, 'M', u'年'), - (0xF98F, 'M', u'憐'), - (0xF990, 'M', u'戀'), - (0xF991, 'M', u'撚'), - ] - -def _seg_39(): - return [ - (0xF992, 'M', u'漣'), - (0xF993, 'M', u'煉'), - (0xF994, 'M', u'璉'), - (0xF995, 'M', u'秊'), - (0xF996, 'M', u'練'), - (0xF997, 'M', u'聯'), - (0xF998, 'M', u'輦'), - (0xF999, 'M', u'蓮'), - (0xF99A, 'M', u'連'), - (0xF99B, 'M', u'鍊'), - (0xF99C, 'M', u'列'), - (0xF99D, 'M', u'劣'), - (0xF99E, 'M', u'咽'), - (0xF99F, 'M', u'烈'), - (0xF9A0, 'M', u'裂'), - (0xF9A1, 'M', u'說'), - (0xF9A2, 'M', u'廉'), - (0xF9A3, 'M', u'念'), - (0xF9A4, 'M', u'捻'), - (0xF9A5, 'M', u'殮'), - (0xF9A6, 'M', u'簾'), - (0xF9A7, 'M', u'獵'), - (0xF9A8, 'M', u'令'), - (0xF9A9, 'M', u'囹'), - (0xF9AA, 'M', u'寧'), - (0xF9AB, 'M', u'嶺'), - (0xF9AC, 'M', u'怜'), - (0xF9AD, 'M', u'玲'), - (0xF9AE, 'M', u'瑩'), - (0xF9AF, 'M', u'羚'), - (0xF9B0, 'M', u'聆'), - (0xF9B1, 'M', u'鈴'), - (0xF9B2, 'M', u'零'), - (0xF9B3, 'M', u'靈'), - (0xF9B4, 'M', u'領'), - (0xF9B5, 'M', u'例'), - (0xF9B6, 'M', u'禮'), - (0xF9B7, 'M', u'醴'), - (0xF9B8, 'M', u'隸'), - (0xF9B9, 'M', u'惡'), - (0xF9BA, 'M', u'了'), - (0xF9BB, 'M', u'僚'), - (0xF9BC, 'M', u'寮'), - (0xF9BD, 'M', u'尿'), - (0xF9BE, 'M', u'料'), - (0xF9BF, 'M', u'樂'), - (0xF9C0, 'M', u'燎'), - (0xF9C1, 'M', u'療'), - (0xF9C2, 'M', u'蓼'), - (0xF9C3, 'M', u'遼'), - (0xF9C4, 'M', u'龍'), - (0xF9C5, 'M', u'暈'), - (0xF9C6, 'M', u'阮'), - (0xF9C7, 'M', u'劉'), - (0xF9C8, 'M', u'杻'), - (0xF9C9, 'M', u'柳'), - (0xF9CA, 'M', u'流'), - (0xF9CB, 'M', u'溜'), - (0xF9CC, 'M', u'琉'), - (0xF9CD, 'M', u'留'), - (0xF9CE, 'M', u'硫'), - (0xF9CF, 'M', u'紐'), - (0xF9D0, 'M', u'類'), - (0xF9D1, 'M', u'六'), - (0xF9D2, 'M', u'戮'), - (0xF9D3, 'M', u'陸'), - (0xF9D4, 'M', u'倫'), - (0xF9D5, 'M', u'崙'), - (0xF9D6, 'M', u'淪'), - (0xF9D7, 'M', u'輪'), - (0xF9D8, 'M', u'律'), - (0xF9D9, 'M', u'慄'), - (0xF9DA, 'M', u'栗'), - (0xF9DB, 'M', u'率'), - (0xF9DC, 'M', u'隆'), - (0xF9DD, 'M', u'利'), - (0xF9DE, 'M', u'吏'), - (0xF9DF, 'M', u'履'), - (0xF9E0, 'M', u'易'), - (0xF9E1, 'M', u'李'), - (0xF9E2, 'M', u'梨'), - (0xF9E3, 'M', u'泥'), - (0xF9E4, 'M', u'理'), - (0xF9E5, 'M', u'痢'), - (0xF9E6, 'M', u'罹'), - (0xF9E7, 'M', u'裏'), - (0xF9E8, 'M', u'裡'), - (0xF9E9, 'M', u'里'), - (0xF9EA, 'M', u'離'), - (0xF9EB, 'M', u'匿'), - (0xF9EC, 'M', u'溺'), - (0xF9ED, 'M', u'吝'), - (0xF9EE, 'M', u'燐'), - (0xF9EF, 'M', u'璘'), - (0xF9F0, 'M', u'藺'), - (0xF9F1, 'M', u'隣'), - (0xF9F2, 'M', u'鱗'), - (0xF9F3, 'M', u'麟'), - (0xF9F4, 'M', u'林'), - (0xF9F5, 'M', u'淋'), - ] - -def _seg_40(): - return [ - (0xF9F6, 'M', u'臨'), - (0xF9F7, 'M', u'立'), - (0xF9F8, 'M', u'笠'), - (0xF9F9, 'M', u'粒'), - (0xF9FA, 'M', u'狀'), - (0xF9FB, 'M', u'炙'), - (0xF9FC, 'M', u'識'), - (0xF9FD, 'M', u'什'), - (0xF9FE, 'M', u'茶'), - (0xF9FF, 'M', u'刺'), - (0xFA00, 'M', u'切'), - (0xFA01, 'M', u'度'), - (0xFA02, 'M', u'拓'), - (0xFA03, 'M', u'糖'), - (0xFA04, 'M', u'宅'), - (0xFA05, 'M', u'洞'), - (0xFA06, 'M', u'暴'), - (0xFA07, 'M', u'輻'), - (0xFA08, 'M', u'行'), - (0xFA09, 'M', u'降'), - (0xFA0A, 'M', u'見'), - (0xFA0B, 'M', u'廓'), - (0xFA0C, 'M', u'兀'), - (0xFA0D, 'M', u'嗀'), - (0xFA0E, 'V'), - (0xFA10, 'M', u'塚'), - (0xFA11, 'V'), - (0xFA12, 'M', u'晴'), - (0xFA13, 'V'), - (0xFA15, 'M', u'凞'), - (0xFA16, 'M', u'猪'), - (0xFA17, 'M', u'益'), - (0xFA18, 'M', u'礼'), - (0xFA19, 'M', u'神'), - (0xFA1A, 'M', u'祥'), - (0xFA1B, 'M', u'福'), - (0xFA1C, 'M', u'靖'), - (0xFA1D, 'M', u'精'), - (0xFA1E, 'M', u'羽'), - (0xFA1F, 'V'), - (0xFA20, 'M', u'蘒'), - (0xFA21, 'V'), - (0xFA22, 'M', u'諸'), - (0xFA23, 'V'), - (0xFA25, 'M', u'逸'), - (0xFA26, 'M', u'都'), - (0xFA27, 'V'), - (0xFA2A, 'M', u'飯'), - (0xFA2B, 'M', u'飼'), - (0xFA2C, 'M', u'館'), - (0xFA2D, 'M', u'鶴'), - (0xFA2E, 'M', u'郞'), - (0xFA2F, 'M', u'隷'), - (0xFA30, 'M', u'侮'), - (0xFA31, 'M', u'僧'), - (0xFA32, 'M', u'免'), - (0xFA33, 'M', u'勉'), - (0xFA34, 'M', u'勤'), - (0xFA35, 'M', u'卑'), - (0xFA36, 'M', u'喝'), - (0xFA37, 'M', u'嘆'), - (0xFA38, 'M', u'器'), - (0xFA39, 'M', u'塀'), - (0xFA3A, 'M', u'墨'), - (0xFA3B, 'M', u'層'), - (0xFA3C, 'M', u'屮'), - (0xFA3D, 'M', u'悔'), - (0xFA3E, 'M', u'慨'), - (0xFA3F, 'M', u'憎'), - (0xFA40, 'M', u'懲'), - (0xFA41, 'M', u'敏'), - (0xFA42, 'M', u'既'), - (0xFA43, 'M', u'暑'), - (0xFA44, 'M', u'梅'), - (0xFA45, 'M', u'海'), - (0xFA46, 'M', u'渚'), - (0xFA47, 'M', u'漢'), - (0xFA48, 'M', u'煮'), - (0xFA49, 'M', u'爫'), - (0xFA4A, 'M', u'琢'), - (0xFA4B, 'M', u'碑'), - (0xFA4C, 'M', u'社'), - (0xFA4D, 'M', u'祉'), - (0xFA4E, 'M', u'祈'), - (0xFA4F, 'M', u'祐'), - (0xFA50, 'M', u'祖'), - (0xFA51, 'M', u'祝'), - (0xFA52, 'M', u'禍'), - (0xFA53, 'M', u'禎'), - (0xFA54, 'M', u'穀'), - (0xFA55, 'M', u'突'), - (0xFA56, 'M', u'節'), - (0xFA57, 'M', u'練'), - (0xFA58, 'M', u'縉'), - (0xFA59, 'M', u'繁'), - (0xFA5A, 'M', u'署'), - (0xFA5B, 'M', u'者'), - (0xFA5C, 'M', u'臭'), - (0xFA5D, 'M', u'艹'), - (0xFA5F, 'M', u'著'), - ] - -def _seg_41(): - return [ - (0xFA60, 'M', u'褐'), - (0xFA61, 'M', u'視'), - (0xFA62, 'M', u'謁'), - (0xFA63, 'M', u'謹'), - (0xFA64, 'M', u'賓'), - (0xFA65, 'M', u'贈'), - (0xFA66, 'M', u'辶'), - (0xFA67, 'M', u'逸'), - (0xFA68, 'M', u'難'), - (0xFA69, 'M', u'響'), - (0xFA6A, 'M', u'頻'), - (0xFA6B, 'M', u'恵'), - (0xFA6C, 'M', u'𤋮'), - (0xFA6D, 'M', u'舘'), - (0xFA6E, 'X'), - (0xFA70, 'M', u'並'), - (0xFA71, 'M', u'况'), - (0xFA72, 'M', u'全'), - (0xFA73, 'M', u'侀'), - (0xFA74, 'M', u'充'), - (0xFA75, 'M', u'冀'), - (0xFA76, 'M', u'勇'), - (0xFA77, 'M', u'勺'), - (0xFA78, 'M', u'喝'), - (0xFA79, 'M', u'啕'), - (0xFA7A, 'M', u'喙'), - (0xFA7B, 'M', u'嗢'), - (0xFA7C, 'M', u'塚'), - (0xFA7D, 'M', u'墳'), - (0xFA7E, 'M', u'奄'), - (0xFA7F, 'M', u'奔'), - (0xFA80, 'M', u'婢'), - (0xFA81, 'M', u'嬨'), - (0xFA82, 'M', u'廒'), - (0xFA83, 'M', u'廙'), - (0xFA84, 'M', u'彩'), - (0xFA85, 'M', u'徭'), - (0xFA86, 'M', u'惘'), - (0xFA87, 'M', u'慎'), - (0xFA88, 'M', u'愈'), - (0xFA89, 'M', u'憎'), - (0xFA8A, 'M', u'慠'), - (0xFA8B, 'M', u'懲'), - (0xFA8C, 'M', u'戴'), - (0xFA8D, 'M', u'揄'), - (0xFA8E, 'M', u'搜'), - (0xFA8F, 'M', u'摒'), - (0xFA90, 'M', u'敖'), - (0xFA91, 'M', u'晴'), - (0xFA92, 'M', u'朗'), - (0xFA93, 'M', u'望'), - (0xFA94, 'M', u'杖'), - (0xFA95, 'M', u'歹'), - (0xFA96, 'M', u'殺'), - (0xFA97, 'M', u'流'), - (0xFA98, 'M', u'滛'), - (0xFA99, 'M', u'滋'), - (0xFA9A, 'M', u'漢'), - (0xFA9B, 'M', u'瀞'), - (0xFA9C, 'M', u'煮'), - (0xFA9D, 'M', u'瞧'), - (0xFA9E, 'M', u'爵'), - (0xFA9F, 'M', u'犯'), - (0xFAA0, 'M', u'猪'), - (0xFAA1, 'M', u'瑱'), - (0xFAA2, 'M', u'甆'), - (0xFAA3, 'M', u'画'), - (0xFAA4, 'M', u'瘝'), - (0xFAA5, 'M', u'瘟'), - (0xFAA6, 'M', u'益'), - (0xFAA7, 'M', u'盛'), - (0xFAA8, 'M', u'直'), - (0xFAA9, 'M', u'睊'), - (0xFAAA, 'M', u'着'), - (0xFAAB, 'M', u'磌'), - (0xFAAC, 'M', u'窱'), - (0xFAAD, 'M', u'節'), - (0xFAAE, 'M', u'类'), - (0xFAAF, 'M', u'絛'), - (0xFAB0, 'M', u'練'), - (0xFAB1, 'M', u'缾'), - (0xFAB2, 'M', u'者'), - (0xFAB3, 'M', u'荒'), - (0xFAB4, 'M', u'華'), - (0xFAB5, 'M', u'蝹'), - (0xFAB6, 'M', u'襁'), - (0xFAB7, 'M', u'覆'), - (0xFAB8, 'M', u'視'), - (0xFAB9, 'M', u'調'), - (0xFABA, 'M', u'諸'), - (0xFABB, 'M', u'請'), - (0xFABC, 'M', u'謁'), - (0xFABD, 'M', u'諾'), - (0xFABE, 'M', u'諭'), - (0xFABF, 'M', u'謹'), - (0xFAC0, 'M', u'變'), - (0xFAC1, 'M', u'贈'), - (0xFAC2, 'M', u'輸'), - (0xFAC3, 'M', u'遲'), - (0xFAC4, 'M', u'醙'), - ] - -def _seg_42(): - return [ - (0xFAC5, 'M', u'鉶'), - (0xFAC6, 'M', u'陼'), - (0xFAC7, 'M', u'難'), - (0xFAC8, 'M', u'靖'), - (0xFAC9, 'M', u'韛'), - (0xFACA, 'M', u'響'), - (0xFACB, 'M', u'頋'), - (0xFACC, 'M', u'頻'), - (0xFACD, 'M', u'鬒'), - (0xFACE, 'M', u'龜'), - (0xFACF, 'M', u'𢡊'), - (0xFAD0, 'M', u'𢡄'), - (0xFAD1, 'M', u'𣏕'), - (0xFAD2, 'M', u'㮝'), - (0xFAD3, 'M', u'䀘'), - (0xFAD4, 'M', u'䀹'), - (0xFAD5, 'M', u'𥉉'), - (0xFAD6, 'M', u'𥳐'), - (0xFAD7, 'M', u'𧻓'), - (0xFAD8, 'M', u'齃'), - (0xFAD9, 'M', u'龎'), - (0xFADA, 'X'), - (0xFB00, 'M', u'ff'), - (0xFB01, 'M', u'fi'), - (0xFB02, 'M', u'fl'), - (0xFB03, 'M', u'ffi'), - (0xFB04, 'M', u'ffl'), - (0xFB05, 'M', u'st'), - (0xFB07, 'X'), - (0xFB13, 'M', u'մն'), - (0xFB14, 'M', u'մե'), - (0xFB15, 'M', u'մի'), - (0xFB16, 'M', u'վն'), - (0xFB17, 'M', u'մխ'), - (0xFB18, 'X'), - (0xFB1D, 'M', u'יִ'), - (0xFB1E, 'V'), - (0xFB1F, 'M', u'ײַ'), - (0xFB20, 'M', u'ע'), - (0xFB21, 'M', u'א'), - (0xFB22, 'M', u'ד'), - (0xFB23, 'M', u'ה'), - (0xFB24, 'M', u'כ'), - (0xFB25, 'M', u'ל'), - (0xFB26, 'M', u'ם'), - (0xFB27, 'M', u'ר'), - (0xFB28, 'M', u'ת'), - (0xFB29, '3', u'+'), - (0xFB2A, 'M', u'שׁ'), - (0xFB2B, 'M', u'שׂ'), - (0xFB2C, 'M', u'שּׁ'), - (0xFB2D, 'M', u'שּׂ'), - (0xFB2E, 'M', u'אַ'), - (0xFB2F, 'M', u'אָ'), - (0xFB30, 'M', u'אּ'), - (0xFB31, 'M', u'בּ'), - (0xFB32, 'M', u'גּ'), - (0xFB33, 'M', u'דּ'), - (0xFB34, 'M', u'הּ'), - (0xFB35, 'M', u'וּ'), - (0xFB36, 'M', u'זּ'), - (0xFB37, 'X'), - (0xFB38, 'M', u'טּ'), - (0xFB39, 'M', u'יּ'), - (0xFB3A, 'M', u'ךּ'), - (0xFB3B, 'M', u'כּ'), - (0xFB3C, 'M', u'לּ'), - (0xFB3D, 'X'), - (0xFB3E, 'M', u'מּ'), - (0xFB3F, 'X'), - (0xFB40, 'M', u'נּ'), - (0xFB41, 'M', u'סּ'), - (0xFB42, 'X'), - (0xFB43, 'M', u'ףּ'), - (0xFB44, 'M', u'פּ'), - (0xFB45, 'X'), - (0xFB46, 'M', u'צּ'), - (0xFB47, 'M', u'קּ'), - (0xFB48, 'M', u'רּ'), - (0xFB49, 'M', u'שּ'), - (0xFB4A, 'M', u'תּ'), - (0xFB4B, 'M', u'וֹ'), - (0xFB4C, 'M', u'בֿ'), - (0xFB4D, 'M', u'כֿ'), - (0xFB4E, 'M', u'פֿ'), - (0xFB4F, 'M', u'אל'), - (0xFB50, 'M', u'ٱ'), - (0xFB52, 'M', u'ٻ'), - (0xFB56, 'M', u'پ'), - (0xFB5A, 'M', u'ڀ'), - (0xFB5E, 'M', u'ٺ'), - (0xFB62, 'M', u'ٿ'), - (0xFB66, 'M', u'ٹ'), - (0xFB6A, 'M', u'ڤ'), - (0xFB6E, 'M', u'ڦ'), - (0xFB72, 'M', u'ڄ'), - (0xFB76, 'M', u'ڃ'), - (0xFB7A, 'M', u'چ'), - (0xFB7E, 'M', u'ڇ'), - (0xFB82, 'M', u'ڍ'), - ] - -def _seg_43(): - return [ - (0xFB84, 'M', u'ڌ'), - (0xFB86, 'M', u'ڎ'), - (0xFB88, 'M', u'ڈ'), - (0xFB8A, 'M', u'ژ'), - (0xFB8C, 'M', u'ڑ'), - (0xFB8E, 'M', u'ک'), - (0xFB92, 'M', u'گ'), - (0xFB96, 'M', u'ڳ'), - (0xFB9A, 'M', u'ڱ'), - (0xFB9E, 'M', u'ں'), - (0xFBA0, 'M', u'ڻ'), - (0xFBA4, 'M', u'ۀ'), - (0xFBA6, 'M', u'ہ'), - (0xFBAA, 'M', u'ھ'), - (0xFBAE, 'M', u'ے'), - (0xFBB0, 'M', u'ۓ'), - (0xFBB2, 'V'), - (0xFBC2, 'X'), - (0xFBD3, 'M', u'ڭ'), - (0xFBD7, 'M', u'ۇ'), - (0xFBD9, 'M', u'ۆ'), - (0xFBDB, 'M', u'ۈ'), - (0xFBDD, 'M', u'ۇٴ'), - (0xFBDE, 'M', u'ۋ'), - (0xFBE0, 'M', u'ۅ'), - (0xFBE2, 'M', u'ۉ'), - (0xFBE4, 'M', u'ې'), - (0xFBE8, 'M', u'ى'), - (0xFBEA, 'M', u'ئا'), - (0xFBEC, 'M', u'ئە'), - (0xFBEE, 'M', u'ئو'), - (0xFBF0, 'M', u'ئۇ'), - (0xFBF2, 'M', u'ئۆ'), - (0xFBF4, 'M', u'ئۈ'), - (0xFBF6, 'M', u'ئې'), - (0xFBF9, 'M', u'ئى'), - (0xFBFC, 'M', u'ی'), - (0xFC00, 'M', u'ئج'), - (0xFC01, 'M', u'ئح'), - (0xFC02, 'M', u'ئم'), - (0xFC03, 'M', u'ئى'), - (0xFC04, 'M', u'ئي'), - (0xFC05, 'M', u'بج'), - (0xFC06, 'M', u'بح'), - (0xFC07, 'M', u'بخ'), - (0xFC08, 'M', u'بم'), - (0xFC09, 'M', u'بى'), - (0xFC0A, 'M', u'بي'), - (0xFC0B, 'M', u'تج'), - (0xFC0C, 'M', u'تح'), - (0xFC0D, 'M', u'تخ'), - (0xFC0E, 'M', u'تم'), - (0xFC0F, 'M', u'تى'), - (0xFC10, 'M', u'تي'), - (0xFC11, 'M', u'ثج'), - (0xFC12, 'M', u'ثم'), - (0xFC13, 'M', u'ثى'), - (0xFC14, 'M', u'ثي'), - (0xFC15, 'M', u'جح'), - (0xFC16, 'M', u'جم'), - (0xFC17, 'M', u'حج'), - (0xFC18, 'M', u'حم'), - (0xFC19, 'M', u'خج'), - (0xFC1A, 'M', u'خح'), - (0xFC1B, 'M', u'خم'), - (0xFC1C, 'M', u'سج'), - (0xFC1D, 'M', u'سح'), - (0xFC1E, 'M', u'سخ'), - (0xFC1F, 'M', u'سم'), - (0xFC20, 'M', u'صح'), - (0xFC21, 'M', u'صم'), - (0xFC22, 'M', u'ضج'), - (0xFC23, 'M', u'ضح'), - (0xFC24, 'M', u'ضخ'), - (0xFC25, 'M', u'ضم'), - (0xFC26, 'M', u'طح'), - (0xFC27, 'M', u'طم'), - (0xFC28, 'M', u'ظم'), - (0xFC29, 'M', u'عج'), - (0xFC2A, 'M', u'عم'), - (0xFC2B, 'M', u'غج'), - (0xFC2C, 'M', u'غم'), - (0xFC2D, 'M', u'فج'), - (0xFC2E, 'M', u'فح'), - (0xFC2F, 'M', u'فخ'), - (0xFC30, 'M', u'فم'), - (0xFC31, 'M', u'فى'), - (0xFC32, 'M', u'في'), - (0xFC33, 'M', u'قح'), - (0xFC34, 'M', u'قم'), - (0xFC35, 'M', u'قى'), - (0xFC36, 'M', u'قي'), - (0xFC37, 'M', u'كا'), - (0xFC38, 'M', u'كج'), - (0xFC39, 'M', u'كح'), - (0xFC3A, 'M', u'كخ'), - (0xFC3B, 'M', u'كل'), - (0xFC3C, 'M', u'كم'), - (0xFC3D, 'M', u'كى'), - (0xFC3E, 'M', u'كي'), - ] - -def _seg_44(): - return [ - (0xFC3F, 'M', u'لج'), - (0xFC40, 'M', u'لح'), - (0xFC41, 'M', u'لخ'), - (0xFC42, 'M', u'لم'), - (0xFC43, 'M', u'لى'), - (0xFC44, 'M', u'لي'), - (0xFC45, 'M', u'مج'), - (0xFC46, 'M', u'مح'), - (0xFC47, 'M', u'مخ'), - (0xFC48, 'M', u'مم'), - (0xFC49, 'M', u'مى'), - (0xFC4A, 'M', u'مي'), - (0xFC4B, 'M', u'نج'), - (0xFC4C, 'M', u'نح'), - (0xFC4D, 'M', u'نخ'), - (0xFC4E, 'M', u'نم'), - (0xFC4F, 'M', u'نى'), - (0xFC50, 'M', u'ني'), - (0xFC51, 'M', u'هج'), - (0xFC52, 'M', u'هم'), - (0xFC53, 'M', u'هى'), - (0xFC54, 'M', u'هي'), - (0xFC55, 'M', u'يج'), - (0xFC56, 'M', u'يح'), - (0xFC57, 'M', u'يخ'), - (0xFC58, 'M', u'يم'), - (0xFC59, 'M', u'يى'), - (0xFC5A, 'M', u'يي'), - (0xFC5B, 'M', u'ذٰ'), - (0xFC5C, 'M', u'رٰ'), - (0xFC5D, 'M', u'ىٰ'), - (0xFC5E, '3', u' ٌّ'), - (0xFC5F, '3', u' ٍّ'), - (0xFC60, '3', u' َّ'), - (0xFC61, '3', u' ُّ'), - (0xFC62, '3', u' ِّ'), - (0xFC63, '3', u' ّٰ'), - (0xFC64, 'M', u'ئر'), - (0xFC65, 'M', u'ئز'), - (0xFC66, 'M', u'ئم'), - (0xFC67, 'M', u'ئن'), - (0xFC68, 'M', u'ئى'), - (0xFC69, 'M', u'ئي'), - (0xFC6A, 'M', u'بر'), - (0xFC6B, 'M', u'بز'), - (0xFC6C, 'M', u'بم'), - (0xFC6D, 'M', u'بن'), - (0xFC6E, 'M', u'بى'), - (0xFC6F, 'M', u'بي'), - (0xFC70, 'M', u'تر'), - (0xFC71, 'M', u'تز'), - (0xFC72, 'M', u'تم'), - (0xFC73, 'M', u'تن'), - (0xFC74, 'M', u'تى'), - (0xFC75, 'M', u'تي'), - (0xFC76, 'M', u'ثر'), - (0xFC77, 'M', u'ثز'), - (0xFC78, 'M', u'ثم'), - (0xFC79, 'M', u'ثن'), - (0xFC7A, 'M', u'ثى'), - (0xFC7B, 'M', u'ثي'), - (0xFC7C, 'M', u'فى'), - (0xFC7D, 'M', u'في'), - (0xFC7E, 'M', u'قى'), - (0xFC7F, 'M', u'قي'), - (0xFC80, 'M', u'كا'), - (0xFC81, 'M', u'كل'), - (0xFC82, 'M', u'كم'), - (0xFC83, 'M', u'كى'), - (0xFC84, 'M', u'كي'), - (0xFC85, 'M', u'لم'), - (0xFC86, 'M', u'لى'), - (0xFC87, 'M', u'لي'), - (0xFC88, 'M', u'ما'), - (0xFC89, 'M', u'مم'), - (0xFC8A, 'M', u'نر'), - (0xFC8B, 'M', u'نز'), - (0xFC8C, 'M', u'نم'), - (0xFC8D, 'M', u'نن'), - (0xFC8E, 'M', u'نى'), - (0xFC8F, 'M', u'ني'), - (0xFC90, 'M', u'ىٰ'), - (0xFC91, 'M', u'ير'), - (0xFC92, 'M', u'يز'), - (0xFC93, 'M', u'يم'), - (0xFC94, 'M', u'ين'), - (0xFC95, 'M', u'يى'), - (0xFC96, 'M', u'يي'), - (0xFC97, 'M', u'ئج'), - (0xFC98, 'M', u'ئح'), - (0xFC99, 'M', u'ئخ'), - (0xFC9A, 'M', u'ئم'), - (0xFC9B, 'M', u'ئه'), - (0xFC9C, 'M', u'بج'), - (0xFC9D, 'M', u'بح'), - (0xFC9E, 'M', u'بخ'), - (0xFC9F, 'M', u'بم'), - (0xFCA0, 'M', u'به'), - (0xFCA1, 'M', u'تج'), - (0xFCA2, 'M', u'تح'), - ] - -def _seg_45(): - return [ - (0xFCA3, 'M', u'تخ'), - (0xFCA4, 'M', u'تم'), - (0xFCA5, 'M', u'ته'), - (0xFCA6, 'M', u'ثم'), - (0xFCA7, 'M', u'جح'), - (0xFCA8, 'M', u'جم'), - (0xFCA9, 'M', u'حج'), - (0xFCAA, 'M', u'حم'), - (0xFCAB, 'M', u'خج'), - (0xFCAC, 'M', u'خم'), - (0xFCAD, 'M', u'سج'), - (0xFCAE, 'M', u'سح'), - (0xFCAF, 'M', u'سخ'), - (0xFCB0, 'M', u'سم'), - (0xFCB1, 'M', u'صح'), - (0xFCB2, 'M', u'صخ'), - (0xFCB3, 'M', u'صم'), - (0xFCB4, 'M', u'ضج'), - (0xFCB5, 'M', u'ضح'), - (0xFCB6, 'M', u'ضخ'), - (0xFCB7, 'M', u'ضم'), - (0xFCB8, 'M', u'طح'), - (0xFCB9, 'M', u'ظم'), - (0xFCBA, 'M', u'عج'), - (0xFCBB, 'M', u'عم'), - (0xFCBC, 'M', u'غج'), - (0xFCBD, 'M', u'غم'), - (0xFCBE, 'M', u'فج'), - (0xFCBF, 'M', u'فح'), - (0xFCC0, 'M', u'فخ'), - (0xFCC1, 'M', u'فم'), - (0xFCC2, 'M', u'قح'), - (0xFCC3, 'M', u'قم'), - (0xFCC4, 'M', u'كج'), - (0xFCC5, 'M', u'كح'), - (0xFCC6, 'M', u'كخ'), - (0xFCC7, 'M', u'كل'), - (0xFCC8, 'M', u'كم'), - (0xFCC9, 'M', u'لج'), - (0xFCCA, 'M', u'لح'), - (0xFCCB, 'M', u'لخ'), - (0xFCCC, 'M', u'لم'), - (0xFCCD, 'M', u'له'), - (0xFCCE, 'M', u'مج'), - (0xFCCF, 'M', u'مح'), - (0xFCD0, 'M', u'مخ'), - (0xFCD1, 'M', u'مم'), - (0xFCD2, 'M', u'نج'), - (0xFCD3, 'M', u'نح'), - (0xFCD4, 'M', u'نخ'), - (0xFCD5, 'M', u'نم'), - (0xFCD6, 'M', u'نه'), - (0xFCD7, 'M', u'هج'), - (0xFCD8, 'M', u'هم'), - (0xFCD9, 'M', u'هٰ'), - (0xFCDA, 'M', u'يج'), - (0xFCDB, 'M', u'يح'), - (0xFCDC, 'M', u'يخ'), - (0xFCDD, 'M', u'يم'), - (0xFCDE, 'M', u'يه'), - (0xFCDF, 'M', u'ئم'), - (0xFCE0, 'M', u'ئه'), - (0xFCE1, 'M', u'بم'), - (0xFCE2, 'M', u'به'), - (0xFCE3, 'M', u'تم'), - (0xFCE4, 'M', u'ته'), - (0xFCE5, 'M', u'ثم'), - (0xFCE6, 'M', u'ثه'), - (0xFCE7, 'M', u'سم'), - (0xFCE8, 'M', u'سه'), - (0xFCE9, 'M', u'شم'), - (0xFCEA, 'M', u'شه'), - (0xFCEB, 'M', u'كل'), - (0xFCEC, 'M', u'كم'), - (0xFCED, 'M', u'لم'), - (0xFCEE, 'M', u'نم'), - (0xFCEF, 'M', u'نه'), - (0xFCF0, 'M', u'يم'), - (0xFCF1, 'M', u'يه'), - (0xFCF2, 'M', u'ـَّ'), - (0xFCF3, 'M', u'ـُّ'), - (0xFCF4, 'M', u'ـِّ'), - (0xFCF5, 'M', u'طى'), - (0xFCF6, 'M', u'طي'), - (0xFCF7, 'M', u'عى'), - (0xFCF8, 'M', u'عي'), - (0xFCF9, 'M', u'غى'), - (0xFCFA, 'M', u'غي'), - (0xFCFB, 'M', u'سى'), - (0xFCFC, 'M', u'سي'), - (0xFCFD, 'M', u'شى'), - (0xFCFE, 'M', u'شي'), - (0xFCFF, 'M', u'حى'), - (0xFD00, 'M', u'حي'), - (0xFD01, 'M', u'جى'), - (0xFD02, 'M', u'جي'), - (0xFD03, 'M', u'خى'), - (0xFD04, 'M', u'خي'), - (0xFD05, 'M', u'صى'), - (0xFD06, 'M', u'صي'), - ] - -def _seg_46(): - return [ - (0xFD07, 'M', u'ضى'), - (0xFD08, 'M', u'ضي'), - (0xFD09, 'M', u'شج'), - (0xFD0A, 'M', u'شح'), - (0xFD0B, 'M', u'شخ'), - (0xFD0C, 'M', u'شم'), - (0xFD0D, 'M', u'شر'), - (0xFD0E, 'M', u'سر'), - (0xFD0F, 'M', u'صر'), - (0xFD10, 'M', u'ضر'), - (0xFD11, 'M', u'طى'), - (0xFD12, 'M', u'طي'), - (0xFD13, 'M', u'عى'), - (0xFD14, 'M', u'عي'), - (0xFD15, 'M', u'غى'), - (0xFD16, 'M', u'غي'), - (0xFD17, 'M', u'سى'), - (0xFD18, 'M', u'سي'), - (0xFD19, 'M', u'شى'), - (0xFD1A, 'M', u'شي'), - (0xFD1B, 'M', u'حى'), - (0xFD1C, 'M', u'حي'), - (0xFD1D, 'M', u'جى'), - (0xFD1E, 'M', u'جي'), - (0xFD1F, 'M', u'خى'), - (0xFD20, 'M', u'خي'), - (0xFD21, 'M', u'صى'), - (0xFD22, 'M', u'صي'), - (0xFD23, 'M', u'ضى'), - (0xFD24, 'M', u'ضي'), - (0xFD25, 'M', u'شج'), - (0xFD26, 'M', u'شح'), - (0xFD27, 'M', u'شخ'), - (0xFD28, 'M', u'شم'), - (0xFD29, 'M', u'شر'), - (0xFD2A, 'M', u'سر'), - (0xFD2B, 'M', u'صر'), - (0xFD2C, 'M', u'ضر'), - (0xFD2D, 'M', u'شج'), - (0xFD2E, 'M', u'شح'), - (0xFD2F, 'M', u'شخ'), - (0xFD30, 'M', u'شم'), - (0xFD31, 'M', u'سه'), - (0xFD32, 'M', u'شه'), - (0xFD33, 'M', u'طم'), - (0xFD34, 'M', u'سج'), - (0xFD35, 'M', u'سح'), - (0xFD36, 'M', u'سخ'), - (0xFD37, 'M', u'شج'), - (0xFD38, 'M', u'شح'), - (0xFD39, 'M', u'شخ'), - (0xFD3A, 'M', u'طم'), - (0xFD3B, 'M', u'ظم'), - (0xFD3C, 'M', u'اً'), - (0xFD3E, 'V'), - (0xFD40, 'X'), - (0xFD50, 'M', u'تجم'), - (0xFD51, 'M', u'تحج'), - (0xFD53, 'M', u'تحم'), - (0xFD54, 'M', u'تخم'), - (0xFD55, 'M', u'تمج'), - (0xFD56, 'M', u'تمح'), - (0xFD57, 'M', u'تمخ'), - (0xFD58, 'M', u'جمح'), - (0xFD5A, 'M', u'حمي'), - (0xFD5B, 'M', u'حمى'), - (0xFD5C, 'M', u'سحج'), - (0xFD5D, 'M', u'سجح'), - (0xFD5E, 'M', u'سجى'), - (0xFD5F, 'M', u'سمح'), - (0xFD61, 'M', u'سمج'), - (0xFD62, 'M', u'سمم'), - (0xFD64, 'M', u'صحح'), - (0xFD66, 'M', u'صمم'), - (0xFD67, 'M', u'شحم'), - (0xFD69, 'M', u'شجي'), - (0xFD6A, 'M', u'شمخ'), - (0xFD6C, 'M', u'شمم'), - (0xFD6E, 'M', u'ضحى'), - (0xFD6F, 'M', u'ضخم'), - (0xFD71, 'M', u'طمح'), - (0xFD73, 'M', u'طمم'), - (0xFD74, 'M', u'طمي'), - (0xFD75, 'M', u'عجم'), - (0xFD76, 'M', u'عمم'), - (0xFD78, 'M', u'عمى'), - (0xFD79, 'M', u'غمم'), - (0xFD7A, 'M', u'غمي'), - (0xFD7B, 'M', u'غمى'), - (0xFD7C, 'M', u'فخم'), - (0xFD7E, 'M', u'قمح'), - (0xFD7F, 'M', u'قمم'), - (0xFD80, 'M', u'لحم'), - (0xFD81, 'M', u'لحي'), - (0xFD82, 'M', u'لحى'), - (0xFD83, 'M', u'لجج'), - (0xFD85, 'M', u'لخم'), - (0xFD87, 'M', u'لمح'), - (0xFD89, 'M', u'محج'), - (0xFD8A, 'M', u'محم'), - ] - -def _seg_47(): - return [ - (0xFD8B, 'M', u'محي'), - (0xFD8C, 'M', u'مجح'), - (0xFD8D, 'M', u'مجم'), - (0xFD8E, 'M', u'مخج'), - (0xFD8F, 'M', u'مخم'), - (0xFD90, 'X'), - (0xFD92, 'M', u'مجخ'), - (0xFD93, 'M', u'همج'), - (0xFD94, 'M', u'همم'), - (0xFD95, 'M', u'نحم'), - (0xFD96, 'M', u'نحى'), - (0xFD97, 'M', u'نجم'), - (0xFD99, 'M', u'نجى'), - (0xFD9A, 'M', u'نمي'), - (0xFD9B, 'M', u'نمى'), - (0xFD9C, 'M', u'يمم'), - (0xFD9E, 'M', u'بخي'), - (0xFD9F, 'M', u'تجي'), - (0xFDA0, 'M', u'تجى'), - (0xFDA1, 'M', u'تخي'), - (0xFDA2, 'M', u'تخى'), - (0xFDA3, 'M', u'تمي'), - (0xFDA4, 'M', u'تمى'), - (0xFDA5, 'M', u'جمي'), - (0xFDA6, 'M', u'جحى'), - (0xFDA7, 'M', u'جمى'), - (0xFDA8, 'M', u'سخى'), - (0xFDA9, 'M', u'صحي'), - (0xFDAA, 'M', u'شحي'), - (0xFDAB, 'M', u'ضحي'), - (0xFDAC, 'M', u'لجي'), - (0xFDAD, 'M', u'لمي'), - (0xFDAE, 'M', u'يحي'), - (0xFDAF, 'M', u'يجي'), - (0xFDB0, 'M', u'يمي'), - (0xFDB1, 'M', u'ممي'), - (0xFDB2, 'M', u'قمي'), - (0xFDB3, 'M', u'نحي'), - (0xFDB4, 'M', u'قمح'), - (0xFDB5, 'M', u'لحم'), - (0xFDB6, 'M', u'عمي'), - (0xFDB7, 'M', u'كمي'), - (0xFDB8, 'M', u'نجح'), - (0xFDB9, 'M', u'مخي'), - (0xFDBA, 'M', u'لجم'), - (0xFDBB, 'M', u'كمم'), - (0xFDBC, 'M', u'لجم'), - (0xFDBD, 'M', u'نجح'), - (0xFDBE, 'M', u'جحي'), - (0xFDBF, 'M', u'حجي'), - (0xFDC0, 'M', u'مجي'), - (0xFDC1, 'M', u'فمي'), - (0xFDC2, 'M', u'بحي'), - (0xFDC3, 'M', u'كمم'), - (0xFDC4, 'M', u'عجم'), - (0xFDC5, 'M', u'صمم'), - (0xFDC6, 'M', u'سخي'), - (0xFDC7, 'M', u'نجي'), - (0xFDC8, 'X'), - (0xFDF0, 'M', u'صلے'), - (0xFDF1, 'M', u'قلے'), - (0xFDF2, 'M', u'الله'), - (0xFDF3, 'M', u'اكبر'), - (0xFDF4, 'M', u'محمد'), - (0xFDF5, 'M', u'صلعم'), - (0xFDF6, 'M', u'رسول'), - (0xFDF7, 'M', u'عليه'), - (0xFDF8, 'M', u'وسلم'), - (0xFDF9, 'M', u'صلى'), - (0xFDFA, '3', u'صلى الله عليه وسلم'), - (0xFDFB, '3', u'جل جلاله'), - (0xFDFC, 'M', u'ریال'), - (0xFDFD, 'V'), - (0xFDFE, 'X'), - (0xFE00, 'I'), - (0xFE10, '3', u','), - (0xFE11, 'M', u'、'), - (0xFE12, 'X'), - (0xFE13, '3', u':'), - (0xFE14, '3', u';'), - (0xFE15, '3', u'!'), - (0xFE16, '3', u'?'), - (0xFE17, 'M', u'〖'), - (0xFE18, 'M', u'〗'), - (0xFE19, 'X'), - (0xFE20, 'V'), - (0xFE27, 'X'), - (0xFE31, 'M', u'—'), - (0xFE32, 'M', u'–'), - (0xFE33, '3', u'_'), - (0xFE35, '3', u'('), - (0xFE36, '3', u')'), - (0xFE37, '3', u'{'), - (0xFE38, '3', u'}'), - (0xFE39, 'M', u'〔'), - (0xFE3A, 'M', u'〕'), - (0xFE3B, 'M', u'【'), - (0xFE3C, 'M', u'】'), - (0xFE3D, 'M', u'《'), - (0xFE3E, 'M', u'》'), - ] - -def _seg_48(): - return [ - (0xFE3F, 'M', u'〈'), - (0xFE40, 'M', u'〉'), - (0xFE41, 'M', u'「'), - (0xFE42, 'M', u'」'), - (0xFE43, 'M', u'『'), - (0xFE44, 'M', u'』'), - (0xFE45, 'V'), - (0xFE47, '3', u'['), - (0xFE48, '3', u']'), - (0xFE49, '3', u' ̅'), - (0xFE4D, '3', u'_'), - (0xFE50, '3', u','), - (0xFE51, 'M', u'、'), - (0xFE52, 'X'), - (0xFE54, '3', u';'), - (0xFE55, '3', u':'), - (0xFE56, '3', u'?'), - (0xFE57, '3', u'!'), - (0xFE58, 'M', u'—'), - (0xFE59, '3', u'('), - (0xFE5A, '3', u')'), - (0xFE5B, '3', u'{'), - (0xFE5C, '3', u'}'), - (0xFE5D, 'M', u'〔'), - (0xFE5E, 'M', u'〕'), - (0xFE5F, '3', u'#'), - (0xFE60, '3', u'&'), - (0xFE61, '3', u'*'), - (0xFE62, '3', u'+'), - (0xFE63, 'M', u'-'), - (0xFE64, '3', u'<'), - (0xFE65, '3', u'>'), - (0xFE66, '3', u'='), - (0xFE67, 'X'), - (0xFE68, '3', u'\\'), - (0xFE69, '3', u'$'), - (0xFE6A, '3', u'%'), - (0xFE6B, '3', u'@'), - (0xFE6C, 'X'), - (0xFE70, '3', u' ً'), - (0xFE71, 'M', u'ـً'), - (0xFE72, '3', u' ٌ'), - (0xFE73, 'V'), - (0xFE74, '3', u' ٍ'), - (0xFE75, 'X'), - (0xFE76, '3', u' َ'), - (0xFE77, 'M', u'ـَ'), - (0xFE78, '3', u' ُ'), - (0xFE79, 'M', u'ـُ'), - (0xFE7A, '3', u' ِ'), - (0xFE7B, 'M', u'ـِ'), - (0xFE7C, '3', u' ّ'), - (0xFE7D, 'M', u'ـّ'), - (0xFE7E, '3', u' ْ'), - (0xFE7F, 'M', u'ـْ'), - (0xFE80, 'M', u'ء'), - (0xFE81, 'M', u'آ'), - (0xFE83, 'M', u'أ'), - (0xFE85, 'M', u'ؤ'), - (0xFE87, 'M', u'إ'), - (0xFE89, 'M', u'ئ'), - (0xFE8D, 'M', u'ا'), - (0xFE8F, 'M', u'ب'), - (0xFE93, 'M', u'ة'), - (0xFE95, 'M', u'ت'), - (0xFE99, 'M', u'ث'), - (0xFE9D, 'M', u'ج'), - (0xFEA1, 'M', u'ح'), - (0xFEA5, 'M', u'خ'), - (0xFEA9, 'M', u'د'), - (0xFEAB, 'M', u'ذ'), - (0xFEAD, 'M', u'ر'), - (0xFEAF, 'M', u'ز'), - (0xFEB1, 'M', u'س'), - (0xFEB5, 'M', u'ش'), - (0xFEB9, 'M', u'ص'), - (0xFEBD, 'M', u'ض'), - (0xFEC1, 'M', u'ط'), - (0xFEC5, 'M', u'ظ'), - (0xFEC9, 'M', u'ع'), - (0xFECD, 'M', u'غ'), - (0xFED1, 'M', u'ف'), - (0xFED5, 'M', u'ق'), - (0xFED9, 'M', u'ك'), - (0xFEDD, 'M', u'ل'), - (0xFEE1, 'M', u'م'), - (0xFEE5, 'M', u'ن'), - (0xFEE9, 'M', u'ه'), - (0xFEED, 'M', u'و'), - (0xFEEF, 'M', u'ى'), - (0xFEF1, 'M', u'ي'), - (0xFEF5, 'M', u'لآ'), - (0xFEF7, 'M', u'لأ'), - (0xFEF9, 'M', u'لإ'), - (0xFEFB, 'M', u'لا'), - (0xFEFD, 'X'), - (0xFEFF, 'I'), - (0xFF00, 'X'), - (0xFF01, '3', u'!'), - (0xFF02, '3', u'"'), - ] - -def _seg_49(): - return [ - (0xFF03, '3', u'#'), - (0xFF04, '3', u'$'), - (0xFF05, '3', u'%'), - (0xFF06, '3', u'&'), - (0xFF07, '3', u'\''), - (0xFF08, '3', u'('), - (0xFF09, '3', u')'), - (0xFF0A, '3', u'*'), - (0xFF0B, '3', u'+'), - (0xFF0C, '3', u','), - (0xFF0D, 'M', u'-'), - (0xFF0E, 'M', u'.'), - (0xFF0F, '3', u'/'), - (0xFF10, 'M', u'0'), - (0xFF11, 'M', u'1'), - (0xFF12, 'M', u'2'), - (0xFF13, 'M', u'3'), - (0xFF14, 'M', u'4'), - (0xFF15, 'M', u'5'), - (0xFF16, 'M', u'6'), - (0xFF17, 'M', u'7'), - (0xFF18, 'M', u'8'), - (0xFF19, 'M', u'9'), - (0xFF1A, '3', u':'), - (0xFF1B, '3', u';'), - (0xFF1C, '3', u'<'), - (0xFF1D, '3', u'='), - (0xFF1E, '3', u'>'), - (0xFF1F, '3', u'?'), - (0xFF20, '3', u'@'), - (0xFF21, 'M', u'a'), - (0xFF22, 'M', u'b'), - (0xFF23, 'M', u'c'), - (0xFF24, 'M', u'd'), - (0xFF25, 'M', u'e'), - (0xFF26, 'M', u'f'), - (0xFF27, 'M', u'g'), - (0xFF28, 'M', u'h'), - (0xFF29, 'M', u'i'), - (0xFF2A, 'M', u'j'), - (0xFF2B, 'M', u'k'), - (0xFF2C, 'M', u'l'), - (0xFF2D, 'M', u'm'), - (0xFF2E, 'M', u'n'), - (0xFF2F, 'M', u'o'), - (0xFF30, 'M', u'p'), - (0xFF31, 'M', u'q'), - (0xFF32, 'M', u'r'), - (0xFF33, 'M', u's'), - (0xFF34, 'M', u't'), - (0xFF35, 'M', u'u'), - (0xFF36, 'M', u'v'), - (0xFF37, 'M', u'w'), - (0xFF38, 'M', u'x'), - (0xFF39, 'M', u'y'), - (0xFF3A, 'M', u'z'), - (0xFF3B, '3', u'['), - (0xFF3C, '3', u'\\'), - (0xFF3D, '3', u']'), - (0xFF3E, '3', u'^'), - (0xFF3F, '3', u'_'), - (0xFF40, '3', u'`'), - (0xFF41, 'M', u'a'), - (0xFF42, 'M', u'b'), - (0xFF43, 'M', u'c'), - (0xFF44, 'M', u'd'), - (0xFF45, 'M', u'e'), - (0xFF46, 'M', u'f'), - (0xFF47, 'M', u'g'), - (0xFF48, 'M', u'h'), - (0xFF49, 'M', u'i'), - (0xFF4A, 'M', u'j'), - (0xFF4B, 'M', u'k'), - (0xFF4C, 'M', u'l'), - (0xFF4D, 'M', u'm'), - (0xFF4E, 'M', u'n'), - (0xFF4F, 'M', u'o'), - (0xFF50, 'M', u'p'), - (0xFF51, 'M', u'q'), - (0xFF52, 'M', u'r'), - (0xFF53, 'M', u's'), - (0xFF54, 'M', u't'), - (0xFF55, 'M', u'u'), - (0xFF56, 'M', u'v'), - (0xFF57, 'M', u'w'), - (0xFF58, 'M', u'x'), - (0xFF59, 'M', u'y'), - (0xFF5A, 'M', u'z'), - (0xFF5B, '3', u'{'), - (0xFF5C, '3', u'|'), - (0xFF5D, '3', u'}'), - (0xFF5E, '3', u'~'), - (0xFF5F, 'M', u'⦅'), - (0xFF60, 'M', u'⦆'), - (0xFF61, 'M', u'.'), - (0xFF62, 'M', u'「'), - (0xFF63, 'M', u'」'), - (0xFF64, 'M', u'、'), - (0xFF65, 'M', u'・'), - (0xFF66, 'M', u'ヲ'), - ] - -def _seg_50(): - return [ - (0xFF67, 'M', u'ァ'), - (0xFF68, 'M', u'ィ'), - (0xFF69, 'M', u'ゥ'), - (0xFF6A, 'M', u'ェ'), - (0xFF6B, 'M', u'ォ'), - (0xFF6C, 'M', u'ャ'), - (0xFF6D, 'M', u'ュ'), - (0xFF6E, 'M', u'ョ'), - (0xFF6F, 'M', u'ッ'), - (0xFF70, 'M', u'ー'), - (0xFF71, 'M', u'ア'), - (0xFF72, 'M', u'イ'), - (0xFF73, 'M', u'ウ'), - (0xFF74, 'M', u'エ'), - (0xFF75, 'M', u'オ'), - (0xFF76, 'M', u'カ'), - (0xFF77, 'M', u'キ'), - (0xFF78, 'M', u'ク'), - (0xFF79, 'M', u'ケ'), - (0xFF7A, 'M', u'コ'), - (0xFF7B, 'M', u'サ'), - (0xFF7C, 'M', u'シ'), - (0xFF7D, 'M', u'ス'), - (0xFF7E, 'M', u'セ'), - (0xFF7F, 'M', u'ソ'), - (0xFF80, 'M', u'タ'), - (0xFF81, 'M', u'チ'), - (0xFF82, 'M', u'ツ'), - (0xFF83, 'M', u'テ'), - (0xFF84, 'M', u'ト'), - (0xFF85, 'M', u'ナ'), - (0xFF86, 'M', u'ニ'), - (0xFF87, 'M', u'ヌ'), - (0xFF88, 'M', u'ネ'), - (0xFF89, 'M', u'ノ'), - (0xFF8A, 'M', u'ハ'), - (0xFF8B, 'M', u'ヒ'), - (0xFF8C, 'M', u'フ'), - (0xFF8D, 'M', u'ヘ'), - (0xFF8E, 'M', u'ホ'), - (0xFF8F, 'M', u'マ'), - (0xFF90, 'M', u'ミ'), - (0xFF91, 'M', u'ム'), - (0xFF92, 'M', u'メ'), - (0xFF93, 'M', u'モ'), - (0xFF94, 'M', u'ヤ'), - (0xFF95, 'M', u'ユ'), - (0xFF96, 'M', u'ヨ'), - (0xFF97, 'M', u'ラ'), - (0xFF98, 'M', u'リ'), - (0xFF99, 'M', u'ル'), - (0xFF9A, 'M', u'レ'), - (0xFF9B, 'M', u'ロ'), - (0xFF9C, 'M', u'ワ'), - (0xFF9D, 'M', u'ン'), - (0xFF9E, 'M', u'゙'), - (0xFF9F, 'M', u'゚'), - (0xFFA0, 'X'), - (0xFFA1, 'M', u'ᄀ'), - (0xFFA2, 'M', u'ᄁ'), - (0xFFA3, 'M', u'ᆪ'), - (0xFFA4, 'M', u'ᄂ'), - (0xFFA5, 'M', u'ᆬ'), - (0xFFA6, 'M', u'ᆭ'), - (0xFFA7, 'M', u'ᄃ'), - (0xFFA8, 'M', u'ᄄ'), - (0xFFA9, 'M', u'ᄅ'), - (0xFFAA, 'M', u'ᆰ'), - (0xFFAB, 'M', u'ᆱ'), - (0xFFAC, 'M', u'ᆲ'), - (0xFFAD, 'M', u'ᆳ'), - (0xFFAE, 'M', u'ᆴ'), - (0xFFAF, 'M', u'ᆵ'), - (0xFFB0, 'M', u'ᄚ'), - (0xFFB1, 'M', u'ᄆ'), - (0xFFB2, 'M', u'ᄇ'), - (0xFFB3, 'M', u'ᄈ'), - (0xFFB4, 'M', u'ᄡ'), - (0xFFB5, 'M', u'ᄉ'), - (0xFFB6, 'M', u'ᄊ'), - (0xFFB7, 'M', u'ᄋ'), - (0xFFB8, 'M', u'ᄌ'), - (0xFFB9, 'M', u'ᄍ'), - (0xFFBA, 'M', u'ᄎ'), - (0xFFBB, 'M', u'ᄏ'), - (0xFFBC, 'M', u'ᄐ'), - (0xFFBD, 'M', u'ᄑ'), - (0xFFBE, 'M', u'ᄒ'), - (0xFFBF, 'X'), - (0xFFC2, 'M', u'ᅡ'), - (0xFFC3, 'M', u'ᅢ'), - (0xFFC4, 'M', u'ᅣ'), - (0xFFC5, 'M', u'ᅤ'), - (0xFFC6, 'M', u'ᅥ'), - (0xFFC7, 'M', u'ᅦ'), - (0xFFC8, 'X'), - (0xFFCA, 'M', u'ᅧ'), - (0xFFCB, 'M', u'ᅨ'), - (0xFFCC, 'M', u'ᅩ'), - (0xFFCD, 'M', u'ᅪ'), - ] - -def _seg_51(): - return [ - (0xFFCE, 'M', u'ᅫ'), - (0xFFCF, 'M', u'ᅬ'), - (0xFFD0, 'X'), - (0xFFD2, 'M', u'ᅭ'), - (0xFFD3, 'M', u'ᅮ'), - (0xFFD4, 'M', u'ᅯ'), - (0xFFD5, 'M', u'ᅰ'), - (0xFFD6, 'M', u'ᅱ'), - (0xFFD7, 'M', u'ᅲ'), - (0xFFD8, 'X'), - (0xFFDA, 'M', u'ᅳ'), - (0xFFDB, 'M', u'ᅴ'), - (0xFFDC, 'M', u'ᅵ'), - (0xFFDD, 'X'), - (0xFFE0, 'M', u'¢'), - (0xFFE1, 'M', u'£'), - (0xFFE2, 'M', u'¬'), - (0xFFE3, '3', u' ̄'), - (0xFFE4, 'M', u'¦'), - (0xFFE5, 'M', u'¥'), - (0xFFE6, 'M', u'₩'), - (0xFFE7, 'X'), - (0xFFE8, 'M', u'│'), - (0xFFE9, 'M', u'←'), - (0xFFEA, 'M', u'↑'), - (0xFFEB, 'M', u'→'), - (0xFFEC, 'M', u'↓'), - (0xFFED, 'M', u'■'), - (0xFFEE, 'M', u'○'), - (0xFFEF, 'X'), - (0x10000, 'V'), - (0x1000C, 'X'), - (0x1000D, 'V'), - (0x10027, 'X'), - (0x10028, 'V'), - (0x1003B, 'X'), - (0x1003C, 'V'), - (0x1003E, 'X'), - (0x1003F, 'V'), - (0x1004E, 'X'), - (0x10050, 'V'), - (0x1005E, 'X'), - (0x10080, 'V'), - (0x100FB, 'X'), - (0x10100, 'V'), - (0x10103, 'X'), - (0x10107, 'V'), - (0x10134, 'X'), - (0x10137, 'V'), - (0x1018B, 'X'), - (0x10190, 'V'), - (0x1019C, 'X'), - (0x101D0, 'V'), - (0x101FE, 'X'), - (0x10280, 'V'), - (0x1029D, 'X'), - (0x102A0, 'V'), - (0x102D1, 'X'), - (0x10300, 'V'), - (0x1031F, 'X'), - (0x10320, 'V'), - (0x10324, 'X'), - (0x10330, 'V'), - (0x1034B, 'X'), - (0x10380, 'V'), - (0x1039E, 'X'), - (0x1039F, 'V'), - (0x103C4, 'X'), - (0x103C8, 'V'), - (0x103D6, 'X'), - (0x10400, 'M', u'𐐨'), - (0x10401, 'M', u'𐐩'), - (0x10402, 'M', u'𐐪'), - (0x10403, 'M', u'𐐫'), - (0x10404, 'M', u'𐐬'), - (0x10405, 'M', u'𐐭'), - (0x10406, 'M', u'𐐮'), - (0x10407, 'M', u'𐐯'), - (0x10408, 'M', u'𐐰'), - (0x10409, 'M', u'𐐱'), - (0x1040A, 'M', u'𐐲'), - (0x1040B, 'M', u'𐐳'), - (0x1040C, 'M', u'𐐴'), - (0x1040D, 'M', u'𐐵'), - (0x1040E, 'M', u'𐐶'), - (0x1040F, 'M', u'𐐷'), - (0x10410, 'M', u'𐐸'), - (0x10411, 'M', u'𐐹'), - (0x10412, 'M', u'𐐺'), - (0x10413, 'M', u'𐐻'), - (0x10414, 'M', u'𐐼'), - (0x10415, 'M', u'𐐽'), - (0x10416, 'M', u'𐐾'), - (0x10417, 'M', u'𐐿'), - (0x10418, 'M', u'𐑀'), - (0x10419, 'M', u'𐑁'), - (0x1041A, 'M', u'𐑂'), - (0x1041B, 'M', u'𐑃'), - (0x1041C, 'M', u'𐑄'), - (0x1041D, 'M', u'𐑅'), - ] - -def _seg_52(): - return [ - (0x1041E, 'M', u'𐑆'), - (0x1041F, 'M', u'𐑇'), - (0x10420, 'M', u'𐑈'), - (0x10421, 'M', u'𐑉'), - (0x10422, 'M', u'𐑊'), - (0x10423, 'M', u'𐑋'), - (0x10424, 'M', u'𐑌'), - (0x10425, 'M', u'𐑍'), - (0x10426, 'M', u'𐑎'), - (0x10427, 'M', u'𐑏'), - (0x10428, 'V'), - (0x1049E, 'X'), - (0x104A0, 'V'), - (0x104AA, 'X'), - (0x10800, 'V'), - (0x10806, 'X'), - (0x10808, 'V'), - (0x10809, 'X'), - (0x1080A, 'V'), - (0x10836, 'X'), - (0x10837, 'V'), - (0x10839, 'X'), - (0x1083C, 'V'), - (0x1083D, 'X'), - (0x1083F, 'V'), - (0x10856, 'X'), - (0x10857, 'V'), - (0x10860, 'X'), - (0x10900, 'V'), - (0x1091C, 'X'), - (0x1091F, 'V'), - (0x1093A, 'X'), - (0x1093F, 'V'), - (0x10940, 'X'), - (0x10980, 'V'), - (0x109B8, 'X'), - (0x109BE, 'V'), - (0x109C0, 'X'), - (0x10A00, 'V'), - (0x10A04, 'X'), - (0x10A05, 'V'), - (0x10A07, 'X'), - (0x10A0C, 'V'), - (0x10A14, 'X'), - (0x10A15, 'V'), - (0x10A18, 'X'), - (0x10A19, 'V'), - (0x10A34, 'X'), - (0x10A38, 'V'), - (0x10A3B, 'X'), - (0x10A3F, 'V'), - (0x10A48, 'X'), - (0x10A50, 'V'), - (0x10A59, 'X'), - (0x10A60, 'V'), - (0x10A80, 'X'), - (0x10B00, 'V'), - (0x10B36, 'X'), - (0x10B39, 'V'), - (0x10B56, 'X'), - (0x10B58, 'V'), - (0x10B73, 'X'), - (0x10B78, 'V'), - (0x10B80, 'X'), - (0x10C00, 'V'), - (0x10C49, 'X'), - (0x10E60, 'V'), - (0x10E7F, 'X'), - (0x11000, 'V'), - (0x1104E, 'X'), - (0x11052, 'V'), - (0x11070, 'X'), - (0x11080, 'V'), - (0x110BD, 'X'), - (0x110BE, 'V'), - (0x110C2, 'X'), - (0x110D0, 'V'), - (0x110E9, 'X'), - (0x110F0, 'V'), - (0x110FA, 'X'), - (0x11100, 'V'), - (0x11135, 'X'), - (0x11136, 'V'), - (0x11144, 'X'), - (0x11180, 'V'), - (0x111C9, 'X'), - (0x111D0, 'V'), - (0x111DA, 'X'), - (0x11680, 'V'), - (0x116B8, 'X'), - (0x116C0, 'V'), - (0x116CA, 'X'), - (0x12000, 'V'), - (0x1236F, 'X'), - (0x12400, 'V'), - (0x12463, 'X'), - (0x12470, 'V'), - (0x12474, 'X'), - (0x13000, 'V'), - (0x1342F, 'X'), - ] - -def _seg_53(): - return [ - (0x16800, 'V'), - (0x16A39, 'X'), - (0x16F00, 'V'), - (0x16F45, 'X'), - (0x16F50, 'V'), - (0x16F7F, 'X'), - (0x16F8F, 'V'), - (0x16FA0, 'X'), - (0x1B000, 'V'), - (0x1B002, 'X'), - (0x1D000, 'V'), - (0x1D0F6, 'X'), - (0x1D100, 'V'), - (0x1D127, 'X'), - (0x1D129, 'V'), - (0x1D15E, 'M', u'𝅗𝅥'), - (0x1D15F, 'M', u'𝅘𝅥'), - (0x1D160, 'M', u'𝅘𝅥𝅮'), - (0x1D161, 'M', u'𝅘𝅥𝅯'), - (0x1D162, 'M', u'𝅘𝅥𝅰'), - (0x1D163, 'M', u'𝅘𝅥𝅱'), - (0x1D164, 'M', u'𝅘𝅥𝅲'), - (0x1D165, 'V'), - (0x1D173, 'X'), - (0x1D17B, 'V'), - (0x1D1BB, 'M', u'𝆹𝅥'), - (0x1D1BC, 'M', u'𝆺𝅥'), - (0x1D1BD, 'M', u'𝆹𝅥𝅮'), - (0x1D1BE, 'M', u'𝆺𝅥𝅮'), - (0x1D1BF, 'M', u'𝆹𝅥𝅯'), - (0x1D1C0, 'M', u'𝆺𝅥𝅯'), - (0x1D1C1, 'V'), - (0x1D1DE, 'X'), - (0x1D200, 'V'), - (0x1D246, 'X'), - (0x1D300, 'V'), - (0x1D357, 'X'), - (0x1D360, 'V'), - (0x1D372, 'X'), - (0x1D400, 'M', u'a'), - (0x1D401, 'M', u'b'), - (0x1D402, 'M', u'c'), - (0x1D403, 'M', u'd'), - (0x1D404, 'M', u'e'), - (0x1D405, 'M', u'f'), - (0x1D406, 'M', u'g'), - (0x1D407, 'M', u'h'), - (0x1D408, 'M', u'i'), - (0x1D409, 'M', u'j'), - (0x1D40A, 'M', u'k'), - (0x1D40B, 'M', u'l'), - (0x1D40C, 'M', u'm'), - (0x1D40D, 'M', u'n'), - (0x1D40E, 'M', u'o'), - (0x1D40F, 'M', u'p'), - (0x1D410, 'M', u'q'), - (0x1D411, 'M', u'r'), - (0x1D412, 'M', u's'), - (0x1D413, 'M', u't'), - (0x1D414, 'M', u'u'), - (0x1D415, 'M', u'v'), - (0x1D416, 'M', u'w'), - (0x1D417, 'M', u'x'), - (0x1D418, 'M', u'y'), - (0x1D419, 'M', u'z'), - (0x1D41A, 'M', u'a'), - (0x1D41B, 'M', u'b'), - (0x1D41C, 'M', u'c'), - (0x1D41D, 'M', u'd'), - (0x1D41E, 'M', u'e'), - (0x1D41F, 'M', u'f'), - (0x1D420, 'M', u'g'), - (0x1D421, 'M', u'h'), - (0x1D422, 'M', u'i'), - (0x1D423, 'M', u'j'), - (0x1D424, 'M', u'k'), - (0x1D425, 'M', u'l'), - (0x1D426, 'M', u'm'), - (0x1D427, 'M', u'n'), - (0x1D428, 'M', u'o'), - (0x1D429, 'M', u'p'), - (0x1D42A, 'M', u'q'), - (0x1D42B, 'M', u'r'), - (0x1D42C, 'M', u's'), - (0x1D42D, 'M', u't'), - (0x1D42E, 'M', u'u'), - (0x1D42F, 'M', u'v'), - (0x1D430, 'M', u'w'), - (0x1D431, 'M', u'x'), - (0x1D432, 'M', u'y'), - (0x1D433, 'M', u'z'), - (0x1D434, 'M', u'a'), - (0x1D435, 'M', u'b'), - (0x1D436, 'M', u'c'), - (0x1D437, 'M', u'd'), - (0x1D438, 'M', u'e'), - (0x1D439, 'M', u'f'), - (0x1D43A, 'M', u'g'), - (0x1D43B, 'M', u'h'), - (0x1D43C, 'M', u'i'), - ] - -def _seg_54(): - return [ - (0x1D43D, 'M', u'j'), - (0x1D43E, 'M', u'k'), - (0x1D43F, 'M', u'l'), - (0x1D440, 'M', u'm'), - (0x1D441, 'M', u'n'), - (0x1D442, 'M', u'o'), - (0x1D443, 'M', u'p'), - (0x1D444, 'M', u'q'), - (0x1D445, 'M', u'r'), - (0x1D446, 'M', u's'), - (0x1D447, 'M', u't'), - (0x1D448, 'M', u'u'), - (0x1D449, 'M', u'v'), - (0x1D44A, 'M', u'w'), - (0x1D44B, 'M', u'x'), - (0x1D44C, 'M', u'y'), - (0x1D44D, 'M', u'z'), - (0x1D44E, 'M', u'a'), - (0x1D44F, 'M', u'b'), - (0x1D450, 'M', u'c'), - (0x1D451, 'M', u'd'), - (0x1D452, 'M', u'e'), - (0x1D453, 'M', u'f'), - (0x1D454, 'M', u'g'), - (0x1D455, 'X'), - (0x1D456, 'M', u'i'), - (0x1D457, 'M', u'j'), - (0x1D458, 'M', u'k'), - (0x1D459, 'M', u'l'), - (0x1D45A, 'M', u'm'), - (0x1D45B, 'M', u'n'), - (0x1D45C, 'M', u'o'), - (0x1D45D, 'M', u'p'), - (0x1D45E, 'M', u'q'), - (0x1D45F, 'M', u'r'), - (0x1D460, 'M', u's'), - (0x1D461, 'M', u't'), - (0x1D462, 'M', u'u'), - (0x1D463, 'M', u'v'), - (0x1D464, 'M', u'w'), - (0x1D465, 'M', u'x'), - (0x1D466, 'M', u'y'), - (0x1D467, 'M', u'z'), - (0x1D468, 'M', u'a'), - (0x1D469, 'M', u'b'), - (0x1D46A, 'M', u'c'), - (0x1D46B, 'M', u'd'), - (0x1D46C, 'M', u'e'), - (0x1D46D, 'M', u'f'), - (0x1D46E, 'M', u'g'), - (0x1D46F, 'M', u'h'), - (0x1D470, 'M', u'i'), - (0x1D471, 'M', u'j'), - (0x1D472, 'M', u'k'), - (0x1D473, 'M', u'l'), - (0x1D474, 'M', u'm'), - (0x1D475, 'M', u'n'), - (0x1D476, 'M', u'o'), - (0x1D477, 'M', u'p'), - (0x1D478, 'M', u'q'), - (0x1D479, 'M', u'r'), - (0x1D47A, 'M', u's'), - (0x1D47B, 'M', u't'), - (0x1D47C, 'M', u'u'), - (0x1D47D, 'M', u'v'), - (0x1D47E, 'M', u'w'), - (0x1D47F, 'M', u'x'), - (0x1D480, 'M', u'y'), - (0x1D481, 'M', u'z'), - (0x1D482, 'M', u'a'), - (0x1D483, 'M', u'b'), - (0x1D484, 'M', u'c'), - (0x1D485, 'M', u'd'), - (0x1D486, 'M', u'e'), - (0x1D487, 'M', u'f'), - (0x1D488, 'M', u'g'), - (0x1D489, 'M', u'h'), - (0x1D48A, 'M', u'i'), - (0x1D48B, 'M', u'j'), - (0x1D48C, 'M', u'k'), - (0x1D48D, 'M', u'l'), - (0x1D48E, 'M', u'm'), - (0x1D48F, 'M', u'n'), - (0x1D490, 'M', u'o'), - (0x1D491, 'M', u'p'), - (0x1D492, 'M', u'q'), - (0x1D493, 'M', u'r'), - (0x1D494, 'M', u's'), - (0x1D495, 'M', u't'), - (0x1D496, 'M', u'u'), - (0x1D497, 'M', u'v'), - (0x1D498, 'M', u'w'), - (0x1D499, 'M', u'x'), - (0x1D49A, 'M', u'y'), - (0x1D49B, 'M', u'z'), - (0x1D49C, 'M', u'a'), - (0x1D49D, 'X'), - (0x1D49E, 'M', u'c'), - (0x1D49F, 'M', u'd'), - (0x1D4A0, 'X'), - ] - -def _seg_55(): - return [ - (0x1D4A2, 'M', u'g'), - (0x1D4A3, 'X'), - (0x1D4A5, 'M', u'j'), - (0x1D4A6, 'M', u'k'), - (0x1D4A7, 'X'), - (0x1D4A9, 'M', u'n'), - (0x1D4AA, 'M', u'o'), - (0x1D4AB, 'M', u'p'), - (0x1D4AC, 'M', u'q'), - (0x1D4AD, 'X'), - (0x1D4AE, 'M', u's'), - (0x1D4AF, 'M', u't'), - (0x1D4B0, 'M', u'u'), - (0x1D4B1, 'M', u'v'), - (0x1D4B2, 'M', u'w'), - (0x1D4B3, 'M', u'x'), - (0x1D4B4, 'M', u'y'), - (0x1D4B5, 'M', u'z'), - (0x1D4B6, 'M', u'a'), - (0x1D4B7, 'M', u'b'), - (0x1D4B8, 'M', u'c'), - (0x1D4B9, 'M', u'd'), - (0x1D4BA, 'X'), - (0x1D4BB, 'M', u'f'), - (0x1D4BC, 'X'), - (0x1D4BD, 'M', u'h'), - (0x1D4BE, 'M', u'i'), - (0x1D4BF, 'M', u'j'), - (0x1D4C0, 'M', u'k'), - (0x1D4C1, 'M', u'l'), - (0x1D4C2, 'M', u'm'), - (0x1D4C3, 'M', u'n'), - (0x1D4C4, 'X'), - (0x1D4C5, 'M', u'p'), - (0x1D4C6, 'M', u'q'), - (0x1D4C7, 'M', u'r'), - (0x1D4C8, 'M', u's'), - (0x1D4C9, 'M', u't'), - (0x1D4CA, 'M', u'u'), - (0x1D4CB, 'M', u'v'), - (0x1D4CC, 'M', u'w'), - (0x1D4CD, 'M', u'x'), - (0x1D4CE, 'M', u'y'), - (0x1D4CF, 'M', u'z'), - (0x1D4D0, 'M', u'a'), - (0x1D4D1, 'M', u'b'), - (0x1D4D2, 'M', u'c'), - (0x1D4D3, 'M', u'd'), - (0x1D4D4, 'M', u'e'), - (0x1D4D5, 'M', u'f'), - (0x1D4D6, 'M', u'g'), - (0x1D4D7, 'M', u'h'), - (0x1D4D8, 'M', u'i'), - (0x1D4D9, 'M', u'j'), - (0x1D4DA, 'M', u'k'), - (0x1D4DB, 'M', u'l'), - (0x1D4DC, 'M', u'm'), - (0x1D4DD, 'M', u'n'), - (0x1D4DE, 'M', u'o'), - (0x1D4DF, 'M', u'p'), - (0x1D4E0, 'M', u'q'), - (0x1D4E1, 'M', u'r'), - (0x1D4E2, 'M', u's'), - (0x1D4E3, 'M', u't'), - (0x1D4E4, 'M', u'u'), - (0x1D4E5, 'M', u'v'), - (0x1D4E6, 'M', u'w'), - (0x1D4E7, 'M', u'x'), - (0x1D4E8, 'M', u'y'), - (0x1D4E9, 'M', u'z'), - (0x1D4EA, 'M', u'a'), - (0x1D4EB, 'M', u'b'), - (0x1D4EC, 'M', u'c'), - (0x1D4ED, 'M', u'd'), - (0x1D4EE, 'M', u'e'), - (0x1D4EF, 'M', u'f'), - (0x1D4F0, 'M', u'g'), - (0x1D4F1, 'M', u'h'), - (0x1D4F2, 'M', u'i'), - (0x1D4F3, 'M', u'j'), - (0x1D4F4, 'M', u'k'), - (0x1D4F5, 'M', u'l'), - (0x1D4F6, 'M', u'm'), - (0x1D4F7, 'M', u'n'), - (0x1D4F8, 'M', u'o'), - (0x1D4F9, 'M', u'p'), - (0x1D4FA, 'M', u'q'), - (0x1D4FB, 'M', u'r'), - (0x1D4FC, 'M', u's'), - (0x1D4FD, 'M', u't'), - (0x1D4FE, 'M', u'u'), - (0x1D4FF, 'M', u'v'), - (0x1D500, 'M', u'w'), - (0x1D501, 'M', u'x'), - (0x1D502, 'M', u'y'), - (0x1D503, 'M', u'z'), - (0x1D504, 'M', u'a'), - (0x1D505, 'M', u'b'), - (0x1D506, 'X'), - (0x1D507, 'M', u'd'), - ] - -def _seg_56(): - return [ - (0x1D508, 'M', u'e'), - (0x1D509, 'M', u'f'), - (0x1D50A, 'M', u'g'), - (0x1D50B, 'X'), - (0x1D50D, 'M', u'j'), - (0x1D50E, 'M', u'k'), - (0x1D50F, 'M', u'l'), - (0x1D510, 'M', u'm'), - (0x1D511, 'M', u'n'), - (0x1D512, 'M', u'o'), - (0x1D513, 'M', u'p'), - (0x1D514, 'M', u'q'), - (0x1D515, 'X'), - (0x1D516, 'M', u's'), - (0x1D517, 'M', u't'), - (0x1D518, 'M', u'u'), - (0x1D519, 'M', u'v'), - (0x1D51A, 'M', u'w'), - (0x1D51B, 'M', u'x'), - (0x1D51C, 'M', u'y'), - (0x1D51D, 'X'), - (0x1D51E, 'M', u'a'), - (0x1D51F, 'M', u'b'), - (0x1D520, 'M', u'c'), - (0x1D521, 'M', u'd'), - (0x1D522, 'M', u'e'), - (0x1D523, 'M', u'f'), - (0x1D524, 'M', u'g'), - (0x1D525, 'M', u'h'), - (0x1D526, 'M', u'i'), - (0x1D527, 'M', u'j'), - (0x1D528, 'M', u'k'), - (0x1D529, 'M', u'l'), - (0x1D52A, 'M', u'm'), - (0x1D52B, 'M', u'n'), - (0x1D52C, 'M', u'o'), - (0x1D52D, 'M', u'p'), - (0x1D52E, 'M', u'q'), - (0x1D52F, 'M', u'r'), - (0x1D530, 'M', u's'), - (0x1D531, 'M', u't'), - (0x1D532, 'M', u'u'), - (0x1D533, 'M', u'v'), - (0x1D534, 'M', u'w'), - (0x1D535, 'M', u'x'), - (0x1D536, 'M', u'y'), - (0x1D537, 'M', u'z'), - (0x1D538, 'M', u'a'), - (0x1D539, 'M', u'b'), - (0x1D53A, 'X'), - (0x1D53B, 'M', u'd'), - (0x1D53C, 'M', u'e'), - (0x1D53D, 'M', u'f'), - (0x1D53E, 'M', u'g'), - (0x1D53F, 'X'), - (0x1D540, 'M', u'i'), - (0x1D541, 'M', u'j'), - (0x1D542, 'M', u'k'), - (0x1D543, 'M', u'l'), - (0x1D544, 'M', u'm'), - (0x1D545, 'X'), - (0x1D546, 'M', u'o'), - (0x1D547, 'X'), - (0x1D54A, 'M', u's'), - (0x1D54B, 'M', u't'), - (0x1D54C, 'M', u'u'), - (0x1D54D, 'M', u'v'), - (0x1D54E, 'M', u'w'), - (0x1D54F, 'M', u'x'), - (0x1D550, 'M', u'y'), - (0x1D551, 'X'), - (0x1D552, 'M', u'a'), - (0x1D553, 'M', u'b'), - (0x1D554, 'M', u'c'), - (0x1D555, 'M', u'd'), - (0x1D556, 'M', u'e'), - (0x1D557, 'M', u'f'), - (0x1D558, 'M', u'g'), - (0x1D559, 'M', u'h'), - (0x1D55A, 'M', u'i'), - (0x1D55B, 'M', u'j'), - (0x1D55C, 'M', u'k'), - (0x1D55D, 'M', u'l'), - (0x1D55E, 'M', u'm'), - (0x1D55F, 'M', u'n'), - (0x1D560, 'M', u'o'), - (0x1D561, 'M', u'p'), - (0x1D562, 'M', u'q'), - (0x1D563, 'M', u'r'), - (0x1D564, 'M', u's'), - (0x1D565, 'M', u't'), - (0x1D566, 'M', u'u'), - (0x1D567, 'M', u'v'), - (0x1D568, 'M', u'w'), - (0x1D569, 'M', u'x'), - (0x1D56A, 'M', u'y'), - (0x1D56B, 'M', u'z'), - (0x1D56C, 'M', u'a'), - (0x1D56D, 'M', u'b'), - (0x1D56E, 'M', u'c'), - ] - -def _seg_57(): - return [ - (0x1D56F, 'M', u'd'), - (0x1D570, 'M', u'e'), - (0x1D571, 'M', u'f'), - (0x1D572, 'M', u'g'), - (0x1D573, 'M', u'h'), - (0x1D574, 'M', u'i'), - (0x1D575, 'M', u'j'), - (0x1D576, 'M', u'k'), - (0x1D577, 'M', u'l'), - (0x1D578, 'M', u'm'), - (0x1D579, 'M', u'n'), - (0x1D57A, 'M', u'o'), - (0x1D57B, 'M', u'p'), - (0x1D57C, 'M', u'q'), - (0x1D57D, 'M', u'r'), - (0x1D57E, 'M', u's'), - (0x1D57F, 'M', u't'), - (0x1D580, 'M', u'u'), - (0x1D581, 'M', u'v'), - (0x1D582, 'M', u'w'), - (0x1D583, 'M', u'x'), - (0x1D584, 'M', u'y'), - (0x1D585, 'M', u'z'), - (0x1D586, 'M', u'a'), - (0x1D587, 'M', u'b'), - (0x1D588, 'M', u'c'), - (0x1D589, 'M', u'd'), - (0x1D58A, 'M', u'e'), - (0x1D58B, 'M', u'f'), - (0x1D58C, 'M', u'g'), - (0x1D58D, 'M', u'h'), - (0x1D58E, 'M', u'i'), - (0x1D58F, 'M', u'j'), - (0x1D590, 'M', u'k'), - (0x1D591, 'M', u'l'), - (0x1D592, 'M', u'm'), - (0x1D593, 'M', u'n'), - (0x1D594, 'M', u'o'), - (0x1D595, 'M', u'p'), - (0x1D596, 'M', u'q'), - (0x1D597, 'M', u'r'), - (0x1D598, 'M', u's'), - (0x1D599, 'M', u't'), - (0x1D59A, 'M', u'u'), - (0x1D59B, 'M', u'v'), - (0x1D59C, 'M', u'w'), - (0x1D59D, 'M', u'x'), - (0x1D59E, 'M', u'y'), - (0x1D59F, 'M', u'z'), - (0x1D5A0, 'M', u'a'), - (0x1D5A1, 'M', u'b'), - (0x1D5A2, 'M', u'c'), - (0x1D5A3, 'M', u'd'), - (0x1D5A4, 'M', u'e'), - (0x1D5A5, 'M', u'f'), - (0x1D5A6, 'M', u'g'), - (0x1D5A7, 'M', u'h'), - (0x1D5A8, 'M', u'i'), - (0x1D5A9, 'M', u'j'), - (0x1D5AA, 'M', u'k'), - (0x1D5AB, 'M', u'l'), - (0x1D5AC, 'M', u'm'), - (0x1D5AD, 'M', u'n'), - (0x1D5AE, 'M', u'o'), - (0x1D5AF, 'M', u'p'), - (0x1D5B0, 'M', u'q'), - (0x1D5B1, 'M', u'r'), - (0x1D5B2, 'M', u's'), - (0x1D5B3, 'M', u't'), - (0x1D5B4, 'M', u'u'), - (0x1D5B5, 'M', u'v'), - (0x1D5B6, 'M', u'w'), - (0x1D5B7, 'M', u'x'), - (0x1D5B8, 'M', u'y'), - (0x1D5B9, 'M', u'z'), - (0x1D5BA, 'M', u'a'), - (0x1D5BB, 'M', u'b'), - (0x1D5BC, 'M', u'c'), - (0x1D5BD, 'M', u'd'), - (0x1D5BE, 'M', u'e'), - (0x1D5BF, 'M', u'f'), - (0x1D5C0, 'M', u'g'), - (0x1D5C1, 'M', u'h'), - (0x1D5C2, 'M', u'i'), - (0x1D5C3, 'M', u'j'), - (0x1D5C4, 'M', u'k'), - (0x1D5C5, 'M', u'l'), - (0x1D5C6, 'M', u'm'), - (0x1D5C7, 'M', u'n'), - (0x1D5C8, 'M', u'o'), - (0x1D5C9, 'M', u'p'), - (0x1D5CA, 'M', u'q'), - (0x1D5CB, 'M', u'r'), - (0x1D5CC, 'M', u's'), - (0x1D5CD, 'M', u't'), - (0x1D5CE, 'M', u'u'), - (0x1D5CF, 'M', u'v'), - (0x1D5D0, 'M', u'w'), - (0x1D5D1, 'M', u'x'), - (0x1D5D2, 'M', u'y'), - ] - -def _seg_58(): - return [ - (0x1D5D3, 'M', u'z'), - (0x1D5D4, 'M', u'a'), - (0x1D5D5, 'M', u'b'), - (0x1D5D6, 'M', u'c'), - (0x1D5D7, 'M', u'd'), - (0x1D5D8, 'M', u'e'), - (0x1D5D9, 'M', u'f'), - (0x1D5DA, 'M', u'g'), - (0x1D5DB, 'M', u'h'), - (0x1D5DC, 'M', u'i'), - (0x1D5DD, 'M', u'j'), - (0x1D5DE, 'M', u'k'), - (0x1D5DF, 'M', u'l'), - (0x1D5E0, 'M', u'm'), - (0x1D5E1, 'M', u'n'), - (0x1D5E2, 'M', u'o'), - (0x1D5E3, 'M', u'p'), - (0x1D5E4, 'M', u'q'), - (0x1D5E5, 'M', u'r'), - (0x1D5E6, 'M', u's'), - (0x1D5E7, 'M', u't'), - (0x1D5E8, 'M', u'u'), - (0x1D5E9, 'M', u'v'), - (0x1D5EA, 'M', u'w'), - (0x1D5EB, 'M', u'x'), - (0x1D5EC, 'M', u'y'), - (0x1D5ED, 'M', u'z'), - (0x1D5EE, 'M', u'a'), - (0x1D5EF, 'M', u'b'), - (0x1D5F0, 'M', u'c'), - (0x1D5F1, 'M', u'd'), - (0x1D5F2, 'M', u'e'), - (0x1D5F3, 'M', u'f'), - (0x1D5F4, 'M', u'g'), - (0x1D5F5, 'M', u'h'), - (0x1D5F6, 'M', u'i'), - (0x1D5F7, 'M', u'j'), - (0x1D5F8, 'M', u'k'), - (0x1D5F9, 'M', u'l'), - (0x1D5FA, 'M', u'm'), - (0x1D5FB, 'M', u'n'), - (0x1D5FC, 'M', u'o'), - (0x1D5FD, 'M', u'p'), - (0x1D5FE, 'M', u'q'), - (0x1D5FF, 'M', u'r'), - (0x1D600, 'M', u's'), - (0x1D601, 'M', u't'), - (0x1D602, 'M', u'u'), - (0x1D603, 'M', u'v'), - (0x1D604, 'M', u'w'), - (0x1D605, 'M', u'x'), - (0x1D606, 'M', u'y'), - (0x1D607, 'M', u'z'), - (0x1D608, 'M', u'a'), - (0x1D609, 'M', u'b'), - (0x1D60A, 'M', u'c'), - (0x1D60B, 'M', u'd'), - (0x1D60C, 'M', u'e'), - (0x1D60D, 'M', u'f'), - (0x1D60E, 'M', u'g'), - (0x1D60F, 'M', u'h'), - (0x1D610, 'M', u'i'), - (0x1D611, 'M', u'j'), - (0x1D612, 'M', u'k'), - (0x1D613, 'M', u'l'), - (0x1D614, 'M', u'm'), - (0x1D615, 'M', u'n'), - (0x1D616, 'M', u'o'), - (0x1D617, 'M', u'p'), - (0x1D618, 'M', u'q'), - (0x1D619, 'M', u'r'), - (0x1D61A, 'M', u's'), - (0x1D61B, 'M', u't'), - (0x1D61C, 'M', u'u'), - (0x1D61D, 'M', u'v'), - (0x1D61E, 'M', u'w'), - (0x1D61F, 'M', u'x'), - (0x1D620, 'M', u'y'), - (0x1D621, 'M', u'z'), - (0x1D622, 'M', u'a'), - (0x1D623, 'M', u'b'), - (0x1D624, 'M', u'c'), - (0x1D625, 'M', u'd'), - (0x1D626, 'M', u'e'), - (0x1D627, 'M', u'f'), - (0x1D628, 'M', u'g'), - (0x1D629, 'M', u'h'), - (0x1D62A, 'M', u'i'), - (0x1D62B, 'M', u'j'), - (0x1D62C, 'M', u'k'), - (0x1D62D, 'M', u'l'), - (0x1D62E, 'M', u'm'), - (0x1D62F, 'M', u'n'), - (0x1D630, 'M', u'o'), - (0x1D631, 'M', u'p'), - (0x1D632, 'M', u'q'), - (0x1D633, 'M', u'r'), - (0x1D634, 'M', u's'), - (0x1D635, 'M', u't'), - (0x1D636, 'M', u'u'), - ] - -def _seg_59(): - return [ - (0x1D637, 'M', u'v'), - (0x1D638, 'M', u'w'), - (0x1D639, 'M', u'x'), - (0x1D63A, 'M', u'y'), - (0x1D63B, 'M', u'z'), - (0x1D63C, 'M', u'a'), - (0x1D63D, 'M', u'b'), - (0x1D63E, 'M', u'c'), - (0x1D63F, 'M', u'd'), - (0x1D640, 'M', u'e'), - (0x1D641, 'M', u'f'), - (0x1D642, 'M', u'g'), - (0x1D643, 'M', u'h'), - (0x1D644, 'M', u'i'), - (0x1D645, 'M', u'j'), - (0x1D646, 'M', u'k'), - (0x1D647, 'M', u'l'), - (0x1D648, 'M', u'm'), - (0x1D649, 'M', u'n'), - (0x1D64A, 'M', u'o'), - (0x1D64B, 'M', u'p'), - (0x1D64C, 'M', u'q'), - (0x1D64D, 'M', u'r'), - (0x1D64E, 'M', u's'), - (0x1D64F, 'M', u't'), - (0x1D650, 'M', u'u'), - (0x1D651, 'M', u'v'), - (0x1D652, 'M', u'w'), - (0x1D653, 'M', u'x'), - (0x1D654, 'M', u'y'), - (0x1D655, 'M', u'z'), - (0x1D656, 'M', u'a'), - (0x1D657, 'M', u'b'), - (0x1D658, 'M', u'c'), - (0x1D659, 'M', u'd'), - (0x1D65A, 'M', u'e'), - (0x1D65B, 'M', u'f'), - (0x1D65C, 'M', u'g'), - (0x1D65D, 'M', u'h'), - (0x1D65E, 'M', u'i'), - (0x1D65F, 'M', u'j'), - (0x1D660, 'M', u'k'), - (0x1D661, 'M', u'l'), - (0x1D662, 'M', u'm'), - (0x1D663, 'M', u'n'), - (0x1D664, 'M', u'o'), - (0x1D665, 'M', u'p'), - (0x1D666, 'M', u'q'), - (0x1D667, 'M', u'r'), - (0x1D668, 'M', u's'), - (0x1D669, 'M', u't'), - (0x1D66A, 'M', u'u'), - (0x1D66B, 'M', u'v'), - (0x1D66C, 'M', u'w'), - (0x1D66D, 'M', u'x'), - (0x1D66E, 'M', u'y'), - (0x1D66F, 'M', u'z'), - (0x1D670, 'M', u'a'), - (0x1D671, 'M', u'b'), - (0x1D672, 'M', u'c'), - (0x1D673, 'M', u'd'), - (0x1D674, 'M', u'e'), - (0x1D675, 'M', u'f'), - (0x1D676, 'M', u'g'), - (0x1D677, 'M', u'h'), - (0x1D678, 'M', u'i'), - (0x1D679, 'M', u'j'), - (0x1D67A, 'M', u'k'), - (0x1D67B, 'M', u'l'), - (0x1D67C, 'M', u'm'), - (0x1D67D, 'M', u'n'), - (0x1D67E, 'M', u'o'), - (0x1D67F, 'M', u'p'), - (0x1D680, 'M', u'q'), - (0x1D681, 'M', u'r'), - (0x1D682, 'M', u's'), - (0x1D683, 'M', u't'), - (0x1D684, 'M', u'u'), - (0x1D685, 'M', u'v'), - (0x1D686, 'M', u'w'), - (0x1D687, 'M', u'x'), - (0x1D688, 'M', u'y'), - (0x1D689, 'M', u'z'), - (0x1D68A, 'M', u'a'), - (0x1D68B, 'M', u'b'), - (0x1D68C, 'M', u'c'), - (0x1D68D, 'M', u'd'), - (0x1D68E, 'M', u'e'), - (0x1D68F, 'M', u'f'), - (0x1D690, 'M', u'g'), - (0x1D691, 'M', u'h'), - (0x1D692, 'M', u'i'), - (0x1D693, 'M', u'j'), - (0x1D694, 'M', u'k'), - (0x1D695, 'M', u'l'), - (0x1D696, 'M', u'm'), - (0x1D697, 'M', u'n'), - (0x1D698, 'M', u'o'), - (0x1D699, 'M', u'p'), - (0x1D69A, 'M', u'q'), - ] - -def _seg_60(): - return [ - (0x1D69B, 'M', u'r'), - (0x1D69C, 'M', u's'), - (0x1D69D, 'M', u't'), - (0x1D69E, 'M', u'u'), - (0x1D69F, 'M', u'v'), - (0x1D6A0, 'M', u'w'), - (0x1D6A1, 'M', u'x'), - (0x1D6A2, 'M', u'y'), - (0x1D6A3, 'M', u'z'), - (0x1D6A4, 'M', u'ı'), - (0x1D6A5, 'M', u'ȷ'), - (0x1D6A6, 'X'), - (0x1D6A8, 'M', u'α'), - (0x1D6A9, 'M', u'β'), - (0x1D6AA, 'M', u'γ'), - (0x1D6AB, 'M', u'δ'), - (0x1D6AC, 'M', u'ε'), - (0x1D6AD, 'M', u'ζ'), - (0x1D6AE, 'M', u'η'), - (0x1D6AF, 'M', u'θ'), - (0x1D6B0, 'M', u'ι'), - (0x1D6B1, 'M', u'κ'), - (0x1D6B2, 'M', u'λ'), - (0x1D6B3, 'M', u'μ'), - (0x1D6B4, 'M', u'ν'), - (0x1D6B5, 'M', u'ξ'), - (0x1D6B6, 'M', u'ο'), - (0x1D6B7, 'M', u'π'), - (0x1D6B8, 'M', u'ρ'), - (0x1D6B9, 'M', u'θ'), - (0x1D6BA, 'M', u'σ'), - (0x1D6BB, 'M', u'τ'), - (0x1D6BC, 'M', u'υ'), - (0x1D6BD, 'M', u'φ'), - (0x1D6BE, 'M', u'χ'), - (0x1D6BF, 'M', u'ψ'), - (0x1D6C0, 'M', u'ω'), - (0x1D6C1, 'M', u'∇'), - (0x1D6C2, 'M', u'α'), - (0x1D6C3, 'M', u'β'), - (0x1D6C4, 'M', u'γ'), - (0x1D6C5, 'M', u'δ'), - (0x1D6C6, 'M', u'ε'), - (0x1D6C7, 'M', u'ζ'), - (0x1D6C8, 'M', u'η'), - (0x1D6C9, 'M', u'θ'), - (0x1D6CA, 'M', u'ι'), - (0x1D6CB, 'M', u'κ'), - (0x1D6CC, 'M', u'λ'), - (0x1D6CD, 'M', u'μ'), - (0x1D6CE, 'M', u'ν'), - (0x1D6CF, 'M', u'ξ'), - (0x1D6D0, 'M', u'ο'), - (0x1D6D1, 'M', u'π'), - (0x1D6D2, 'M', u'ρ'), - (0x1D6D3, 'M', u'σ'), - (0x1D6D5, 'M', u'τ'), - (0x1D6D6, 'M', u'υ'), - (0x1D6D7, 'M', u'φ'), - (0x1D6D8, 'M', u'χ'), - (0x1D6D9, 'M', u'ψ'), - (0x1D6DA, 'M', u'ω'), - (0x1D6DB, 'M', u'∂'), - (0x1D6DC, 'M', u'ε'), - (0x1D6DD, 'M', u'θ'), - (0x1D6DE, 'M', u'κ'), - (0x1D6DF, 'M', u'φ'), - (0x1D6E0, 'M', u'ρ'), - (0x1D6E1, 'M', u'π'), - (0x1D6E2, 'M', u'α'), - (0x1D6E3, 'M', u'β'), - (0x1D6E4, 'M', u'γ'), - (0x1D6E5, 'M', u'δ'), - (0x1D6E6, 'M', u'ε'), - (0x1D6E7, 'M', u'ζ'), - (0x1D6E8, 'M', u'η'), - (0x1D6E9, 'M', u'θ'), - (0x1D6EA, 'M', u'ι'), - (0x1D6EB, 'M', u'κ'), - (0x1D6EC, 'M', u'λ'), - (0x1D6ED, 'M', u'μ'), - (0x1D6EE, 'M', u'ν'), - (0x1D6EF, 'M', u'ξ'), - (0x1D6F0, 'M', u'ο'), - (0x1D6F1, 'M', u'π'), - (0x1D6F2, 'M', u'ρ'), - (0x1D6F3, 'M', u'θ'), - (0x1D6F4, 'M', u'σ'), - (0x1D6F5, 'M', u'τ'), - (0x1D6F6, 'M', u'υ'), - (0x1D6F7, 'M', u'φ'), - (0x1D6F8, 'M', u'χ'), - (0x1D6F9, 'M', u'ψ'), - (0x1D6FA, 'M', u'ω'), - (0x1D6FB, 'M', u'∇'), - (0x1D6FC, 'M', u'α'), - (0x1D6FD, 'M', u'β'), - (0x1D6FE, 'M', u'γ'), - (0x1D6FF, 'M', u'δ'), - (0x1D700, 'M', u'ε'), - ] - -def _seg_61(): - return [ - (0x1D701, 'M', u'ζ'), - (0x1D702, 'M', u'η'), - (0x1D703, 'M', u'θ'), - (0x1D704, 'M', u'ι'), - (0x1D705, 'M', u'κ'), - (0x1D706, 'M', u'λ'), - (0x1D707, 'M', u'μ'), - (0x1D708, 'M', u'ν'), - (0x1D709, 'M', u'ξ'), - (0x1D70A, 'M', u'ο'), - (0x1D70B, 'M', u'π'), - (0x1D70C, 'M', u'ρ'), - (0x1D70D, 'M', u'σ'), - (0x1D70F, 'M', u'τ'), - (0x1D710, 'M', u'υ'), - (0x1D711, 'M', u'φ'), - (0x1D712, 'M', u'χ'), - (0x1D713, 'M', u'ψ'), - (0x1D714, 'M', u'ω'), - (0x1D715, 'M', u'∂'), - (0x1D716, 'M', u'ε'), - (0x1D717, 'M', u'θ'), - (0x1D718, 'M', u'κ'), - (0x1D719, 'M', u'φ'), - (0x1D71A, 'M', u'ρ'), - (0x1D71B, 'M', u'π'), - (0x1D71C, 'M', u'α'), - (0x1D71D, 'M', u'β'), - (0x1D71E, 'M', u'γ'), - (0x1D71F, 'M', u'δ'), - (0x1D720, 'M', u'ε'), - (0x1D721, 'M', u'ζ'), - (0x1D722, 'M', u'η'), - (0x1D723, 'M', u'θ'), - (0x1D724, 'M', u'ι'), - (0x1D725, 'M', u'κ'), - (0x1D726, 'M', u'λ'), - (0x1D727, 'M', u'μ'), - (0x1D728, 'M', u'ν'), - (0x1D729, 'M', u'ξ'), - (0x1D72A, 'M', u'ο'), - (0x1D72B, 'M', u'π'), - (0x1D72C, 'M', u'ρ'), - (0x1D72D, 'M', u'θ'), - (0x1D72E, 'M', u'σ'), - (0x1D72F, 'M', u'τ'), - (0x1D730, 'M', u'υ'), - (0x1D731, 'M', u'φ'), - (0x1D732, 'M', u'χ'), - (0x1D733, 'M', u'ψ'), - (0x1D734, 'M', u'ω'), - (0x1D735, 'M', u'∇'), - (0x1D736, 'M', u'α'), - (0x1D737, 'M', u'β'), - (0x1D738, 'M', u'γ'), - (0x1D739, 'M', u'δ'), - (0x1D73A, 'M', u'ε'), - (0x1D73B, 'M', u'ζ'), - (0x1D73C, 'M', u'η'), - (0x1D73D, 'M', u'θ'), - (0x1D73E, 'M', u'ι'), - (0x1D73F, 'M', u'κ'), - (0x1D740, 'M', u'λ'), - (0x1D741, 'M', u'μ'), - (0x1D742, 'M', u'ν'), - (0x1D743, 'M', u'ξ'), - (0x1D744, 'M', u'ο'), - (0x1D745, 'M', u'π'), - (0x1D746, 'M', u'ρ'), - (0x1D747, 'M', u'σ'), - (0x1D749, 'M', u'τ'), - (0x1D74A, 'M', u'υ'), - (0x1D74B, 'M', u'φ'), - (0x1D74C, 'M', u'χ'), - (0x1D74D, 'M', u'ψ'), - (0x1D74E, 'M', u'ω'), - (0x1D74F, 'M', u'∂'), - (0x1D750, 'M', u'ε'), - (0x1D751, 'M', u'θ'), - (0x1D752, 'M', u'κ'), - (0x1D753, 'M', u'φ'), - (0x1D754, 'M', u'ρ'), - (0x1D755, 'M', u'π'), - (0x1D756, 'M', u'α'), - (0x1D757, 'M', u'β'), - (0x1D758, 'M', u'γ'), - (0x1D759, 'M', u'δ'), - (0x1D75A, 'M', u'ε'), - (0x1D75B, 'M', u'ζ'), - (0x1D75C, 'M', u'η'), - (0x1D75D, 'M', u'θ'), - (0x1D75E, 'M', u'ι'), - (0x1D75F, 'M', u'κ'), - (0x1D760, 'M', u'λ'), - (0x1D761, 'M', u'μ'), - (0x1D762, 'M', u'ν'), - (0x1D763, 'M', u'ξ'), - (0x1D764, 'M', u'ο'), - (0x1D765, 'M', u'π'), - (0x1D766, 'M', u'ρ'), - ] - -def _seg_62(): - return [ - (0x1D767, 'M', u'θ'), - (0x1D768, 'M', u'σ'), - (0x1D769, 'M', u'τ'), - (0x1D76A, 'M', u'υ'), - (0x1D76B, 'M', u'φ'), - (0x1D76C, 'M', u'χ'), - (0x1D76D, 'M', u'ψ'), - (0x1D76E, 'M', u'ω'), - (0x1D76F, 'M', u'∇'), - (0x1D770, 'M', u'α'), - (0x1D771, 'M', u'β'), - (0x1D772, 'M', u'γ'), - (0x1D773, 'M', u'δ'), - (0x1D774, 'M', u'ε'), - (0x1D775, 'M', u'ζ'), - (0x1D776, 'M', u'η'), - (0x1D777, 'M', u'θ'), - (0x1D778, 'M', u'ι'), - (0x1D779, 'M', u'κ'), - (0x1D77A, 'M', u'λ'), - (0x1D77B, 'M', u'μ'), - (0x1D77C, 'M', u'ν'), - (0x1D77D, 'M', u'ξ'), - (0x1D77E, 'M', u'ο'), - (0x1D77F, 'M', u'π'), - (0x1D780, 'M', u'ρ'), - (0x1D781, 'M', u'σ'), - (0x1D783, 'M', u'τ'), - (0x1D784, 'M', u'υ'), - (0x1D785, 'M', u'φ'), - (0x1D786, 'M', u'χ'), - (0x1D787, 'M', u'ψ'), - (0x1D788, 'M', u'ω'), - (0x1D789, 'M', u'∂'), - (0x1D78A, 'M', u'ε'), - (0x1D78B, 'M', u'θ'), - (0x1D78C, 'M', u'κ'), - (0x1D78D, 'M', u'φ'), - (0x1D78E, 'M', u'ρ'), - (0x1D78F, 'M', u'π'), - (0x1D790, 'M', u'α'), - (0x1D791, 'M', u'β'), - (0x1D792, 'M', u'γ'), - (0x1D793, 'M', u'δ'), - (0x1D794, 'M', u'ε'), - (0x1D795, 'M', u'ζ'), - (0x1D796, 'M', u'η'), - (0x1D797, 'M', u'θ'), - (0x1D798, 'M', u'ι'), - (0x1D799, 'M', u'κ'), - (0x1D79A, 'M', u'λ'), - (0x1D79B, 'M', u'μ'), - (0x1D79C, 'M', u'ν'), - (0x1D79D, 'M', u'ξ'), - (0x1D79E, 'M', u'ο'), - (0x1D79F, 'M', u'π'), - (0x1D7A0, 'M', u'ρ'), - (0x1D7A1, 'M', u'θ'), - (0x1D7A2, 'M', u'σ'), - (0x1D7A3, 'M', u'τ'), - (0x1D7A4, 'M', u'υ'), - (0x1D7A5, 'M', u'φ'), - (0x1D7A6, 'M', u'χ'), - (0x1D7A7, 'M', u'ψ'), - (0x1D7A8, 'M', u'ω'), - (0x1D7A9, 'M', u'∇'), - (0x1D7AA, 'M', u'α'), - (0x1D7AB, 'M', u'β'), - (0x1D7AC, 'M', u'γ'), - (0x1D7AD, 'M', u'δ'), - (0x1D7AE, 'M', u'ε'), - (0x1D7AF, 'M', u'ζ'), - (0x1D7B0, 'M', u'η'), - (0x1D7B1, 'M', u'θ'), - (0x1D7B2, 'M', u'ι'), - (0x1D7B3, 'M', u'κ'), - (0x1D7B4, 'M', u'λ'), - (0x1D7B5, 'M', u'μ'), - (0x1D7B6, 'M', u'ν'), - (0x1D7B7, 'M', u'ξ'), - (0x1D7B8, 'M', u'ο'), - (0x1D7B9, 'M', u'π'), - (0x1D7BA, 'M', u'ρ'), - (0x1D7BB, 'M', u'σ'), - (0x1D7BD, 'M', u'τ'), - (0x1D7BE, 'M', u'υ'), - (0x1D7BF, 'M', u'φ'), - (0x1D7C0, 'M', u'χ'), - (0x1D7C1, 'M', u'ψ'), - (0x1D7C2, 'M', u'ω'), - (0x1D7C3, 'M', u'∂'), - (0x1D7C4, 'M', u'ε'), - (0x1D7C5, 'M', u'θ'), - (0x1D7C6, 'M', u'κ'), - (0x1D7C7, 'M', u'φ'), - (0x1D7C8, 'M', u'ρ'), - (0x1D7C9, 'M', u'π'), - (0x1D7CA, 'M', u'ϝ'), - (0x1D7CC, 'X'), - (0x1D7CE, 'M', u'0'), - ] - -def _seg_63(): - return [ - (0x1D7CF, 'M', u'1'), - (0x1D7D0, 'M', u'2'), - (0x1D7D1, 'M', u'3'), - (0x1D7D2, 'M', u'4'), - (0x1D7D3, 'M', u'5'), - (0x1D7D4, 'M', u'6'), - (0x1D7D5, 'M', u'7'), - (0x1D7D6, 'M', u'8'), - (0x1D7D7, 'M', u'9'), - (0x1D7D8, 'M', u'0'), - (0x1D7D9, 'M', u'1'), - (0x1D7DA, 'M', u'2'), - (0x1D7DB, 'M', u'3'), - (0x1D7DC, 'M', u'4'), - (0x1D7DD, 'M', u'5'), - (0x1D7DE, 'M', u'6'), - (0x1D7DF, 'M', u'7'), - (0x1D7E0, 'M', u'8'), - (0x1D7E1, 'M', u'9'), - (0x1D7E2, 'M', u'0'), - (0x1D7E3, 'M', u'1'), - (0x1D7E4, 'M', u'2'), - (0x1D7E5, 'M', u'3'), - (0x1D7E6, 'M', u'4'), - (0x1D7E7, 'M', u'5'), - (0x1D7E8, 'M', u'6'), - (0x1D7E9, 'M', u'7'), - (0x1D7EA, 'M', u'8'), - (0x1D7EB, 'M', u'9'), - (0x1D7EC, 'M', u'0'), - (0x1D7ED, 'M', u'1'), - (0x1D7EE, 'M', u'2'), - (0x1D7EF, 'M', u'3'), - (0x1D7F0, 'M', u'4'), - (0x1D7F1, 'M', u'5'), - (0x1D7F2, 'M', u'6'), - (0x1D7F3, 'M', u'7'), - (0x1D7F4, 'M', u'8'), - (0x1D7F5, 'M', u'9'), - (0x1D7F6, 'M', u'0'), - (0x1D7F7, 'M', u'1'), - (0x1D7F8, 'M', u'2'), - (0x1D7F9, 'M', u'3'), - (0x1D7FA, 'M', u'4'), - (0x1D7FB, 'M', u'5'), - (0x1D7FC, 'M', u'6'), - (0x1D7FD, 'M', u'7'), - (0x1D7FE, 'M', u'8'), - (0x1D7FF, 'M', u'9'), - (0x1D800, 'X'), - (0x1EE00, 'M', u'ا'), - (0x1EE01, 'M', u'ب'), - (0x1EE02, 'M', u'ج'), - (0x1EE03, 'M', u'د'), - (0x1EE04, 'X'), - (0x1EE05, 'M', u'و'), - (0x1EE06, 'M', u'ز'), - (0x1EE07, 'M', u'ح'), - (0x1EE08, 'M', u'ط'), - (0x1EE09, 'M', u'ي'), - (0x1EE0A, 'M', u'ك'), - (0x1EE0B, 'M', u'ل'), - (0x1EE0C, 'M', u'م'), - (0x1EE0D, 'M', u'ن'), - (0x1EE0E, 'M', u'س'), - (0x1EE0F, 'M', u'ع'), - (0x1EE10, 'M', u'ف'), - (0x1EE11, 'M', u'ص'), - (0x1EE12, 'M', u'ق'), - (0x1EE13, 'M', u'ر'), - (0x1EE14, 'M', u'ش'), - (0x1EE15, 'M', u'ت'), - (0x1EE16, 'M', u'ث'), - (0x1EE17, 'M', u'خ'), - (0x1EE18, 'M', u'ذ'), - (0x1EE19, 'M', u'ض'), - (0x1EE1A, 'M', u'ظ'), - (0x1EE1B, 'M', u'غ'), - (0x1EE1C, 'M', u'ٮ'), - (0x1EE1D, 'M', u'ں'), - (0x1EE1E, 'M', u'ڡ'), - (0x1EE1F, 'M', u'ٯ'), - (0x1EE20, 'X'), - (0x1EE21, 'M', u'ب'), - (0x1EE22, 'M', u'ج'), - (0x1EE23, 'X'), - (0x1EE24, 'M', u'ه'), - (0x1EE25, 'X'), - (0x1EE27, 'M', u'ح'), - (0x1EE28, 'X'), - (0x1EE29, 'M', u'ي'), - (0x1EE2A, 'M', u'ك'), - (0x1EE2B, 'M', u'ل'), - (0x1EE2C, 'M', u'م'), - (0x1EE2D, 'M', u'ن'), - (0x1EE2E, 'M', u'س'), - (0x1EE2F, 'M', u'ع'), - (0x1EE30, 'M', u'ف'), - (0x1EE31, 'M', u'ص'), - (0x1EE32, 'M', u'ق'), - ] - -def _seg_64(): - return [ - (0x1EE33, 'X'), - (0x1EE34, 'M', u'ش'), - (0x1EE35, 'M', u'ت'), - (0x1EE36, 'M', u'ث'), - (0x1EE37, 'M', u'خ'), - (0x1EE38, 'X'), - (0x1EE39, 'M', u'ض'), - (0x1EE3A, 'X'), - (0x1EE3B, 'M', u'غ'), - (0x1EE3C, 'X'), - (0x1EE42, 'M', u'ج'), - (0x1EE43, 'X'), - (0x1EE47, 'M', u'ح'), - (0x1EE48, 'X'), - (0x1EE49, 'M', u'ي'), - (0x1EE4A, 'X'), - (0x1EE4B, 'M', u'ل'), - (0x1EE4C, 'X'), - (0x1EE4D, 'M', u'ن'), - (0x1EE4E, 'M', u'س'), - (0x1EE4F, 'M', u'ع'), - (0x1EE50, 'X'), - (0x1EE51, 'M', u'ص'), - (0x1EE52, 'M', u'ق'), - (0x1EE53, 'X'), - (0x1EE54, 'M', u'ش'), - (0x1EE55, 'X'), - (0x1EE57, 'M', u'خ'), - (0x1EE58, 'X'), - (0x1EE59, 'M', u'ض'), - (0x1EE5A, 'X'), - (0x1EE5B, 'M', u'غ'), - (0x1EE5C, 'X'), - (0x1EE5D, 'M', u'ں'), - (0x1EE5E, 'X'), - (0x1EE5F, 'M', u'ٯ'), - (0x1EE60, 'X'), - (0x1EE61, 'M', u'ب'), - (0x1EE62, 'M', u'ج'), - (0x1EE63, 'X'), - (0x1EE64, 'M', u'ه'), - (0x1EE65, 'X'), - (0x1EE67, 'M', u'ح'), - (0x1EE68, 'M', u'ط'), - (0x1EE69, 'M', u'ي'), - (0x1EE6A, 'M', u'ك'), - (0x1EE6B, 'X'), - (0x1EE6C, 'M', u'م'), - (0x1EE6D, 'M', u'ن'), - (0x1EE6E, 'M', u'س'), - (0x1EE6F, 'M', u'ع'), - (0x1EE70, 'M', u'ف'), - (0x1EE71, 'M', u'ص'), - (0x1EE72, 'M', u'ق'), - (0x1EE73, 'X'), - (0x1EE74, 'M', u'ش'), - (0x1EE75, 'M', u'ت'), - (0x1EE76, 'M', u'ث'), - (0x1EE77, 'M', u'خ'), - (0x1EE78, 'X'), - (0x1EE79, 'M', u'ض'), - (0x1EE7A, 'M', u'ظ'), - (0x1EE7B, 'M', u'غ'), - (0x1EE7C, 'M', u'ٮ'), - (0x1EE7D, 'X'), - (0x1EE7E, 'M', u'ڡ'), - (0x1EE7F, 'X'), - (0x1EE80, 'M', u'ا'), - (0x1EE81, 'M', u'ب'), - (0x1EE82, 'M', u'ج'), - (0x1EE83, 'M', u'د'), - (0x1EE84, 'M', u'ه'), - (0x1EE85, 'M', u'و'), - (0x1EE86, 'M', u'ز'), - (0x1EE87, 'M', u'ح'), - (0x1EE88, 'M', u'ط'), - (0x1EE89, 'M', u'ي'), - (0x1EE8A, 'X'), - (0x1EE8B, 'M', u'ل'), - (0x1EE8C, 'M', u'م'), - (0x1EE8D, 'M', u'ن'), - (0x1EE8E, 'M', u'س'), - (0x1EE8F, 'M', u'ع'), - (0x1EE90, 'M', u'ف'), - (0x1EE91, 'M', u'ص'), - (0x1EE92, 'M', u'ق'), - (0x1EE93, 'M', u'ر'), - (0x1EE94, 'M', u'ش'), - (0x1EE95, 'M', u'ت'), - (0x1EE96, 'M', u'ث'), - (0x1EE97, 'M', u'خ'), - (0x1EE98, 'M', u'ذ'), - (0x1EE99, 'M', u'ض'), - (0x1EE9A, 'M', u'ظ'), - (0x1EE9B, 'M', u'غ'), - (0x1EE9C, 'X'), - (0x1EEA1, 'M', u'ب'), - (0x1EEA2, 'M', u'ج'), - (0x1EEA3, 'M', u'د'), - (0x1EEA4, 'X'), - ] - -def _seg_65(): - return [ - (0x1EEA5, 'M', u'و'), - (0x1EEA6, 'M', u'ز'), - (0x1EEA7, 'M', u'ح'), - (0x1EEA8, 'M', u'ط'), - (0x1EEA9, 'M', u'ي'), - (0x1EEAA, 'X'), - (0x1EEAB, 'M', u'ل'), - (0x1EEAC, 'M', u'م'), - (0x1EEAD, 'M', u'ن'), - (0x1EEAE, 'M', u'س'), - (0x1EEAF, 'M', u'ع'), - (0x1EEB0, 'M', u'ف'), - (0x1EEB1, 'M', u'ص'), - (0x1EEB2, 'M', u'ق'), - (0x1EEB3, 'M', u'ر'), - (0x1EEB4, 'M', u'ش'), - (0x1EEB5, 'M', u'ت'), - (0x1EEB6, 'M', u'ث'), - (0x1EEB7, 'M', u'خ'), - (0x1EEB8, 'M', u'ذ'), - (0x1EEB9, 'M', u'ض'), - (0x1EEBA, 'M', u'ظ'), - (0x1EEBB, 'M', u'غ'), - (0x1EEBC, 'X'), - (0x1EEF0, 'V'), - (0x1EEF2, 'X'), - (0x1F000, 'V'), - (0x1F02C, 'X'), - (0x1F030, 'V'), - (0x1F094, 'X'), - (0x1F0A0, 'V'), - (0x1F0AF, 'X'), - (0x1F0B1, 'V'), - (0x1F0BF, 'X'), - (0x1F0C1, 'V'), - (0x1F0D0, 'X'), - (0x1F0D1, 'V'), - (0x1F0E0, 'X'), - (0x1F101, '3', u'0,'), - (0x1F102, '3', u'1,'), - (0x1F103, '3', u'2,'), - (0x1F104, '3', u'3,'), - (0x1F105, '3', u'4,'), - (0x1F106, '3', u'5,'), - (0x1F107, '3', u'6,'), - (0x1F108, '3', u'7,'), - (0x1F109, '3', u'8,'), - (0x1F10A, '3', u'9,'), - (0x1F10B, 'X'), - (0x1F110, '3', u'(a)'), - (0x1F111, '3', u'(b)'), - (0x1F112, '3', u'(c)'), - (0x1F113, '3', u'(d)'), - (0x1F114, '3', u'(e)'), - (0x1F115, '3', u'(f)'), - (0x1F116, '3', u'(g)'), - (0x1F117, '3', u'(h)'), - (0x1F118, '3', u'(i)'), - (0x1F119, '3', u'(j)'), - (0x1F11A, '3', u'(k)'), - (0x1F11B, '3', u'(l)'), - (0x1F11C, '3', u'(m)'), - (0x1F11D, '3', u'(n)'), - (0x1F11E, '3', u'(o)'), - (0x1F11F, '3', u'(p)'), - (0x1F120, '3', u'(q)'), - (0x1F121, '3', u'(r)'), - (0x1F122, '3', u'(s)'), - (0x1F123, '3', u'(t)'), - (0x1F124, '3', u'(u)'), - (0x1F125, '3', u'(v)'), - (0x1F126, '3', u'(w)'), - (0x1F127, '3', u'(x)'), - (0x1F128, '3', u'(y)'), - (0x1F129, '3', u'(z)'), - (0x1F12A, 'M', u'〔s〕'), - (0x1F12B, 'M', u'c'), - (0x1F12C, 'M', u'r'), - (0x1F12D, 'M', u'cd'), - (0x1F12E, 'M', u'wz'), - (0x1F12F, 'X'), - (0x1F130, 'M', u'a'), - (0x1F131, 'M', u'b'), - (0x1F132, 'M', u'c'), - (0x1F133, 'M', u'd'), - (0x1F134, 'M', u'e'), - (0x1F135, 'M', u'f'), - (0x1F136, 'M', u'g'), - (0x1F137, 'M', u'h'), - (0x1F138, 'M', u'i'), - (0x1F139, 'M', u'j'), - (0x1F13A, 'M', u'k'), - (0x1F13B, 'M', u'l'), - (0x1F13C, 'M', u'm'), - (0x1F13D, 'M', u'n'), - (0x1F13E, 'M', u'o'), - (0x1F13F, 'M', u'p'), - (0x1F140, 'M', u'q'), - (0x1F141, 'M', u'r'), - (0x1F142, 'M', u's'), - ] - -def _seg_66(): - return [ - (0x1F143, 'M', u't'), - (0x1F144, 'M', u'u'), - (0x1F145, 'M', u'v'), - (0x1F146, 'M', u'w'), - (0x1F147, 'M', u'x'), - (0x1F148, 'M', u'y'), - (0x1F149, 'M', u'z'), - (0x1F14A, 'M', u'hv'), - (0x1F14B, 'M', u'mv'), - (0x1F14C, 'M', u'sd'), - (0x1F14D, 'M', u'ss'), - (0x1F14E, 'M', u'ppv'), - (0x1F14F, 'M', u'wc'), - (0x1F150, 'V'), - (0x1F16A, 'M', u'mc'), - (0x1F16B, 'M', u'md'), - (0x1F16C, 'X'), - (0x1F170, 'V'), - (0x1F190, 'M', u'dj'), - (0x1F191, 'V'), - (0x1F19B, 'X'), - (0x1F1E6, 'V'), - (0x1F200, 'M', u'ほか'), - (0x1F201, 'M', u'ココ'), - (0x1F202, 'M', u'サ'), - (0x1F203, 'X'), - (0x1F210, 'M', u'手'), - (0x1F211, 'M', u'字'), - (0x1F212, 'M', u'双'), - (0x1F213, 'M', u'デ'), - (0x1F214, 'M', u'二'), - (0x1F215, 'M', u'多'), - (0x1F216, 'M', u'解'), - (0x1F217, 'M', u'天'), - (0x1F218, 'M', u'交'), - (0x1F219, 'M', u'映'), - (0x1F21A, 'M', u'無'), - (0x1F21B, 'M', u'料'), - (0x1F21C, 'M', u'前'), - (0x1F21D, 'M', u'後'), - (0x1F21E, 'M', u'再'), - (0x1F21F, 'M', u'新'), - (0x1F220, 'M', u'初'), - (0x1F221, 'M', u'終'), - (0x1F222, 'M', u'生'), - (0x1F223, 'M', u'販'), - (0x1F224, 'M', u'声'), - (0x1F225, 'M', u'吹'), - (0x1F226, 'M', u'演'), - (0x1F227, 'M', u'投'), - (0x1F228, 'M', u'捕'), - (0x1F229, 'M', u'一'), - (0x1F22A, 'M', u'三'), - (0x1F22B, 'M', u'遊'), - (0x1F22C, 'M', u'左'), - (0x1F22D, 'M', u'中'), - (0x1F22E, 'M', u'右'), - (0x1F22F, 'M', u'指'), - (0x1F230, 'M', u'走'), - (0x1F231, 'M', u'打'), - (0x1F232, 'M', u'禁'), - (0x1F233, 'M', u'空'), - (0x1F234, 'M', u'合'), - (0x1F235, 'M', u'満'), - (0x1F236, 'M', u'有'), - (0x1F237, 'M', u'月'), - (0x1F238, 'M', u'申'), - (0x1F239, 'M', u'割'), - (0x1F23A, 'M', u'営'), - (0x1F23B, 'X'), - (0x1F240, 'M', u'〔本〕'), - (0x1F241, 'M', u'〔三〕'), - (0x1F242, 'M', u'〔二〕'), - (0x1F243, 'M', u'〔安〕'), - (0x1F244, 'M', u'〔点〕'), - (0x1F245, 'M', u'〔打〕'), - (0x1F246, 'M', u'〔盗〕'), - (0x1F247, 'M', u'〔勝〕'), - (0x1F248, 'M', u'〔敗〕'), - (0x1F249, 'X'), - (0x1F250, 'M', u'得'), - (0x1F251, 'M', u'可'), - (0x1F252, 'X'), - (0x1F300, 'V'), - (0x1F321, 'X'), - (0x1F330, 'V'), - (0x1F336, 'X'), - (0x1F337, 'V'), - (0x1F37D, 'X'), - (0x1F380, 'V'), - (0x1F394, 'X'), - (0x1F3A0, 'V'), - (0x1F3C5, 'X'), - (0x1F3C6, 'V'), - (0x1F3CB, 'X'), - (0x1F3E0, 'V'), - (0x1F3F1, 'X'), - (0x1F400, 'V'), - (0x1F43F, 'X'), - (0x1F440, 'V'), - ] - -def _seg_67(): - return [ - (0x1F441, 'X'), - (0x1F442, 'V'), - (0x1F4F8, 'X'), - (0x1F4F9, 'V'), - (0x1F4FD, 'X'), - (0x1F500, 'V'), - (0x1F53E, 'X'), - (0x1F540, 'V'), - (0x1F544, 'X'), - (0x1F550, 'V'), - (0x1F568, 'X'), - (0x1F5FB, 'V'), - (0x1F641, 'X'), - (0x1F645, 'V'), - (0x1F650, 'X'), - (0x1F680, 'V'), - (0x1F6C6, 'X'), - (0x1F700, 'V'), - (0x1F774, 'X'), - (0x20000, 'V'), - (0x2A6D7, 'X'), - (0x2A700, 'V'), - (0x2B735, 'X'), - (0x2B740, 'V'), - (0x2B81E, 'X'), - (0x2F800, 'M', u'丽'), - (0x2F801, 'M', u'丸'), - (0x2F802, 'M', u'乁'), - (0x2F803, 'M', u'𠄢'), - (0x2F804, 'M', u'你'), - (0x2F805, 'M', u'侮'), - (0x2F806, 'M', u'侻'), - (0x2F807, 'M', u'倂'), - (0x2F808, 'M', u'偺'), - (0x2F809, 'M', u'備'), - (0x2F80A, 'M', u'僧'), - (0x2F80B, 'M', u'像'), - (0x2F80C, 'M', u'㒞'), - (0x2F80D, 'M', u'𠘺'), - (0x2F80E, 'M', u'免'), - (0x2F80F, 'M', u'兔'), - (0x2F810, 'M', u'兤'), - (0x2F811, 'M', u'具'), - (0x2F812, 'M', u'𠔜'), - (0x2F813, 'M', u'㒹'), - (0x2F814, 'M', u'內'), - (0x2F815, 'M', u'再'), - (0x2F816, 'M', u'𠕋'), - (0x2F817, 'M', u'冗'), - (0x2F818, 'M', u'冤'), - (0x2F819, 'M', u'仌'), - (0x2F81A, 'M', u'冬'), - (0x2F81B, 'M', u'况'), - (0x2F81C, 'M', u'𩇟'), - (0x2F81D, 'M', u'凵'), - (0x2F81E, 'M', u'刃'), - (0x2F81F, 'M', u'㓟'), - (0x2F820, 'M', u'刻'), - (0x2F821, 'M', u'剆'), - (0x2F822, 'M', u'割'), - (0x2F823, 'M', u'剷'), - (0x2F824, 'M', u'㔕'), - (0x2F825, 'M', u'勇'), - (0x2F826, 'M', u'勉'), - (0x2F827, 'M', u'勤'), - (0x2F828, 'M', u'勺'), - (0x2F829, 'M', u'包'), - (0x2F82A, 'M', u'匆'), - (0x2F82B, 'M', u'北'), - (0x2F82C, 'M', u'卉'), - (0x2F82D, 'M', u'卑'), - (0x2F82E, 'M', u'博'), - (0x2F82F, 'M', u'即'), - (0x2F830, 'M', u'卽'), - (0x2F831, 'M', u'卿'), - (0x2F834, 'M', u'𠨬'), - (0x2F835, 'M', u'灰'), - (0x2F836, 'M', u'及'), - (0x2F837, 'M', u'叟'), - (0x2F838, 'M', u'𠭣'), - (0x2F839, 'M', u'叫'), - (0x2F83A, 'M', u'叱'), - (0x2F83B, 'M', u'吆'), - (0x2F83C, 'M', u'咞'), - (0x2F83D, 'M', u'吸'), - (0x2F83E, 'M', u'呈'), - (0x2F83F, 'M', u'周'), - (0x2F840, 'M', u'咢'), - (0x2F841, 'M', u'哶'), - (0x2F842, 'M', u'唐'), - (0x2F843, 'M', u'啓'), - (0x2F844, 'M', u'啣'), - (0x2F845, 'M', u'善'), - (0x2F847, 'M', u'喙'), - (0x2F848, 'M', u'喫'), - (0x2F849, 'M', u'喳'), - (0x2F84A, 'M', u'嗂'), - (0x2F84B, 'M', u'圖'), - (0x2F84C, 'M', u'嘆'), - (0x2F84D, 'M', u'圗'), - ] - -def _seg_68(): - return [ - (0x2F84E, 'M', u'噑'), - (0x2F84F, 'M', u'噴'), - (0x2F850, 'M', u'切'), - (0x2F851, 'M', u'壮'), - (0x2F852, 'M', u'城'), - (0x2F853, 'M', u'埴'), - (0x2F854, 'M', u'堍'), - (0x2F855, 'M', u'型'), - (0x2F856, 'M', u'堲'), - (0x2F857, 'M', u'報'), - (0x2F858, 'M', u'墬'), - (0x2F859, 'M', u'𡓤'), - (0x2F85A, 'M', u'売'), - (0x2F85B, 'M', u'壷'), - (0x2F85C, 'M', u'夆'), - (0x2F85D, 'M', u'多'), - (0x2F85E, 'M', u'夢'), - (0x2F85F, 'M', u'奢'), - (0x2F860, 'M', u'𡚨'), - (0x2F861, 'M', u'𡛪'), - (0x2F862, 'M', u'姬'), - (0x2F863, 'M', u'娛'), - (0x2F864, 'M', u'娧'), - (0x2F865, 'M', u'姘'), - (0x2F866, 'M', u'婦'), - (0x2F867, 'M', u'㛮'), - (0x2F868, 'X'), - (0x2F869, 'M', u'嬈'), - (0x2F86A, 'M', u'嬾'), - (0x2F86C, 'M', u'𡧈'), - (0x2F86D, 'M', u'寃'), - (0x2F86E, 'M', u'寘'), - (0x2F86F, 'M', u'寧'), - (0x2F870, 'M', u'寳'), - (0x2F871, 'M', u'𡬘'), - (0x2F872, 'M', u'寿'), - (0x2F873, 'M', u'将'), - (0x2F874, 'X'), - (0x2F875, 'M', u'尢'), - (0x2F876, 'M', u'㞁'), - (0x2F877, 'M', u'屠'), - (0x2F878, 'M', u'屮'), - (0x2F879, 'M', u'峀'), - (0x2F87A, 'M', u'岍'), - (0x2F87B, 'M', u'𡷤'), - (0x2F87C, 'M', u'嵃'), - (0x2F87D, 'M', u'𡷦'), - (0x2F87E, 'M', u'嵮'), - (0x2F87F, 'M', u'嵫'), - (0x2F880, 'M', u'嵼'), - (0x2F881, 'M', u'巡'), - (0x2F882, 'M', u'巢'), - (0x2F883, 'M', u'㠯'), - (0x2F884, 'M', u'巽'), - (0x2F885, 'M', u'帨'), - (0x2F886, 'M', u'帽'), - (0x2F887, 'M', u'幩'), - (0x2F888, 'M', u'㡢'), - (0x2F889, 'M', u'𢆃'), - (0x2F88A, 'M', u'㡼'), - (0x2F88B, 'M', u'庰'), - (0x2F88C, 'M', u'庳'), - (0x2F88D, 'M', u'庶'), - (0x2F88E, 'M', u'廊'), - (0x2F88F, 'M', u'𪎒'), - (0x2F890, 'M', u'廾'), - (0x2F891, 'M', u'𢌱'), - (0x2F893, 'M', u'舁'), - (0x2F894, 'M', u'弢'), - (0x2F896, 'M', u'㣇'), - (0x2F897, 'M', u'𣊸'), - (0x2F898, 'M', u'𦇚'), - (0x2F899, 'M', u'形'), - (0x2F89A, 'M', u'彫'), - (0x2F89B, 'M', u'㣣'), - (0x2F89C, 'M', u'徚'), - (0x2F89D, 'M', u'忍'), - (0x2F89E, 'M', u'志'), - (0x2F89F, 'M', u'忹'), - (0x2F8A0, 'M', u'悁'), - (0x2F8A1, 'M', u'㤺'), - (0x2F8A2, 'M', u'㤜'), - (0x2F8A3, 'M', u'悔'), - (0x2F8A4, 'M', u'𢛔'), - (0x2F8A5, 'M', u'惇'), - (0x2F8A6, 'M', u'慈'), - (0x2F8A7, 'M', u'慌'), - (0x2F8A8, 'M', u'慎'), - (0x2F8A9, 'M', u'慌'), - (0x2F8AA, 'M', u'慺'), - (0x2F8AB, 'M', u'憎'), - (0x2F8AC, 'M', u'憲'), - (0x2F8AD, 'M', u'憤'), - (0x2F8AE, 'M', u'憯'), - (0x2F8AF, 'M', u'懞'), - (0x2F8B0, 'M', u'懲'), - (0x2F8B1, 'M', u'懶'), - (0x2F8B2, 'M', u'成'), - (0x2F8B3, 'M', u'戛'), - (0x2F8B4, 'M', u'扝'), - ] - -def _seg_69(): - return [ - (0x2F8B5, 'M', u'抱'), - (0x2F8B6, 'M', u'拔'), - (0x2F8B7, 'M', u'捐'), - (0x2F8B8, 'M', u'𢬌'), - (0x2F8B9, 'M', u'挽'), - (0x2F8BA, 'M', u'拼'), - (0x2F8BB, 'M', u'捨'), - (0x2F8BC, 'M', u'掃'), - (0x2F8BD, 'M', u'揤'), - (0x2F8BE, 'M', u'𢯱'), - (0x2F8BF, 'M', u'搢'), - (0x2F8C0, 'M', u'揅'), - (0x2F8C1, 'M', u'掩'), - (0x2F8C2, 'M', u'㨮'), - (0x2F8C3, 'M', u'摩'), - (0x2F8C4, 'M', u'摾'), - (0x2F8C5, 'M', u'撝'), - (0x2F8C6, 'M', u'摷'), - (0x2F8C7, 'M', u'㩬'), - (0x2F8C8, 'M', u'敏'), - (0x2F8C9, 'M', u'敬'), - (0x2F8CA, 'M', u'𣀊'), - (0x2F8CB, 'M', u'旣'), - (0x2F8CC, 'M', u'書'), - (0x2F8CD, 'M', u'晉'), - (0x2F8CE, 'M', u'㬙'), - (0x2F8CF, 'M', u'暑'), - (0x2F8D0, 'M', u'㬈'), - (0x2F8D1, 'M', u'㫤'), - (0x2F8D2, 'M', u'冒'), - (0x2F8D3, 'M', u'冕'), - (0x2F8D4, 'M', u'最'), - (0x2F8D5, 'M', u'暜'), - (0x2F8D6, 'M', u'肭'), - (0x2F8D7, 'M', u'䏙'), - (0x2F8D8, 'M', u'朗'), - (0x2F8D9, 'M', u'望'), - (0x2F8DA, 'M', u'朡'), - (0x2F8DB, 'M', u'杞'), - (0x2F8DC, 'M', u'杓'), - (0x2F8DD, 'M', u'𣏃'), - (0x2F8DE, 'M', u'㭉'), - (0x2F8DF, 'M', u'柺'), - (0x2F8E0, 'M', u'枅'), - (0x2F8E1, 'M', u'桒'), - (0x2F8E2, 'M', u'梅'), - (0x2F8E3, 'M', u'𣑭'), - (0x2F8E4, 'M', u'梎'), - (0x2F8E5, 'M', u'栟'), - (0x2F8E6, 'M', u'椔'), - (0x2F8E7, 'M', u'㮝'), - (0x2F8E8, 'M', u'楂'), - (0x2F8E9, 'M', u'榣'), - (0x2F8EA, 'M', u'槪'), - (0x2F8EB, 'M', u'檨'), - (0x2F8EC, 'M', u'𣚣'), - (0x2F8ED, 'M', u'櫛'), - (0x2F8EE, 'M', u'㰘'), - (0x2F8EF, 'M', u'次'), - (0x2F8F0, 'M', u'𣢧'), - (0x2F8F1, 'M', u'歔'), - (0x2F8F2, 'M', u'㱎'), - (0x2F8F3, 'M', u'歲'), - (0x2F8F4, 'M', u'殟'), - (0x2F8F5, 'M', u'殺'), - (0x2F8F6, 'M', u'殻'), - (0x2F8F7, 'M', u'𣪍'), - (0x2F8F8, 'M', u'𡴋'), - (0x2F8F9, 'M', u'𣫺'), - (0x2F8FA, 'M', u'汎'), - (0x2F8FB, 'M', u'𣲼'), - (0x2F8FC, 'M', u'沿'), - (0x2F8FD, 'M', u'泍'), - (0x2F8FE, 'M', u'汧'), - (0x2F8FF, 'M', u'洖'), - (0x2F900, 'M', u'派'), - (0x2F901, 'M', u'海'), - (0x2F902, 'M', u'流'), - (0x2F903, 'M', u'浩'), - (0x2F904, 'M', u'浸'), - (0x2F905, 'M', u'涅'), - (0x2F906, 'M', u'𣴞'), - (0x2F907, 'M', u'洴'), - (0x2F908, 'M', u'港'), - (0x2F909, 'M', u'湮'), - (0x2F90A, 'M', u'㴳'), - (0x2F90B, 'M', u'滋'), - (0x2F90C, 'M', u'滇'), - (0x2F90D, 'M', u'𣻑'), - (0x2F90E, 'M', u'淹'), - (0x2F90F, 'M', u'潮'), - (0x2F910, 'M', u'𣽞'), - (0x2F911, 'M', u'𣾎'), - (0x2F912, 'M', u'濆'), - (0x2F913, 'M', u'瀹'), - (0x2F914, 'M', u'瀞'), - (0x2F915, 'M', u'瀛'), - (0x2F916, 'M', u'㶖'), - (0x2F917, 'M', u'灊'), - (0x2F918, 'M', u'災'), - ] - -def _seg_70(): - return [ - (0x2F919, 'M', u'灷'), - (0x2F91A, 'M', u'炭'), - (0x2F91B, 'M', u'𠔥'), - (0x2F91C, 'M', u'煅'), - (0x2F91D, 'M', u'𤉣'), - (0x2F91E, 'M', u'熜'), - (0x2F91F, 'X'), - (0x2F920, 'M', u'爨'), - (0x2F921, 'M', u'爵'), - (0x2F922, 'M', u'牐'), - (0x2F923, 'M', u'𤘈'), - (0x2F924, 'M', u'犀'), - (0x2F925, 'M', u'犕'), - (0x2F926, 'M', u'𤜵'), - (0x2F927, 'M', u'𤠔'), - (0x2F928, 'M', u'獺'), - (0x2F929, 'M', u'王'), - (0x2F92A, 'M', u'㺬'), - (0x2F92B, 'M', u'玥'), - (0x2F92C, 'M', u'㺸'), - (0x2F92E, 'M', u'瑇'), - (0x2F92F, 'M', u'瑜'), - (0x2F930, 'M', u'瑱'), - (0x2F931, 'M', u'璅'), - (0x2F932, 'M', u'瓊'), - (0x2F933, 'M', u'㼛'), - (0x2F934, 'M', u'甤'), - (0x2F935, 'M', u'𤰶'), - (0x2F936, 'M', u'甾'), - (0x2F937, 'M', u'𤲒'), - (0x2F938, 'M', u'異'), - (0x2F939, 'M', u'𢆟'), - (0x2F93A, 'M', u'瘐'), - (0x2F93B, 'M', u'𤾡'), - (0x2F93C, 'M', u'𤾸'), - (0x2F93D, 'M', u'𥁄'), - (0x2F93E, 'M', u'㿼'), - (0x2F93F, 'M', u'䀈'), - (0x2F940, 'M', u'直'), - (0x2F941, 'M', u'𥃳'), - (0x2F942, 'M', u'𥃲'), - (0x2F943, 'M', u'𥄙'), - (0x2F944, 'M', u'𥄳'), - (0x2F945, 'M', u'眞'), - (0x2F946, 'M', u'真'), - (0x2F948, 'M', u'睊'), - (0x2F949, 'M', u'䀹'), - (0x2F94A, 'M', u'瞋'), - (0x2F94B, 'M', u'䁆'), - (0x2F94C, 'M', u'䂖'), - (0x2F94D, 'M', u'𥐝'), - (0x2F94E, 'M', u'硎'), - (0x2F94F, 'M', u'碌'), - (0x2F950, 'M', u'磌'), - (0x2F951, 'M', u'䃣'), - (0x2F952, 'M', u'𥘦'), - (0x2F953, 'M', u'祖'), - (0x2F954, 'M', u'𥚚'), - (0x2F955, 'M', u'𥛅'), - (0x2F956, 'M', u'福'), - (0x2F957, 'M', u'秫'), - (0x2F958, 'M', u'䄯'), - (0x2F959, 'M', u'穀'), - (0x2F95A, 'M', u'穊'), - (0x2F95B, 'M', u'穏'), - (0x2F95C, 'M', u'𥥼'), - (0x2F95D, 'M', u'𥪧'), - (0x2F95F, 'X'), - (0x2F960, 'M', u'䈂'), - (0x2F961, 'M', u'𥮫'), - (0x2F962, 'M', u'篆'), - (0x2F963, 'M', u'築'), - (0x2F964, 'M', u'䈧'), - (0x2F965, 'M', u'𥲀'), - (0x2F966, 'M', u'糒'), - (0x2F967, 'M', u'䊠'), - (0x2F968, 'M', u'糨'), - (0x2F969, 'M', u'糣'), - (0x2F96A, 'M', u'紀'), - (0x2F96B, 'M', u'𥾆'), - (0x2F96C, 'M', u'絣'), - (0x2F96D, 'M', u'䌁'), - (0x2F96E, 'M', u'緇'), - (0x2F96F, 'M', u'縂'), - (0x2F970, 'M', u'繅'), - (0x2F971, 'M', u'䌴'), - (0x2F972, 'M', u'𦈨'), - (0x2F973, 'M', u'𦉇'), - (0x2F974, 'M', u'䍙'), - (0x2F975, 'M', u'𦋙'), - (0x2F976, 'M', u'罺'), - (0x2F977, 'M', u'𦌾'), - (0x2F978, 'M', u'羕'), - (0x2F979, 'M', u'翺'), - (0x2F97A, 'M', u'者'), - (0x2F97B, 'M', u'𦓚'), - (0x2F97C, 'M', u'𦔣'), - (0x2F97D, 'M', u'聠'), - (0x2F97E, 'M', u'𦖨'), - (0x2F97F, 'M', u'聰'), - ] - -def _seg_71(): - return [ - (0x2F980, 'M', u'𣍟'), - (0x2F981, 'M', u'䏕'), - (0x2F982, 'M', u'育'), - (0x2F983, 'M', u'脃'), - (0x2F984, 'M', u'䐋'), - (0x2F985, 'M', u'脾'), - (0x2F986, 'M', u'媵'), - (0x2F987, 'M', u'𦞧'), - (0x2F988, 'M', u'𦞵'), - (0x2F989, 'M', u'𣎓'), - (0x2F98A, 'M', u'𣎜'), - (0x2F98B, 'M', u'舁'), - (0x2F98C, 'M', u'舄'), - (0x2F98D, 'M', u'辞'), - (0x2F98E, 'M', u'䑫'), - (0x2F98F, 'M', u'芑'), - (0x2F990, 'M', u'芋'), - (0x2F991, 'M', u'芝'), - (0x2F992, 'M', u'劳'), - (0x2F993, 'M', u'花'), - (0x2F994, 'M', u'芳'), - (0x2F995, 'M', u'芽'), - (0x2F996, 'M', u'苦'), - (0x2F997, 'M', u'𦬼'), - (0x2F998, 'M', u'若'), - (0x2F999, 'M', u'茝'), - (0x2F99A, 'M', u'荣'), - (0x2F99B, 'M', u'莭'), - (0x2F99C, 'M', u'茣'), - (0x2F99D, 'M', u'莽'), - (0x2F99E, 'M', u'菧'), - (0x2F99F, 'M', u'著'), - (0x2F9A0, 'M', u'荓'), - (0x2F9A1, 'M', u'菊'), - (0x2F9A2, 'M', u'菌'), - (0x2F9A3, 'M', u'菜'), - (0x2F9A4, 'M', u'𦰶'), - (0x2F9A5, 'M', u'𦵫'), - (0x2F9A6, 'M', u'𦳕'), - (0x2F9A7, 'M', u'䔫'), - (0x2F9A8, 'M', u'蓱'), - (0x2F9A9, 'M', u'蓳'), - (0x2F9AA, 'M', u'蔖'), - (0x2F9AB, 'M', u'𧏊'), - (0x2F9AC, 'M', u'蕤'), - (0x2F9AD, 'M', u'𦼬'), - (0x2F9AE, 'M', u'䕝'), - (0x2F9AF, 'M', u'䕡'), - (0x2F9B0, 'M', u'𦾱'), - (0x2F9B1, 'M', u'𧃒'), - (0x2F9B2, 'M', u'䕫'), - (0x2F9B3, 'M', u'虐'), - (0x2F9B4, 'M', u'虜'), - (0x2F9B5, 'M', u'虧'), - (0x2F9B6, 'M', u'虩'), - (0x2F9B7, 'M', u'蚩'), - (0x2F9B8, 'M', u'蚈'), - (0x2F9B9, 'M', u'蜎'), - (0x2F9BA, 'M', u'蛢'), - (0x2F9BB, 'M', u'蝹'), - (0x2F9BC, 'M', u'蜨'), - (0x2F9BD, 'M', u'蝫'), - (0x2F9BE, 'M', u'螆'), - (0x2F9BF, 'X'), - (0x2F9C0, 'M', u'蟡'), - (0x2F9C1, 'M', u'蠁'), - (0x2F9C2, 'M', u'䗹'), - (0x2F9C3, 'M', u'衠'), - (0x2F9C4, 'M', u'衣'), - (0x2F9C5, 'M', u'𧙧'), - (0x2F9C6, 'M', u'裗'), - (0x2F9C7, 'M', u'裞'), - (0x2F9C8, 'M', u'䘵'), - (0x2F9C9, 'M', u'裺'), - (0x2F9CA, 'M', u'㒻'), - (0x2F9CB, 'M', u'𧢮'), - (0x2F9CC, 'M', u'𧥦'), - (0x2F9CD, 'M', u'䚾'), - (0x2F9CE, 'M', u'䛇'), - (0x2F9CF, 'M', u'誠'), - (0x2F9D0, 'M', u'諭'), - (0x2F9D1, 'M', u'變'), - (0x2F9D2, 'M', u'豕'), - (0x2F9D3, 'M', u'𧲨'), - (0x2F9D4, 'M', u'貫'), - (0x2F9D5, 'M', u'賁'), - (0x2F9D6, 'M', u'贛'), - (0x2F9D7, 'M', u'起'), - (0x2F9D8, 'M', u'𧼯'), - (0x2F9D9, 'M', u'𠠄'), - (0x2F9DA, 'M', u'跋'), - (0x2F9DB, 'M', u'趼'), - (0x2F9DC, 'M', u'跰'), - (0x2F9DD, 'M', u'𠣞'), - (0x2F9DE, 'M', u'軔'), - (0x2F9DF, 'M', u'輸'), - (0x2F9E0, 'M', u'𨗒'), - (0x2F9E1, 'M', u'𨗭'), - (0x2F9E2, 'M', u'邔'), - (0x2F9E3, 'M', u'郱'), - ] - -def _seg_72(): - return [ - (0x2F9E4, 'M', u'鄑'), - (0x2F9E5, 'M', u'𨜮'), - (0x2F9E6, 'M', u'鄛'), - (0x2F9E7, 'M', u'鈸'), - (0x2F9E8, 'M', u'鋗'), - (0x2F9E9, 'M', u'鋘'), - (0x2F9EA, 'M', u'鉼'), - (0x2F9EB, 'M', u'鏹'), - (0x2F9EC, 'M', u'鐕'), - (0x2F9ED, 'M', u'𨯺'), - (0x2F9EE, 'M', u'開'), - (0x2F9EF, 'M', u'䦕'), - (0x2F9F0, 'M', u'閷'), - (0x2F9F1, 'M', u'𨵷'), - (0x2F9F2, 'M', u'䧦'), - (0x2F9F3, 'M', u'雃'), - (0x2F9F4, 'M', u'嶲'), - (0x2F9F5, 'M', u'霣'), - (0x2F9F6, 'M', u'𩅅'), - (0x2F9F7, 'M', u'𩈚'), - (0x2F9F8, 'M', u'䩮'), - (0x2F9F9, 'M', u'䩶'), - (0x2F9FA, 'M', u'韠'), - (0x2F9FB, 'M', u'𩐊'), - (0x2F9FC, 'M', u'䪲'), - (0x2F9FD, 'M', u'𩒖'), - (0x2F9FE, 'M', u'頋'), - (0x2FA00, 'M', u'頩'), - (0x2FA01, 'M', u'𩖶'), - (0x2FA02, 'M', u'飢'), - (0x2FA03, 'M', u'䬳'), - (0x2FA04, 'M', u'餩'), - (0x2FA05, 'M', u'馧'), - (0x2FA06, 'M', u'駂'), - (0x2FA07, 'M', u'駾'), - (0x2FA08, 'M', u'䯎'), - (0x2FA09, 'M', u'𩬰'), - (0x2FA0A, 'M', u'鬒'), - (0x2FA0B, 'M', u'鱀'), - (0x2FA0C, 'M', u'鳽'), - (0x2FA0D, 'M', u'䳎'), - (0x2FA0E, 'M', u'䳭'), - (0x2FA0F, 'M', u'鵧'), - (0x2FA10, 'M', u'𪃎'), - (0x2FA11, 'M', u'䳸'), - (0x2FA12, 'M', u'𪄅'), - (0x2FA13, 'M', u'𪈎'), - (0x2FA14, 'M', u'𪊑'), - (0x2FA15, 'M', u'麻'), - (0x2FA16, 'M', u'䵖'), - (0x2FA17, 'M', u'黹'), - (0x2FA18, 'M', u'黾'), - (0x2FA19, 'M', u'鼅'), - (0x2FA1A, 'M', u'鼏'), - (0x2FA1B, 'M', u'鼖'), - (0x2FA1C, 'M', u'鼻'), - (0x2FA1D, 'M', u'𪘀'), - (0x2FA1E, 'X'), - (0xE0100, 'I'), - (0xE01F0, 'X'), - ] - -uts46data = tuple( - _seg_0() - + _seg_1() - + _seg_2() - + _seg_3() - + _seg_4() - + _seg_5() - + _seg_6() - + _seg_7() - + _seg_8() - + _seg_9() - + _seg_10() - + _seg_11() - + _seg_12() - + _seg_13() - + _seg_14() - + _seg_15() - + _seg_16() - + _seg_17() - + _seg_18() - + _seg_19() - + _seg_20() - + _seg_21() - + _seg_22() - + _seg_23() - + _seg_24() - + _seg_25() - + _seg_26() - + _seg_27() - + _seg_28() - + _seg_29() - + _seg_30() - + _seg_31() - + _seg_32() - + _seg_33() - + _seg_34() - + _seg_35() - + _seg_36() - + _seg_37() - + _seg_38() - + _seg_39() - + _seg_40() - + _seg_41() - + _seg_42() - + _seg_43() - + _seg_44() - + _seg_45() - + _seg_46() - + _seg_47() - + _seg_48() - + _seg_49() - + _seg_50() - + _seg_51() - + _seg_52() - + _seg_53() - + _seg_54() - + _seg_55() - + _seg_56() - + _seg_57() - + _seg_58() - + _seg_59() - + _seg_60() - + _seg_61() - + _seg_62() - + _seg_63() - + _seg_64() - + _seg_65() - + _seg_66() - + _seg_67() - + _seg_68() - + _seg_69() - + _seg_70() - + _seg_71() - + _seg_72() -) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/ipaddress.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/ipaddress.py deleted file mode 100644 index 6da8d93..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/ipaddress.py +++ /dev/null @@ -1,2419 +0,0 @@ -# Copyright 2007 Google Inc. -# Licensed to PSF under a Contributor Agreement. - -"""A fast, lightweight IPv4/IPv6 manipulation library in Python. - -This library is used to create/poke/manipulate IPv4 and IPv6 addresses -and networks. - -""" - -from __future__ import unicode_literals - - -import itertools -import struct - -__version__ = '1.0.19' - -# Compatibility functions -_compat_int_types = (int,) -try: - _compat_int_types = (int, long) -except NameError: - pass -try: - _compat_str = unicode -except NameError: - _compat_str = str - assert bytes != str -if b'\0'[0] == 0: # Python 3 semantics - def _compat_bytes_to_byte_vals(byt): - return byt -else: - def _compat_bytes_to_byte_vals(byt): - return [struct.unpack(b'!B', b)[0] for b in byt] -try: - _compat_int_from_byte_vals = int.from_bytes -except AttributeError: - def _compat_int_from_byte_vals(bytvals, endianess): - assert endianess == 'big' - res = 0 - for bv in bytvals: - assert isinstance(bv, _compat_int_types) - res = (res << 8) + bv - return res - - -def _compat_to_bytes(intval, length, endianess): - assert isinstance(intval, _compat_int_types) - assert endianess == 'big' - if length == 4: - if intval < 0 or intval >= 2 ** 32: - raise struct.error("integer out of range for 'I' format code") - return struct.pack(b'!I', intval) - elif length == 16: - if intval < 0 or intval >= 2 ** 128: - raise struct.error("integer out of range for 'QQ' format code") - return struct.pack(b'!QQ', intval >> 64, intval & 0xffffffffffffffff) - else: - raise NotImplementedError() - - -if hasattr(int, 'bit_length'): - # Not int.bit_length , since that won't work in 2.7 where long exists - def _compat_bit_length(i): - return i.bit_length() -else: - def _compat_bit_length(i): - for res in itertools.count(): - if i >> res == 0: - return res - - -def _compat_range(start, end, step=1): - assert step > 0 - i = start - while i < end: - yield i - i += step - - -class _TotalOrderingMixin(object): - __slots__ = () - - # Helper that derives the other comparison operations from - # __lt__ and __eq__ - # We avoid functools.total_ordering because it doesn't handle - # NotImplemented correctly yet (http://bugs.python.org/issue10042) - def __eq__(self, other): - raise NotImplementedError - - def __ne__(self, other): - equal = self.__eq__(other) - if equal is NotImplemented: - return NotImplemented - return not equal - - def __lt__(self, other): - raise NotImplementedError - - def __le__(self, other): - less = self.__lt__(other) - if less is NotImplemented or not less: - return self.__eq__(other) - return less - - def __gt__(self, other): - less = self.__lt__(other) - if less is NotImplemented: - return NotImplemented - equal = self.__eq__(other) - if equal is NotImplemented: - return NotImplemented - return not (less or equal) - - def __ge__(self, other): - less = self.__lt__(other) - if less is NotImplemented: - return NotImplemented - return not less - - -IPV4LENGTH = 32 -IPV6LENGTH = 128 - - -class AddressValueError(ValueError): - """A Value Error related to the address.""" - - -class NetmaskValueError(ValueError): - """A Value Error related to the netmask.""" - - -def ip_address(address): - """Take an IP string/int and return an object of the correct type. - - Args: - address: A string or integer, the IP address. Either IPv4 or - IPv6 addresses may be supplied; integers less than 2**32 will - be considered to be IPv4 by default. - - Returns: - An IPv4Address or IPv6Address object. - - Raises: - ValueError: if the *address* passed isn't either a v4 or a v6 - address - - """ - try: - return IPv4Address(address) - except (AddressValueError, NetmaskValueError): - pass - - try: - return IPv6Address(address) - except (AddressValueError, NetmaskValueError): - pass - - if isinstance(address, bytes): - raise AddressValueError( - '%r does not appear to be an IPv4 or IPv6 address. ' - 'Did you pass in a bytes (str in Python 2) instead of' - ' a unicode object?' % address) - - raise ValueError('%r does not appear to be an IPv4 or IPv6 address' % - address) - - -def ip_network(address, strict=True): - """Take an IP string/int and return an object of the correct type. - - Args: - address: A string or integer, the IP network. Either IPv4 or - IPv6 networks may be supplied; integers less than 2**32 will - be considered to be IPv4 by default. - - Returns: - An IPv4Network or IPv6Network object. - - Raises: - ValueError: if the string passed isn't either a v4 or a v6 - address. Or if the network has host bits set. - - """ - try: - return IPv4Network(address, strict) - except (AddressValueError, NetmaskValueError): - pass - - try: - return IPv6Network(address, strict) - except (AddressValueError, NetmaskValueError): - pass - - if isinstance(address, bytes): - raise AddressValueError( - '%r does not appear to be an IPv4 or IPv6 network. ' - 'Did you pass in a bytes (str in Python 2) instead of' - ' a unicode object?' % address) - - raise ValueError('%r does not appear to be an IPv4 or IPv6 network' % - address) - - -def ip_interface(address): - """Take an IP string/int and return an object of the correct type. - - Args: - address: A string or integer, the IP address. Either IPv4 or - IPv6 addresses may be supplied; integers less than 2**32 will - be considered to be IPv4 by default. - - Returns: - An IPv4Interface or IPv6Interface object. - - Raises: - ValueError: if the string passed isn't either a v4 or a v6 - address. - - Notes: - The IPv?Interface classes describe an Address on a particular - Network, so they're basically a combination of both the Address - and Network classes. - - """ - try: - return IPv4Interface(address) - except (AddressValueError, NetmaskValueError): - pass - - try: - return IPv6Interface(address) - except (AddressValueError, NetmaskValueError): - pass - - raise ValueError('%r does not appear to be an IPv4 or IPv6 interface' % - address) - - -def v4_int_to_packed(address): - """Represent an address as 4 packed bytes in network (big-endian) order. - - Args: - address: An integer representation of an IPv4 IP address. - - Returns: - The integer address packed as 4 bytes in network (big-endian) order. - - Raises: - ValueError: If the integer is negative or too large to be an - IPv4 IP address. - - """ - try: - return _compat_to_bytes(address, 4, 'big') - except (struct.error, OverflowError): - raise ValueError("Address negative or too large for IPv4") - - -def v6_int_to_packed(address): - """Represent an address as 16 packed bytes in network (big-endian) order. - - Args: - address: An integer representation of an IPv6 IP address. - - Returns: - The integer address packed as 16 bytes in network (big-endian) order. - - """ - try: - return _compat_to_bytes(address, 16, 'big') - except (struct.error, OverflowError): - raise ValueError("Address negative or too large for IPv6") - - -def _split_optional_netmask(address): - """Helper to split the netmask and raise AddressValueError if needed""" - addr = _compat_str(address).split('/') - if len(addr) > 2: - raise AddressValueError("Only one '/' permitted in %r" % address) - return addr - - -def _find_address_range(addresses): - """Find a sequence of sorted deduplicated IPv#Address. - - Args: - addresses: a list of IPv#Address objects. - - Yields: - A tuple containing the first and last IP addresses in the sequence. - - """ - it = iter(addresses) - first = last = next(it) - for ip in it: - if ip._ip != last._ip + 1: - yield first, last - first = ip - last = ip - yield first, last - - -def _count_righthand_zero_bits(number, bits): - """Count the number of zero bits on the right hand side. - - Args: - number: an integer. - bits: maximum number of bits to count. - - Returns: - The number of zero bits on the right hand side of the number. - - """ - if number == 0: - return bits - return min(bits, _compat_bit_length(~number & (number - 1))) - - -def summarize_address_range(first, last): - """Summarize a network range given the first and last IP addresses. - - Example: - >>> list(summarize_address_range(IPv4Address('192.0.2.0'), - ... IPv4Address('192.0.2.130'))) - ... #doctest: +NORMALIZE_WHITESPACE - [IPv4Network('192.0.2.0/25'), IPv4Network('192.0.2.128/31'), - IPv4Network('192.0.2.130/32')] - - Args: - first: the first IPv4Address or IPv6Address in the range. - last: the last IPv4Address or IPv6Address in the range. - - Returns: - An iterator of the summarized IPv(4|6) network objects. - - Raise: - TypeError: - If the first and last objects are not IP addresses. - If the first and last objects are not the same version. - ValueError: - If the last object is not greater than the first. - If the version of the first address is not 4 or 6. - - """ - if (not (isinstance(first, _BaseAddress) and - isinstance(last, _BaseAddress))): - raise TypeError('first and last must be IP addresses, not networks') - if first.version != last.version: - raise TypeError("%s and %s are not of the same version" % ( - first, last)) - if first > last: - raise ValueError('last IP address must be greater than first') - - if first.version == 4: - ip = IPv4Network - elif first.version == 6: - ip = IPv6Network - else: - raise ValueError('unknown IP version') - - ip_bits = first._max_prefixlen - first_int = first._ip - last_int = last._ip - while first_int <= last_int: - nbits = min(_count_righthand_zero_bits(first_int, ip_bits), - _compat_bit_length(last_int - first_int + 1) - 1) - net = ip((first_int, ip_bits - nbits)) - yield net - first_int += 1 << nbits - if first_int - 1 == ip._ALL_ONES: - break - - -def _collapse_addresses_internal(addresses): - """Loops through the addresses, collapsing concurrent netblocks. - - Example: - - ip1 = IPv4Network('192.0.2.0/26') - ip2 = IPv4Network('192.0.2.64/26') - ip3 = IPv4Network('192.0.2.128/26') - ip4 = IPv4Network('192.0.2.192/26') - - _collapse_addresses_internal([ip1, ip2, ip3, ip4]) -> - [IPv4Network('192.0.2.0/24')] - - This shouldn't be called directly; it is called via - collapse_addresses([]). - - Args: - addresses: A list of IPv4Network's or IPv6Network's - - Returns: - A list of IPv4Network's or IPv6Network's depending on what we were - passed. - - """ - # First merge - to_merge = list(addresses) - subnets = {} - while to_merge: - net = to_merge.pop() - supernet = net.supernet() - existing = subnets.get(supernet) - if existing is None: - subnets[supernet] = net - elif existing != net: - # Merge consecutive subnets - del subnets[supernet] - to_merge.append(supernet) - # Then iterate over resulting networks, skipping subsumed subnets - last = None - for net in sorted(subnets.values()): - if last is not None: - # Since they are sorted, - # last.network_address <= net.network_address is a given. - if last.broadcast_address >= net.broadcast_address: - continue - yield net - last = net - - -def collapse_addresses(addresses): - """Collapse a list of IP objects. - - Example: - collapse_addresses([IPv4Network('192.0.2.0/25'), - IPv4Network('192.0.2.128/25')]) -> - [IPv4Network('192.0.2.0/24')] - - Args: - addresses: An iterator of IPv4Network or IPv6Network objects. - - Returns: - An iterator of the collapsed IPv(4|6)Network objects. - - Raises: - TypeError: If passed a list of mixed version objects. - - """ - addrs = [] - ips = [] - nets = [] - - # split IP addresses and networks - for ip in addresses: - if isinstance(ip, _BaseAddress): - if ips and ips[-1]._version != ip._version: - raise TypeError("%s and %s are not of the same version" % ( - ip, ips[-1])) - ips.append(ip) - elif ip._prefixlen == ip._max_prefixlen: - if ips and ips[-1]._version != ip._version: - raise TypeError("%s and %s are not of the same version" % ( - ip, ips[-1])) - try: - ips.append(ip.ip) - except AttributeError: - ips.append(ip.network_address) - else: - if nets and nets[-1]._version != ip._version: - raise TypeError("%s and %s are not of the same version" % ( - ip, nets[-1])) - nets.append(ip) - - # sort and dedup - ips = sorted(set(ips)) - - # find consecutive address ranges in the sorted sequence and summarize them - if ips: - for first, last in _find_address_range(ips): - addrs.extend(summarize_address_range(first, last)) - - return _collapse_addresses_internal(addrs + nets) - - -def get_mixed_type_key(obj): - """Return a key suitable for sorting between networks and addresses. - - Address and Network objects are not sortable by default; they're - fundamentally different so the expression - - IPv4Address('192.0.2.0') <= IPv4Network('192.0.2.0/24') - - doesn't make any sense. There are some times however, where you may wish - to have ipaddress sort these for you anyway. If you need to do this, you - can use this function as the key= argument to sorted(). - - Args: - obj: either a Network or Address object. - Returns: - appropriate key. - - """ - if isinstance(obj, _BaseNetwork): - return obj._get_networks_key() - elif isinstance(obj, _BaseAddress): - return obj._get_address_key() - return NotImplemented - - -class _IPAddressBase(_TotalOrderingMixin): - - """The mother class.""" - - __slots__ = () - - @property - def exploded(self): - """Return the longhand version of the IP address as a string.""" - return self._explode_shorthand_ip_string() - - @property - def compressed(self): - """Return the shorthand version of the IP address as a string.""" - return _compat_str(self) - - @property - def reverse_pointer(self): - """The name of the reverse DNS pointer for the IP address, e.g.: - >>> ipaddress.ip_address("127.0.0.1").reverse_pointer - '1.0.0.127.in-addr.arpa' - >>> ipaddress.ip_address("2001:db8::1").reverse_pointer - '1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa' - - """ - return self._reverse_pointer() - - @property - def version(self): - msg = '%200s has no version specified' % (type(self),) - raise NotImplementedError(msg) - - def _check_int_address(self, address): - if address < 0: - msg = "%d (< 0) is not permitted as an IPv%d address" - raise AddressValueError(msg % (address, self._version)) - if address > self._ALL_ONES: - msg = "%d (>= 2**%d) is not permitted as an IPv%d address" - raise AddressValueError(msg % (address, self._max_prefixlen, - self._version)) - - def _check_packed_address(self, address, expected_len): - address_len = len(address) - if address_len != expected_len: - msg = ( - '%r (len %d != %d) is not permitted as an IPv%d address. ' - 'Did you pass in a bytes (str in Python 2) instead of' - ' a unicode object?') - raise AddressValueError(msg % (address, address_len, - expected_len, self._version)) - - @classmethod - def _ip_int_from_prefix(cls, prefixlen): - """Turn the prefix length into a bitwise netmask - - Args: - prefixlen: An integer, the prefix length. - - Returns: - An integer. - - """ - return cls._ALL_ONES ^ (cls._ALL_ONES >> prefixlen) - - @classmethod - def _prefix_from_ip_int(cls, ip_int): - """Return prefix length from the bitwise netmask. - - Args: - ip_int: An integer, the netmask in expanded bitwise format - - Returns: - An integer, the prefix length. - - Raises: - ValueError: If the input intermingles zeroes & ones - """ - trailing_zeroes = _count_righthand_zero_bits(ip_int, - cls._max_prefixlen) - prefixlen = cls._max_prefixlen - trailing_zeroes - leading_ones = ip_int >> trailing_zeroes - all_ones = (1 << prefixlen) - 1 - if leading_ones != all_ones: - byteslen = cls._max_prefixlen // 8 - details = _compat_to_bytes(ip_int, byteslen, 'big') - msg = 'Netmask pattern %r mixes zeroes & ones' - raise ValueError(msg % details) - return prefixlen - - @classmethod - def _report_invalid_netmask(cls, netmask_str): - msg = '%r is not a valid netmask' % netmask_str - raise NetmaskValueError(msg) - - @classmethod - def _prefix_from_prefix_string(cls, prefixlen_str): - """Return prefix length from a numeric string - - Args: - prefixlen_str: The string to be converted - - Returns: - An integer, the prefix length. - - Raises: - NetmaskValueError: If the input is not a valid netmask - """ - # int allows a leading +/- as well as surrounding whitespace, - # so we ensure that isn't the case - if not _BaseV4._DECIMAL_DIGITS.issuperset(prefixlen_str): - cls._report_invalid_netmask(prefixlen_str) - try: - prefixlen = int(prefixlen_str) - except ValueError: - cls._report_invalid_netmask(prefixlen_str) - if not (0 <= prefixlen <= cls._max_prefixlen): - cls._report_invalid_netmask(prefixlen_str) - return prefixlen - - @classmethod - def _prefix_from_ip_string(cls, ip_str): - """Turn a netmask/hostmask string into a prefix length - - Args: - ip_str: The netmask/hostmask to be converted - - Returns: - An integer, the prefix length. - - Raises: - NetmaskValueError: If the input is not a valid netmask/hostmask - """ - # Parse the netmask/hostmask like an IP address. - try: - ip_int = cls._ip_int_from_string(ip_str) - except AddressValueError: - cls._report_invalid_netmask(ip_str) - - # Try matching a netmask (this would be /1*0*/ as a bitwise regexp). - # Note that the two ambiguous cases (all-ones and all-zeroes) are - # treated as netmasks. - try: - return cls._prefix_from_ip_int(ip_int) - except ValueError: - pass - - # Invert the bits, and try matching a /0+1+/ hostmask instead. - ip_int ^= cls._ALL_ONES - try: - return cls._prefix_from_ip_int(ip_int) - except ValueError: - cls._report_invalid_netmask(ip_str) - - def __reduce__(self): - return self.__class__, (_compat_str(self),) - - -class _BaseAddress(_IPAddressBase): - - """A generic IP object. - - This IP class contains the version independent methods which are - used by single IP addresses. - """ - - __slots__ = () - - def __int__(self): - return self._ip - - def __eq__(self, other): - try: - return (self._ip == other._ip and - self._version == other._version) - except AttributeError: - return NotImplemented - - def __lt__(self, other): - if not isinstance(other, _IPAddressBase): - return NotImplemented - if not isinstance(other, _BaseAddress): - raise TypeError('%s and %s are not of the same type' % ( - self, other)) - if self._version != other._version: - raise TypeError('%s and %s are not of the same version' % ( - self, other)) - if self._ip != other._ip: - return self._ip < other._ip - return False - - # Shorthand for Integer addition and subtraction. This is not - # meant to ever support addition/subtraction of addresses. - def __add__(self, other): - if not isinstance(other, _compat_int_types): - return NotImplemented - return self.__class__(int(self) + other) - - def __sub__(self, other): - if not isinstance(other, _compat_int_types): - return NotImplemented - return self.__class__(int(self) - other) - - def __repr__(self): - return '%s(%r)' % (self.__class__.__name__, _compat_str(self)) - - def __str__(self): - return _compat_str(self._string_from_ip_int(self._ip)) - - def __hash__(self): - return hash(hex(int(self._ip))) - - def _get_address_key(self): - return (self._version, self) - - def __reduce__(self): - return self.__class__, (self._ip,) - - -class _BaseNetwork(_IPAddressBase): - - """A generic IP network object. - - This IP class contains the version independent methods which are - used by networks. - - """ - def __init__(self, address): - self._cache = {} - - def __repr__(self): - return '%s(%r)' % (self.__class__.__name__, _compat_str(self)) - - def __str__(self): - return '%s/%d' % (self.network_address, self.prefixlen) - - def hosts(self): - """Generate Iterator over usable hosts in a network. - - This is like __iter__ except it doesn't return the network - or broadcast addresses. - - """ - network = int(self.network_address) - broadcast = int(self.broadcast_address) - for x in _compat_range(network + 1, broadcast): - yield self._address_class(x) - - def __iter__(self): - network = int(self.network_address) - broadcast = int(self.broadcast_address) - for x in _compat_range(network, broadcast + 1): - yield self._address_class(x) - - def __getitem__(self, n): - network = int(self.network_address) - broadcast = int(self.broadcast_address) - if n >= 0: - if network + n > broadcast: - raise IndexError('address out of range') - return self._address_class(network + n) - else: - n += 1 - if broadcast + n < network: - raise IndexError('address out of range') - return self._address_class(broadcast + n) - - def __lt__(self, other): - if not isinstance(other, _IPAddressBase): - return NotImplemented - if not isinstance(other, _BaseNetwork): - raise TypeError('%s and %s are not of the same type' % ( - self, other)) - if self._version != other._version: - raise TypeError('%s and %s are not of the same version' % ( - self, other)) - if self.network_address != other.network_address: - return self.network_address < other.network_address - if self.netmask != other.netmask: - return self.netmask < other.netmask - return False - - def __eq__(self, other): - try: - return (self._version == other._version and - self.network_address == other.network_address and - int(self.netmask) == int(other.netmask)) - except AttributeError: - return NotImplemented - - def __hash__(self): - return hash(int(self.network_address) ^ int(self.netmask)) - - def __contains__(self, other): - # always false if one is v4 and the other is v6. - if self._version != other._version: - return False - # dealing with another network. - if isinstance(other, _BaseNetwork): - return False - # dealing with another address - else: - # address - return (int(self.network_address) <= int(other._ip) <= - int(self.broadcast_address)) - - def overlaps(self, other): - """Tell if self is partly contained in other.""" - return self.network_address in other or ( - self.broadcast_address in other or ( - other.network_address in self or ( - other.broadcast_address in self))) - - @property - def broadcast_address(self): - x = self._cache.get('broadcast_address') - if x is None: - x = self._address_class(int(self.network_address) | - int(self.hostmask)) - self._cache['broadcast_address'] = x - return x - - @property - def hostmask(self): - x = self._cache.get('hostmask') - if x is None: - x = self._address_class(int(self.netmask) ^ self._ALL_ONES) - self._cache['hostmask'] = x - return x - - @property - def with_prefixlen(self): - return '%s/%d' % (self.network_address, self._prefixlen) - - @property - def with_netmask(self): - return '%s/%s' % (self.network_address, self.netmask) - - @property - def with_hostmask(self): - return '%s/%s' % (self.network_address, self.hostmask) - - @property - def num_addresses(self): - """Number of hosts in the current subnet.""" - return int(self.broadcast_address) - int(self.network_address) + 1 - - @property - def _address_class(self): - # Returning bare address objects (rather than interfaces) allows for - # more consistent behaviour across the network address, broadcast - # address and individual host addresses. - msg = '%200s has no associated address class' % (type(self),) - raise NotImplementedError(msg) - - @property - def prefixlen(self): - return self._prefixlen - - def address_exclude(self, other): - """Remove an address from a larger block. - - For example: - - addr1 = ip_network('192.0.2.0/28') - addr2 = ip_network('192.0.2.1/32') - list(addr1.address_exclude(addr2)) = - [IPv4Network('192.0.2.0/32'), IPv4Network('192.0.2.2/31'), - IPv4Network('192.0.2.4/30'), IPv4Network('192.0.2.8/29')] - - or IPv6: - - addr1 = ip_network('2001:db8::1/32') - addr2 = ip_network('2001:db8::1/128') - list(addr1.address_exclude(addr2)) = - [ip_network('2001:db8::1/128'), - ip_network('2001:db8::2/127'), - ip_network('2001:db8::4/126'), - ip_network('2001:db8::8/125'), - ... - ip_network('2001:db8:8000::/33')] - - Args: - other: An IPv4Network or IPv6Network object of the same type. - - Returns: - An iterator of the IPv(4|6)Network objects which is self - minus other. - - Raises: - TypeError: If self and other are of differing address - versions, or if other is not a network object. - ValueError: If other is not completely contained by self. - - """ - if not self._version == other._version: - raise TypeError("%s and %s are not of the same version" % ( - self, other)) - - if not isinstance(other, _BaseNetwork): - raise TypeError("%s is not a network object" % other) - - if not other.subnet_of(self): - raise ValueError('%s not contained in %s' % (other, self)) - if other == self: - return - - # Make sure we're comparing the network of other. - other = other.__class__('%s/%s' % (other.network_address, - other.prefixlen)) - - s1, s2 = self.subnets() - while s1 != other and s2 != other: - if other.subnet_of(s1): - yield s2 - s1, s2 = s1.subnets() - elif other.subnet_of(s2): - yield s1 - s1, s2 = s2.subnets() - else: - # If we got here, there's a bug somewhere. - raise AssertionError('Error performing exclusion: ' - 's1: %s s2: %s other: %s' % - (s1, s2, other)) - if s1 == other: - yield s2 - elif s2 == other: - yield s1 - else: - # If we got here, there's a bug somewhere. - raise AssertionError('Error performing exclusion: ' - 's1: %s s2: %s other: %s' % - (s1, s2, other)) - - def compare_networks(self, other): - """Compare two IP objects. - - This is only concerned about the comparison of the integer - representation of the network addresses. This means that the - host bits aren't considered at all in this method. If you want - to compare host bits, you can easily enough do a - 'HostA._ip < HostB._ip' - - Args: - other: An IP object. - - Returns: - If the IP versions of self and other are the same, returns: - - -1 if self < other: - eg: IPv4Network('192.0.2.0/25') < IPv4Network('192.0.2.128/25') - IPv6Network('2001:db8::1000/124') < - IPv6Network('2001:db8::2000/124') - 0 if self == other - eg: IPv4Network('192.0.2.0/24') == IPv4Network('192.0.2.0/24') - IPv6Network('2001:db8::1000/124') == - IPv6Network('2001:db8::1000/124') - 1 if self > other - eg: IPv4Network('192.0.2.128/25') > IPv4Network('192.0.2.0/25') - IPv6Network('2001:db8::2000/124') > - IPv6Network('2001:db8::1000/124') - - Raises: - TypeError if the IP versions are different. - - """ - # does this need to raise a ValueError? - if self._version != other._version: - raise TypeError('%s and %s are not of the same type' % ( - self, other)) - # self._version == other._version below here: - if self.network_address < other.network_address: - return -1 - if self.network_address > other.network_address: - return 1 - # self.network_address == other.network_address below here: - if self.netmask < other.netmask: - return -1 - if self.netmask > other.netmask: - return 1 - return 0 - - def _get_networks_key(self): - """Network-only key function. - - Returns an object that identifies this address' network and - netmask. This function is a suitable "key" argument for sorted() - and list.sort(). - - """ - return (self._version, self.network_address, self.netmask) - - def subnets(self, prefixlen_diff=1, new_prefix=None): - """The subnets which join to make the current subnet. - - In the case that self contains only one IP - (self._prefixlen == 32 for IPv4 or self._prefixlen == 128 - for IPv6), yield an iterator with just ourself. - - Args: - prefixlen_diff: An integer, the amount the prefix length - should be increased by. This should not be set if - new_prefix is also set. - new_prefix: The desired new prefix length. This must be a - larger number (smaller prefix) than the existing prefix. - This should not be set if prefixlen_diff is also set. - - Returns: - An iterator of IPv(4|6) objects. - - Raises: - ValueError: The prefixlen_diff is too small or too large. - OR - prefixlen_diff and new_prefix are both set or new_prefix - is a smaller number than the current prefix (smaller - number means a larger network) - - """ - if self._prefixlen == self._max_prefixlen: - yield self - return - - if new_prefix is not None: - if new_prefix < self._prefixlen: - raise ValueError('new prefix must be longer') - if prefixlen_diff != 1: - raise ValueError('cannot set prefixlen_diff and new_prefix') - prefixlen_diff = new_prefix - self._prefixlen - - if prefixlen_diff < 0: - raise ValueError('prefix length diff must be > 0') - new_prefixlen = self._prefixlen + prefixlen_diff - - if new_prefixlen > self._max_prefixlen: - raise ValueError( - 'prefix length diff %d is invalid for netblock %s' % ( - new_prefixlen, self)) - - start = int(self.network_address) - end = int(self.broadcast_address) + 1 - step = (int(self.hostmask) + 1) >> prefixlen_diff - for new_addr in _compat_range(start, end, step): - current = self.__class__((new_addr, new_prefixlen)) - yield current - - def supernet(self, prefixlen_diff=1, new_prefix=None): - """The supernet containing the current network. - - Args: - prefixlen_diff: An integer, the amount the prefix length of - the network should be decreased by. For example, given a - /24 network and a prefixlen_diff of 3, a supernet with a - /21 netmask is returned. - - Returns: - An IPv4 network object. - - Raises: - ValueError: If self.prefixlen - prefixlen_diff < 0. I.e., you have - a negative prefix length. - OR - If prefixlen_diff and new_prefix are both set or new_prefix is a - larger number than the current prefix (larger number means a - smaller network) - - """ - if self._prefixlen == 0: - return self - - if new_prefix is not None: - if new_prefix > self._prefixlen: - raise ValueError('new prefix must be shorter') - if prefixlen_diff != 1: - raise ValueError('cannot set prefixlen_diff and new_prefix') - prefixlen_diff = self._prefixlen - new_prefix - - new_prefixlen = self.prefixlen - prefixlen_diff - if new_prefixlen < 0: - raise ValueError( - 'current prefixlen is %d, cannot have a prefixlen_diff of %d' % - (self.prefixlen, prefixlen_diff)) - return self.__class__(( - int(self.network_address) & (int(self.netmask) << prefixlen_diff), - new_prefixlen)) - - @property - def is_multicast(self): - """Test if the address is reserved for multicast use. - - Returns: - A boolean, True if the address is a multicast address. - See RFC 2373 2.7 for details. - - """ - return (self.network_address.is_multicast and - self.broadcast_address.is_multicast) - - @staticmethod - def _is_subnet_of(a, b): - try: - # Always false if one is v4 and the other is v6. - if a._version != b._version: - raise TypeError("%s and %s are not of the same version" (a, b)) - return (b.network_address <= a.network_address and - b.broadcast_address >= a.broadcast_address) - except AttributeError: - raise TypeError("Unable to test subnet containment " - "between %s and %s" % (a, b)) - - def subnet_of(self, other): - """Return True if this network is a subnet of other.""" - return self._is_subnet_of(self, other) - - def supernet_of(self, other): - """Return True if this network is a supernet of other.""" - return self._is_subnet_of(other, self) - - @property - def is_reserved(self): - """Test if the address is otherwise IETF reserved. - - Returns: - A boolean, True if the address is within one of the - reserved IPv6 Network ranges. - - """ - return (self.network_address.is_reserved and - self.broadcast_address.is_reserved) - - @property - def is_link_local(self): - """Test if the address is reserved for link-local. - - Returns: - A boolean, True if the address is reserved per RFC 4291. - - """ - return (self.network_address.is_link_local and - self.broadcast_address.is_link_local) - - @property - def is_private(self): - """Test if this address is allocated for private networks. - - Returns: - A boolean, True if the address is reserved per - iana-ipv4-special-registry or iana-ipv6-special-registry. - - """ - return (self.network_address.is_private and - self.broadcast_address.is_private) - - @property - def is_global(self): - """Test if this address is allocated for public networks. - - Returns: - A boolean, True if the address is not reserved per - iana-ipv4-special-registry or iana-ipv6-special-registry. - - """ - return not self.is_private - - @property - def is_unspecified(self): - """Test if the address is unspecified. - - Returns: - A boolean, True if this is the unspecified address as defined in - RFC 2373 2.5.2. - - """ - return (self.network_address.is_unspecified and - self.broadcast_address.is_unspecified) - - @property - def is_loopback(self): - """Test if the address is a loopback address. - - Returns: - A boolean, True if the address is a loopback address as defined in - RFC 2373 2.5.3. - - """ - return (self.network_address.is_loopback and - self.broadcast_address.is_loopback) - - -class _BaseV4(object): - - """Base IPv4 object. - - The following methods are used by IPv4 objects in both single IP - addresses and networks. - - """ - - __slots__ = () - _version = 4 - # Equivalent to 255.255.255.255 or 32 bits of 1's. - _ALL_ONES = (2 ** IPV4LENGTH) - 1 - _DECIMAL_DIGITS = frozenset('0123456789') - - # the valid octets for host and netmasks. only useful for IPv4. - _valid_mask_octets = frozenset([255, 254, 252, 248, 240, 224, 192, 128, 0]) - - _max_prefixlen = IPV4LENGTH - # There are only a handful of valid v4 netmasks, so we cache them all - # when constructed (see _make_netmask()). - _netmask_cache = {} - - def _explode_shorthand_ip_string(self): - return _compat_str(self) - - @classmethod - def _make_netmask(cls, arg): - """Make a (netmask, prefix_len) tuple from the given argument. - - Argument can be: - - an integer (the prefix length) - - a string representing the prefix length (e.g. "24") - - a string representing the prefix netmask (e.g. "255.255.255.0") - """ - if arg not in cls._netmask_cache: - if isinstance(arg, _compat_int_types): - prefixlen = arg - else: - try: - # Check for a netmask in prefix length form - prefixlen = cls._prefix_from_prefix_string(arg) - except NetmaskValueError: - # Check for a netmask or hostmask in dotted-quad form. - # This may raise NetmaskValueError. - prefixlen = cls._prefix_from_ip_string(arg) - netmask = IPv4Address(cls._ip_int_from_prefix(prefixlen)) - cls._netmask_cache[arg] = netmask, prefixlen - return cls._netmask_cache[arg] - - @classmethod - def _ip_int_from_string(cls, ip_str): - """Turn the given IP string into an integer for comparison. - - Args: - ip_str: A string, the IP ip_str. - - Returns: - The IP ip_str as an integer. - - Raises: - AddressValueError: if ip_str isn't a valid IPv4 Address. - - """ - if not ip_str: - raise AddressValueError('Address cannot be empty') - - octets = ip_str.split('.') - if len(octets) != 4: - raise AddressValueError("Expected 4 octets in %r" % ip_str) - - try: - return _compat_int_from_byte_vals( - map(cls._parse_octet, octets), 'big') - except ValueError as exc: - raise AddressValueError("%s in %r" % (exc, ip_str)) - - @classmethod - def _parse_octet(cls, octet_str): - """Convert a decimal octet into an integer. - - Args: - octet_str: A string, the number to parse. - - Returns: - The octet as an integer. - - Raises: - ValueError: if the octet isn't strictly a decimal from [0..255]. - - """ - if not octet_str: - raise ValueError("Empty octet not permitted") - # Whitelist the characters, since int() allows a lot of bizarre stuff. - if not cls._DECIMAL_DIGITS.issuperset(octet_str): - msg = "Only decimal digits permitted in %r" - raise ValueError(msg % octet_str) - # We do the length check second, since the invalid character error - # is likely to be more informative for the user - if len(octet_str) > 3: - msg = "At most 3 characters permitted in %r" - raise ValueError(msg % octet_str) - # Convert to integer (we know digits are legal) - octet_int = int(octet_str, 10) - # Any octets that look like they *might* be written in octal, - # and which don't look exactly the same in both octal and - # decimal are rejected as ambiguous - if octet_int > 7 and octet_str[0] == '0': - msg = "Ambiguous (octal/decimal) value in %r not permitted" - raise ValueError(msg % octet_str) - if octet_int > 255: - raise ValueError("Octet %d (> 255) not permitted" % octet_int) - return octet_int - - @classmethod - def _string_from_ip_int(cls, ip_int): - """Turns a 32-bit integer into dotted decimal notation. - - Args: - ip_int: An integer, the IP address. - - Returns: - The IP address as a string in dotted decimal notation. - - """ - return '.'.join(_compat_str(struct.unpack(b'!B', b)[0] - if isinstance(b, bytes) - else b) - for b in _compat_to_bytes(ip_int, 4, 'big')) - - def _is_hostmask(self, ip_str): - """Test if the IP string is a hostmask (rather than a netmask). - - Args: - ip_str: A string, the potential hostmask. - - Returns: - A boolean, True if the IP string is a hostmask. - - """ - bits = ip_str.split('.') - try: - parts = [x for x in map(int, bits) if x in self._valid_mask_octets] - except ValueError: - return False - if len(parts) != len(bits): - return False - if parts[0] < parts[-1]: - return True - return False - - def _reverse_pointer(self): - """Return the reverse DNS pointer name for the IPv4 address. - - This implements the method described in RFC1035 3.5. - - """ - reverse_octets = _compat_str(self).split('.')[::-1] - return '.'.join(reverse_octets) + '.in-addr.arpa' - - @property - def max_prefixlen(self): - return self._max_prefixlen - - @property - def version(self): - return self._version - - -class IPv4Address(_BaseV4, _BaseAddress): - - """Represent and manipulate single IPv4 Addresses.""" - - __slots__ = ('_ip', '__weakref__') - - def __init__(self, address): - - """ - Args: - address: A string or integer representing the IP - - Additionally, an integer can be passed, so - IPv4Address('192.0.2.1') == IPv4Address(3221225985). - or, more generally - IPv4Address(int(IPv4Address('192.0.2.1'))) == - IPv4Address('192.0.2.1') - - Raises: - AddressValueError: If ipaddress isn't a valid IPv4 address. - - """ - # Efficient constructor from integer. - if isinstance(address, _compat_int_types): - self._check_int_address(address) - self._ip = address - return - - # Constructing from a packed address - if isinstance(address, bytes): - self._check_packed_address(address, 4) - bvs = _compat_bytes_to_byte_vals(address) - self._ip = _compat_int_from_byte_vals(bvs, 'big') - return - - # Assume input argument to be string or any object representation - # which converts into a formatted IP string. - addr_str = _compat_str(address) - if '/' in addr_str: - raise AddressValueError("Unexpected '/' in %r" % address) - self._ip = self._ip_int_from_string(addr_str) - - @property - def packed(self): - """The binary representation of this address.""" - return v4_int_to_packed(self._ip) - - @property - def is_reserved(self): - """Test if the address is otherwise IETF reserved. - - Returns: - A boolean, True if the address is within the - reserved IPv4 Network range. - - """ - return self in self._constants._reserved_network - - @property - def is_private(self): - """Test if this address is allocated for private networks. - - Returns: - A boolean, True if the address is reserved per - iana-ipv4-special-registry. - - """ - return any(self in net for net in self._constants._private_networks) - - @property - def is_global(self): - return ( - self not in self._constants._public_network and - not self.is_private) - - @property - def is_multicast(self): - """Test if the address is reserved for multicast use. - - Returns: - A boolean, True if the address is multicast. - See RFC 3171 for details. - - """ - return self in self._constants._multicast_network - - @property - def is_unspecified(self): - """Test if the address is unspecified. - - Returns: - A boolean, True if this is the unspecified address as defined in - RFC 5735 3. - - """ - return self == self._constants._unspecified_address - - @property - def is_loopback(self): - """Test if the address is a loopback address. - - Returns: - A boolean, True if the address is a loopback per RFC 3330. - - """ - return self in self._constants._loopback_network - - @property - def is_link_local(self): - """Test if the address is reserved for link-local. - - Returns: - A boolean, True if the address is link-local per RFC 3927. - - """ - return self in self._constants._linklocal_network - - -class IPv4Interface(IPv4Address): - - def __init__(self, address): - if isinstance(address, (bytes, _compat_int_types)): - IPv4Address.__init__(self, address) - self.network = IPv4Network(self._ip) - self._prefixlen = self._max_prefixlen - return - - if isinstance(address, tuple): - IPv4Address.__init__(self, address[0]) - if len(address) > 1: - self._prefixlen = int(address[1]) - else: - self._prefixlen = self._max_prefixlen - - self.network = IPv4Network(address, strict=False) - self.netmask = self.network.netmask - self.hostmask = self.network.hostmask - return - - addr = _split_optional_netmask(address) - IPv4Address.__init__(self, addr[0]) - - self.network = IPv4Network(address, strict=False) - self._prefixlen = self.network._prefixlen - - self.netmask = self.network.netmask - self.hostmask = self.network.hostmask - - def __str__(self): - return '%s/%d' % (self._string_from_ip_int(self._ip), - self.network.prefixlen) - - def __eq__(self, other): - address_equal = IPv4Address.__eq__(self, other) - if not address_equal or address_equal is NotImplemented: - return address_equal - try: - return self.network == other.network - except AttributeError: - # An interface with an associated network is NOT the - # same as an unassociated address. That's why the hash - # takes the extra info into account. - return False - - def __lt__(self, other): - address_less = IPv4Address.__lt__(self, other) - if address_less is NotImplemented: - return NotImplemented - try: - return (self.network < other.network or - self.network == other.network and address_less) - except AttributeError: - # We *do* allow addresses and interfaces to be sorted. The - # unassociated address is considered less than all interfaces. - return False - - def __hash__(self): - return self._ip ^ self._prefixlen ^ int(self.network.network_address) - - __reduce__ = _IPAddressBase.__reduce__ - - @property - def ip(self): - return IPv4Address(self._ip) - - @property - def with_prefixlen(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self._prefixlen) - - @property - def with_netmask(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self.netmask) - - @property - def with_hostmask(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self.hostmask) - - -class IPv4Network(_BaseV4, _BaseNetwork): - - """This class represents and manipulates 32-bit IPv4 network + addresses.. - - Attributes: [examples for IPv4Network('192.0.2.0/27')] - .network_address: IPv4Address('192.0.2.0') - .hostmask: IPv4Address('0.0.0.31') - .broadcast_address: IPv4Address('192.0.2.32') - .netmask: IPv4Address('255.255.255.224') - .prefixlen: 27 - - """ - # Class to use when creating address objects - _address_class = IPv4Address - - def __init__(self, address, strict=True): - - """Instantiate a new IPv4 network object. - - Args: - address: A string or integer representing the IP [& network]. - '192.0.2.0/24' - '192.0.2.0/255.255.255.0' - '192.0.0.2/0.0.0.255' - are all functionally the same in IPv4. Similarly, - '192.0.2.1' - '192.0.2.1/255.255.255.255' - '192.0.2.1/32' - are also functionally equivalent. That is to say, failing to - provide a subnetmask will create an object with a mask of /32. - - If the mask (portion after the / in the argument) is given in - dotted quad form, it is treated as a netmask if it starts with a - non-zero field (e.g. /255.0.0.0 == /8) and as a hostmask if it - starts with a zero field (e.g. 0.255.255.255 == /8), with the - single exception of an all-zero mask which is treated as a - netmask == /0. If no mask is given, a default of /32 is used. - - Additionally, an integer can be passed, so - IPv4Network('192.0.2.1') == IPv4Network(3221225985) - or, more generally - IPv4Interface(int(IPv4Interface('192.0.2.1'))) == - IPv4Interface('192.0.2.1') - - Raises: - AddressValueError: If ipaddress isn't a valid IPv4 address. - NetmaskValueError: If the netmask isn't valid for - an IPv4 address. - ValueError: If strict is True and a network address is not - supplied. - - """ - _BaseNetwork.__init__(self, address) - - # Constructing from a packed address or integer - if isinstance(address, (_compat_int_types, bytes)): - self.network_address = IPv4Address(address) - self.netmask, self._prefixlen = self._make_netmask( - self._max_prefixlen) - # fixme: address/network test here. - return - - if isinstance(address, tuple): - if len(address) > 1: - arg = address[1] - else: - # We weren't given an address[1] - arg = self._max_prefixlen - self.network_address = IPv4Address(address[0]) - self.netmask, self._prefixlen = self._make_netmask(arg) - packed = int(self.network_address) - if packed & int(self.netmask) != packed: - if strict: - raise ValueError('%s has host bits set' % self) - else: - self.network_address = IPv4Address(packed & - int(self.netmask)) - return - - # Assume input argument to be string or any object representation - # which converts into a formatted IP prefix string. - addr = _split_optional_netmask(address) - self.network_address = IPv4Address(self._ip_int_from_string(addr[0])) - - if len(addr) == 2: - arg = addr[1] - else: - arg = self._max_prefixlen - self.netmask, self._prefixlen = self._make_netmask(arg) - - if strict: - if (IPv4Address(int(self.network_address) & int(self.netmask)) != - self.network_address): - raise ValueError('%s has host bits set' % self) - self.network_address = IPv4Address(int(self.network_address) & - int(self.netmask)) - - if self._prefixlen == (self._max_prefixlen - 1): - self.hosts = self.__iter__ - - @property - def is_global(self): - """Test if this address is allocated for public networks. - - Returns: - A boolean, True if the address is not reserved per - iana-ipv4-special-registry. - - """ - return (not (self.network_address in IPv4Network('100.64.0.0/10') and - self.broadcast_address in IPv4Network('100.64.0.0/10')) and - not self.is_private) - - -class _IPv4Constants(object): - - _linklocal_network = IPv4Network('169.254.0.0/16') - - _loopback_network = IPv4Network('127.0.0.0/8') - - _multicast_network = IPv4Network('224.0.0.0/4') - - _public_network = IPv4Network('100.64.0.0/10') - - _private_networks = [ - IPv4Network('0.0.0.0/8'), - IPv4Network('10.0.0.0/8'), - IPv4Network('127.0.0.0/8'), - IPv4Network('169.254.0.0/16'), - IPv4Network('172.16.0.0/12'), - IPv4Network('192.0.0.0/29'), - IPv4Network('192.0.0.170/31'), - IPv4Network('192.0.2.0/24'), - IPv4Network('192.168.0.0/16'), - IPv4Network('198.18.0.0/15'), - IPv4Network('198.51.100.0/24'), - IPv4Network('203.0.113.0/24'), - IPv4Network('240.0.0.0/4'), - IPv4Network('255.255.255.255/32'), - ] - - _reserved_network = IPv4Network('240.0.0.0/4') - - _unspecified_address = IPv4Address('0.0.0.0') - - -IPv4Address._constants = _IPv4Constants - - -class _BaseV6(object): - - """Base IPv6 object. - - The following methods are used by IPv6 objects in both single IP - addresses and networks. - - """ - - __slots__ = () - _version = 6 - _ALL_ONES = (2 ** IPV6LENGTH) - 1 - _HEXTET_COUNT = 8 - _HEX_DIGITS = frozenset('0123456789ABCDEFabcdef') - _max_prefixlen = IPV6LENGTH - - # There are only a bunch of valid v6 netmasks, so we cache them all - # when constructed (see _make_netmask()). - _netmask_cache = {} - - @classmethod - def _make_netmask(cls, arg): - """Make a (netmask, prefix_len) tuple from the given argument. - - Argument can be: - - an integer (the prefix length) - - a string representing the prefix length (e.g. "24") - - a string representing the prefix netmask (e.g. "255.255.255.0") - """ - if arg not in cls._netmask_cache: - if isinstance(arg, _compat_int_types): - prefixlen = arg - else: - prefixlen = cls._prefix_from_prefix_string(arg) - netmask = IPv6Address(cls._ip_int_from_prefix(prefixlen)) - cls._netmask_cache[arg] = netmask, prefixlen - return cls._netmask_cache[arg] - - @classmethod - def _ip_int_from_string(cls, ip_str): - """Turn an IPv6 ip_str into an integer. - - Args: - ip_str: A string, the IPv6 ip_str. - - Returns: - An int, the IPv6 address - - Raises: - AddressValueError: if ip_str isn't a valid IPv6 Address. - - """ - if not ip_str: - raise AddressValueError('Address cannot be empty') - - parts = ip_str.split(':') - - # An IPv6 address needs at least 2 colons (3 parts). - _min_parts = 3 - if len(parts) < _min_parts: - msg = "At least %d parts expected in %r" % (_min_parts, ip_str) - raise AddressValueError(msg) - - # If the address has an IPv4-style suffix, convert it to hexadecimal. - if '.' in parts[-1]: - try: - ipv4_int = IPv4Address(parts.pop())._ip - except AddressValueError as exc: - raise AddressValueError("%s in %r" % (exc, ip_str)) - parts.append('%x' % ((ipv4_int >> 16) & 0xFFFF)) - parts.append('%x' % (ipv4_int & 0xFFFF)) - - # An IPv6 address can't have more than 8 colons (9 parts). - # The extra colon comes from using the "::" notation for a single - # leading or trailing zero part. - _max_parts = cls._HEXTET_COUNT + 1 - if len(parts) > _max_parts: - msg = "At most %d colons permitted in %r" % ( - _max_parts - 1, ip_str) - raise AddressValueError(msg) - - # Disregarding the endpoints, find '::' with nothing in between. - # This indicates that a run of zeroes has been skipped. - skip_index = None - for i in _compat_range(1, len(parts) - 1): - if not parts[i]: - if skip_index is not None: - # Can't have more than one '::' - msg = "At most one '::' permitted in %r" % ip_str - raise AddressValueError(msg) - skip_index = i - - # parts_hi is the number of parts to copy from above/before the '::' - # parts_lo is the number of parts to copy from below/after the '::' - if skip_index is not None: - # If we found a '::', then check if it also covers the endpoints. - parts_hi = skip_index - parts_lo = len(parts) - skip_index - 1 - if not parts[0]: - parts_hi -= 1 - if parts_hi: - msg = "Leading ':' only permitted as part of '::' in %r" - raise AddressValueError(msg % ip_str) # ^: requires ^:: - if not parts[-1]: - parts_lo -= 1 - if parts_lo: - msg = "Trailing ':' only permitted as part of '::' in %r" - raise AddressValueError(msg % ip_str) # :$ requires ::$ - parts_skipped = cls._HEXTET_COUNT - (parts_hi + parts_lo) - if parts_skipped < 1: - msg = "Expected at most %d other parts with '::' in %r" - raise AddressValueError(msg % (cls._HEXTET_COUNT - 1, ip_str)) - else: - # Otherwise, allocate the entire address to parts_hi. The - # endpoints could still be empty, but _parse_hextet() will check - # for that. - if len(parts) != cls._HEXTET_COUNT: - msg = "Exactly %d parts expected without '::' in %r" - raise AddressValueError(msg % (cls._HEXTET_COUNT, ip_str)) - if not parts[0]: - msg = "Leading ':' only permitted as part of '::' in %r" - raise AddressValueError(msg % ip_str) # ^: requires ^:: - if not parts[-1]: - msg = "Trailing ':' only permitted as part of '::' in %r" - raise AddressValueError(msg % ip_str) # :$ requires ::$ - parts_hi = len(parts) - parts_lo = 0 - parts_skipped = 0 - - try: - # Now, parse the hextets into a 128-bit integer. - ip_int = 0 - for i in range(parts_hi): - ip_int <<= 16 - ip_int |= cls._parse_hextet(parts[i]) - ip_int <<= 16 * parts_skipped - for i in range(-parts_lo, 0): - ip_int <<= 16 - ip_int |= cls._parse_hextet(parts[i]) - return ip_int - except ValueError as exc: - raise AddressValueError("%s in %r" % (exc, ip_str)) - - @classmethod - def _parse_hextet(cls, hextet_str): - """Convert an IPv6 hextet string into an integer. - - Args: - hextet_str: A string, the number to parse. - - Returns: - The hextet as an integer. - - Raises: - ValueError: if the input isn't strictly a hex number from - [0..FFFF]. - - """ - # Whitelist the characters, since int() allows a lot of bizarre stuff. - if not cls._HEX_DIGITS.issuperset(hextet_str): - raise ValueError("Only hex digits permitted in %r" % hextet_str) - # We do the length check second, since the invalid character error - # is likely to be more informative for the user - if len(hextet_str) > 4: - msg = "At most 4 characters permitted in %r" - raise ValueError(msg % hextet_str) - # Length check means we can skip checking the integer value - return int(hextet_str, 16) - - @classmethod - def _compress_hextets(cls, hextets): - """Compresses a list of hextets. - - Compresses a list of strings, replacing the longest continuous - sequence of "0" in the list with "" and adding empty strings at - the beginning or at the end of the string such that subsequently - calling ":".join(hextets) will produce the compressed version of - the IPv6 address. - - Args: - hextets: A list of strings, the hextets to compress. - - Returns: - A list of strings. - - """ - best_doublecolon_start = -1 - best_doublecolon_len = 0 - doublecolon_start = -1 - doublecolon_len = 0 - for index, hextet in enumerate(hextets): - if hextet == '0': - doublecolon_len += 1 - if doublecolon_start == -1: - # Start of a sequence of zeros. - doublecolon_start = index - if doublecolon_len > best_doublecolon_len: - # This is the longest sequence of zeros so far. - best_doublecolon_len = doublecolon_len - best_doublecolon_start = doublecolon_start - else: - doublecolon_len = 0 - doublecolon_start = -1 - - if best_doublecolon_len > 1: - best_doublecolon_end = (best_doublecolon_start + - best_doublecolon_len) - # For zeros at the end of the address. - if best_doublecolon_end == len(hextets): - hextets += [''] - hextets[best_doublecolon_start:best_doublecolon_end] = [''] - # For zeros at the beginning of the address. - if best_doublecolon_start == 0: - hextets = [''] + hextets - - return hextets - - @classmethod - def _string_from_ip_int(cls, ip_int=None): - """Turns a 128-bit integer into hexadecimal notation. - - Args: - ip_int: An integer, the IP address. - - Returns: - A string, the hexadecimal representation of the address. - - Raises: - ValueError: The address is bigger than 128 bits of all ones. - - """ - if ip_int is None: - ip_int = int(cls._ip) - - if ip_int > cls._ALL_ONES: - raise ValueError('IPv6 address is too large') - - hex_str = '%032x' % ip_int - hextets = ['%x' % int(hex_str[x:x + 4], 16) for x in range(0, 32, 4)] - - hextets = cls._compress_hextets(hextets) - return ':'.join(hextets) - - def _explode_shorthand_ip_string(self): - """Expand a shortened IPv6 address. - - Args: - ip_str: A string, the IPv6 address. - - Returns: - A string, the expanded IPv6 address. - - """ - if isinstance(self, IPv6Network): - ip_str = _compat_str(self.network_address) - elif isinstance(self, IPv6Interface): - ip_str = _compat_str(self.ip) - else: - ip_str = _compat_str(self) - - ip_int = self._ip_int_from_string(ip_str) - hex_str = '%032x' % ip_int - parts = [hex_str[x:x + 4] for x in range(0, 32, 4)] - if isinstance(self, (_BaseNetwork, IPv6Interface)): - return '%s/%d' % (':'.join(parts), self._prefixlen) - return ':'.join(parts) - - def _reverse_pointer(self): - """Return the reverse DNS pointer name for the IPv6 address. - - This implements the method described in RFC3596 2.5. - - """ - reverse_chars = self.exploded[::-1].replace(':', '') - return '.'.join(reverse_chars) + '.ip6.arpa' - - @property - def max_prefixlen(self): - return self._max_prefixlen - - @property - def version(self): - return self._version - - -class IPv6Address(_BaseV6, _BaseAddress): - - """Represent and manipulate single IPv6 Addresses.""" - - __slots__ = ('_ip', '__weakref__') - - def __init__(self, address): - """Instantiate a new IPv6 address object. - - Args: - address: A string or integer representing the IP - - Additionally, an integer can be passed, so - IPv6Address('2001:db8::') == - IPv6Address(42540766411282592856903984951653826560) - or, more generally - IPv6Address(int(IPv6Address('2001:db8::'))) == - IPv6Address('2001:db8::') - - Raises: - AddressValueError: If address isn't a valid IPv6 address. - - """ - # Efficient constructor from integer. - if isinstance(address, _compat_int_types): - self._check_int_address(address) - self._ip = address - return - - # Constructing from a packed address - if isinstance(address, bytes): - self._check_packed_address(address, 16) - bvs = _compat_bytes_to_byte_vals(address) - self._ip = _compat_int_from_byte_vals(bvs, 'big') - return - - # Assume input argument to be string or any object representation - # which converts into a formatted IP string. - addr_str = _compat_str(address) - if '/' in addr_str: - raise AddressValueError("Unexpected '/' in %r" % address) - self._ip = self._ip_int_from_string(addr_str) - - @property - def packed(self): - """The binary representation of this address.""" - return v6_int_to_packed(self._ip) - - @property - def is_multicast(self): - """Test if the address is reserved for multicast use. - - Returns: - A boolean, True if the address is a multicast address. - See RFC 2373 2.7 for details. - - """ - return self in self._constants._multicast_network - - @property - def is_reserved(self): - """Test if the address is otherwise IETF reserved. - - Returns: - A boolean, True if the address is within one of the - reserved IPv6 Network ranges. - - """ - return any(self in x for x in self._constants._reserved_networks) - - @property - def is_link_local(self): - """Test if the address is reserved for link-local. - - Returns: - A boolean, True if the address is reserved per RFC 4291. - - """ - return self in self._constants._linklocal_network - - @property - def is_site_local(self): - """Test if the address is reserved for site-local. - - Note that the site-local address space has been deprecated by RFC 3879. - Use is_private to test if this address is in the space of unique local - addresses as defined by RFC 4193. - - Returns: - A boolean, True if the address is reserved per RFC 3513 2.5.6. - - """ - return self in self._constants._sitelocal_network - - @property - def is_private(self): - """Test if this address is allocated for private networks. - - Returns: - A boolean, True if the address is reserved per - iana-ipv6-special-registry. - - """ - return any(self in net for net in self._constants._private_networks) - - @property - def is_global(self): - """Test if this address is allocated for public networks. - - Returns: - A boolean, true if the address is not reserved per - iana-ipv6-special-registry. - - """ - return not self.is_private - - @property - def is_unspecified(self): - """Test if the address is unspecified. - - Returns: - A boolean, True if this is the unspecified address as defined in - RFC 2373 2.5.2. - - """ - return self._ip == 0 - - @property - def is_loopback(self): - """Test if the address is a loopback address. - - Returns: - A boolean, True if the address is a loopback address as defined in - RFC 2373 2.5.3. - - """ - return self._ip == 1 - - @property - def ipv4_mapped(self): - """Return the IPv4 mapped address. - - Returns: - If the IPv6 address is a v4 mapped address, return the - IPv4 mapped address. Return None otherwise. - - """ - if (self._ip >> 32) != 0xFFFF: - return None - return IPv4Address(self._ip & 0xFFFFFFFF) - - @property - def teredo(self): - """Tuple of embedded teredo IPs. - - Returns: - Tuple of the (server, client) IPs or None if the address - doesn't appear to be a teredo address (doesn't start with - 2001::/32) - - """ - if (self._ip >> 96) != 0x20010000: - return None - return (IPv4Address((self._ip >> 64) & 0xFFFFFFFF), - IPv4Address(~self._ip & 0xFFFFFFFF)) - - @property - def sixtofour(self): - """Return the IPv4 6to4 embedded address. - - Returns: - The IPv4 6to4-embedded address if present or None if the - address doesn't appear to contain a 6to4 embedded address. - - """ - if (self._ip >> 112) != 0x2002: - return None - return IPv4Address((self._ip >> 80) & 0xFFFFFFFF) - - -class IPv6Interface(IPv6Address): - - def __init__(self, address): - if isinstance(address, (bytes, _compat_int_types)): - IPv6Address.__init__(self, address) - self.network = IPv6Network(self._ip) - self._prefixlen = self._max_prefixlen - return - if isinstance(address, tuple): - IPv6Address.__init__(self, address[0]) - if len(address) > 1: - self._prefixlen = int(address[1]) - else: - self._prefixlen = self._max_prefixlen - self.network = IPv6Network(address, strict=False) - self.netmask = self.network.netmask - self.hostmask = self.network.hostmask - return - - addr = _split_optional_netmask(address) - IPv6Address.__init__(self, addr[0]) - self.network = IPv6Network(address, strict=False) - self.netmask = self.network.netmask - self._prefixlen = self.network._prefixlen - self.hostmask = self.network.hostmask - - def __str__(self): - return '%s/%d' % (self._string_from_ip_int(self._ip), - self.network.prefixlen) - - def __eq__(self, other): - address_equal = IPv6Address.__eq__(self, other) - if not address_equal or address_equal is NotImplemented: - return address_equal - try: - return self.network == other.network - except AttributeError: - # An interface with an associated network is NOT the - # same as an unassociated address. That's why the hash - # takes the extra info into account. - return False - - def __lt__(self, other): - address_less = IPv6Address.__lt__(self, other) - if address_less is NotImplemented: - return NotImplemented - try: - return (self.network < other.network or - self.network == other.network and address_less) - except AttributeError: - # We *do* allow addresses and interfaces to be sorted. The - # unassociated address is considered less than all interfaces. - return False - - def __hash__(self): - return self._ip ^ self._prefixlen ^ int(self.network.network_address) - - __reduce__ = _IPAddressBase.__reduce__ - - @property - def ip(self): - return IPv6Address(self._ip) - - @property - def with_prefixlen(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self._prefixlen) - - @property - def with_netmask(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self.netmask) - - @property - def with_hostmask(self): - return '%s/%s' % (self._string_from_ip_int(self._ip), - self.hostmask) - - @property - def is_unspecified(self): - return self._ip == 0 and self.network.is_unspecified - - @property - def is_loopback(self): - return self._ip == 1 and self.network.is_loopback - - -class IPv6Network(_BaseV6, _BaseNetwork): - - """This class represents and manipulates 128-bit IPv6 networks. - - Attributes: [examples for IPv6('2001:db8::1000/124')] - .network_address: IPv6Address('2001:db8::1000') - .hostmask: IPv6Address('::f') - .broadcast_address: IPv6Address('2001:db8::100f') - .netmask: IPv6Address('ffff:ffff:ffff:ffff:ffff:ffff:ffff:fff0') - .prefixlen: 124 - - """ - - # Class to use when creating address objects - _address_class = IPv6Address - - def __init__(self, address, strict=True): - """Instantiate a new IPv6 Network object. - - Args: - address: A string or integer representing the IPv6 network or the - IP and prefix/netmask. - '2001:db8::/128' - '2001:db8:0000:0000:0000:0000:0000:0000/128' - '2001:db8::' - are all functionally the same in IPv6. That is to say, - failing to provide a subnetmask will create an object with - a mask of /128. - - Additionally, an integer can be passed, so - IPv6Network('2001:db8::') == - IPv6Network(42540766411282592856903984951653826560) - or, more generally - IPv6Network(int(IPv6Network('2001:db8::'))) == - IPv6Network('2001:db8::') - - strict: A boolean. If true, ensure that we have been passed - A true network address, eg, 2001:db8::1000/124 and not an - IP address on a network, eg, 2001:db8::1/124. - - Raises: - AddressValueError: If address isn't a valid IPv6 address. - NetmaskValueError: If the netmask isn't valid for - an IPv6 address. - ValueError: If strict was True and a network address was not - supplied. - - """ - _BaseNetwork.__init__(self, address) - - # Efficient constructor from integer or packed address - if isinstance(address, (bytes, _compat_int_types)): - self.network_address = IPv6Address(address) - self.netmask, self._prefixlen = self._make_netmask( - self._max_prefixlen) - return - - if isinstance(address, tuple): - if len(address) > 1: - arg = address[1] - else: - arg = self._max_prefixlen - self.netmask, self._prefixlen = self._make_netmask(arg) - self.network_address = IPv6Address(address[0]) - packed = int(self.network_address) - if packed & int(self.netmask) != packed: - if strict: - raise ValueError('%s has host bits set' % self) - else: - self.network_address = IPv6Address(packed & - int(self.netmask)) - return - - # Assume input argument to be string or any object representation - # which converts into a formatted IP prefix string. - addr = _split_optional_netmask(address) - - self.network_address = IPv6Address(self._ip_int_from_string(addr[0])) - - if len(addr) == 2: - arg = addr[1] - else: - arg = self._max_prefixlen - self.netmask, self._prefixlen = self._make_netmask(arg) - - if strict: - if (IPv6Address(int(self.network_address) & int(self.netmask)) != - self.network_address): - raise ValueError('%s has host bits set' % self) - self.network_address = IPv6Address(int(self.network_address) & - int(self.netmask)) - - if self._prefixlen == (self._max_prefixlen - 1): - self.hosts = self.__iter__ - - def hosts(self): - """Generate Iterator over usable hosts in a network. - - This is like __iter__ except it doesn't return the - Subnet-Router anycast address. - - """ - network = int(self.network_address) - broadcast = int(self.broadcast_address) - for x in _compat_range(network + 1, broadcast + 1): - yield self._address_class(x) - - @property - def is_site_local(self): - """Test if the address is reserved for site-local. - - Note that the site-local address space has been deprecated by RFC 3879. - Use is_private to test if this address is in the space of unique local - addresses as defined by RFC 4193. - - Returns: - A boolean, True if the address is reserved per RFC 3513 2.5.6. - - """ - return (self.network_address.is_site_local and - self.broadcast_address.is_site_local) - - -class _IPv6Constants(object): - - _linklocal_network = IPv6Network('fe80::/10') - - _multicast_network = IPv6Network('ff00::/8') - - _private_networks = [ - IPv6Network('::1/128'), - IPv6Network('::/128'), - IPv6Network('::ffff:0:0/96'), - IPv6Network('100::/64'), - IPv6Network('2001::/23'), - IPv6Network('2001:2::/48'), - IPv6Network('2001:db8::/32'), - IPv6Network('2001:10::/28'), - IPv6Network('fc00::/7'), - IPv6Network('fe80::/10'), - ] - - _reserved_networks = [ - IPv6Network('::/8'), IPv6Network('100::/8'), - IPv6Network('200::/7'), IPv6Network('400::/6'), - IPv6Network('800::/5'), IPv6Network('1000::/4'), - IPv6Network('4000::/3'), IPv6Network('6000::/3'), - IPv6Network('8000::/3'), IPv6Network('A000::/3'), - IPv6Network('C000::/3'), IPv6Network('E000::/4'), - IPv6Network('F000::/5'), IPv6Network('F800::/6'), - IPv6Network('FE00::/9'), - ] - - _sitelocal_network = IPv6Network('fec0::/10') - - -IPv6Address._constants = _IPv6Constants diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/__init__.py deleted file mode 100644 index 228e051..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/__init__.py +++ /dev/null @@ -1,347 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -lockfile.py - Platform-independent advisory file locks. - -Requires Python 2.5 unless you apply 2.4.diff -Locking is done on a per-thread basis instead of a per-process basis. - -Usage: - ->>> lock = LockFile('somefile') ->>> try: -... lock.acquire() -... except AlreadyLocked: -... print 'somefile', 'is locked already.' -... except LockFailed: -... print 'somefile', 'can\\'t be locked.' -... else: -... print 'got lock' -got lock ->>> print lock.is_locked() -True ->>> lock.release() - ->>> lock = LockFile('somefile') ->>> print lock.is_locked() -False ->>> with lock: -... print lock.is_locked() -True ->>> print lock.is_locked() -False - ->>> lock = LockFile('somefile') ->>> # It is okay to lock twice from the same thread... ->>> with lock: -... lock.acquire() -... ->>> # Though no counter is kept, so you can't unlock multiple times... ->>> print lock.is_locked() -False - -Exceptions: - - Error - base class for other exceptions - LockError - base class for all locking exceptions - AlreadyLocked - Another thread or process already holds the lock - LockFailed - Lock failed for some other reason - UnlockError - base class for all unlocking exceptions - AlreadyUnlocked - File was not locked. - NotMyLock - File was locked but not by the current thread/process -""" - -from __future__ import absolute_import - -import functools -import os -import socket -import threading -import warnings - -# Work with PEP8 and non-PEP8 versions of threading module. -if not hasattr(threading, "current_thread"): - threading.current_thread = threading.currentThread -if not hasattr(threading.Thread, "get_name"): - threading.Thread.get_name = threading.Thread.getName - -__all__ = ['Error', 'LockError', 'LockTimeout', 'AlreadyLocked', - 'LockFailed', 'UnlockError', 'NotLocked', 'NotMyLock', - 'LinkFileLock', 'MkdirFileLock', 'SQLiteFileLock', - 'LockBase', 'locked'] - - -class Error(Exception): - """ - Base class for other exceptions. - - >>> try: - ... raise Error - ... except Exception: - ... pass - """ - pass - - -class LockError(Error): - """ - Base class for error arising from attempts to acquire the lock. - - >>> try: - ... raise LockError - ... except Error: - ... pass - """ - pass - - -class LockTimeout(LockError): - """Raised when lock creation fails within a user-defined period of time. - - >>> try: - ... raise LockTimeout - ... except LockError: - ... pass - """ - pass - - -class AlreadyLocked(LockError): - """Some other thread/process is locking the file. - - >>> try: - ... raise AlreadyLocked - ... except LockError: - ... pass - """ - pass - - -class LockFailed(LockError): - """Lock file creation failed for some other reason. - - >>> try: - ... raise LockFailed - ... except LockError: - ... pass - """ - pass - - -class UnlockError(Error): - """ - Base class for errors arising from attempts to release the lock. - - >>> try: - ... raise UnlockError - ... except Error: - ... pass - """ - pass - - -class NotLocked(UnlockError): - """Raised when an attempt is made to unlock an unlocked file. - - >>> try: - ... raise NotLocked - ... except UnlockError: - ... pass - """ - pass - - -class NotMyLock(UnlockError): - """Raised when an attempt is made to unlock a file someone else locked. - - >>> try: - ... raise NotMyLock - ... except UnlockError: - ... pass - """ - pass - - -class _SharedBase(object): - def __init__(self, path): - self.path = path - - def acquire(self, timeout=None): - """ - Acquire the lock. - - * If timeout is omitted (or None), wait forever trying to lock the - file. - - * If timeout > 0, try to acquire the lock for that many seconds. If - the lock period expires and the file is still locked, raise - LockTimeout. - - * If timeout <= 0, raise AlreadyLocked immediately if the file is - already locked. - """ - raise NotImplemented("implement in subclass") - - def release(self): - """ - Release the lock. - - If the file is not locked, raise NotLocked. - """ - raise NotImplemented("implement in subclass") - - def __enter__(self): - """ - Context manager support. - """ - self.acquire() - return self - - def __exit__(self, *_exc): - """ - Context manager support. - """ - self.release() - - def __repr__(self): - return "<%s: %r>" % (self.__class__.__name__, self.path) - - -class LockBase(_SharedBase): - """Base class for platform-specific lock classes.""" - def __init__(self, path, threaded=True, timeout=None): - """ - >>> lock = LockBase('somefile') - >>> lock = LockBase('somefile', threaded=False) - """ - super(LockBase, self).__init__(path) - self.lock_file = os.path.abspath(path) + ".lock" - self.hostname = socket.gethostname() - self.pid = os.getpid() - if threaded: - t = threading.current_thread() - # Thread objects in Python 2.4 and earlier do not have ident - # attrs. Worm around that. - ident = getattr(t, "ident", hash(t)) - self.tname = "-%x" % (ident & 0xffffffff) - else: - self.tname = "" - dirname = os.path.dirname(self.lock_file) - - # unique name is mostly about the current process, but must - # also contain the path -- otherwise, two adjacent locked - # files conflict (one file gets locked, creating lock-file and - # unique file, the other one gets locked, creating lock-file - # and overwriting the already existing lock-file, then one - # gets unlocked, deleting both lock-file and unique file, - # finally the last lock errors out upon releasing. - self.unique_name = os.path.join(dirname, - "%s%s.%s%s" % (self.hostname, - self.tname, - self.pid, - hash(self.path))) - self.timeout = timeout - - def is_locked(self): - """ - Tell whether or not the file is locked. - """ - raise NotImplemented("implement in subclass") - - def i_am_locking(self): - """ - Return True if this object is locking the file. - """ - raise NotImplemented("implement in subclass") - - def break_lock(self): - """ - Remove a lock. Useful if a locking thread failed to unlock. - """ - raise NotImplemented("implement in subclass") - - def __repr__(self): - return "<%s: %r -- %r>" % (self.__class__.__name__, self.unique_name, - self.path) - - -def _fl_helper(cls, mod, *args, **kwds): - warnings.warn("Import from %s module instead of lockfile package" % mod, - DeprecationWarning, stacklevel=2) - # This is a bit funky, but it's only for awhile. The way the unit tests - # are constructed this function winds up as an unbound method, so it - # actually takes three args, not two. We want to toss out self. - if not isinstance(args[0], str): - # We are testing, avoid the first arg - args = args[1:] - if len(args) == 1 and not kwds: - kwds["threaded"] = True - return cls(*args, **kwds) - - -def LinkFileLock(*args, **kwds): - """Factory function provided for backwards compatibility. - - Do not use in new code. Instead, import LinkLockFile from the - lockfile.linklockfile module. - """ - from . import linklockfile - return _fl_helper(linklockfile.LinkLockFile, "lockfile.linklockfile", - *args, **kwds) - - -def MkdirFileLock(*args, **kwds): - """Factory function provided for backwards compatibility. - - Do not use in new code. Instead, import MkdirLockFile from the - lockfile.mkdirlockfile module. - """ - from . import mkdirlockfile - return _fl_helper(mkdirlockfile.MkdirLockFile, "lockfile.mkdirlockfile", - *args, **kwds) - - -def SQLiteFileLock(*args, **kwds): - """Factory function provided for backwards compatibility. - - Do not use in new code. Instead, import SQLiteLockFile from the - lockfile.mkdirlockfile module. - """ - from . import sqlitelockfile - return _fl_helper(sqlitelockfile.SQLiteLockFile, "lockfile.sqlitelockfile", - *args, **kwds) - - -def locked(path, timeout=None): - """Decorator which enables locks for decorated function. - - Arguments: - - path: path for lockfile. - - timeout (optional): Timeout for acquiring lock. - - Usage: - @locked('/var/run/myname', timeout=0) - def myname(...): - ... - """ - def decor(func): - @functools.wraps(func) - def wrapper(*args, **kwargs): - lock = FileLock(path, timeout=timeout) - lock.acquire() - try: - return func(*args, **kwargs) - finally: - lock.release() - return wrapper - return decor - - -if hasattr(os, "link"): - from . import linklockfile as _llf - LockFile = _llf.LinkLockFile -else: - from . import mkdirlockfile as _mlf - LockFile = _mlf.MkdirLockFile - -FileLock = LockFile diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/linklockfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/linklockfile.py deleted file mode 100644 index 11af0f3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/linklockfile.py +++ /dev/null @@ -1,73 +0,0 @@ -from __future__ import absolute_import - -import time -import os - -from . import (LockBase, LockFailed, NotLocked, NotMyLock, LockTimeout, - AlreadyLocked) - - -class LinkLockFile(LockBase): - """Lock access to a file using atomic property of link(2). - - >>> lock = LinkLockFile('somefile') - >>> lock = LinkLockFile('somefile', threaded=False) - """ - - def acquire(self, timeout=None): - try: - open(self.unique_name, "wb").close() - except IOError: - raise LockFailed("failed to create %s" % self.unique_name) - - timeout = timeout if timeout is not None else self.timeout - end_time = time.time() - if timeout is not None and timeout > 0: - end_time += timeout - - while True: - # Try and create a hard link to it. - try: - os.link(self.unique_name, self.lock_file) - except OSError: - # Link creation failed. Maybe we've double-locked? - nlinks = os.stat(self.unique_name).st_nlink - if nlinks == 2: - # The original link plus the one I created == 2. We're - # good to go. - return - else: - # Otherwise the lock creation failed. - if timeout is not None and time.time() > end_time: - os.unlink(self.unique_name) - if timeout > 0: - raise LockTimeout("Timeout waiting to acquire" - " lock for %s" % - self.path) - else: - raise AlreadyLocked("%s is already locked" % - self.path) - time.sleep(timeout is not None and timeout / 10 or 0.1) - else: - # Link creation succeeded. We're good to go. - return - - def release(self): - if not self.is_locked(): - raise NotLocked("%s is not locked" % self.path) - elif not os.path.exists(self.unique_name): - raise NotMyLock("%s is locked, but not by me" % self.path) - os.unlink(self.unique_name) - os.unlink(self.lock_file) - - def is_locked(self): - return os.path.exists(self.lock_file) - - def i_am_locking(self): - return (self.is_locked() and - os.path.exists(self.unique_name) and - os.stat(self.unique_name).st_nlink == 2) - - def break_lock(self): - if os.path.exists(self.lock_file): - os.unlink(self.lock_file) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/mkdirlockfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/mkdirlockfile.py deleted file mode 100644 index bd5a51e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/mkdirlockfile.py +++ /dev/null @@ -1,84 +0,0 @@ -from __future__ import absolute_import, division - -import time -import os -import sys -import errno - -from . import (LockBase, LockFailed, NotLocked, NotMyLock, LockTimeout, - AlreadyLocked) - - -class MkdirLockFile(LockBase): - """Lock file by creating a directory.""" - def __init__(self, path, threaded=True, timeout=None): - """ - >>> lock = MkdirLockFile('somefile') - >>> lock = MkdirLockFile('somefile', threaded=False) - """ - LockBase.__init__(self, path, threaded, timeout) - # Lock file itself is a directory. Place the unique file name into - # it. - self.unique_name = os.path.join(self.lock_file, - "%s.%s%s" % (self.hostname, - self.tname, - self.pid)) - - def acquire(self, timeout=None): - timeout = timeout if timeout is not None else self.timeout - end_time = time.time() - if timeout is not None and timeout > 0: - end_time += timeout - - if timeout is None: - wait = 0.1 - else: - wait = max(0, timeout / 10) - - while True: - try: - os.mkdir(self.lock_file) - except OSError: - err = sys.exc_info()[1] - if err.errno == errno.EEXIST: - # Already locked. - if os.path.exists(self.unique_name): - # Already locked by me. - return - if timeout is not None and time.time() > end_time: - if timeout > 0: - raise LockTimeout("Timeout waiting to acquire" - " lock for %s" % - self.path) - else: - # Someone else has the lock. - raise AlreadyLocked("%s is already locked" % - self.path) - time.sleep(wait) - else: - # Couldn't create the lock for some other reason - raise LockFailed("failed to create %s" % self.lock_file) - else: - open(self.unique_name, "wb").close() - return - - def release(self): - if not self.is_locked(): - raise NotLocked("%s is not locked" % self.path) - elif not os.path.exists(self.unique_name): - raise NotMyLock("%s is locked, but not by me" % self.path) - os.unlink(self.unique_name) - os.rmdir(self.lock_file) - - def is_locked(self): - return os.path.exists(self.lock_file) - - def i_am_locking(self): - return (self.is_locked() and - os.path.exists(self.unique_name)) - - def break_lock(self): - if os.path.exists(self.lock_file): - for name in os.listdir(self.lock_file): - os.unlink(os.path.join(self.lock_file, name)) - os.rmdir(self.lock_file) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/pidlockfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/pidlockfile.py deleted file mode 100644 index d776de5..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/pidlockfile.py +++ /dev/null @@ -1,190 +0,0 @@ -# -*- coding: utf-8 -*- - -# pidlockfile.py -# -# Copyright © 2008–2009 Ben Finney <ben+python@benfinney.id.au> -# -# This is free software: you may copy, modify, and/or distribute this work -# under the terms of the Python Software Foundation License, version 2 or -# later as published by the Python Software Foundation. -# No warranty expressed or implied. See the file LICENSE.PSF-2 for details. - -""" Lockfile behaviour implemented via Unix PID files. - """ - -from __future__ import absolute_import - -import errno -import os -import time - -from . import (LockBase, AlreadyLocked, LockFailed, NotLocked, NotMyLock, - LockTimeout) - - -class PIDLockFile(LockBase): - """ Lockfile implemented as a Unix PID file. - - The lock file is a normal file named by the attribute `path`. - A lock's PID file contains a single line of text, containing - the process ID (PID) of the process that acquired the lock. - - >>> lock = PIDLockFile('somefile') - >>> lock = PIDLockFile('somefile') - """ - - def __init__(self, path, threaded=False, timeout=None): - # pid lockfiles don't support threaded operation, so always force - # False as the threaded arg. - LockBase.__init__(self, path, False, timeout) - self.unique_name = self.path - - def read_pid(self): - """ Get the PID from the lock file. - """ - return read_pid_from_pidfile(self.path) - - def is_locked(self): - """ Test if the lock is currently held. - - The lock is held if the PID file for this lock exists. - - """ - return os.path.exists(self.path) - - def i_am_locking(self): - """ Test if the lock is held by the current process. - - Returns ``True`` if the current process ID matches the - number stored in the PID file. - """ - return self.is_locked() and os.getpid() == self.read_pid() - - def acquire(self, timeout=None): - """ Acquire the lock. - - Creates the PID file for this lock, or raises an error if - the lock could not be acquired. - """ - - timeout = timeout if timeout is not None else self.timeout - end_time = time.time() - if timeout is not None and timeout > 0: - end_time += timeout - - while True: - try: - write_pid_to_pidfile(self.path) - except OSError as exc: - if exc.errno == errno.EEXIST: - # The lock creation failed. Maybe sleep a bit. - if time.time() > end_time: - if timeout is not None and timeout > 0: - raise LockTimeout("Timeout waiting to acquire" - " lock for %s" % - self.path) - else: - raise AlreadyLocked("%s is already locked" % - self.path) - time.sleep(timeout is not None and timeout / 10 or 0.1) - else: - raise LockFailed("failed to create %s" % self.path) - else: - return - - def release(self): - """ Release the lock. - - Removes the PID file to release the lock, or raises an - error if the current process does not hold the lock. - - """ - if not self.is_locked(): - raise NotLocked("%s is not locked" % self.path) - if not self.i_am_locking(): - raise NotMyLock("%s is locked, but not by me" % self.path) - remove_existing_pidfile(self.path) - - def break_lock(self): - """ Break an existing lock. - - Removes the PID file if it already exists, otherwise does - nothing. - - """ - remove_existing_pidfile(self.path) - - -def read_pid_from_pidfile(pidfile_path): - """ Read the PID recorded in the named PID file. - - Read and return the numeric PID recorded as text in the named - PID file. If the PID file cannot be read, or if the content is - not a valid PID, return ``None``. - - """ - pid = None - try: - pidfile = open(pidfile_path, 'r') - except IOError: - pass - else: - # According to the FHS 2.3 section on PID files in /var/run: - # - # The file must consist of the process identifier in - # ASCII-encoded decimal, followed by a newline character. - # - # Programs that read PID files should be somewhat flexible - # in what they accept; i.e., they should ignore extra - # whitespace, leading zeroes, absence of the trailing - # newline, or additional lines in the PID file. - - line = pidfile.readline().strip() - try: - pid = int(line) - except ValueError: - pass - pidfile.close() - - return pid - - -def write_pid_to_pidfile(pidfile_path): - """ Write the PID in the named PID file. - - Get the numeric process ID (“PID”) of the current process - and write it to the named file as a line of text. - - """ - open_flags = (os.O_CREAT | os.O_EXCL | os.O_WRONLY) - open_mode = 0o644 - pidfile_fd = os.open(pidfile_path, open_flags, open_mode) - pidfile = os.fdopen(pidfile_fd, 'w') - - # According to the FHS 2.3 section on PID files in /var/run: - # - # The file must consist of the process identifier in - # ASCII-encoded decimal, followed by a newline character. For - # example, if crond was process number 25, /var/run/crond.pid - # would contain three characters: two, five, and newline. - - pid = os.getpid() - pidfile.write("%s\n" % pid) - pidfile.close() - - -def remove_existing_pidfile(pidfile_path): - """ Remove the named PID file if it exists. - - Removing a PID file that doesn't already exist puts us in the - desired state, so we ignore the condition if the file does not - exist. - - """ - try: - os.remove(pidfile_path) - except OSError as exc: - if exc.errno == errno.ENOENT: - pass - else: - raise diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/sqlitelockfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/sqlitelockfile.py deleted file mode 100644 index 278dff4..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/sqlitelockfile.py +++ /dev/null @@ -1,156 +0,0 @@ -from __future__ import absolute_import, division - -import time -import os - -try: - unicode -except NameError: - unicode = str - -from . import LockBase, NotLocked, NotMyLock, LockTimeout, AlreadyLocked - - -class SQLiteLockFile(LockBase): - "Demonstrate SQL-based locking." - - testdb = None - - def __init__(self, path, threaded=True, timeout=None): - """ - >>> lock = SQLiteLockFile('somefile') - >>> lock = SQLiteLockFile('somefile', threaded=False) - """ - LockBase.__init__(self, path, threaded, timeout) - self.lock_file = unicode(self.lock_file) - self.unique_name = unicode(self.unique_name) - - if SQLiteLockFile.testdb is None: - import tempfile - _fd, testdb = tempfile.mkstemp() - os.close(_fd) - os.unlink(testdb) - del _fd, tempfile - SQLiteLockFile.testdb = testdb - - import sqlite3 - self.connection = sqlite3.connect(SQLiteLockFile.testdb) - - c = self.connection.cursor() - try: - c.execute("create table locks" - "(" - " lock_file varchar(32)," - " unique_name varchar(32)" - ")") - except sqlite3.OperationalError: - pass - else: - self.connection.commit() - import atexit - atexit.register(os.unlink, SQLiteLockFile.testdb) - - def acquire(self, timeout=None): - timeout = timeout if timeout is not None else self.timeout - end_time = time.time() - if timeout is not None and timeout > 0: - end_time += timeout - - if timeout is None: - wait = 0.1 - elif timeout <= 0: - wait = 0 - else: - wait = timeout / 10 - - cursor = self.connection.cursor() - - while True: - if not self.is_locked(): - # Not locked. Try to lock it. - cursor.execute("insert into locks" - " (lock_file, unique_name)" - " values" - " (?, ?)", - (self.lock_file, self.unique_name)) - self.connection.commit() - - # Check to see if we are the only lock holder. - cursor.execute("select * from locks" - " where unique_name = ?", - (self.unique_name,)) - rows = cursor.fetchall() - if len(rows) > 1: - # Nope. Someone else got there. Remove our lock. - cursor.execute("delete from locks" - " where unique_name = ?", - (self.unique_name,)) - self.connection.commit() - else: - # Yup. We're done, so go home. - return - else: - # Check to see if we are the only lock holder. - cursor.execute("select * from locks" - " where unique_name = ?", - (self.unique_name,)) - rows = cursor.fetchall() - if len(rows) == 1: - # We're the locker, so go home. - return - - # Maybe we should wait a bit longer. - if timeout is not None and time.time() > end_time: - if timeout > 0: - # No more waiting. - raise LockTimeout("Timeout waiting to acquire" - " lock for %s" % - self.path) - else: - # Someone else has the lock and we are impatient.. - raise AlreadyLocked("%s is already locked" % self.path) - - # Well, okay. We'll give it a bit longer. - time.sleep(wait) - - def release(self): - if not self.is_locked(): - raise NotLocked("%s is not locked" % self.path) - if not self.i_am_locking(): - raise NotMyLock("%s is locked, but not by me (by %s)" % - (self.unique_name, self._who_is_locking())) - cursor = self.connection.cursor() - cursor.execute("delete from locks" - " where unique_name = ?", - (self.unique_name,)) - self.connection.commit() - - def _who_is_locking(self): - cursor = self.connection.cursor() - cursor.execute("select unique_name from locks" - " where lock_file = ?", - (self.lock_file,)) - return cursor.fetchone()[0] - - def is_locked(self): - cursor = self.connection.cursor() - cursor.execute("select * from locks" - " where lock_file = ?", - (self.lock_file,)) - rows = cursor.fetchall() - return not not rows - - def i_am_locking(self): - cursor = self.connection.cursor() - cursor.execute("select * from locks" - " where lock_file = ?" - " and unique_name = ?", - (self.lock_file, self.unique_name)) - return not not cursor.fetchall() - - def break_lock(self): - cursor = self.connection.cursor() - cursor.execute("delete from locks" - " where lock_file = ?", - (self.lock_file,)) - self.connection.commit() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/symlinklockfile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/symlinklockfile.py deleted file mode 100644 index 93ff2b5..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/lockfile/symlinklockfile.py +++ /dev/null @@ -1,70 +0,0 @@ -from __future__ import absolute_import - -import os -import time - -from . import (LockBase, NotLocked, NotMyLock, LockTimeout, - AlreadyLocked) - - -class SymlinkLockFile(LockBase): - """Lock access to a file using symlink(2).""" - - def __init__(self, path, threaded=True, timeout=None): - # super(SymlinkLockFile).__init(...) - LockBase.__init__(self, path, threaded, timeout) - # split it back! - self.unique_name = os.path.split(self.unique_name)[1] - - def acquire(self, timeout=None): - # Hopefully unnecessary for symlink. - # try: - # open(self.unique_name, "wb").close() - # except IOError: - # raise LockFailed("failed to create %s" % self.unique_name) - timeout = timeout if timeout is not None else self.timeout - end_time = time.time() - if timeout is not None and timeout > 0: - end_time += timeout - - while True: - # Try and create a symbolic link to it. - try: - os.symlink(self.unique_name, self.lock_file) - except OSError: - # Link creation failed. Maybe we've double-locked? - if self.i_am_locking(): - # Linked to out unique name. Proceed. - return - else: - # Otherwise the lock creation failed. - if timeout is not None and time.time() > end_time: - if timeout > 0: - raise LockTimeout("Timeout waiting to acquire" - " lock for %s" % - self.path) - else: - raise AlreadyLocked("%s is already locked" % - self.path) - time.sleep(timeout / 10 if timeout is not None else 0.1) - else: - # Link creation succeeded. We're good to go. - return - - def release(self): - if not self.is_locked(): - raise NotLocked("%s is not locked" % self.path) - elif not self.i_am_locking(): - raise NotMyLock("%s is locked, but not by me" % self.path) - os.unlink(self.lock_file) - - def is_locked(self): - return os.path.islink(self.lock_file) - - def i_am_locking(self): - return (os.path.islink(self.lock_file) - and os.readlink(self.lock_file) == self.unique_name) - - def break_lock(self): - if os.path.islink(self.lock_file): # exists && link - os.unlink(self.lock_file) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/__init__.py deleted file mode 100644 index dda626a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/__init__.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding: utf-8 -from pip._vendor.msgpack._version import version -from pip._vendor.msgpack.exceptions import * - -from collections import namedtuple - - -class ExtType(namedtuple('ExtType', 'code data')): - """ExtType represents ext type in msgpack.""" - def __new__(cls, code, data): - if not isinstance(code, int): - raise TypeError("code must be int") - if not isinstance(data, bytes): - raise TypeError("data must be bytes") - if not 0 <= code <= 127: - raise ValueError("code must be 0~127") - return super(ExtType, cls).__new__(cls, code, data) - - -import os -if os.environ.get('MSGPACK_PUREPYTHON'): - from pip._vendor.msgpack.fallback import Packer, unpackb, Unpacker -else: - try: - from pip._vendor.msgpack._packer import Packer - from pip._vendor.msgpack._unpacker import unpackb, Unpacker - except ImportError: - from pip._vendor.msgpack.fallback import Packer, unpackb, Unpacker - - -def pack(o, stream, **kwargs): - """ - Pack object `o` and write it to `stream` - - See :class:`Packer` for options. - """ - packer = Packer(**kwargs) - stream.write(packer.pack(o)) - - -def packb(o, **kwargs): - """ - Pack object `o` and return packed bytes - - See :class:`Packer` for options. - """ - return Packer(**kwargs).pack(o) - - -def unpack(stream, **kwargs): - """ - Unpack an object from `stream`. - - Raises `ExtraData` when `stream` contains extra bytes. - See :class:`Unpacker` for options. - """ - data = stream.read() - return unpackb(data, **kwargs) - - -# alias for compatibility to simplejson/marshal/pickle. -load = unpack -loads = unpackb - -dump = pack -dumps = packb diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/_version.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/_version.py deleted file mode 100644 index 91d97cd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/_version.py +++ /dev/null @@ -1 +0,0 @@ -version = (0, 5, 6) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/exceptions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/exceptions.py deleted file mode 100644 index e0b5133..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/exceptions.py +++ /dev/null @@ -1,41 +0,0 @@ -class UnpackException(Exception): - """Deprecated. Use Exception instead to catch all exception during unpacking.""" - - -class BufferFull(UnpackException): - pass - - -class OutOfData(UnpackException): - pass - - -class UnpackValueError(UnpackException, ValueError): - """Deprecated. Use ValueError instead.""" - - -class ExtraData(UnpackValueError): - def __init__(self, unpacked, extra): - self.unpacked = unpacked - self.extra = extra - - def __str__(self): - return "unpack(b) received extra data." - - -class PackException(Exception): - """Deprecated. Use Exception instead to catch all exception during packing.""" - - -class PackValueError(PackException, ValueError): - """PackValueError is raised when type of input data is supported but it's value is unsupported. - - Deprecated. Use ValueError instead. - """ - - -class PackOverflowError(PackValueError, OverflowError): - """PackOverflowError is raised when integer value is out of range of msgpack support [-2**31, 2**32). - - Deprecated. Use ValueError instead. - """ diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/fallback.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/fallback.py deleted file mode 100644 index a1a9712..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/msgpack/fallback.py +++ /dev/null @@ -1,977 +0,0 @@ -"""Fallback pure Python implementation of msgpack""" - -import sys -import struct -import warnings - -if sys.version_info[0] == 3: - PY3 = True - int_types = int - Unicode = str - xrange = range - def dict_iteritems(d): - return d.items() -else: - PY3 = False - int_types = (int, long) - Unicode = unicode - def dict_iteritems(d): - return d.iteritems() - - -if hasattr(sys, 'pypy_version_info'): - # cStringIO is slow on PyPy, StringIO is faster. However: PyPy's own - # StringBuilder is fastest. - from __pypy__ import newlist_hint - try: - from __pypy__.builders import BytesBuilder as StringBuilder - except ImportError: - from __pypy__.builders import StringBuilder - USING_STRINGBUILDER = True - class StringIO(object): - def __init__(self, s=b''): - if s: - self.builder = StringBuilder(len(s)) - self.builder.append(s) - else: - self.builder = StringBuilder() - def write(self, s): - if isinstance(s, memoryview): - s = s.tobytes() - elif isinstance(s, bytearray): - s = bytes(s) - self.builder.append(s) - def getvalue(self): - return self.builder.build() -else: - USING_STRINGBUILDER = False - from io import BytesIO as StringIO - newlist_hint = lambda size: [] - - -from pip._vendor.msgpack.exceptions import ( - BufferFull, - OutOfData, - UnpackValueError, - PackValueError, - PackOverflowError, - ExtraData) - -from pip._vendor.msgpack import ExtType - - -EX_SKIP = 0 -EX_CONSTRUCT = 1 -EX_READ_ARRAY_HEADER = 2 -EX_READ_MAP_HEADER = 3 - -TYPE_IMMEDIATE = 0 -TYPE_ARRAY = 1 -TYPE_MAP = 2 -TYPE_RAW = 3 -TYPE_BIN = 4 -TYPE_EXT = 5 - -DEFAULT_RECURSE_LIMIT = 511 - - -def _check_type_strict(obj, t, type=type, tuple=tuple): - if type(t) is tuple: - return type(obj) in t - else: - return type(obj) is t - - -def _get_data_from_buffer(obj): - try: - view = memoryview(obj) - except TypeError: - # try to use legacy buffer protocol if 2.7, otherwise re-raise - if not PY3: - view = memoryview(buffer(obj)) - warnings.warn("using old buffer interface to unpack %s; " - "this leads to unpacking errors if slicing is used and " - "will be removed in a future version" % type(obj), - RuntimeWarning) - else: - raise - if view.itemsize != 1: - raise ValueError("cannot unpack from multi-byte object") - return view - - -def unpack(stream, **kwargs): - warnings.warn( - "Direct calling implementation's unpack() is deprecated, Use msgpack.unpack() or unpackb() instead.", - PendingDeprecationWarning) - data = stream.read() - return unpackb(data, **kwargs) - - -def unpackb(packed, **kwargs): - """ - Unpack an object from `packed`. - - Raises `ExtraData` when `packed` contains extra bytes. - See :class:`Unpacker` for options. - """ - unpacker = Unpacker(None, **kwargs) - unpacker.feed(packed) - try: - ret = unpacker._unpack() - except OutOfData: - raise UnpackValueError("Data is not enough.") - if unpacker._got_extradata(): - raise ExtraData(ret, unpacker._get_extradata()) - return ret - - -class Unpacker(object): - """Streaming unpacker. - - arguments: - - :param file_like: - File-like object having `.read(n)` method. - If specified, unpacker reads serialized data from it and :meth:`feed()` is not usable. - - :param int read_size: - Used as `file_like.read(read_size)`. (default: `min(16*1024, max_buffer_size)`) - - :param bool use_list: - If true, unpack msgpack array to Python list. - Otherwise, unpack to Python tuple. (default: True) - - :param bool raw: - If true, unpack msgpack raw to Python bytes (default). - Otherwise, unpack to Python str (or unicode on Python 2) by decoding - with UTF-8 encoding (recommended). - Currently, the default is true, but it will be changed to false in - near future. So you must specify it explicitly for keeping backward - compatibility. - - *encoding* option which is deprecated overrides this option. - - :param callable object_hook: - When specified, it should be callable. - Unpacker calls it with a dict argument after unpacking msgpack map. - (See also simplejson) - - :param callable object_pairs_hook: - When specified, it should be callable. - Unpacker calls it with a list of key-value pairs after unpacking msgpack map. - (See also simplejson) - - :param str encoding: - Encoding used for decoding msgpack raw. - If it is None (default), msgpack raw is deserialized to Python bytes. - - :param str unicode_errors: - (deprecated) Used for decoding msgpack raw with *encoding*. - (default: `'strict'`) - - :param int max_buffer_size: - Limits size of data waiting unpacked. 0 means system's INT_MAX (default). - Raises `BufferFull` exception when it is insufficient. - You should set this parameter when unpacking data from untrusted source. - - :param int max_str_len: - Limits max length of str. (default: 2**31-1) - - :param int max_bin_len: - Limits max length of bin. (default: 2**31-1) - - :param int max_array_len: - Limits max length of array. (default: 2**31-1) - - :param int max_map_len: - Limits max length of map. (default: 2**31-1) - - - example of streaming deserialize from file-like object:: - - unpacker = Unpacker(file_like, raw=False) - for o in unpacker: - process(o) - - example of streaming deserialize from socket:: - - unpacker = Unpacker(raw=False) - while True: - buf = sock.recv(1024**2) - if not buf: - break - unpacker.feed(buf) - for o in unpacker: - process(o) - """ - - def __init__(self, file_like=None, read_size=0, use_list=True, raw=True, - object_hook=None, object_pairs_hook=None, list_hook=None, - encoding=None, unicode_errors=None, max_buffer_size=0, - ext_hook=ExtType, - max_str_len=2147483647, # 2**32-1 - max_bin_len=2147483647, - max_array_len=2147483647, - max_map_len=2147483647, - max_ext_len=2147483647): - - if encoding is not None: - warnings.warn( - "encoding is deprecated, Use raw=False instead.", - PendingDeprecationWarning) - - if unicode_errors is None: - unicode_errors = 'strict' - - if file_like is None: - self._feeding = True - else: - if not callable(file_like.read): - raise TypeError("`file_like.read` must be callable") - self.file_like = file_like - self._feeding = False - - #: array of bytes fed. - self._buffer = bytearray() - # Some very old pythons don't support `struct.unpack_from()` with a - # `bytearray`. So we wrap it in a `buffer()` there. - if sys.version_info < (2, 7, 6): - self._buffer_view = buffer(self._buffer) - else: - self._buffer_view = self._buffer - #: Which position we currently reads - self._buff_i = 0 - - # When Unpacker is used as an iterable, between the calls to next(), - # the buffer is not "consumed" completely, for efficiency sake. - # Instead, it is done sloppily. To make sure we raise BufferFull at - # the correct moments, we have to keep track of how sloppy we were. - # Furthermore, when the buffer is incomplete (that is: in the case - # we raise an OutOfData) we need to rollback the buffer to the correct - # state, which _buf_checkpoint records. - self._buf_checkpoint = 0 - - self._max_buffer_size = max_buffer_size or 2**31-1 - if read_size > self._max_buffer_size: - raise ValueError("read_size must be smaller than max_buffer_size") - self._read_size = read_size or min(self._max_buffer_size, 16*1024) - self._raw = bool(raw) - self._encoding = encoding - self._unicode_errors = unicode_errors - self._use_list = use_list - self._list_hook = list_hook - self._object_hook = object_hook - self._object_pairs_hook = object_pairs_hook - self._ext_hook = ext_hook - self._max_str_len = max_str_len - self._max_bin_len = max_bin_len - self._max_array_len = max_array_len - self._max_map_len = max_map_len - self._max_ext_len = max_ext_len - self._stream_offset = 0 - - if list_hook is not None and not callable(list_hook): - raise TypeError('`list_hook` is not callable') - if object_hook is not None and not callable(object_hook): - raise TypeError('`object_hook` is not callable') - if object_pairs_hook is not None and not callable(object_pairs_hook): - raise TypeError('`object_pairs_hook` is not callable') - if object_hook is not None and object_pairs_hook is not None: - raise TypeError("object_pairs_hook and object_hook are mutually " - "exclusive") - if not callable(ext_hook): - raise TypeError("`ext_hook` is not callable") - - def feed(self, next_bytes): - assert self._feeding - view = _get_data_from_buffer(next_bytes) - if (len(self._buffer) - self._buff_i + len(view) > self._max_buffer_size): - raise BufferFull - - # Strip buffer before checkpoint before reading file. - if self._buf_checkpoint > 0: - del self._buffer[:self._buf_checkpoint] - self._buff_i -= self._buf_checkpoint - self._buf_checkpoint = 0 - - self._buffer += view - - def _consume(self): - """ Gets rid of the used parts of the buffer. """ - self._stream_offset += self._buff_i - self._buf_checkpoint - self._buf_checkpoint = self._buff_i - - def _got_extradata(self): - return self._buff_i < len(self._buffer) - - def _get_extradata(self): - return self._buffer[self._buff_i:] - - def read_bytes(self, n): - return self._read(n) - - def _read(self, n): - # (int) -> bytearray - self._reserve(n) - i = self._buff_i - self._buff_i = i+n - return self._buffer[i:i+n] - - def _reserve(self, n): - remain_bytes = len(self._buffer) - self._buff_i - n - - # Fast path: buffer has n bytes already - if remain_bytes >= 0: - return - - if self._feeding: - self._buff_i = self._buf_checkpoint - raise OutOfData - - # Strip buffer before checkpoint before reading file. - if self._buf_checkpoint > 0: - del self._buffer[:self._buf_checkpoint] - self._buff_i -= self._buf_checkpoint - self._buf_checkpoint = 0 - - # Read from file - remain_bytes = -remain_bytes - while remain_bytes > 0: - to_read_bytes = max(self._read_size, remain_bytes) - read_data = self.file_like.read(to_read_bytes) - if not read_data: - break - assert isinstance(read_data, bytes) - self._buffer += read_data - remain_bytes -= len(read_data) - - if len(self._buffer) < n + self._buff_i: - self._buff_i = 0 # rollback - raise OutOfData - - def _read_header(self, execute=EX_CONSTRUCT): - typ = TYPE_IMMEDIATE - n = 0 - obj = None - self._reserve(1) - b = self._buffer[self._buff_i] - self._buff_i += 1 - if b & 0b10000000 == 0: - obj = b - elif b & 0b11100000 == 0b11100000: - obj = -1 - (b ^ 0xff) - elif b & 0b11100000 == 0b10100000: - n = b & 0b00011111 - typ = TYPE_RAW - if n > self._max_str_len: - raise UnpackValueError("%s exceeds max_str_len(%s)", n, self._max_str_len) - obj = self._read(n) - elif b & 0b11110000 == 0b10010000: - n = b & 0b00001111 - typ = TYPE_ARRAY - if n > self._max_array_len: - raise UnpackValueError("%s exceeds max_array_len(%s)", n, self._max_array_len) - elif b & 0b11110000 == 0b10000000: - n = b & 0b00001111 - typ = TYPE_MAP - if n > self._max_map_len: - raise UnpackValueError("%s exceeds max_map_len(%s)", n, self._max_map_len) - elif b == 0xc0: - obj = None - elif b == 0xc2: - obj = False - elif b == 0xc3: - obj = True - elif b == 0xc4: - typ = TYPE_BIN - self._reserve(1) - n = self._buffer[self._buff_i] - self._buff_i += 1 - if n > self._max_bin_len: - raise UnpackValueError("%s exceeds max_bin_len(%s)" % (n, self._max_bin_len)) - obj = self._read(n) - elif b == 0xc5: - typ = TYPE_BIN - self._reserve(2) - n = struct.unpack_from(">H", self._buffer_view, self._buff_i)[0] - self._buff_i += 2 - if n > self._max_bin_len: - raise UnpackValueError("%s exceeds max_bin_len(%s)" % (n, self._max_bin_len)) - obj = self._read(n) - elif b == 0xc6: - typ = TYPE_BIN - self._reserve(4) - n = struct.unpack_from(">I", self._buffer_view, self._buff_i)[0] - self._buff_i += 4 - if n > self._max_bin_len: - raise UnpackValueError("%s exceeds max_bin_len(%s)" % (n, self._max_bin_len)) - obj = self._read(n) - elif b == 0xc7: # ext 8 - typ = TYPE_EXT - self._reserve(2) - L, n = struct.unpack_from('Bb', self._buffer_view, self._buff_i) - self._buff_i += 2 - if L > self._max_ext_len: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (L, self._max_ext_len)) - obj = self._read(L) - elif b == 0xc8: # ext 16 - typ = TYPE_EXT - self._reserve(3) - L, n = struct.unpack_from('>Hb', self._buffer_view, self._buff_i) - self._buff_i += 3 - if L > self._max_ext_len: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (L, self._max_ext_len)) - obj = self._read(L) - elif b == 0xc9: # ext 32 - typ = TYPE_EXT - self._reserve(5) - L, n = struct.unpack_from('>Ib', self._buffer_view, self._buff_i) - self._buff_i += 5 - if L > self._max_ext_len: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (L, self._max_ext_len)) - obj = self._read(L) - elif b == 0xca: - self._reserve(4) - obj = struct.unpack_from(">f", self._buffer_view, self._buff_i)[0] - self._buff_i += 4 - elif b == 0xcb: - self._reserve(8) - obj = struct.unpack_from(">d", self._buffer_view, self._buff_i)[0] - self._buff_i += 8 - elif b == 0xcc: - self._reserve(1) - obj = self._buffer[self._buff_i] - self._buff_i += 1 - elif b == 0xcd: - self._reserve(2) - obj = struct.unpack_from(">H", self._buffer_view, self._buff_i)[0] - self._buff_i += 2 - elif b == 0xce: - self._reserve(4) - obj = struct.unpack_from(">I", self._buffer_view, self._buff_i)[0] - self._buff_i += 4 - elif b == 0xcf: - self._reserve(8) - obj = struct.unpack_from(">Q", self._buffer_view, self._buff_i)[0] - self._buff_i += 8 - elif b == 0xd0: - self._reserve(1) - obj = struct.unpack_from("b", self._buffer_view, self._buff_i)[0] - self._buff_i += 1 - elif b == 0xd1: - self._reserve(2) - obj = struct.unpack_from(">h", self._buffer_view, self._buff_i)[0] - self._buff_i += 2 - elif b == 0xd2: - self._reserve(4) - obj = struct.unpack_from(">i", self._buffer_view, self._buff_i)[0] - self._buff_i += 4 - elif b == 0xd3: - self._reserve(8) - obj = struct.unpack_from(">q", self._buffer_view, self._buff_i)[0] - self._buff_i += 8 - elif b == 0xd4: # fixext 1 - typ = TYPE_EXT - if self._max_ext_len < 1: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (1, self._max_ext_len)) - self._reserve(2) - n, obj = struct.unpack_from("b1s", self._buffer_view, self._buff_i) - self._buff_i += 2 - elif b == 0xd5: # fixext 2 - typ = TYPE_EXT - if self._max_ext_len < 2: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (2, self._max_ext_len)) - self._reserve(3) - n, obj = struct.unpack_from("b2s", self._buffer_view, self._buff_i) - self._buff_i += 3 - elif b == 0xd6: # fixext 4 - typ = TYPE_EXT - if self._max_ext_len < 4: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (4, self._max_ext_len)) - self._reserve(5) - n, obj = struct.unpack_from("b4s", self._buffer_view, self._buff_i) - self._buff_i += 5 - elif b == 0xd7: # fixext 8 - typ = TYPE_EXT - if self._max_ext_len < 8: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (8, self._max_ext_len)) - self._reserve(9) - n, obj = struct.unpack_from("b8s", self._buffer_view, self._buff_i) - self._buff_i += 9 - elif b == 0xd8: # fixext 16 - typ = TYPE_EXT - if self._max_ext_len < 16: - raise UnpackValueError("%s exceeds max_ext_len(%s)" % (16, self._max_ext_len)) - self._reserve(17) - n, obj = struct.unpack_from("b16s", self._buffer_view, self._buff_i) - self._buff_i += 17 - elif b == 0xd9: - typ = TYPE_RAW - self._reserve(1) - n = self._buffer[self._buff_i] - self._buff_i += 1 - if n > self._max_str_len: - raise UnpackValueError("%s exceeds max_str_len(%s)", n, self._max_str_len) - obj = self._read(n) - elif b == 0xda: - typ = TYPE_RAW - self._reserve(2) - n, = struct.unpack_from(">H", self._buffer_view, self._buff_i) - self._buff_i += 2 - if n > self._max_str_len: - raise UnpackValueError("%s exceeds max_str_len(%s)", n, self._max_str_len) - obj = self._read(n) - elif b == 0xdb: - typ = TYPE_RAW - self._reserve(4) - n, = struct.unpack_from(">I", self._buffer_view, self._buff_i) - self._buff_i += 4 - if n > self._max_str_len: - raise UnpackValueError("%s exceeds max_str_len(%s)", n, self._max_str_len) - obj = self._read(n) - elif b == 0xdc: - typ = TYPE_ARRAY - self._reserve(2) - n, = struct.unpack_from(">H", self._buffer_view, self._buff_i) - self._buff_i += 2 - if n > self._max_array_len: - raise UnpackValueError("%s exceeds max_array_len(%s)", n, self._max_array_len) - elif b == 0xdd: - typ = TYPE_ARRAY - self._reserve(4) - n, = struct.unpack_from(">I", self._buffer_view, self._buff_i) - self._buff_i += 4 - if n > self._max_array_len: - raise UnpackValueError("%s exceeds max_array_len(%s)", n, self._max_array_len) - elif b == 0xde: - self._reserve(2) - n, = struct.unpack_from(">H", self._buffer_view, self._buff_i) - self._buff_i += 2 - if n > self._max_map_len: - raise UnpackValueError("%s exceeds max_map_len(%s)", n, self._max_map_len) - typ = TYPE_MAP - elif b == 0xdf: - self._reserve(4) - n, = struct.unpack_from(">I", self._buffer_view, self._buff_i) - self._buff_i += 4 - if n > self._max_map_len: - raise UnpackValueError("%s exceeds max_map_len(%s)", n, self._max_map_len) - typ = TYPE_MAP - else: - raise UnpackValueError("Unknown header: 0x%x" % b) - return typ, n, obj - - def _unpack(self, execute=EX_CONSTRUCT): - typ, n, obj = self._read_header(execute) - - if execute == EX_READ_ARRAY_HEADER: - if typ != TYPE_ARRAY: - raise UnpackValueError("Expected array") - return n - if execute == EX_READ_MAP_HEADER: - if typ != TYPE_MAP: - raise UnpackValueError("Expected map") - return n - # TODO should we eliminate the recursion? - if typ == TYPE_ARRAY: - if execute == EX_SKIP: - for i in xrange(n): - # TODO check whether we need to call `list_hook` - self._unpack(EX_SKIP) - return - ret = newlist_hint(n) - for i in xrange(n): - ret.append(self._unpack(EX_CONSTRUCT)) - if self._list_hook is not None: - ret = self._list_hook(ret) - # TODO is the interaction between `list_hook` and `use_list` ok? - return ret if self._use_list else tuple(ret) - if typ == TYPE_MAP: - if execute == EX_SKIP: - for i in xrange(n): - # TODO check whether we need to call hooks - self._unpack(EX_SKIP) - self._unpack(EX_SKIP) - return - if self._object_pairs_hook is not None: - ret = self._object_pairs_hook( - (self._unpack(EX_CONSTRUCT), - self._unpack(EX_CONSTRUCT)) - for _ in xrange(n)) - else: - ret = {} - for _ in xrange(n): - key = self._unpack(EX_CONSTRUCT) - ret[key] = self._unpack(EX_CONSTRUCT) - if self._object_hook is not None: - ret = self._object_hook(ret) - return ret - if execute == EX_SKIP: - return - if typ == TYPE_RAW: - if self._encoding is not None: - obj = obj.decode(self._encoding, self._unicode_errors) - elif self._raw: - obj = bytes(obj) - else: - obj = obj.decode('utf_8') - return obj - if typ == TYPE_EXT: - return self._ext_hook(n, bytes(obj)) - if typ == TYPE_BIN: - return bytes(obj) - assert typ == TYPE_IMMEDIATE - return obj - - def __iter__(self): - return self - - def __next__(self): - try: - ret = self._unpack(EX_CONSTRUCT) - self._consume() - return ret - except OutOfData: - self._consume() - raise StopIteration - - next = __next__ - - def skip(self, write_bytes=None): - self._unpack(EX_SKIP) - if write_bytes is not None: - warnings.warn("`write_bytes` option is deprecated. Use `.tell()` instead.", DeprecationWarning) - write_bytes(self._buffer[self._buf_checkpoint:self._buff_i]) - self._consume() - - def unpack(self, write_bytes=None): - ret = self._unpack(EX_CONSTRUCT) - if write_bytes is not None: - warnings.warn("`write_bytes` option is deprecated. Use `.tell()` instead.", DeprecationWarning) - write_bytes(self._buffer[self._buf_checkpoint:self._buff_i]) - self._consume() - return ret - - def read_array_header(self, write_bytes=None): - ret = self._unpack(EX_READ_ARRAY_HEADER) - if write_bytes is not None: - warnings.warn("`write_bytes` option is deprecated. Use `.tell()` instead.", DeprecationWarning) - write_bytes(self._buffer[self._buf_checkpoint:self._buff_i]) - self._consume() - return ret - - def read_map_header(self, write_bytes=None): - ret = self._unpack(EX_READ_MAP_HEADER) - if write_bytes is not None: - warnings.warn("`write_bytes` option is deprecated. Use `.tell()` instead.", DeprecationWarning) - write_bytes(self._buffer[self._buf_checkpoint:self._buff_i]) - self._consume() - return ret - - def tell(self): - return self._stream_offset - - -class Packer(object): - """ - MessagePack Packer - - usage: - - packer = Packer() - astream.write(packer.pack(a)) - astream.write(packer.pack(b)) - - Packer's constructor has some keyword arguments: - - :param callable default: - Convert user type to builtin type that Packer supports. - See also simplejson's document. - - :param bool use_single_float: - Use single precision float type for float. (default: False) - - :param bool autoreset: - Reset buffer after each pack and return its content as `bytes`. (default: True). - If set this to false, use `bytes()` to get content and `.reset()` to clear buffer. - - :param bool use_bin_type: - Use bin type introduced in msgpack spec 2.0 for bytes. - It also enables str8 type for unicode. - - :param bool strict_types: - If set to true, types will be checked to be exact. Derived classes - from serializeable types will not be serialized and will be - treated as unsupported type and forwarded to default. - Additionally tuples will not be serialized as lists. - This is useful when trying to implement accurate serialization - for python types. - - :param str encoding: - (deprecated) Convert unicode to bytes with this encoding. (default: 'utf-8') - - :param str unicode_errors: - Error handler for encoding unicode. (default: 'strict') - """ - def __init__(self, default=None, encoding=None, unicode_errors=None, - use_single_float=False, autoreset=True, use_bin_type=False, - strict_types=False): - if encoding is None: - encoding = 'utf_8' - else: - warnings.warn( - "encoding is deprecated, Use raw=False instead.", - PendingDeprecationWarning) - - if unicode_errors is None: - unicode_errors = 'strict' - - self._strict_types = strict_types - self._use_float = use_single_float - self._autoreset = autoreset - self._use_bin_type = use_bin_type - self._encoding = encoding - self._unicode_errors = unicode_errors - self._buffer = StringIO() - if default is not None: - if not callable(default): - raise TypeError("default must be callable") - self._default = default - - def _pack(self, obj, nest_limit=DEFAULT_RECURSE_LIMIT, - check=isinstance, check_type_strict=_check_type_strict): - default_used = False - if self._strict_types: - check = check_type_strict - list_types = list - else: - list_types = (list, tuple) - while True: - if nest_limit < 0: - raise PackValueError("recursion limit exceeded") - if obj is None: - return self._buffer.write(b"\xc0") - if check(obj, bool): - if obj: - return self._buffer.write(b"\xc3") - return self._buffer.write(b"\xc2") - if check(obj, int_types): - if 0 <= obj < 0x80: - return self._buffer.write(struct.pack("B", obj)) - if -0x20 <= obj < 0: - return self._buffer.write(struct.pack("b", obj)) - if 0x80 <= obj <= 0xff: - return self._buffer.write(struct.pack("BB", 0xcc, obj)) - if -0x80 <= obj < 0: - return self._buffer.write(struct.pack(">Bb", 0xd0, obj)) - if 0xff < obj <= 0xffff: - return self._buffer.write(struct.pack(">BH", 0xcd, obj)) - if -0x8000 <= obj < -0x80: - return self._buffer.write(struct.pack(">Bh", 0xd1, obj)) - if 0xffff < obj <= 0xffffffff: - return self._buffer.write(struct.pack(">BI", 0xce, obj)) - if -0x80000000 <= obj < -0x8000: - return self._buffer.write(struct.pack(">Bi", 0xd2, obj)) - if 0xffffffff < obj <= 0xffffffffffffffff: - return self._buffer.write(struct.pack(">BQ", 0xcf, obj)) - if -0x8000000000000000 <= obj < -0x80000000: - return self._buffer.write(struct.pack(">Bq", 0xd3, obj)) - if not default_used and self._default is not None: - obj = self._default(obj) - default_used = True - continue - raise PackOverflowError("Integer value out of range") - if check(obj, (bytes, bytearray)): - n = len(obj) - if n >= 2**32: - raise PackValueError("%s is too large" % type(obj).__name__) - self._pack_bin_header(n) - return self._buffer.write(obj) - if check(obj, Unicode): - if self._encoding is None: - raise TypeError( - "Can't encode unicode string: " - "no encoding is specified") - obj = obj.encode(self._encoding, self._unicode_errors) - n = len(obj) - if n >= 2**32: - raise PackValueError("String is too large") - self._pack_raw_header(n) - return self._buffer.write(obj) - if check(obj, memoryview): - n = len(obj) * obj.itemsize - if n >= 2**32: - raise PackValueError("Memoryview is too large") - self._pack_bin_header(n) - return self._buffer.write(obj) - if check(obj, float): - if self._use_float: - return self._buffer.write(struct.pack(">Bf", 0xca, obj)) - return self._buffer.write(struct.pack(">Bd", 0xcb, obj)) - if check(obj, ExtType): - code = obj.code - data = obj.data - assert isinstance(code, int) - assert isinstance(data, bytes) - L = len(data) - if L == 1: - self._buffer.write(b'\xd4') - elif L == 2: - self._buffer.write(b'\xd5') - elif L == 4: - self._buffer.write(b'\xd6') - elif L == 8: - self._buffer.write(b'\xd7') - elif L == 16: - self._buffer.write(b'\xd8') - elif L <= 0xff: - self._buffer.write(struct.pack(">BB", 0xc7, L)) - elif L <= 0xffff: - self._buffer.write(struct.pack(">BH", 0xc8, L)) - else: - self._buffer.write(struct.pack(">BI", 0xc9, L)) - self._buffer.write(struct.pack("b", code)) - self._buffer.write(data) - return - if check(obj, list_types): - n = len(obj) - self._pack_array_header(n) - for i in xrange(n): - self._pack(obj[i], nest_limit - 1) - return - if check(obj, dict): - return self._pack_map_pairs(len(obj), dict_iteritems(obj), - nest_limit - 1) - if not default_used and self._default is not None: - obj = self._default(obj) - default_used = 1 - continue - raise TypeError("Cannot serialize %r" % (obj, )) - - def pack(self, obj): - try: - self._pack(obj) - except: - self._buffer = StringIO() # force reset - raise - ret = self._buffer.getvalue() - if self._autoreset: - self._buffer = StringIO() - elif USING_STRINGBUILDER: - self._buffer = StringIO(ret) - return ret - - def pack_map_pairs(self, pairs): - self._pack_map_pairs(len(pairs), pairs) - ret = self._buffer.getvalue() - if self._autoreset: - self._buffer = StringIO() - elif USING_STRINGBUILDER: - self._buffer = StringIO(ret) - return ret - - def pack_array_header(self, n): - if n >= 2**32: - raise PackValueError - self._pack_array_header(n) - ret = self._buffer.getvalue() - if self._autoreset: - self._buffer = StringIO() - elif USING_STRINGBUILDER: - self._buffer = StringIO(ret) - return ret - - def pack_map_header(self, n): - if n >= 2**32: - raise PackValueError - self._pack_map_header(n) - ret = self._buffer.getvalue() - if self._autoreset: - self._buffer = StringIO() - elif USING_STRINGBUILDER: - self._buffer = StringIO(ret) - return ret - - def pack_ext_type(self, typecode, data): - if not isinstance(typecode, int): - raise TypeError("typecode must have int type.") - if not 0 <= typecode <= 127: - raise ValueError("typecode should be 0-127") - if not isinstance(data, bytes): - raise TypeError("data must have bytes type") - L = len(data) - if L > 0xffffffff: - raise PackValueError("Too large data") - if L == 1: - self._buffer.write(b'\xd4') - elif L == 2: - self._buffer.write(b'\xd5') - elif L == 4: - self._buffer.write(b'\xd6') - elif L == 8: - self._buffer.write(b'\xd7') - elif L == 16: - self._buffer.write(b'\xd8') - elif L <= 0xff: - self._buffer.write(b'\xc7' + struct.pack('B', L)) - elif L <= 0xffff: - self._buffer.write(b'\xc8' + struct.pack('>H', L)) - else: - self._buffer.write(b'\xc9' + struct.pack('>I', L)) - self._buffer.write(struct.pack('B', typecode)) - self._buffer.write(data) - - def _pack_array_header(self, n): - if n <= 0x0f: - return self._buffer.write(struct.pack('B', 0x90 + n)) - if n <= 0xffff: - return self._buffer.write(struct.pack(">BH", 0xdc, n)) - if n <= 0xffffffff: - return self._buffer.write(struct.pack(">BI", 0xdd, n)) - raise PackValueError("Array is too large") - - def _pack_map_header(self, n): - if n <= 0x0f: - return self._buffer.write(struct.pack('B', 0x80 + n)) - if n <= 0xffff: - return self._buffer.write(struct.pack(">BH", 0xde, n)) - if n <= 0xffffffff: - return self._buffer.write(struct.pack(">BI", 0xdf, n)) - raise PackValueError("Dict is too large") - - def _pack_map_pairs(self, n, pairs, nest_limit=DEFAULT_RECURSE_LIMIT): - self._pack_map_header(n) - for (k, v) in pairs: - self._pack(k, nest_limit - 1) - self._pack(v, nest_limit - 1) - - def _pack_raw_header(self, n): - if n <= 0x1f: - self._buffer.write(struct.pack('B', 0xa0 + n)) - elif self._use_bin_type and n <= 0xff: - self._buffer.write(struct.pack('>BB', 0xd9, n)) - elif n <= 0xffff: - self._buffer.write(struct.pack(">BH", 0xda, n)) - elif n <= 0xffffffff: - self._buffer.write(struct.pack(">BI", 0xdb, n)) - else: - raise PackValueError('Raw is too large') - - def _pack_bin_header(self, n): - if not self._use_bin_type: - return self._pack_raw_header(n) - elif n <= 0xff: - return self._buffer.write(struct.pack('>BB', 0xc4, n)) - elif n <= 0xffff: - return self._buffer.write(struct.pack(">BH", 0xc5, n)) - elif n <= 0xffffffff: - return self._buffer.write(struct.pack(">BI", 0xc6, n)) - else: - raise PackValueError('Bin is too large') - - def bytes(self): - return self._buffer.getvalue() - - def reset(self): - self._buffer = StringIO() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__about__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__about__.py deleted file mode 100644 index bb79fb7..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__about__.py +++ /dev/null @@ -1,21 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -__all__ = [ - "__title__", "__summary__", "__uri__", "__version__", "__author__", - "__email__", "__license__", "__copyright__", -] - -__title__ = "packaging" -__summary__ = "Core utilities for Python packages" -__uri__ = "https://github.com/pypa/packaging" - -__version__ = "17.1" - -__author__ = "Donald Stufft and individual contributors" -__email__ = "donald@stufft.io" - -__license__ = "BSD or Apache License, Version 2.0" -__copyright__ = "Copyright 2014-2016 %s" % __author__ diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__init__.py deleted file mode 100644 index e520d35..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -from .__about__ import ( - __author__, __copyright__, __email__, __license__, __summary__, __title__, - __uri__, __version__ -) - -__all__ = [ - "__title__", "__summary__", "__uri__", "__version__", "__author__", - "__email__", "__license__", "__copyright__", -] diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_compat.py deleted file mode 100644 index 6daa860..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_compat.py +++ /dev/null @@ -1,30 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import sys - - -PY2 = sys.version_info[0] == 2 -PY3 = sys.version_info[0] == 3 - -# flake8: noqa - -if PY3: - string_types = str, -else: - string_types = basestring, - - -def with_metaclass(meta, *bases): - """ - Create a base class with a metaclass. - """ - # This requires a bit of explanation: the basic idea is to make a dummy - # metaclass for one level of class instantiation that replaces itself with - # the actual metaclass. - class metaclass(meta): - def __new__(cls, name, this_bases, d): - return meta(name, bases, d) - return type.__new__(metaclass, 'temporary_class', (), {}) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_structures.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_structures.py deleted file mode 100644 index 3f0c27f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/_structures.py +++ /dev/null @@ -1,70 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - - -class Infinity(object): - - def __repr__(self): - return "Infinity" - - def __hash__(self): - return hash(repr(self)) - - def __lt__(self, other): - return False - - def __le__(self, other): - return False - - def __eq__(self, other): - return isinstance(other, self.__class__) - - def __ne__(self, other): - return not isinstance(other, self.__class__) - - def __gt__(self, other): - return True - - def __ge__(self, other): - return True - - def __neg__(self): - return NegativeInfinity - - -Infinity = Infinity() - - -class NegativeInfinity(object): - - def __repr__(self): - return "-Infinity" - - def __hash__(self): - return hash(repr(self)) - - def __lt__(self, other): - return True - - def __le__(self, other): - return True - - def __eq__(self, other): - return isinstance(other, self.__class__) - - def __ne__(self, other): - return not isinstance(other, self.__class__) - - def __gt__(self, other): - return False - - def __ge__(self, other): - return False - - def __neg__(self): - return Infinity - - -NegativeInfinity = NegativeInfinity() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/markers.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/markers.py deleted file mode 100644 index b4dc0b9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/markers.py +++ /dev/null @@ -1,301 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import operator -import os -import platform -import sys - -from pip._vendor.pyparsing import ParseException, ParseResults, stringStart, stringEnd -from pip._vendor.pyparsing import ZeroOrMore, Group, Forward, QuotedString -from pip._vendor.pyparsing import Literal as L # noqa - -from ._compat import string_types -from .specifiers import Specifier, InvalidSpecifier - - -__all__ = [ - "InvalidMarker", "UndefinedComparison", "UndefinedEnvironmentName", - "Marker", "default_environment", -] - - -class InvalidMarker(ValueError): - """ - An invalid marker was found, users should refer to PEP 508. - """ - - -class UndefinedComparison(ValueError): - """ - An invalid operation was attempted on a value that doesn't support it. - """ - - -class UndefinedEnvironmentName(ValueError): - """ - A name was attempted to be used that does not exist inside of the - environment. - """ - - -class Node(object): - - def __init__(self, value): - self.value = value - - def __str__(self): - return str(self.value) - - def __repr__(self): - return "<{0}({1!r})>".format(self.__class__.__name__, str(self)) - - def serialize(self): - raise NotImplementedError - - -class Variable(Node): - - def serialize(self): - return str(self) - - -class Value(Node): - - def serialize(self): - return '"{0}"'.format(self) - - -class Op(Node): - - def serialize(self): - return str(self) - - -VARIABLE = ( - L("implementation_version") | - L("platform_python_implementation") | - L("implementation_name") | - L("python_full_version") | - L("platform_release") | - L("platform_version") | - L("platform_machine") | - L("platform_system") | - L("python_version") | - L("sys_platform") | - L("os_name") | - L("os.name") | # PEP-345 - L("sys.platform") | # PEP-345 - L("platform.version") | # PEP-345 - L("platform.machine") | # PEP-345 - L("platform.python_implementation") | # PEP-345 - L("python_implementation") | # undocumented setuptools legacy - L("extra") -) -ALIASES = { - 'os.name': 'os_name', - 'sys.platform': 'sys_platform', - 'platform.version': 'platform_version', - 'platform.machine': 'platform_machine', - 'platform.python_implementation': 'platform_python_implementation', - 'python_implementation': 'platform_python_implementation' -} -VARIABLE.setParseAction(lambda s, l, t: Variable(ALIASES.get(t[0], t[0]))) - -VERSION_CMP = ( - L("===") | - L("==") | - L(">=") | - L("<=") | - L("!=") | - L("~=") | - L(">") | - L("<") -) - -MARKER_OP = VERSION_CMP | L("not in") | L("in") -MARKER_OP.setParseAction(lambda s, l, t: Op(t[0])) - -MARKER_VALUE = QuotedString("'") | QuotedString('"') -MARKER_VALUE.setParseAction(lambda s, l, t: Value(t[0])) - -BOOLOP = L("and") | L("or") - -MARKER_VAR = VARIABLE | MARKER_VALUE - -MARKER_ITEM = Group(MARKER_VAR + MARKER_OP + MARKER_VAR) -MARKER_ITEM.setParseAction(lambda s, l, t: tuple(t[0])) - -LPAREN = L("(").suppress() -RPAREN = L(")").suppress() - -MARKER_EXPR = Forward() -MARKER_ATOM = MARKER_ITEM | Group(LPAREN + MARKER_EXPR + RPAREN) -MARKER_EXPR << MARKER_ATOM + ZeroOrMore(BOOLOP + MARKER_EXPR) - -MARKER = stringStart + MARKER_EXPR + stringEnd - - -def _coerce_parse_result(results): - if isinstance(results, ParseResults): - return [_coerce_parse_result(i) for i in results] - else: - return results - - -def _format_marker(marker, first=True): - assert isinstance(marker, (list, tuple, string_types)) - - # Sometimes we have a structure like [[...]] which is a single item list - # where the single item is itself it's own list. In that case we want skip - # the rest of this function so that we don't get extraneous () on the - # outside. - if (isinstance(marker, list) and len(marker) == 1 and - isinstance(marker[0], (list, tuple))): - return _format_marker(marker[0]) - - if isinstance(marker, list): - inner = (_format_marker(m, first=False) for m in marker) - if first: - return " ".join(inner) - else: - return "(" + " ".join(inner) + ")" - elif isinstance(marker, tuple): - return " ".join([m.serialize() for m in marker]) - else: - return marker - - -_operators = { - "in": lambda lhs, rhs: lhs in rhs, - "not in": lambda lhs, rhs: lhs not in rhs, - "<": operator.lt, - "<=": operator.le, - "==": operator.eq, - "!=": operator.ne, - ">=": operator.ge, - ">": operator.gt, -} - - -def _eval_op(lhs, op, rhs): - try: - spec = Specifier("".join([op.serialize(), rhs])) - except InvalidSpecifier: - pass - else: - return spec.contains(lhs) - - oper = _operators.get(op.serialize()) - if oper is None: - raise UndefinedComparison( - "Undefined {0!r} on {1!r} and {2!r}.".format(op, lhs, rhs) - ) - - return oper(lhs, rhs) - - -_undefined = object() - - -def _get_env(environment, name): - value = environment.get(name, _undefined) - - if value is _undefined: - raise UndefinedEnvironmentName( - "{0!r} does not exist in evaluation environment.".format(name) - ) - - return value - - -def _evaluate_markers(markers, environment): - groups = [[]] - - for marker in markers: - assert isinstance(marker, (list, tuple, string_types)) - - if isinstance(marker, list): - groups[-1].append(_evaluate_markers(marker, environment)) - elif isinstance(marker, tuple): - lhs, op, rhs = marker - - if isinstance(lhs, Variable): - lhs_value = _get_env(environment, lhs.value) - rhs_value = rhs.value - else: - lhs_value = lhs.value - rhs_value = _get_env(environment, rhs.value) - - groups[-1].append(_eval_op(lhs_value, op, rhs_value)) - else: - assert marker in ["and", "or"] - if marker == "or": - groups.append([]) - - return any(all(item) for item in groups) - - -def format_full_version(info): - version = '{0.major}.{0.minor}.{0.micro}'.format(info) - kind = info.releaselevel - if kind != 'final': - version += kind[0] + str(info.serial) - return version - - -def default_environment(): - if hasattr(sys, 'implementation'): - iver = format_full_version(sys.implementation.version) - implementation_name = sys.implementation.name - else: - iver = '0' - implementation_name = '' - - return { - "implementation_name": implementation_name, - "implementation_version": iver, - "os_name": os.name, - "platform_machine": platform.machine(), - "platform_release": platform.release(), - "platform_system": platform.system(), - "platform_version": platform.version(), - "python_full_version": platform.python_version(), - "platform_python_implementation": platform.python_implementation(), - "python_version": platform.python_version()[:3], - "sys_platform": sys.platform, - } - - -class Marker(object): - - def __init__(self, marker): - try: - self._markers = _coerce_parse_result(MARKER.parseString(marker)) - except ParseException as e: - err_str = "Invalid marker: {0!r}, parse error at {1!r}".format( - marker, marker[e.loc:e.loc + 8]) - raise InvalidMarker(err_str) - - def __str__(self): - return _format_marker(self._markers) - - def __repr__(self): - return "<Marker({0!r})>".format(str(self)) - - def evaluate(self, environment=None): - """Evaluate a marker. - - Return the boolean from evaluating the given marker against the - environment. environment is an optional argument to override all or - part of the determined environment. - - The environment is determined from the current Python process. - """ - current_environment = default_environment() - if environment is not None: - current_environment.update(environment) - - return _evaluate_markers(self._markers, current_environment) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/requirements.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/requirements.py deleted file mode 100644 index 98bc507..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/requirements.py +++ /dev/null @@ -1,130 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import string -import re - -from pip._vendor.pyparsing import stringStart, stringEnd, originalTextFor, ParseException -from pip._vendor.pyparsing import ZeroOrMore, Word, Optional, Regex, Combine -from pip._vendor.pyparsing import Literal as L # noqa -from pip._vendor.six.moves.urllib import parse as urlparse - -from .markers import MARKER_EXPR, Marker -from .specifiers import LegacySpecifier, Specifier, SpecifierSet - - -class InvalidRequirement(ValueError): - """ - An invalid requirement was found, users should refer to PEP 508. - """ - - -ALPHANUM = Word(string.ascii_letters + string.digits) - -LBRACKET = L("[").suppress() -RBRACKET = L("]").suppress() -LPAREN = L("(").suppress() -RPAREN = L(")").suppress() -COMMA = L(",").suppress() -SEMICOLON = L(";").suppress() -AT = L("@").suppress() - -PUNCTUATION = Word("-_.") -IDENTIFIER_END = ALPHANUM | (ZeroOrMore(PUNCTUATION) + ALPHANUM) -IDENTIFIER = Combine(ALPHANUM + ZeroOrMore(IDENTIFIER_END)) - -NAME = IDENTIFIER("name") -EXTRA = IDENTIFIER - -URI = Regex(r'[^ ]+')("url") -URL = (AT + URI) - -EXTRAS_LIST = EXTRA + ZeroOrMore(COMMA + EXTRA) -EXTRAS = (LBRACKET + Optional(EXTRAS_LIST) + RBRACKET)("extras") - -VERSION_PEP440 = Regex(Specifier._regex_str, re.VERBOSE | re.IGNORECASE) -VERSION_LEGACY = Regex(LegacySpecifier._regex_str, re.VERBOSE | re.IGNORECASE) - -VERSION_ONE = VERSION_PEP440 ^ VERSION_LEGACY -VERSION_MANY = Combine(VERSION_ONE + ZeroOrMore(COMMA + VERSION_ONE), - joinString=",", adjacent=False)("_raw_spec") -_VERSION_SPEC = Optional(((LPAREN + VERSION_MANY + RPAREN) | VERSION_MANY)) -_VERSION_SPEC.setParseAction(lambda s, l, t: t._raw_spec or '') - -VERSION_SPEC = originalTextFor(_VERSION_SPEC)("specifier") -VERSION_SPEC.setParseAction(lambda s, l, t: t[1]) - -MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker") -MARKER_EXPR.setParseAction( - lambda s, l, t: Marker(s[t._original_start:t._original_end]) -) -MARKER_SEPARATOR = SEMICOLON -MARKER = MARKER_SEPARATOR + MARKER_EXPR - -VERSION_AND_MARKER = VERSION_SPEC + Optional(MARKER) -URL_AND_MARKER = URL + Optional(MARKER) - -NAMED_REQUIREMENT = \ - NAME + Optional(EXTRAS) + (URL_AND_MARKER | VERSION_AND_MARKER) - -REQUIREMENT = stringStart + NAMED_REQUIREMENT + stringEnd -# pyparsing isn't thread safe during initialization, so we do it eagerly, see -# issue #104 -REQUIREMENT.parseString("x[]") - - -class Requirement(object): - """Parse a requirement. - - Parse a given requirement string into its parts, such as name, specifier, - URL, and extras. Raises InvalidRequirement on a badly-formed requirement - string. - """ - - # TODO: Can we test whether something is contained within a requirement? - # If so how do we do that? Do we need to test against the _name_ of - # the thing as well as the version? What about the markers? - # TODO: Can we normalize the name and extra name? - - def __init__(self, requirement_string): - try: - req = REQUIREMENT.parseString(requirement_string) - except ParseException as e: - raise InvalidRequirement( - "Invalid requirement, parse error at \"{0!r}\"".format( - requirement_string[e.loc:e.loc + 8])) - - self.name = req.name - if req.url: - parsed_url = urlparse.urlparse(req.url) - if not (parsed_url.scheme and parsed_url.netloc) or ( - not parsed_url.scheme and not parsed_url.netloc): - raise InvalidRequirement("Invalid URL given") - self.url = req.url - else: - self.url = None - self.extras = set(req.extras.asList() if req.extras else []) - self.specifier = SpecifierSet(req.specifier) - self.marker = req.marker if req.marker else None - - def __str__(self): - parts = [self.name] - - if self.extras: - parts.append("[{0}]".format(",".join(sorted(self.extras)))) - - if self.specifier: - parts.append(str(self.specifier)) - - if self.url: - parts.append("@ {0}".format(self.url)) - - if self.marker: - parts.append("; {0}".format(self.marker)) - - return "".join(parts) - - def __repr__(self): - return "<Requirement({0!r})>".format(str(self)) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/specifiers.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/specifiers.py deleted file mode 100644 index 7d2fe4c..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/specifiers.py +++ /dev/null @@ -1,774 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import abc -import functools -import itertools -import re - -from ._compat import string_types, with_metaclass -from .version import Version, LegacyVersion, parse - - -class InvalidSpecifier(ValueError): - """ - An invalid specifier was found, users should refer to PEP 440. - """ - - -class BaseSpecifier(with_metaclass(abc.ABCMeta, object)): - - @abc.abstractmethod - def __str__(self): - """ - Returns the str representation of this Specifier like object. This - should be representative of the Specifier itself. - """ - - @abc.abstractmethod - def __hash__(self): - """ - Returns a hash value for this Specifier like object. - """ - - @abc.abstractmethod - def __eq__(self, other): - """ - Returns a boolean representing whether or not the two Specifier like - objects are equal. - """ - - @abc.abstractmethod - def __ne__(self, other): - """ - Returns a boolean representing whether or not the two Specifier like - objects are not equal. - """ - - @abc.abstractproperty - def prereleases(self): - """ - Returns whether or not pre-releases as a whole are allowed by this - specifier. - """ - - @prereleases.setter - def prereleases(self, value): - """ - Sets whether or not pre-releases as a whole are allowed by this - specifier. - """ - - @abc.abstractmethod - def contains(self, item, prereleases=None): - """ - Determines if the given item is contained within this specifier. - """ - - @abc.abstractmethod - def filter(self, iterable, prereleases=None): - """ - Takes an iterable of items and filters them so that only items which - are contained within this specifier are allowed in it. - """ - - -class _IndividualSpecifier(BaseSpecifier): - - _operators = {} - - def __init__(self, spec="", prereleases=None): - match = self._regex.search(spec) - if not match: - raise InvalidSpecifier("Invalid specifier: '{0}'".format(spec)) - - self._spec = ( - match.group("operator").strip(), - match.group("version").strip(), - ) - - # Store whether or not this Specifier should accept prereleases - self._prereleases = prereleases - - def __repr__(self): - pre = ( - ", prereleases={0!r}".format(self.prereleases) - if self._prereleases is not None - else "" - ) - - return "<{0}({1!r}{2})>".format( - self.__class__.__name__, - str(self), - pre, - ) - - def __str__(self): - return "{0}{1}".format(*self._spec) - - def __hash__(self): - return hash(self._spec) - - def __eq__(self, other): - if isinstance(other, string_types): - try: - other = self.__class__(other) - except InvalidSpecifier: - return NotImplemented - elif not isinstance(other, self.__class__): - return NotImplemented - - return self._spec == other._spec - - def __ne__(self, other): - if isinstance(other, string_types): - try: - other = self.__class__(other) - except InvalidSpecifier: - return NotImplemented - elif not isinstance(other, self.__class__): - return NotImplemented - - return self._spec != other._spec - - def _get_operator(self, op): - return getattr(self, "_compare_{0}".format(self._operators[op])) - - def _coerce_version(self, version): - if not isinstance(version, (LegacyVersion, Version)): - version = parse(version) - return version - - @property - def operator(self): - return self._spec[0] - - @property - def version(self): - return self._spec[1] - - @property - def prereleases(self): - return self._prereleases - - @prereleases.setter - def prereleases(self, value): - self._prereleases = value - - def __contains__(self, item): - return self.contains(item) - - def contains(self, item, prereleases=None): - # Determine if prereleases are to be allowed or not. - if prereleases is None: - prereleases = self.prereleases - - # Normalize item to a Version or LegacyVersion, this allows us to have - # a shortcut for ``"2.0" in Specifier(">=2") - item = self._coerce_version(item) - - # Determine if we should be supporting prereleases in this specifier - # or not, if we do not support prereleases than we can short circuit - # logic if this version is a prereleases. - if item.is_prerelease and not prereleases: - return False - - # Actually do the comparison to determine if this item is contained - # within this Specifier or not. - return self._get_operator(self.operator)(item, self.version) - - def filter(self, iterable, prereleases=None): - yielded = False - found_prereleases = [] - - kw = {"prereleases": prereleases if prereleases is not None else True} - - # Attempt to iterate over all the values in the iterable and if any of - # them match, yield them. - for version in iterable: - parsed_version = self._coerce_version(version) - - if self.contains(parsed_version, **kw): - # If our version is a prerelease, and we were not set to allow - # prereleases, then we'll store it for later incase nothing - # else matches this specifier. - if (parsed_version.is_prerelease and not - (prereleases or self.prereleases)): - found_prereleases.append(version) - # Either this is not a prerelease, or we should have been - # accepting prereleases from the beginning. - else: - yielded = True - yield version - - # Now that we've iterated over everything, determine if we've yielded - # any values, and if we have not and we have any prereleases stored up - # then we will go ahead and yield the prereleases. - if not yielded and found_prereleases: - for version in found_prereleases: - yield version - - -class LegacySpecifier(_IndividualSpecifier): - - _regex_str = ( - r""" - (?P<operator>(==|!=|<=|>=|<|>)) - \s* - (?P<version> - [^,;\s)]* # Since this is a "legacy" specifier, and the version - # string can be just about anything, we match everything - # except for whitespace, a semi-colon for marker support, - # a closing paren since versions can be enclosed in - # them, and a comma since it's a version separator. - ) - """ - ) - - _regex = re.compile( - r"^\s*" + _regex_str + r"\s*$", re.VERBOSE | re.IGNORECASE) - - _operators = { - "==": "equal", - "!=": "not_equal", - "<=": "less_than_equal", - ">=": "greater_than_equal", - "<": "less_than", - ">": "greater_than", - } - - def _coerce_version(self, version): - if not isinstance(version, LegacyVersion): - version = LegacyVersion(str(version)) - return version - - def _compare_equal(self, prospective, spec): - return prospective == self._coerce_version(spec) - - def _compare_not_equal(self, prospective, spec): - return prospective != self._coerce_version(spec) - - def _compare_less_than_equal(self, prospective, spec): - return prospective <= self._coerce_version(spec) - - def _compare_greater_than_equal(self, prospective, spec): - return prospective >= self._coerce_version(spec) - - def _compare_less_than(self, prospective, spec): - return prospective < self._coerce_version(spec) - - def _compare_greater_than(self, prospective, spec): - return prospective > self._coerce_version(spec) - - -def _require_version_compare(fn): - @functools.wraps(fn) - def wrapped(self, prospective, spec): - if not isinstance(prospective, Version): - return False - return fn(self, prospective, spec) - return wrapped - - -class Specifier(_IndividualSpecifier): - - _regex_str = ( - r""" - (?P<operator>(~=|==|!=|<=|>=|<|>|===)) - (?P<version> - (?: - # The identity operators allow for an escape hatch that will - # do an exact string match of the version you wish to install. - # This will not be parsed by PEP 440 and we cannot determine - # any semantic meaning from it. This operator is discouraged - # but included entirely as an escape hatch. - (?<====) # Only match for the identity operator - \s* - [^\s]* # We just match everything, except for whitespace - # since we are only testing for strict identity. - ) - | - (?: - # The (non)equality operators allow for wild card and local - # versions to be specified so we have to define these two - # operators separately to enable that. - (?<===|!=) # Only match for equals and not equals - - \s* - v? - (?:[0-9]+!)? # epoch - [0-9]+(?:\.[0-9]+)* # release - (?: # pre release - [-_\.]? - (a|b|c|rc|alpha|beta|pre|preview) - [-_\.]? - [0-9]* - )? - (?: # post release - (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*) - )? - - # You cannot use a wild card and a dev or local version - # together so group them with a | and make them optional. - (?: - (?:[-_\.]?dev[-_\.]?[0-9]*)? # dev release - (?:\+[a-z0-9]+(?:[-_\.][a-z0-9]+)*)? # local - | - \.\* # Wild card syntax of .* - )? - ) - | - (?: - # The compatible operator requires at least two digits in the - # release segment. - (?<=~=) # Only match for the compatible operator - - \s* - v? - (?:[0-9]+!)? # epoch - [0-9]+(?:\.[0-9]+)+ # release (We have a + instead of a *) - (?: # pre release - [-_\.]? - (a|b|c|rc|alpha|beta|pre|preview) - [-_\.]? - [0-9]* - )? - (?: # post release - (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*) - )? - (?:[-_\.]?dev[-_\.]?[0-9]*)? # dev release - ) - | - (?: - # All other operators only allow a sub set of what the - # (non)equality operators do. Specifically they do not allow - # local versions to be specified nor do they allow the prefix - # matching wild cards. - (?<!==|!=|~=) # We have special cases for these - # operators so we want to make sure they - # don't match here. - - \s* - v? - (?:[0-9]+!)? # epoch - [0-9]+(?:\.[0-9]+)* # release - (?: # pre release - [-_\.]? - (a|b|c|rc|alpha|beta|pre|preview) - [-_\.]? - [0-9]* - )? - (?: # post release - (?:-[0-9]+)|(?:[-_\.]?(post|rev|r)[-_\.]?[0-9]*) - )? - (?:[-_\.]?dev[-_\.]?[0-9]*)? # dev release - ) - ) - """ - ) - - _regex = re.compile( - r"^\s*" + _regex_str + r"\s*$", re.VERBOSE | re.IGNORECASE) - - _operators = { - "~=": "compatible", - "==": "equal", - "!=": "not_equal", - "<=": "less_than_equal", - ">=": "greater_than_equal", - "<": "less_than", - ">": "greater_than", - "===": "arbitrary", - } - - @_require_version_compare - def _compare_compatible(self, prospective, spec): - # Compatible releases have an equivalent combination of >= and ==. That - # is that ~=2.2 is equivalent to >=2.2,==2.*. This allows us to - # implement this in terms of the other specifiers instead of - # implementing it ourselves. The only thing we need to do is construct - # the other specifiers. - - # We want everything but the last item in the version, but we want to - # ignore post and dev releases and we want to treat the pre-release as - # it's own separate segment. - prefix = ".".join( - list( - itertools.takewhile( - lambda x: (not x.startswith("post") and not - x.startswith("dev")), - _version_split(spec), - ) - )[:-1] - ) - - # Add the prefix notation to the end of our string - prefix += ".*" - - return (self._get_operator(">=")(prospective, spec) and - self._get_operator("==")(prospective, prefix)) - - @_require_version_compare - def _compare_equal(self, prospective, spec): - # We need special logic to handle prefix matching - if spec.endswith(".*"): - # In the case of prefix matching we want to ignore local segment. - prospective = Version(prospective.public) - # Split the spec out by dots, and pretend that there is an implicit - # dot in between a release segment and a pre-release segment. - spec = _version_split(spec[:-2]) # Remove the trailing .* - - # Split the prospective version out by dots, and pretend that there - # is an implicit dot in between a release segment and a pre-release - # segment. - prospective = _version_split(str(prospective)) - - # Shorten the prospective version to be the same length as the spec - # so that we can determine if the specifier is a prefix of the - # prospective version or not. - prospective = prospective[:len(spec)] - - # Pad out our two sides with zeros so that they both equal the same - # length. - spec, prospective = _pad_version(spec, prospective) - else: - # Convert our spec string into a Version - spec = Version(spec) - - # If the specifier does not have a local segment, then we want to - # act as if the prospective version also does not have a local - # segment. - if not spec.local: - prospective = Version(prospective.public) - - return prospective == spec - - @_require_version_compare - def _compare_not_equal(self, prospective, spec): - return not self._compare_equal(prospective, spec) - - @_require_version_compare - def _compare_less_than_equal(self, prospective, spec): - return prospective <= Version(spec) - - @_require_version_compare - def _compare_greater_than_equal(self, prospective, spec): - return prospective >= Version(spec) - - @_require_version_compare - def _compare_less_than(self, prospective, spec): - # Convert our spec to a Version instance, since we'll want to work with - # it as a version. - spec = Version(spec) - - # Check to see if the prospective version is less than the spec - # version. If it's not we can short circuit and just return False now - # instead of doing extra unneeded work. - if not prospective < spec: - return False - - # This special case is here so that, unless the specifier itself - # includes is a pre-release version, that we do not accept pre-release - # versions for the version mentioned in the specifier (e.g. <3.1 should - # not match 3.1.dev0, but should match 3.0.dev0). - if not spec.is_prerelease and prospective.is_prerelease: - if Version(prospective.base_version) == Version(spec.base_version): - return False - - # If we've gotten to here, it means that prospective version is both - # less than the spec version *and* it's not a pre-release of the same - # version in the spec. - return True - - @_require_version_compare - def _compare_greater_than(self, prospective, spec): - # Convert our spec to a Version instance, since we'll want to work with - # it as a version. - spec = Version(spec) - - # Check to see if the prospective version is greater than the spec - # version. If it's not we can short circuit and just return False now - # instead of doing extra unneeded work. - if not prospective > spec: - return False - - # This special case is here so that, unless the specifier itself - # includes is a post-release version, that we do not accept - # post-release versions for the version mentioned in the specifier - # (e.g. >3.1 should not match 3.0.post0, but should match 3.2.post0). - if not spec.is_postrelease and prospective.is_postrelease: - if Version(prospective.base_version) == Version(spec.base_version): - return False - - # Ensure that we do not allow a local version of the version mentioned - # in the specifier, which is techincally greater than, to match. - if prospective.local is not None: - if Version(prospective.base_version) == Version(spec.base_version): - return False - - # If we've gotten to here, it means that prospective version is both - # greater than the spec version *and* it's not a pre-release of the - # same version in the spec. - return True - - def _compare_arbitrary(self, prospective, spec): - return str(prospective).lower() == str(spec).lower() - - @property - def prereleases(self): - # If there is an explicit prereleases set for this, then we'll just - # blindly use that. - if self._prereleases is not None: - return self._prereleases - - # Look at all of our specifiers and determine if they are inclusive - # operators, and if they are if they are including an explicit - # prerelease. - operator, version = self._spec - if operator in ["==", ">=", "<=", "~=", "==="]: - # The == specifier can include a trailing .*, if it does we - # want to remove before parsing. - if operator == "==" and version.endswith(".*"): - version = version[:-2] - - # Parse the version, and if it is a pre-release than this - # specifier allows pre-releases. - if parse(version).is_prerelease: - return True - - return False - - @prereleases.setter - def prereleases(self, value): - self._prereleases = value - - -_prefix_regex = re.compile(r"^([0-9]+)((?:a|b|c|rc)[0-9]+)$") - - -def _version_split(version): - result = [] - for item in version.split("."): - match = _prefix_regex.search(item) - if match: - result.extend(match.groups()) - else: - result.append(item) - return result - - -def _pad_version(left, right): - left_split, right_split = [], [] - - # Get the release segment of our versions - left_split.append(list(itertools.takewhile(lambda x: x.isdigit(), left))) - right_split.append(list(itertools.takewhile(lambda x: x.isdigit(), right))) - - # Get the rest of our versions - left_split.append(left[len(left_split[0]):]) - right_split.append(right[len(right_split[0]):]) - - # Insert our padding - left_split.insert( - 1, - ["0"] * max(0, len(right_split[0]) - len(left_split[0])), - ) - right_split.insert( - 1, - ["0"] * max(0, len(left_split[0]) - len(right_split[0])), - ) - - return ( - list(itertools.chain(*left_split)), - list(itertools.chain(*right_split)), - ) - - -class SpecifierSet(BaseSpecifier): - - def __init__(self, specifiers="", prereleases=None): - # Split on , to break each indidivual specifier into it's own item, and - # strip each item to remove leading/trailing whitespace. - specifiers = [s.strip() for s in specifiers.split(",") if s.strip()] - - # Parsed each individual specifier, attempting first to make it a - # Specifier and falling back to a LegacySpecifier. - parsed = set() - for specifier in specifiers: - try: - parsed.add(Specifier(specifier)) - except InvalidSpecifier: - parsed.add(LegacySpecifier(specifier)) - - # Turn our parsed specifiers into a frozen set and save them for later. - self._specs = frozenset(parsed) - - # Store our prereleases value so we can use it later to determine if - # we accept prereleases or not. - self._prereleases = prereleases - - def __repr__(self): - pre = ( - ", prereleases={0!r}".format(self.prereleases) - if self._prereleases is not None - else "" - ) - - return "<SpecifierSet({0!r}{1})>".format(str(self), pre) - - def __str__(self): - return ",".join(sorted(str(s) for s in self._specs)) - - def __hash__(self): - return hash(self._specs) - - def __and__(self, other): - if isinstance(other, string_types): - other = SpecifierSet(other) - elif not isinstance(other, SpecifierSet): - return NotImplemented - - specifier = SpecifierSet() - specifier._specs = frozenset(self._specs | other._specs) - - if self._prereleases is None and other._prereleases is not None: - specifier._prereleases = other._prereleases - elif self._prereleases is not None and other._prereleases is None: - specifier._prereleases = self._prereleases - elif self._prereleases == other._prereleases: - specifier._prereleases = self._prereleases - else: - raise ValueError( - "Cannot combine SpecifierSets with True and False prerelease " - "overrides." - ) - - return specifier - - def __eq__(self, other): - if isinstance(other, string_types): - other = SpecifierSet(other) - elif isinstance(other, _IndividualSpecifier): - other = SpecifierSet(str(other)) - elif not isinstance(other, SpecifierSet): - return NotImplemented - - return self._specs == other._specs - - def __ne__(self, other): - if isinstance(other, string_types): - other = SpecifierSet(other) - elif isinstance(other, _IndividualSpecifier): - other = SpecifierSet(str(other)) - elif not isinstance(other, SpecifierSet): - return NotImplemented - - return self._specs != other._specs - - def __len__(self): - return len(self._specs) - - def __iter__(self): - return iter(self._specs) - - @property - def prereleases(self): - # If we have been given an explicit prerelease modifier, then we'll - # pass that through here. - if self._prereleases is not None: - return self._prereleases - - # If we don't have any specifiers, and we don't have a forced value, - # then we'll just return None since we don't know if this should have - # pre-releases or not. - if not self._specs: - return None - - # Otherwise we'll see if any of the given specifiers accept - # prereleases, if any of them do we'll return True, otherwise False. - return any(s.prereleases for s in self._specs) - - @prereleases.setter - def prereleases(self, value): - self._prereleases = value - - def __contains__(self, item): - return self.contains(item) - - def contains(self, item, prereleases=None): - # Ensure that our item is a Version or LegacyVersion instance. - if not isinstance(item, (LegacyVersion, Version)): - item = parse(item) - - # Determine if we're forcing a prerelease or not, if we're not forcing - # one for this particular filter call, then we'll use whatever the - # SpecifierSet thinks for whether or not we should support prereleases. - if prereleases is None: - prereleases = self.prereleases - - # We can determine if we're going to allow pre-releases by looking to - # see if any of the underlying items supports them. If none of them do - # and this item is a pre-release then we do not allow it and we can - # short circuit that here. - # Note: This means that 1.0.dev1 would not be contained in something - # like >=1.0.devabc however it would be in >=1.0.debabc,>0.0.dev0 - if not prereleases and item.is_prerelease: - return False - - # We simply dispatch to the underlying specs here to make sure that the - # given version is contained within all of them. - # Note: This use of all() here means that an empty set of specifiers - # will always return True, this is an explicit design decision. - return all( - s.contains(item, prereleases=prereleases) - for s in self._specs - ) - - def filter(self, iterable, prereleases=None): - # Determine if we're forcing a prerelease or not, if we're not forcing - # one for this particular filter call, then we'll use whatever the - # SpecifierSet thinks for whether or not we should support prereleases. - if prereleases is None: - prereleases = self.prereleases - - # If we have any specifiers, then we want to wrap our iterable in the - # filter method for each one, this will act as a logical AND amongst - # each specifier. - if self._specs: - for spec in self._specs: - iterable = spec.filter(iterable, prereleases=bool(prereleases)) - return iterable - # If we do not have any specifiers, then we need to have a rough filter - # which will filter out any pre-releases, unless there are no final - # releases, and which will filter out LegacyVersion in general. - else: - filtered = [] - found_prereleases = [] - - for item in iterable: - # Ensure that we some kind of Version class for this item. - if not isinstance(item, (LegacyVersion, Version)): - parsed_version = parse(item) - else: - parsed_version = item - - # Filter out any item which is parsed as a LegacyVersion - if isinstance(parsed_version, LegacyVersion): - continue - - # Store any item which is a pre-release for later unless we've - # already found a final version or we are accepting prereleases - if parsed_version.is_prerelease and not prereleases: - if not filtered: - found_prereleases.append(item) - else: - filtered.append(item) - - # If we've found no items except for pre-releases, then we'll go - # ahead and use the pre-releases - if not filtered and found_prereleases and prereleases is None: - return found_prereleases - - return filtered diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/utils.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/utils.py deleted file mode 100644 index 5151f9f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/utils.py +++ /dev/null @@ -1,63 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import re - -from .version import InvalidVersion, Version - - -_canonicalize_regex = re.compile(r"[-_.]+") - - -def canonicalize_name(name): - # This is taken from PEP 503. - return _canonicalize_regex.sub("-", name).lower() - - -def canonicalize_version(version): - """ - This is very similar to Version.__str__, but has one subtle differences - with the way it handles the release segment. - """ - - try: - version = Version(version) - except InvalidVersion: - # Legacy versions cannot be normalized - return version - - parts = [] - - # Epoch - if version.epoch != 0: - parts.append("{0}!".format(version.epoch)) - - # Release segment - # NB: This strips trailing '.0's to normalize - parts.append( - re.sub( - r'(\.0)+$', - '', - ".".join(str(x) for x in version.release) - ) - ) - - # Pre-release - if version.pre is not None: - parts.append("".join(str(x) for x in version.pre)) - - # Post-release - if version.post is not None: - parts.append(".post{0}".format(version.post)) - - # Development release - if version.dev is not None: - parts.append(".dev{0}".format(version.dev)) - - # Local version segment - if version.local is not None: - parts.append("+{0}".format(version.local)) - - return "".join(parts) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/version.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/version.py deleted file mode 100644 index a8affbd..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/packaging/version.py +++ /dev/null @@ -1,441 +0,0 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. -from __future__ import absolute_import, division, print_function - -import collections -import itertools -import re - -from ._structures import Infinity - - -__all__ = [ - "parse", "Version", "LegacyVersion", "InvalidVersion", "VERSION_PATTERN" -] - - -_Version = collections.namedtuple( - "_Version", - ["epoch", "release", "dev", "pre", "post", "local"], -) - - -def parse(version): - """ - Parse the given version string and return either a :class:`Version` object - or a :class:`LegacyVersion` object depending on if the given version is - a valid PEP 440 version or a legacy version. - """ - try: - return Version(version) - except InvalidVersion: - return LegacyVersion(version) - - -class InvalidVersion(ValueError): - """ - An invalid version was found, users should refer to PEP 440. - """ - - -class _BaseVersion(object): - - def __hash__(self): - return hash(self._key) - - def __lt__(self, other): - return self._compare(other, lambda s, o: s < o) - - def __le__(self, other): - return self._compare(other, lambda s, o: s <= o) - - def __eq__(self, other): - return self._compare(other, lambda s, o: s == o) - - def __ge__(self, other): - return self._compare(other, lambda s, o: s >= o) - - def __gt__(self, other): - return self._compare(other, lambda s, o: s > o) - - def __ne__(self, other): - return self._compare(other, lambda s, o: s != o) - - def _compare(self, other, method): - if not isinstance(other, _BaseVersion): - return NotImplemented - - return method(self._key, other._key) - - -class LegacyVersion(_BaseVersion): - - def __init__(self, version): - self._version = str(version) - self._key = _legacy_cmpkey(self._version) - - def __str__(self): - return self._version - - def __repr__(self): - return "<LegacyVersion({0})>".format(repr(str(self))) - - @property - def public(self): - return self._version - - @property - def base_version(self): - return self._version - - @property - def epoch(self): - return -1 - - @property - def release(self): - return None - - @property - def pre(self): - return None - - @property - def post(self): - return None - - @property - def dev(self): - return None - - @property - def local(self): - return None - - @property - def is_prerelease(self): - return False - - @property - def is_postrelease(self): - return False - - @property - def is_devrelease(self): - return False - - -_legacy_version_component_re = re.compile( - r"(\d+ | [a-z]+ | \.| -)", re.VERBOSE, -) - -_legacy_version_replacement_map = { - "pre": "c", "preview": "c", "-": "final-", "rc": "c", "dev": "@", -} - - -def _parse_version_parts(s): - for part in _legacy_version_component_re.split(s): - part = _legacy_version_replacement_map.get(part, part) - - if not part or part == ".": - continue - - if part[:1] in "0123456789": - # pad for numeric comparison - yield part.zfill(8) - else: - yield "*" + part - - # ensure that alpha/beta/candidate are before final - yield "*final" - - -def _legacy_cmpkey(version): - # We hardcode an epoch of -1 here. A PEP 440 version can only have a epoch - # greater than or equal to 0. This will effectively put the LegacyVersion, - # which uses the defacto standard originally implemented by setuptools, - # as before all PEP 440 versions. - epoch = -1 - - # This scheme is taken from pkg_resources.parse_version setuptools prior to - # it's adoption of the packaging library. - parts = [] - for part in _parse_version_parts(version.lower()): - if part.startswith("*"): - # remove "-" before a prerelease tag - if part < "*final": - while parts and parts[-1] == "*final-": - parts.pop() - - # remove trailing zeros from each series of numeric parts - while parts and parts[-1] == "00000000": - parts.pop() - - parts.append(part) - parts = tuple(parts) - - return epoch, parts - - -# Deliberately not anchored to the start and end of the string, to make it -# easier for 3rd party code to reuse -VERSION_PATTERN = r""" - v? - (?: - (?:(?P<epoch>[0-9]+)!)? # epoch - (?P<release>[0-9]+(?:\.[0-9]+)*) # release segment - (?P<pre> # pre-release - [-_\.]? - (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview)) - [-_\.]? - (?P<pre_n>[0-9]+)? - )? - (?P<post> # post release - (?:-(?P<post_n1>[0-9]+)) - | - (?: - [-_\.]? - (?P<post_l>post|rev|r) - [-_\.]? - (?P<post_n2>[0-9]+)? - ) - )? - (?P<dev> # dev release - [-_\.]? - (?P<dev_l>dev) - [-_\.]? - (?P<dev_n>[0-9]+)? - )? - ) - (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))? # local version -""" - - -class Version(_BaseVersion): - - _regex = re.compile( - r"^\s*" + VERSION_PATTERN + r"\s*$", - re.VERBOSE | re.IGNORECASE, - ) - - def __init__(self, version): - # Validate the version and parse it into pieces - match = self._regex.search(version) - if not match: - raise InvalidVersion("Invalid version: '{0}'".format(version)) - - # Store the parsed out pieces of the version - self._version = _Version( - epoch=int(match.group("epoch")) if match.group("epoch") else 0, - release=tuple(int(i) for i in match.group("release").split(".")), - pre=_parse_letter_version( - match.group("pre_l"), - match.group("pre_n"), - ), - post=_parse_letter_version( - match.group("post_l"), - match.group("post_n1") or match.group("post_n2"), - ), - dev=_parse_letter_version( - match.group("dev_l"), - match.group("dev_n"), - ), - local=_parse_local_version(match.group("local")), - ) - - # Generate a key which will be used for sorting - self._key = _cmpkey( - self._version.epoch, - self._version.release, - self._version.pre, - self._version.post, - self._version.dev, - self._version.local, - ) - - def __repr__(self): - return "<Version({0})>".format(repr(str(self))) - - def __str__(self): - parts = [] - - # Epoch - if self.epoch != 0: - parts.append("{0}!".format(self.epoch)) - - # Release segment - parts.append(".".join(str(x) for x in self.release)) - - # Pre-release - if self.pre is not None: - parts.append("".join(str(x) for x in self.pre)) - - # Post-release - if self.post is not None: - parts.append(".post{0}".format(self.post)) - - # Development release - if self.dev is not None: - parts.append(".dev{0}".format(self.dev)) - - # Local version segment - if self.local is not None: - parts.append("+{0}".format(self.local)) - - return "".join(parts) - - @property - def epoch(self): - return self._version.epoch - - @property - def release(self): - return self._version.release - - @property - def pre(self): - return self._version.pre - - @property - def post(self): - return self._version.post[1] if self._version.post else None - - @property - def dev(self): - return self._version.dev[1] if self._version.dev else None - - @property - def local(self): - if self._version.local: - return ".".join(str(x) for x in self._version.local) - else: - return None - - @property - def public(self): - return str(self).split("+", 1)[0] - - @property - def base_version(self): - parts = [] - - # Epoch - if self.epoch != 0: - parts.append("{0}!".format(self.epoch)) - - # Release segment - parts.append(".".join(str(x) for x in self.release)) - - return "".join(parts) - - @property - def is_prerelease(self): - return self.dev is not None or self.pre is not None - - @property - def is_postrelease(self): - return self.post is not None - - @property - def is_devrelease(self): - return self.dev is not None - - -def _parse_letter_version(letter, number): - if letter: - # We consider there to be an implicit 0 in a pre-release if there is - # not a numeral associated with it. - if number is None: - number = 0 - - # We normalize any letters to their lower case form - letter = letter.lower() - - # We consider some words to be alternate spellings of other words and - # in those cases we want to normalize the spellings to our preferred - # spelling. - if letter == "alpha": - letter = "a" - elif letter == "beta": - letter = "b" - elif letter in ["c", "pre", "preview"]: - letter = "rc" - elif letter in ["rev", "r"]: - letter = "post" - - return letter, int(number) - if not letter and number: - # We assume if we are given a number, but we are not given a letter - # then this is using the implicit post release syntax (e.g. 1.0-1) - letter = "post" - - return letter, int(number) - - -_local_version_separators = re.compile(r"[\._-]") - - -def _parse_local_version(local): - """ - Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve"). - """ - if local is not None: - return tuple( - part.lower() if not part.isdigit() else int(part) - for part in _local_version_separators.split(local) - ) - - -def _cmpkey(epoch, release, pre, post, dev, local): - # When we compare a release version, we want to compare it with all of the - # trailing zeros removed. So we'll use a reverse the list, drop all the now - # leading zeros until we come to something non zero, then take the rest - # re-reverse it back into the correct order and make it a tuple and use - # that for our sorting key. - release = tuple( - reversed(list( - itertools.dropwhile( - lambda x: x == 0, - reversed(release), - ) - )) - ) - - # We need to "trick" the sorting algorithm to put 1.0.dev0 before 1.0a0. - # We'll do this by abusing the pre segment, but we _only_ want to do this - # if there is not a pre or a post segment. If we have one of those then - # the normal sorting rules will handle this case correctly. - if pre is None and post is None and dev is not None: - pre = -Infinity - # Versions without a pre-release (except as noted above) should sort after - # those with one. - elif pre is None: - pre = Infinity - - # Versions without a post segment should sort before those with one. - if post is None: - post = -Infinity - - # Versions without a development segment should sort after those with one. - if dev is None: - dev = Infinity - - if local is None: - # Versions without a local segment should sort before those with one. - local = -Infinity - else: - # Versions with a local segment need that segment parsed to implement - # the sorting rules in PEP440. - # - Alpha numeric segments sort before numeric segments - # - Alpha numeric segments sort lexicographically - # - Numeric segments sort numerically - # - Shorter versions sort before longer versions when the prefixes - # match exactly - local = tuple( - (i, "") if isinstance(i, int) else (-Infinity, i) - for i in local - ) - - return epoch, release, pre, post, dev, local diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/__init__.py deleted file mode 100644 index 6e1fb52..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/__init__.py +++ /dev/null @@ -1,3125 +0,0 @@ -# coding: utf-8 -""" -Package resource API --------------------- - -A resource is a logical file contained within a package, or a logical -subdirectory thereof. The package resource API expects resource names -to have their path parts separated with ``/``, *not* whatever the local -path separator is. Do not use os.path operations to manipulate resource -names being passed into the API. - -The package resource API is designed to work with normal filesystem packages, -.egg files, and unpacked .egg files. It can also work in a limited way with -.zip files and with custom PEP 302 loaders that support the ``get_data()`` -method. -""" - -from __future__ import absolute_import - -import sys -import os -import io -import time -import re -import types -import zipfile -import zipimport -import warnings -import stat -import functools -import pkgutil -import operator -import platform -import collections -import plistlib -import email.parser -import errno -import tempfile -import textwrap -import itertools -import inspect -from pkgutil import get_importer - -try: - import _imp -except ImportError: - # Python 3.2 compatibility - import imp as _imp - -from pip._vendor import six -from pip._vendor.six.moves import urllib, map, filter - -# capture these to bypass sandboxing -from os import utime -try: - from os import mkdir, rename, unlink - WRITE_SUPPORT = True -except ImportError: - # no write support, probably under GAE - WRITE_SUPPORT = False - -from os import open as os_open -from os.path import isdir, split - -try: - import importlib.machinery as importlib_machinery - # access attribute to force import under delayed import mechanisms. - importlib_machinery.__name__ -except ImportError: - importlib_machinery = None - -from . import py31compat -from pip._vendor import appdirs -from pip._vendor import packaging -__import__('pip._vendor.packaging.version') -__import__('pip._vendor.packaging.specifiers') -__import__('pip._vendor.packaging.requirements') -__import__('pip._vendor.packaging.markers') - - -if (3, 0) < sys.version_info < (3, 3): - raise RuntimeError("Python 3.3 or later is required") - -if six.PY2: - # Those builtin exceptions are only defined in Python 3 - PermissionError = None - NotADirectoryError = None - -# declare some globals that will be defined later to -# satisfy the linters. -require = None -working_set = None -add_activation_listener = None -resources_stream = None -cleanup_resources = None -resource_dir = None -resource_stream = None -set_extraction_path = None -resource_isdir = None -resource_string = None -iter_entry_points = None -resource_listdir = None -resource_filename = None -resource_exists = None -_distribution_finders = None -_namespace_handlers = None -_namespace_packages = None - - -class PEP440Warning(RuntimeWarning): - """ - Used when there is an issue with a version or specifier not complying with - PEP 440. - """ - - -def parse_version(v): - try: - return packaging.version.Version(v) - except packaging.version.InvalidVersion: - return packaging.version.LegacyVersion(v) - - -_state_vars = {} - - -def _declare_state(vartype, **kw): - globals().update(kw) - _state_vars.update(dict.fromkeys(kw, vartype)) - - -def __getstate__(): - state = {} - g = globals() - for k, v in _state_vars.items(): - state[k] = g['_sget_' + v](g[k]) - return state - - -def __setstate__(state): - g = globals() - for k, v in state.items(): - g['_sset_' + _state_vars[k]](k, g[k], v) - return state - - -def _sget_dict(val): - return val.copy() - - -def _sset_dict(key, ob, state): - ob.clear() - ob.update(state) - - -def _sget_object(val): - return val.__getstate__() - - -def _sset_object(key, ob, state): - ob.__setstate__(state) - - -_sget_none = _sset_none = lambda *args: None - - -def get_supported_platform(): - """Return this platform's maximum compatible version. - - distutils.util.get_platform() normally reports the minimum version - of Mac OS X that would be required to *use* extensions produced by - distutils. But what we want when checking compatibility is to know the - version of Mac OS X that we are *running*. To allow usage of packages that - explicitly require a newer version of Mac OS X, we must also know the - current version of the OS. - - If this condition occurs for any other platform with a version in its - platform strings, this function should be extended accordingly. - """ - plat = get_build_platform() - m = macosVersionString.match(plat) - if m is not None and sys.platform == "darwin": - try: - plat = 'macosx-%s-%s' % ('.'.join(_macosx_vers()[:2]), m.group(3)) - except ValueError: - # not Mac OS X - pass - return plat - - -__all__ = [ - # Basic resource access and distribution/entry point discovery - 'require', 'run_script', 'get_provider', 'get_distribution', - 'load_entry_point', 'get_entry_map', 'get_entry_info', - 'iter_entry_points', - 'resource_string', 'resource_stream', 'resource_filename', - 'resource_listdir', 'resource_exists', 'resource_isdir', - - # Environmental control - 'declare_namespace', 'working_set', 'add_activation_listener', - 'find_distributions', 'set_extraction_path', 'cleanup_resources', - 'get_default_cache', - - # Primary implementation classes - 'Environment', 'WorkingSet', 'ResourceManager', - 'Distribution', 'Requirement', 'EntryPoint', - - # Exceptions - 'ResolutionError', 'VersionConflict', 'DistributionNotFound', - 'UnknownExtra', 'ExtractionError', - - # Warnings - 'PEP440Warning', - - # Parsing functions and string utilities - 'parse_requirements', 'parse_version', 'safe_name', 'safe_version', - 'get_platform', 'compatible_platforms', 'yield_lines', 'split_sections', - 'safe_extra', 'to_filename', 'invalid_marker', 'evaluate_marker', - - # filesystem utilities - 'ensure_directory', 'normalize_path', - - # Distribution "precedence" constants - 'EGG_DIST', 'BINARY_DIST', 'SOURCE_DIST', 'CHECKOUT_DIST', 'DEVELOP_DIST', - - # "Provider" interfaces, implementations, and registration/lookup APIs - 'IMetadataProvider', 'IResourceProvider', 'FileMetadata', - 'PathMetadata', 'EggMetadata', 'EmptyProvider', 'empty_provider', - 'NullProvider', 'EggProvider', 'DefaultProvider', 'ZipProvider', - 'register_finder', 'register_namespace_handler', 'register_loader_type', - 'fixup_namespace_packages', 'get_importer', - - # Deprecated/backward compatibility only - 'run_main', 'AvailableDistributions', -] - - -class ResolutionError(Exception): - """Abstract base for dependency resolution errors""" - - def __repr__(self): - return self.__class__.__name__ + repr(self.args) - - -class VersionConflict(ResolutionError): - """ - An already-installed version conflicts with the requested version. - - Should be initialized with the installed Distribution and the requested - Requirement. - """ - - _template = "{self.dist} is installed but {self.req} is required" - - @property - def dist(self): - return self.args[0] - - @property - def req(self): - return self.args[1] - - def report(self): - return self._template.format(**locals()) - - def with_context(self, required_by): - """ - If required_by is non-empty, return a version of self that is a - ContextualVersionConflict. - """ - if not required_by: - return self - args = self.args + (required_by,) - return ContextualVersionConflict(*args) - - -class ContextualVersionConflict(VersionConflict): - """ - A VersionConflict that accepts a third parameter, the set of the - requirements that required the installed Distribution. - """ - - _template = VersionConflict._template + ' by {self.required_by}' - - @property - def required_by(self): - return self.args[2] - - -class DistributionNotFound(ResolutionError): - """A requested distribution was not found""" - - _template = ("The '{self.req}' distribution was not found " - "and is required by {self.requirers_str}") - - @property - def req(self): - return self.args[0] - - @property - def requirers(self): - return self.args[1] - - @property - def requirers_str(self): - if not self.requirers: - return 'the application' - return ', '.join(self.requirers) - - def report(self): - return self._template.format(**locals()) - - def __str__(self): - return self.report() - - -class UnknownExtra(ResolutionError): - """Distribution doesn't have an "extra feature" of the given name""" - - -_provider_factories = {} - -PY_MAJOR = sys.version[:3] -EGG_DIST = 3 -BINARY_DIST = 2 -SOURCE_DIST = 1 -CHECKOUT_DIST = 0 -DEVELOP_DIST = -1 - - -def register_loader_type(loader_type, provider_factory): - """Register `provider_factory` to make providers for `loader_type` - - `loader_type` is the type or class of a PEP 302 ``module.__loader__``, - and `provider_factory` is a function that, passed a *module* object, - returns an ``IResourceProvider`` for that module. - """ - _provider_factories[loader_type] = provider_factory - - -def get_provider(moduleOrReq): - """Return an IResourceProvider for the named module or requirement""" - if isinstance(moduleOrReq, Requirement): - return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0] - try: - module = sys.modules[moduleOrReq] - except KeyError: - __import__(moduleOrReq) - module = sys.modules[moduleOrReq] - loader = getattr(module, '__loader__', None) - return _find_adapter(_provider_factories, loader)(module) - - -def _macosx_vers(_cache=[]): - if not _cache: - version = platform.mac_ver()[0] - # fallback for MacPorts - if version == '': - plist = '/System/Library/CoreServices/SystemVersion.plist' - if os.path.exists(plist): - if hasattr(plistlib, 'readPlist'): - plist_content = plistlib.readPlist(plist) - if 'ProductVersion' in plist_content: - version = plist_content['ProductVersion'] - - _cache.append(version.split('.')) - return _cache[0] - - -def _macosx_arch(machine): - return {'PowerPC': 'ppc', 'Power_Macintosh': 'ppc'}.get(machine, machine) - - -def get_build_platform(): - """Return this platform's string for platform-specific distributions - - XXX Currently this is the same as ``distutils.util.get_platform()``, but it - needs some hacks for Linux and Mac OS X. - """ - try: - # Python 2.7 or >=3.2 - from sysconfig import get_platform - except ImportError: - from distutils.util import get_platform - - plat = get_platform() - if sys.platform == "darwin" and not plat.startswith('macosx-'): - try: - version = _macosx_vers() - machine = os.uname()[4].replace(" ", "_") - return "macosx-%d.%d-%s" % ( - int(version[0]), int(version[1]), - _macosx_arch(machine), - ) - except ValueError: - # if someone is running a non-Mac darwin system, this will fall - # through to the default implementation - pass - return plat - - -macosVersionString = re.compile(r"macosx-(\d+)\.(\d+)-(.*)") -darwinVersionString = re.compile(r"darwin-(\d+)\.(\d+)\.(\d+)-(.*)") -# XXX backward compat -get_platform = get_build_platform - - -def compatible_platforms(provided, required): - """Can code for the `provided` platform run on the `required` platform? - - Returns true if either platform is ``None``, or the platforms are equal. - - XXX Needs compatibility checks for Linux and other unixy OSes. - """ - if provided is None or required is None or provided == required: - # easy case - return True - - # Mac OS X special cases - reqMac = macosVersionString.match(required) - if reqMac: - provMac = macosVersionString.match(provided) - - # is this a Mac package? - if not provMac: - # this is backwards compatibility for packages built before - # setuptools 0.6. All packages built after this point will - # use the new macosx designation. - provDarwin = darwinVersionString.match(provided) - if provDarwin: - dversion = int(provDarwin.group(1)) - macosversion = "%s.%s" % (reqMac.group(1), reqMac.group(2)) - if dversion == 7 and macosversion >= "10.3" or \ - dversion == 8 and macosversion >= "10.4": - return True - # egg isn't macosx or legacy darwin - return False - - # are they the same major version and machine type? - if provMac.group(1) != reqMac.group(1) or \ - provMac.group(3) != reqMac.group(3): - return False - - # is the required OS major update >= the provided one? - if int(provMac.group(2)) > int(reqMac.group(2)): - return False - - return True - - # XXX Linux and other platforms' special cases should go here - return False - - -def run_script(dist_spec, script_name): - """Locate distribution `dist_spec` and run its `script_name` script""" - ns = sys._getframe(1).f_globals - name = ns['__name__'] - ns.clear() - ns['__name__'] = name - require(dist_spec)[0].run_script(script_name, ns) - - -# backward compatibility -run_main = run_script - - -def get_distribution(dist): - """Return a current distribution object for a Requirement or string""" - if isinstance(dist, six.string_types): - dist = Requirement.parse(dist) - if isinstance(dist, Requirement): - dist = get_provider(dist) - if not isinstance(dist, Distribution): - raise TypeError("Expected string, Requirement, or Distribution", dist) - return dist - - -def load_entry_point(dist, group, name): - """Return `name` entry point of `group` for `dist` or raise ImportError""" - return get_distribution(dist).load_entry_point(group, name) - - -def get_entry_map(dist, group=None): - """Return the entry point map for `group`, or the full entry map""" - return get_distribution(dist).get_entry_map(group) - - -def get_entry_info(dist, group, name): - """Return the EntryPoint object for `group`+`name`, or ``None``""" - return get_distribution(dist).get_entry_info(group, name) - - -class IMetadataProvider: - def has_metadata(name): - """Does the package's distribution contain the named metadata?""" - - def get_metadata(name): - """The named metadata resource as a string""" - - def get_metadata_lines(name): - """Yield named metadata resource as list of non-blank non-comment lines - - Leading and trailing whitespace is stripped from each line, and lines - with ``#`` as the first non-blank character are omitted.""" - - def metadata_isdir(name): - """Is the named metadata a directory? (like ``os.path.isdir()``)""" - - def metadata_listdir(name): - """List of metadata names in the directory (like ``os.listdir()``)""" - - def run_script(script_name, namespace): - """Execute the named script in the supplied namespace dictionary""" - - -class IResourceProvider(IMetadataProvider): - """An object that provides access to package resources""" - - def get_resource_filename(manager, resource_name): - """Return a true filesystem path for `resource_name` - - `manager` must be an ``IResourceManager``""" - - def get_resource_stream(manager, resource_name): - """Return a readable file-like object for `resource_name` - - `manager` must be an ``IResourceManager``""" - - def get_resource_string(manager, resource_name): - """Return a string containing the contents of `resource_name` - - `manager` must be an ``IResourceManager``""" - - def has_resource(resource_name): - """Does the package contain the named resource?""" - - def resource_isdir(resource_name): - """Is the named resource a directory? (like ``os.path.isdir()``)""" - - def resource_listdir(resource_name): - """List of resource names in the directory (like ``os.listdir()``)""" - - -class WorkingSet(object): - """A collection of active distributions on sys.path (or a similar list)""" - - def __init__(self, entries=None): - """Create working set from list of path entries (default=sys.path)""" - self.entries = [] - self.entry_keys = {} - self.by_key = {} - self.callbacks = [] - - if entries is None: - entries = sys.path - - for entry in entries: - self.add_entry(entry) - - @classmethod - def _build_master(cls): - """ - Prepare the master working set. - """ - ws = cls() - try: - from __main__ import __requires__ - except ImportError: - # The main program does not list any requirements - return ws - - # ensure the requirements are met - try: - ws.require(__requires__) - except VersionConflict: - return cls._build_from_requirements(__requires__) - - return ws - - @classmethod - def _build_from_requirements(cls, req_spec): - """ - Build a working set from a requirement spec. Rewrites sys.path. - """ - # try it without defaults already on sys.path - # by starting with an empty path - ws = cls([]) - reqs = parse_requirements(req_spec) - dists = ws.resolve(reqs, Environment()) - for dist in dists: - ws.add(dist) - - # add any missing entries from sys.path - for entry in sys.path: - if entry not in ws.entries: - ws.add_entry(entry) - - # then copy back to sys.path - sys.path[:] = ws.entries - return ws - - def add_entry(self, entry): - """Add a path item to ``.entries``, finding any distributions on it - - ``find_distributions(entry, True)`` is used to find distributions - corresponding to the path entry, and they are added. `entry` is - always appended to ``.entries``, even if it is already present. - (This is because ``sys.path`` can contain the same value more than - once, and the ``.entries`` of the ``sys.path`` WorkingSet should always - equal ``sys.path``.) - """ - self.entry_keys.setdefault(entry, []) - self.entries.append(entry) - for dist in find_distributions(entry, True): - self.add(dist, entry, False) - - def __contains__(self, dist): - """True if `dist` is the active distribution for its project""" - return self.by_key.get(dist.key) == dist - - def find(self, req): - """Find a distribution matching requirement `req` - - If there is an active distribution for the requested project, this - returns it as long as it meets the version requirement specified by - `req`. But, if there is an active distribution for the project and it - does *not* meet the `req` requirement, ``VersionConflict`` is raised. - If there is no active distribution for the requested project, ``None`` - is returned. - """ - dist = self.by_key.get(req.key) - if dist is not None and dist not in req: - # XXX add more info - raise VersionConflict(dist, req) - return dist - - def iter_entry_points(self, group, name=None): - """Yield entry point objects from `group` matching `name` - - If `name` is None, yields all entry points in `group` from all - distributions in the working set, otherwise only ones matching - both `group` and `name` are yielded (in distribution order). - """ - for dist in self: - entries = dist.get_entry_map(group) - if name is None: - for ep in entries.values(): - yield ep - elif name in entries: - yield entries[name] - - def run_script(self, requires, script_name): - """Locate distribution for `requires` and run `script_name` script""" - ns = sys._getframe(1).f_globals - name = ns['__name__'] - ns.clear() - ns['__name__'] = name - self.require(requires)[0].run_script(script_name, ns) - - def __iter__(self): - """Yield distributions for non-duplicate projects in the working set - - The yield order is the order in which the items' path entries were - added to the working set. - """ - seen = {} - for item in self.entries: - if item not in self.entry_keys: - # workaround a cache issue - continue - - for key in self.entry_keys[item]: - if key not in seen: - seen[key] = 1 - yield self.by_key[key] - - def add(self, dist, entry=None, insert=True, replace=False): - """Add `dist` to working set, associated with `entry` - - If `entry` is unspecified, it defaults to the ``.location`` of `dist`. - On exit from this routine, `entry` is added to the end of the working - set's ``.entries`` (if it wasn't already present). - - `dist` is only added to the working set if it's for a project that - doesn't already have a distribution in the set, unless `replace=True`. - If it's added, any callbacks registered with the ``subscribe()`` method - will be called. - """ - if insert: - dist.insert_on(self.entries, entry, replace=replace) - - if entry is None: - entry = dist.location - keys = self.entry_keys.setdefault(entry, []) - keys2 = self.entry_keys.setdefault(dist.location, []) - if not replace and dist.key in self.by_key: - # ignore hidden distros - return - - self.by_key[dist.key] = dist - if dist.key not in keys: - keys.append(dist.key) - if dist.key not in keys2: - keys2.append(dist.key) - self._added_new(dist) - - def resolve(self, requirements, env=None, installer=None, - replace_conflicting=False, extras=None): - """List all distributions needed to (recursively) meet `requirements` - - `requirements` must be a sequence of ``Requirement`` objects. `env`, - if supplied, should be an ``Environment`` instance. If - not supplied, it defaults to all distributions available within any - entry or distribution in the working set. `installer`, if supplied, - will be invoked with each requirement that cannot be met by an - already-installed distribution; it should return a ``Distribution`` or - ``None``. - - Unless `replace_conflicting=True`, raises a VersionConflict exception - if - any requirements are found on the path that have the correct name but - the wrong version. Otherwise, if an `installer` is supplied it will be - invoked to obtain the correct version of the requirement and activate - it. - - `extras` is a list of the extras to be used with these requirements. - This is important because extra requirements may look like `my_req; - extra = "my_extra"`, which would otherwise be interpreted as a purely - optional requirement. Instead, we want to be able to assert that these - requirements are truly required. - """ - - # set up the stack - requirements = list(requirements)[::-1] - # set of processed requirements - processed = {} - # key -> dist - best = {} - to_activate = [] - - req_extras = _ReqExtras() - - # Mapping of requirement to set of distributions that required it; - # useful for reporting info about conflicts. - required_by = collections.defaultdict(set) - - while requirements: - # process dependencies breadth-first - req = requirements.pop(0) - if req in processed: - # Ignore cyclic or redundant dependencies - continue - - if not req_extras.markers_pass(req, extras): - continue - - dist = best.get(req.key) - if dist is None: - # Find the best distribution and add it to the map - dist = self.by_key.get(req.key) - if dist is None or (dist not in req and replace_conflicting): - ws = self - if env is None: - if dist is None: - env = Environment(self.entries) - else: - # Use an empty environment and workingset to avoid - # any further conflicts with the conflicting - # distribution - env = Environment([]) - ws = WorkingSet([]) - dist = best[req.key] = env.best_match( - req, ws, installer, - replace_conflicting=replace_conflicting - ) - if dist is None: - requirers = required_by.get(req, None) - raise DistributionNotFound(req, requirers) - to_activate.append(dist) - if dist not in req: - # Oops, the "best" so far conflicts with a dependency - dependent_req = required_by[req] - raise VersionConflict(dist, req).with_context(dependent_req) - - # push the new requirements onto the stack - new_requirements = dist.requires(req.extras)[::-1] - requirements.extend(new_requirements) - - # Register the new requirements needed by req - for new_requirement in new_requirements: - required_by[new_requirement].add(req.project_name) - req_extras[new_requirement] = req.extras - - processed[req] = True - - # return list of distros to activate - return to_activate - - def find_plugins( - self, plugin_env, full_env=None, installer=None, fallback=True): - """Find all activatable distributions in `plugin_env` - - Example usage:: - - distributions, errors = working_set.find_plugins( - Environment(plugin_dirlist) - ) - # add plugins+libs to sys.path - map(working_set.add, distributions) - # display errors - print('Could not load', errors) - - The `plugin_env` should be an ``Environment`` instance that contains - only distributions that are in the project's "plugin directory" or - directories. The `full_env`, if supplied, should be an ``Environment`` - contains all currently-available distributions. If `full_env` is not - supplied, one is created automatically from the ``WorkingSet`` this - method is called on, which will typically mean that every directory on - ``sys.path`` will be scanned for distributions. - - `installer` is a standard installer callback as used by the - ``resolve()`` method. The `fallback` flag indicates whether we should - attempt to resolve older versions of a plugin if the newest version - cannot be resolved. - - This method returns a 2-tuple: (`distributions`, `error_info`), where - `distributions` is a list of the distributions found in `plugin_env` - that were loadable, along with any other distributions that are needed - to resolve their dependencies. `error_info` is a dictionary mapping - unloadable plugin distributions to an exception instance describing the - error that occurred. Usually this will be a ``DistributionNotFound`` or - ``VersionConflict`` instance. - """ - - plugin_projects = list(plugin_env) - # scan project names in alphabetic order - plugin_projects.sort() - - error_info = {} - distributions = {} - - if full_env is None: - env = Environment(self.entries) - env += plugin_env - else: - env = full_env + plugin_env - - shadow_set = self.__class__([]) - # put all our entries in shadow_set - list(map(shadow_set.add, self)) - - for project_name in plugin_projects: - - for dist in plugin_env[project_name]: - - req = [dist.as_requirement()] - - try: - resolvees = shadow_set.resolve(req, env, installer) - - except ResolutionError as v: - # save error info - error_info[dist] = v - if fallback: - # try the next older version of project - continue - else: - # give up on this project, keep going - break - - else: - list(map(shadow_set.add, resolvees)) - distributions.update(dict.fromkeys(resolvees)) - - # success, no need to try any more versions of this project - break - - distributions = list(distributions) - distributions.sort() - - return distributions, error_info - - def require(self, *requirements): - """Ensure that distributions matching `requirements` are activated - - `requirements` must be a string or a (possibly-nested) sequence - thereof, specifying the distributions and versions required. The - return value is a sequence of the distributions that needed to be - activated to fulfill the requirements; all relevant distributions are - included, even if they were already activated in this working set. - """ - needed = self.resolve(parse_requirements(requirements)) - - for dist in needed: - self.add(dist) - - return needed - - def subscribe(self, callback, existing=True): - """Invoke `callback` for all distributions - - If `existing=True` (default), - call on all existing ones, as well. - """ - if callback in self.callbacks: - return - self.callbacks.append(callback) - if not existing: - return - for dist in self: - callback(dist) - - def _added_new(self, dist): - for callback in self.callbacks: - callback(dist) - - def __getstate__(self): - return ( - self.entries[:], self.entry_keys.copy(), self.by_key.copy(), - self.callbacks[:] - ) - - def __setstate__(self, e_k_b_c): - entries, keys, by_key, callbacks = e_k_b_c - self.entries = entries[:] - self.entry_keys = keys.copy() - self.by_key = by_key.copy() - self.callbacks = callbacks[:] - - -class _ReqExtras(dict): - """ - Map each requirement to the extras that demanded it. - """ - - def markers_pass(self, req, extras=None): - """ - Evaluate markers for req against each extra that - demanded it. - - Return False if the req has a marker and fails - evaluation. Otherwise, return True. - """ - extra_evals = ( - req.marker.evaluate({'extra': extra}) - for extra in self.get(req, ()) + (extras or (None,)) - ) - return not req.marker or any(extra_evals) - - -class Environment(object): - """Searchable snapshot of distributions on a search path""" - - def __init__( - self, search_path=None, platform=get_supported_platform(), - python=PY_MAJOR): - """Snapshot distributions available on a search path - - Any distributions found on `search_path` are added to the environment. - `search_path` should be a sequence of ``sys.path`` items. If not - supplied, ``sys.path`` is used. - - `platform` is an optional string specifying the name of the platform - that platform-specific distributions must be compatible with. If - unspecified, it defaults to the current platform. `python` is an - optional string naming the desired version of Python (e.g. ``'3.3'``); - it defaults to the current version. - - You may explicitly set `platform` (and/or `python`) to ``None`` if you - wish to map *all* distributions, not just those compatible with the - running platform or Python version. - """ - self._distmap = {} - self.platform = platform - self.python = python - self.scan(search_path) - - def can_add(self, dist): - """Is distribution `dist` acceptable for this environment? - - The distribution must match the platform and python version - requirements specified when this environment was created, or False - is returned. - """ - py_compat = ( - self.python is None - or dist.py_version is None - or dist.py_version == self.python - ) - return py_compat and compatible_platforms(dist.platform, self.platform) - - def remove(self, dist): - """Remove `dist` from the environment""" - self._distmap[dist.key].remove(dist) - - def scan(self, search_path=None): - """Scan `search_path` for distributions usable in this environment - - Any distributions found are added to the environment. - `search_path` should be a sequence of ``sys.path`` items. If not - supplied, ``sys.path`` is used. Only distributions conforming to - the platform/python version defined at initialization are added. - """ - if search_path is None: - search_path = sys.path - - for item in search_path: - for dist in find_distributions(item): - self.add(dist) - - def __getitem__(self, project_name): - """Return a newest-to-oldest list of distributions for `project_name` - - Uses case-insensitive `project_name` comparison, assuming all the - project's distributions use their project's name converted to all - lowercase as their key. - - """ - distribution_key = project_name.lower() - return self._distmap.get(distribution_key, []) - - def add(self, dist): - """Add `dist` if we ``can_add()`` it and it has not already been added - """ - if self.can_add(dist) and dist.has_version(): - dists = self._distmap.setdefault(dist.key, []) - if dist not in dists: - dists.append(dist) - dists.sort(key=operator.attrgetter('hashcmp'), reverse=True) - - def best_match( - self, req, working_set, installer=None, replace_conflicting=False): - """Find distribution best matching `req` and usable on `working_set` - - This calls the ``find(req)`` method of the `working_set` to see if a - suitable distribution is already active. (This may raise - ``VersionConflict`` if an unsuitable version of the project is already - active in the specified `working_set`.) If a suitable distribution - isn't active, this method returns the newest distribution in the - environment that meets the ``Requirement`` in `req`. If no suitable - distribution is found, and `installer` is supplied, then the result of - calling the environment's ``obtain(req, installer)`` method will be - returned. - """ - try: - dist = working_set.find(req) - except VersionConflict: - if not replace_conflicting: - raise - dist = None - if dist is not None: - return dist - for dist in self[req.key]: - if dist in req: - return dist - # try to download/install - return self.obtain(req, installer) - - def obtain(self, requirement, installer=None): - """Obtain a distribution matching `requirement` (e.g. via download) - - Obtain a distro that matches requirement (e.g. via download). In the - base ``Environment`` class, this routine just returns - ``installer(requirement)``, unless `installer` is None, in which case - None is returned instead. This method is a hook that allows subclasses - to attempt other ways of obtaining a distribution before falling back - to the `installer` argument.""" - if installer is not None: - return installer(requirement) - - def __iter__(self): - """Yield the unique project names of the available distributions""" - for key in self._distmap.keys(): - if self[key]: - yield key - - def __iadd__(self, other): - """In-place addition of a distribution or environment""" - if isinstance(other, Distribution): - self.add(other) - elif isinstance(other, Environment): - for project in other: - for dist in other[project]: - self.add(dist) - else: - raise TypeError("Can't add %r to environment" % (other,)) - return self - - def __add__(self, other): - """Add an environment or distribution to an environment""" - new = self.__class__([], platform=None, python=None) - for env in self, other: - new += env - return new - - -# XXX backward compatibility -AvailableDistributions = Environment - - -class ExtractionError(RuntimeError): - """An error occurred extracting a resource - - The following attributes are available from instances of this exception: - - manager - The resource manager that raised this exception - - cache_path - The base directory for resource extraction - - original_error - The exception instance that caused extraction to fail - """ - - -class ResourceManager: - """Manage resource extraction and packages""" - extraction_path = None - - def __init__(self): - self.cached_files = {} - - def resource_exists(self, package_or_requirement, resource_name): - """Does the named resource exist?""" - return get_provider(package_or_requirement).has_resource(resource_name) - - def resource_isdir(self, package_or_requirement, resource_name): - """Is the named resource an existing directory?""" - return get_provider(package_or_requirement).resource_isdir( - resource_name - ) - - def resource_filename(self, package_or_requirement, resource_name): - """Return a true filesystem path for specified resource""" - return get_provider(package_or_requirement).get_resource_filename( - self, resource_name - ) - - def resource_stream(self, package_or_requirement, resource_name): - """Return a readable file-like object for specified resource""" - return get_provider(package_or_requirement).get_resource_stream( - self, resource_name - ) - - def resource_string(self, package_or_requirement, resource_name): - """Return specified resource as a string""" - return get_provider(package_or_requirement).get_resource_string( - self, resource_name - ) - - def resource_listdir(self, package_or_requirement, resource_name): - """List the contents of the named resource directory""" - return get_provider(package_or_requirement).resource_listdir( - resource_name - ) - - def extraction_error(self): - """Give an error message for problems extracting file(s)""" - - old_exc = sys.exc_info()[1] - cache_path = self.extraction_path or get_default_cache() - - tmpl = textwrap.dedent(""" - Can't extract file(s) to egg cache - - The following error occurred while trying to extract file(s) - to the Python egg cache: - - {old_exc} - - The Python egg cache directory is currently set to: - - {cache_path} - - Perhaps your account does not have write access to this directory? - You can change the cache directory by setting the PYTHON_EGG_CACHE - environment variable to point to an accessible directory. - """).lstrip() - err = ExtractionError(tmpl.format(**locals())) - err.manager = self - err.cache_path = cache_path - err.original_error = old_exc - raise err - - def get_cache_path(self, archive_name, names=()): - """Return absolute location in cache for `archive_name` and `names` - - The parent directory of the resulting path will be created if it does - not already exist. `archive_name` should be the base filename of the - enclosing egg (which may not be the name of the enclosing zipfile!), - including its ".egg" extension. `names`, if provided, should be a - sequence of path name parts "under" the egg's extraction location. - - This method should only be called by resource providers that need to - obtain an extraction location, and only for names they intend to - extract, as it tracks the generated names for possible cleanup later. - """ - extract_path = self.extraction_path or get_default_cache() - target_path = os.path.join(extract_path, archive_name + '-tmp', *names) - try: - _bypass_ensure_directory(target_path) - except Exception: - self.extraction_error() - - self._warn_unsafe_extraction_path(extract_path) - - self.cached_files[target_path] = 1 - return target_path - - @staticmethod - def _warn_unsafe_extraction_path(path): - """ - If the default extraction path is overridden and set to an insecure - location, such as /tmp, it opens up an opportunity for an attacker to - replace an extracted file with an unauthorized payload. Warn the user - if a known insecure location is used. - - See Distribute #375 for more details. - """ - if os.name == 'nt' and not path.startswith(os.environ['windir']): - # On Windows, permissions are generally restrictive by default - # and temp directories are not writable by other users, so - # bypass the warning. - return - mode = os.stat(path).st_mode - if mode & stat.S_IWOTH or mode & stat.S_IWGRP: - msg = ( - "%s is writable by group/others and vulnerable to attack " - "when " - "used with get_resource_filename. Consider a more secure " - "location (set with .set_extraction_path or the " - "PYTHON_EGG_CACHE environment variable)." % path - ) - warnings.warn(msg, UserWarning) - - def postprocess(self, tempname, filename): - """Perform any platform-specific postprocessing of `tempname` - - This is where Mac header rewrites should be done; other platforms don't - have anything special they should do. - - Resource providers should call this method ONLY after successfully - extracting a compressed resource. They must NOT call it on resources - that are already in the filesystem. - - `tempname` is the current (temporary) name of the file, and `filename` - is the name it will be renamed to by the caller after this routine - returns. - """ - - if os.name == 'posix': - # Make the resource executable - mode = ((os.stat(tempname).st_mode) | 0o555) & 0o7777 - os.chmod(tempname, mode) - - def set_extraction_path(self, path): - """Set the base path where resources will be extracted to, if needed. - - If you do not call this routine before any extractions take place, the - path defaults to the return value of ``get_default_cache()``. (Which - is based on the ``PYTHON_EGG_CACHE`` environment variable, with various - platform-specific fallbacks. See that routine's documentation for more - details.) - - Resources are extracted to subdirectories of this path based upon - information given by the ``IResourceProvider``. You may set this to a - temporary directory, but then you must call ``cleanup_resources()`` to - delete the extracted files when done. There is no guarantee that - ``cleanup_resources()`` will be able to remove all extracted files. - - (Note: you may not change the extraction path for a given resource - manager once resources have been extracted, unless you first call - ``cleanup_resources()``.) - """ - if self.cached_files: - raise ValueError( - "Can't change extraction path, files already extracted" - ) - - self.extraction_path = path - - def cleanup_resources(self, force=False): - """ - Delete all extracted resource files and directories, returning a list - of the file and directory names that could not be successfully removed. - This function does not have any concurrency protection, so it should - generally only be called when the extraction path is a temporary - directory exclusive to a single process. This method is not - automatically called; you must call it explicitly or register it as an - ``atexit`` function if you wish to ensure cleanup of a temporary - directory used for extractions. - """ - # XXX - - -def get_default_cache(): - """ - Return the ``PYTHON_EGG_CACHE`` environment variable - or a platform-relevant user cache dir for an app - named "Python-Eggs". - """ - return ( - os.environ.get('PYTHON_EGG_CACHE') - or appdirs.user_cache_dir(appname='Python-Eggs') - ) - - -def safe_name(name): - """Convert an arbitrary string to a standard distribution name - - Any runs of non-alphanumeric/. characters are replaced with a single '-'. - """ - return re.sub('[^A-Za-z0-9.]+', '-', name) - - -def safe_version(version): - """ - Convert an arbitrary string to a standard version string - """ - try: - # normalize the version - return str(packaging.version.Version(version)) - except packaging.version.InvalidVersion: - version = version.replace(' ', '.') - return re.sub('[^A-Za-z0-9.]+', '-', version) - - -def safe_extra(extra): - """Convert an arbitrary string to a standard 'extra' name - - Any runs of non-alphanumeric characters are replaced with a single '_', - and the result is always lowercased. - """ - return re.sub('[^A-Za-z0-9.-]+', '_', extra).lower() - - -def to_filename(name): - """Convert a project or version name to its filename-escaped form - - Any '-' characters are currently replaced with '_'. - """ - return name.replace('-', '_') - - -def invalid_marker(text): - """ - Validate text as a PEP 508 environment marker; return an exception - if invalid or False otherwise. - """ - try: - evaluate_marker(text) - except SyntaxError as e: - e.filename = None - e.lineno = None - return e - return False - - -def evaluate_marker(text, extra=None): - """ - Evaluate a PEP 508 environment marker. - Return a boolean indicating the marker result in this environment. - Raise SyntaxError if marker is invalid. - - This implementation uses the 'pyparsing' module. - """ - try: - marker = packaging.markers.Marker(text) - return marker.evaluate() - except packaging.markers.InvalidMarker as e: - raise SyntaxError(e) - - -class NullProvider: - """Try to implement resources and metadata for arbitrary PEP 302 loaders""" - - egg_name = None - egg_info = None - loader = None - - def __init__(self, module): - self.loader = getattr(module, '__loader__', None) - self.module_path = os.path.dirname(getattr(module, '__file__', '')) - - def get_resource_filename(self, manager, resource_name): - return self._fn(self.module_path, resource_name) - - def get_resource_stream(self, manager, resource_name): - return io.BytesIO(self.get_resource_string(manager, resource_name)) - - def get_resource_string(self, manager, resource_name): - return self._get(self._fn(self.module_path, resource_name)) - - def has_resource(self, resource_name): - return self._has(self._fn(self.module_path, resource_name)) - - def has_metadata(self, name): - return self.egg_info and self._has(self._fn(self.egg_info, name)) - - def get_metadata(self, name): - if not self.egg_info: - return "" - value = self._get(self._fn(self.egg_info, name)) - return value.decode('utf-8') if six.PY3 else value - - def get_metadata_lines(self, name): - return yield_lines(self.get_metadata(name)) - - def resource_isdir(self, resource_name): - return self._isdir(self._fn(self.module_path, resource_name)) - - def metadata_isdir(self, name): - return self.egg_info and self._isdir(self._fn(self.egg_info, name)) - - def resource_listdir(self, resource_name): - return self._listdir(self._fn(self.module_path, resource_name)) - - def metadata_listdir(self, name): - if self.egg_info: - return self._listdir(self._fn(self.egg_info, name)) - return [] - - def run_script(self, script_name, namespace): - script = 'scripts/' + script_name - if not self.has_metadata(script): - raise ResolutionError( - "Script {script!r} not found in metadata at {self.egg_info!r}" - .format(**locals()), - ) - script_text = self.get_metadata(script).replace('\r\n', '\n') - script_text = script_text.replace('\r', '\n') - script_filename = self._fn(self.egg_info, script) - namespace['__file__'] = script_filename - if os.path.exists(script_filename): - source = open(script_filename).read() - code = compile(source, script_filename, 'exec') - exec(code, namespace, namespace) - else: - from linecache import cache - cache[script_filename] = ( - len(script_text), 0, script_text.split('\n'), script_filename - ) - script_code = compile(script_text, script_filename, 'exec') - exec(script_code, namespace, namespace) - - def _has(self, path): - raise NotImplementedError( - "Can't perform this operation for unregistered loader type" - ) - - def _isdir(self, path): - raise NotImplementedError( - "Can't perform this operation for unregistered loader type" - ) - - def _listdir(self, path): - raise NotImplementedError( - "Can't perform this operation for unregistered loader type" - ) - - def _fn(self, base, resource_name): - if resource_name: - return os.path.join(base, *resource_name.split('/')) - return base - - def _get(self, path): - if hasattr(self.loader, 'get_data'): - return self.loader.get_data(path) - raise NotImplementedError( - "Can't perform this operation for loaders without 'get_data()'" - ) - - -register_loader_type(object, NullProvider) - - -class EggProvider(NullProvider): - """Provider based on a virtual filesystem""" - - def __init__(self, module): - NullProvider.__init__(self, module) - self._setup_prefix() - - def _setup_prefix(self): - # we assume here that our metadata may be nested inside a "basket" - # of multiple eggs; that's why we use module_path instead of .archive - path = self.module_path - old = None - while path != old: - if _is_egg_path(path): - self.egg_name = os.path.basename(path) - self.egg_info = os.path.join(path, 'EGG-INFO') - self.egg_root = path - break - old = path - path, base = os.path.split(path) - - -class DefaultProvider(EggProvider): - """Provides access to package resources in the filesystem""" - - def _has(self, path): - return os.path.exists(path) - - def _isdir(self, path): - return os.path.isdir(path) - - def _listdir(self, path): - return os.listdir(path) - - def get_resource_stream(self, manager, resource_name): - return open(self._fn(self.module_path, resource_name), 'rb') - - def _get(self, path): - with open(path, 'rb') as stream: - return stream.read() - - @classmethod - def _register(cls): - loader_cls = getattr( - importlib_machinery, - 'SourceFileLoader', - type(None), - ) - register_loader_type(loader_cls, cls) - - -DefaultProvider._register() - - -class EmptyProvider(NullProvider): - """Provider that returns nothing for all requests""" - - module_path = None - - _isdir = _has = lambda self, path: False - - def _get(self, path): - return '' - - def _listdir(self, path): - return [] - - def __init__(self): - pass - - -empty_provider = EmptyProvider() - - -class ZipManifests(dict): - """ - zip manifest builder - """ - - @classmethod - def build(cls, path): - """ - Build a dictionary similar to the zipimport directory - caches, except instead of tuples, store ZipInfo objects. - - Use a platform-specific path separator (os.sep) for the path keys - for compatibility with pypy on Windows. - """ - with zipfile.ZipFile(path) as zfile: - items = ( - ( - name.replace('/', os.sep), - zfile.getinfo(name), - ) - for name in zfile.namelist() - ) - return dict(items) - - load = build - - -class MemoizedZipManifests(ZipManifests): - """ - Memoized zipfile manifests. - """ - manifest_mod = collections.namedtuple('manifest_mod', 'manifest mtime') - - def load(self, path): - """ - Load a manifest at path or return a suitable manifest already loaded. - """ - path = os.path.normpath(path) - mtime = os.stat(path).st_mtime - - if path not in self or self[path].mtime != mtime: - manifest = self.build(path) - self[path] = self.manifest_mod(manifest, mtime) - - return self[path].manifest - - -class ZipProvider(EggProvider): - """Resource support for zips and eggs""" - - eagers = None - _zip_manifests = MemoizedZipManifests() - - def __init__(self, module): - EggProvider.__init__(self, module) - self.zip_pre = self.loader.archive + os.sep - - def _zipinfo_name(self, fspath): - # Convert a virtual filename (full path to file) into a zipfile subpath - # usable with the zipimport directory cache for our target archive - fspath = fspath.rstrip(os.sep) - if fspath == self.loader.archive: - return '' - if fspath.startswith(self.zip_pre): - return fspath[len(self.zip_pre):] - raise AssertionError( - "%s is not a subpath of %s" % (fspath, self.zip_pre) - ) - - def _parts(self, zip_path): - # Convert a zipfile subpath into an egg-relative path part list. - # pseudo-fs path - fspath = self.zip_pre + zip_path - if fspath.startswith(self.egg_root + os.sep): - return fspath[len(self.egg_root) + 1:].split(os.sep) - raise AssertionError( - "%s is not a subpath of %s" % (fspath, self.egg_root) - ) - - @property - def zipinfo(self): - return self._zip_manifests.load(self.loader.archive) - - def get_resource_filename(self, manager, resource_name): - if not self.egg_name: - raise NotImplementedError( - "resource_filename() only supported for .egg, not .zip" - ) - # no need to lock for extraction, since we use temp names - zip_path = self._resource_to_zip(resource_name) - eagers = self._get_eager_resources() - if '/'.join(self._parts(zip_path)) in eagers: - for name in eagers: - self._extract_resource(manager, self._eager_to_zip(name)) - return self._extract_resource(manager, zip_path) - - @staticmethod - def _get_date_and_size(zip_stat): - size = zip_stat.file_size - # ymdhms+wday, yday, dst - date_time = zip_stat.date_time + (0, 0, -1) - # 1980 offset already done - timestamp = time.mktime(date_time) - return timestamp, size - - def _extract_resource(self, manager, zip_path): - - if zip_path in self._index(): - for name in self._index()[zip_path]: - last = self._extract_resource( - manager, os.path.join(zip_path, name) - ) - # return the extracted directory name - return os.path.dirname(last) - - timestamp, size = self._get_date_and_size(self.zipinfo[zip_path]) - - if not WRITE_SUPPORT: - raise IOError('"os.rename" and "os.unlink" are not supported ' - 'on this platform') - try: - - real_path = manager.get_cache_path( - self.egg_name, self._parts(zip_path) - ) - - if self._is_current(real_path, zip_path): - return real_path - - outf, tmpnam = _mkstemp( - ".$extract", - dir=os.path.dirname(real_path), - ) - os.write(outf, self.loader.get_data(zip_path)) - os.close(outf) - utime(tmpnam, (timestamp, timestamp)) - manager.postprocess(tmpnam, real_path) - - try: - rename(tmpnam, real_path) - - except os.error: - if os.path.isfile(real_path): - if self._is_current(real_path, zip_path): - # the file became current since it was checked above, - # so proceed. - return real_path - # Windows, del old file and retry - elif os.name == 'nt': - unlink(real_path) - rename(tmpnam, real_path) - return real_path - raise - - except os.error: - # report a user-friendly error - manager.extraction_error() - - return real_path - - def _is_current(self, file_path, zip_path): - """ - Return True if the file_path is current for this zip_path - """ - timestamp, size = self._get_date_and_size(self.zipinfo[zip_path]) - if not os.path.isfile(file_path): - return False - stat = os.stat(file_path) - if stat.st_size != size or stat.st_mtime != timestamp: - return False - # check that the contents match - zip_contents = self.loader.get_data(zip_path) - with open(file_path, 'rb') as f: - file_contents = f.read() - return zip_contents == file_contents - - def _get_eager_resources(self): - if self.eagers is None: - eagers = [] - for name in ('native_libs.txt', 'eager_resources.txt'): - if self.has_metadata(name): - eagers.extend(self.get_metadata_lines(name)) - self.eagers = eagers - return self.eagers - - def _index(self): - try: - return self._dirindex - except AttributeError: - ind = {} - for path in self.zipinfo: - parts = path.split(os.sep) - while parts: - parent = os.sep.join(parts[:-1]) - if parent in ind: - ind[parent].append(parts[-1]) - break - else: - ind[parent] = [parts.pop()] - self._dirindex = ind - return ind - - def _has(self, fspath): - zip_path = self._zipinfo_name(fspath) - return zip_path in self.zipinfo or zip_path in self._index() - - def _isdir(self, fspath): - return self._zipinfo_name(fspath) in self._index() - - def _listdir(self, fspath): - return list(self._index().get(self._zipinfo_name(fspath), ())) - - def _eager_to_zip(self, resource_name): - return self._zipinfo_name(self._fn(self.egg_root, resource_name)) - - def _resource_to_zip(self, resource_name): - return self._zipinfo_name(self._fn(self.module_path, resource_name)) - - -register_loader_type(zipimport.zipimporter, ZipProvider) - - -class FileMetadata(EmptyProvider): - """Metadata handler for standalone PKG-INFO files - - Usage:: - - metadata = FileMetadata("/path/to/PKG-INFO") - - This provider rejects all data and metadata requests except for PKG-INFO, - which is treated as existing, and will be the contents of the file at - the provided location. - """ - - def __init__(self, path): - self.path = path - - def has_metadata(self, name): - return name == 'PKG-INFO' and os.path.isfile(self.path) - - def get_metadata(self, name): - if name != 'PKG-INFO': - raise KeyError("No metadata except PKG-INFO is available") - - with io.open(self.path, encoding='utf-8', errors="replace") as f: - metadata = f.read() - self._warn_on_replacement(metadata) - return metadata - - def _warn_on_replacement(self, metadata): - # Python 2.7 compat for: replacement_char = '�' - replacement_char = b'\xef\xbf\xbd'.decode('utf-8') - if replacement_char in metadata: - tmpl = "{self.path} could not be properly decoded in UTF-8" - msg = tmpl.format(**locals()) - warnings.warn(msg) - - def get_metadata_lines(self, name): - return yield_lines(self.get_metadata(name)) - - -class PathMetadata(DefaultProvider): - """Metadata provider for egg directories - - Usage:: - - # Development eggs: - - egg_info = "/path/to/PackageName.egg-info" - base_dir = os.path.dirname(egg_info) - metadata = PathMetadata(base_dir, egg_info) - dist_name = os.path.splitext(os.path.basename(egg_info))[0] - dist = Distribution(basedir, project_name=dist_name, metadata=metadata) - - # Unpacked egg directories: - - egg_path = "/path/to/PackageName-ver-pyver-etc.egg" - metadata = PathMetadata(egg_path, os.path.join(egg_path,'EGG-INFO')) - dist = Distribution.from_filename(egg_path, metadata=metadata) - """ - - def __init__(self, path, egg_info): - self.module_path = path - self.egg_info = egg_info - - -class EggMetadata(ZipProvider): - """Metadata provider for .egg files""" - - def __init__(self, importer): - """Create a metadata provider from a zipimporter""" - - self.zip_pre = importer.archive + os.sep - self.loader = importer - if importer.prefix: - self.module_path = os.path.join(importer.archive, importer.prefix) - else: - self.module_path = importer.archive - self._setup_prefix() - - -_declare_state('dict', _distribution_finders={}) - - -def register_finder(importer_type, distribution_finder): - """Register `distribution_finder` to find distributions in sys.path items - - `importer_type` is the type or class of a PEP 302 "Importer" (sys.path item - handler), and `distribution_finder` is a callable that, passed a path - item and the importer instance, yields ``Distribution`` instances found on - that path item. See ``pkg_resources.find_on_path`` for an example.""" - _distribution_finders[importer_type] = distribution_finder - - -def find_distributions(path_item, only=False): - """Yield distributions accessible via `path_item`""" - importer = get_importer(path_item) - finder = _find_adapter(_distribution_finders, importer) - return finder(importer, path_item, only) - - -def find_eggs_in_zip(importer, path_item, only=False): - """ - Find eggs in zip files; possibly multiple nested eggs. - """ - if importer.archive.endswith('.whl'): - # wheels are not supported with this finder - # they don't have PKG-INFO metadata, and won't ever contain eggs - return - metadata = EggMetadata(importer) - if metadata.has_metadata('PKG-INFO'): - yield Distribution.from_filename(path_item, metadata=metadata) - if only: - # don't yield nested distros - return - for subitem in metadata.resource_listdir('/'): - if _is_egg_path(subitem): - subpath = os.path.join(path_item, subitem) - dists = find_eggs_in_zip(zipimport.zipimporter(subpath), subpath) - for dist in dists: - yield dist - elif subitem.lower().endswith('.dist-info'): - subpath = os.path.join(path_item, subitem) - submeta = EggMetadata(zipimport.zipimporter(subpath)) - submeta.egg_info = subpath - yield Distribution.from_location(path_item, subitem, submeta) - - -register_finder(zipimport.zipimporter, find_eggs_in_zip) - - -def find_nothing(importer, path_item, only=False): - return () - - -register_finder(object, find_nothing) - - -def _by_version_descending(names): - """ - Given a list of filenames, return them in descending order - by version number. - - >>> names = 'bar', 'foo', 'Python-2.7.10.egg', 'Python-2.7.2.egg' - >>> _by_version_descending(names) - ['Python-2.7.10.egg', 'Python-2.7.2.egg', 'foo', 'bar'] - >>> names = 'Setuptools-1.2.3b1.egg', 'Setuptools-1.2.3.egg' - >>> _by_version_descending(names) - ['Setuptools-1.2.3.egg', 'Setuptools-1.2.3b1.egg'] - >>> names = 'Setuptools-1.2.3b1.egg', 'Setuptools-1.2.3.post1.egg' - >>> _by_version_descending(names) - ['Setuptools-1.2.3.post1.egg', 'Setuptools-1.2.3b1.egg'] - """ - def _by_version(name): - """ - Parse each component of the filename - """ - name, ext = os.path.splitext(name) - parts = itertools.chain(name.split('-'), [ext]) - return [packaging.version.parse(part) for part in parts] - - return sorted(names, key=_by_version, reverse=True) - - -def find_on_path(importer, path_item, only=False): - """Yield distributions accessible on a sys.path directory""" - path_item = _normalize_cached(path_item) - - if _is_unpacked_egg(path_item): - yield Distribution.from_filename( - path_item, metadata=PathMetadata( - path_item, os.path.join(path_item, 'EGG-INFO') - ) - ) - return - - entries = safe_listdir(path_item) - - # for performance, before sorting by version, - # screen entries for only those that will yield - # distributions - filtered = ( - entry - for entry in entries - if dist_factory(path_item, entry, only) - ) - - # scan for .egg and .egg-info in directory - path_item_entries = _by_version_descending(filtered) - for entry in path_item_entries: - fullpath = os.path.join(path_item, entry) - factory = dist_factory(path_item, entry, only) - for dist in factory(fullpath): - yield dist - - -def dist_factory(path_item, entry, only): - """ - Return a dist_factory for a path_item and entry - """ - lower = entry.lower() - is_meta = any(map(lower.endswith, ('.egg-info', '.dist-info'))) - return ( - distributions_from_metadata - if is_meta else - find_distributions - if not only and _is_egg_path(entry) else - resolve_egg_link - if not only and lower.endswith('.egg-link') else - NoDists() - ) - - -class NoDists: - """ - >>> bool(NoDists()) - False - - >>> list(NoDists()('anything')) - [] - """ - def __bool__(self): - return False - if six.PY2: - __nonzero__ = __bool__ - - def __call__(self, fullpath): - return iter(()) - - -def safe_listdir(path): - """ - Attempt to list contents of path, but suppress some exceptions. - """ - try: - return os.listdir(path) - except (PermissionError, NotADirectoryError): - pass - except OSError as e: - # Ignore the directory if does not exist, not a directory or - # permission denied - ignorable = ( - e.errno in (errno.ENOTDIR, errno.EACCES, errno.ENOENT) - # Python 2 on Windows needs to be handled this way :( - or getattr(e, "winerror", None) == 267 - ) - if not ignorable: - raise - return () - - -def distributions_from_metadata(path): - root = os.path.dirname(path) - if os.path.isdir(path): - if len(os.listdir(path)) == 0: - # empty metadata dir; skip - return - metadata = PathMetadata(root, path) - else: - metadata = FileMetadata(path) - entry = os.path.basename(path) - yield Distribution.from_location( - root, entry, metadata, precedence=DEVELOP_DIST, - ) - - -def non_empty_lines(path): - """ - Yield non-empty lines from file at path - """ - with open(path) as f: - for line in f: - line = line.strip() - if line: - yield line - - -def resolve_egg_link(path): - """ - Given a path to an .egg-link, resolve distributions - present in the referenced path. - """ - referenced_paths = non_empty_lines(path) - resolved_paths = ( - os.path.join(os.path.dirname(path), ref) - for ref in referenced_paths - ) - dist_groups = map(find_distributions, resolved_paths) - return next(dist_groups, ()) - - -register_finder(pkgutil.ImpImporter, find_on_path) - -if hasattr(importlib_machinery, 'FileFinder'): - register_finder(importlib_machinery.FileFinder, find_on_path) - -_declare_state('dict', _namespace_handlers={}) -_declare_state('dict', _namespace_packages={}) - - -def register_namespace_handler(importer_type, namespace_handler): - """Register `namespace_handler` to declare namespace packages - - `importer_type` is the type or class of a PEP 302 "Importer" (sys.path item - handler), and `namespace_handler` is a callable like this:: - - def namespace_handler(importer, path_entry, moduleName, module): - # return a path_entry to use for child packages - - Namespace handlers are only called if the importer object has already - agreed that it can handle the relevant path item, and they should only - return a subpath if the module __path__ does not already contain an - equivalent subpath. For an example namespace handler, see - ``pkg_resources.file_ns_handler``. - """ - _namespace_handlers[importer_type] = namespace_handler - - -def _handle_ns(packageName, path_item): - """Ensure that named package includes a subpath of path_item (if needed)""" - - importer = get_importer(path_item) - if importer is None: - return None - loader = importer.find_module(packageName) - if loader is None: - return None - module = sys.modules.get(packageName) - if module is None: - module = sys.modules[packageName] = types.ModuleType(packageName) - module.__path__ = [] - _set_parent_ns(packageName) - elif not hasattr(module, '__path__'): - raise TypeError("Not a package:", packageName) - handler = _find_adapter(_namespace_handlers, importer) - subpath = handler(importer, path_item, packageName, module) - if subpath is not None: - path = module.__path__ - path.append(subpath) - loader.load_module(packageName) - _rebuild_mod_path(path, packageName, module) - return subpath - - -def _rebuild_mod_path(orig_path, package_name, module): - """ - Rebuild module.__path__ ensuring that all entries are ordered - corresponding to their sys.path order - """ - sys_path = [_normalize_cached(p) for p in sys.path] - - def safe_sys_path_index(entry): - """ - Workaround for #520 and #513. - """ - try: - return sys_path.index(entry) - except ValueError: - return float('inf') - - def position_in_sys_path(path): - """ - Return the ordinal of the path based on its position in sys.path - """ - path_parts = path.split(os.sep) - module_parts = package_name.count('.') + 1 - parts = path_parts[:-module_parts] - return safe_sys_path_index(_normalize_cached(os.sep.join(parts))) - - if not isinstance(orig_path, list): - # Is this behavior useful when module.__path__ is not a list? - return - - orig_path.sort(key=position_in_sys_path) - module.__path__[:] = [_normalize_cached(p) for p in orig_path] - - -def declare_namespace(packageName): - """Declare that package 'packageName' is a namespace package""" - - _imp.acquire_lock() - try: - if packageName in _namespace_packages: - return - - path, parent = sys.path, None - if '.' in packageName: - parent = '.'.join(packageName.split('.')[:-1]) - declare_namespace(parent) - if parent not in _namespace_packages: - __import__(parent) - try: - path = sys.modules[parent].__path__ - except AttributeError: - raise TypeError("Not a package:", parent) - - # Track what packages are namespaces, so when new path items are added, - # they can be updated - _namespace_packages.setdefault(parent, []).append(packageName) - _namespace_packages.setdefault(packageName, []) - - for path_item in path: - # Ensure all the parent's path items are reflected in the child, - # if they apply - _handle_ns(packageName, path_item) - - finally: - _imp.release_lock() - - -def fixup_namespace_packages(path_item, parent=None): - """Ensure that previously-declared namespace packages include path_item""" - _imp.acquire_lock() - try: - for package in _namespace_packages.get(parent, ()): - subpath = _handle_ns(package, path_item) - if subpath: - fixup_namespace_packages(subpath, package) - finally: - _imp.release_lock() - - -def file_ns_handler(importer, path_item, packageName, module): - """Compute an ns-package subpath for a filesystem or zipfile importer""" - - subpath = os.path.join(path_item, packageName.split('.')[-1]) - normalized = _normalize_cached(subpath) - for item in module.__path__: - if _normalize_cached(item) == normalized: - break - else: - # Only return the path if it's not already there - return subpath - - -register_namespace_handler(pkgutil.ImpImporter, file_ns_handler) -register_namespace_handler(zipimport.zipimporter, file_ns_handler) - -if hasattr(importlib_machinery, 'FileFinder'): - register_namespace_handler(importlib_machinery.FileFinder, file_ns_handler) - - -def null_ns_handler(importer, path_item, packageName, module): - return None - - -register_namespace_handler(object, null_ns_handler) - - -def normalize_path(filename): - """Normalize a file/dir name for comparison purposes""" - return os.path.normcase(os.path.realpath(filename)) - - -def _normalize_cached(filename, _cache={}): - try: - return _cache[filename] - except KeyError: - _cache[filename] = result = normalize_path(filename) - return result - - -def _is_egg_path(path): - """ - Determine if given path appears to be an egg. - """ - return path.lower().endswith('.egg') - - -def _is_unpacked_egg(path): - """ - Determine if given path appears to be an unpacked egg. - """ - return ( - _is_egg_path(path) and - os.path.isfile(os.path.join(path, 'EGG-INFO', 'PKG-INFO')) - ) - - -def _set_parent_ns(packageName): - parts = packageName.split('.') - name = parts.pop() - if parts: - parent = '.'.join(parts) - setattr(sys.modules[parent], name, sys.modules[packageName]) - - -def yield_lines(strs): - """Yield non-empty/non-comment lines of a string or sequence""" - if isinstance(strs, six.string_types): - for s in strs.splitlines(): - s = s.strip() - # skip blank lines/comments - if s and not s.startswith('#'): - yield s - else: - for ss in strs: - for s in yield_lines(ss): - yield s - - -MODULE = re.compile(r"\w+(\.\w+)*$").match -EGG_NAME = re.compile( - r""" - (?P<name>[^-]+) ( - -(?P<ver>[^-]+) ( - -py(?P<pyver>[^-]+) ( - -(?P<plat>.+) - )? - )? - )? - """, - re.VERBOSE | re.IGNORECASE, -).match - - -class EntryPoint(object): - """Object representing an advertised importable object""" - - def __init__(self, name, module_name, attrs=(), extras=(), dist=None): - if not MODULE(module_name): - raise ValueError("Invalid module name", module_name) - self.name = name - self.module_name = module_name - self.attrs = tuple(attrs) - self.extras = tuple(extras) - self.dist = dist - - def __str__(self): - s = "%s = %s" % (self.name, self.module_name) - if self.attrs: - s += ':' + '.'.join(self.attrs) - if self.extras: - s += ' [%s]' % ','.join(self.extras) - return s - - def __repr__(self): - return "EntryPoint.parse(%r)" % str(self) - - def load(self, require=True, *args, **kwargs): - """ - Require packages for this EntryPoint, then resolve it. - """ - if not require or args or kwargs: - warnings.warn( - "Parameters to load are deprecated. Call .resolve and " - ".require separately.", - DeprecationWarning, - stacklevel=2, - ) - if require: - self.require(*args, **kwargs) - return self.resolve() - - def resolve(self): - """ - Resolve the entry point from its module and attrs. - """ - module = __import__(self.module_name, fromlist=['__name__'], level=0) - try: - return functools.reduce(getattr, self.attrs, module) - except AttributeError as exc: - raise ImportError(str(exc)) - - def require(self, env=None, installer=None): - if self.extras and not self.dist: - raise UnknownExtra("Can't require() without a distribution", self) - - # Get the requirements for this entry point with all its extras and - # then resolve them. We have to pass `extras` along when resolving so - # that the working set knows what extras we want. Otherwise, for - # dist-info distributions, the working set will assume that the - # requirements for that extra are purely optional and skip over them. - reqs = self.dist.requires(self.extras) - items = working_set.resolve(reqs, env, installer, extras=self.extras) - list(map(working_set.add, items)) - - pattern = re.compile( - r'\s*' - r'(?P<name>.+?)\s*' - r'=\s*' - r'(?P<module>[\w.]+)\s*' - r'(:\s*(?P<attr>[\w.]+))?\s*' - r'(?P<extras>\[.*\])?\s*$' - ) - - @classmethod - def parse(cls, src, dist=None): - """Parse a single entry point from string `src` - - Entry point syntax follows the form:: - - name = some.module:some.attr [extra1, extra2] - - The entry name and module name are required, but the ``:attrs`` and - ``[extras]`` parts are optional - """ - m = cls.pattern.match(src) - if not m: - msg = "EntryPoint must be in 'name=module:attrs [extras]' format" - raise ValueError(msg, src) - res = m.groupdict() - extras = cls._parse_extras(res['extras']) - attrs = res['attr'].split('.') if res['attr'] else () - return cls(res['name'], res['module'], attrs, extras, dist) - - @classmethod - def _parse_extras(cls, extras_spec): - if not extras_spec: - return () - req = Requirement.parse('x' + extras_spec) - if req.specs: - raise ValueError() - return req.extras - - @classmethod - def parse_group(cls, group, lines, dist=None): - """Parse an entry point group""" - if not MODULE(group): - raise ValueError("Invalid group name", group) - this = {} - for line in yield_lines(lines): - ep = cls.parse(line, dist) - if ep.name in this: - raise ValueError("Duplicate entry point", group, ep.name) - this[ep.name] = ep - return this - - @classmethod - def parse_map(cls, data, dist=None): - """Parse a map of entry point groups""" - if isinstance(data, dict): - data = data.items() - else: - data = split_sections(data) - maps = {} - for group, lines in data: - if group is None: - if not lines: - continue - raise ValueError("Entry points must be listed in groups") - group = group.strip() - if group in maps: - raise ValueError("Duplicate group name", group) - maps[group] = cls.parse_group(group, lines, dist) - return maps - - -def _remove_md5_fragment(location): - if not location: - return '' - parsed = urllib.parse.urlparse(location) - if parsed[-1].startswith('md5='): - return urllib.parse.urlunparse(parsed[:-1] + ('',)) - return location - - -def _version_from_file(lines): - """ - Given an iterable of lines from a Metadata file, return - the value of the Version field, if present, or None otherwise. - """ - def is_version_line(line): - return line.lower().startswith('version:') - version_lines = filter(is_version_line, lines) - line = next(iter(version_lines), '') - _, _, value = line.partition(':') - return safe_version(value.strip()) or None - - -class Distribution(object): - """Wrap an actual or potential sys.path entry w/metadata""" - PKG_INFO = 'PKG-INFO' - - def __init__( - self, location=None, metadata=None, project_name=None, - version=None, py_version=PY_MAJOR, platform=None, - precedence=EGG_DIST): - self.project_name = safe_name(project_name or 'Unknown') - if version is not None: - self._version = safe_version(version) - self.py_version = py_version - self.platform = platform - self.location = location - self.precedence = precedence - self._provider = metadata or empty_provider - - @classmethod - def from_location(cls, location, basename, metadata=None, **kw): - project_name, version, py_version, platform = [None] * 4 - basename, ext = os.path.splitext(basename) - if ext.lower() in _distributionImpl: - cls = _distributionImpl[ext.lower()] - - match = EGG_NAME(basename) - if match: - project_name, version, py_version, platform = match.group( - 'name', 'ver', 'pyver', 'plat' - ) - return cls( - location, metadata, project_name=project_name, version=version, - py_version=py_version, platform=platform, **kw - )._reload_version() - - def _reload_version(self): - return self - - @property - def hashcmp(self): - return ( - self.parsed_version, - self.precedence, - self.key, - _remove_md5_fragment(self.location), - self.py_version or '', - self.platform or '', - ) - - def __hash__(self): - return hash(self.hashcmp) - - def __lt__(self, other): - return self.hashcmp < other.hashcmp - - def __le__(self, other): - return self.hashcmp <= other.hashcmp - - def __gt__(self, other): - return self.hashcmp > other.hashcmp - - def __ge__(self, other): - return self.hashcmp >= other.hashcmp - - def __eq__(self, other): - if not isinstance(other, self.__class__): - # It's not a Distribution, so they are not equal - return False - return self.hashcmp == other.hashcmp - - def __ne__(self, other): - return not self == other - - # These properties have to be lazy so that we don't have to load any - # metadata until/unless it's actually needed. (i.e., some distributions - # may not know their name or version without loading PKG-INFO) - - @property - def key(self): - try: - return self._key - except AttributeError: - self._key = key = self.project_name.lower() - return key - - @property - def parsed_version(self): - if not hasattr(self, "_parsed_version"): - self._parsed_version = parse_version(self.version) - - return self._parsed_version - - def _warn_legacy_version(self): - LV = packaging.version.LegacyVersion - is_legacy = isinstance(self._parsed_version, LV) - if not is_legacy: - return - - # While an empty version is technically a legacy version and - # is not a valid PEP 440 version, it's also unlikely to - # actually come from someone and instead it is more likely that - # it comes from setuptools attempting to parse a filename and - # including it in the list. So for that we'll gate this warning - # on if the version is anything at all or not. - if not self.version: - return - - tmpl = textwrap.dedent(""" - '{project_name} ({version})' is being parsed as a legacy, - non PEP 440, - version. You may find odd behavior and sort order. - In particular it will be sorted as less than 0.0. It - is recommended to migrate to PEP 440 compatible - versions. - """).strip().replace('\n', ' ') - - warnings.warn(tmpl.format(**vars(self)), PEP440Warning) - - @property - def version(self): - try: - return self._version - except AttributeError: - version = _version_from_file(self._get_metadata(self.PKG_INFO)) - if version is None: - tmpl = "Missing 'Version:' header and/or %s file" - raise ValueError(tmpl % self.PKG_INFO, self) - return version - - @property - def _dep_map(self): - """ - A map of extra to its list of (direct) requirements - for this distribution, including the null extra. - """ - try: - return self.__dep_map - except AttributeError: - self.__dep_map = self._filter_extras(self._build_dep_map()) - return self.__dep_map - - @staticmethod - def _filter_extras(dm): - """ - Given a mapping of extras to dependencies, strip off - environment markers and filter out any dependencies - not matching the markers. - """ - for extra in list(filter(None, dm)): - new_extra = extra - reqs = dm.pop(extra) - new_extra, _, marker = extra.partition(':') - fails_marker = marker and ( - invalid_marker(marker) - or not evaluate_marker(marker) - ) - if fails_marker: - reqs = [] - new_extra = safe_extra(new_extra) or None - - dm.setdefault(new_extra, []).extend(reqs) - return dm - - def _build_dep_map(self): - dm = {} - for name in 'requires.txt', 'depends.txt': - for extra, reqs in split_sections(self._get_metadata(name)): - dm.setdefault(extra, []).extend(parse_requirements(reqs)) - return dm - - def requires(self, extras=()): - """List of Requirements needed for this distro if `extras` are used""" - dm = self._dep_map - deps = [] - deps.extend(dm.get(None, ())) - for ext in extras: - try: - deps.extend(dm[safe_extra(ext)]) - except KeyError: - raise UnknownExtra( - "%s has no such extra feature %r" % (self, ext) - ) - return deps - - def _get_metadata(self, name): - if self.has_metadata(name): - for line in self.get_metadata_lines(name): - yield line - - def activate(self, path=None, replace=False): - """Ensure distribution is importable on `path` (default=sys.path)""" - if path is None: - path = sys.path - self.insert_on(path, replace=replace) - if path is sys.path: - fixup_namespace_packages(self.location) - for pkg in self._get_metadata('namespace_packages.txt'): - if pkg in sys.modules: - declare_namespace(pkg) - - def egg_name(self): - """Return what this distribution's standard .egg filename should be""" - filename = "%s-%s-py%s" % ( - to_filename(self.project_name), to_filename(self.version), - self.py_version or PY_MAJOR - ) - - if self.platform: - filename += '-' + self.platform - return filename - - def __repr__(self): - if self.location: - return "%s (%s)" % (self, self.location) - else: - return str(self) - - def __str__(self): - try: - version = getattr(self, 'version', None) - except ValueError: - version = None - version = version or "[unknown version]" - return "%s %s" % (self.project_name, version) - - def __getattr__(self, attr): - """Delegate all unrecognized public attributes to .metadata provider""" - if attr.startswith('_'): - raise AttributeError(attr) - return getattr(self._provider, attr) - - @classmethod - def from_filename(cls, filename, metadata=None, **kw): - return cls.from_location( - _normalize_cached(filename), os.path.basename(filename), metadata, - **kw - ) - - def as_requirement(self): - """Return a ``Requirement`` that matches this distribution exactly""" - if isinstance(self.parsed_version, packaging.version.Version): - spec = "%s==%s" % (self.project_name, self.parsed_version) - else: - spec = "%s===%s" % (self.project_name, self.parsed_version) - - return Requirement.parse(spec) - - def load_entry_point(self, group, name): - """Return the `name` entry point of `group` or raise ImportError""" - ep = self.get_entry_info(group, name) - if ep is None: - raise ImportError("Entry point %r not found" % ((group, name),)) - return ep.load() - - def get_entry_map(self, group=None): - """Return the entry point map for `group`, or the full entry map""" - try: - ep_map = self._ep_map - except AttributeError: - ep_map = self._ep_map = EntryPoint.parse_map( - self._get_metadata('entry_points.txt'), self - ) - if group is not None: - return ep_map.get(group, {}) - return ep_map - - def get_entry_info(self, group, name): - """Return the EntryPoint object for `group`+`name`, or ``None``""" - return self.get_entry_map(group).get(name) - - def insert_on(self, path, loc=None, replace=False): - """Ensure self.location is on path - - If replace=False (default): - - If location is already in path anywhere, do nothing. - - Else: - - If it's an egg and its parent directory is on path, - insert just ahead of the parent. - - Else: add to the end of path. - If replace=True: - - If location is already on path anywhere (not eggs) - or higher priority than its parent (eggs) - do nothing. - - Else: - - If it's an egg and its parent directory is on path, - insert just ahead of the parent, - removing any lower-priority entries. - - Else: add it to the front of path. - """ - - loc = loc or self.location - if not loc: - return - - nloc = _normalize_cached(loc) - bdir = os.path.dirname(nloc) - npath = [(p and _normalize_cached(p) or p) for p in path] - - for p, item in enumerate(npath): - if item == nloc: - if replace: - break - else: - # don't modify path (even removing duplicates) if - # found and not replace - return - elif item == bdir and self.precedence == EGG_DIST: - # if it's an .egg, give it precedence over its directory - # UNLESS it's already been added to sys.path and replace=False - if (not replace) and nloc in npath[p:]: - return - if path is sys.path: - self.check_version_conflict() - path.insert(p, loc) - npath.insert(p, nloc) - break - else: - if path is sys.path: - self.check_version_conflict() - if replace: - path.insert(0, loc) - else: - path.append(loc) - return - - # p is the spot where we found or inserted loc; now remove duplicates - while True: - try: - np = npath.index(nloc, p + 1) - except ValueError: - break - else: - del npath[np], path[np] - # ha! - p = np - - return - - def check_version_conflict(self): - if self.key == 'setuptools': - # ignore the inevitable setuptools self-conflicts :( - return - - nsp = dict.fromkeys(self._get_metadata('namespace_packages.txt')) - loc = normalize_path(self.location) - for modname in self._get_metadata('top_level.txt'): - if (modname not in sys.modules or modname in nsp - or modname in _namespace_packages): - continue - if modname in ('pkg_resources', 'setuptools', 'site'): - continue - fn = getattr(sys.modules[modname], '__file__', None) - if fn and (normalize_path(fn).startswith(loc) or - fn.startswith(self.location)): - continue - issue_warning( - "Module %s was already imported from %s, but %s is being added" - " to sys.path" % (modname, fn, self.location), - ) - - def has_version(self): - try: - self.version - except ValueError: - issue_warning("Unbuilt egg for " + repr(self)) - return False - return True - - def clone(self, **kw): - """Copy this distribution, substituting in any changed keyword args""" - names = 'project_name version py_version platform location precedence' - for attr in names.split(): - kw.setdefault(attr, getattr(self, attr, None)) - kw.setdefault('metadata', self._provider) - return self.__class__(**kw) - - @property - def extras(self): - return [dep for dep in self._dep_map if dep] - - -class EggInfoDistribution(Distribution): - def _reload_version(self): - """ - Packages installed by distutils (e.g. numpy or scipy), - which uses an old safe_version, and so - their version numbers can get mangled when - converted to filenames (e.g., 1.11.0.dev0+2329eae to - 1.11.0.dev0_2329eae). These distributions will not be - parsed properly - downstream by Distribution and safe_version, so - take an extra step and try to get the version number from - the metadata file itself instead of the filename. - """ - md_version = _version_from_file(self._get_metadata(self.PKG_INFO)) - if md_version: - self._version = md_version - return self - - -class DistInfoDistribution(Distribution): - """ - Wrap an actual or potential sys.path entry - w/metadata, .dist-info style. - """ - PKG_INFO = 'METADATA' - EQEQ = re.compile(r"([\(,])\s*(\d.*?)\s*([,\)])") - - @property - def _parsed_pkg_info(self): - """Parse and cache metadata""" - try: - return self._pkg_info - except AttributeError: - metadata = self.get_metadata(self.PKG_INFO) - self._pkg_info = email.parser.Parser().parsestr(metadata) - return self._pkg_info - - @property - def _dep_map(self): - try: - return self.__dep_map - except AttributeError: - self.__dep_map = self._compute_dependencies() - return self.__dep_map - - def _compute_dependencies(self): - """Recompute this distribution's dependencies.""" - dm = self.__dep_map = {None: []} - - reqs = [] - # Including any condition expressions - for req in self._parsed_pkg_info.get_all('Requires-Dist') or []: - reqs.extend(parse_requirements(req)) - - def reqs_for_extra(extra): - for req in reqs: - if not req.marker or req.marker.evaluate({'extra': extra}): - yield req - - common = frozenset(reqs_for_extra(None)) - dm[None].extend(common) - - for extra in self._parsed_pkg_info.get_all('Provides-Extra') or []: - s_extra = safe_extra(extra.strip()) - dm[s_extra] = list(frozenset(reqs_for_extra(extra)) - common) - - return dm - - -_distributionImpl = { - '.egg': Distribution, - '.egg-info': EggInfoDistribution, - '.dist-info': DistInfoDistribution, -} - - -def issue_warning(*args, **kw): - level = 1 - g = globals() - try: - # find the first stack frame that is *not* code in - # the pkg_resources module, to use for the warning - while sys._getframe(level).f_globals is g: - level += 1 - except ValueError: - pass - warnings.warn(stacklevel=level + 1, *args, **kw) - - -class RequirementParseError(ValueError): - def __str__(self): - return ' '.join(self.args) - - -def parse_requirements(strs): - """Yield ``Requirement`` objects for each specification in `strs` - - `strs` must be a string, or a (possibly-nested) iterable thereof. - """ - # create a steppable iterator, so we can handle \-continuations - lines = iter(yield_lines(strs)) - - for line in lines: - # Drop comments -- a hash without a space may be in a URL. - if ' #' in line: - line = line[:line.find(' #')] - # If there is a line continuation, drop it, and append the next line. - if line.endswith('\\'): - line = line[:-2].strip() - try: - line += next(lines) - except StopIteration: - return - yield Requirement(line) - - -class Requirement(packaging.requirements.Requirement): - def __init__(self, requirement_string): - """DO NOT CALL THIS UNDOCUMENTED METHOD; use Requirement.parse()!""" - try: - super(Requirement, self).__init__(requirement_string) - except packaging.requirements.InvalidRequirement as e: - raise RequirementParseError(str(e)) - self.unsafe_name = self.name - project_name = safe_name(self.name) - self.project_name, self.key = project_name, project_name.lower() - self.specs = [ - (spec.operator, spec.version) for spec in self.specifier] - self.extras = tuple(map(safe_extra, self.extras)) - self.hashCmp = ( - self.key, - self.specifier, - frozenset(self.extras), - str(self.marker) if self.marker else None, - ) - self.__hash = hash(self.hashCmp) - - def __eq__(self, other): - return ( - isinstance(other, Requirement) and - self.hashCmp == other.hashCmp - ) - - def __ne__(self, other): - return not self == other - - def __contains__(self, item): - if isinstance(item, Distribution): - if item.key != self.key: - return False - - item = item.version - - # Allow prereleases always in order to match the previous behavior of - # this method. In the future this should be smarter and follow PEP 440 - # more accurately. - return self.specifier.contains(item, prereleases=True) - - def __hash__(self): - return self.__hash - - def __repr__(self): - return "Requirement.parse(%r)" % str(self) - - @staticmethod - def parse(s): - req, = parse_requirements(s) - return req - - -def _always_object(classes): - """ - Ensure object appears in the mro even - for old-style classes. - """ - if object not in classes: - return classes + (object,) - return classes - - -def _find_adapter(registry, ob): - """Return an adapter factory for `ob` from `registry`""" - types = _always_object(inspect.getmro(getattr(ob, '__class__', type(ob)))) - for t in types: - if t in registry: - return registry[t] - - -def ensure_directory(path): - """Ensure that the parent directory of `path` exists""" - dirname = os.path.dirname(path) - py31compat.makedirs(dirname, exist_ok=True) - - -def _bypass_ensure_directory(path): - """Sandbox-bypassing version of ensure_directory()""" - if not WRITE_SUPPORT: - raise IOError('"os.mkdir" not supported on this platform.') - dirname, filename = split(path) - if dirname and filename and not isdir(dirname): - _bypass_ensure_directory(dirname) - mkdir(dirname, 0o755) - - -def split_sections(s): - """Split a string or iterable thereof into (section, content) pairs - - Each ``section`` is a stripped version of the section header ("[section]") - and each ``content`` is a list of stripped lines excluding blank lines and - comment-only lines. If there are any such lines before the first section - header, they're returned in a first ``section`` of ``None``. - """ - section = None - content = [] - for line in yield_lines(s): - if line.startswith("["): - if line.endswith("]"): - if section or content: - yield section, content - section = line[1:-1].strip() - content = [] - else: - raise ValueError("Invalid section heading", line) - else: - content.append(line) - - # wrap up last segment - yield section, content - - -def _mkstemp(*args, **kw): - old_open = os.open - try: - # temporarily bypass sandboxing - os.open = os_open - return tempfile.mkstemp(*args, **kw) - finally: - # and then put it back - os.open = old_open - - -# Silence the PEP440Warning by default, so that end users don't get hit by it -# randomly just because they use pkg_resources. We want to append the rule -# because we want earlier uses of filterwarnings to take precedence over this -# one. -warnings.filterwarnings("ignore", category=PEP440Warning, append=True) - - -# from jaraco.functools 1.3 -def _call_aside(f, *args, **kwargs): - f(*args, **kwargs) - return f - - -@_call_aside -def _initialize(g=globals()): - "Set up global resource manager (deliberately not state-saved)" - manager = ResourceManager() - g['_manager'] = manager - g.update( - (name, getattr(manager, name)) - for name in dir(manager) - if not name.startswith('_') - ) - - -@_call_aside -def _initialize_master_working_set(): - """ - Prepare the master working set and make the ``require()`` - API available. - - This function has explicit effects on the global state - of pkg_resources. It is intended to be invoked once at - the initialization of this module. - - Invocation by other packages is unsupported and done - at their own risk. - """ - working_set = WorkingSet._build_master() - _declare_state('object', working_set=working_set) - - require = working_set.require - iter_entry_points = working_set.iter_entry_points - add_activation_listener = working_set.subscribe - run_script = working_set.run_script - # backward compatibility - run_main = run_script - # Activate all distributions already on sys.path with replace=False and - # ensure that all distributions added to the working set in the future - # (e.g. by calling ``require()``) will get activated as well, - # with higher priority (replace=True). - tuple( - dist.activate(replace=False) - for dist in working_set - ) - add_activation_listener( - lambda dist: dist.activate(replace=True), - existing=False, - ) - working_set.entries = [] - # match order - list(map(working_set.add_entry, sys.path)) - globals().update(locals()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/py31compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/py31compat.py deleted file mode 100644 index 3e1c152..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pkg_resources/py31compat.py +++ /dev/null @@ -1,22 +0,0 @@ -import os -import errno -import sys - - -def _makedirs_31(path, exist_ok=False): - try: - os.makedirs(path) - except OSError as exc: - if not exist_ok or exc.errno != errno.EEXIST: - raise - - -# rely on compatibility behavior until mode considerations -# and exists_ok considerations are disentangled. -# See https://github.com/pypa/setuptools/pull/1083#issuecomment-315168663 -needs_makedirs = ( - sys.version_info < (3, 2, 5) or - (3, 3) <= sys.version_info < (3, 3, 6) or - (3, 4) <= sys.version_info < (3, 4, 1) -) -makedirs = _makedirs_31 if needs_makedirs else os.makedirs diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/__init__.py deleted file mode 100644 index 4aa97fc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/__init__.py +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright (c) 2012 Giorgos Verigakis <verigak@gmail.com> -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -from __future__ import division - -from collections import deque -from datetime import timedelta -from math import ceil -from sys import stderr -from time import time - - -__version__ = '1.3' - - -class Infinite(object): - file = stderr - sma_window = 10 # Simple Moving Average window - - def __init__(self, *args, **kwargs): - self.index = 0 - self.start_ts = time() - self.avg = 0 - self._ts = self.start_ts - self._xput = deque(maxlen=self.sma_window) - for key, val in kwargs.items(): - setattr(self, key, val) - - def __getitem__(self, key): - if key.startswith('_'): - return None - return getattr(self, key, None) - - @property - def elapsed(self): - return int(time() - self.start_ts) - - @property - def elapsed_td(self): - return timedelta(seconds=self.elapsed) - - def update_avg(self, n, dt): - if n > 0: - self._xput.append(dt / n) - self.avg = sum(self._xput) / len(self._xput) - - def update(self): - pass - - def start(self): - pass - - def finish(self): - pass - - def next(self, n=1): - now = time() - dt = now - self._ts - self.update_avg(n, dt) - self._ts = now - self.index = self.index + n - self.update() - - def iter(self, it): - try: - for x in it: - yield x - self.next() - finally: - self.finish() - - -class Progress(Infinite): - def __init__(self, *args, **kwargs): - super(Progress, self).__init__(*args, **kwargs) - self.max = kwargs.get('max', 100) - - @property - def eta(self): - return int(ceil(self.avg * self.remaining)) - - @property - def eta_td(self): - return timedelta(seconds=self.eta) - - @property - def percent(self): - return self.progress * 100 - - @property - def progress(self): - return min(1, self.index / self.max) - - @property - def remaining(self): - return max(self.max - self.index, 0) - - def start(self): - self.update() - - def goto(self, index): - incr = index - self.index - self.next(incr) - - def iter(self, it): - try: - self.max = len(it) - except TypeError: - pass - - try: - for x in it: - yield x - self.next() - finally: - self.finish() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/bar.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/bar.py deleted file mode 100644 index 3fdd703..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/bar.py +++ /dev/null @@ -1,88 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2012 Giorgos Verigakis <verigak@gmail.com> -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -from __future__ import unicode_literals -from . import Progress -from .helpers import WritelnMixin - - -class Bar(WritelnMixin, Progress): - width = 32 - message = '' - suffix = '%(index)d/%(max)d' - bar_prefix = ' |' - bar_suffix = '| ' - empty_fill = ' ' - fill = '#' - hide_cursor = True - - def update(self): - filled_length = int(self.width * self.progress) - empty_length = self.width - filled_length - - message = self.message % self - bar = self.fill * filled_length - empty = self.empty_fill * empty_length - suffix = self.suffix % self - line = ''.join([message, self.bar_prefix, bar, empty, self.bar_suffix, - suffix]) - self.writeln(line) - - -class ChargingBar(Bar): - suffix = '%(percent)d%%' - bar_prefix = ' ' - bar_suffix = ' ' - empty_fill = '∙' - fill = '█' - - -class FillingSquaresBar(ChargingBar): - empty_fill = '▢' - fill = '▣' - - -class FillingCirclesBar(ChargingBar): - empty_fill = '◯' - fill = '◉' - - -class IncrementalBar(Bar): - phases = (' ', '▏', '▎', '▍', '▌', '▋', '▊', '▉', '█') - - def update(self): - nphases = len(self.phases) - filled_len = self.width * self.progress - nfull = int(filled_len) # Number of full chars - phase = int((filled_len - nfull) * nphases) # Phase of last char - nempty = self.width - nfull # Number of empty chars - - message = self.message % self - bar = self.phases[-1] * nfull - current = self.phases[phase] if phase > 0 else '' - empty = self.empty_fill * max(0, nempty - len(current)) - suffix = self.suffix % self - line = ''.join([message, self.bar_prefix, bar, current, empty, - self.bar_suffix, suffix]) - self.writeln(line) - - -class PixelBar(IncrementalBar): - phases = ('⡀', '⡄', '⡆', '⡇', '⣇', '⣧', '⣷', '⣿') - - -class ShadyBar(IncrementalBar): - phases = (' ', '░', '▒', '▓', '█') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/counter.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/counter.py deleted file mode 100644 index e993a51..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/counter.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2012 Giorgos Verigakis <verigak@gmail.com> -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -from __future__ import unicode_literals -from . import Infinite, Progress -from .helpers import WriteMixin - - -class Counter(WriteMixin, Infinite): - message = '' - hide_cursor = True - - def update(self): - self.write(str(self.index)) - - -class Countdown(WriteMixin, Progress): - hide_cursor = True - - def update(self): - self.write(str(self.remaining)) - - -class Stack(WriteMixin, Progress): - phases = (' ', '▁', '▂', '▃', '▄', '▅', '▆', '▇', '█') - hide_cursor = True - - def update(self): - nphases = len(self.phases) - i = min(nphases - 1, int(self.progress * nphases)) - self.write(self.phases[i]) - - -class Pie(Stack): - phases = ('○', '◔', '◑', '◕', '●') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/helpers.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/helpers.py deleted file mode 100644 index 96c8800..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/helpers.py +++ /dev/null @@ -1,91 +0,0 @@ -# Copyright (c) 2012 Giorgos Verigakis <verigak@gmail.com> -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -from __future__ import print_function - - -HIDE_CURSOR = '\x1b[?25l' -SHOW_CURSOR = '\x1b[?25h' - - -class WriteMixin(object): - hide_cursor = False - - def __init__(self, message=None, **kwargs): - super(WriteMixin, self).__init__(**kwargs) - self._width = 0 - if message: - self.message = message - - if self.file.isatty(): - if self.hide_cursor: - print(HIDE_CURSOR, end='', file=self.file) - print(self.message, end='', file=self.file) - self.file.flush() - - def write(self, s): - if self.file.isatty(): - b = '\b' * self._width - c = s.ljust(self._width) - print(b + c, end='', file=self.file) - self._width = max(self._width, len(s)) - self.file.flush() - - def finish(self): - if self.file.isatty() and self.hide_cursor: - print(SHOW_CURSOR, end='', file=self.file) - - -class WritelnMixin(object): - hide_cursor = False - - def __init__(self, message=None, **kwargs): - super(WritelnMixin, self).__init__(**kwargs) - if message: - self.message = message - - if self.file.isatty() and self.hide_cursor: - print(HIDE_CURSOR, end='', file=self.file) - - def clearln(self): - if self.file.isatty(): - print('\r\x1b[K', end='', file=self.file) - - def writeln(self, line): - if self.file.isatty(): - self.clearln() - print(line, end='', file=self.file) - self.file.flush() - - def finish(self): - if self.file.isatty(): - print(file=self.file) - if self.hide_cursor: - print(SHOW_CURSOR, end='', file=self.file) - - -from signal import signal, SIGINT -from sys import exit - - -class SigIntMixin(object): - """Registers a signal handler that calls finish on SIGINT""" - - def __init__(self, *args, **kwargs): - super(SigIntMixin, self).__init__(*args, **kwargs) - signal(SIGINT, self._sigint_handler) - - def _sigint_handler(self, signum, frame): - self.finish() - exit(0) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/spinner.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/spinner.py deleted file mode 100644 index d67c679..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/progress/spinner.py +++ /dev/null @@ -1,44 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2012 Giorgos Verigakis <verigak@gmail.com> -# -# Permission to use, copy, modify, and distribute this software for any -# purpose with or without fee is hereby granted, provided that the above -# copyright notice and this permission notice appear in all copies. -# -# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -from __future__ import unicode_literals -from . import Infinite -from .helpers import WriteMixin - - -class Spinner(WriteMixin, Infinite): - message = '' - phases = ('-', '\\', '|', '/') - hide_cursor = True - - def update(self): - i = self.index % len(self.phases) - self.write(self.phases[i]) - - -class PieSpinner(Spinner): - phases = ['◷', '◶', '◵', '◴'] - - -class MoonSpinner(Spinner): - phases = ['◑', '◒', '◐', '◓'] - - -class LineSpinner(Spinner): - phases = ['⎺', '⎻', '⎼', '⎽', '⎼', '⎻'] - -class PixelSpinner(Spinner): - phases = ['⣾','⣷', '⣯', '⣟', '⡿', '⢿', '⣻', '⣽'] diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pyparsing.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pyparsing.py deleted file mode 100644 index d362e08..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pyparsing.py +++ /dev/null @@ -1,5720 +0,0 @@ -# module pyparsing.py -# -# Copyright (c) 2003-2016 Paul T. McGuire -# -# 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. -# - -__doc__ = \ -""" -pyparsing module - Classes and methods to define and execute parsing grammars - -The pyparsing module is an alternative approach to creating and executing simple grammars, -vs. the traditional lex/yacc approach, or the use of regular expressions. With pyparsing, you -don't need to learn a new syntax for defining grammars or matching expressions - the parsing module -provides a library of classes that you use to construct the grammar directly in Python. - -Here is a program to parse "Hello, World!" (or any greeting of the form -C{"<salutation>, <addressee>!"}), built up using L{Word}, L{Literal}, and L{And} elements -(L{'+'<ParserElement.__add__>} operator gives L{And} expressions, strings are auto-converted to -L{Literal} expressions):: - - from pip._vendor.pyparsing import Word, alphas - - # define grammar of a greeting - greet = Word(alphas) + "," + Word(alphas) + "!" - - hello = "Hello, World!" - print (hello, "->", greet.parseString(hello)) - -The program outputs the following:: - - Hello, World! -> ['Hello', ',', 'World', '!'] - -The Python representation of the grammar is quite readable, owing to the self-explanatory -class names, and the use of '+', '|' and '^' operators. - -The L{ParseResults} object returned from L{ParserElement.parseString<ParserElement.parseString>} can be accessed as a nested list, a dictionary, or an -object with named attributes. - -The pyparsing module handles some of the problems that are typically vexing when writing text parsers: - - extra or missing whitespace (the above program will also handle "Hello,World!", "Hello , World !", etc.) - - quoted strings - - embedded comments -""" - -__version__ = "2.2.0" -__versionTime__ = "06 Mar 2017 02:06 UTC" -__author__ = "Paul McGuire <ptmcg@users.sourceforge.net>" - -import string -from weakref import ref as wkref -import copy -import sys -import warnings -import re -import sre_constants -import collections -import pprint -import traceback -import types -from datetime import datetime - -try: - from _thread import RLock -except ImportError: - from threading import RLock - -try: - from collections import OrderedDict as _OrderedDict -except ImportError: - try: - from ordereddict import OrderedDict as _OrderedDict - except ImportError: - _OrderedDict = None - -#~ sys.stderr.write( "testing pyparsing module, version %s, %s\n" % (__version__,__versionTime__ ) ) - -__all__ = [ -'And', 'CaselessKeyword', 'CaselessLiteral', 'CharsNotIn', 'Combine', 'Dict', 'Each', 'Empty', -'FollowedBy', 'Forward', 'GoToColumn', 'Group', 'Keyword', 'LineEnd', 'LineStart', 'Literal', -'MatchFirst', 'NoMatch', 'NotAny', 'OneOrMore', 'OnlyOnce', 'Optional', 'Or', -'ParseBaseException', 'ParseElementEnhance', 'ParseException', 'ParseExpression', 'ParseFatalException', -'ParseResults', 'ParseSyntaxException', 'ParserElement', 'QuotedString', 'RecursiveGrammarException', -'Regex', 'SkipTo', 'StringEnd', 'StringStart', 'Suppress', 'Token', 'TokenConverter', -'White', 'Word', 'WordEnd', 'WordStart', 'ZeroOrMore', -'alphanums', 'alphas', 'alphas8bit', 'anyCloseTag', 'anyOpenTag', 'cStyleComment', 'col', -'commaSeparatedList', 'commonHTMLEntity', 'countedArray', 'cppStyleComment', 'dblQuotedString', -'dblSlashComment', 'delimitedList', 'dictOf', 'downcaseTokens', 'empty', 'hexnums', -'htmlComment', 'javaStyleComment', 'line', 'lineEnd', 'lineStart', 'lineno', -'makeHTMLTags', 'makeXMLTags', 'matchOnlyAtCol', 'matchPreviousExpr', 'matchPreviousLiteral', -'nestedExpr', 'nullDebugAction', 'nums', 'oneOf', 'opAssoc', 'operatorPrecedence', 'printables', -'punc8bit', 'pythonStyleComment', 'quotedString', 'removeQuotes', 'replaceHTMLEntity', -'replaceWith', 'restOfLine', 'sglQuotedString', 'srange', 'stringEnd', -'stringStart', 'traceParseAction', 'unicodeString', 'upcaseTokens', 'withAttribute', -'indentedBlock', 'originalTextFor', 'ungroup', 'infixNotation','locatedExpr', 'withClass', -'CloseMatch', 'tokenMap', 'pyparsing_common', -] - -system_version = tuple(sys.version_info)[:3] -PY_3 = system_version[0] == 3 -if PY_3: - _MAX_INT = sys.maxsize - basestring = str - unichr = chr - _ustr = str - - # build list of single arg builtins, that can be used as parse actions - singleArgBuiltins = [sum, len, sorted, reversed, list, tuple, set, any, all, min, max] - -else: - _MAX_INT = sys.maxint - range = xrange - - def _ustr(obj): - """Drop-in replacement for str(obj) that tries to be Unicode friendly. It first tries - str(obj). If that fails with a UnicodeEncodeError, then it tries unicode(obj). It - then < returns the unicode object | encodes it with the default encoding | ... >. - """ - if isinstance(obj,unicode): - return obj - - try: - # If this works, then _ustr(obj) has the same behaviour as str(obj), so - # it won't break any existing code. - return str(obj) - - except UnicodeEncodeError: - # Else encode it - ret = unicode(obj).encode(sys.getdefaultencoding(), 'xmlcharrefreplace') - xmlcharref = Regex(r'&#\d+;') - xmlcharref.setParseAction(lambda t: '\\u' + hex(int(t[0][2:-1]))[2:]) - return xmlcharref.transformString(ret) - - # build list of single arg builtins, tolerant of Python version, that can be used as parse actions - singleArgBuiltins = [] - import __builtin__ - for fname in "sum len sorted reversed list tuple set any all min max".split(): - try: - singleArgBuiltins.append(getattr(__builtin__,fname)) - except AttributeError: - continue - -_generatorType = type((y for y in range(1))) - -def _xml_escape(data): - """Escape &, <, >, ", ', etc. in a string of data.""" - - # ampersand must be replaced first - from_symbols = '&><"\'' - to_symbols = ('&'+s+';' for s in "amp gt lt quot apos".split()) - for from_,to_ in zip(from_symbols, to_symbols): - data = data.replace(from_, to_) - return data - -class _Constants(object): - pass - -alphas = string.ascii_uppercase + string.ascii_lowercase -nums = "0123456789" -hexnums = nums + "ABCDEFabcdef" -alphanums = alphas + nums -_bslash = chr(92) -printables = "".join(c for c in string.printable if c not in string.whitespace) - -class ParseBaseException(Exception): - """base exception class for all parsing runtime exceptions""" - # Performance tuning: we construct a *lot* of these, so keep this - # constructor as small and fast as possible - def __init__( self, pstr, loc=0, msg=None, elem=None ): - self.loc = loc - if msg is None: - self.msg = pstr - self.pstr = "" - else: - self.msg = msg - self.pstr = pstr - self.parserElement = elem - self.args = (pstr, loc, msg) - - @classmethod - def _from_exception(cls, pe): - """ - internal factory method to simplify creating one type of ParseException - from another - avoids having __init__ signature conflicts among subclasses - """ - return cls(pe.pstr, pe.loc, pe.msg, pe.parserElement) - - def __getattr__( self, aname ): - """supported attributes by name are: - - lineno - returns the line number of the exception text - - col - returns the column number of the exception text - - line - returns the line containing the exception text - """ - if( aname == "lineno" ): - return lineno( self.loc, self.pstr ) - elif( aname in ("col", "column") ): - return col( self.loc, self.pstr ) - elif( aname == "line" ): - return line( self.loc, self.pstr ) - else: - raise AttributeError(aname) - - def __str__( self ): - return "%s (at char %d), (line:%d, col:%d)" % \ - ( self.msg, self.loc, self.lineno, self.column ) - def __repr__( self ): - return _ustr(self) - def markInputline( self, markerString = ">!<" ): - """Extracts the exception line from the input string, and marks - the location of the exception with a special symbol. - """ - line_str = self.line - line_column = self.column - 1 - if markerString: - line_str = "".join((line_str[:line_column], - markerString, line_str[line_column:])) - return line_str.strip() - def __dir__(self): - return "lineno col line".split() + dir(type(self)) - -class ParseException(ParseBaseException): - """ - Exception thrown when parse expressions don't match class; - supported attributes by name are: - - lineno - returns the line number of the exception text - - col - returns the column number of the exception text - - line - returns the line containing the exception text - - Example:: - try: - Word(nums).setName("integer").parseString("ABC") - except ParseException as pe: - print(pe) - print("column: {}".format(pe.col)) - - prints:: - Expected integer (at char 0), (line:1, col:1) - column: 1 - """ - pass - -class ParseFatalException(ParseBaseException): - """user-throwable exception thrown when inconsistent parse content - is found; stops all parsing immediately""" - pass - -class ParseSyntaxException(ParseFatalException): - """just like L{ParseFatalException}, but thrown internally when an - L{ErrorStop<And._ErrorStop>} ('-' operator) indicates that parsing is to stop - immediately because an unbacktrackable syntax error has been found""" - pass - -#~ class ReparseException(ParseBaseException): - #~ """Experimental class - parse actions can raise this exception to cause - #~ pyparsing to reparse the input string: - #~ - with a modified input string, and/or - #~ - with a modified start location - #~ Set the values of the ReparseException in the constructor, and raise the - #~ exception in a parse action to cause pyparsing to use the new string/location. - #~ Setting the values as None causes no change to be made. - #~ """ - #~ def __init_( self, newstring, restartLoc ): - #~ self.newParseText = newstring - #~ self.reparseLoc = restartLoc - -class RecursiveGrammarException(Exception): - """exception thrown by L{ParserElement.validate} if the grammar could be improperly recursive""" - def __init__( self, parseElementList ): - self.parseElementTrace = parseElementList - - def __str__( self ): - return "RecursiveGrammarException: %s" % self.parseElementTrace - -class _ParseResultsWithOffset(object): - def __init__(self,p1,p2): - self.tup = (p1,p2) - def __getitem__(self,i): - return self.tup[i] - def __repr__(self): - return repr(self.tup[0]) - def setOffset(self,i): - self.tup = (self.tup[0],i) - -class ParseResults(object): - """ - Structured parse results, to provide multiple means of access to the parsed data: - - as a list (C{len(results)}) - - by list index (C{results[0], results[1]}, etc.) - - by attribute (C{results.<resultsName>} - see L{ParserElement.setResultsName}) - - Example:: - integer = Word(nums) - date_str = (integer.setResultsName("year") + '/' - + integer.setResultsName("month") + '/' - + integer.setResultsName("day")) - # equivalent form: - # date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - # parseString returns a ParseResults object - result = date_str.parseString("1999/12/31") - - def test(s, fn=repr): - print("%s -> %s" % (s, fn(eval(s)))) - test("list(result)") - test("result[0]") - test("result['month']") - test("result.day") - test("'month' in result") - test("'minutes' in result") - test("result.dump()", str) - prints:: - list(result) -> ['1999', '/', '12', '/', '31'] - result[0] -> '1999' - result['month'] -> '12' - result.day -> '31' - 'month' in result -> True - 'minutes' in result -> False - result.dump() -> ['1999', '/', '12', '/', '31'] - - day: 31 - - month: 12 - - year: 1999 - """ - def __new__(cls, toklist=None, name=None, asList=True, modal=True ): - if isinstance(toklist, cls): - return toklist - retobj = object.__new__(cls) - retobj.__doinit = True - return retobj - - # Performance tuning: we construct a *lot* of these, so keep this - # constructor as small and fast as possible - def __init__( self, toklist=None, name=None, asList=True, modal=True, isinstance=isinstance ): - if self.__doinit: - self.__doinit = False - self.__name = None - self.__parent = None - self.__accumNames = {} - self.__asList = asList - self.__modal = modal - if toklist is None: - toklist = [] - if isinstance(toklist, list): - self.__toklist = toklist[:] - elif isinstance(toklist, _generatorType): - self.__toklist = list(toklist) - else: - self.__toklist = [toklist] - self.__tokdict = dict() - - if name is not None and name: - if not modal: - self.__accumNames[name] = 0 - if isinstance(name,int): - name = _ustr(name) # will always return a str, but use _ustr for consistency - self.__name = name - if not (isinstance(toklist, (type(None), basestring, list)) and toklist in (None,'',[])): - if isinstance(toklist,basestring): - toklist = [ toklist ] - if asList: - if isinstance(toklist,ParseResults): - self[name] = _ParseResultsWithOffset(toklist.copy(),0) - else: - self[name] = _ParseResultsWithOffset(ParseResults(toklist[0]),0) - self[name].__name = name - else: - try: - self[name] = toklist[0] - except (KeyError,TypeError,IndexError): - self[name] = toklist - - def __getitem__( self, i ): - if isinstance( i, (int,slice) ): - return self.__toklist[i] - else: - if i not in self.__accumNames: - return self.__tokdict[i][-1][0] - else: - return ParseResults([ v[0] for v in self.__tokdict[i] ]) - - def __setitem__( self, k, v, isinstance=isinstance ): - if isinstance(v,_ParseResultsWithOffset): - self.__tokdict[k] = self.__tokdict.get(k,list()) + [v] - sub = v[0] - elif isinstance(k,(int,slice)): - self.__toklist[k] = v - sub = v - else: - self.__tokdict[k] = self.__tokdict.get(k,list()) + [_ParseResultsWithOffset(v,0)] - sub = v - if isinstance(sub,ParseResults): - sub.__parent = wkref(self) - - def __delitem__( self, i ): - if isinstance(i,(int,slice)): - mylen = len( self.__toklist ) - del self.__toklist[i] - - # convert int to slice - if isinstance(i, int): - if i < 0: - i += mylen - i = slice(i, i+1) - # get removed indices - removed = list(range(*i.indices(mylen))) - removed.reverse() - # fixup indices in token dictionary - for name,occurrences in self.__tokdict.items(): - for j in removed: - for k, (value, position) in enumerate(occurrences): - occurrences[k] = _ParseResultsWithOffset(value, position - (position > j)) - else: - del self.__tokdict[i] - - def __contains__( self, k ): - return k in self.__tokdict - - def __len__( self ): return len( self.__toklist ) - def __bool__(self): return ( not not self.__toklist ) - __nonzero__ = __bool__ - def __iter__( self ): return iter( self.__toklist ) - def __reversed__( self ): return iter( self.__toklist[::-1] ) - def _iterkeys( self ): - if hasattr(self.__tokdict, "iterkeys"): - return self.__tokdict.iterkeys() - else: - return iter(self.__tokdict) - - def _itervalues( self ): - return (self[k] for k in self._iterkeys()) - - def _iteritems( self ): - return ((k, self[k]) for k in self._iterkeys()) - - if PY_3: - keys = _iterkeys - """Returns an iterator of all named result keys (Python 3.x only).""" - - values = _itervalues - """Returns an iterator of all named result values (Python 3.x only).""" - - items = _iteritems - """Returns an iterator of all named result key-value tuples (Python 3.x only).""" - - else: - iterkeys = _iterkeys - """Returns an iterator of all named result keys (Python 2.x only).""" - - itervalues = _itervalues - """Returns an iterator of all named result values (Python 2.x only).""" - - iteritems = _iteritems - """Returns an iterator of all named result key-value tuples (Python 2.x only).""" - - def keys( self ): - """Returns all named result keys (as a list in Python 2.x, as an iterator in Python 3.x).""" - return list(self.iterkeys()) - - def values( self ): - """Returns all named result values (as a list in Python 2.x, as an iterator in Python 3.x).""" - return list(self.itervalues()) - - def items( self ): - """Returns all named result key-values (as a list of tuples in Python 2.x, as an iterator in Python 3.x).""" - return list(self.iteritems()) - - def haskeys( self ): - """Since keys() returns an iterator, this method is helpful in bypassing - code that looks for the existence of any defined results names.""" - return bool(self.__tokdict) - - def pop( self, *args, **kwargs): - """ - Removes and returns item at specified index (default=C{last}). - Supports both C{list} and C{dict} semantics for C{pop()}. If passed no - argument or an integer argument, it will use C{list} semantics - and pop tokens from the list of parsed tokens. If passed a - non-integer argument (most likely a string), it will use C{dict} - semantics and pop the corresponding value from any defined - results names. A second default return value argument is - supported, just as in C{dict.pop()}. - - Example:: - def remove_first(tokens): - tokens.pop(0) - print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321'] - print(OneOrMore(Word(nums)).addParseAction(remove_first).parseString("0 123 321")) # -> ['123', '321'] - - label = Word(alphas) - patt = label("LABEL") + OneOrMore(Word(nums)) - print(patt.parseString("AAB 123 321").dump()) - - # Use pop() in a parse action to remove named result (note that corresponding value is not - # removed from list form of results) - def remove_LABEL(tokens): - tokens.pop("LABEL") - return tokens - patt.addParseAction(remove_LABEL) - print(patt.parseString("AAB 123 321").dump()) - prints:: - ['AAB', '123', '321'] - - LABEL: AAB - - ['AAB', '123', '321'] - """ - if not args: - args = [-1] - for k,v in kwargs.items(): - if k == 'default': - args = (args[0], v) - else: - raise TypeError("pop() got an unexpected keyword argument '%s'" % k) - if (isinstance(args[0], int) or - len(args) == 1 or - args[0] in self): - index = args[0] - ret = self[index] - del self[index] - return ret - else: - defaultvalue = args[1] - return defaultvalue - - def get(self, key, defaultValue=None): - """ - Returns named result matching the given key, or if there is no - such name, then returns the given C{defaultValue} or C{None} if no - C{defaultValue} is specified. - - Similar to C{dict.get()}. - - Example:: - integer = Word(nums) - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - result = date_str.parseString("1999/12/31") - print(result.get("year")) # -> '1999' - print(result.get("hour", "not specified")) # -> 'not specified' - print(result.get("hour")) # -> None - """ - if key in self: - return self[key] - else: - return defaultValue - - def insert( self, index, insStr ): - """ - Inserts new element at location index in the list of parsed tokens. - - Similar to C{list.insert()}. - - Example:: - print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321'] - - # use a parse action to insert the parse location in the front of the parsed results - def insert_locn(locn, tokens): - tokens.insert(0, locn) - print(OneOrMore(Word(nums)).addParseAction(insert_locn).parseString("0 123 321")) # -> [0, '0', '123', '321'] - """ - self.__toklist.insert(index, insStr) - # fixup indices in token dictionary - for name,occurrences in self.__tokdict.items(): - for k, (value, position) in enumerate(occurrences): - occurrences[k] = _ParseResultsWithOffset(value, position + (position > index)) - - def append( self, item ): - """ - Add single element to end of ParseResults list of elements. - - Example:: - print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321'] - - # use a parse action to compute the sum of the parsed integers, and add it to the end - def append_sum(tokens): - tokens.append(sum(map(int, tokens))) - print(OneOrMore(Word(nums)).addParseAction(append_sum).parseString("0 123 321")) # -> ['0', '123', '321', 444] - """ - self.__toklist.append(item) - - def extend( self, itemseq ): - """ - Add sequence of elements to end of ParseResults list of elements. - - Example:: - patt = OneOrMore(Word(alphas)) - - # use a parse action to append the reverse of the matched strings, to make a palindrome - def make_palindrome(tokens): - tokens.extend(reversed([t[::-1] for t in tokens])) - return ''.join(tokens) - print(patt.addParseAction(make_palindrome).parseString("lskdj sdlkjf lksd")) # -> 'lskdjsdlkjflksddsklfjkldsjdksl' - """ - if isinstance(itemseq, ParseResults): - self += itemseq - else: - self.__toklist.extend(itemseq) - - def clear( self ): - """ - Clear all elements and results names. - """ - del self.__toklist[:] - self.__tokdict.clear() - - def __getattr__( self, name ): - try: - return self[name] - except KeyError: - return "" - - if name in self.__tokdict: - if name not in self.__accumNames: - return self.__tokdict[name][-1][0] - else: - return ParseResults([ v[0] for v in self.__tokdict[name] ]) - else: - return "" - - def __add__( self, other ): - ret = self.copy() - ret += other - return ret - - def __iadd__( self, other ): - if other.__tokdict: - offset = len(self.__toklist) - addoffset = lambda a: offset if a<0 else a+offset - otheritems = other.__tokdict.items() - otherdictitems = [(k, _ParseResultsWithOffset(v[0],addoffset(v[1])) ) - for (k,vlist) in otheritems for v in vlist] - for k,v in otherdictitems: - self[k] = v - if isinstance(v[0],ParseResults): - v[0].__parent = wkref(self) - - self.__toklist += other.__toklist - self.__accumNames.update( other.__accumNames ) - return self - - def __radd__(self, other): - if isinstance(other,int) and other == 0: - # useful for merging many ParseResults using sum() builtin - return self.copy() - else: - # this may raise a TypeError - so be it - return other + self - - def __repr__( self ): - return "(%s, %s)" % ( repr( self.__toklist ), repr( self.__tokdict ) ) - - def __str__( self ): - return '[' + ', '.join(_ustr(i) if isinstance(i, ParseResults) else repr(i) for i in self.__toklist) + ']' - - def _asStringList( self, sep='' ): - out = [] - for item in self.__toklist: - if out and sep: - out.append(sep) - if isinstance( item, ParseResults ): - out += item._asStringList() - else: - out.append( _ustr(item) ) - return out - - def asList( self ): - """ - Returns the parse results as a nested list of matching tokens, all converted to strings. - - Example:: - patt = OneOrMore(Word(alphas)) - result = patt.parseString("sldkj lsdkj sldkj") - # even though the result prints in string-like form, it is actually a pyparsing ParseResults - print(type(result), result) # -> <class 'pyparsing.ParseResults'> ['sldkj', 'lsdkj', 'sldkj'] - - # Use asList() to create an actual list - result_list = result.asList() - print(type(result_list), result_list) # -> <class 'list'> ['sldkj', 'lsdkj', 'sldkj'] - """ - return [res.asList() if isinstance(res,ParseResults) else res for res in self.__toklist] - - def asDict( self ): - """ - Returns the named parse results as a nested dictionary. - - Example:: - integer = Word(nums) - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - result = date_str.parseString('12/31/1999') - print(type(result), repr(result)) # -> <class 'pyparsing.ParseResults'> (['12', '/', '31', '/', '1999'], {'day': [('1999', 4)], 'year': [('12', 0)], 'month': [('31', 2)]}) - - result_dict = result.asDict() - print(type(result_dict), repr(result_dict)) # -> <class 'dict'> {'day': '1999', 'year': '12', 'month': '31'} - - # even though a ParseResults supports dict-like access, sometime you just need to have a dict - import json - print(json.dumps(result)) # -> Exception: TypeError: ... is not JSON serializable - print(json.dumps(result.asDict())) # -> {"month": "31", "day": "1999", "year": "12"} - """ - if PY_3: - item_fn = self.items - else: - item_fn = self.iteritems - - def toItem(obj): - if isinstance(obj, ParseResults): - if obj.haskeys(): - return obj.asDict() - else: - return [toItem(v) for v in obj] - else: - return obj - - return dict((k,toItem(v)) for k,v in item_fn()) - - def copy( self ): - """ - Returns a new copy of a C{ParseResults} object. - """ - ret = ParseResults( self.__toklist ) - ret.__tokdict = self.__tokdict.copy() - ret.__parent = self.__parent - ret.__accumNames.update( self.__accumNames ) - ret.__name = self.__name - return ret - - def asXML( self, doctag=None, namedItemsOnly=False, indent="", formatted=True ): - """ - (Deprecated) Returns the parse results as XML. Tags are created for tokens and lists that have defined results names. - """ - nl = "\n" - out = [] - namedItems = dict((v[1],k) for (k,vlist) in self.__tokdict.items() - for v in vlist) - nextLevelIndent = indent + " " - - # collapse out indents if formatting is not desired - if not formatted: - indent = "" - nextLevelIndent = "" - nl = "" - - selfTag = None - if doctag is not None: - selfTag = doctag - else: - if self.__name: - selfTag = self.__name - - if not selfTag: - if namedItemsOnly: - return "" - else: - selfTag = "ITEM" - - out += [ nl, indent, "<", selfTag, ">" ] - - for i,res in enumerate(self.__toklist): - if isinstance(res,ParseResults): - if i in namedItems: - out += [ res.asXML(namedItems[i], - namedItemsOnly and doctag is None, - nextLevelIndent, - formatted)] - else: - out += [ res.asXML(None, - namedItemsOnly and doctag is None, - nextLevelIndent, - formatted)] - else: - # individual token, see if there is a name for it - resTag = None - if i in namedItems: - resTag = namedItems[i] - if not resTag: - if namedItemsOnly: - continue - else: - resTag = "ITEM" - xmlBodyText = _xml_escape(_ustr(res)) - out += [ nl, nextLevelIndent, "<", resTag, ">", - xmlBodyText, - "</", resTag, ">" ] - - out += [ nl, indent, "</", selfTag, ">" ] - return "".join(out) - - def __lookup(self,sub): - for k,vlist in self.__tokdict.items(): - for v,loc in vlist: - if sub is v: - return k - return None - - def getName(self): - r""" - Returns the results name for this token expression. Useful when several - different expressions might match at a particular location. - - Example:: - integer = Word(nums) - ssn_expr = Regex(r"\d\d\d-\d\d-\d\d\d\d") - house_number_expr = Suppress('#') + Word(nums, alphanums) - user_data = (Group(house_number_expr)("house_number") - | Group(ssn_expr)("ssn") - | Group(integer)("age")) - user_info = OneOrMore(user_data) - - result = user_info.parseString("22 111-22-3333 #221B") - for item in result: - print(item.getName(), ':', item[0]) - prints:: - age : 22 - ssn : 111-22-3333 - house_number : 221B - """ - if self.__name: - return self.__name - elif self.__parent: - par = self.__parent() - if par: - return par.__lookup(self) - else: - return None - elif (len(self) == 1 and - len(self.__tokdict) == 1 and - next(iter(self.__tokdict.values()))[0][1] in (0,-1)): - return next(iter(self.__tokdict.keys())) - else: - return None - - def dump(self, indent='', depth=0, full=True): - """ - Diagnostic method for listing out the contents of a C{ParseResults}. - Accepts an optional C{indent} argument so that this string can be embedded - in a nested display of other data. - - Example:: - integer = Word(nums) - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - result = date_str.parseString('12/31/1999') - print(result.dump()) - prints:: - ['12', '/', '31', '/', '1999'] - - day: 1999 - - month: 31 - - year: 12 - """ - out = [] - NL = '\n' - out.append( indent+_ustr(self.asList()) ) - if full: - if self.haskeys(): - items = sorted((str(k), v) for k,v in self.items()) - for k,v in items: - if out: - out.append(NL) - out.append( "%s%s- %s: " % (indent,(' '*depth), k) ) - if isinstance(v,ParseResults): - if v: - out.append( v.dump(indent,depth+1) ) - else: - out.append(_ustr(v)) - else: - out.append(repr(v)) - elif any(isinstance(vv,ParseResults) for vv in self): - v = self - for i,vv in enumerate(v): - if isinstance(vv,ParseResults): - out.append("\n%s%s[%d]:\n%s%s%s" % (indent,(' '*(depth)),i,indent,(' '*(depth+1)),vv.dump(indent,depth+1) )) - else: - out.append("\n%s%s[%d]:\n%s%s%s" % (indent,(' '*(depth)),i,indent,(' '*(depth+1)),_ustr(vv))) - - return "".join(out) - - def pprint(self, *args, **kwargs): - """ - Pretty-printer for parsed results as a list, using the C{pprint} module. - Accepts additional positional or keyword args as defined for the - C{pprint.pprint} method. (U{http://docs.python.org/3/library/pprint.html#pprint.pprint}) - - Example:: - ident = Word(alphas, alphanums) - num = Word(nums) - func = Forward() - term = ident | num | Group('(' + func + ')') - func <<= ident + Group(Optional(delimitedList(term))) - result = func.parseString("fna a,b,(fnb c,d,200),100") - result.pprint(width=40) - prints:: - ['fna', - ['a', - 'b', - ['(', 'fnb', ['c', 'd', '200'], ')'], - '100']] - """ - pprint.pprint(self.asList(), *args, **kwargs) - - # add support for pickle protocol - def __getstate__(self): - return ( self.__toklist, - ( self.__tokdict.copy(), - self.__parent is not None and self.__parent() or None, - self.__accumNames, - self.__name ) ) - - def __setstate__(self,state): - self.__toklist = state[0] - (self.__tokdict, - par, - inAccumNames, - self.__name) = state[1] - self.__accumNames = {} - self.__accumNames.update(inAccumNames) - if par is not None: - self.__parent = wkref(par) - else: - self.__parent = None - - def __getnewargs__(self): - return self.__toklist, self.__name, self.__asList, self.__modal - - def __dir__(self): - return (dir(type(self)) + list(self.keys())) - -collections.MutableMapping.register(ParseResults) - -def col (loc,strg): - """Returns current column within a string, counting newlines as line separators. - The first column is number 1. - - Note: the default parsing behavior is to expand tabs in the input string - before starting the parsing process. See L{I{ParserElement.parseString}<ParserElement.parseString>} for more information - on parsing strings containing C{<TAB>}s, and suggested methods to maintain a - consistent view of the parsed string, the parse location, and line and column - positions within the parsed string. - """ - s = strg - return 1 if 0<loc<len(s) and s[loc-1] == '\n' else loc - s.rfind("\n", 0, loc) - -def lineno(loc,strg): - """Returns current line number within a string, counting newlines as line separators. - The first line is number 1. - - Note: the default parsing behavior is to expand tabs in the input string - before starting the parsing process. See L{I{ParserElement.parseString}<ParserElement.parseString>} for more information - on parsing strings containing C{<TAB>}s, and suggested methods to maintain a - consistent view of the parsed string, the parse location, and line and column - positions within the parsed string. - """ - return strg.count("\n",0,loc) + 1 - -def line( loc, strg ): - """Returns the line of text containing loc within a string, counting newlines as line separators. - """ - lastCR = strg.rfind("\n", 0, loc) - nextCR = strg.find("\n", loc) - if nextCR >= 0: - return strg[lastCR+1:nextCR] - else: - return strg[lastCR+1:] - -def _defaultStartDebugAction( instring, loc, expr ): - print (("Match " + _ustr(expr) + " at loc " + _ustr(loc) + "(%d,%d)" % ( lineno(loc,instring), col(loc,instring) ))) - -def _defaultSuccessDebugAction( instring, startloc, endloc, expr, toks ): - print ("Matched " + _ustr(expr) + " -> " + str(toks.asList())) - -def _defaultExceptionDebugAction( instring, loc, expr, exc ): - print ("Exception raised:" + _ustr(exc)) - -def nullDebugAction(*args): - """'Do-nothing' debug action, to suppress debugging output during parsing.""" - pass - -# Only works on Python 3.x - nonlocal is toxic to Python 2 installs -#~ 'decorator to trim function calls to match the arity of the target' -#~ def _trim_arity(func, maxargs=3): - #~ if func in singleArgBuiltins: - #~ return lambda s,l,t: func(t) - #~ limit = 0 - #~ foundArity = False - #~ def wrapper(*args): - #~ nonlocal limit,foundArity - #~ while 1: - #~ try: - #~ ret = func(*args[limit:]) - #~ foundArity = True - #~ return ret - #~ except TypeError: - #~ if limit == maxargs or foundArity: - #~ raise - #~ limit += 1 - #~ continue - #~ return wrapper - -# this version is Python 2.x-3.x cross-compatible -'decorator to trim function calls to match the arity of the target' -def _trim_arity(func, maxargs=2): - if func in singleArgBuiltins: - return lambda s,l,t: func(t) - limit = [0] - foundArity = [False] - - # traceback return data structure changed in Py3.5 - normalize back to plain tuples - if system_version[:2] >= (3,5): - def extract_stack(limit=0): - # special handling for Python 3.5.0 - extra deep call stack by 1 - offset = -3 if system_version == (3,5,0) else -2 - frame_summary = traceback.extract_stack(limit=-offset+limit-1)[offset] - return [(frame_summary.filename, frame_summary.lineno)] - def extract_tb(tb, limit=0): - frames = traceback.extract_tb(tb, limit=limit) - frame_summary = frames[-1] - return [(frame_summary.filename, frame_summary.lineno)] - else: - extract_stack = traceback.extract_stack - extract_tb = traceback.extract_tb - - # synthesize what would be returned by traceback.extract_stack at the call to - # user's parse action 'func', so that we don't incur call penalty at parse time - - LINE_DIFF = 6 - # IF ANY CODE CHANGES, EVEN JUST COMMENTS OR BLANK LINES, BETWEEN THE NEXT LINE AND - # THE CALL TO FUNC INSIDE WRAPPER, LINE_DIFF MUST BE MODIFIED!!!! - this_line = extract_stack(limit=2)[-1] - pa_call_line_synth = (this_line[0], this_line[1]+LINE_DIFF) - - def wrapper(*args): - while 1: - try: - ret = func(*args[limit[0]:]) - foundArity[0] = True - return ret - except TypeError: - # re-raise TypeErrors if they did not come from our arity testing - if foundArity[0]: - raise - else: - try: - tb = sys.exc_info()[-1] - if not extract_tb(tb, limit=2)[-1][:2] == pa_call_line_synth: - raise - finally: - del tb - - if limit[0] <= maxargs: - limit[0] += 1 - continue - raise - - # copy func name to wrapper for sensible debug output - func_name = "<parse action>" - try: - func_name = getattr(func, '__name__', - getattr(func, '__class__').__name__) - except Exception: - func_name = str(func) - wrapper.__name__ = func_name - - return wrapper - -class ParserElement(object): - """Abstract base level parser element class.""" - DEFAULT_WHITE_CHARS = " \n\t\r" - verbose_stacktrace = False - - @staticmethod - def setDefaultWhitespaceChars( chars ): - r""" - Overrides the default whitespace chars - - Example:: - # default whitespace chars are space, <TAB> and newline - OneOrMore(Word(alphas)).parseString("abc def\nghi jkl") # -> ['abc', 'def', 'ghi', 'jkl'] - - # change to just treat newline as significant - ParserElement.setDefaultWhitespaceChars(" \t") - OneOrMore(Word(alphas)).parseString("abc def\nghi jkl") # -> ['abc', 'def'] - """ - ParserElement.DEFAULT_WHITE_CHARS = chars - - @staticmethod - def inlineLiteralsUsing(cls): - """ - Set class to be used for inclusion of string literals into a parser. - - Example:: - # default literal class used is Literal - integer = Word(nums) - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - date_str.parseString("1999/12/31") # -> ['1999', '/', '12', '/', '31'] - - - # change to Suppress - ParserElement.inlineLiteralsUsing(Suppress) - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - - date_str.parseString("1999/12/31") # -> ['1999', '12', '31'] - """ - ParserElement._literalStringClass = cls - - def __init__( self, savelist=False ): - self.parseAction = list() - self.failAction = None - #~ self.name = "<unknown>" # don't define self.name, let subclasses try/except upcall - self.strRepr = None - self.resultsName = None - self.saveAsList = savelist - self.skipWhitespace = True - self.whiteChars = ParserElement.DEFAULT_WHITE_CHARS - self.copyDefaultWhiteChars = True - self.mayReturnEmpty = False # used when checking for left-recursion - self.keepTabs = False - self.ignoreExprs = list() - self.debug = False - self.streamlined = False - self.mayIndexError = True # used to optimize exception handling for subclasses that don't advance parse index - self.errmsg = "" - self.modalResults = True # used to mark results names as modal (report only last) or cumulative (list all) - self.debugActions = ( None, None, None ) #custom debug actions - self.re = None - self.callPreparse = True # used to avoid redundant calls to preParse - self.callDuringTry = False - - def copy( self ): - """ - Make a copy of this C{ParserElement}. Useful for defining different parse actions - for the same parsing pattern, using copies of the original parse element. - - Example:: - integer = Word(nums).setParseAction(lambda toks: int(toks[0])) - integerK = integer.copy().addParseAction(lambda toks: toks[0]*1024) + Suppress("K") - integerM = integer.copy().addParseAction(lambda toks: toks[0]*1024*1024) + Suppress("M") - - print(OneOrMore(integerK | integerM | integer).parseString("5K 100 640K 256M")) - prints:: - [5120, 100, 655360, 268435456] - Equivalent form of C{expr.copy()} is just C{expr()}:: - integerM = integer().addParseAction(lambda toks: toks[0]*1024*1024) + Suppress("M") - """ - cpy = copy.copy( self ) - cpy.parseAction = self.parseAction[:] - cpy.ignoreExprs = self.ignoreExprs[:] - if self.copyDefaultWhiteChars: - cpy.whiteChars = ParserElement.DEFAULT_WHITE_CHARS - return cpy - - def setName( self, name ): - """ - Define name for this expression, makes debugging and exception messages clearer. - - Example:: - Word(nums).parseString("ABC") # -> Exception: Expected W:(0123...) (at char 0), (line:1, col:1) - Word(nums).setName("integer").parseString("ABC") # -> Exception: Expected integer (at char 0), (line:1, col:1) - """ - self.name = name - self.errmsg = "Expected " + self.name - if hasattr(self,"exception"): - self.exception.msg = self.errmsg - return self - - def setResultsName( self, name, listAllMatches=False ): - """ - Define name for referencing matching tokens as a nested attribute - of the returned parse results. - NOTE: this returns a *copy* of the original C{ParserElement} object; - this is so that the client can define a basic element, such as an - integer, and reference it in multiple places with different names. - - You can also set results names using the abbreviated syntax, - C{expr("name")} in place of C{expr.setResultsName("name")} - - see L{I{__call__}<__call__>}. - - Example:: - date_str = (integer.setResultsName("year") + '/' - + integer.setResultsName("month") + '/' - + integer.setResultsName("day")) - - # equivalent form: - date_str = integer("year") + '/' + integer("month") + '/' + integer("day") - """ - newself = self.copy() - if name.endswith("*"): - name = name[:-1] - listAllMatches=True - newself.resultsName = name - newself.modalResults = not listAllMatches - return newself - - def setBreak(self,breakFlag = True): - """Method to invoke the Python pdb debugger when this element is - about to be parsed. Set C{breakFlag} to True to enable, False to - disable. - """ - if breakFlag: - _parseMethod = self._parse - def breaker(instring, loc, doActions=True, callPreParse=True): - import pdb - pdb.set_trace() - return _parseMethod( instring, loc, doActions, callPreParse ) - breaker._originalParseMethod = _parseMethod - self._parse = breaker - else: - if hasattr(self._parse,"_originalParseMethod"): - self._parse = self._parse._originalParseMethod - return self - - def setParseAction( self, *fns, **kwargs ): - """ - Define one or more actions to perform when successfully matching parse element definition. - Parse action fn is a callable method with 0-3 arguments, called as C{fn(s,loc,toks)}, - C{fn(loc,toks)}, C{fn(toks)}, or just C{fn()}, where: - - s = the original string being parsed (see note below) - - loc = the location of the matching substring - - toks = a list of the matched tokens, packaged as a C{L{ParseResults}} object - If the functions in fns modify the tokens, they can return them as the return - value from fn, and the modified list of tokens will replace the original. - Otherwise, fn does not need to return any value. - - Optional keyword arguments: - - callDuringTry = (default=C{False}) indicate if parse action should be run during lookaheads and alternate testing - - Note: the default parsing behavior is to expand tabs in the input string - before starting the parsing process. See L{I{parseString}<parseString>} for more information - on parsing strings containing C{<TAB>}s, and suggested methods to maintain a - consistent view of the parsed string, the parse location, and line and column - positions within the parsed string. - - Example:: - integer = Word(nums) - date_str = integer + '/' + integer + '/' + integer - - date_str.parseString("1999/12/31") # -> ['1999', '/', '12', '/', '31'] - - # use parse action to convert to ints at parse time - integer = Word(nums).setParseAction(lambda toks: int(toks[0])) - date_str = integer + '/' + integer + '/' + integer - - # note that integer fields are now ints, not strings - date_str.parseString("1999/12/31") # -> [1999, '/', 12, '/', 31] - """ - self.parseAction = list(map(_trim_arity, list(fns))) - self.callDuringTry = kwargs.get("callDuringTry", False) - return self - - def addParseAction( self, *fns, **kwargs ): - """ - Add one or more parse actions to expression's list of parse actions. See L{I{setParseAction}<setParseAction>}. - - See examples in L{I{copy}<copy>}. - """ - self.parseAction += list(map(_trim_arity, list(fns))) - self.callDuringTry = self.callDuringTry or kwargs.get("callDuringTry", False) - return self - - def addCondition(self, *fns, **kwargs): - """Add a boolean predicate function to expression's list of parse actions. See - L{I{setParseAction}<setParseAction>} for function call signatures. Unlike C{setParseAction}, - functions passed to C{addCondition} need to return boolean success/fail of the condition. - - Optional keyword arguments: - - message = define a custom message to be used in the raised exception - - fatal = if True, will raise ParseFatalException to stop parsing immediately; otherwise will raise ParseException - - Example:: - integer = Word(nums).setParseAction(lambda toks: int(toks[0])) - year_int = integer.copy() - year_int.addCondition(lambda toks: toks[0] >= 2000, message="Only support years 2000 and later") - date_str = year_int + '/' + integer + '/' + integer - - result = date_str.parseString("1999/12/31") # -> Exception: Only support years 2000 and later (at char 0), (line:1, col:1) - """ - msg = kwargs.get("message", "failed user-defined condition") - exc_type = ParseFatalException if kwargs.get("fatal", False) else ParseException - for fn in fns: - def pa(s,l,t): - if not bool(_trim_arity(fn)(s,l,t)): - raise exc_type(s,l,msg) - self.parseAction.append(pa) - self.callDuringTry = self.callDuringTry or kwargs.get("callDuringTry", False) - return self - - def setFailAction( self, fn ): - """Define action to perform if parsing fails at this expression. - Fail acton fn is a callable function that takes the arguments - C{fn(s,loc,expr,err)} where: - - s = string being parsed - - loc = location where expression match was attempted and failed - - expr = the parse expression that failed - - err = the exception thrown - The function returns no value. It may throw C{L{ParseFatalException}} - if it is desired to stop parsing immediately.""" - self.failAction = fn - return self - - def _skipIgnorables( self, instring, loc ): - exprsFound = True - while exprsFound: - exprsFound = False - for e in self.ignoreExprs: - try: - while 1: - loc,dummy = e._parse( instring, loc ) - exprsFound = True - except ParseException: - pass - return loc - - def preParse( self, instring, loc ): - if self.ignoreExprs: - loc = self._skipIgnorables( instring, loc ) - - if self.skipWhitespace: - wt = self.whiteChars - instrlen = len(instring) - while loc < instrlen and instring[loc] in wt: - loc += 1 - - return loc - - def parseImpl( self, instring, loc, doActions=True ): - return loc, [] - - def postParse( self, instring, loc, tokenlist ): - return tokenlist - - #~ @profile - def _parseNoCache( self, instring, loc, doActions=True, callPreParse=True ): - debugging = ( self.debug ) #and doActions ) - - if debugging or self.failAction: - #~ print ("Match",self,"at loc",loc,"(%d,%d)" % ( lineno(loc,instring), col(loc,instring) )) - if (self.debugActions[0] ): - self.debugActions[0]( instring, loc, self ) - if callPreParse and self.callPreparse: - preloc = self.preParse( instring, loc ) - else: - preloc = loc - tokensStart = preloc - try: - try: - loc,tokens = self.parseImpl( instring, preloc, doActions ) - except IndexError: - raise ParseException( instring, len(instring), self.errmsg, self ) - except ParseBaseException as err: - #~ print ("Exception raised:", err) - if self.debugActions[2]: - self.debugActions[2]( instring, tokensStart, self, err ) - if self.failAction: - self.failAction( instring, tokensStart, self, err ) - raise - else: - if callPreParse and self.callPreparse: - preloc = self.preParse( instring, loc ) - else: - preloc = loc - tokensStart = preloc - if self.mayIndexError or loc >= len(instring): - try: - loc,tokens = self.parseImpl( instring, preloc, doActions ) - except IndexError: - raise ParseException( instring, len(instring), self.errmsg, self ) - else: - loc,tokens = self.parseImpl( instring, preloc, doActions ) - - tokens = self.postParse( instring, loc, tokens ) - - retTokens = ParseResults( tokens, self.resultsName, asList=self.saveAsList, modal=self.modalResults ) - if self.parseAction and (doActions or self.callDuringTry): - if debugging: - try: - for fn in self.parseAction: - tokens = fn( instring, tokensStart, retTokens ) - if tokens is not None: - retTokens = ParseResults( tokens, - self.resultsName, - asList=self.saveAsList and isinstance(tokens,(ParseResults,list)), - modal=self.modalResults ) - except ParseBaseException as err: - #~ print "Exception raised in user parse action:", err - if (self.debugActions[2] ): - self.debugActions[2]( instring, tokensStart, self, err ) - raise - else: - for fn in self.parseAction: - tokens = fn( instring, tokensStart, retTokens ) - if tokens is not None: - retTokens = ParseResults( tokens, - self.resultsName, - asList=self.saveAsList and isinstance(tokens,(ParseResults,list)), - modal=self.modalResults ) - - if debugging: - #~ print ("Matched",self,"->",retTokens.asList()) - if (self.debugActions[1] ): - self.debugActions[1]( instring, tokensStart, loc, self, retTokens ) - - return loc, retTokens - - def tryParse( self, instring, loc ): - try: - return self._parse( instring, loc, doActions=False )[0] - except ParseFatalException: - raise ParseException( instring, loc, self.errmsg, self) - - def canParseNext(self, instring, loc): - try: - self.tryParse(instring, loc) - except (ParseException, IndexError): - return False - else: - return True - - class _UnboundedCache(object): - def __init__(self): - cache = {} - self.not_in_cache = not_in_cache = object() - - def get(self, key): - return cache.get(key, not_in_cache) - - def set(self, key, value): - cache[key] = value - - def clear(self): - cache.clear() - - def cache_len(self): - return len(cache) - - self.get = types.MethodType(get, self) - self.set = types.MethodType(set, self) - self.clear = types.MethodType(clear, self) - self.__len__ = types.MethodType(cache_len, self) - - if _OrderedDict is not None: - class _FifoCache(object): - def __init__(self, size): - self.not_in_cache = not_in_cache = object() - - cache = _OrderedDict() - - def get(self, key): - return cache.get(key, not_in_cache) - - def set(self, key, value): - cache[key] = value - while len(cache) > size: - try: - cache.popitem(False) - except KeyError: - pass - - def clear(self): - cache.clear() - - def cache_len(self): - return len(cache) - - self.get = types.MethodType(get, self) - self.set = types.MethodType(set, self) - self.clear = types.MethodType(clear, self) - self.__len__ = types.MethodType(cache_len, self) - - else: - class _FifoCache(object): - def __init__(self, size): - self.not_in_cache = not_in_cache = object() - - cache = {} - key_fifo = collections.deque([], size) - - def get(self, key): - return cache.get(key, not_in_cache) - - def set(self, key, value): - cache[key] = value - while len(key_fifo) > size: - cache.pop(key_fifo.popleft(), None) - key_fifo.append(key) - - def clear(self): - cache.clear() - key_fifo.clear() - - def cache_len(self): - return len(cache) - - self.get = types.MethodType(get, self) - self.set = types.MethodType(set, self) - self.clear = types.MethodType(clear, self) - self.__len__ = types.MethodType(cache_len, self) - - # argument cache for optimizing repeated calls when backtracking through recursive expressions - packrat_cache = {} # this is set later by enabledPackrat(); this is here so that resetCache() doesn't fail - packrat_cache_lock = RLock() - packrat_cache_stats = [0, 0] - - # this method gets repeatedly called during backtracking with the same arguments - - # we can cache these arguments and save ourselves the trouble of re-parsing the contained expression - def _parseCache( self, instring, loc, doActions=True, callPreParse=True ): - HIT, MISS = 0, 1 - lookup = (self, instring, loc, callPreParse, doActions) - with ParserElement.packrat_cache_lock: - cache = ParserElement.packrat_cache - value = cache.get(lookup) - if value is cache.not_in_cache: - ParserElement.packrat_cache_stats[MISS] += 1 - try: - value = self._parseNoCache(instring, loc, doActions, callPreParse) - except ParseBaseException as pe: - # cache a copy of the exception, without the traceback - cache.set(lookup, pe.__class__(*pe.args)) - raise - else: - cache.set(lookup, (value[0], value[1].copy())) - return value - else: - ParserElement.packrat_cache_stats[HIT] += 1 - if isinstance(value, Exception): - raise value - return (value[0], value[1].copy()) - - _parse = _parseNoCache - - @staticmethod - def resetCache(): - ParserElement.packrat_cache.clear() - ParserElement.packrat_cache_stats[:] = [0] * len(ParserElement.packrat_cache_stats) - - _packratEnabled = False - @staticmethod - def enablePackrat(cache_size_limit=128): - """Enables "packrat" parsing, which adds memoizing to the parsing logic. - Repeated parse attempts at the same string location (which happens - often in many complex grammars) can immediately return a cached value, - instead of re-executing parsing/validating code. Memoizing is done of - both valid results and parsing exceptions. - - Parameters: - - cache_size_limit - (default=C{128}) - if an integer value is provided - will limit the size of the packrat cache; if None is passed, then - the cache size will be unbounded; if 0 is passed, the cache will - be effectively disabled. - - This speedup may break existing programs that use parse actions that - have side-effects. For this reason, packrat parsing is disabled when - you first import pyparsing. To activate the packrat feature, your - program must call the class method C{ParserElement.enablePackrat()}. If - your program uses C{psyco} to "compile as you go", you must call - C{enablePackrat} before calling C{psyco.full()}. If you do not do this, - Python will crash. For best results, call C{enablePackrat()} immediately - after importing pyparsing. - - Example:: - from pip._vendor import pyparsing - pyparsing.ParserElement.enablePackrat() - """ - if not ParserElement._packratEnabled: - ParserElement._packratEnabled = True - if cache_size_limit is None: - ParserElement.packrat_cache = ParserElement._UnboundedCache() - else: - ParserElement.packrat_cache = ParserElement._FifoCache(cache_size_limit) - ParserElement._parse = ParserElement._parseCache - - def parseString( self, instring, parseAll=False ): - """ - Execute the parse expression with the given string. - This is the main interface to the client code, once the complete - expression has been built. - - If you want the grammar to require that the entire input string be - successfully parsed, then set C{parseAll} to True (equivalent to ending - the grammar with C{L{StringEnd()}}). - - Note: C{parseString} implicitly calls C{expandtabs()} on the input string, - in order to report proper column numbers in parse actions. - If the input string contains tabs and - the grammar uses parse actions that use the C{loc} argument to index into the - string being parsed, you can ensure you have a consistent view of the input - string by: - - calling C{parseWithTabs} on your grammar before calling C{parseString} - (see L{I{parseWithTabs}<parseWithTabs>}) - - define your parse action using the full C{(s,loc,toks)} signature, and - reference the input string using the parse action's C{s} argument - - explictly expand the tabs in your input string before calling - C{parseString} - - Example:: - Word('a').parseString('aaaaabaaa') # -> ['aaaaa'] - Word('a').parseString('aaaaabaaa', parseAll=True) # -> Exception: Expected end of text - """ - ParserElement.resetCache() - if not self.streamlined: - self.streamline() - #~ self.saveAsList = True - for e in self.ignoreExprs: - e.streamline() - if not self.keepTabs: - instring = instring.expandtabs() - try: - loc, tokens = self._parse( instring, 0 ) - if parseAll: - loc = self.preParse( instring, loc ) - se = Empty() + StringEnd() - se._parse( instring, loc ) - except ParseBaseException as exc: - if ParserElement.verbose_stacktrace: - raise - else: - # catch and re-raise exception from here, clears out pyparsing internal stack trace - raise exc - else: - return tokens - - def scanString( self, instring, maxMatches=_MAX_INT, overlap=False ): - """ - Scan the input string for expression matches. Each match will return the - matching tokens, start location, and end location. May be called with optional - C{maxMatches} argument, to clip scanning after 'n' matches are found. If - C{overlap} is specified, then overlapping matches will be reported. - - Note that the start and end locations are reported relative to the string - being parsed. See L{I{parseString}<parseString>} for more information on parsing - strings with embedded tabs. - - Example:: - source = "sldjf123lsdjjkf345sldkjf879lkjsfd987" - print(source) - for tokens,start,end in Word(alphas).scanString(source): - print(' '*start + '^'*(end-start)) - print(' '*start + tokens[0]) - - prints:: - - sldjf123lsdjjkf345sldkjf879lkjsfd987 - ^^^^^ - sldjf - ^^^^^^^ - lsdjjkf - ^^^^^^ - sldkjf - ^^^^^^ - lkjsfd - """ - if not self.streamlined: - self.streamline() - for e in self.ignoreExprs: - e.streamline() - - if not self.keepTabs: - instring = _ustr(instring).expandtabs() - instrlen = len(instring) - loc = 0 - preparseFn = self.preParse - parseFn = self._parse - ParserElement.resetCache() - matches = 0 - try: - while loc <= instrlen and matches < maxMatches: - try: - preloc = preparseFn( instring, loc ) - nextLoc,tokens = parseFn( instring, preloc, callPreParse=False ) - except ParseException: - loc = preloc+1 - else: - if nextLoc > loc: - matches += 1 - yield tokens, preloc, nextLoc - if overlap: - nextloc = preparseFn( instring, loc ) - if nextloc > loc: - loc = nextLoc - else: - loc += 1 - else: - loc = nextLoc - else: - loc = preloc+1 - except ParseBaseException as exc: - if ParserElement.verbose_stacktrace: - raise - else: - # catch and re-raise exception from here, clears out pyparsing internal stack trace - raise exc - - def transformString( self, instring ): - """ - Extension to C{L{scanString}}, to modify matching text with modified tokens that may - be returned from a parse action. To use C{transformString}, define a grammar and - attach a parse action to it that modifies the returned token list. - Invoking C{transformString()} on a target string will then scan for matches, - and replace the matched text patterns according to the logic in the parse - action. C{transformString()} returns the resulting transformed string. - - Example:: - wd = Word(alphas) - wd.setParseAction(lambda toks: toks[0].title()) - - print(wd.transformString("now is the winter of our discontent made glorious summer by this sun of york.")) - Prints:: - Now Is The Winter Of Our Discontent Made Glorious Summer By This Sun Of York. - """ - out = [] - lastE = 0 - # force preservation of <TAB>s, to minimize unwanted transformation of string, and to - # keep string locs straight between transformString and scanString - self.keepTabs = True - try: - for t,s,e in self.scanString( instring ): - out.append( instring[lastE:s] ) - if t: - if isinstance(t,ParseResults): - out += t.asList() - elif isinstance(t,list): - out += t - else: - out.append(t) - lastE = e - out.append(instring[lastE:]) - out = [o for o in out if o] - return "".join(map(_ustr,_flatten(out))) - except ParseBaseException as exc: - if ParserElement.verbose_stacktrace: - raise - else: - # catch and re-raise exception from here, clears out pyparsing internal stack trace - raise exc - - def searchString( self, instring, maxMatches=_MAX_INT ): - """ - Another extension to C{L{scanString}}, simplifying the access to the tokens found - to match the given parse expression. May be called with optional - C{maxMatches} argument, to clip searching after 'n' matches are found. - - Example:: - # a capitalized word starts with an uppercase letter, followed by zero or more lowercase letters - cap_word = Word(alphas.upper(), alphas.lower()) - - print(cap_word.searchString("More than Iron, more than Lead, more than Gold I need Electricity")) - - # the sum() builtin can be used to merge results into a single ParseResults object - print(sum(cap_word.searchString("More than Iron, more than Lead, more than Gold I need Electricity"))) - prints:: - [['More'], ['Iron'], ['Lead'], ['Gold'], ['I'], ['Electricity']] - ['More', 'Iron', 'Lead', 'Gold', 'I', 'Electricity'] - """ - try: - return ParseResults([ t for t,s,e in self.scanString( instring, maxMatches ) ]) - except ParseBaseException as exc: - if ParserElement.verbose_stacktrace: - raise - else: - # catch and re-raise exception from here, clears out pyparsing internal stack trace - raise exc - - def split(self, instring, maxsplit=_MAX_INT, includeSeparators=False): - """ - Generator method to split a string using the given expression as a separator. - May be called with optional C{maxsplit} argument, to limit the number of splits; - and the optional C{includeSeparators} argument (default=C{False}), if the separating - matching text should be included in the split results. - - Example:: - punc = oneOf(list(".,;:/-!?")) - print(list(punc.split("This, this?, this sentence, is badly punctuated!"))) - prints:: - ['This', ' this', '', ' this sentence', ' is badly punctuated', ''] - """ - splits = 0 - last = 0 - for t,s,e in self.scanString(instring, maxMatches=maxsplit): - yield instring[last:s] - if includeSeparators: - yield t[0] - last = e - yield instring[last:] - - def __add__(self, other ): - """ - Implementation of + operator - returns C{L{And}}. Adding strings to a ParserElement - converts them to L{Literal}s by default. - - Example:: - greet = Word(alphas) + "," + Word(alphas) + "!" - hello = "Hello, World!" - print (hello, "->", greet.parseString(hello)) - Prints:: - Hello, World! -> ['Hello', ',', 'World', '!'] - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return And( [ self, other ] ) - - def __radd__(self, other ): - """ - Implementation of + operator when left operand is not a C{L{ParserElement}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return other + self - - def __sub__(self, other): - """ - Implementation of - operator, returns C{L{And}} with error stop - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return self + And._ErrorStop() + other - - def __rsub__(self, other ): - """ - Implementation of - operator when left operand is not a C{L{ParserElement}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return other - self - - def __mul__(self,other): - """ - Implementation of * operator, allows use of C{expr * 3} in place of - C{expr + expr + expr}. Expressions may also me multiplied by a 2-integer - tuple, similar to C{{min,max}} multipliers in regular expressions. Tuples - may also include C{None} as in: - - C{expr*(n,None)} or C{expr*(n,)} is equivalent - to C{expr*n + L{ZeroOrMore}(expr)} - (read as "at least n instances of C{expr}") - - C{expr*(None,n)} is equivalent to C{expr*(0,n)} - (read as "0 to n instances of C{expr}") - - C{expr*(None,None)} is equivalent to C{L{ZeroOrMore}(expr)} - - C{expr*(1,None)} is equivalent to C{L{OneOrMore}(expr)} - - Note that C{expr*(None,n)} does not raise an exception if - more than n exprs exist in the input stream; that is, - C{expr*(None,n)} does not enforce a maximum number of expr - occurrences. If this behavior is desired, then write - C{expr*(None,n) + ~expr} - """ - if isinstance(other,int): - minElements, optElements = other,0 - elif isinstance(other,tuple): - other = (other + (None, None))[:2] - if other[0] is None: - other = (0, other[1]) - if isinstance(other[0],int) and other[1] is None: - if other[0] == 0: - return ZeroOrMore(self) - if other[0] == 1: - return OneOrMore(self) - else: - return self*other[0] + ZeroOrMore(self) - elif isinstance(other[0],int) and isinstance(other[1],int): - minElements, optElements = other - optElements -= minElements - else: - raise TypeError("cannot multiply 'ParserElement' and ('%s','%s') objects", type(other[0]),type(other[1])) - else: - raise TypeError("cannot multiply 'ParserElement' and '%s' objects", type(other)) - - if minElements < 0: - raise ValueError("cannot multiply ParserElement by negative value") - if optElements < 0: - raise ValueError("second tuple value must be greater or equal to first tuple value") - if minElements == optElements == 0: - raise ValueError("cannot multiply ParserElement by 0 or (0,0)") - - if (optElements): - def makeOptionalList(n): - if n>1: - return Optional(self + makeOptionalList(n-1)) - else: - return Optional(self) - if minElements: - if minElements == 1: - ret = self + makeOptionalList(optElements) - else: - ret = And([self]*minElements) + makeOptionalList(optElements) - else: - ret = makeOptionalList(optElements) - else: - if minElements == 1: - ret = self - else: - ret = And([self]*minElements) - return ret - - def __rmul__(self, other): - return self.__mul__(other) - - def __or__(self, other ): - """ - Implementation of | operator - returns C{L{MatchFirst}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return MatchFirst( [ self, other ] ) - - def __ror__(self, other ): - """ - Implementation of | operator when left operand is not a C{L{ParserElement}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return other | self - - def __xor__(self, other ): - """ - Implementation of ^ operator - returns C{L{Or}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return Or( [ self, other ] ) - - def __rxor__(self, other ): - """ - Implementation of ^ operator when left operand is not a C{L{ParserElement}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return other ^ self - - def __and__(self, other ): - """ - Implementation of & operator - returns C{L{Each}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return Each( [ self, other ] ) - - def __rand__(self, other ): - """ - Implementation of & operator when left operand is not a C{L{ParserElement}} - """ - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - if not isinstance( other, ParserElement ): - warnings.warn("Cannot combine element of type %s with ParserElement" % type(other), - SyntaxWarning, stacklevel=2) - return None - return other & self - - def __invert__( self ): - """ - Implementation of ~ operator - returns C{L{NotAny}} - """ - return NotAny( self ) - - def __call__(self, name=None): - """ - Shortcut for C{L{setResultsName}}, with C{listAllMatches=False}. - - If C{name} is given with a trailing C{'*'} character, then C{listAllMatches} will be - passed as C{True}. - - If C{name} is omitted, same as calling C{L{copy}}. - - Example:: - # these are equivalent - userdata = Word(alphas).setResultsName("name") + Word(nums+"-").setResultsName("socsecno") - userdata = Word(alphas)("name") + Word(nums+"-")("socsecno") - """ - if name is not None: - return self.setResultsName(name) - else: - return self.copy() - - def suppress( self ): - """ - Suppresses the output of this C{ParserElement}; useful to keep punctuation from - cluttering up returned output. - """ - return Suppress( self ) - - def leaveWhitespace( self ): - """ - Disables the skipping of whitespace before matching the characters in the - C{ParserElement}'s defined pattern. This is normally only used internally by - the pyparsing module, but may be needed in some whitespace-sensitive grammars. - """ - self.skipWhitespace = False - return self - - def setWhitespaceChars( self, chars ): - """ - Overrides the default whitespace chars - """ - self.skipWhitespace = True - self.whiteChars = chars - self.copyDefaultWhiteChars = False - return self - - def parseWithTabs( self ): - """ - Overrides default behavior to expand C{<TAB>}s to spaces before parsing the input string. - Must be called before C{parseString} when the input grammar contains elements that - match C{<TAB>} characters. - """ - self.keepTabs = True - return self - - def ignore( self, other ): - """ - Define expression to be ignored (e.g., comments) while doing pattern - matching; may be called repeatedly, to define multiple comment or other - ignorable patterns. - - Example:: - patt = OneOrMore(Word(alphas)) - patt.parseString('ablaj /* comment */ lskjd') # -> ['ablaj'] - - patt.ignore(cStyleComment) - patt.parseString('ablaj /* comment */ lskjd') # -> ['ablaj', 'lskjd'] - """ - if isinstance(other, basestring): - other = Suppress(other) - - if isinstance( other, Suppress ): - if other not in self.ignoreExprs: - self.ignoreExprs.append(other) - else: - self.ignoreExprs.append( Suppress( other.copy() ) ) - return self - - def setDebugActions( self, startAction, successAction, exceptionAction ): - """ - Enable display of debugging messages while doing pattern matching. - """ - self.debugActions = (startAction or _defaultStartDebugAction, - successAction or _defaultSuccessDebugAction, - exceptionAction or _defaultExceptionDebugAction) - self.debug = True - return self - - def setDebug( self, flag=True ): - """ - Enable display of debugging messages while doing pattern matching. - Set C{flag} to True to enable, False to disable. - - Example:: - wd = Word(alphas).setName("alphaword") - integer = Word(nums).setName("numword") - term = wd | integer - - # turn on debugging for wd - wd.setDebug() - - OneOrMore(term).parseString("abc 123 xyz 890") - - prints:: - Match alphaword at loc 0(1,1) - Matched alphaword -> ['abc'] - Match alphaword at loc 3(1,4) - Exception raised:Expected alphaword (at char 4), (line:1, col:5) - Match alphaword at loc 7(1,8) - Matched alphaword -> ['xyz'] - Match alphaword at loc 11(1,12) - Exception raised:Expected alphaword (at char 12), (line:1, col:13) - Match alphaword at loc 15(1,16) - Exception raised:Expected alphaword (at char 15), (line:1, col:16) - - The output shown is that produced by the default debug actions - custom debug actions can be - specified using L{setDebugActions}. Prior to attempting - to match the C{wd} expression, the debugging message C{"Match <exprname> at loc <n>(<line>,<col>)"} - is shown. Then if the parse succeeds, a C{"Matched"} message is shown, or an C{"Exception raised"} - message is shown. Also note the use of L{setName} to assign a human-readable name to the expression, - which makes debugging and exception messages easier to understand - for instance, the default - name created for the C{Word} expression without calling C{setName} is C{"W:(ABCD...)"}. - """ - if flag: - self.setDebugActions( _defaultStartDebugAction, _defaultSuccessDebugAction, _defaultExceptionDebugAction ) - else: - self.debug = False - return self - - def __str__( self ): - return self.name - - def __repr__( self ): - return _ustr(self) - - def streamline( self ): - self.streamlined = True - self.strRepr = None - return self - - def checkRecursion( self, parseElementList ): - pass - - def validate( self, validateTrace=[] ): - """ - Check defined expressions for valid structure, check for infinite recursive definitions. - """ - self.checkRecursion( [] ) - - def parseFile( self, file_or_filename, parseAll=False ): - """ - Execute the parse expression on the given file or filename. - If a filename is specified (instead of a file object), - the entire file is opened, read, and closed before parsing. - """ - try: - file_contents = file_or_filename.read() - except AttributeError: - with open(file_or_filename, "r") as f: - file_contents = f.read() - try: - return self.parseString(file_contents, parseAll) - except ParseBaseException as exc: - if ParserElement.verbose_stacktrace: - raise - else: - # catch and re-raise exception from here, clears out pyparsing internal stack trace - raise exc - - def __eq__(self,other): - if isinstance(other, ParserElement): - return self is other or vars(self) == vars(other) - elif isinstance(other, basestring): - return self.matches(other) - else: - return super(ParserElement,self)==other - - def __ne__(self,other): - return not (self == other) - - def __hash__(self): - return hash(id(self)) - - def __req__(self,other): - return self == other - - def __rne__(self,other): - return not (self == other) - - def matches(self, testString, parseAll=True): - """ - Method for quick testing of a parser against a test string. Good for simple - inline microtests of sub expressions while building up larger parser. - - Parameters: - - testString - to test against this expression for a match - - parseAll - (default=C{True}) - flag to pass to C{L{parseString}} when running tests - - Example:: - expr = Word(nums) - assert expr.matches("100") - """ - try: - self.parseString(_ustr(testString), parseAll=parseAll) - return True - except ParseBaseException: - return False - - def runTests(self, tests, parseAll=True, comment='#', fullDump=True, printResults=True, failureTests=False): - """ - Execute the parse expression on a series of test strings, showing each - test, the parsed results or where the parse failed. Quick and easy way to - run a parse expression against a list of sample strings. - - Parameters: - - tests - a list of separate test strings, or a multiline string of test strings - - parseAll - (default=C{True}) - flag to pass to C{L{parseString}} when running tests - - comment - (default=C{'#'}) - expression for indicating embedded comments in the test - string; pass None to disable comment filtering - - fullDump - (default=C{True}) - dump results as list followed by results names in nested outline; - if False, only dump nested list - - printResults - (default=C{True}) prints test output to stdout - - failureTests - (default=C{False}) indicates if these tests are expected to fail parsing - - Returns: a (success, results) tuple, where success indicates that all tests succeeded - (or failed if C{failureTests} is True), and the results contain a list of lines of each - test's output - - Example:: - number_expr = pyparsing_common.number.copy() - - result = number_expr.runTests(''' - # unsigned integer - 100 - # negative integer - -100 - # float with scientific notation - 6.02e23 - # integer with scientific notation - 1e-12 - ''') - print("Success" if result[0] else "Failed!") - - result = number_expr.runTests(''' - # stray character - 100Z - # missing leading digit before '.' - -.100 - # too many '.' - 3.14.159 - ''', failureTests=True) - print("Success" if result[0] else "Failed!") - prints:: - # unsigned integer - 100 - [100] - - # negative integer - -100 - [-100] - - # float with scientific notation - 6.02e23 - [6.02e+23] - - # integer with scientific notation - 1e-12 - [1e-12] - - Success - - # stray character - 100Z - ^ - FAIL: Expected end of text (at char 3), (line:1, col:4) - - # missing leading digit before '.' - -.100 - ^ - FAIL: Expected {real number with scientific notation | real number | signed integer} (at char 0), (line:1, col:1) - - # too many '.' - 3.14.159 - ^ - FAIL: Expected end of text (at char 4), (line:1, col:5) - - Success - - Each test string must be on a single line. If you want to test a string that spans multiple - lines, create a test like this:: - - expr.runTest(r"this is a test\\n of strings that spans \\n 3 lines") - - (Note that this is a raw string literal, you must include the leading 'r'.) - """ - if isinstance(tests, basestring): - tests = list(map(str.strip, tests.rstrip().splitlines())) - if isinstance(comment, basestring): - comment = Literal(comment) - allResults = [] - comments = [] - success = True - for t in tests: - if comment is not None and comment.matches(t, False) or comments and not t: - comments.append(t) - continue - if not t: - continue - out = ['\n'.join(comments), t] - comments = [] - try: - t = t.replace(r'\n','\n') - result = self.parseString(t, parseAll=parseAll) - out.append(result.dump(full=fullDump)) - success = success and not failureTests - except ParseBaseException as pe: - fatal = "(FATAL)" if isinstance(pe, ParseFatalException) else "" - if '\n' in t: - out.append(line(pe.loc, t)) - out.append(' '*(col(pe.loc,t)-1) + '^' + fatal) - else: - out.append(' '*pe.loc + '^' + fatal) - out.append("FAIL: " + str(pe)) - success = success and failureTests - result = pe - except Exception as exc: - out.append("FAIL-EXCEPTION: " + str(exc)) - success = success and failureTests - result = exc - - if printResults: - if fullDump: - out.append('') - print('\n'.join(out)) - - allResults.append((t, result)) - - return success, allResults - - -class Token(ParserElement): - """ - Abstract C{ParserElement} subclass, for defining atomic matching patterns. - """ - def __init__( self ): - super(Token,self).__init__( savelist=False ) - - -class Empty(Token): - """ - An empty token, will always match. - """ - def __init__( self ): - super(Empty,self).__init__() - self.name = "Empty" - self.mayReturnEmpty = True - self.mayIndexError = False - - -class NoMatch(Token): - """ - A token that will never match. - """ - def __init__( self ): - super(NoMatch,self).__init__() - self.name = "NoMatch" - self.mayReturnEmpty = True - self.mayIndexError = False - self.errmsg = "Unmatchable token" - - def parseImpl( self, instring, loc, doActions=True ): - raise ParseException(instring, loc, self.errmsg, self) - - -class Literal(Token): - """ - Token to exactly match a specified string. - - Example:: - Literal('blah').parseString('blah') # -> ['blah'] - Literal('blah').parseString('blahfooblah') # -> ['blah'] - Literal('blah').parseString('bla') # -> Exception: Expected "blah" - - For case-insensitive matching, use L{CaselessLiteral}. - - For keyword matching (force word break before and after the matched string), - use L{Keyword} or L{CaselessKeyword}. - """ - def __init__( self, matchString ): - super(Literal,self).__init__() - self.match = matchString - self.matchLen = len(matchString) - try: - self.firstMatchChar = matchString[0] - except IndexError: - warnings.warn("null string passed to Literal; use Empty() instead", - SyntaxWarning, stacklevel=2) - self.__class__ = Empty - self.name = '"%s"' % _ustr(self.match) - self.errmsg = "Expected " + self.name - self.mayReturnEmpty = False - self.mayIndexError = False - - # Performance tuning: this routine gets called a *lot* - # if this is a single character match string and the first character matches, - # short-circuit as quickly as possible, and avoid calling startswith - #~ @profile - def parseImpl( self, instring, loc, doActions=True ): - if (instring[loc] == self.firstMatchChar and - (self.matchLen==1 or instring.startswith(self.match,loc)) ): - return loc+self.matchLen, self.match - raise ParseException(instring, loc, self.errmsg, self) -_L = Literal -ParserElement._literalStringClass = Literal - -class Keyword(Token): - """ - Token to exactly match a specified string as a keyword, that is, it must be - immediately followed by a non-keyword character. Compare with C{L{Literal}}: - - C{Literal("if")} will match the leading C{'if'} in C{'ifAndOnlyIf'}. - - C{Keyword("if")} will not; it will only match the leading C{'if'} in C{'if x=1'}, or C{'if(y==2)'} - Accepts two optional constructor arguments in addition to the keyword string: - - C{identChars} is a string of characters that would be valid identifier characters, - defaulting to all alphanumerics + "_" and "$" - - C{caseless} allows case-insensitive matching, default is C{False}. - - Example:: - Keyword("start").parseString("start") # -> ['start'] - Keyword("start").parseString("starting") # -> Exception - - For case-insensitive matching, use L{CaselessKeyword}. - """ - DEFAULT_KEYWORD_CHARS = alphanums+"_$" - - def __init__( self, matchString, identChars=None, caseless=False ): - super(Keyword,self).__init__() - if identChars is None: - identChars = Keyword.DEFAULT_KEYWORD_CHARS - self.match = matchString - self.matchLen = len(matchString) - try: - self.firstMatchChar = matchString[0] - except IndexError: - warnings.warn("null string passed to Keyword; use Empty() instead", - SyntaxWarning, stacklevel=2) - self.name = '"%s"' % self.match - self.errmsg = "Expected " + self.name - self.mayReturnEmpty = False - self.mayIndexError = False - self.caseless = caseless - if caseless: - self.caselessmatch = matchString.upper() - identChars = identChars.upper() - self.identChars = set(identChars) - - def parseImpl( self, instring, loc, doActions=True ): - if self.caseless: - if ( (instring[ loc:loc+self.matchLen ].upper() == self.caselessmatch) and - (loc >= len(instring)-self.matchLen or instring[loc+self.matchLen].upper() not in self.identChars) and - (loc == 0 or instring[loc-1].upper() not in self.identChars) ): - return loc+self.matchLen, self.match - else: - if (instring[loc] == self.firstMatchChar and - (self.matchLen==1 or instring.startswith(self.match,loc)) and - (loc >= len(instring)-self.matchLen or instring[loc+self.matchLen] not in self.identChars) and - (loc == 0 or instring[loc-1] not in self.identChars) ): - return loc+self.matchLen, self.match - raise ParseException(instring, loc, self.errmsg, self) - - def copy(self): - c = super(Keyword,self).copy() - c.identChars = Keyword.DEFAULT_KEYWORD_CHARS - return c - - @staticmethod - def setDefaultKeywordChars( chars ): - """Overrides the default Keyword chars - """ - Keyword.DEFAULT_KEYWORD_CHARS = chars - -class CaselessLiteral(Literal): - """ - Token to match a specified string, ignoring case of letters. - Note: the matched results will always be in the case of the given - match string, NOT the case of the input text. - - Example:: - OneOrMore(CaselessLiteral("CMD")).parseString("cmd CMD Cmd10") # -> ['CMD', 'CMD', 'CMD'] - - (Contrast with example for L{CaselessKeyword}.) - """ - def __init__( self, matchString ): - super(CaselessLiteral,self).__init__( matchString.upper() ) - # Preserve the defining literal. - self.returnString = matchString - self.name = "'%s'" % self.returnString - self.errmsg = "Expected " + self.name - - def parseImpl( self, instring, loc, doActions=True ): - if instring[ loc:loc+self.matchLen ].upper() == self.match: - return loc+self.matchLen, self.returnString - raise ParseException(instring, loc, self.errmsg, self) - -class CaselessKeyword(Keyword): - """ - Caseless version of L{Keyword}. - - Example:: - OneOrMore(CaselessKeyword("CMD")).parseString("cmd CMD Cmd10") # -> ['CMD', 'CMD'] - - (Contrast with example for L{CaselessLiteral}.) - """ - def __init__( self, matchString, identChars=None ): - super(CaselessKeyword,self).__init__( matchString, identChars, caseless=True ) - - def parseImpl( self, instring, loc, doActions=True ): - if ( (instring[ loc:loc+self.matchLen ].upper() == self.caselessmatch) and - (loc >= len(instring)-self.matchLen or instring[loc+self.matchLen].upper() not in self.identChars) ): - return loc+self.matchLen, self.match - raise ParseException(instring, loc, self.errmsg, self) - -class CloseMatch(Token): - """ - A variation on L{Literal} which matches "close" matches, that is, - strings with at most 'n' mismatching characters. C{CloseMatch} takes parameters: - - C{match_string} - string to be matched - - C{maxMismatches} - (C{default=1}) maximum number of mismatches allowed to count as a match - - The results from a successful parse will contain the matched text from the input string and the following named results: - - C{mismatches} - a list of the positions within the match_string where mismatches were found - - C{original} - the original match_string used to compare against the input string - - If C{mismatches} is an empty list, then the match was an exact match. - - Example:: - patt = CloseMatch("ATCATCGAATGGA") - patt.parseString("ATCATCGAAXGGA") # -> (['ATCATCGAAXGGA'], {'mismatches': [[9]], 'original': ['ATCATCGAATGGA']}) - patt.parseString("ATCAXCGAAXGGA") # -> Exception: Expected 'ATCATCGAATGGA' (with up to 1 mismatches) (at char 0), (line:1, col:1) - - # exact match - patt.parseString("ATCATCGAATGGA") # -> (['ATCATCGAATGGA'], {'mismatches': [[]], 'original': ['ATCATCGAATGGA']}) - - # close match allowing up to 2 mismatches - patt = CloseMatch("ATCATCGAATGGA", maxMismatches=2) - patt.parseString("ATCAXCGAAXGGA") # -> (['ATCAXCGAAXGGA'], {'mismatches': [[4, 9]], 'original': ['ATCATCGAATGGA']}) - """ - def __init__(self, match_string, maxMismatches=1): - super(CloseMatch,self).__init__() - self.name = match_string - self.match_string = match_string - self.maxMismatches = maxMismatches - self.errmsg = "Expected %r (with up to %d mismatches)" % (self.match_string, self.maxMismatches) - self.mayIndexError = False - self.mayReturnEmpty = False - - def parseImpl( self, instring, loc, doActions=True ): - start = loc - instrlen = len(instring) - maxloc = start + len(self.match_string) - - if maxloc <= instrlen: - match_string = self.match_string - match_stringloc = 0 - mismatches = [] - maxMismatches = self.maxMismatches - - for match_stringloc,s_m in enumerate(zip(instring[loc:maxloc], self.match_string)): - src,mat = s_m - if src != mat: - mismatches.append(match_stringloc) - if len(mismatches) > maxMismatches: - break - else: - loc = match_stringloc + 1 - results = ParseResults([instring[start:loc]]) - results['original'] = self.match_string - results['mismatches'] = mismatches - return loc, results - - raise ParseException(instring, loc, self.errmsg, self) - - -class Word(Token): - """ - Token for matching words composed of allowed character sets. - Defined with string containing all allowed initial characters, - an optional string containing allowed body characters (if omitted, - defaults to the initial character set), and an optional minimum, - maximum, and/or exact length. The default value for C{min} is 1 (a - minimum value < 1 is not valid); the default values for C{max} and C{exact} - are 0, meaning no maximum or exact length restriction. An optional - C{excludeChars} parameter can list characters that might be found in - the input C{bodyChars} string; useful to define a word of all printables - except for one or two characters, for instance. - - L{srange} is useful for defining custom character set strings for defining - C{Word} expressions, using range notation from regular expression character sets. - - A common mistake is to use C{Word} to match a specific literal string, as in - C{Word("Address")}. Remember that C{Word} uses the string argument to define - I{sets} of matchable characters. This expression would match "Add", "AAA", - "dAred", or any other word made up of the characters 'A', 'd', 'r', 'e', and 's'. - To match an exact literal string, use L{Literal} or L{Keyword}. - - pyparsing includes helper strings for building Words: - - L{alphas} - - L{nums} - - L{alphanums} - - L{hexnums} - - L{alphas8bit} (alphabetic characters in ASCII range 128-255 - accented, tilded, umlauted, etc.) - - L{punc8bit} (non-alphabetic characters in ASCII range 128-255 - currency, symbols, superscripts, diacriticals, etc.) - - L{printables} (any non-whitespace character) - - Example:: - # a word composed of digits - integer = Word(nums) # equivalent to Word("0123456789") or Word(srange("0-9")) - - # a word with a leading capital, and zero or more lowercase - capital_word = Word(alphas.upper(), alphas.lower()) - - # hostnames are alphanumeric, with leading alpha, and '-' - hostname = Word(alphas, alphanums+'-') - - # roman numeral (not a strict parser, accepts invalid mix of characters) - roman = Word("IVXLCDM") - - # any string of non-whitespace characters, except for ',' - csv_value = Word(printables, excludeChars=",") - """ - def __init__( self, initChars, bodyChars=None, min=1, max=0, exact=0, asKeyword=False, excludeChars=None ): - super(Word,self).__init__() - if excludeChars: - initChars = ''.join(c for c in initChars if c not in excludeChars) - if bodyChars: - bodyChars = ''.join(c for c in bodyChars if c not in excludeChars) - self.initCharsOrig = initChars - self.initChars = set(initChars) - if bodyChars : - self.bodyCharsOrig = bodyChars - self.bodyChars = set(bodyChars) - else: - self.bodyCharsOrig = initChars - self.bodyChars = set(initChars) - - self.maxSpecified = max > 0 - - if min < 1: - raise ValueError("cannot specify a minimum length < 1; use Optional(Word()) if zero-length word is permitted") - - self.minLen = min - - if max > 0: - self.maxLen = max - else: - self.maxLen = _MAX_INT - - if exact > 0: - self.maxLen = exact - self.minLen = exact - - self.name = _ustr(self) - self.errmsg = "Expected " + self.name - self.mayIndexError = False - self.asKeyword = asKeyword - - if ' ' not in self.initCharsOrig+self.bodyCharsOrig and (min==1 and max==0 and exact==0): - if self.bodyCharsOrig == self.initCharsOrig: - self.reString = "[%s]+" % _escapeRegexRangeChars(self.initCharsOrig) - elif len(self.initCharsOrig) == 1: - self.reString = "%s[%s]*" % \ - (re.escape(self.initCharsOrig), - _escapeRegexRangeChars(self.bodyCharsOrig),) - else: - self.reString = "[%s][%s]*" % \ - (_escapeRegexRangeChars(self.initCharsOrig), - _escapeRegexRangeChars(self.bodyCharsOrig),) - if self.asKeyword: - self.reString = r"\b"+self.reString+r"\b" - try: - self.re = re.compile( self.reString ) - except Exception: - self.re = None - - def parseImpl( self, instring, loc, doActions=True ): - if self.re: - result = self.re.match(instring,loc) - if not result: - raise ParseException(instring, loc, self.errmsg, self) - - loc = result.end() - return loc, result.group() - - if not(instring[ loc ] in self.initChars): - raise ParseException(instring, loc, self.errmsg, self) - - start = loc - loc += 1 - instrlen = len(instring) - bodychars = self.bodyChars - maxloc = start + self.maxLen - maxloc = min( maxloc, instrlen ) - while loc < maxloc and instring[loc] in bodychars: - loc += 1 - - throwException = False - if loc - start < self.minLen: - throwException = True - if self.maxSpecified and loc < instrlen and instring[loc] in bodychars: - throwException = True - if self.asKeyword: - if (start>0 and instring[start-1] in bodychars) or (loc<instrlen and instring[loc] in bodychars): - throwException = True - - if throwException: - raise ParseException(instring, loc, self.errmsg, self) - - return loc, instring[start:loc] - - def __str__( self ): - try: - return super(Word,self).__str__() - except Exception: - pass - - - if self.strRepr is None: - - def charsAsStr(s): - if len(s)>4: - return s[:4]+"..." - else: - return s - - if ( self.initCharsOrig != self.bodyCharsOrig ): - self.strRepr = "W:(%s,%s)" % ( charsAsStr(self.initCharsOrig), charsAsStr(self.bodyCharsOrig) ) - else: - self.strRepr = "W:(%s)" % charsAsStr(self.initCharsOrig) - - return self.strRepr - - -class Regex(Token): - r""" - Token for matching strings that match a given regular expression. - Defined with string specifying the regular expression in a form recognized by the inbuilt Python re module. - If the given regex contains named groups (defined using C{(?P<name>...)}), these will be preserved as - named parse results. - - Example:: - realnum = Regex(r"[+-]?\d+\.\d*") - date = Regex(r'(?P<year>\d{4})-(?P<month>\d\d?)-(?P<day>\d\d?)') - # ref: http://stackoverflow.com/questions/267399/how-do-you-match-only-valid-roman-numerals-with-a-regular-expression - roman = Regex(r"M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})") - """ - compiledREtype = type(re.compile("[A-Z]")) - def __init__( self, pattern, flags=0): - """The parameters C{pattern} and C{flags} are passed to the C{re.compile()} function as-is. See the Python C{re} module for an explanation of the acceptable patterns and flags.""" - super(Regex,self).__init__() - - if isinstance(pattern, basestring): - if not pattern: - warnings.warn("null string passed to Regex; use Empty() instead", - SyntaxWarning, stacklevel=2) - - self.pattern = pattern - self.flags = flags - - try: - self.re = re.compile(self.pattern, self.flags) - self.reString = self.pattern - except sre_constants.error: - warnings.warn("invalid pattern (%s) passed to Regex" % pattern, - SyntaxWarning, stacklevel=2) - raise - - elif isinstance(pattern, Regex.compiledREtype): - self.re = pattern - self.pattern = \ - self.reString = str(pattern) - self.flags = flags - - else: - raise ValueError("Regex may only be constructed with a string or a compiled RE object") - - self.name = _ustr(self) - self.errmsg = "Expected " + self.name - self.mayIndexError = False - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - result = self.re.match(instring,loc) - if not result: - raise ParseException(instring, loc, self.errmsg, self) - - loc = result.end() - d = result.groupdict() - ret = ParseResults(result.group()) - if d: - for k in d: - ret[k] = d[k] - return loc,ret - - def __str__( self ): - try: - return super(Regex,self).__str__() - except Exception: - pass - - if self.strRepr is None: - self.strRepr = "Re:(%s)" % repr(self.pattern) - - return self.strRepr - - -class QuotedString(Token): - r""" - Token for matching strings that are delimited by quoting characters. - - Defined with the following parameters: - - quoteChar - string of one or more characters defining the quote delimiting string - - escChar - character to escape quotes, typically backslash (default=C{None}) - - escQuote - special quote sequence to escape an embedded quote string (such as SQL's "" to escape an embedded ") (default=C{None}) - - multiline - boolean indicating whether quotes can span multiple lines (default=C{False}) - - unquoteResults - boolean indicating whether the matched text should be unquoted (default=C{True}) - - endQuoteChar - string of one or more characters defining the end of the quote delimited string (default=C{None} => same as quoteChar) - - convertWhitespaceEscapes - convert escaped whitespace (C{'\t'}, C{'\n'}, etc.) to actual whitespace (default=C{True}) - - Example:: - qs = QuotedString('"') - print(qs.searchString('lsjdf "This is the quote" sldjf')) - complex_qs = QuotedString('{{', endQuoteChar='}}') - print(complex_qs.searchString('lsjdf {{This is the "quote"}} sldjf')) - sql_qs = QuotedString('"', escQuote='""') - print(sql_qs.searchString('lsjdf "This is the quote with ""embedded"" quotes" sldjf')) - prints:: - [['This is the quote']] - [['This is the "quote"']] - [['This is the quote with "embedded" quotes']] - """ - def __init__( self, quoteChar, escChar=None, escQuote=None, multiline=False, unquoteResults=True, endQuoteChar=None, convertWhitespaceEscapes=True): - super(QuotedString,self).__init__() - - # remove white space from quote chars - wont work anyway - quoteChar = quoteChar.strip() - if not quoteChar: - warnings.warn("quoteChar cannot be the empty string",SyntaxWarning,stacklevel=2) - raise SyntaxError() - - if endQuoteChar is None: - endQuoteChar = quoteChar - else: - endQuoteChar = endQuoteChar.strip() - if not endQuoteChar: - warnings.warn("endQuoteChar cannot be the empty string",SyntaxWarning,stacklevel=2) - raise SyntaxError() - - self.quoteChar = quoteChar - self.quoteCharLen = len(quoteChar) - self.firstQuoteChar = quoteChar[0] - self.endQuoteChar = endQuoteChar - self.endQuoteCharLen = len(endQuoteChar) - self.escChar = escChar - self.escQuote = escQuote - self.unquoteResults = unquoteResults - self.convertWhitespaceEscapes = convertWhitespaceEscapes - - if multiline: - self.flags = re.MULTILINE | re.DOTALL - self.pattern = r'%s(?:[^%s%s]' % \ - ( re.escape(self.quoteChar), - _escapeRegexRangeChars(self.endQuoteChar[0]), - (escChar is not None and _escapeRegexRangeChars(escChar) or '') ) - else: - self.flags = 0 - self.pattern = r'%s(?:[^%s\n\r%s]' % \ - ( re.escape(self.quoteChar), - _escapeRegexRangeChars(self.endQuoteChar[0]), - (escChar is not None and _escapeRegexRangeChars(escChar) or '') ) - if len(self.endQuoteChar) > 1: - self.pattern += ( - '|(?:' + ')|(?:'.join("%s[^%s]" % (re.escape(self.endQuoteChar[:i]), - _escapeRegexRangeChars(self.endQuoteChar[i])) - for i in range(len(self.endQuoteChar)-1,0,-1)) + ')' - ) - if escQuote: - self.pattern += (r'|(?:%s)' % re.escape(escQuote)) - if escChar: - self.pattern += (r'|(?:%s.)' % re.escape(escChar)) - self.escCharReplacePattern = re.escape(self.escChar)+"(.)" - self.pattern += (r')*%s' % re.escape(self.endQuoteChar)) - - try: - self.re = re.compile(self.pattern, self.flags) - self.reString = self.pattern - except sre_constants.error: - warnings.warn("invalid pattern (%s) passed to Regex" % self.pattern, - SyntaxWarning, stacklevel=2) - raise - - self.name = _ustr(self) - self.errmsg = "Expected " + self.name - self.mayIndexError = False - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - result = instring[loc] == self.firstQuoteChar and self.re.match(instring,loc) or None - if not result: - raise ParseException(instring, loc, self.errmsg, self) - - loc = result.end() - ret = result.group() - - if self.unquoteResults: - - # strip off quotes - ret = ret[self.quoteCharLen:-self.endQuoteCharLen] - - if isinstance(ret,basestring): - # replace escaped whitespace - if '\\' in ret and self.convertWhitespaceEscapes: - ws_map = { - r'\t' : '\t', - r'\n' : '\n', - r'\f' : '\f', - r'\r' : '\r', - } - for wslit,wschar in ws_map.items(): - ret = ret.replace(wslit, wschar) - - # replace escaped characters - if self.escChar: - ret = re.sub(self.escCharReplacePattern, r"\g<1>", ret) - - # replace escaped quotes - if self.escQuote: - ret = ret.replace(self.escQuote, self.endQuoteChar) - - return loc, ret - - def __str__( self ): - try: - return super(QuotedString,self).__str__() - except Exception: - pass - - if self.strRepr is None: - self.strRepr = "quoted string, starting with %s ending with %s" % (self.quoteChar, self.endQuoteChar) - - return self.strRepr - - -class CharsNotIn(Token): - """ - Token for matching words composed of characters I{not} in a given set (will - include whitespace in matched characters if not listed in the provided exclusion set - see example). - Defined with string containing all disallowed characters, and an optional - minimum, maximum, and/or exact length. The default value for C{min} is 1 (a - minimum value < 1 is not valid); the default values for C{max} and C{exact} - are 0, meaning no maximum or exact length restriction. - - Example:: - # define a comma-separated-value as anything that is not a ',' - csv_value = CharsNotIn(',') - print(delimitedList(csv_value).parseString("dkls,lsdkjf,s12 34,@!#,213")) - prints:: - ['dkls', 'lsdkjf', 's12 34', '@!#', '213'] - """ - def __init__( self, notChars, min=1, max=0, exact=0 ): - super(CharsNotIn,self).__init__() - self.skipWhitespace = False - self.notChars = notChars - - if min < 1: - raise ValueError("cannot specify a minimum length < 1; use Optional(CharsNotIn()) if zero-length char group is permitted") - - self.minLen = min - - if max > 0: - self.maxLen = max - else: - self.maxLen = _MAX_INT - - if exact > 0: - self.maxLen = exact - self.minLen = exact - - self.name = _ustr(self) - self.errmsg = "Expected " + self.name - self.mayReturnEmpty = ( self.minLen == 0 ) - self.mayIndexError = False - - def parseImpl( self, instring, loc, doActions=True ): - if instring[loc] in self.notChars: - raise ParseException(instring, loc, self.errmsg, self) - - start = loc - loc += 1 - notchars = self.notChars - maxlen = min( start+self.maxLen, len(instring) ) - while loc < maxlen and \ - (instring[loc] not in notchars): - loc += 1 - - if loc - start < self.minLen: - raise ParseException(instring, loc, self.errmsg, self) - - return loc, instring[start:loc] - - def __str__( self ): - try: - return super(CharsNotIn, self).__str__() - except Exception: - pass - - if self.strRepr is None: - if len(self.notChars) > 4: - self.strRepr = "!W:(%s...)" % self.notChars[:4] - else: - self.strRepr = "!W:(%s)" % self.notChars - - return self.strRepr - -class White(Token): - """ - Special matching class for matching whitespace. Normally, whitespace is ignored - by pyparsing grammars. This class is included when some whitespace structures - are significant. Define with a string containing the whitespace characters to be - matched; default is C{" \\t\\r\\n"}. Also takes optional C{min}, C{max}, and C{exact} arguments, - as defined for the C{L{Word}} class. - """ - whiteStrs = { - " " : "<SPC>", - "\t": "<TAB>", - "\n": "<LF>", - "\r": "<CR>", - "\f": "<FF>", - } - def __init__(self, ws=" \t\r\n", min=1, max=0, exact=0): - super(White,self).__init__() - self.matchWhite = ws - self.setWhitespaceChars( "".join(c for c in self.whiteChars if c not in self.matchWhite) ) - #~ self.leaveWhitespace() - self.name = ("".join(White.whiteStrs[c] for c in self.matchWhite)) - self.mayReturnEmpty = True - self.errmsg = "Expected " + self.name - - self.minLen = min - - if max > 0: - self.maxLen = max - else: - self.maxLen = _MAX_INT - - if exact > 0: - self.maxLen = exact - self.minLen = exact - - def parseImpl( self, instring, loc, doActions=True ): - if not(instring[ loc ] in self.matchWhite): - raise ParseException(instring, loc, self.errmsg, self) - start = loc - loc += 1 - maxloc = start + self.maxLen - maxloc = min( maxloc, len(instring) ) - while loc < maxloc and instring[loc] in self.matchWhite: - loc += 1 - - if loc - start < self.minLen: - raise ParseException(instring, loc, self.errmsg, self) - - return loc, instring[start:loc] - - -class _PositionToken(Token): - def __init__( self ): - super(_PositionToken,self).__init__() - self.name=self.__class__.__name__ - self.mayReturnEmpty = True - self.mayIndexError = False - -class GoToColumn(_PositionToken): - """ - Token to advance to a specific column of input text; useful for tabular report scraping. - """ - def __init__( self, colno ): - super(GoToColumn,self).__init__() - self.col = colno - - def preParse( self, instring, loc ): - if col(loc,instring) != self.col: - instrlen = len(instring) - if self.ignoreExprs: - loc = self._skipIgnorables( instring, loc ) - while loc < instrlen and instring[loc].isspace() and col( loc, instring ) != self.col : - loc += 1 - return loc - - def parseImpl( self, instring, loc, doActions=True ): - thiscol = col( loc, instring ) - if thiscol > self.col: - raise ParseException( instring, loc, "Text not in expected column", self ) - newloc = loc + self.col - thiscol - ret = instring[ loc: newloc ] - return newloc, ret - - -class LineStart(_PositionToken): - """ - Matches if current position is at the beginning of a line within the parse string - - Example:: - - test = '''\ - AAA this line - AAA and this line - AAA but not this one - B AAA and definitely not this one - ''' - - for t in (LineStart() + 'AAA' + restOfLine).searchString(test): - print(t) - - Prints:: - ['AAA', ' this line'] - ['AAA', ' and this line'] - - """ - def __init__( self ): - super(LineStart,self).__init__() - self.errmsg = "Expected start of line" - - def parseImpl( self, instring, loc, doActions=True ): - if col(loc, instring) == 1: - return loc, [] - raise ParseException(instring, loc, self.errmsg, self) - -class LineEnd(_PositionToken): - """ - Matches if current position is at the end of a line within the parse string - """ - def __init__( self ): - super(LineEnd,self).__init__() - self.setWhitespaceChars( ParserElement.DEFAULT_WHITE_CHARS.replace("\n","") ) - self.errmsg = "Expected end of line" - - def parseImpl( self, instring, loc, doActions=True ): - if loc<len(instring): - if instring[loc] == "\n": - return loc+1, "\n" - else: - raise ParseException(instring, loc, self.errmsg, self) - elif loc == len(instring): - return loc+1, [] - else: - raise ParseException(instring, loc, self.errmsg, self) - -class StringStart(_PositionToken): - """ - Matches if current position is at the beginning of the parse string - """ - def __init__( self ): - super(StringStart,self).__init__() - self.errmsg = "Expected start of text" - - def parseImpl( self, instring, loc, doActions=True ): - if loc != 0: - # see if entire string up to here is just whitespace and ignoreables - if loc != self.preParse( instring, 0 ): - raise ParseException(instring, loc, self.errmsg, self) - return loc, [] - -class StringEnd(_PositionToken): - """ - Matches if current position is at the end of the parse string - """ - def __init__( self ): - super(StringEnd,self).__init__() - self.errmsg = "Expected end of text" - - def parseImpl( self, instring, loc, doActions=True ): - if loc < len(instring): - raise ParseException(instring, loc, self.errmsg, self) - elif loc == len(instring): - return loc+1, [] - elif loc > len(instring): - return loc, [] - else: - raise ParseException(instring, loc, self.errmsg, self) - -class WordStart(_PositionToken): - """ - Matches if the current position is at the beginning of a Word, and - is not preceded by any character in a given set of C{wordChars} - (default=C{printables}). To emulate the C{\b} behavior of regular expressions, - use C{WordStart(alphanums)}. C{WordStart} will also match at the beginning of - the string being parsed, or at the beginning of a line. - """ - def __init__(self, wordChars = printables): - super(WordStart,self).__init__() - self.wordChars = set(wordChars) - self.errmsg = "Not at the start of a word" - - def parseImpl(self, instring, loc, doActions=True ): - if loc != 0: - if (instring[loc-1] in self.wordChars or - instring[loc] not in self.wordChars): - raise ParseException(instring, loc, self.errmsg, self) - return loc, [] - -class WordEnd(_PositionToken): - """ - Matches if the current position is at the end of a Word, and - is not followed by any character in a given set of C{wordChars} - (default=C{printables}). To emulate the C{\b} behavior of regular expressions, - use C{WordEnd(alphanums)}. C{WordEnd} will also match at the end of - the string being parsed, or at the end of a line. - """ - def __init__(self, wordChars = printables): - super(WordEnd,self).__init__() - self.wordChars = set(wordChars) - self.skipWhitespace = False - self.errmsg = "Not at the end of a word" - - def parseImpl(self, instring, loc, doActions=True ): - instrlen = len(instring) - if instrlen>0 and loc<instrlen: - if (instring[loc] in self.wordChars or - instring[loc-1] not in self.wordChars): - raise ParseException(instring, loc, self.errmsg, self) - return loc, [] - - -class ParseExpression(ParserElement): - """ - Abstract subclass of ParserElement, for combining and post-processing parsed tokens. - """ - def __init__( self, exprs, savelist = False ): - super(ParseExpression,self).__init__(savelist) - if isinstance( exprs, _generatorType ): - exprs = list(exprs) - - if isinstance( exprs, basestring ): - self.exprs = [ ParserElement._literalStringClass( exprs ) ] - elif isinstance( exprs, collections.Iterable ): - exprs = list(exprs) - # if sequence of strings provided, wrap with Literal - if all(isinstance(expr, basestring) for expr in exprs): - exprs = map(ParserElement._literalStringClass, exprs) - self.exprs = list(exprs) - else: - try: - self.exprs = list( exprs ) - except TypeError: - self.exprs = [ exprs ] - self.callPreparse = False - - def __getitem__( self, i ): - return self.exprs[i] - - def append( self, other ): - self.exprs.append( other ) - self.strRepr = None - return self - - def leaveWhitespace( self ): - """Extends C{leaveWhitespace} defined in base class, and also invokes C{leaveWhitespace} on - all contained expressions.""" - self.skipWhitespace = False - self.exprs = [ e.copy() for e in self.exprs ] - for e in self.exprs: - e.leaveWhitespace() - return self - - def ignore( self, other ): - if isinstance( other, Suppress ): - if other not in self.ignoreExprs: - super( ParseExpression, self).ignore( other ) - for e in self.exprs: - e.ignore( self.ignoreExprs[-1] ) - else: - super( ParseExpression, self).ignore( other ) - for e in self.exprs: - e.ignore( self.ignoreExprs[-1] ) - return self - - def __str__( self ): - try: - return super(ParseExpression,self).__str__() - except Exception: - pass - - if self.strRepr is None: - self.strRepr = "%s:(%s)" % ( self.__class__.__name__, _ustr(self.exprs) ) - return self.strRepr - - def streamline( self ): - super(ParseExpression,self).streamline() - - for e in self.exprs: - e.streamline() - - # collapse nested And's of the form And( And( And( a,b), c), d) to And( a,b,c,d ) - # but only if there are no parse actions or resultsNames on the nested And's - # (likewise for Or's and MatchFirst's) - if ( len(self.exprs) == 2 ): - other = self.exprs[0] - if ( isinstance( other, self.__class__ ) and - not(other.parseAction) and - other.resultsName is None and - not other.debug ): - self.exprs = other.exprs[:] + [ self.exprs[1] ] - self.strRepr = None - self.mayReturnEmpty |= other.mayReturnEmpty - self.mayIndexError |= other.mayIndexError - - other = self.exprs[-1] - if ( isinstance( other, self.__class__ ) and - not(other.parseAction) and - other.resultsName is None and - not other.debug ): - self.exprs = self.exprs[:-1] + other.exprs[:] - self.strRepr = None - self.mayReturnEmpty |= other.mayReturnEmpty - self.mayIndexError |= other.mayIndexError - - self.errmsg = "Expected " + _ustr(self) - - return self - - def setResultsName( self, name, listAllMatches=False ): - ret = super(ParseExpression,self).setResultsName(name,listAllMatches) - return ret - - def validate( self, validateTrace=[] ): - tmp = validateTrace[:]+[self] - for e in self.exprs: - e.validate(tmp) - self.checkRecursion( [] ) - - def copy(self): - ret = super(ParseExpression,self).copy() - ret.exprs = [e.copy() for e in self.exprs] - return ret - -class And(ParseExpression): - """ - Requires all given C{ParseExpression}s to be found in the given order. - Expressions may be separated by whitespace. - May be constructed using the C{'+'} operator. - May also be constructed using the C{'-'} operator, which will suppress backtracking. - - Example:: - integer = Word(nums) - name_expr = OneOrMore(Word(alphas)) - - expr = And([integer("id"),name_expr("name"),integer("age")]) - # more easily written as: - expr = integer("id") + name_expr("name") + integer("age") - """ - - class _ErrorStop(Empty): - def __init__(self, *args, **kwargs): - super(And._ErrorStop,self).__init__(*args, **kwargs) - self.name = '-' - self.leaveWhitespace() - - def __init__( self, exprs, savelist = True ): - super(And,self).__init__(exprs, savelist) - self.mayReturnEmpty = all(e.mayReturnEmpty for e in self.exprs) - self.setWhitespaceChars( self.exprs[0].whiteChars ) - self.skipWhitespace = self.exprs[0].skipWhitespace - self.callPreparse = True - - def parseImpl( self, instring, loc, doActions=True ): - # pass False as last arg to _parse for first element, since we already - # pre-parsed the string as part of our And pre-parsing - loc, resultlist = self.exprs[0]._parse( instring, loc, doActions, callPreParse=False ) - errorStop = False - for e in self.exprs[1:]: - if isinstance(e, And._ErrorStop): - errorStop = True - continue - if errorStop: - try: - loc, exprtokens = e._parse( instring, loc, doActions ) - except ParseSyntaxException: - raise - except ParseBaseException as pe: - pe.__traceback__ = None - raise ParseSyntaxException._from_exception(pe) - except IndexError: - raise ParseSyntaxException(instring, len(instring), self.errmsg, self) - else: - loc, exprtokens = e._parse( instring, loc, doActions ) - if exprtokens or exprtokens.haskeys(): - resultlist += exprtokens - return loc, resultlist - - def __iadd__(self, other ): - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - return self.append( other ) #And( [ self, other ] ) - - def checkRecursion( self, parseElementList ): - subRecCheckList = parseElementList[:] + [ self ] - for e in self.exprs: - e.checkRecursion( subRecCheckList ) - if not e.mayReturnEmpty: - break - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "{" + " ".join(_ustr(e) for e in self.exprs) + "}" - - return self.strRepr - - -class Or(ParseExpression): - """ - Requires that at least one C{ParseExpression} is found. - If two expressions match, the expression that matches the longest string will be used. - May be constructed using the C{'^'} operator. - - Example:: - # construct Or using '^' operator - - number = Word(nums) ^ Combine(Word(nums) + '.' + Word(nums)) - print(number.searchString("123 3.1416 789")) - prints:: - [['123'], ['3.1416'], ['789']] - """ - def __init__( self, exprs, savelist = False ): - super(Or,self).__init__(exprs, savelist) - if self.exprs: - self.mayReturnEmpty = any(e.mayReturnEmpty for e in self.exprs) - else: - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - maxExcLoc = -1 - maxException = None - matches = [] - for e in self.exprs: - try: - loc2 = e.tryParse( instring, loc ) - except ParseException as err: - err.__traceback__ = None - if err.loc > maxExcLoc: - maxException = err - maxExcLoc = err.loc - except IndexError: - if len(instring) > maxExcLoc: - maxException = ParseException(instring,len(instring),e.errmsg,self) - maxExcLoc = len(instring) - else: - # save match among all matches, to retry longest to shortest - matches.append((loc2, e)) - - if matches: - matches.sort(key=lambda x: -x[0]) - for _,e in matches: - try: - return e._parse( instring, loc, doActions ) - except ParseException as err: - err.__traceback__ = None - if err.loc > maxExcLoc: - maxException = err - maxExcLoc = err.loc - - if maxException is not None: - maxException.msg = self.errmsg - raise maxException - else: - raise ParseException(instring, loc, "no defined alternatives to match", self) - - - def __ixor__(self, other ): - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - return self.append( other ) #Or( [ self, other ] ) - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "{" + " ^ ".join(_ustr(e) for e in self.exprs) + "}" - - return self.strRepr - - def checkRecursion( self, parseElementList ): - subRecCheckList = parseElementList[:] + [ self ] - for e in self.exprs: - e.checkRecursion( subRecCheckList ) - - -class MatchFirst(ParseExpression): - """ - Requires that at least one C{ParseExpression} is found. - If two expressions match, the first one listed is the one that will match. - May be constructed using the C{'|'} operator. - - Example:: - # construct MatchFirst using '|' operator - - # watch the order of expressions to match - number = Word(nums) | Combine(Word(nums) + '.' + Word(nums)) - print(number.searchString("123 3.1416 789")) # Fail! -> [['123'], ['3'], ['1416'], ['789']] - - # put more selective expression first - number = Combine(Word(nums) + '.' + Word(nums)) | Word(nums) - print(number.searchString("123 3.1416 789")) # Better -> [['123'], ['3.1416'], ['789']] - """ - def __init__( self, exprs, savelist = False ): - super(MatchFirst,self).__init__(exprs, savelist) - if self.exprs: - self.mayReturnEmpty = any(e.mayReturnEmpty for e in self.exprs) - else: - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - maxExcLoc = -1 - maxException = None - for e in self.exprs: - try: - ret = e._parse( instring, loc, doActions ) - return ret - except ParseException as err: - if err.loc > maxExcLoc: - maxException = err - maxExcLoc = err.loc - except IndexError: - if len(instring) > maxExcLoc: - maxException = ParseException(instring,len(instring),e.errmsg,self) - maxExcLoc = len(instring) - - # only got here if no expression matched, raise exception for match that made it the furthest - else: - if maxException is not None: - maxException.msg = self.errmsg - raise maxException - else: - raise ParseException(instring, loc, "no defined alternatives to match", self) - - def __ior__(self, other ): - if isinstance( other, basestring ): - other = ParserElement._literalStringClass( other ) - return self.append( other ) #MatchFirst( [ self, other ] ) - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "{" + " | ".join(_ustr(e) for e in self.exprs) + "}" - - return self.strRepr - - def checkRecursion( self, parseElementList ): - subRecCheckList = parseElementList[:] + [ self ] - for e in self.exprs: - e.checkRecursion( subRecCheckList ) - - -class Each(ParseExpression): - """ - Requires all given C{ParseExpression}s to be found, but in any order. - Expressions may be separated by whitespace. - May be constructed using the C{'&'} operator. - - Example:: - color = oneOf("RED ORANGE YELLOW GREEN BLUE PURPLE BLACK WHITE BROWN") - shape_type = oneOf("SQUARE CIRCLE TRIANGLE STAR HEXAGON OCTAGON") - integer = Word(nums) - shape_attr = "shape:" + shape_type("shape") - posn_attr = "posn:" + Group(integer("x") + ',' + integer("y"))("posn") - color_attr = "color:" + color("color") - size_attr = "size:" + integer("size") - - # use Each (using operator '&') to accept attributes in any order - # (shape and posn are required, color and size are optional) - shape_spec = shape_attr & posn_attr & Optional(color_attr) & Optional(size_attr) - - shape_spec.runTests(''' - shape: SQUARE color: BLACK posn: 100, 120 - shape: CIRCLE size: 50 color: BLUE posn: 50,80 - color:GREEN size:20 shape:TRIANGLE posn:20,40 - ''' - ) - prints:: - shape: SQUARE color: BLACK posn: 100, 120 - ['shape:', 'SQUARE', 'color:', 'BLACK', 'posn:', ['100', ',', '120']] - - color: BLACK - - posn: ['100', ',', '120'] - - x: 100 - - y: 120 - - shape: SQUARE - - - shape: CIRCLE size: 50 color: BLUE posn: 50,80 - ['shape:', 'CIRCLE', 'size:', '50', 'color:', 'BLUE', 'posn:', ['50', ',', '80']] - - color: BLUE - - posn: ['50', ',', '80'] - - x: 50 - - y: 80 - - shape: CIRCLE - - size: 50 - - - color: GREEN size: 20 shape: TRIANGLE posn: 20,40 - ['color:', 'GREEN', 'size:', '20', 'shape:', 'TRIANGLE', 'posn:', ['20', ',', '40']] - - color: GREEN - - posn: ['20', ',', '40'] - - x: 20 - - y: 40 - - shape: TRIANGLE - - size: 20 - """ - def __init__( self, exprs, savelist = True ): - super(Each,self).__init__(exprs, savelist) - self.mayReturnEmpty = all(e.mayReturnEmpty for e in self.exprs) - self.skipWhitespace = True - self.initExprGroups = True - - def parseImpl( self, instring, loc, doActions=True ): - if self.initExprGroups: - self.opt1map = dict((id(e.expr),e) for e in self.exprs if isinstance(e,Optional)) - opt1 = [ e.expr for e in self.exprs if isinstance(e,Optional) ] - opt2 = [ e for e in self.exprs if e.mayReturnEmpty and not isinstance(e,Optional)] - self.optionals = opt1 + opt2 - self.multioptionals = [ e.expr for e in self.exprs if isinstance(e,ZeroOrMore) ] - self.multirequired = [ e.expr for e in self.exprs if isinstance(e,OneOrMore) ] - self.required = [ e for e in self.exprs if not isinstance(e,(Optional,ZeroOrMore,OneOrMore)) ] - self.required += self.multirequired - self.initExprGroups = False - tmpLoc = loc - tmpReqd = self.required[:] - tmpOpt = self.optionals[:] - matchOrder = [] - - keepMatching = True - while keepMatching: - tmpExprs = tmpReqd + tmpOpt + self.multioptionals + self.multirequired - failed = [] - for e in tmpExprs: - try: - tmpLoc = e.tryParse( instring, tmpLoc ) - except ParseException: - failed.append(e) - else: - matchOrder.append(self.opt1map.get(id(e),e)) - if e in tmpReqd: - tmpReqd.remove(e) - elif e in tmpOpt: - tmpOpt.remove(e) - if len(failed) == len(tmpExprs): - keepMatching = False - - if tmpReqd: - missing = ", ".join(_ustr(e) for e in tmpReqd) - raise ParseException(instring,loc,"Missing one or more required elements (%s)" % missing ) - - # add any unmatched Optionals, in case they have default values defined - matchOrder += [e for e in self.exprs if isinstance(e,Optional) and e.expr in tmpOpt] - - resultlist = [] - for e in matchOrder: - loc,results = e._parse(instring,loc,doActions) - resultlist.append(results) - - finalResults = sum(resultlist, ParseResults([])) - return loc, finalResults - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "{" + " & ".join(_ustr(e) for e in self.exprs) + "}" - - return self.strRepr - - def checkRecursion( self, parseElementList ): - subRecCheckList = parseElementList[:] + [ self ] - for e in self.exprs: - e.checkRecursion( subRecCheckList ) - - -class ParseElementEnhance(ParserElement): - """ - Abstract subclass of C{ParserElement}, for combining and post-processing parsed tokens. - """ - def __init__( self, expr, savelist=False ): - super(ParseElementEnhance,self).__init__(savelist) - if isinstance( expr, basestring ): - if issubclass(ParserElement._literalStringClass, Token): - expr = ParserElement._literalStringClass(expr) - else: - expr = ParserElement._literalStringClass(Literal(expr)) - self.expr = expr - self.strRepr = None - if expr is not None: - self.mayIndexError = expr.mayIndexError - self.mayReturnEmpty = expr.mayReturnEmpty - self.setWhitespaceChars( expr.whiteChars ) - self.skipWhitespace = expr.skipWhitespace - self.saveAsList = expr.saveAsList - self.callPreparse = expr.callPreparse - self.ignoreExprs.extend(expr.ignoreExprs) - - def parseImpl( self, instring, loc, doActions=True ): - if self.expr is not None: - return self.expr._parse( instring, loc, doActions, callPreParse=False ) - else: - raise ParseException("",loc,self.errmsg,self) - - def leaveWhitespace( self ): - self.skipWhitespace = False - self.expr = self.expr.copy() - if self.expr is not None: - self.expr.leaveWhitespace() - return self - - def ignore( self, other ): - if isinstance( other, Suppress ): - if other not in self.ignoreExprs: - super( ParseElementEnhance, self).ignore( other ) - if self.expr is not None: - self.expr.ignore( self.ignoreExprs[-1] ) - else: - super( ParseElementEnhance, self).ignore( other ) - if self.expr is not None: - self.expr.ignore( self.ignoreExprs[-1] ) - return self - - def streamline( self ): - super(ParseElementEnhance,self).streamline() - if self.expr is not None: - self.expr.streamline() - return self - - def checkRecursion( self, parseElementList ): - if self in parseElementList: - raise RecursiveGrammarException( parseElementList+[self] ) - subRecCheckList = parseElementList[:] + [ self ] - if self.expr is not None: - self.expr.checkRecursion( subRecCheckList ) - - def validate( self, validateTrace=[] ): - tmp = validateTrace[:]+[self] - if self.expr is not None: - self.expr.validate(tmp) - self.checkRecursion( [] ) - - def __str__( self ): - try: - return super(ParseElementEnhance,self).__str__() - except Exception: - pass - - if self.strRepr is None and self.expr is not None: - self.strRepr = "%s:(%s)" % ( self.__class__.__name__, _ustr(self.expr) ) - return self.strRepr - - -class FollowedBy(ParseElementEnhance): - """ - Lookahead matching of the given parse expression. C{FollowedBy} - does I{not} advance the parsing position within the input string, it only - verifies that the specified parse expression matches at the current - position. C{FollowedBy} always returns a null token list. - - Example:: - # use FollowedBy to match a label only if it is followed by a ':' - data_word = Word(alphas) - label = data_word + FollowedBy(':') - attr_expr = Group(label + Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join)) - - OneOrMore(attr_expr).parseString("shape: SQUARE color: BLACK posn: upper left").pprint() - prints:: - [['shape', 'SQUARE'], ['color', 'BLACK'], ['posn', 'upper left']] - """ - def __init__( self, expr ): - super(FollowedBy,self).__init__(expr) - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - self.expr.tryParse( instring, loc ) - return loc, [] - - -class NotAny(ParseElementEnhance): - """ - Lookahead to disallow matching with the given parse expression. C{NotAny} - does I{not} advance the parsing position within the input string, it only - verifies that the specified parse expression does I{not} match at the current - position. Also, C{NotAny} does I{not} skip over leading whitespace. C{NotAny} - always returns a null token list. May be constructed using the '~' operator. - - Example:: - - """ - def __init__( self, expr ): - super(NotAny,self).__init__(expr) - #~ self.leaveWhitespace() - self.skipWhitespace = False # do NOT use self.leaveWhitespace(), don't want to propagate to exprs - self.mayReturnEmpty = True - self.errmsg = "Found unwanted token, "+_ustr(self.expr) - - def parseImpl( self, instring, loc, doActions=True ): - if self.expr.canParseNext(instring, loc): - raise ParseException(instring, loc, self.errmsg, self) - return loc, [] - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "~{" + _ustr(self.expr) + "}" - - return self.strRepr - -class _MultipleMatch(ParseElementEnhance): - def __init__( self, expr, stopOn=None): - super(_MultipleMatch, self).__init__(expr) - self.saveAsList = True - ender = stopOn - if isinstance(ender, basestring): - ender = ParserElement._literalStringClass(ender) - self.not_ender = ~ender if ender is not None else None - - def parseImpl( self, instring, loc, doActions=True ): - self_expr_parse = self.expr._parse - self_skip_ignorables = self._skipIgnorables - check_ender = self.not_ender is not None - if check_ender: - try_not_ender = self.not_ender.tryParse - - # must be at least one (but first see if we are the stopOn sentinel; - # if so, fail) - if check_ender: - try_not_ender(instring, loc) - loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False ) - try: - hasIgnoreExprs = (not not self.ignoreExprs) - while 1: - if check_ender: - try_not_ender(instring, loc) - if hasIgnoreExprs: - preloc = self_skip_ignorables( instring, loc ) - else: - preloc = loc - loc, tmptokens = self_expr_parse( instring, preloc, doActions ) - if tmptokens or tmptokens.haskeys(): - tokens += tmptokens - except (ParseException,IndexError): - pass - - return loc, tokens - -class OneOrMore(_MultipleMatch): - """ - Repetition of one or more of the given expression. - - Parameters: - - expr - expression that must match one or more times - - stopOn - (default=C{None}) - expression for a terminating sentinel - (only required if the sentinel would ordinarily match the repetition - expression) - - Example:: - data_word = Word(alphas) - label = data_word + FollowedBy(':') - attr_expr = Group(label + Suppress(':') + OneOrMore(data_word).setParseAction(' '.join)) - - text = "shape: SQUARE posn: upper left color: BLACK" - OneOrMore(attr_expr).parseString(text).pprint() # Fail! read 'color' as data instead of next label -> [['shape', 'SQUARE color']] - - # use stopOn attribute for OneOrMore to avoid reading label string as part of the data - attr_expr = Group(label + Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join)) - OneOrMore(attr_expr).parseString(text).pprint() # Better -> [['shape', 'SQUARE'], ['posn', 'upper left'], ['color', 'BLACK']] - - # could also be written as - (attr_expr * (1,)).parseString(text).pprint() - """ - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "{" + _ustr(self.expr) + "}..." - - return self.strRepr - -class ZeroOrMore(_MultipleMatch): - """ - Optional repetition of zero or more of the given expression. - - Parameters: - - expr - expression that must match zero or more times - - stopOn - (default=C{None}) - expression for a terminating sentinel - (only required if the sentinel would ordinarily match the repetition - expression) - - Example: similar to L{OneOrMore} - """ - def __init__( self, expr, stopOn=None): - super(ZeroOrMore,self).__init__(expr, stopOn=stopOn) - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - try: - return super(ZeroOrMore, self).parseImpl(instring, loc, doActions) - except (ParseException,IndexError): - return loc, [] - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "[" + _ustr(self.expr) + "]..." - - return self.strRepr - -class _NullToken(object): - def __bool__(self): - return False - __nonzero__ = __bool__ - def __str__(self): - return "" - -_optionalNotMatched = _NullToken() -class Optional(ParseElementEnhance): - """ - Optional matching of the given expression. - - Parameters: - - expr - expression that must match zero or more times - - default (optional) - value to be returned if the optional expression is not found. - - Example:: - # US postal code can be a 5-digit zip, plus optional 4-digit qualifier - zip = Combine(Word(nums, exact=5) + Optional('-' + Word(nums, exact=4))) - zip.runTests(''' - # traditional ZIP code - 12345 - - # ZIP+4 form - 12101-0001 - - # invalid ZIP - 98765- - ''') - prints:: - # traditional ZIP code - 12345 - ['12345'] - - # ZIP+4 form - 12101-0001 - ['12101-0001'] - - # invalid ZIP - 98765- - ^ - FAIL: Expected end of text (at char 5), (line:1, col:6) - """ - def __init__( self, expr, default=_optionalNotMatched ): - super(Optional,self).__init__( expr, savelist=False ) - self.saveAsList = self.expr.saveAsList - self.defaultValue = default - self.mayReturnEmpty = True - - def parseImpl( self, instring, loc, doActions=True ): - try: - loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False ) - except (ParseException,IndexError): - if self.defaultValue is not _optionalNotMatched: - if self.expr.resultsName: - tokens = ParseResults([ self.defaultValue ]) - tokens[self.expr.resultsName] = self.defaultValue - else: - tokens = [ self.defaultValue ] - else: - tokens = [] - return loc, tokens - - def __str__( self ): - if hasattr(self,"name"): - return self.name - - if self.strRepr is None: - self.strRepr = "[" + _ustr(self.expr) + "]" - - return self.strRepr - -class SkipTo(ParseElementEnhance): - """ - Token for skipping over all undefined text until the matched expression is found. - - Parameters: - - expr - target expression marking the end of the data to be skipped - - include - (default=C{False}) if True, the target expression is also parsed - (the skipped text and target expression are returned as a 2-element list). - - ignore - (default=C{None}) used to define grammars (typically quoted strings and - comments) that might contain false matches to the target expression - - failOn - (default=C{None}) define expressions that are not allowed to be - included in the skipped test; if found before the target expression is found, - the SkipTo is not a match - - Example:: - report = ''' - Outstanding Issues Report - 1 Jan 2000 - - # | Severity | Description | Days Open - -----+----------+-------------------------------------------+----------- - 101 | Critical | Intermittent system crash | 6 - 94 | Cosmetic | Spelling error on Login ('log|n') | 14 - 79 | Minor | System slow when running too many reports | 47 - ''' - integer = Word(nums) - SEP = Suppress('|') - # use SkipTo to simply match everything up until the next SEP - # - ignore quoted strings, so that a '|' character inside a quoted string does not match - # - parse action will call token.strip() for each matched token, i.e., the description body - string_data = SkipTo(SEP, ignore=quotedString) - string_data.setParseAction(tokenMap(str.strip)) - ticket_expr = (integer("issue_num") + SEP - + string_data("sev") + SEP - + string_data("desc") + SEP - + integer("days_open")) - - for tkt in ticket_expr.searchString(report): - print tkt.dump() - prints:: - ['101', 'Critical', 'Intermittent system crash', '6'] - - days_open: 6 - - desc: Intermittent system crash - - issue_num: 101 - - sev: Critical - ['94', 'Cosmetic', "Spelling error on Login ('log|n')", '14'] - - days_open: 14 - - desc: Spelling error on Login ('log|n') - - issue_num: 94 - - sev: Cosmetic - ['79', 'Minor', 'System slow when running too many reports', '47'] - - days_open: 47 - - desc: System slow when running too many reports - - issue_num: 79 - - sev: Minor - """ - def __init__( self, other, include=False, ignore=None, failOn=None ): - super( SkipTo, self ).__init__( other ) - self.ignoreExpr = ignore - self.mayReturnEmpty = True - self.mayIndexError = False - self.includeMatch = include - self.asList = False - if isinstance(failOn, basestring): - self.failOn = ParserElement._literalStringClass(failOn) - else: - self.failOn = failOn - self.errmsg = "No match found for "+_ustr(self.expr) - - def parseImpl( self, instring, loc, doActions=True ): - startloc = loc - instrlen = len(instring) - expr = self.expr - expr_parse = self.expr._parse - self_failOn_canParseNext = self.failOn.canParseNext if self.failOn is not None else None - self_ignoreExpr_tryParse = self.ignoreExpr.tryParse if self.ignoreExpr is not None else None - - tmploc = loc - while tmploc <= instrlen: - if self_failOn_canParseNext is not None: - # break if failOn expression matches - if self_failOn_canParseNext(instring, tmploc): - break - - if self_ignoreExpr_tryParse is not None: - # advance past ignore expressions - while 1: - try: - tmploc = self_ignoreExpr_tryParse(instring, tmploc) - except ParseBaseException: - break - - try: - expr_parse(instring, tmploc, doActions=False, callPreParse=False) - except (ParseException, IndexError): - # no match, advance loc in string - tmploc += 1 - else: - # matched skipto expr, done - break - - else: - # ran off the end of the input string without matching skipto expr, fail - raise ParseException(instring, loc, self.errmsg, self) - - # build up return values - loc = tmploc - skiptext = instring[startloc:loc] - skipresult = ParseResults(skiptext) - - if self.includeMatch: - loc, mat = expr_parse(instring,loc,doActions,callPreParse=False) - skipresult += mat - - return loc, skipresult - -class Forward(ParseElementEnhance): - """ - Forward declaration of an expression to be defined later - - used for recursive grammars, such as algebraic infix notation. - When the expression is known, it is assigned to the C{Forward} variable using the '<<' operator. - - Note: take care when assigning to C{Forward} not to overlook precedence of operators. - Specifically, '|' has a lower precedence than '<<', so that:: - fwdExpr << a | b | c - will actually be evaluated as:: - (fwdExpr << a) | b | c - thereby leaving b and c out as parseable alternatives. It is recommended that you - explicitly group the values inserted into the C{Forward}:: - fwdExpr << (a | b | c) - Converting to use the '<<=' operator instead will avoid this problem. - - See L{ParseResults.pprint} for an example of a recursive parser created using - C{Forward}. - """ - def __init__( self, other=None ): - super(Forward,self).__init__( other, savelist=False ) - - def __lshift__( self, other ): - if isinstance( other, basestring ): - other = ParserElement._literalStringClass(other) - self.expr = other - self.strRepr = None - self.mayIndexError = self.expr.mayIndexError - self.mayReturnEmpty = self.expr.mayReturnEmpty - self.setWhitespaceChars( self.expr.whiteChars ) - self.skipWhitespace = self.expr.skipWhitespace - self.saveAsList = self.expr.saveAsList - self.ignoreExprs.extend(self.expr.ignoreExprs) - return self - - def __ilshift__(self, other): - return self << other - - def leaveWhitespace( self ): - self.skipWhitespace = False - return self - - def streamline( self ): - if not self.streamlined: - self.streamlined = True - if self.expr is not None: - self.expr.streamline() - return self - - def validate( self, validateTrace=[] ): - if self not in validateTrace: - tmp = validateTrace[:]+[self] - if self.expr is not None: - self.expr.validate(tmp) - self.checkRecursion([]) - - def __str__( self ): - if hasattr(self,"name"): - return self.name - return self.__class__.__name__ + ": ..." - - # stubbed out for now - creates awful memory and perf issues - self._revertClass = self.__class__ - self.__class__ = _ForwardNoRecurse - try: - if self.expr is not None: - retString = _ustr(self.expr) - else: - retString = "None" - finally: - self.__class__ = self._revertClass - return self.__class__.__name__ + ": " + retString - - def copy(self): - if self.expr is not None: - return super(Forward,self).copy() - else: - ret = Forward() - ret <<= self - return ret - -class _ForwardNoRecurse(Forward): - def __str__( self ): - return "..." - -class TokenConverter(ParseElementEnhance): - """ - Abstract subclass of C{ParseExpression}, for converting parsed results. - """ - def __init__( self, expr, savelist=False ): - super(TokenConverter,self).__init__( expr )#, savelist ) - self.saveAsList = False - -class Combine(TokenConverter): - """ - Converter to concatenate all matching tokens to a single string. - By default, the matching patterns must also be contiguous in the input string; - this can be disabled by specifying C{'adjacent=False'} in the constructor. - - Example:: - real = Word(nums) + '.' + Word(nums) - print(real.parseString('3.1416')) # -> ['3', '.', '1416'] - # will also erroneously match the following - print(real.parseString('3. 1416')) # -> ['3', '.', '1416'] - - real = Combine(Word(nums) + '.' + Word(nums)) - print(real.parseString('3.1416')) # -> ['3.1416'] - # no match when there are internal spaces - print(real.parseString('3. 1416')) # -> Exception: Expected W:(0123...) - """ - def __init__( self, expr, joinString="", adjacent=True ): - super(Combine,self).__init__( expr ) - # suppress whitespace-stripping in contained parse expressions, but re-enable it on the Combine itself - if adjacent: - self.leaveWhitespace() - self.adjacent = adjacent - self.skipWhitespace = True - self.joinString = joinString - self.callPreparse = True - - def ignore( self, other ): - if self.adjacent: - ParserElement.ignore(self, other) - else: - super( Combine, self).ignore( other ) - return self - - def postParse( self, instring, loc, tokenlist ): - retToks = tokenlist.copy() - del retToks[:] - retToks += ParseResults([ "".join(tokenlist._asStringList(self.joinString)) ], modal=self.modalResults) - - if self.resultsName and retToks.haskeys(): - return [ retToks ] - else: - return retToks - -class Group(TokenConverter): - """ - Converter to return the matched tokens as a list - useful for returning tokens of C{L{ZeroOrMore}} and C{L{OneOrMore}} expressions. - - Example:: - ident = Word(alphas) - num = Word(nums) - term = ident | num - func = ident + Optional(delimitedList(term)) - print(func.parseString("fn a,b,100")) # -> ['fn', 'a', 'b', '100'] - - func = ident + Group(Optional(delimitedList(term))) - print(func.parseString("fn a,b,100")) # -> ['fn', ['a', 'b', '100']] - """ - def __init__( self, expr ): - super(Group,self).__init__( expr ) - self.saveAsList = True - - def postParse( self, instring, loc, tokenlist ): - return [ tokenlist ] - -class Dict(TokenConverter): - """ - Converter to return a repetitive expression as a list, but also as a dictionary. - Each element can also be referenced using the first token in the expression as its key. - Useful for tabular report scraping when the first column can be used as a item key. - - Example:: - data_word = Word(alphas) - label = data_word + FollowedBy(':') - attr_expr = Group(label + Suppress(':') + OneOrMore(data_word).setParseAction(' '.join)) - - text = "shape: SQUARE posn: upper left color: light blue texture: burlap" - attr_expr = (label + Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join)) - - # print attributes as plain groups - print(OneOrMore(attr_expr).parseString(text).dump()) - - # instead of OneOrMore(expr), parse using Dict(OneOrMore(Group(expr))) - Dict will auto-assign names - result = Dict(OneOrMore(Group(attr_expr))).parseString(text) - print(result.dump()) - - # access named fields as dict entries, or output as dict - print(result['shape']) - print(result.asDict()) - prints:: - ['shape', 'SQUARE', 'posn', 'upper left', 'color', 'light blue', 'texture', 'burlap'] - - [['shape', 'SQUARE'], ['posn', 'upper left'], ['color', 'light blue'], ['texture', 'burlap']] - - color: light blue - - posn: upper left - - shape: SQUARE - - texture: burlap - SQUARE - {'color': 'light blue', 'posn': 'upper left', 'texture': 'burlap', 'shape': 'SQUARE'} - See more examples at L{ParseResults} of accessing fields by results name. - """ - def __init__( self, expr ): - super(Dict,self).__init__( expr ) - self.saveAsList = True - - def postParse( self, instring, loc, tokenlist ): - for i,tok in enumerate(tokenlist): - if len(tok) == 0: - continue - ikey = tok[0] - if isinstance(ikey,int): - ikey = _ustr(tok[0]).strip() - if len(tok)==1: - tokenlist[ikey] = _ParseResultsWithOffset("",i) - elif len(tok)==2 and not isinstance(tok[1],ParseResults): - tokenlist[ikey] = _ParseResultsWithOffset(tok[1],i) - else: - dictvalue = tok.copy() #ParseResults(i) - del dictvalue[0] - if len(dictvalue)!= 1 or (isinstance(dictvalue,ParseResults) and dictvalue.haskeys()): - tokenlist[ikey] = _ParseResultsWithOffset(dictvalue,i) - else: - tokenlist[ikey] = _ParseResultsWithOffset(dictvalue[0],i) - - if self.resultsName: - return [ tokenlist ] - else: - return tokenlist - - -class Suppress(TokenConverter): - """ - Converter for ignoring the results of a parsed expression. - - Example:: - source = "a, b, c,d" - wd = Word(alphas) - wd_list1 = wd + ZeroOrMore(',' + wd) - print(wd_list1.parseString(source)) - - # often, delimiters that are useful during parsing are just in the - # way afterward - use Suppress to keep them out of the parsed output - wd_list2 = wd + ZeroOrMore(Suppress(',') + wd) - print(wd_list2.parseString(source)) - prints:: - ['a', ',', 'b', ',', 'c', ',', 'd'] - ['a', 'b', 'c', 'd'] - (See also L{delimitedList}.) - """ - def postParse( self, instring, loc, tokenlist ): - return [] - - def suppress( self ): - return self - - -class OnlyOnce(object): - """ - Wrapper for parse actions, to ensure they are only called once. - """ - def __init__(self, methodCall): - self.callable = _trim_arity(methodCall) - self.called = False - def __call__(self,s,l,t): - if not self.called: - results = self.callable(s,l,t) - self.called = True - return results - raise ParseException(s,l,"") - def reset(self): - self.called = False - -def traceParseAction(f): - """ - Decorator for debugging parse actions. - - When the parse action is called, this decorator will print C{">> entering I{method-name}(line:I{current_source_line}, I{parse_location}, I{matched_tokens})".} - When the parse action completes, the decorator will print C{"<<"} followed by the returned value, or any exception that the parse action raised. - - Example:: - wd = Word(alphas) - - @traceParseAction - def remove_duplicate_chars(tokens): - return ''.join(sorted(set(''.join(tokens))) - - wds = OneOrMore(wd).setParseAction(remove_duplicate_chars) - print(wds.parseString("slkdjs sld sldd sdlf sdljf")) - prints:: - >>entering remove_duplicate_chars(line: 'slkdjs sld sldd sdlf sdljf', 0, (['slkdjs', 'sld', 'sldd', 'sdlf', 'sdljf'], {})) - <<leaving remove_duplicate_chars (ret: 'dfjkls') - ['dfjkls'] - """ - f = _trim_arity(f) - def z(*paArgs): - thisFunc = f.__name__ - s,l,t = paArgs[-3:] - if len(paArgs)>3: - thisFunc = paArgs[0].__class__.__name__ + '.' + thisFunc - sys.stderr.write( ">>entering %s(line: '%s', %d, %r)\n" % (thisFunc,line(l,s),l,t) ) - try: - ret = f(*paArgs) - except Exception as exc: - sys.stderr.write( "<<leaving %s (exception: %s)\n" % (thisFunc,exc) ) - raise - sys.stderr.write( "<<leaving %s (ret: %r)\n" % (thisFunc,ret) ) - return ret - try: - z.__name__ = f.__name__ - except AttributeError: - pass - return z - -# -# global helpers -# -def delimitedList( expr, delim=",", combine=False ): - """ - Helper to define a delimited list of expressions - the delimiter defaults to ','. - By default, the list elements and delimiters can have intervening whitespace, and - comments, but this can be overridden by passing C{combine=True} in the constructor. - If C{combine} is set to C{True}, the matching tokens are returned as a single token - string, with the delimiters included; otherwise, the matching tokens are returned - as a list of tokens, with the delimiters suppressed. - - Example:: - delimitedList(Word(alphas)).parseString("aa,bb,cc") # -> ['aa', 'bb', 'cc'] - delimitedList(Word(hexnums), delim=':', combine=True).parseString("AA:BB:CC:DD:EE") # -> ['AA:BB:CC:DD:EE'] - """ - dlName = _ustr(expr)+" ["+_ustr(delim)+" "+_ustr(expr)+"]..." - if combine: - return Combine( expr + ZeroOrMore( delim + expr ) ).setName(dlName) - else: - return ( expr + ZeroOrMore( Suppress( delim ) + expr ) ).setName(dlName) - -def countedArray( expr, intExpr=None ): - """ - Helper to define a counted list of expressions. - This helper defines a pattern of the form:: - integer expr expr expr... - where the leading integer tells how many expr expressions follow. - The matched tokens returns the array of expr tokens as a list - the leading count token is suppressed. - - If C{intExpr} is specified, it should be a pyparsing expression that produces an integer value. - - Example:: - countedArray(Word(alphas)).parseString('2 ab cd ef') # -> ['ab', 'cd'] - - # in this parser, the leading integer value is given in binary, - # '10' indicating that 2 values are in the array - binaryConstant = Word('01').setParseAction(lambda t: int(t[0], 2)) - countedArray(Word(alphas), intExpr=binaryConstant).parseString('10 ab cd ef') # -> ['ab', 'cd'] - """ - arrayExpr = Forward() - def countFieldParseAction(s,l,t): - n = t[0] - arrayExpr << (n and Group(And([expr]*n)) or Group(empty)) - return [] - if intExpr is None: - intExpr = Word(nums).setParseAction(lambda t:int(t[0])) - else: - intExpr = intExpr.copy() - intExpr.setName("arrayLen") - intExpr.addParseAction(countFieldParseAction, callDuringTry=True) - return ( intExpr + arrayExpr ).setName('(len) ' + _ustr(expr) + '...') - -def _flatten(L): - ret = [] - for i in L: - if isinstance(i,list): - ret.extend(_flatten(i)) - else: - ret.append(i) - return ret - -def matchPreviousLiteral(expr): - """ - Helper to define an expression that is indirectly defined from - the tokens matched in a previous expression, that is, it looks - for a 'repeat' of a previous expression. For example:: - first = Word(nums) - second = matchPreviousLiteral(first) - matchExpr = first + ":" + second - will match C{"1:1"}, but not C{"1:2"}. Because this matches a - previous literal, will also match the leading C{"1:1"} in C{"1:10"}. - If this is not desired, use C{matchPreviousExpr}. - Do I{not} use with packrat parsing enabled. - """ - rep = Forward() - def copyTokenToRepeater(s,l,t): - if t: - if len(t) == 1: - rep << t[0] - else: - # flatten t tokens - tflat = _flatten(t.asList()) - rep << And(Literal(tt) for tt in tflat) - else: - rep << Empty() - expr.addParseAction(copyTokenToRepeater, callDuringTry=True) - rep.setName('(prev) ' + _ustr(expr)) - return rep - -def matchPreviousExpr(expr): - """ - Helper to define an expression that is indirectly defined from - the tokens matched in a previous expression, that is, it looks - for a 'repeat' of a previous expression. For example:: - first = Word(nums) - second = matchPreviousExpr(first) - matchExpr = first + ":" + second - will match C{"1:1"}, but not C{"1:2"}. Because this matches by - expressions, will I{not} match the leading C{"1:1"} in C{"1:10"}; - the expressions are evaluated first, and then compared, so - C{"1"} is compared with C{"10"}. - Do I{not} use with packrat parsing enabled. - """ - rep = Forward() - e2 = expr.copy() - rep <<= e2 - def copyTokenToRepeater(s,l,t): - matchTokens = _flatten(t.asList()) - def mustMatchTheseTokens(s,l,t): - theseTokens = _flatten(t.asList()) - if theseTokens != matchTokens: - raise ParseException("",0,"") - rep.setParseAction( mustMatchTheseTokens, callDuringTry=True ) - expr.addParseAction(copyTokenToRepeater, callDuringTry=True) - rep.setName('(prev) ' + _ustr(expr)) - return rep - -def _escapeRegexRangeChars(s): - #~ escape these chars: ^-] - for c in r"\^-]": - s = s.replace(c,_bslash+c) - s = s.replace("\n",r"\n") - s = s.replace("\t",r"\t") - return _ustr(s) - -def oneOf( strs, caseless=False, useRegex=True ): - """ - Helper to quickly define a set of alternative Literals, and makes sure to do - longest-first testing when there is a conflict, regardless of the input order, - but returns a C{L{MatchFirst}} for best performance. - - Parameters: - - strs - a string of space-delimited literals, or a collection of string literals - - caseless - (default=C{False}) - treat all literals as caseless - - useRegex - (default=C{True}) - as an optimization, will generate a Regex - object; otherwise, will generate a C{MatchFirst} object (if C{caseless=True}, or - if creating a C{Regex} raises an exception) - - Example:: - comp_oper = oneOf("< = > <= >= !=") - var = Word(alphas) - number = Word(nums) - term = var | number - comparison_expr = term + comp_oper + term - print(comparison_expr.searchString("B = 12 AA=23 B<=AA AA>12")) - prints:: - [['B', '=', '12'], ['AA', '=', '23'], ['B', '<=', 'AA'], ['AA', '>', '12']] - """ - if caseless: - isequal = ( lambda a,b: a.upper() == b.upper() ) - masks = ( lambda a,b: b.upper().startswith(a.upper()) ) - parseElementClass = CaselessLiteral - else: - isequal = ( lambda a,b: a == b ) - masks = ( lambda a,b: b.startswith(a) ) - parseElementClass = Literal - - symbols = [] - if isinstance(strs,basestring): - symbols = strs.split() - elif isinstance(strs, collections.Iterable): - symbols = list(strs) - else: - warnings.warn("Invalid argument to oneOf, expected string or iterable", - SyntaxWarning, stacklevel=2) - if not symbols: - return NoMatch() - - i = 0 - while i < len(symbols)-1: - cur = symbols[i] - for j,other in enumerate(symbols[i+1:]): - if ( isequal(other, cur) ): - del symbols[i+j+1] - break - elif ( masks(cur, other) ): - del symbols[i+j+1] - symbols.insert(i,other) - cur = other - break - else: - i += 1 - - if not caseless and useRegex: - #~ print (strs,"->", "|".join( [ _escapeRegexChars(sym) for sym in symbols] )) - try: - if len(symbols)==len("".join(symbols)): - return Regex( "[%s]" % "".join(_escapeRegexRangeChars(sym) for sym in symbols) ).setName(' | '.join(symbols)) - else: - return Regex( "|".join(re.escape(sym) for sym in symbols) ).setName(' | '.join(symbols)) - except Exception: - warnings.warn("Exception creating Regex for oneOf, building MatchFirst", - SyntaxWarning, stacklevel=2) - - - # last resort, just use MatchFirst - return MatchFirst(parseElementClass(sym) for sym in symbols).setName(' | '.join(symbols)) - -def dictOf( key, value ): - """ - Helper to easily and clearly define a dictionary by specifying the respective patterns - for the key and value. Takes care of defining the C{L{Dict}}, C{L{ZeroOrMore}}, and C{L{Group}} tokens - in the proper order. The key pattern can include delimiting markers or punctuation, - as long as they are suppressed, thereby leaving the significant key text. The value - pattern can include named results, so that the C{Dict} results can include named token - fields. - - Example:: - text = "shape: SQUARE posn: upper left color: light blue texture: burlap" - attr_expr = (label + Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join)) - print(OneOrMore(attr_expr).parseString(text).dump()) - - attr_label = label - attr_value = Suppress(':') + OneOrMore(data_word, stopOn=label).setParseAction(' '.join) - - # similar to Dict, but simpler call format - result = dictOf(attr_label, attr_value).parseString(text) - print(result.dump()) - print(result['shape']) - print(result.shape) # object attribute access works too - print(result.asDict()) - prints:: - [['shape', 'SQUARE'], ['posn', 'upper left'], ['color', 'light blue'], ['texture', 'burlap']] - - color: light blue - - posn: upper left - - shape: SQUARE - - texture: burlap - SQUARE - SQUARE - {'color': 'light blue', 'shape': 'SQUARE', 'posn': 'upper left', 'texture': 'burlap'} - """ - return Dict( ZeroOrMore( Group ( key + value ) ) ) - -def originalTextFor(expr, asString=True): - """ - Helper to return the original, untokenized text for a given expression. Useful to - restore the parsed fields of an HTML start tag into the raw tag text itself, or to - revert separate tokens with intervening whitespace back to the original matching - input text. By default, returns astring containing the original parsed text. - - If the optional C{asString} argument is passed as C{False}, then the return value is a - C{L{ParseResults}} containing any results names that were originally matched, and a - single token containing the original matched text from the input string. So if - the expression passed to C{L{originalTextFor}} contains expressions with defined - results names, you must set C{asString} to C{False} if you want to preserve those - results name values. - - Example:: - src = "this is test <b> bold <i>text</i> </b> normal text " - for tag in ("b","i"): - opener,closer = makeHTMLTags(tag) - patt = originalTextFor(opener + SkipTo(closer) + closer) - print(patt.searchString(src)[0]) - prints:: - ['<b> bold <i>text</i> </b>'] - ['<i>text</i>'] - """ - locMarker = Empty().setParseAction(lambda s,loc,t: loc) - endlocMarker = locMarker.copy() - endlocMarker.callPreparse = False - matchExpr = locMarker("_original_start") + expr + endlocMarker("_original_end") - if asString: - extractText = lambda s,l,t: s[t._original_start:t._original_end] - else: - def extractText(s,l,t): - t[:] = [s[t.pop('_original_start'):t.pop('_original_end')]] - matchExpr.setParseAction(extractText) - matchExpr.ignoreExprs = expr.ignoreExprs - return matchExpr - -def ungroup(expr): - """ - Helper to undo pyparsing's default grouping of And expressions, even - if all but one are non-empty. - """ - return TokenConverter(expr).setParseAction(lambda t:t[0]) - -def locatedExpr(expr): - """ - Helper to decorate a returned token with its starting and ending locations in the input string. - This helper adds the following results names: - - locn_start = location where matched expression begins - - locn_end = location where matched expression ends - - value = the actual parsed results - - Be careful if the input text contains C{<TAB>} characters, you may want to call - C{L{ParserElement.parseWithTabs}} - - Example:: - wd = Word(alphas) - for match in locatedExpr(wd).searchString("ljsdf123lksdjjf123lkkjj1222"): - print(match) - prints:: - [[0, 'ljsdf', 5]] - [[8, 'lksdjjf', 15]] - [[18, 'lkkjj', 23]] - """ - locator = Empty().setParseAction(lambda s,l,t: l) - return Group(locator("locn_start") + expr("value") + locator.copy().leaveWhitespace()("locn_end")) - - -# convenience constants for positional expressions -empty = Empty().setName("empty") -lineStart = LineStart().setName("lineStart") -lineEnd = LineEnd().setName("lineEnd") -stringStart = StringStart().setName("stringStart") -stringEnd = StringEnd().setName("stringEnd") - -_escapedPunc = Word( _bslash, r"\[]-*.$+^?()~ ", exact=2 ).setParseAction(lambda s,l,t:t[0][1]) -_escapedHexChar = Regex(r"\\0?[xX][0-9a-fA-F]+").setParseAction(lambda s,l,t:unichr(int(t[0].lstrip(r'\0x'),16))) -_escapedOctChar = Regex(r"\\0[0-7]+").setParseAction(lambda s,l,t:unichr(int(t[0][1:],8))) -_singleChar = _escapedPunc | _escapedHexChar | _escapedOctChar | Word(printables, excludeChars=r'\]', exact=1) | Regex(r"\w", re.UNICODE) -_charRange = Group(_singleChar + Suppress("-") + _singleChar) -_reBracketExpr = Literal("[") + Optional("^").setResultsName("negate") + Group( OneOrMore( _charRange | _singleChar ) ).setResultsName("body") + "]" - -def srange(s): - r""" - Helper to easily define string ranges for use in Word construction. Borrows - syntax from regexp '[]' string range definitions:: - srange("[0-9]") -> "0123456789" - srange("[a-z]") -> "abcdefghijklmnopqrstuvwxyz" - srange("[a-z$_]") -> "abcdefghijklmnopqrstuvwxyz$_" - The input string must be enclosed in []'s, and the returned string is the expanded - character set joined into a single string. - The values enclosed in the []'s may be: - - a single character - - an escaped character with a leading backslash (such as C{\-} or C{\]}) - - an escaped hex character with a leading C{'\x'} (C{\x21}, which is a C{'!'} character) - (C{\0x##} is also supported for backwards compatibility) - - an escaped octal character with a leading C{'\0'} (C{\041}, which is a C{'!'} character) - - a range of any of the above, separated by a dash (C{'a-z'}, etc.) - - any combination of the above (C{'aeiouy'}, C{'a-zA-Z0-9_$'}, etc.) - """ - _expanded = lambda p: p if not isinstance(p,ParseResults) else ''.join(unichr(c) for c in range(ord(p[0]),ord(p[1])+1)) - try: - return "".join(_expanded(part) for part in _reBracketExpr.parseString(s).body) - except Exception: - return "" - -def matchOnlyAtCol(n): - """ - Helper method for defining parse actions that require matching at a specific - column in the input text. - """ - def verifyCol(strg,locn,toks): - if col(locn,strg) != n: - raise ParseException(strg,locn,"matched token not at column %d" % n) - return verifyCol - -def replaceWith(replStr): - """ - Helper method for common parse actions that simply return a literal value. Especially - useful when used with C{L{transformString<ParserElement.transformString>}()}. - - Example:: - num = Word(nums).setParseAction(lambda toks: int(toks[0])) - na = oneOf("N/A NA").setParseAction(replaceWith(math.nan)) - term = na | num - - OneOrMore(term).parseString("324 234 N/A 234") # -> [324, 234, nan, 234] - """ - return lambda s,l,t: [replStr] - -def removeQuotes(s,l,t): - """ - Helper parse action for removing quotation marks from parsed quoted strings. - - Example:: - # by default, quotation marks are included in parsed results - quotedString.parseString("'Now is the Winter of our Discontent'") # -> ["'Now is the Winter of our Discontent'"] - - # use removeQuotes to strip quotation marks from parsed results - quotedString.setParseAction(removeQuotes) - quotedString.parseString("'Now is the Winter of our Discontent'") # -> ["Now is the Winter of our Discontent"] - """ - return t[0][1:-1] - -def tokenMap(func, *args): - """ - Helper to define a parse action by mapping a function to all elements of a ParseResults list.If any additional - args are passed, they are forwarded to the given function as additional arguments after - the token, as in C{hex_integer = Word(hexnums).setParseAction(tokenMap(int, 16))}, which will convert the - parsed data to an integer using base 16. - - Example (compare the last to example in L{ParserElement.transformString}:: - hex_ints = OneOrMore(Word(hexnums)).setParseAction(tokenMap(int, 16)) - hex_ints.runTests(''' - 00 11 22 aa FF 0a 0d 1a - ''') - - upperword = Word(alphas).setParseAction(tokenMap(str.upper)) - OneOrMore(upperword).runTests(''' - my kingdom for a horse - ''') - - wd = Word(alphas).setParseAction(tokenMap(str.title)) - OneOrMore(wd).setParseAction(' '.join).runTests(''' - now is the winter of our discontent made glorious summer by this sun of york - ''') - prints:: - 00 11 22 aa FF 0a 0d 1a - [0, 17, 34, 170, 255, 10, 13, 26] - - my kingdom for a horse - ['MY', 'KINGDOM', 'FOR', 'A', 'HORSE'] - - now is the winter of our discontent made glorious summer by this sun of york - ['Now Is The Winter Of Our Discontent Made Glorious Summer By This Sun Of York'] - """ - def pa(s,l,t): - return [func(tokn, *args) for tokn in t] - - try: - func_name = getattr(func, '__name__', - getattr(func, '__class__').__name__) - except Exception: - func_name = str(func) - pa.__name__ = func_name - - return pa - -upcaseTokens = tokenMap(lambda t: _ustr(t).upper()) -"""(Deprecated) Helper parse action to convert tokens to upper case. Deprecated in favor of L{pyparsing_common.upcaseTokens}""" - -downcaseTokens = tokenMap(lambda t: _ustr(t).lower()) -"""(Deprecated) Helper parse action to convert tokens to lower case. Deprecated in favor of L{pyparsing_common.downcaseTokens}""" - -def _makeTags(tagStr, xml): - """Internal helper to construct opening and closing tag expressions, given a tag name""" - if isinstance(tagStr,basestring): - resname = tagStr - tagStr = Keyword(tagStr, caseless=not xml) - else: - resname = tagStr.name - - tagAttrName = Word(alphas,alphanums+"_-:") - if (xml): - tagAttrValue = dblQuotedString.copy().setParseAction( removeQuotes ) - openTag = Suppress("<") + tagStr("tag") + \ - Dict(ZeroOrMore(Group( tagAttrName + Suppress("=") + tagAttrValue ))) + \ - Optional("/",default=[False]).setResultsName("empty").setParseAction(lambda s,l,t:t[0]=='/') + Suppress(">") - else: - printablesLessRAbrack = "".join(c for c in printables if c not in ">") - tagAttrValue = quotedString.copy().setParseAction( removeQuotes ) | Word(printablesLessRAbrack) - openTag = Suppress("<") + tagStr("tag") + \ - Dict(ZeroOrMore(Group( tagAttrName.setParseAction(downcaseTokens) + \ - Optional( Suppress("=") + tagAttrValue ) ))) + \ - Optional("/",default=[False]).setResultsName("empty").setParseAction(lambda s,l,t:t[0]=='/') + Suppress(">") - closeTag = Combine(_L("</") + tagStr + ">") - - openTag = openTag.setResultsName("start"+"".join(resname.replace(":"," ").title().split())).setName("<%s>" % resname) - closeTag = closeTag.setResultsName("end"+"".join(resname.replace(":"," ").title().split())).setName("</%s>" % resname) - openTag.tag = resname - closeTag.tag = resname - return openTag, closeTag - -def makeHTMLTags(tagStr): - """ - Helper to construct opening and closing tag expressions for HTML, given a tag name. Matches - tags in either upper or lower case, attributes with namespaces and with quoted or unquoted values. - - Example:: - text = '<td>More info at the <a href="http://pyparsing.wikispaces.com">pyparsing</a> wiki page</td>' - # makeHTMLTags returns pyparsing expressions for the opening and closing tags as a 2-tuple - a,a_end = makeHTMLTags("A") - link_expr = a + SkipTo(a_end)("link_text") + a_end - - for link in link_expr.searchString(text): - # attributes in the <A> tag (like "href" shown here) are also accessible as named results - print(link.link_text, '->', link.href) - prints:: - pyparsing -> http://pyparsing.wikispaces.com - """ - return _makeTags( tagStr, False ) - -def makeXMLTags(tagStr): - """ - Helper to construct opening and closing tag expressions for XML, given a tag name. Matches - tags only in the given upper/lower case. - - Example: similar to L{makeHTMLTags} - """ - return _makeTags( tagStr, True ) - -def withAttribute(*args,**attrDict): - """ - Helper to create a validating parse action to be used with start tags created - with C{L{makeXMLTags}} or C{L{makeHTMLTags}}. Use C{withAttribute} to qualify a starting tag - with a required attribute value, to avoid false matches on common tags such as - C{<TD>} or C{<DIV>}. - - Call C{withAttribute} with a series of attribute names and values. Specify the list - of filter attributes names and values as: - - keyword arguments, as in C{(align="right")}, or - - as an explicit dict with C{**} operator, when an attribute name is also a Python - reserved word, as in C{**{"class":"Customer", "align":"right"}} - - a list of name-value tuples, as in ( ("ns1:class", "Customer"), ("ns2:align","right") ) - For attribute names with a namespace prefix, you must use the second form. Attribute - names are matched insensitive to upper/lower case. - - If just testing for C{class} (with or without a namespace), use C{L{withClass}}. - - To verify that the attribute exists, but without specifying a value, pass - C{withAttribute.ANY_VALUE} as the value. - - Example:: - html = ''' - <div> - Some text - <div type="grid">1 4 0 1 0</div> - <div type="graph">1,3 2,3 1,1</div> - <div>this has no type</div> - </div> - - ''' - div,div_end = makeHTMLTags("div") - - # only match div tag having a type attribute with value "grid" - div_grid = div().setParseAction(withAttribute(type="grid")) - grid_expr = div_grid + SkipTo(div | div_end)("body") - for grid_header in grid_expr.searchString(html): - print(grid_header.body) - - # construct a match with any div tag having a type attribute, regardless of the value - div_any_type = div().setParseAction(withAttribute(type=withAttribute.ANY_VALUE)) - div_expr = div_any_type + SkipTo(div | div_end)("body") - for div_header in div_expr.searchString(html): - print(div_header.body) - prints:: - 1 4 0 1 0 - - 1 4 0 1 0 - 1,3 2,3 1,1 - """ - if args: - attrs = args[:] - else: - attrs = attrDict.items() - attrs = [(k,v) for k,v in attrs] - def pa(s,l,tokens): - for attrName,attrValue in attrs: - if attrName not in tokens: - raise ParseException(s,l,"no matching attribute " + attrName) - if attrValue != withAttribute.ANY_VALUE and tokens[attrName] != attrValue: - raise ParseException(s,l,"attribute '%s' has value '%s', must be '%s'" % - (attrName, tokens[attrName], attrValue)) - return pa -withAttribute.ANY_VALUE = object() - -def withClass(classname, namespace=''): - """ - Simplified version of C{L{withAttribute}} when matching on a div class - made - difficult because C{class} is a reserved word in Python. - - Example:: - html = ''' - <div> - Some text - <div class="grid">1 4 0 1 0</div> - <div class="graph">1,3 2,3 1,1</div> - <div>this <div> has no class</div> - </div> - - ''' - div,div_end = makeHTMLTags("div") - div_grid = div().setParseAction(withClass("grid")) - - grid_expr = div_grid + SkipTo(div | div_end)("body") - for grid_header in grid_expr.searchString(html): - print(grid_header.body) - - div_any_type = div().setParseAction(withClass(withAttribute.ANY_VALUE)) - div_expr = div_any_type + SkipTo(div | div_end)("body") - for div_header in div_expr.searchString(html): - print(div_header.body) - prints:: - 1 4 0 1 0 - - 1 4 0 1 0 - 1,3 2,3 1,1 - """ - classattr = "%s:class" % namespace if namespace else "class" - return withAttribute(**{classattr : classname}) - -opAssoc = _Constants() -opAssoc.LEFT = object() -opAssoc.RIGHT = object() - -def infixNotation( baseExpr, opList, lpar=Suppress('('), rpar=Suppress(')') ): - """ - Helper method for constructing grammars of expressions made up of - operators working in a precedence hierarchy. Operators may be unary or - binary, left- or right-associative. Parse actions can also be attached - to operator expressions. The generated parser will also recognize the use - of parentheses to override operator precedences (see example below). - - Note: if you define a deep operator list, you may see performance issues - when using infixNotation. See L{ParserElement.enablePackrat} for a - mechanism to potentially improve your parser performance. - - Parameters: - - baseExpr - expression representing the most basic element for the nested - - opList - list of tuples, one for each operator precedence level in the - expression grammar; each tuple is of the form - (opExpr, numTerms, rightLeftAssoc, parseAction), where: - - opExpr is the pyparsing expression for the operator; - may also be a string, which will be converted to a Literal; - if numTerms is 3, opExpr is a tuple of two expressions, for the - two operators separating the 3 terms - - numTerms is the number of terms for this operator (must - be 1, 2, or 3) - - rightLeftAssoc is the indicator whether the operator is - right or left associative, using the pyparsing-defined - constants C{opAssoc.RIGHT} and C{opAssoc.LEFT}. - - parseAction is the parse action to be associated with - expressions matching this operator expression (the - parse action tuple member may be omitted); if the parse action - is passed a tuple or list of functions, this is equivalent to - calling C{setParseAction(*fn)} (L{ParserElement.setParseAction}) - - lpar - expression for matching left-parentheses (default=C{Suppress('(')}) - - rpar - expression for matching right-parentheses (default=C{Suppress(')')}) - - Example:: - # simple example of four-function arithmetic with ints and variable names - integer = pyparsing_common.signed_integer - varname = pyparsing_common.identifier - - arith_expr = infixNotation(integer | varname, - [ - ('-', 1, opAssoc.RIGHT), - (oneOf('* /'), 2, opAssoc.LEFT), - (oneOf('+ -'), 2, opAssoc.LEFT), - ]) - - arith_expr.runTests(''' - 5+3*6 - (5+3)*6 - -2--11 - ''', fullDump=False) - prints:: - 5+3*6 - [[5, '+', [3, '*', 6]]] - - (5+3)*6 - [[[5, '+', 3], '*', 6]] - - -2--11 - [[['-', 2], '-', ['-', 11]]] - """ - ret = Forward() - lastExpr = baseExpr | ( lpar + ret + rpar ) - for i,operDef in enumerate(opList): - opExpr,arity,rightLeftAssoc,pa = (operDef + (None,))[:4] - termName = "%s term" % opExpr if arity < 3 else "%s%s term" % opExpr - if arity == 3: - if opExpr is None or len(opExpr) != 2: - raise ValueError("if numterms=3, opExpr must be a tuple or list of two expressions") - opExpr1, opExpr2 = opExpr - thisExpr = Forward().setName(termName) - if rightLeftAssoc == opAssoc.LEFT: - if arity == 1: - matchExpr = FollowedBy(lastExpr + opExpr) + Group( lastExpr + OneOrMore( opExpr ) ) - elif arity == 2: - if opExpr is not None: - matchExpr = FollowedBy(lastExpr + opExpr + lastExpr) + Group( lastExpr + OneOrMore( opExpr + lastExpr ) ) - else: - matchExpr = FollowedBy(lastExpr+lastExpr) + Group( lastExpr + OneOrMore(lastExpr) ) - elif arity == 3: - matchExpr = FollowedBy(lastExpr + opExpr1 + lastExpr + opExpr2 + lastExpr) + \ - Group( lastExpr + opExpr1 + lastExpr + opExpr2 + lastExpr ) - else: - raise ValueError("operator must be unary (1), binary (2), or ternary (3)") - elif rightLeftAssoc == opAssoc.RIGHT: - if arity == 1: - # try to avoid LR with this extra test - if not isinstance(opExpr, Optional): - opExpr = Optional(opExpr) - matchExpr = FollowedBy(opExpr.expr + thisExpr) + Group( opExpr + thisExpr ) - elif arity == 2: - if opExpr is not None: - matchExpr = FollowedBy(lastExpr + opExpr + thisExpr) + Group( lastExpr + OneOrMore( opExpr + thisExpr ) ) - else: - matchExpr = FollowedBy(lastExpr + thisExpr) + Group( lastExpr + OneOrMore( thisExpr ) ) - elif arity == 3: - matchExpr = FollowedBy(lastExpr + opExpr1 + thisExpr + opExpr2 + thisExpr) + \ - Group( lastExpr + opExpr1 + thisExpr + opExpr2 + thisExpr ) - else: - raise ValueError("operator must be unary (1), binary (2), or ternary (3)") - else: - raise ValueError("operator must indicate right or left associativity") - if pa: - if isinstance(pa, (tuple, list)): - matchExpr.setParseAction(*pa) - else: - matchExpr.setParseAction(pa) - thisExpr <<= ( matchExpr.setName(termName) | lastExpr ) - lastExpr = thisExpr - ret <<= lastExpr - return ret - -operatorPrecedence = infixNotation -"""(Deprecated) Former name of C{L{infixNotation}}, will be dropped in a future release.""" - -dblQuotedString = Combine(Regex(r'"(?:[^"\n\r\\]|(?:"")|(?:\\(?:[^x]|x[0-9a-fA-F]+)))*')+'"').setName("string enclosed in double quotes") -sglQuotedString = Combine(Regex(r"'(?:[^'\n\r\\]|(?:'')|(?:\\(?:[^x]|x[0-9a-fA-F]+)))*")+"'").setName("string enclosed in single quotes") -quotedString = Combine(Regex(r'"(?:[^"\n\r\\]|(?:"")|(?:\\(?:[^x]|x[0-9a-fA-F]+)))*')+'"'| - Regex(r"'(?:[^'\n\r\\]|(?:'')|(?:\\(?:[^x]|x[0-9a-fA-F]+)))*")+"'").setName("quotedString using single or double quotes") -unicodeString = Combine(_L('u') + quotedString.copy()).setName("unicode string literal") - -def nestedExpr(opener="(", closer=")", content=None, ignoreExpr=quotedString.copy()): - """ - Helper method for defining nested lists enclosed in opening and closing - delimiters ("(" and ")" are the default). - - Parameters: - - opener - opening character for a nested list (default=C{"("}); can also be a pyparsing expression - - closer - closing character for a nested list (default=C{")"}); can also be a pyparsing expression - - content - expression for items within the nested lists (default=C{None}) - - ignoreExpr - expression for ignoring opening and closing delimiters (default=C{quotedString}) - - If an expression is not provided for the content argument, the nested - expression will capture all whitespace-delimited content between delimiters - as a list of separate values. - - Use the C{ignoreExpr} argument to define expressions that may contain - opening or closing characters that should not be treated as opening - or closing characters for nesting, such as quotedString or a comment - expression. Specify multiple expressions using an C{L{Or}} or C{L{MatchFirst}}. - The default is L{quotedString}, but if no expressions are to be ignored, - then pass C{None} for this argument. - - Example:: - data_type = oneOf("void int short long char float double") - decl_data_type = Combine(data_type + Optional(Word('*'))) - ident = Word(alphas+'_', alphanums+'_') - number = pyparsing_common.number - arg = Group(decl_data_type + ident) - LPAR,RPAR = map(Suppress, "()") - - code_body = nestedExpr('{', '}', ignoreExpr=(quotedString | cStyleComment)) - - c_function = (decl_data_type("type") - + ident("name") - + LPAR + Optional(delimitedList(arg), [])("args") + RPAR - + code_body("body")) - c_function.ignore(cStyleComment) - - source_code = ''' - int is_odd(int x) { - return (x%2); - } - - int dec_to_hex(char hchar) { - if (hchar >= '0' && hchar <= '9') { - return (ord(hchar)-ord('0')); - } else { - return (10+ord(hchar)-ord('A')); - } - } - ''' - for func in c_function.searchString(source_code): - print("%(name)s (%(type)s) args: %(args)s" % func) - - prints:: - is_odd (int) args: [['int', 'x']] - dec_to_hex (int) args: [['char', 'hchar']] - """ - if opener == closer: - raise ValueError("opening and closing strings cannot be the same") - if content is None: - if isinstance(opener,basestring) and isinstance(closer,basestring): - if len(opener) == 1 and len(closer)==1: - if ignoreExpr is not None: - content = (Combine(OneOrMore(~ignoreExpr + - CharsNotIn(opener+closer+ParserElement.DEFAULT_WHITE_CHARS,exact=1)) - ).setParseAction(lambda t:t[0].strip())) - else: - content = (empty.copy()+CharsNotIn(opener+closer+ParserElement.DEFAULT_WHITE_CHARS - ).setParseAction(lambda t:t[0].strip())) - else: - if ignoreExpr is not None: - content = (Combine(OneOrMore(~ignoreExpr + - ~Literal(opener) + ~Literal(closer) + - CharsNotIn(ParserElement.DEFAULT_WHITE_CHARS,exact=1)) - ).setParseAction(lambda t:t[0].strip())) - else: - content = (Combine(OneOrMore(~Literal(opener) + ~Literal(closer) + - CharsNotIn(ParserElement.DEFAULT_WHITE_CHARS,exact=1)) - ).setParseAction(lambda t:t[0].strip())) - else: - raise ValueError("opening and closing arguments must be strings if no content expression is given") - ret = Forward() - if ignoreExpr is not None: - ret <<= Group( Suppress(opener) + ZeroOrMore( ignoreExpr | ret | content ) + Suppress(closer) ) - else: - ret <<= Group( Suppress(opener) + ZeroOrMore( ret | content ) + Suppress(closer) ) - ret.setName('nested %s%s expression' % (opener,closer)) - return ret - -def indentedBlock(blockStatementExpr, indentStack, indent=True): - """ - Helper method for defining space-delimited indentation blocks, such as - those used to define block statements in Python source code. - - Parameters: - - blockStatementExpr - expression defining syntax of statement that - is repeated within the indented block - - indentStack - list created by caller to manage indentation stack - (multiple statementWithIndentedBlock expressions within a single grammar - should share a common indentStack) - - indent - boolean indicating whether block must be indented beyond the - the current level; set to False for block of left-most statements - (default=C{True}) - - A valid block must contain at least one C{blockStatement}. - - Example:: - data = ''' - def A(z): - A1 - B = 100 - G = A2 - A2 - A3 - B - def BB(a,b,c): - BB1 - def BBA(): - bba1 - bba2 - bba3 - C - D - def spam(x,y): - def eggs(z): - pass - ''' - - - indentStack = [1] - stmt = Forward() - - identifier = Word(alphas, alphanums) - funcDecl = ("def" + identifier + Group( "(" + Optional( delimitedList(identifier) ) + ")" ) + ":") - func_body = indentedBlock(stmt, indentStack) - funcDef = Group( funcDecl + func_body ) - - rvalue = Forward() - funcCall = Group(identifier + "(" + Optional(delimitedList(rvalue)) + ")") - rvalue << (funcCall | identifier | Word(nums)) - assignment = Group(identifier + "=" + rvalue) - stmt << ( funcDef | assignment | identifier ) - - module_body = OneOrMore(stmt) - - parseTree = module_body.parseString(data) - parseTree.pprint() - prints:: - [['def', - 'A', - ['(', 'z', ')'], - ':', - [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], - 'B', - ['def', - 'BB', - ['(', 'a', 'b', 'c', ')'], - ':', - [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], - 'C', - 'D', - ['def', - 'spam', - ['(', 'x', 'y', ')'], - ':', - [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] - """ - def checkPeerIndent(s,l,t): - if l >= len(s): return - curCol = col(l,s) - if curCol != indentStack[-1]: - if curCol > indentStack[-1]: - raise ParseFatalException(s,l,"illegal nesting") - raise ParseException(s,l,"not a peer entry") - - def checkSubIndent(s,l,t): - curCol = col(l,s) - if curCol > indentStack[-1]: - indentStack.append( curCol ) - else: - raise ParseException(s,l,"not a subentry") - - def checkUnindent(s,l,t): - if l >= len(s): return - curCol = col(l,s) - if not(indentStack and curCol < indentStack[-1] and curCol <= indentStack[-2]): - raise ParseException(s,l,"not an unindent") - indentStack.pop() - - NL = OneOrMore(LineEnd().setWhitespaceChars("\t ").suppress()) - INDENT = (Empty() + Empty().setParseAction(checkSubIndent)).setName('INDENT') - PEER = Empty().setParseAction(checkPeerIndent).setName('') - UNDENT = Empty().setParseAction(checkUnindent).setName('UNINDENT') - if indent: - smExpr = Group( Optional(NL) + - #~ FollowedBy(blockStatementExpr) + - INDENT + (OneOrMore( PEER + Group(blockStatementExpr) + Optional(NL) )) + UNDENT) - else: - smExpr = Group( Optional(NL) + - (OneOrMore( PEER + Group(blockStatementExpr) + Optional(NL) )) ) - blockStatementExpr.ignore(_bslash + LineEnd()) - return smExpr.setName('indented block') - -alphas8bit = srange(r"[\0xc0-\0xd6\0xd8-\0xf6\0xf8-\0xff]") -punc8bit = srange(r"[\0xa1-\0xbf\0xd7\0xf7]") - -anyOpenTag,anyCloseTag = makeHTMLTags(Word(alphas,alphanums+"_:").setName('any tag')) -_htmlEntityMap = dict(zip("gt lt amp nbsp quot apos".split(),'><& "\'')) -commonHTMLEntity = Regex('&(?P<entity>' + '|'.join(_htmlEntityMap.keys()) +");").setName("common HTML entity") -def replaceHTMLEntity(t): - """Helper parser action to replace common HTML entities with their special characters""" - return _htmlEntityMap.get(t.entity) - -# it's easy to get these comment structures wrong - they're very common, so may as well make them available -cStyleComment = Combine(Regex(r"/\*(?:[^*]|\*(?!/))*") + '*/').setName("C style comment") -"Comment of the form C{/* ... */}" - -htmlComment = Regex(r"<!--[\s\S]*?-->").setName("HTML comment") -"Comment of the form C{<!-- ... -->}" - -restOfLine = Regex(r".*").leaveWhitespace().setName("rest of line") -dblSlashComment = Regex(r"//(?:\\\n|[^\n])*").setName("// comment") -"Comment of the form C{// ... (to end of line)}" - -cppStyleComment = Combine(Regex(r"/\*(?:[^*]|\*(?!/))*") + '*/'| dblSlashComment).setName("C++ style comment") -"Comment of either form C{L{cStyleComment}} or C{L{dblSlashComment}}" - -javaStyleComment = cppStyleComment -"Same as C{L{cppStyleComment}}" - -pythonStyleComment = Regex(r"#.*").setName("Python style comment") -"Comment of the form C{# ... (to end of line)}" - -_commasepitem = Combine(OneOrMore(Word(printables, excludeChars=',') + - Optional( Word(" \t") + - ~Literal(",") + ~LineEnd() ) ) ).streamline().setName("commaItem") -commaSeparatedList = delimitedList( Optional( quotedString.copy() | _commasepitem, default="") ).setName("commaSeparatedList") -"""(Deprecated) Predefined expression of 1 or more printable words or quoted strings, separated by commas. - This expression is deprecated in favor of L{pyparsing_common.comma_separated_list}.""" - -# some other useful expressions - using lower-case class name since we are really using this as a namespace -class pyparsing_common: - """ - Here are some common low-level expressions that may be useful in jump-starting parser development: - - numeric forms (L{integers<integer>}, L{reals<real>}, L{scientific notation<sci_real>}) - - common L{programming identifiers<identifier>} - - network addresses (L{MAC<mac_address>}, L{IPv4<ipv4_address>}, L{IPv6<ipv6_address>}) - - ISO8601 L{dates<iso8601_date>} and L{datetime<iso8601_datetime>} - - L{UUID<uuid>} - - L{comma-separated list<comma_separated_list>} - Parse actions: - - C{L{convertToInteger}} - - C{L{convertToFloat}} - - C{L{convertToDate}} - - C{L{convertToDatetime}} - - C{L{stripHTMLTags}} - - C{L{upcaseTokens}} - - C{L{downcaseTokens}} - - Example:: - pyparsing_common.number.runTests(''' - # any int or real number, returned as the appropriate type - 100 - -100 - +100 - 3.14159 - 6.02e23 - 1e-12 - ''') - - pyparsing_common.fnumber.runTests(''' - # any int or real number, returned as float - 100 - -100 - +100 - 3.14159 - 6.02e23 - 1e-12 - ''') - - pyparsing_common.hex_integer.runTests(''' - # hex numbers - 100 - FF - ''') - - pyparsing_common.fraction.runTests(''' - # fractions - 1/2 - -3/4 - ''') - - pyparsing_common.mixed_integer.runTests(''' - # mixed fractions - 1 - 1/2 - -3/4 - 1-3/4 - ''') - - import uuid - pyparsing_common.uuid.setParseAction(tokenMap(uuid.UUID)) - pyparsing_common.uuid.runTests(''' - # uuid - 12345678-1234-5678-1234-567812345678 - ''') - prints:: - # any int or real number, returned as the appropriate type - 100 - [100] - - -100 - [-100] - - +100 - [100] - - 3.14159 - [3.14159] - - 6.02e23 - [6.02e+23] - - 1e-12 - [1e-12] - - # any int or real number, returned as float - 100 - [100.0] - - -100 - [-100.0] - - +100 - [100.0] - - 3.14159 - [3.14159] - - 6.02e23 - [6.02e+23] - - 1e-12 - [1e-12] - - # hex numbers - 100 - [256] - - FF - [255] - - # fractions - 1/2 - [0.5] - - -3/4 - [-0.75] - - # mixed fractions - 1 - [1] - - 1/2 - [0.5] - - -3/4 - [-0.75] - - 1-3/4 - [1.75] - - # uuid - 12345678-1234-5678-1234-567812345678 - [UUID('12345678-1234-5678-1234-567812345678')] - """ - - convertToInteger = tokenMap(int) - """ - Parse action for converting parsed integers to Python int - """ - - convertToFloat = tokenMap(float) - """ - Parse action for converting parsed numbers to Python float - """ - - integer = Word(nums).setName("integer").setParseAction(convertToInteger) - """expression that parses an unsigned integer, returns an int""" - - hex_integer = Word(hexnums).setName("hex integer").setParseAction(tokenMap(int,16)) - """expression that parses a hexadecimal integer, returns an int""" - - signed_integer = Regex(r'[+-]?\d+').setName("signed integer").setParseAction(convertToInteger) - """expression that parses an integer with optional leading sign, returns an int""" - - fraction = (signed_integer().setParseAction(convertToFloat) + '/' + signed_integer().setParseAction(convertToFloat)).setName("fraction") - """fractional expression of an integer divided by an integer, returns a float""" - fraction.addParseAction(lambda t: t[0]/t[-1]) - - mixed_integer = (fraction | signed_integer + Optional(Optional('-').suppress() + fraction)).setName("fraction or mixed integer-fraction") - """mixed integer of the form 'integer - fraction', with optional leading integer, returns float""" - mixed_integer.addParseAction(sum) - - real = Regex(r'[+-]?\d+\.\d*').setName("real number").setParseAction(convertToFloat) - """expression that parses a floating point number and returns a float""" - - sci_real = Regex(r'[+-]?\d+([eE][+-]?\d+|\.\d*([eE][+-]?\d+)?)').setName("real number with scientific notation").setParseAction(convertToFloat) - """expression that parses a floating point number with optional scientific notation and returns a float""" - - # streamlining this expression makes the docs nicer-looking - number = (sci_real | real | signed_integer).streamline() - """any numeric expression, returns the corresponding Python type""" - - fnumber = Regex(r'[+-]?\d+\.?\d*([eE][+-]?\d+)?').setName("fnumber").setParseAction(convertToFloat) - """any int or real number, returned as float""" - - identifier = Word(alphas+'_', alphanums+'_').setName("identifier") - """typical code identifier (leading alpha or '_', followed by 0 or more alphas, nums, or '_')""" - - ipv4_address = Regex(r'(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(\.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}').setName("IPv4 address") - "IPv4 address (C{0.0.0.0 - 255.255.255.255})" - - _ipv6_part = Regex(r'[0-9a-fA-F]{1,4}').setName("hex_integer") - _full_ipv6_address = (_ipv6_part + (':' + _ipv6_part)*7).setName("full IPv6 address") - _short_ipv6_address = (Optional(_ipv6_part + (':' + _ipv6_part)*(0,6)) + "::" + Optional(_ipv6_part + (':' + _ipv6_part)*(0,6))).setName("short IPv6 address") - _short_ipv6_address.addCondition(lambda t: sum(1 for tt in t if pyparsing_common._ipv6_part.matches(tt)) < 8) - _mixed_ipv6_address = ("::ffff:" + ipv4_address).setName("mixed IPv6 address") - ipv6_address = Combine((_full_ipv6_address | _mixed_ipv6_address | _short_ipv6_address).setName("IPv6 address")).setName("IPv6 address") - "IPv6 address (long, short, or mixed form)" - - mac_address = Regex(r'[0-9a-fA-F]{2}([:.-])[0-9a-fA-F]{2}(?:\1[0-9a-fA-F]{2}){4}').setName("MAC address") - "MAC address xx:xx:xx:xx:xx (may also have '-' or '.' delimiters)" - - @staticmethod - def convertToDate(fmt="%Y-%m-%d"): - """ - Helper to create a parse action for converting parsed date string to Python datetime.date - - Params - - - fmt - format to be passed to datetime.strptime (default=C{"%Y-%m-%d"}) - - Example:: - date_expr = pyparsing_common.iso8601_date.copy() - date_expr.setParseAction(pyparsing_common.convertToDate()) - print(date_expr.parseString("1999-12-31")) - prints:: - [datetime.date(1999, 12, 31)] - """ - def cvt_fn(s,l,t): - try: - return datetime.strptime(t[0], fmt).date() - except ValueError as ve: - raise ParseException(s, l, str(ve)) - return cvt_fn - - @staticmethod - def convertToDatetime(fmt="%Y-%m-%dT%H:%M:%S.%f"): - """ - Helper to create a parse action for converting parsed datetime string to Python datetime.datetime - - Params - - - fmt - format to be passed to datetime.strptime (default=C{"%Y-%m-%dT%H:%M:%S.%f"}) - - Example:: - dt_expr = pyparsing_common.iso8601_datetime.copy() - dt_expr.setParseAction(pyparsing_common.convertToDatetime()) - print(dt_expr.parseString("1999-12-31T23:59:59.999")) - prints:: - [datetime.datetime(1999, 12, 31, 23, 59, 59, 999000)] - """ - def cvt_fn(s,l,t): - try: - return datetime.strptime(t[0], fmt) - except ValueError as ve: - raise ParseException(s, l, str(ve)) - return cvt_fn - - iso8601_date = Regex(r'(?P<year>\d{4})(?:-(?P<month>\d\d)(?:-(?P<day>\d\d))?)?').setName("ISO8601 date") - "ISO8601 date (C{yyyy-mm-dd})" - - iso8601_datetime = Regex(r'(?P<year>\d{4})-(?P<month>\d\d)-(?P<day>\d\d)[T ](?P<hour>\d\d):(?P<minute>\d\d)(:(?P<second>\d\d(\.\d*)?)?)?(?P<tz>Z|[+-]\d\d:?\d\d)?').setName("ISO8601 datetime") - "ISO8601 datetime (C{yyyy-mm-ddThh:mm:ss.s(Z|+-00:00)}) - trailing seconds, milliseconds, and timezone optional; accepts separating C{'T'} or C{' '}" - - uuid = Regex(r'[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}').setName("UUID") - "UUID (C{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx})" - - _html_stripper = anyOpenTag.suppress() | anyCloseTag.suppress() - @staticmethod - def stripHTMLTags(s, l, tokens): - """ - Parse action to remove HTML tags from web page HTML source - - Example:: - # strip HTML links from normal text - text = '<td>More info at the <a href="http://pyparsing.wikispaces.com">pyparsing</a> wiki page</td>' - td,td_end = makeHTMLTags("TD") - table_text = td + SkipTo(td_end).setParseAction(pyparsing_common.stripHTMLTags)("body") + td_end - - print(table_text.parseString(text).body) # -> 'More info at the pyparsing wiki page' - """ - return pyparsing_common._html_stripper.transformString(tokens[0]) - - _commasepitem = Combine(OneOrMore(~Literal(",") + ~LineEnd() + Word(printables, excludeChars=',') - + Optional( White(" \t") ) ) ).streamline().setName("commaItem") - comma_separated_list = delimitedList( Optional( quotedString.copy() | _commasepitem, default="") ).setName("comma separated list") - """Predefined expression of 1 or more printable words or quoted strings, separated by commas.""" - - upcaseTokens = staticmethod(tokenMap(lambda t: _ustr(t).upper())) - """Parse action to convert tokens to upper case.""" - - downcaseTokens = staticmethod(tokenMap(lambda t: _ustr(t).lower())) - """Parse action to convert tokens to lower case.""" - - -if __name__ == "__main__": - - selectToken = CaselessLiteral("select") - fromToken = CaselessLiteral("from") - - ident = Word(alphas, alphanums + "_$") - - columnName = delimitedList(ident, ".", combine=True).setParseAction(upcaseTokens) - columnNameList = Group(delimitedList(columnName)).setName("columns") - columnSpec = ('*' | columnNameList) - - tableName = delimitedList(ident, ".", combine=True).setParseAction(upcaseTokens) - tableNameList = Group(delimitedList(tableName)).setName("tables") - - simpleSQL = selectToken("command") + columnSpec("columns") + fromToken + tableNameList("tables") - - # demo runTests method, including embedded comments in test string - simpleSQL.runTests(""" - # '*' as column list and dotted table name - select * from SYS.XYZZY - - # caseless match on "SELECT", and casts back to "select" - SELECT * from XYZZY, ABC - - # list of column names, and mixed case SELECT keyword - Select AA,BB,CC from Sys.dual - - # multiple tables - Select A, B, C from Sys.dual, Table2 - - # invalid SELECT keyword - should fail - Xelect A, B, C from Sys.dual - - # incomplete command - should fail - Select - - # invalid column name - should fail - Select ^^^ frox Sys.dual - - """) - - pyparsing_common.number.runTests(""" - 100 - -100 - +100 - 3.14159 - 6.02e23 - 1e-12 - """) - - # any int or real number, returned as float - pyparsing_common.fnumber.runTests(""" - 100 - -100 - +100 - 3.14159 - 6.02e23 - 1e-12 - """) - - pyparsing_common.hex_integer.runTests(""" - 100 - FF - """) - - import uuid - pyparsing_common.uuid.setParseAction(tokenMap(uuid.UUID)) - pyparsing_common.uuid.runTests(""" - 12345678-1234-5678-1234-567812345678 - """) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/__init__.py deleted file mode 100644 index 222a196..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -from .core import TomlError -from .parser import load, loads -from .writer import dump, dumps diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/core.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/core.py deleted file mode 100644 index 0fcada4..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/core.py +++ /dev/null @@ -1,13 +0,0 @@ -class TomlError(RuntimeError): - def __init__(self, message, line, col, filename): - RuntimeError.__init__(self, message, line, col, filename) - self.message = message - self.line = line - self.col = col - self.filename = filename - - def __str__(self): - return '{}({}, {}): {}'.format(self.filename, self.line, self.col, self.message) - - def __repr__(self): - return 'TomlError({!r}, {!r}, {!r}, {!r})'.format(self.message, self.line, self.col, self.filename) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/parser.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/parser.py deleted file mode 100644 index c416ed5..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/parser.py +++ /dev/null @@ -1,374 +0,0 @@ -import string, re, sys, datetime -from .core import TomlError - -if sys.version_info[0] == 2: - _chr = unichr -else: - _chr = chr - -def load(fin, translate=lambda t, x, v: v): - return loads(fin.read(), translate=translate, filename=getattr(fin, 'name', repr(fin))) - -def loads(s, filename='<string>', translate=lambda t, x, v: v): - if isinstance(s, bytes): - s = s.decode('utf-8') - - s = s.replace('\r\n', '\n') - - root = {} - tables = {} - scope = root - - src = _Source(s, filename=filename) - ast = _p_toml(src) - - def error(msg): - raise TomlError(msg, pos[0], pos[1], filename) - - def process_value(v): - kind, text, value, pos = v - if kind == 'str' and value.startswith('\n'): - value = value[1:] - if kind == 'array': - if value and any(k != value[0][0] for k, t, v, p in value[1:]): - error('array-type-mismatch') - value = [process_value(item) for item in value] - elif kind == 'table': - value = dict([(k, process_value(value[k])) for k in value]) - return translate(kind, text, value) - - for kind, value, pos in ast: - if kind == 'kv': - k, v = value - if k in scope: - error('duplicate_keys. Key "{0}" was used more than once.'.format(k)) - scope[k] = process_value(v) - else: - is_table_array = (kind == 'table_array') - cur = tables - for name in value[:-1]: - if isinstance(cur.get(name), list): - d, cur = cur[name][-1] - else: - d, cur = cur.setdefault(name, (None, {})) - - scope = {} - name = value[-1] - if name not in cur: - if is_table_array: - cur[name] = [(scope, {})] - else: - cur[name] = (scope, {}) - elif isinstance(cur[name], list): - if not is_table_array: - error('table_type_mismatch') - cur[name].append((scope, {})) - else: - if is_table_array: - error('table_type_mismatch') - old_scope, next_table = cur[name] - if old_scope is not None: - error('duplicate_tables') - cur[name] = (scope, next_table) - - def merge_tables(scope, tables): - if scope is None: - scope = {} - for k in tables: - if k in scope: - error('key_table_conflict') - v = tables[k] - if isinstance(v, list): - scope[k] = [merge_tables(sc, tbl) for sc, tbl in v] - else: - scope[k] = merge_tables(v[0], v[1]) - return scope - - return merge_tables(root, tables) - -class _Source: - def __init__(self, s, filename=None): - self.s = s - self._pos = (1, 1) - self._last = None - self._filename = filename - self.backtrack_stack = [] - - def last(self): - return self._last - - def pos(self): - return self._pos - - def fail(self): - return self._expect(None) - - def consume_dot(self): - if self.s: - self._last = self.s[0] - self.s = self[1:] - self._advance(self._last) - return self._last - return None - - def expect_dot(self): - return self._expect(self.consume_dot()) - - def consume_eof(self): - if not self.s: - self._last = '' - return True - return False - - def expect_eof(self): - return self._expect(self.consume_eof()) - - def consume(self, s): - if self.s.startswith(s): - self.s = self.s[len(s):] - self._last = s - self._advance(s) - return True - return False - - def expect(self, s): - return self._expect(self.consume(s)) - - def consume_re(self, re): - m = re.match(self.s) - if m: - self.s = self.s[len(m.group(0)):] - self._last = m - self._advance(m.group(0)) - return m - return None - - def expect_re(self, re): - return self._expect(self.consume_re(re)) - - def __enter__(self): - self.backtrack_stack.append((self.s, self._pos)) - - def __exit__(self, type, value, traceback): - if type is None: - self.backtrack_stack.pop() - else: - self.s, self._pos = self.backtrack_stack.pop() - return type == TomlError - - def commit(self): - self.backtrack_stack[-1] = (self.s, self._pos) - - def _expect(self, r): - if not r: - raise TomlError('msg', self._pos[0], self._pos[1], self._filename) - return r - - def _advance(self, s): - suffix_pos = s.rfind('\n') - if suffix_pos == -1: - self._pos = (self._pos[0], self._pos[1] + len(s)) - else: - self._pos = (self._pos[0] + s.count('\n'), len(s) - suffix_pos) - -_ews_re = re.compile(r'(?:[ \t]|#[^\n]*\n|#[^\n]*\Z|\n)*') -def _p_ews(s): - s.expect_re(_ews_re) - -_ws_re = re.compile(r'[ \t]*') -def _p_ws(s): - s.expect_re(_ws_re) - -_escapes = { 'b': '\b', 'n': '\n', 'r': '\r', 't': '\t', '"': '"', '\'': '\'', - '\\': '\\', '/': '/', 'f': '\f' } - -_basicstr_re = re.compile(r'[^"\\\000-\037]*') -_short_uni_re = re.compile(r'u([0-9a-fA-F]{4})') -_long_uni_re = re.compile(r'U([0-9a-fA-F]{8})') -_escapes_re = re.compile('[bnrt"\'\\\\/f]') -_newline_esc_re = re.compile('\n[ \t\n]*') -def _p_basicstr_content(s, content=_basicstr_re): - res = [] - while True: - res.append(s.expect_re(content).group(0)) - if not s.consume('\\'): - break - if s.consume_re(_newline_esc_re): - pass - elif s.consume_re(_short_uni_re) or s.consume_re(_long_uni_re): - res.append(_chr(int(s.last().group(1), 16))) - else: - s.expect_re(_escapes_re) - res.append(_escapes[s.last().group(0)]) - return ''.join(res) - -_key_re = re.compile(r'[0-9a-zA-Z-_]+') -def _p_key(s): - with s: - s.expect('"') - r = _p_basicstr_content(s, _basicstr_re) - s.expect('"') - return r - if s.consume('\''): - if s.consume('\'\''): - r = s.expect_re(_litstr_ml_re).group(0) - s.expect('\'\'\'') - else: - r = s.expect_re(_litstr_re).group(0) - s.expect('\'') - return r - return s.expect_re(_key_re).group(0) - -_float_re = re.compile(r'[+-]?(?:0|[1-9](?:_?\d)*)(?:\.\d(?:_?\d)*)?(?:[eE][+-]?(?:\d(?:_?\d)*))?') -_datetime_re = re.compile(r'(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?(?:Z|([+-]\d{2}):(\d{2}))') - -_basicstr_ml_re = re.compile(r'(?:(?:|"|"")[^"\\\000-\011\013-\037])*') -_litstr_re = re.compile(r"[^'\000-\037]*") -_litstr_ml_re = re.compile(r"(?:(?:|'|'')(?:[^'\000-\011\013-\037]))*") -def _p_value(s): - pos = s.pos() - - if s.consume('true'): - return 'bool', s.last(), True, pos - if s.consume('false'): - return 'bool', s.last(), False, pos - - if s.consume('"'): - if s.consume('""'): - r = _p_basicstr_content(s, _basicstr_ml_re) - s.expect('"""') - else: - r = _p_basicstr_content(s, _basicstr_re) - s.expect('"') - return 'str', r, r, pos - - if s.consume('\''): - if s.consume('\'\''): - r = s.expect_re(_litstr_ml_re).group(0) - s.expect('\'\'\'') - else: - r = s.expect_re(_litstr_re).group(0) - s.expect('\'') - return 'str', r, r, pos - - if s.consume_re(_datetime_re): - m = s.last() - s0 = m.group(0) - r = map(int, m.groups()[:6]) - if m.group(7): - micro = float(m.group(7)) - else: - micro = 0 - - if m.group(8): - g = int(m.group(8), 10) * 60 + int(m.group(9), 10) - tz = _TimeZone(datetime.timedelta(0, g * 60)) - else: - tz = _TimeZone(datetime.timedelta(0, 0)) - - y, m, d, H, M, S = r - dt = datetime.datetime(y, m, d, H, M, S, int(micro * 1000000), tz) - return 'datetime', s0, dt, pos - - if s.consume_re(_float_re): - m = s.last().group(0) - r = m.replace('_','') - if '.' in m or 'e' in m or 'E' in m: - return 'float', m, float(r), pos - else: - return 'int', m, int(r, 10), pos - - if s.consume('['): - items = [] - with s: - while True: - _p_ews(s) - items.append(_p_value(s)) - s.commit() - _p_ews(s) - s.expect(',') - s.commit() - _p_ews(s) - s.expect(']') - return 'array', None, items, pos - - if s.consume('{'): - _p_ws(s) - items = {} - if not s.consume('}'): - k = _p_key(s) - _p_ws(s) - s.expect('=') - _p_ws(s) - items[k] = _p_value(s) - _p_ws(s) - while s.consume(','): - _p_ws(s) - k = _p_key(s) - _p_ws(s) - s.expect('=') - _p_ws(s) - items[k] = _p_value(s) - _p_ws(s) - s.expect('}') - return 'table', None, items, pos - - s.fail() - -def _p_stmt(s): - pos = s.pos() - if s.consume( '['): - is_array = s.consume('[') - _p_ws(s) - keys = [_p_key(s)] - _p_ws(s) - while s.consume('.'): - _p_ws(s) - keys.append(_p_key(s)) - _p_ws(s) - s.expect(']') - if is_array: - s.expect(']') - return 'table_array' if is_array else 'table', keys, pos - - key = _p_key(s) - _p_ws(s) - s.expect('=') - _p_ws(s) - value = _p_value(s) - return 'kv', (key, value), pos - -_stmtsep_re = re.compile(r'(?:[ \t]*(?:#[^\n]*)?\n)+[ \t]*') -def _p_toml(s): - stmts = [] - _p_ews(s) - with s: - stmts.append(_p_stmt(s)) - while True: - s.commit() - s.expect_re(_stmtsep_re) - stmts.append(_p_stmt(s)) - _p_ews(s) - s.expect_eof() - return stmts - -class _TimeZone(datetime.tzinfo): - def __init__(self, offset): - self._offset = offset - - def utcoffset(self, dt): - return self._offset - - def dst(self, dt): - return None - - def tzname(self, dt): - m = self._offset.total_seconds() // 60 - if m < 0: - res = '-' - m = -m - else: - res = '+' - h = m // 60 - m = m - h * 60 - return '{}{:.02}{:.02}'.format(res, h, m) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/writer.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/writer.py deleted file mode 100644 index 19a8c6e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/pytoml/writer.py +++ /dev/null @@ -1,127 +0,0 @@ -from __future__ import unicode_literals -import io, datetime, math, sys - -if sys.version_info[0] == 3: - long = int - unicode = str - - -def dumps(obj, sort_keys=False): - fout = io.StringIO() - dump(obj, fout, sort_keys=sort_keys) - return fout.getvalue() - - -_escapes = {'\n': 'n', '\r': 'r', '\\': '\\', '\t': 't', '\b': 'b', '\f': 'f', '"': '"'} - - -def _escape_string(s): - res = [] - start = 0 - - def flush(): - if start != i: - res.append(s[start:i]) - return i + 1 - - i = 0 - while i < len(s): - c = s[i] - if c in '"\\\n\r\t\b\f': - start = flush() - res.append('\\' + _escapes[c]) - elif ord(c) < 0x20: - start = flush() - res.append('\\u%04x' % ord(c)) - i += 1 - - flush() - return '"' + ''.join(res) + '"' - - -def _escape_id(s): - if any(not c.isalnum() and c not in '-_' for c in s): - return _escape_string(s) - return s - - -def _format_list(v): - return '[{0}]'.format(', '.join(_format_value(obj) for obj in v)) - -# Formula from: -# https://docs.python.org/2/library/datetime.html#datetime.timedelta.total_seconds -# Once support for py26 is dropped, this can be replaced by td.total_seconds() -def _total_seconds(td): - return ((td.microseconds - + (td.seconds + td.days * 24 * 3600) * 10**6) / 10.0**6) - -def _format_value(v): - if isinstance(v, bool): - return 'true' if v else 'false' - if isinstance(v, int) or isinstance(v, long): - return unicode(v) - if isinstance(v, float): - if math.isnan(v) or math.isinf(v): - raise ValueError("{0} is not a valid TOML value".format(v)) - else: - return repr(v) - elif isinstance(v, unicode) or isinstance(v, bytes): - return _escape_string(v) - elif isinstance(v, datetime.datetime): - offs = v.utcoffset() - offs = _total_seconds(offs) // 60 if offs is not None else 0 - - if offs == 0: - suffix = 'Z' - else: - if offs > 0: - suffix = '+' - else: - suffix = '-' - offs = -offs - suffix = '{0}{1:.02}{2:.02}'.format(suffix, offs // 60, offs % 60) - - if v.microsecond: - return v.strftime('%Y-%m-%dT%H:%M:%S.%f') + suffix - else: - return v.strftime('%Y-%m-%dT%H:%M:%S') + suffix - elif isinstance(v, list): - return _format_list(v) - else: - raise RuntimeError(v) - - -def dump(obj, fout, sort_keys=False): - tables = [((), obj, False)] - - while tables: - name, table, is_array = tables.pop() - if name: - section_name = '.'.join(_escape_id(c) for c in name) - if is_array: - fout.write('[[{0}]]\n'.format(section_name)) - else: - fout.write('[{0}]\n'.format(section_name)) - - table_keys = sorted(table.keys()) if sort_keys else table.keys() - new_tables = [] - has_kv = False - for k in table_keys: - v = table[k] - if isinstance(v, dict): - new_tables.append((name + (k,), v, False)) - elif isinstance(v, list) and v and all(isinstance(o, dict) for o in v): - new_tables.extend((name + (k,), d, True) for d in v) - elif v is None: - # based on mojombo's comment: https://github.com/toml-lang/toml/issues/146#issuecomment-25019344 - fout.write( - '#{} = null # To use: uncomment and replace null with value\n'.format(_escape_id(k))) - has_kv = True - else: - fout.write('{0} = {1}\n'.format(_escape_id(k), _format_value(v))) - has_kv = True - - tables.extend(reversed(new_tables)) - - if (name or has_kv) and tables: - fout.write('\n') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__init__.py deleted file mode 100644 index f9565cb..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__init__.py +++ /dev/null @@ -1,123 +0,0 @@ -# -*- coding: utf-8 -*- - -# __ -# /__) _ _ _ _ _/ _ -# / ( (- (/ (/ (- _) / _) -# / - -""" -Requests HTTP Library -~~~~~~~~~~~~~~~~~~~~~ - -Requests is an HTTP library, written in Python, for human beings. Basic GET -usage: - - >>> import requests - >>> r = requests.get('https://www.python.org') - >>> r.status_code - 200 - >>> 'Python is a programming language' in r.content - True - -... or POST: - - >>> payload = dict(key1='value1', key2='value2') - >>> r = requests.post('http://httpbin.org/post', data=payload) - >>> print(r.text) - { - ... - "form": { - "key2": "value2", - "key1": "value1" - }, - ... - } - -The other HTTP methods are supported - see `requests.api`. Full documentation -is at <http://python-requests.org>. - -:copyright: (c) 2017 by Kenneth Reitz. -:license: Apache 2.0, see LICENSE for more details. -""" - -from pip._vendor import urllib3 -from pip._vendor import chardet -import warnings -from .exceptions import RequestsDependencyWarning - - -def check_compatibility(urllib3_version, chardet_version): - urllib3_version = urllib3_version.split('.') - assert urllib3_version != ['dev'] # Verify urllib3 isn't installed from git. - - # Sometimes, urllib3 only reports its version as 16.1. - if len(urllib3_version) == 2: - urllib3_version.append('0') - - # Check urllib3 for compatibility. - major, minor, patch = urllib3_version # noqa: F811 - major, minor, patch = int(major), int(minor), int(patch) - # urllib3 >= 1.21.1, <= 1.22 - assert major == 1 - assert minor >= 21 - assert minor <= 22 - - # Check chardet for compatibility. - major, minor, patch = chardet_version.split('.')[:3] - major, minor, patch = int(major), int(minor), int(patch) - # chardet >= 3.0.2, < 3.1.0 - assert major == 3 - assert minor < 1 - assert patch >= 2 - - -# Check imported dependencies for compatibility. -try: - check_compatibility(urllib3.__version__, chardet.__version__) -except (AssertionError, ValueError): - warnings.warn("urllib3 ({0}) or chardet ({1}) doesn't match a supported " - "version!".format(urllib3.__version__, chardet.__version__), - RequestsDependencyWarning) - -# Attempt to enable urllib3's SNI support, if possible -from pip._internal.compat import WINDOWS -if not WINDOWS: - try: - from pip._vendor.urllib3.contrib import pyopenssl - pyopenssl.inject_into_urllib3() - except ImportError: - pass - -# urllib3's DependencyWarnings should be silenced. -from pip._vendor.urllib3.exceptions import DependencyWarning -warnings.simplefilter('ignore', DependencyWarning) - -from .__version__ import __title__, __description__, __url__, __version__ -from .__version__ import __build__, __author__, __author_email__, __license__ -from .__version__ import __copyright__, __cake__ - -from . import utils -from . import packages -from .models import Request, Response, PreparedRequest -from .api import request, get, head, post, patch, put, delete, options -from .sessions import session, Session -from .status_codes import codes -from .exceptions import ( - RequestException, Timeout, URLRequired, - TooManyRedirects, HTTPError, ConnectionError, - FileModeWarning, ConnectTimeout, ReadTimeout -) - -# Set default logging handler to avoid "No handler found" warnings. -import logging -try: # Python 2.7+ - from logging import NullHandler -except ImportError: - class NullHandler(logging.Handler): - def emit(self, record): - pass - -logging.getLogger(__name__).addHandler(NullHandler()) - -# FileModeWarnings go off per the default. -warnings.simplefilter('default', FileModeWarning, append=True) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__version__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__version__.py deleted file mode 100644 index d380286..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/__version__.py +++ /dev/null @@ -1,14 +0,0 @@ -# .-. .-. .-. . . .-. .-. .-. .-. -# |( |- |.| | | |- `-. | `-. -# ' ' `-' `-`.`-' `-' `-' ' `-' - -__title__ = 'requests' -__description__ = 'Python HTTP for Humans.' -__url__ = 'http://python-requests.org' -__version__ = '2.18.4' -__build__ = 0x021804 -__author__ = 'Kenneth Reitz' -__author_email__ = 'me@kennethreitz.org' -__license__ = 'Apache 2.0' -__copyright__ = 'Copyright 2017 Kenneth Reitz' -__cake__ = u'\u2728 \U0001f370 \u2728' diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/_internal_utils.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/_internal_utils.py deleted file mode 100644 index 405b025..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/_internal_utils.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests._internal_utils -~~~~~~~~~~~~~~ - -Provides utility functions that are consumed internally by Requests -which depend on extremely few external helpers (such as compat) -""" - -from .compat import is_py2, builtin_str, str - - -def to_native_string(string, encoding='ascii'): - """Given a string object, regardless of type, returns a representation of - that string in the native string type, encoding and decoding where - necessary. This assumes ASCII unless told otherwise. - """ - if isinstance(string, builtin_str): - out = string - else: - if is_py2: - out = string.encode(encoding) - else: - out = string.decode(encoding) - - return out - - -def unicode_is_ascii(u_string): - """Determine if unicode string only contains ASCII characters. - - :param str u_string: unicode string to check. Must be unicode - and not Python 2 `str`. - :rtype: bool - """ - assert isinstance(u_string, str) - try: - u_string.encode('ascii') - return True - except UnicodeEncodeError: - return False diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/adapters.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/adapters.py deleted file mode 100644 index c50585c..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/adapters.py +++ /dev/null @@ -1,525 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.adapters -~~~~~~~~~~~~~~~~~ - -This module contains the transport adapters that Requests uses to define -and maintain connections. -""" - -import os.path -import socket - -from pip._vendor.urllib3.poolmanager import PoolManager, proxy_from_url -from pip._vendor.urllib3.response import HTTPResponse -from pip._vendor.urllib3.util import Timeout as TimeoutSauce -from pip._vendor.urllib3.util.retry import Retry -from pip._vendor.urllib3.exceptions import ClosedPoolError -from pip._vendor.urllib3.exceptions import ConnectTimeoutError -from pip._vendor.urllib3.exceptions import HTTPError as _HTTPError -from pip._vendor.urllib3.exceptions import MaxRetryError -from pip._vendor.urllib3.exceptions import NewConnectionError -from pip._vendor.urllib3.exceptions import ProxyError as _ProxyError -from pip._vendor.urllib3.exceptions import ProtocolError -from pip._vendor.urllib3.exceptions import ReadTimeoutError -from pip._vendor.urllib3.exceptions import SSLError as _SSLError -from pip._vendor.urllib3.exceptions import ResponseError - -from .models import Response -from .compat import urlparse, basestring -from .utils import (DEFAULT_CA_BUNDLE_PATH, get_encoding_from_headers, - prepend_scheme_if_needed, get_auth_from_url, urldefragauth, - select_proxy) -from .structures import CaseInsensitiveDict -from .cookies import extract_cookies_to_jar -from .exceptions import (ConnectionError, ConnectTimeout, ReadTimeout, SSLError, - ProxyError, RetryError, InvalidSchema) -from .auth import _basic_auth_str - -try: - from pip._vendor.urllib3.contrib.socks import SOCKSProxyManager -except ImportError: - def SOCKSProxyManager(*args, **kwargs): - raise InvalidSchema("Missing dependencies for SOCKS support.") - -DEFAULT_POOLBLOCK = False -DEFAULT_POOLSIZE = 10 -DEFAULT_RETRIES = 0 -DEFAULT_POOL_TIMEOUT = None - - -class BaseAdapter(object): - """The Base Transport Adapter""" - - def __init__(self): - super(BaseAdapter, self).__init__() - - def send(self, request, stream=False, timeout=None, verify=True, - cert=None, proxies=None): - """Sends PreparedRequest object. Returns Response object. - - :param request: The :class:`PreparedRequest <PreparedRequest>` being sent. - :param stream: (optional) Whether to stream the request content. - :param timeout: (optional) How long to wait for the server to send - data before giving up, as a float, or a :ref:`(connect timeout, - read timeout) <timeouts>` tuple. - :type timeout: float or tuple - :param verify: (optional) Either a boolean, in which case it controls whether we verify - the server's TLS certificate, or a string, in which case it must be a path - to a CA bundle to use - :param cert: (optional) Any user-provided SSL certificate to be trusted. - :param proxies: (optional) The proxies dictionary to apply to the request. - """ - raise NotImplementedError - - def close(self): - """Cleans up adapter specific items.""" - raise NotImplementedError - - -class HTTPAdapter(BaseAdapter): - """The built-in HTTP Adapter for urllib3. - - Provides a general-case interface for Requests sessions to contact HTTP and - HTTPS urls by implementing the Transport Adapter interface. This class will - usually be created by the :class:`Session <Session>` class under the - covers. - - :param pool_connections: The number of urllib3 connection pools to cache. - :param pool_maxsize: The maximum number of connections to save in the pool. - :param max_retries: The maximum number of retries each connection - should attempt. Note, this applies only to failed DNS lookups, socket - connections and connection timeouts, never to requests where data has - made it to the server. By default, Requests does not retry failed - connections. If you need granular control over the conditions under - which we retry a request, import urllib3's ``Retry`` class and pass - that instead. - :param pool_block: Whether the connection pool should block for connections. - - Usage:: - - >>> import requests - >>> s = requests.Session() - >>> a = requests.adapters.HTTPAdapter(max_retries=3) - >>> s.mount('http://', a) - """ - __attrs__ = ['max_retries', 'config', '_pool_connections', '_pool_maxsize', - '_pool_block'] - - def __init__(self, pool_connections=DEFAULT_POOLSIZE, - pool_maxsize=DEFAULT_POOLSIZE, max_retries=DEFAULT_RETRIES, - pool_block=DEFAULT_POOLBLOCK): - if max_retries == DEFAULT_RETRIES: - self.max_retries = Retry(0, read=False) - else: - self.max_retries = Retry.from_int(max_retries) - self.config = {} - self.proxy_manager = {} - - super(HTTPAdapter, self).__init__() - - self._pool_connections = pool_connections - self._pool_maxsize = pool_maxsize - self._pool_block = pool_block - - self.init_poolmanager(pool_connections, pool_maxsize, block=pool_block) - - def __getstate__(self): - return dict((attr, getattr(self, attr, None)) for attr in - self.__attrs__) - - def __setstate__(self, state): - # Can't handle by adding 'proxy_manager' to self.__attrs__ because - # self.poolmanager uses a lambda function, which isn't pickleable. - self.proxy_manager = {} - self.config = {} - - for attr, value in state.items(): - setattr(self, attr, value) - - self.init_poolmanager(self._pool_connections, self._pool_maxsize, - block=self._pool_block) - - def init_poolmanager(self, connections, maxsize, block=DEFAULT_POOLBLOCK, **pool_kwargs): - """Initializes a urllib3 PoolManager. - - This method should not be called from user code, and is only - exposed for use when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param connections: The number of urllib3 connection pools to cache. - :param maxsize: The maximum number of connections to save in the pool. - :param block: Block when no free connections are available. - :param pool_kwargs: Extra keyword arguments used to initialize the Pool Manager. - """ - # save these values for pickling - self._pool_connections = connections - self._pool_maxsize = maxsize - self._pool_block = block - - self.poolmanager = PoolManager(num_pools=connections, maxsize=maxsize, - block=block, strict=True, **pool_kwargs) - - def proxy_manager_for(self, proxy, **proxy_kwargs): - """Return urllib3 ProxyManager for the given proxy. - - This method should not be called from user code, and is only - exposed for use when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param proxy: The proxy to return a urllib3 ProxyManager for. - :param proxy_kwargs: Extra keyword arguments used to configure the Proxy Manager. - :returns: ProxyManager - :rtype: urllib3.ProxyManager - """ - if proxy in self.proxy_manager: - manager = self.proxy_manager[proxy] - elif proxy.lower().startswith('socks'): - username, password = get_auth_from_url(proxy) - manager = self.proxy_manager[proxy] = SOCKSProxyManager( - proxy, - username=username, - password=password, - num_pools=self._pool_connections, - maxsize=self._pool_maxsize, - block=self._pool_block, - **proxy_kwargs - ) - else: - proxy_headers = self.proxy_headers(proxy) - manager = self.proxy_manager[proxy] = proxy_from_url( - proxy, - proxy_headers=proxy_headers, - num_pools=self._pool_connections, - maxsize=self._pool_maxsize, - block=self._pool_block, - **proxy_kwargs) - - return manager - - def cert_verify(self, conn, url, verify, cert): - """Verify a SSL certificate. This method should not be called from user - code, and is only exposed for use when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param conn: The urllib3 connection object associated with the cert. - :param url: The requested URL. - :param verify: Either a boolean, in which case it controls whether we verify - the server's TLS certificate, or a string, in which case it must be a path - to a CA bundle to use - :param cert: The SSL certificate to verify. - """ - if url.lower().startswith('https') and verify: - - cert_loc = None - - # Allow self-specified cert location. - if verify is not True: - cert_loc = verify - - if not cert_loc: - cert_loc = DEFAULT_CA_BUNDLE_PATH - - if not cert_loc or not os.path.exists(cert_loc): - raise IOError("Could not find a suitable TLS CA certificate bundle, " - "invalid path: {0}".format(cert_loc)) - - conn.cert_reqs = 'CERT_REQUIRED' - - if not os.path.isdir(cert_loc): - conn.ca_certs = cert_loc - else: - conn.ca_cert_dir = cert_loc - else: - conn.cert_reqs = 'CERT_NONE' - conn.ca_certs = None - conn.ca_cert_dir = None - - if cert: - if not isinstance(cert, basestring): - conn.cert_file = cert[0] - conn.key_file = cert[1] - else: - conn.cert_file = cert - conn.key_file = None - if conn.cert_file and not os.path.exists(conn.cert_file): - raise IOError("Could not find the TLS certificate file, " - "invalid path: {0}".format(conn.cert_file)) - if conn.key_file and not os.path.exists(conn.key_file): - raise IOError("Could not find the TLS key file, " - "invalid path: {0}".format(conn.key_file)) - - def build_response(self, req, resp): - """Builds a :class:`Response <requests.Response>` object from a urllib3 - response. This should not be called from user code, and is only exposed - for use when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>` - - :param req: The :class:`PreparedRequest <PreparedRequest>` used to generate the response. - :param resp: The urllib3 response object. - :rtype: requests.Response - """ - response = Response() - - # Fallback to None if there's no status_code, for whatever reason. - response.status_code = getattr(resp, 'status', None) - - # Make headers case-insensitive. - response.headers = CaseInsensitiveDict(getattr(resp, 'headers', {})) - - # Set encoding. - response.encoding = get_encoding_from_headers(response.headers) - response.raw = resp - response.reason = response.raw.reason - - if isinstance(req.url, bytes): - response.url = req.url.decode('utf-8') - else: - response.url = req.url - - # Add new cookies from the server. - extract_cookies_to_jar(response.cookies, req, resp) - - # Give the Response some context. - response.request = req - response.connection = self - - return response - - def get_connection(self, url, proxies=None): - """Returns a urllib3 connection for the given URL. This should not be - called from user code, and is only exposed for use when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param url: The URL to connect to. - :param proxies: (optional) A Requests-style dictionary of proxies used on this request. - :rtype: urllib3.ConnectionPool - """ - proxy = select_proxy(url, proxies) - - if proxy: - proxy = prepend_scheme_if_needed(proxy, 'http') - proxy_manager = self.proxy_manager_for(proxy) - conn = proxy_manager.connection_from_url(url) - else: - # Only scheme should be lower case - parsed = urlparse(url) - url = parsed.geturl() - conn = self.poolmanager.connection_from_url(url) - - return conn - - def close(self): - """Disposes of any internal state. - - Currently, this closes the PoolManager and any active ProxyManager, - which closes any pooled connections. - """ - self.poolmanager.clear() - for proxy in self.proxy_manager.values(): - proxy.clear() - - def request_url(self, request, proxies): - """Obtain the url to use when making the final request. - - If the message is being sent through a HTTP proxy, the full URL has to - be used. Otherwise, we should only use the path portion of the URL. - - This should not be called from user code, and is only exposed for use - when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param request: The :class:`PreparedRequest <PreparedRequest>` being sent. - :param proxies: A dictionary of schemes or schemes and hosts to proxy URLs. - :rtype: str - """ - proxy = select_proxy(request.url, proxies) - scheme = urlparse(request.url).scheme - - is_proxied_http_request = (proxy and scheme != 'https') - using_socks_proxy = False - if proxy: - proxy_scheme = urlparse(proxy).scheme.lower() - using_socks_proxy = proxy_scheme.startswith('socks') - - url = request.path_url - if is_proxied_http_request and not using_socks_proxy: - url = urldefragauth(request.url) - - return url - - def add_headers(self, request, **kwargs): - """Add any headers needed by the connection. As of v2.0 this does - nothing by default, but is left for overriding by users that subclass - the :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - This should not be called from user code, and is only exposed for use - when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param request: The :class:`PreparedRequest <PreparedRequest>` to add headers to. - :param kwargs: The keyword arguments from the call to send(). - """ - pass - - def proxy_headers(self, proxy): - """Returns a dictionary of the headers to add to any request sent - through a proxy. This works with urllib3 magic to ensure that they are - correctly sent to the proxy, rather than in a tunnelled request if - CONNECT is being used. - - This should not be called from user code, and is only exposed for use - when subclassing the - :class:`HTTPAdapter <requests.adapters.HTTPAdapter>`. - - :param proxies: The url of the proxy being used for this request. - :rtype: dict - """ - headers = {} - username, password = get_auth_from_url(proxy) - - if username: - headers['Proxy-Authorization'] = _basic_auth_str(username, - password) - - return headers - - def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): - """Sends PreparedRequest object. Returns Response object. - - :param request: The :class:`PreparedRequest <PreparedRequest>` being sent. - :param stream: (optional) Whether to stream the request content. - :param timeout: (optional) How long to wait for the server to send - data before giving up, as a float, or a :ref:`(connect timeout, - read timeout) <timeouts>` tuple. - :type timeout: float or tuple or urllib3 Timeout object - :param verify: (optional) Either a boolean, in which case it controls whether - we verify the server's TLS certificate, or a string, in which case it - must be a path to a CA bundle to use - :param cert: (optional) Any user-provided SSL certificate to be trusted. - :param proxies: (optional) The proxies dictionary to apply to the request. - :rtype: requests.Response - """ - - conn = self.get_connection(request.url, proxies) - - self.cert_verify(conn, request.url, verify, cert) - url = self.request_url(request, proxies) - self.add_headers(request) - - chunked = not (request.body is None or 'Content-Length' in request.headers) - - if isinstance(timeout, tuple): - try: - connect, read = timeout - timeout = TimeoutSauce(connect=connect, read=read) - except ValueError as e: - # this may raise a string formatting error. - err = ("Invalid timeout {0}. Pass a (connect, read) " - "timeout tuple, or a single float to set " - "both timeouts to the same value".format(timeout)) - raise ValueError(err) - elif isinstance(timeout, TimeoutSauce): - pass - else: - timeout = TimeoutSauce(connect=timeout, read=timeout) - - try: - if not chunked: - resp = conn.urlopen( - method=request.method, - url=url, - body=request.body, - headers=request.headers, - redirect=False, - assert_same_host=False, - preload_content=False, - decode_content=False, - retries=self.max_retries, - timeout=timeout - ) - - # Send the request. - else: - if hasattr(conn, 'proxy_pool'): - conn = conn.proxy_pool - - low_conn = conn._get_conn(timeout=DEFAULT_POOL_TIMEOUT) - - try: - low_conn.putrequest(request.method, - url, - skip_accept_encoding=True) - - for header, value in request.headers.items(): - low_conn.putheader(header, value) - - low_conn.endheaders() - - for i in request.body: - low_conn.send(hex(len(i))[2:].encode('utf-8')) - low_conn.send(b'\r\n') - low_conn.send(i) - low_conn.send(b'\r\n') - low_conn.send(b'0\r\n\r\n') - - # Receive the response from the server - try: - # For Python 2.7+ versions, use buffering of HTTP - # responses - r = low_conn.getresponse(buffering=True) - except TypeError: - # For compatibility with Python 2.6 versions and back - r = low_conn.getresponse() - - resp = HTTPResponse.from_httplib( - r, - pool=conn, - connection=low_conn, - preload_content=False, - decode_content=False - ) - except: - # If we hit any problems here, clean up the connection. - # Then, reraise so that we can handle the actual exception. - low_conn.close() - raise - - except (ProtocolError, socket.error) as err: - raise ConnectionError(err, request=request) - - except MaxRetryError as e: - if isinstance(e.reason, ConnectTimeoutError): - # TODO: Remove this in 3.0.0: see #2811 - if not isinstance(e.reason, NewConnectionError): - raise ConnectTimeout(e, request=request) - - if isinstance(e.reason, ResponseError): - raise RetryError(e, request=request) - - if isinstance(e.reason, _ProxyError): - raise ProxyError(e, request=request) - - if isinstance(e.reason, _SSLError): - # This branch is for urllib3 v1.22 and later. - raise SSLError(e, request=request) - - raise ConnectionError(e, request=request) - - except ClosedPoolError as e: - raise ConnectionError(e, request=request) - - except _ProxyError as e: - raise ProxyError(e) - - except (_SSLError, _HTTPError) as e: - if isinstance(e, _SSLError): - # This branch is for urllib3 versions earlier than v1.22 - raise SSLError(e, request=request) - elif isinstance(e, ReadTimeoutError): - raise ReadTimeout(e, request=request) - else: - raise - - return self.build_response(request, resp) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/api.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/api.py deleted file mode 100644 index f9ffabf..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/api.py +++ /dev/null @@ -1,152 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.api -~~~~~~~~~~~~ - -This module implements the Requests API. - -:copyright: (c) 2012 by Kenneth Reitz. -:license: Apache2, see LICENSE for more details. -""" - -from . import sessions - - -def request(method, url, **kwargs): - """Constructs and sends a :class:`Request <Request>`. - - :param method: method for the new :class:`Request` object. - :param url: URL for the new :class:`Request` object. - :param params: (optional) Dictionary or bytes to be sent in the query string for the :class:`Request`. - :param data: (optional) Dictionary or list of tuples ``[(key, value)]`` (will be form-encoded), bytes, or file-like object to send in the body of the :class:`Request`. - :param json: (optional) json data to send in the body of the :class:`Request`. - :param headers: (optional) Dictionary of HTTP Headers to send with the :class:`Request`. - :param cookies: (optional) Dict or CookieJar object to send with the :class:`Request`. - :param files: (optional) Dictionary of ``'name': file-like-objects`` (or ``{'name': file-tuple}``) for multipart encoding upload. - ``file-tuple`` can be a 2-tuple ``('filename', fileobj)``, 3-tuple ``('filename', fileobj, 'content_type')`` - or a 4-tuple ``('filename', fileobj, 'content_type', custom_headers)``, where ``'content-type'`` is a string - defining the content type of the given file and ``custom_headers`` a dict-like object containing additional headers - to add for the file. - :param auth: (optional) Auth tuple to enable Basic/Digest/Custom HTTP Auth. - :param timeout: (optional) How many seconds to wait for the server to send data - before giving up, as a float, or a :ref:`(connect timeout, read - timeout) <timeouts>` tuple. - :type timeout: float or tuple - :param allow_redirects: (optional) Boolean. Enable/disable GET/OPTIONS/POST/PUT/PATCH/DELETE/HEAD redirection. Defaults to ``True``. - :type allow_redirects: bool - :param proxies: (optional) Dictionary mapping protocol to the URL of the proxy. - :param verify: (optional) Either a boolean, in which case it controls whether we verify - the server's TLS certificate, or a string, in which case it must be a path - to a CA bundle to use. Defaults to ``True``. - :param stream: (optional) if ``False``, the response content will be immediately downloaded. - :param cert: (optional) if String, path to ssl client cert file (.pem). If Tuple, ('cert', 'key') pair. - :return: :class:`Response <Response>` object - :rtype: requests.Response - - Usage:: - - >>> import requests - >>> req = requests.request('GET', 'http://httpbin.org/get') - <Response [200]> - """ - - # By using the 'with' statement we are sure the session is closed, thus we - # avoid leaving sockets open which can trigger a ResourceWarning in some - # cases, and look like a memory leak in others. - with sessions.Session() as session: - return session.request(method=method, url=url, **kwargs) - - -def get(url, params=None, **kwargs): - r"""Sends a GET request. - - :param url: URL for the new :class:`Request` object. - :param params: (optional) Dictionary or bytes to be sent in the query string for the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', True) - return request('get', url, params=params, **kwargs) - - -def options(url, **kwargs): - r"""Sends an OPTIONS request. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', True) - return request('options', url, **kwargs) - - -def head(url, **kwargs): - r"""Sends a HEAD request. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', False) - return request('head', url, **kwargs) - - -def post(url, data=None, json=None, **kwargs): - r"""Sends a POST request. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary (will be form-encoded), bytes, or file-like object to send in the body of the :class:`Request`. - :param json: (optional) json data to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - return request('post', url, data=data, json=json, **kwargs) - - -def put(url, data=None, **kwargs): - r"""Sends a PUT request. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary (will be form-encoded), bytes, or file-like object to send in the body of the :class:`Request`. - :param json: (optional) json data to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - return request('put', url, data=data, **kwargs) - - -def patch(url, data=None, **kwargs): - r"""Sends a PATCH request. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary (will be form-encoded), bytes, or file-like object to send in the body of the :class:`Request`. - :param json: (optional) json data to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - return request('patch', url, data=data, **kwargs) - - -def delete(url, **kwargs): - r"""Sends a DELETE request. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :return: :class:`Response <Response>` object - :rtype: requests.Response - """ - - return request('delete', url, **kwargs) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/auth.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/auth.py deleted file mode 100644 index 73e4534..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/auth.py +++ /dev/null @@ -1,293 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.auth -~~~~~~~~~~~~~ - -This module contains the authentication handlers for Requests. -""" - -import os -import re -import time -import hashlib -import threading -import warnings - -from base64 import b64encode - -from .compat import urlparse, str, basestring -from .cookies import extract_cookies_to_jar -from ._internal_utils import to_native_string -from .utils import parse_dict_header - -CONTENT_TYPE_FORM_URLENCODED = 'application/x-www-form-urlencoded' -CONTENT_TYPE_MULTI_PART = 'multipart/form-data' - - -def _basic_auth_str(username, password): - """Returns a Basic Auth string.""" - - # "I want us to put a big-ol' comment on top of it that - # says that this behaviour is dumb but we need to preserve - # it because people are relying on it." - # - Lukasa - # - # These are here solely to maintain backwards compatibility - # for things like ints. This will be removed in 3.0.0. - if not isinstance(username, basestring): - warnings.warn( - "Non-string usernames will no longer be supported in Requests " - "3.0.0. Please convert the object you've passed in ({0!r}) to " - "a string or bytes object in the near future to avoid " - "problems.".format(username), - category=DeprecationWarning, - ) - username = str(username) - - if not isinstance(password, basestring): - warnings.warn( - "Non-string passwords will no longer be supported in Requests " - "3.0.0. Please convert the object you've passed in ({0!r}) to " - "a string or bytes object in the near future to avoid " - "problems.".format(password), - category=DeprecationWarning, - ) - password = str(password) - # -- End Removal -- - - if isinstance(username, str): - username = username.encode('latin1') - - if isinstance(password, str): - password = password.encode('latin1') - - authstr = 'Basic ' + to_native_string( - b64encode(b':'.join((username, password))).strip() - ) - - return authstr - - -class AuthBase(object): - """Base class that all auth implementations derive from""" - - def __call__(self, r): - raise NotImplementedError('Auth hooks must be callable.') - - -class HTTPBasicAuth(AuthBase): - """Attaches HTTP Basic Authentication to the given Request object.""" - - def __init__(self, username, password): - self.username = username - self.password = password - - def __eq__(self, other): - return all([ - self.username == getattr(other, 'username', None), - self.password == getattr(other, 'password', None) - ]) - - def __ne__(self, other): - return not self == other - - def __call__(self, r): - r.headers['Authorization'] = _basic_auth_str(self.username, self.password) - return r - - -class HTTPProxyAuth(HTTPBasicAuth): - """Attaches HTTP Proxy Authentication to a given Request object.""" - - def __call__(self, r): - r.headers['Proxy-Authorization'] = _basic_auth_str(self.username, self.password) - return r - - -class HTTPDigestAuth(AuthBase): - """Attaches HTTP Digest Authentication to the given Request object.""" - - def __init__(self, username, password): - self.username = username - self.password = password - # Keep state in per-thread local storage - self._thread_local = threading.local() - - def init_per_thread_state(self): - # Ensure state is initialized just once per-thread - if not hasattr(self._thread_local, 'init'): - self._thread_local.init = True - self._thread_local.last_nonce = '' - self._thread_local.nonce_count = 0 - self._thread_local.chal = {} - self._thread_local.pos = None - self._thread_local.num_401_calls = None - - def build_digest_header(self, method, url): - """ - :rtype: str - """ - - realm = self._thread_local.chal['realm'] - nonce = self._thread_local.chal['nonce'] - qop = self._thread_local.chal.get('qop') - algorithm = self._thread_local.chal.get('algorithm') - opaque = self._thread_local.chal.get('opaque') - hash_utf8 = None - - if algorithm is None: - _algorithm = 'MD5' - else: - _algorithm = algorithm.upper() - # lambdas assume digest modules are imported at the top level - if _algorithm == 'MD5' or _algorithm == 'MD5-SESS': - def md5_utf8(x): - if isinstance(x, str): - x = x.encode('utf-8') - return hashlib.md5(x).hexdigest() - hash_utf8 = md5_utf8 - elif _algorithm == 'SHA': - def sha_utf8(x): - if isinstance(x, str): - x = x.encode('utf-8') - return hashlib.sha1(x).hexdigest() - hash_utf8 = sha_utf8 - - KD = lambda s, d: hash_utf8("%s:%s" % (s, d)) - - if hash_utf8 is None: - return None - - # XXX not implemented yet - entdig = None - p_parsed = urlparse(url) - #: path is request-uri defined in RFC 2616 which should not be empty - path = p_parsed.path or "/" - if p_parsed.query: - path += '?' + p_parsed.query - - A1 = '%s:%s:%s' % (self.username, realm, self.password) - A2 = '%s:%s' % (method, path) - - HA1 = hash_utf8(A1) - HA2 = hash_utf8(A2) - - if nonce == self._thread_local.last_nonce: - self._thread_local.nonce_count += 1 - else: - self._thread_local.nonce_count = 1 - ncvalue = '%08x' % self._thread_local.nonce_count - s = str(self._thread_local.nonce_count).encode('utf-8') - s += nonce.encode('utf-8') - s += time.ctime().encode('utf-8') - s += os.urandom(8) - - cnonce = (hashlib.sha1(s).hexdigest()[:16]) - if _algorithm == 'MD5-SESS': - HA1 = hash_utf8('%s:%s:%s' % (HA1, nonce, cnonce)) - - if not qop: - respdig = KD(HA1, "%s:%s" % (nonce, HA2)) - elif qop == 'auth' or 'auth' in qop.split(','): - noncebit = "%s:%s:%s:%s:%s" % ( - nonce, ncvalue, cnonce, 'auth', HA2 - ) - respdig = KD(HA1, noncebit) - else: - # XXX handle auth-int. - return None - - self._thread_local.last_nonce = nonce - - # XXX should the partial digests be encoded too? - base = 'username="%s", realm="%s", nonce="%s", uri="%s", ' \ - 'response="%s"' % (self.username, realm, nonce, path, respdig) - if opaque: - base += ', opaque="%s"' % opaque - if algorithm: - base += ', algorithm="%s"' % algorithm - if entdig: - base += ', digest="%s"' % entdig - if qop: - base += ', qop="auth", nc=%s, cnonce="%s"' % (ncvalue, cnonce) - - return 'Digest %s' % (base) - - def handle_redirect(self, r, **kwargs): - """Reset num_401_calls counter on redirects.""" - if r.is_redirect: - self._thread_local.num_401_calls = 1 - - def handle_401(self, r, **kwargs): - """ - Takes the given response and tries digest-auth, if needed. - - :rtype: requests.Response - """ - - # If response is not 4xx, do not auth - # See https://github.com/requests/requests/issues/3772 - if not 400 <= r.status_code < 500: - self._thread_local.num_401_calls = 1 - return r - - if self._thread_local.pos is not None: - # Rewind the file position indicator of the body to where - # it was to resend the request. - r.request.body.seek(self._thread_local.pos) - s_auth = r.headers.get('www-authenticate', '') - - if 'digest' in s_auth.lower() and self._thread_local.num_401_calls < 2: - - self._thread_local.num_401_calls += 1 - pat = re.compile(r'digest ', flags=re.IGNORECASE) - self._thread_local.chal = parse_dict_header(pat.sub('', s_auth, count=1)) - - # Consume content and release the original connection - # to allow our new request to reuse the same one. - r.content - r.close() - prep = r.request.copy() - extract_cookies_to_jar(prep._cookies, r.request, r.raw) - prep.prepare_cookies(prep._cookies) - - prep.headers['Authorization'] = self.build_digest_header( - prep.method, prep.url) - _r = r.connection.send(prep, **kwargs) - _r.history.append(r) - _r.request = prep - - return _r - - self._thread_local.num_401_calls = 1 - return r - - def __call__(self, r): - # Initialize per-thread state, if needed - self.init_per_thread_state() - # If we have a saved nonce, skip the 401 - if self._thread_local.last_nonce: - r.headers['Authorization'] = self.build_digest_header(r.method, r.url) - try: - self._thread_local.pos = r.body.tell() - except AttributeError: - # In the case of HTTPDigestAuth being reused and the body of - # the previous request was a file-like object, pos has the - # file position of the previous body. Ensure it's set to - # None. - self._thread_local.pos = None - r.register_hook('response', self.handle_401) - r.register_hook('response', self.handle_redirect) - self._thread_local.num_401_calls = 1 - - return r - - def __eq__(self, other): - return all([ - self.username == getattr(other, 'username', None), - self.password == getattr(other, 'password', None) - ]) - - def __ne__(self, other): - return not self == other diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/certs.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/certs.py deleted file mode 100644 index 9742f6e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/certs.py +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -""" -requests.certs -~~~~~~~~~~~~~~ - -This module returns the preferred default CA certificate bundle. There is -only one — the one from the certifi package. - -If you are packaging Requests, e.g., for a Linux distribution or a managed -environment, you can change the definition of where() to return a separately -packaged CA bundle. -""" -from pip._vendor.certifi import where - -if __name__ == '__main__': - print(where()) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/compat.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/compat.py deleted file mode 100644 index 4cea25e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/compat.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.compat -~~~~~~~~~~~~~~~ - -This module handles import compatibility issues between Python 2 and -Python 3. -""" - -from pip._vendor import chardet - -import sys - -# ------- -# Pythons -# ------- - -# Syntax sugar. -_ver = sys.version_info - -#: Python 2.x? -is_py2 = (_ver[0] == 2) - -#: Python 3.x? -is_py3 = (_ver[0] == 3) - -# Note: We've patched out simplejson support in pip because it prevents -# upgrading simplejson on Windows. -# try: -# import simplejson as json -# except (ImportError, SyntaxError): -# # simplejson does not support Python 3.2, it throws a SyntaxError -# # because of u'...' Unicode literals. -import json - -# --------- -# Specifics -# --------- - -if is_py2: - from urllib import ( - quote, unquote, quote_plus, unquote_plus, urlencode, getproxies, - proxy_bypass, proxy_bypass_environment, getproxies_environment) - from urlparse import urlparse, urlunparse, urljoin, urlsplit, urldefrag - from urllib2 import parse_http_list - import cookielib - from Cookie import Morsel - from StringIO import StringIO - - from pip._vendor.urllib3.packages.ordered_dict import OrderedDict - - builtin_str = str - bytes = str - str = unicode - basestring = basestring - numeric_types = (int, long, float) - integer_types = (int, long) - -elif is_py3: - from urllib.parse import urlparse, urlunparse, urljoin, urlsplit, urlencode, quote, unquote, quote_plus, unquote_plus, urldefrag - from urllib.request import parse_http_list, getproxies, proxy_bypass, proxy_bypass_environment, getproxies_environment - from http import cookiejar as cookielib - from http.cookies import Morsel - from io import StringIO - from collections import OrderedDict - - builtin_str = str - str = str - bytes = bytes - basestring = (str, bytes) - numeric_types = (int, float) - integer_types = (int,) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/cookies.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/cookies.py deleted file mode 100644 index e69d22e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/cookies.py +++ /dev/null @@ -1,542 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.cookies -~~~~~~~~~~~~~~~~ - -Compatibility code to be able to use `cookielib.CookieJar` with requests. - -requests.utils imports from here, so be careful with imports. -""" - -import copy -import time -import calendar -import collections - -from ._internal_utils import to_native_string -from .compat import cookielib, urlparse, urlunparse, Morsel - -try: - import threading -except ImportError: - import dummy_threading as threading - - -class MockRequest(object): - """Wraps a `requests.Request` to mimic a `urllib2.Request`. - - The code in `cookielib.CookieJar` expects this interface in order to correctly - manage cookie policies, i.e., determine whether a cookie can be set, given the - domains of the request and the cookie. - - The original request object is read-only. The client is responsible for collecting - the new headers via `get_new_headers()` and interpreting them appropriately. You - probably want `get_cookie_header`, defined below. - """ - - def __init__(self, request): - self._r = request - self._new_headers = {} - self.type = urlparse(self._r.url).scheme - - def get_type(self): - return self.type - - def get_host(self): - return urlparse(self._r.url).netloc - - def get_origin_req_host(self): - return self.get_host() - - def get_full_url(self): - # Only return the response's URL if the user hadn't set the Host - # header - if not self._r.headers.get('Host'): - return self._r.url - # If they did set it, retrieve it and reconstruct the expected domain - host = to_native_string(self._r.headers['Host'], encoding='utf-8') - parsed = urlparse(self._r.url) - # Reconstruct the URL as we expect it - return urlunparse([ - parsed.scheme, host, parsed.path, parsed.params, parsed.query, - parsed.fragment - ]) - - def is_unverifiable(self): - return True - - def has_header(self, name): - return name in self._r.headers or name in self._new_headers - - def get_header(self, name, default=None): - return self._r.headers.get(name, self._new_headers.get(name, default)) - - def add_header(self, key, val): - """cookielib has no legitimate use for this method; add it back if you find one.""" - raise NotImplementedError("Cookie headers should be added with add_unredirected_header()") - - def add_unredirected_header(self, name, value): - self._new_headers[name] = value - - def get_new_headers(self): - return self._new_headers - - @property - def unverifiable(self): - return self.is_unverifiable() - - @property - def origin_req_host(self): - return self.get_origin_req_host() - - @property - def host(self): - return self.get_host() - - -class MockResponse(object): - """Wraps a `httplib.HTTPMessage` to mimic a `urllib.addinfourl`. - - ...what? Basically, expose the parsed HTTP headers from the server response - the way `cookielib` expects to see them. - """ - - def __init__(self, headers): - """Make a MockResponse for `cookielib` to read. - - :param headers: a httplib.HTTPMessage or analogous carrying the headers - """ - self._headers = headers - - def info(self): - return self._headers - - def getheaders(self, name): - self._headers.getheaders(name) - - -def extract_cookies_to_jar(jar, request, response): - """Extract the cookies from the response into a CookieJar. - - :param jar: cookielib.CookieJar (not necessarily a RequestsCookieJar) - :param request: our own requests.Request object - :param response: urllib3.HTTPResponse object - """ - if not (hasattr(response, '_original_response') and - response._original_response): - return - # the _original_response field is the wrapped httplib.HTTPResponse object, - req = MockRequest(request) - # pull out the HTTPMessage with the headers and put it in the mock: - res = MockResponse(response._original_response.msg) - jar.extract_cookies(res, req) - - -def get_cookie_header(jar, request): - """ - Produce an appropriate Cookie header string to be sent with `request`, or None. - - :rtype: str - """ - r = MockRequest(request) - jar.add_cookie_header(r) - return r.get_new_headers().get('Cookie') - - -def remove_cookie_by_name(cookiejar, name, domain=None, path=None): - """Unsets a cookie by name, by default over all domains and paths. - - Wraps CookieJar.clear(), is O(n). - """ - clearables = [] - for cookie in cookiejar: - if cookie.name != name: - continue - if domain is not None and domain != cookie.domain: - continue - if path is not None and path != cookie.path: - continue - clearables.append((cookie.domain, cookie.path, cookie.name)) - - for domain, path, name in clearables: - cookiejar.clear(domain, path, name) - - -class CookieConflictError(RuntimeError): - """There are two cookies that meet the criteria specified in the cookie jar. - Use .get and .set and include domain and path args in order to be more specific. - """ - - -class RequestsCookieJar(cookielib.CookieJar, collections.MutableMapping): - """Compatibility class; is a cookielib.CookieJar, but exposes a dict - interface. - - This is the CookieJar we create by default for requests and sessions that - don't specify one, since some clients may expect response.cookies and - session.cookies to support dict operations. - - Requests does not use the dict interface internally; it's just for - compatibility with external client code. All requests code should work - out of the box with externally provided instances of ``CookieJar``, e.g. - ``LWPCookieJar`` and ``FileCookieJar``. - - Unlike a regular CookieJar, this class is pickleable. - - .. warning:: dictionary operations that are normally O(1) may be O(n). - """ - - def get(self, name, default=None, domain=None, path=None): - """Dict-like get() that also supports optional domain and path args in - order to resolve naming collisions from using one cookie jar over - multiple domains. - - .. warning:: operation is O(n), not O(1). - """ - try: - return self._find_no_duplicates(name, domain, path) - except KeyError: - return default - - def set(self, name, value, **kwargs): - """Dict-like set() that also supports optional domain and path args in - order to resolve naming collisions from using one cookie jar over - multiple domains. - """ - # support client code that unsets cookies by assignment of a None value: - if value is None: - remove_cookie_by_name(self, name, domain=kwargs.get('domain'), path=kwargs.get('path')) - return - - if isinstance(value, Morsel): - c = morsel_to_cookie(value) - else: - c = create_cookie(name, value, **kwargs) - self.set_cookie(c) - return c - - def iterkeys(self): - """Dict-like iterkeys() that returns an iterator of names of cookies - from the jar. - - .. seealso:: itervalues() and iteritems(). - """ - for cookie in iter(self): - yield cookie.name - - def keys(self): - """Dict-like keys() that returns a list of names of cookies from the - jar. - - .. seealso:: values() and items(). - """ - return list(self.iterkeys()) - - def itervalues(self): - """Dict-like itervalues() that returns an iterator of values of cookies - from the jar. - - .. seealso:: iterkeys() and iteritems(). - """ - for cookie in iter(self): - yield cookie.value - - def values(self): - """Dict-like values() that returns a list of values of cookies from the - jar. - - .. seealso:: keys() and items(). - """ - return list(self.itervalues()) - - def iteritems(self): - """Dict-like iteritems() that returns an iterator of name-value tuples - from the jar. - - .. seealso:: iterkeys() and itervalues(). - """ - for cookie in iter(self): - yield cookie.name, cookie.value - - def items(self): - """Dict-like items() that returns a list of name-value tuples from the - jar. Allows client-code to call ``dict(RequestsCookieJar)`` and get a - vanilla python dict of key value pairs. - - .. seealso:: keys() and values(). - """ - return list(self.iteritems()) - - def list_domains(self): - """Utility method to list all the domains in the jar.""" - domains = [] - for cookie in iter(self): - if cookie.domain not in domains: - domains.append(cookie.domain) - return domains - - def list_paths(self): - """Utility method to list all the paths in the jar.""" - paths = [] - for cookie in iter(self): - if cookie.path not in paths: - paths.append(cookie.path) - return paths - - def multiple_domains(self): - """Returns True if there are multiple domains in the jar. - Returns False otherwise. - - :rtype: bool - """ - domains = [] - for cookie in iter(self): - if cookie.domain is not None and cookie.domain in domains: - return True - domains.append(cookie.domain) - return False # there is only one domain in jar - - def get_dict(self, domain=None, path=None): - """Takes as an argument an optional domain and path and returns a plain - old Python dict of name-value pairs of cookies that meet the - requirements. - - :rtype: dict - """ - dictionary = {} - for cookie in iter(self): - if ( - (domain is None or cookie.domain == domain) and - (path is None or cookie.path == path) - ): - dictionary[cookie.name] = cookie.value - return dictionary - - def __contains__(self, name): - try: - return super(RequestsCookieJar, self).__contains__(name) - except CookieConflictError: - return True - - def __getitem__(self, name): - """Dict-like __getitem__() for compatibility with client code. Throws - exception if there are more than one cookie with name. In that case, - use the more explicit get() method instead. - - .. warning:: operation is O(n), not O(1). - """ - return self._find_no_duplicates(name) - - def __setitem__(self, name, value): - """Dict-like __setitem__ for compatibility with client code. Throws - exception if there is already a cookie of that name in the jar. In that - case, use the more explicit set() method instead. - """ - self.set(name, value) - - def __delitem__(self, name): - """Deletes a cookie given a name. Wraps ``cookielib.CookieJar``'s - ``remove_cookie_by_name()``. - """ - remove_cookie_by_name(self, name) - - def set_cookie(self, cookie, *args, **kwargs): - if hasattr(cookie.value, 'startswith') and cookie.value.startswith('"') and cookie.value.endswith('"'): - cookie.value = cookie.value.replace('\\"', '') - return super(RequestsCookieJar, self).set_cookie(cookie, *args, **kwargs) - - def update(self, other): - """Updates this jar with cookies from another CookieJar or dict-like""" - if isinstance(other, cookielib.CookieJar): - for cookie in other: - self.set_cookie(copy.copy(cookie)) - else: - super(RequestsCookieJar, self).update(other) - - def _find(self, name, domain=None, path=None): - """Requests uses this method internally to get cookie values. - - If there are conflicting cookies, _find arbitrarily chooses one. - See _find_no_duplicates if you want an exception thrown if there are - conflicting cookies. - - :param name: a string containing name of cookie - :param domain: (optional) string containing domain of cookie - :param path: (optional) string containing path of cookie - :return: cookie.value - """ - for cookie in iter(self): - if cookie.name == name: - if domain is None or cookie.domain == domain: - if path is None or cookie.path == path: - return cookie.value - - raise KeyError('name=%r, domain=%r, path=%r' % (name, domain, path)) - - def _find_no_duplicates(self, name, domain=None, path=None): - """Both ``__get_item__`` and ``get`` call this function: it's never - used elsewhere in Requests. - - :param name: a string containing name of cookie - :param domain: (optional) string containing domain of cookie - :param path: (optional) string containing path of cookie - :raises KeyError: if cookie is not found - :raises CookieConflictError: if there are multiple cookies - that match name and optionally domain and path - :return: cookie.value - """ - toReturn = None - for cookie in iter(self): - if cookie.name == name: - if domain is None or cookie.domain == domain: - if path is None or cookie.path == path: - if toReturn is not None: # if there are multiple cookies that meet passed in criteria - raise CookieConflictError('There are multiple cookies with name, %r' % (name)) - toReturn = cookie.value # we will eventually return this as long as no cookie conflict - - if toReturn: - return toReturn - raise KeyError('name=%r, domain=%r, path=%r' % (name, domain, path)) - - def __getstate__(self): - """Unlike a normal CookieJar, this class is pickleable.""" - state = self.__dict__.copy() - # remove the unpickleable RLock object - state.pop('_cookies_lock') - return state - - def __setstate__(self, state): - """Unlike a normal CookieJar, this class is pickleable.""" - self.__dict__.update(state) - if '_cookies_lock' not in self.__dict__: - self._cookies_lock = threading.RLock() - - def copy(self): - """Return a copy of this RequestsCookieJar.""" - new_cj = RequestsCookieJar() - new_cj.update(self) - return new_cj - - -def _copy_cookie_jar(jar): - if jar is None: - return None - - if hasattr(jar, 'copy'): - # We're dealing with an instance of RequestsCookieJar - return jar.copy() - # We're dealing with a generic CookieJar instance - new_jar = copy.copy(jar) - new_jar.clear() - for cookie in jar: - new_jar.set_cookie(copy.copy(cookie)) - return new_jar - - -def create_cookie(name, value, **kwargs): - """Make a cookie from underspecified parameters. - - By default, the pair of `name` and `value` will be set for the domain '' - and sent on every request (this is sometimes called a "supercookie"). - """ - result = dict( - version=0, - name=name, - value=value, - port=None, - domain='', - path='/', - secure=False, - expires=None, - discard=True, - comment=None, - comment_url=None, - rest={'HttpOnly': None}, - rfc2109=False,) - - badargs = set(kwargs) - set(result) - if badargs: - err = 'create_cookie() got unexpected keyword arguments: %s' - raise TypeError(err % list(badargs)) - - result.update(kwargs) - result['port_specified'] = bool(result['port']) - result['domain_specified'] = bool(result['domain']) - result['domain_initial_dot'] = result['domain'].startswith('.') - result['path_specified'] = bool(result['path']) - - return cookielib.Cookie(**result) - - -def morsel_to_cookie(morsel): - """Convert a Morsel object into a Cookie containing the one k/v pair.""" - - expires = None - if morsel['max-age']: - try: - expires = int(time.time() + int(morsel['max-age'])) - except ValueError: - raise TypeError('max-age: %s must be integer' % morsel['max-age']) - elif morsel['expires']: - time_template = '%a, %d-%b-%Y %H:%M:%S GMT' - expires = calendar.timegm( - time.strptime(morsel['expires'], time_template) - ) - return create_cookie( - comment=morsel['comment'], - comment_url=bool(morsel['comment']), - discard=False, - domain=morsel['domain'], - expires=expires, - name=morsel.key, - path=morsel['path'], - port=None, - rest={'HttpOnly': morsel['httponly']}, - rfc2109=False, - secure=bool(morsel['secure']), - value=morsel.value, - version=morsel['version'] or 0, - ) - - -def cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True): - """Returns a CookieJar from a key/value dictionary. - - :param cookie_dict: Dict of key/values to insert into CookieJar. - :param cookiejar: (optional) A cookiejar to add the cookies to. - :param overwrite: (optional) If False, will not replace cookies - already in the jar with new ones. - """ - if cookiejar is None: - cookiejar = RequestsCookieJar() - - if cookie_dict is not None: - names_from_jar = [cookie.name for cookie in cookiejar] - for name in cookie_dict: - if overwrite or (name not in names_from_jar): - cookiejar.set_cookie(create_cookie(name, cookie_dict[name])) - - return cookiejar - - -def merge_cookies(cookiejar, cookies): - """Add cookies to cookiejar and returns a merged CookieJar. - - :param cookiejar: CookieJar object to add the cookies to. - :param cookies: Dictionary or CookieJar object to be added. - """ - if not isinstance(cookiejar, cookielib.CookieJar): - raise ValueError('You can only merge into CookieJar') - - if isinstance(cookies, dict): - cookiejar = cookiejar_from_dict( - cookies, cookiejar=cookiejar, overwrite=False) - elif isinstance(cookies, cookielib.CookieJar): - try: - cookiejar.update(cookies) - except AttributeError: - for cookie_in_jar in cookies: - cookiejar.set_cookie(cookie_in_jar) - - return cookiejar diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/exceptions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/exceptions.py deleted file mode 100644 index 377c4c2..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/exceptions.py +++ /dev/null @@ -1,122 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.exceptions -~~~~~~~~~~~~~~~~~~~ - -This module contains the set of Requests' exceptions. -""" -from pip._vendor.urllib3.exceptions import HTTPError as BaseHTTPError - - -class RequestException(IOError): - """There was an ambiguous exception that occurred while handling your - request. - """ - - def __init__(self, *args, **kwargs): - """Initialize RequestException with `request` and `response` objects.""" - response = kwargs.pop('response', None) - self.response = response - self.request = kwargs.pop('request', None) - if (response is not None and not self.request and - hasattr(response, 'request')): - self.request = self.response.request - super(RequestException, self).__init__(*args, **kwargs) - - -class HTTPError(RequestException): - """An HTTP error occurred.""" - - -class ConnectionError(RequestException): - """A Connection error occurred.""" - - -class ProxyError(ConnectionError): - """A proxy error occurred.""" - - -class SSLError(ConnectionError): - """An SSL error occurred.""" - - -class Timeout(RequestException): - """The request timed out. - - Catching this error will catch both - :exc:`~requests.exceptions.ConnectTimeout` and - :exc:`~requests.exceptions.ReadTimeout` errors. - """ - - -class ConnectTimeout(ConnectionError, Timeout): - """The request timed out while trying to connect to the remote server. - - Requests that produced this error are safe to retry. - """ - - -class ReadTimeout(Timeout): - """The server did not send any data in the allotted amount of time.""" - - -class URLRequired(RequestException): - """A valid URL is required to make a request.""" - - -class TooManyRedirects(RequestException): - """Too many redirects.""" - - -class MissingSchema(RequestException, ValueError): - """The URL schema (e.g. http or https) is missing.""" - - -class InvalidSchema(RequestException, ValueError): - """See defaults.py for valid schemas.""" - - -class InvalidURL(RequestException, ValueError): - """The URL provided was somehow invalid.""" - - -class InvalidHeader(RequestException, ValueError): - """The header value provided was somehow invalid.""" - - -class ChunkedEncodingError(RequestException): - """The server declared chunked encoding but sent an invalid chunk.""" - - -class ContentDecodingError(RequestException, BaseHTTPError): - """Failed to decode response content""" - - -class StreamConsumedError(RequestException, TypeError): - """The content for this response was already consumed""" - - -class RetryError(RequestException): - """Custom retries logic failed""" - - -class UnrewindableBodyError(RequestException): - """Requests encountered an error when trying to rewind a body""" - -# Warnings - - -class RequestsWarning(Warning): - """Base warning for Requests.""" - pass - - -class FileModeWarning(RequestsWarning, DeprecationWarning): - """A file was opened in text mode, but Requests determined its binary length.""" - pass - - -class RequestsDependencyWarning(RequestsWarning): - """An imported dependency doesn't match the expected version range.""" - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/help.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/help.py deleted file mode 100644 index 28385f8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/help.py +++ /dev/null @@ -1,120 +0,0 @@ -"""Module containing bug report helper(s).""" -from __future__ import print_function - -import json -import platform -import sys -import ssl - -from pip._vendor import idna -from pip._vendor import urllib3 -from pip._vendor import chardet - -from . import __version__ as requests_version - -try: - from .packages.urllib3.contrib import pyopenssl -except ImportError: - pyopenssl = None - OpenSSL = None - cryptography = None -else: - import OpenSSL - import cryptography - - -def _implementation(): - """Return a dict with the Python implementation and version. - - Provide both the name and the version of the Python implementation - currently running. For example, on CPython 2.7.5 it will return - {'name': 'CPython', 'version': '2.7.5'}. - - This function works best on CPython and PyPy: in particular, it probably - doesn't work for Jython or IronPython. Future investigation should be done - to work out the correct shape of the code for those platforms. - """ - implementation = platform.python_implementation() - - if implementation == 'CPython': - implementation_version = platform.python_version() - elif implementation == 'PyPy': - implementation_version = '%s.%s.%s' % (sys.pypy_version_info.major, - sys.pypy_version_info.minor, - sys.pypy_version_info.micro) - if sys.pypy_version_info.releaselevel != 'final': - implementation_version = ''.join([ - implementation_version, sys.pypy_version_info.releaselevel - ]) - elif implementation == 'Jython': - implementation_version = platform.python_version() # Complete Guess - elif implementation == 'IronPython': - implementation_version = platform.python_version() # Complete Guess - else: - implementation_version = 'Unknown' - - return {'name': implementation, 'version': implementation_version} - - -def info(): - """Generate information for a bug report.""" - try: - platform_info = { - 'system': platform.system(), - 'release': platform.release(), - } - except IOError: - platform_info = { - 'system': 'Unknown', - 'release': 'Unknown', - } - - implementation_info = _implementation() - urllib3_info = {'version': urllib3.__version__} - chardet_info = {'version': chardet.__version__} - - pyopenssl_info = { - 'version': None, - 'openssl_version': '', - } - if OpenSSL: - pyopenssl_info = { - 'version': OpenSSL.__version__, - 'openssl_version': '%x' % OpenSSL.SSL.OPENSSL_VERSION_NUMBER, - } - cryptography_info = { - 'version': getattr(cryptography, '__version__', ''), - } - idna_info = { - 'version': getattr(idna, '__version__', ''), - } - - # OPENSSL_VERSION_NUMBER doesn't exist in the Python 2.6 ssl module. - system_ssl = getattr(ssl, 'OPENSSL_VERSION_NUMBER', None) - system_ssl_info = { - 'version': '%x' % system_ssl if system_ssl is not None else '' - } - - return { - 'platform': platform_info, - 'implementation': implementation_info, - 'system_ssl': system_ssl_info, - 'using_pyopenssl': pyopenssl is not None, - 'pyOpenSSL': pyopenssl_info, - 'urllib3': urllib3_info, - 'chardet': chardet_info, - 'cryptography': cryptography_info, - 'idna': idna_info, - 'requests': { - 'version': requests_version, - }, - } - - -def main(): - """Pretty-print the bug information as JSON.""" - print(json.dumps(info(), sort_keys=True, indent=2)) - - -if __name__ == '__main__': - main() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/hooks.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/hooks.py deleted file mode 100644 index 14db0c8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/hooks.py +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.hooks -~~~~~~~~~~~~~~ - -This module provides the capabilities for the Requests hooks system. - -Available hooks: - -``response``: - The response generated from a Request. -""" -HOOKS = ['response'] - - -def default_hooks(): - return dict((event, []) for event in HOOKS) - -# TODO: response is the only one - - -def dispatch_hook(key, hooks, hook_data, **kwargs): - """Dispatches a hook dictionary on a given piece of data.""" - hooks = hooks or dict() - hooks = hooks.get(key) - if hooks: - if hasattr(hooks, '__call__'): - hooks = [hooks] - for hook in hooks: - _hook_data = hook(hook_data, **kwargs) - if _hook_data is not None: - hook_data = _hook_data - return hook_data diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/models.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/models.py deleted file mode 100644 index 6f5b0fb..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/models.py +++ /dev/null @@ -1,948 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.models -~~~~~~~~~~~~~~~ - -This module contains the primary objects that power Requests. -""" - -import collections -import datetime -import sys - -# Import encoding now, to avoid implicit import later. -# Implicit import within threads may cause LookupError when standard library is in a ZIP, -# such as in Embedded Python. See https://github.com/requests/requests/issues/3578. -import encodings.idna - -from pip._vendor.urllib3.fields import RequestField -from pip._vendor.urllib3.filepost import encode_multipart_formdata -from pip._vendor.urllib3.util import parse_url -from pip._vendor.urllib3.exceptions import ( - DecodeError, ReadTimeoutError, ProtocolError, LocationParseError) - -from io import UnsupportedOperation -from .hooks import default_hooks -from .structures import CaseInsensitiveDict - -from .auth import HTTPBasicAuth -from .cookies import cookiejar_from_dict, get_cookie_header, _copy_cookie_jar -from .exceptions import ( - HTTPError, MissingSchema, InvalidURL, ChunkedEncodingError, - ContentDecodingError, ConnectionError, StreamConsumedError) -from ._internal_utils import to_native_string, unicode_is_ascii -from .utils import ( - guess_filename, get_auth_from_url, requote_uri, - stream_decode_response_unicode, to_key_val_list, parse_header_links, - iter_slices, guess_json_utf, super_len, check_header_validity) -from .compat import ( - cookielib, urlunparse, urlsplit, urlencode, str, bytes, - is_py2, chardet, builtin_str, basestring) -from .compat import json as complexjson -from .status_codes import codes - -#: The set of HTTP status codes that indicate an automatically -#: processable redirect. -REDIRECT_STATI = ( - codes.moved, # 301 - codes.found, # 302 - codes.other, # 303 - codes.temporary_redirect, # 307 - codes.permanent_redirect, # 308 -) - -DEFAULT_REDIRECT_LIMIT = 30 -CONTENT_CHUNK_SIZE = 10 * 1024 -ITER_CHUNK_SIZE = 512 - - -class RequestEncodingMixin(object): - @property - def path_url(self): - """Build the path URL to use.""" - - url = [] - - p = urlsplit(self.url) - - path = p.path - if not path: - path = '/' - - url.append(path) - - query = p.query - if query: - url.append('?') - url.append(query) - - return ''.join(url) - - @staticmethod - def _encode_params(data): - """Encode parameters in a piece of data. - - Will successfully encode parameters when passed as a dict or a list of - 2-tuples. Order is retained if data is a list of 2-tuples but arbitrary - if parameters are supplied as a dict. - """ - - if isinstance(data, (str, bytes)): - return data - elif hasattr(data, 'read'): - return data - elif hasattr(data, '__iter__'): - result = [] - for k, vs in to_key_val_list(data): - if isinstance(vs, basestring) or not hasattr(vs, '__iter__'): - vs = [vs] - for v in vs: - if v is not None: - result.append( - (k.encode('utf-8') if isinstance(k, str) else k, - v.encode('utf-8') if isinstance(v, str) else v)) - return urlencode(result, doseq=True) - else: - return data - - @staticmethod - def _encode_files(files, data): - """Build the body for a multipart/form-data request. - - Will successfully encode files when passed as a dict or a list of - tuples. Order is retained if data is a list of tuples but arbitrary - if parameters are supplied as a dict. - The tuples may be 2-tuples (filename, fileobj), 3-tuples (filename, fileobj, contentype) - or 4-tuples (filename, fileobj, contentype, custom_headers). - """ - if (not files): - raise ValueError("Files must be provided.") - elif isinstance(data, basestring): - raise ValueError("Data must not be a string.") - - new_fields = [] - fields = to_key_val_list(data or {}) - files = to_key_val_list(files or {}) - - for field, val in fields: - if isinstance(val, basestring) or not hasattr(val, '__iter__'): - val = [val] - for v in val: - if v is not None: - # Don't call str() on bytestrings: in Py3 it all goes wrong. - if not isinstance(v, bytes): - v = str(v) - - new_fields.append( - (field.decode('utf-8') if isinstance(field, bytes) else field, - v.encode('utf-8') if isinstance(v, str) else v)) - - for (k, v) in files: - # support for explicit filename - ft = None - fh = None - if isinstance(v, (tuple, list)): - if len(v) == 2: - fn, fp = v - elif len(v) == 3: - fn, fp, ft = v - else: - fn, fp, ft, fh = v - else: - fn = guess_filename(v) or k - fp = v - - if isinstance(fp, (str, bytes, bytearray)): - fdata = fp - else: - fdata = fp.read() - - rf = RequestField(name=k, data=fdata, filename=fn, headers=fh) - rf.make_multipart(content_type=ft) - new_fields.append(rf) - - body, content_type = encode_multipart_formdata(new_fields) - - return body, content_type - - -class RequestHooksMixin(object): - def register_hook(self, event, hook): - """Properly register a hook.""" - - if event not in self.hooks: - raise ValueError('Unsupported event specified, with event name "%s"' % (event)) - - if isinstance(hook, collections.Callable): - self.hooks[event].append(hook) - elif hasattr(hook, '__iter__'): - self.hooks[event].extend(h for h in hook if isinstance(h, collections.Callable)) - - def deregister_hook(self, event, hook): - """Deregister a previously registered hook. - Returns True if the hook existed, False if not. - """ - - try: - self.hooks[event].remove(hook) - return True - except ValueError: - return False - - -class Request(RequestHooksMixin): - """A user-created :class:`Request <Request>` object. - - Used to prepare a :class:`PreparedRequest <PreparedRequest>`, which is sent to the server. - - :param method: HTTP method to use. - :param url: URL to send. - :param headers: dictionary of headers to send. - :param files: dictionary of {filename: fileobject} files to multipart upload. - :param data: the body to attach to the request. If a dictionary is provided, form-encoding will take place. - :param json: json for the body to attach to the request (if files or data is not specified). - :param params: dictionary of URL parameters to append to the URL. - :param auth: Auth handler or (user, pass) tuple. - :param cookies: dictionary or CookieJar of cookies to attach to this request. - :param hooks: dictionary of callback hooks, for internal usage. - - Usage:: - - >>> import requests - >>> req = requests.Request('GET', 'http://httpbin.org/get') - >>> req.prepare() - <PreparedRequest [GET]> - """ - - def __init__(self, - method=None, url=None, headers=None, files=None, data=None, - params=None, auth=None, cookies=None, hooks=None, json=None): - - # Default empty dicts for dict params. - data = [] if data is None else data - files = [] if files is None else files - headers = {} if headers is None else headers - params = {} if params is None else params - hooks = {} if hooks is None else hooks - - self.hooks = default_hooks() - for (k, v) in list(hooks.items()): - self.register_hook(event=k, hook=v) - - self.method = method - self.url = url - self.headers = headers - self.files = files - self.data = data - self.json = json - self.params = params - self.auth = auth - self.cookies = cookies - - def __repr__(self): - return '<Request [%s]>' % (self.method) - - def prepare(self): - """Constructs a :class:`PreparedRequest <PreparedRequest>` for transmission and returns it.""" - p = PreparedRequest() - p.prepare( - method=self.method, - url=self.url, - headers=self.headers, - files=self.files, - data=self.data, - json=self.json, - params=self.params, - auth=self.auth, - cookies=self.cookies, - hooks=self.hooks, - ) - return p - - -class PreparedRequest(RequestEncodingMixin, RequestHooksMixin): - """The fully mutable :class:`PreparedRequest <PreparedRequest>` object, - containing the exact bytes that will be sent to the server. - - Generated from either a :class:`Request <Request>` object or manually. - - Usage:: - - >>> import requests - >>> req = requests.Request('GET', 'http://httpbin.org/get') - >>> r = req.prepare() - <PreparedRequest [GET]> - - >>> s = requests.Session() - >>> s.send(r) - <Response [200]> - """ - - def __init__(self): - #: HTTP verb to send to the server. - self.method = None - #: HTTP URL to send the request to. - self.url = None - #: dictionary of HTTP headers. - self.headers = None - # The `CookieJar` used to create the Cookie header will be stored here - # after prepare_cookies is called - self._cookies = None - #: request body to send to the server. - self.body = None - #: dictionary of callback hooks, for internal usage. - self.hooks = default_hooks() - #: integer denoting starting position of a readable file-like body. - self._body_position = None - - def prepare(self, - method=None, url=None, headers=None, files=None, data=None, - params=None, auth=None, cookies=None, hooks=None, json=None): - """Prepares the entire request with the given parameters.""" - - self.prepare_method(method) - self.prepare_url(url, params) - self.prepare_headers(headers) - self.prepare_cookies(cookies) - self.prepare_body(data, files, json) - self.prepare_auth(auth, url) - - # Note that prepare_auth must be last to enable authentication schemes - # such as OAuth to work on a fully prepared request. - - # This MUST go after prepare_auth. Authenticators could add a hook - self.prepare_hooks(hooks) - - def __repr__(self): - return '<PreparedRequest [%s]>' % (self.method) - - def copy(self): - p = PreparedRequest() - p.method = self.method - p.url = self.url - p.headers = self.headers.copy() if self.headers is not None else None - p._cookies = _copy_cookie_jar(self._cookies) - p.body = self.body - p.hooks = self.hooks - p._body_position = self._body_position - return p - - def prepare_method(self, method): - """Prepares the given HTTP method.""" - self.method = method - if self.method is not None: - self.method = to_native_string(self.method.upper()) - - @staticmethod - def _get_idna_encoded_host(host): - from pip._vendor import idna - - try: - host = idna.encode(host, uts46=True).decode('utf-8') - except idna.IDNAError: - raise UnicodeError - return host - - def prepare_url(self, url, params): - """Prepares the given HTTP URL.""" - #: Accept objects that have string representations. - #: We're unable to blindly call unicode/str functions - #: as this will include the bytestring indicator (b'') - #: on python 3.x. - #: https://github.com/requests/requests/pull/2238 - if isinstance(url, bytes): - url = url.decode('utf8') - else: - url = unicode(url) if is_py2 else str(url) - - # Remove leading whitespaces from url - url = url.lstrip() - - # Don't do any URL preparation for non-HTTP schemes like `mailto`, - # `data` etc to work around exceptions from `url_parse`, which - # handles RFC 3986 only. - if ':' in url and not url.lower().startswith('http'): - self.url = url - return - - # Support for unicode domain names and paths. - try: - scheme, auth, host, port, path, query, fragment = parse_url(url) - except LocationParseError as e: - raise InvalidURL(*e.args) - - if not scheme: - error = ("Invalid URL {0!r}: No schema supplied. Perhaps you meant http://{0}?") - error = error.format(to_native_string(url, 'utf8')) - - raise MissingSchema(error) - - if not host: - raise InvalidURL("Invalid URL %r: No host supplied" % url) - - # In general, we want to try IDNA encoding the hostname if the string contains - # non-ASCII characters. This allows users to automatically get the correct IDNA - # behaviour. For strings containing only ASCII characters, we need to also verify - # it doesn't start with a wildcard (*), before allowing the unencoded hostname. - if not unicode_is_ascii(host): - try: - host = self._get_idna_encoded_host(host) - except UnicodeError: - raise InvalidURL('URL has an invalid label.') - elif host.startswith(u'*'): - raise InvalidURL('URL has an invalid label.') - - # Carefully reconstruct the network location - netloc = auth or '' - if netloc: - netloc += '@' - netloc += host - if port: - netloc += ':' + str(port) - - # Bare domains aren't valid URLs. - if not path: - path = '/' - - if is_py2: - if isinstance(scheme, str): - scheme = scheme.encode('utf-8') - if isinstance(netloc, str): - netloc = netloc.encode('utf-8') - if isinstance(path, str): - path = path.encode('utf-8') - if isinstance(query, str): - query = query.encode('utf-8') - if isinstance(fragment, str): - fragment = fragment.encode('utf-8') - - if isinstance(params, (str, bytes)): - params = to_native_string(params) - - enc_params = self._encode_params(params) - if enc_params: - if query: - query = '%s&%s' % (query, enc_params) - else: - query = enc_params - - url = requote_uri(urlunparse([scheme, netloc, path, None, query, fragment])) - self.url = url - - def prepare_headers(self, headers): - """Prepares the given HTTP headers.""" - - self.headers = CaseInsensitiveDict() - if headers: - for header in headers.items(): - # Raise exception on invalid header value. - check_header_validity(header) - name, value = header - self.headers[to_native_string(name)] = value - - def prepare_body(self, data, files, json=None): - """Prepares the given HTTP body data.""" - - # Check if file, fo, generator, iterator. - # If not, run through normal process. - - # Nottin' on you. - body = None - content_type = None - - if not data and json is not None: - # urllib3 requires a bytes-like body. Python 2's json.dumps - # provides this natively, but Python 3 gives a Unicode string. - content_type = 'application/json' - body = complexjson.dumps(json) - if not isinstance(body, bytes): - body = body.encode('utf-8') - - is_stream = all([ - hasattr(data, '__iter__'), - not isinstance(data, (basestring, list, tuple, collections.Mapping)) - ]) - - try: - length = super_len(data) - except (TypeError, AttributeError, UnsupportedOperation): - length = None - - if is_stream: - body = data - - if getattr(body, 'tell', None) is not None: - # Record the current file position before reading. - # This will allow us to rewind a file in the event - # of a redirect. - try: - self._body_position = body.tell() - except (IOError, OSError): - # This differentiates from None, allowing us to catch - # a failed `tell()` later when trying to rewind the body - self._body_position = object() - - if files: - raise NotImplementedError('Streamed bodies and files are mutually exclusive.') - - if length: - self.headers['Content-Length'] = builtin_str(length) - else: - self.headers['Transfer-Encoding'] = 'chunked' - else: - # Multi-part file uploads. - if files: - (body, content_type) = self._encode_files(files, data) - else: - if data: - body = self._encode_params(data) - if isinstance(data, basestring) or hasattr(data, 'read'): - content_type = None - else: - content_type = 'application/x-www-form-urlencoded' - - self.prepare_content_length(body) - - # Add content-type if it wasn't explicitly provided. - if content_type and ('content-type' not in self.headers): - self.headers['Content-Type'] = content_type - - self.body = body - - def prepare_content_length(self, body): - """Prepare Content-Length header based on request method and body""" - if body is not None: - length = super_len(body) - if length: - # If length exists, set it. Otherwise, we fallback - # to Transfer-Encoding: chunked. - self.headers['Content-Length'] = builtin_str(length) - elif self.method not in ('GET', 'HEAD') and self.headers.get('Content-Length') is None: - # Set Content-Length to 0 for methods that can have a body - # but don't provide one. (i.e. not GET or HEAD) - self.headers['Content-Length'] = '0' - - def prepare_auth(self, auth, url=''): - """Prepares the given HTTP auth data.""" - - # If no Auth is explicitly provided, extract it from the URL first. - if auth is None: - url_auth = get_auth_from_url(self.url) - auth = url_auth if any(url_auth) else None - - if auth: - if isinstance(auth, tuple) and len(auth) == 2: - # special-case basic HTTP auth - auth = HTTPBasicAuth(*auth) - - # Allow auth to make its changes. - r = auth(self) - - # Update self to reflect the auth changes. - self.__dict__.update(r.__dict__) - - # Recompute Content-Length - self.prepare_content_length(self.body) - - def prepare_cookies(self, cookies): - """Prepares the given HTTP cookie data. - - This function eventually generates a ``Cookie`` header from the - given cookies using cookielib. Due to cookielib's design, the header - will not be regenerated if it already exists, meaning this function - can only be called once for the life of the - :class:`PreparedRequest <PreparedRequest>` object. Any subsequent calls - to ``prepare_cookies`` will have no actual effect, unless the "Cookie" - header is removed beforehand. - """ - if isinstance(cookies, cookielib.CookieJar): - self._cookies = cookies - else: - self._cookies = cookiejar_from_dict(cookies) - - cookie_header = get_cookie_header(self._cookies, self) - if cookie_header is not None: - self.headers['Cookie'] = cookie_header - - def prepare_hooks(self, hooks): - """Prepares the given hooks.""" - # hooks can be passed as None to the prepare method and to this - # method. To prevent iterating over None, simply use an empty list - # if hooks is False-y - hooks = hooks or [] - for event in hooks: - self.register_hook(event, hooks[event]) - - -class Response(object): - """The :class:`Response <Response>` object, which contains a - server's response to an HTTP request. - """ - - __attrs__ = [ - '_content', 'status_code', 'headers', 'url', 'history', - 'encoding', 'reason', 'cookies', 'elapsed', 'request' - ] - - def __init__(self): - self._content = False - self._content_consumed = False - self._next = None - - #: Integer Code of responded HTTP Status, e.g. 404 or 200. - self.status_code = None - - #: Case-insensitive Dictionary of Response Headers. - #: For example, ``headers['content-encoding']`` will return the - #: value of a ``'Content-Encoding'`` response header. - self.headers = CaseInsensitiveDict() - - #: File-like object representation of response (for advanced usage). - #: Use of ``raw`` requires that ``stream=True`` be set on the request. - # This requirement does not apply for use internally to Requests. - self.raw = None - - #: Final URL location of Response. - self.url = None - - #: Encoding to decode with when accessing r.text. - self.encoding = None - - #: A list of :class:`Response <Response>` objects from - #: the history of the Request. Any redirect responses will end - #: up here. The list is sorted from the oldest to the most recent request. - self.history = [] - - #: Textual reason of responded HTTP Status, e.g. "Not Found" or "OK". - self.reason = None - - #: A CookieJar of Cookies the server sent back. - self.cookies = cookiejar_from_dict({}) - - #: The amount of time elapsed between sending the request - #: and the arrival of the response (as a timedelta). - #: This property specifically measures the time taken between sending - #: the first byte of the request and finishing parsing the headers. It - #: is therefore unaffected by consuming the response content or the - #: value of the ``stream`` keyword argument. - self.elapsed = datetime.timedelta(0) - - #: The :class:`PreparedRequest <PreparedRequest>` object to which this - #: is a response. - self.request = None - - def __enter__(self): - return self - - def __exit__(self, *args): - self.close() - - def __getstate__(self): - # Consume everything; accessing the content attribute makes - # sure the content has been fully read. - if not self._content_consumed: - self.content - - return dict( - (attr, getattr(self, attr, None)) - for attr in self.__attrs__ - ) - - def __setstate__(self, state): - for name, value in state.items(): - setattr(self, name, value) - - # pickled objects do not have .raw - setattr(self, '_content_consumed', True) - setattr(self, 'raw', None) - - def __repr__(self): - return '<Response [%s]>' % (self.status_code) - - def __bool__(self): - """Returns True if :attr:`status_code` is less than 400. - - This attribute checks if the status code of the response is between - 400 and 600 to see if there was a client error or a server error. If - the status code, is between 200 and 400, this will return True. This - is **not** a check to see if the response code is ``200 OK``. - """ - return self.ok - - def __nonzero__(self): - """Returns True if :attr:`status_code` is less than 400. - - This attribute checks if the status code of the response is between - 400 and 600 to see if there was a client error or a server error. If - the status code, is between 200 and 400, this will return True. This - is **not** a check to see if the response code is ``200 OK``. - """ - return self.ok - - def __iter__(self): - """Allows you to use a response as an iterator.""" - return self.iter_content(128) - - @property - def ok(self): - """Returns True if :attr:`status_code` is less than 400. - - This attribute checks if the status code of the response is between - 400 and 600 to see if there was a client error or a server error. If - the status code, is between 200 and 400, this will return True. This - is **not** a check to see if the response code is ``200 OK``. - """ - try: - self.raise_for_status() - except HTTPError: - return False - return True - - @property - def is_redirect(self): - """True if this Response is a well-formed HTTP redirect that could have - been processed automatically (by :meth:`Session.resolve_redirects`). - """ - return ('location' in self.headers and self.status_code in REDIRECT_STATI) - - @property - def is_permanent_redirect(self): - """True if this Response one of the permanent versions of redirect.""" - return ('location' in self.headers and self.status_code in (codes.moved_permanently, codes.permanent_redirect)) - - @property - def next(self): - """Returns a PreparedRequest for the next request in a redirect chain, if there is one.""" - return self._next - - @property - def apparent_encoding(self): - """The apparent encoding, provided by the chardet library.""" - return chardet.detect(self.content)['encoding'] - - def iter_content(self, chunk_size=1, decode_unicode=False): - """Iterates over the response data. When stream=True is set on the - request, this avoids reading the content at once into memory for - large responses. The chunk size is the number of bytes it should - read into memory. This is not necessarily the length of each item - returned as decoding can take place. - - chunk_size must be of type int or None. A value of None will - function differently depending on the value of `stream`. - stream=True will read data as it arrives in whatever size the - chunks are received. If stream=False, data is returned as - a single chunk. - - If decode_unicode is True, content will be decoded using the best - available encoding based on the response. - """ - - def generate(): - # Special case for urllib3. - if hasattr(self.raw, 'stream'): - try: - for chunk in self.raw.stream(chunk_size, decode_content=True): - yield chunk - except ProtocolError as e: - raise ChunkedEncodingError(e) - except DecodeError as e: - raise ContentDecodingError(e) - except ReadTimeoutError as e: - raise ConnectionError(e) - else: - # Standard file-like object. - while True: - chunk = self.raw.read(chunk_size) - if not chunk: - break - yield chunk - - self._content_consumed = True - - if self._content_consumed and isinstance(self._content, bool): - raise StreamConsumedError() - elif chunk_size is not None and not isinstance(chunk_size, int): - raise TypeError("chunk_size must be an int, it is instead a %s." % type(chunk_size)) - # simulate reading small chunks of the content - reused_chunks = iter_slices(self._content, chunk_size) - - stream_chunks = generate() - - chunks = reused_chunks if self._content_consumed else stream_chunks - - if decode_unicode: - chunks = stream_decode_response_unicode(chunks, self) - - return chunks - - def iter_lines(self, chunk_size=ITER_CHUNK_SIZE, decode_unicode=None, delimiter=None): - """Iterates over the response data, one line at a time. When - stream=True is set on the request, this avoids reading the - content at once into memory for large responses. - - .. note:: This method is not reentrant safe. - """ - - pending = None - - for chunk in self.iter_content(chunk_size=chunk_size, decode_unicode=decode_unicode): - - if pending is not None: - chunk = pending + chunk - - if delimiter: - lines = chunk.split(delimiter) - else: - lines = chunk.splitlines() - - if lines and lines[-1] and chunk and lines[-1][-1] == chunk[-1]: - pending = lines.pop() - else: - pending = None - - for line in lines: - yield line - - if pending is not None: - yield pending - - @property - def content(self): - """Content of the response, in bytes.""" - - if self._content is False: - # Read the contents. - if self._content_consumed: - raise RuntimeError( - 'The content for this response was already consumed') - - if self.status_code == 0 or self.raw is None: - self._content = None - else: - self._content = bytes().join(self.iter_content(CONTENT_CHUNK_SIZE)) or bytes() - - self._content_consumed = True - # don't need to release the connection; that's been handled by urllib3 - # since we exhausted the data. - return self._content - - @property - def text(self): - """Content of the response, in unicode. - - If Response.encoding is None, encoding will be guessed using - ``chardet``. - - The encoding of the response content is determined based solely on HTTP - headers, following RFC 2616 to the letter. If you can take advantage of - non-HTTP knowledge to make a better guess at the encoding, you should - set ``r.encoding`` appropriately before accessing this property. - """ - - # Try charset from content-type - content = None - encoding = self.encoding - - if not self.content: - return str('') - - # Fallback to auto-detected encoding. - if self.encoding is None: - encoding = self.apparent_encoding - - # Decode unicode from given encoding. - try: - content = str(self.content, encoding, errors='replace') - except (LookupError, TypeError): - # A LookupError is raised if the encoding was not found which could - # indicate a misspelling or similar mistake. - # - # A TypeError can be raised if encoding is None - # - # So we try blindly encoding. - content = str(self.content, errors='replace') - - return content - - def json(self, **kwargs): - r"""Returns the json-encoded content of a response, if any. - - :param \*\*kwargs: Optional arguments that ``json.loads`` takes. - :raises ValueError: If the response body does not contain valid json. - """ - - if not self.encoding and self.content and len(self.content) > 3: - # No encoding set. JSON RFC 4627 section 3 states we should expect - # UTF-8, -16 or -32. Detect which one to use; If the detection or - # decoding fails, fall back to `self.text` (using chardet to make - # a best guess). - encoding = guess_json_utf(self.content) - if encoding is not None: - try: - return complexjson.loads( - self.content.decode(encoding), **kwargs - ) - except UnicodeDecodeError: - # Wrong UTF codec detected; usually because it's not UTF-8 - # but some other 8-bit codec. This is an RFC violation, - # and the server didn't bother to tell us what codec *was* - # used. - pass - return complexjson.loads(self.text, **kwargs) - - @property - def links(self): - """Returns the parsed header links of the response, if any.""" - - header = self.headers.get('link') - - # l = MultiDict() - l = {} - - if header: - links = parse_header_links(header) - - for link in links: - key = link.get('rel') or link.get('url') - l[key] = link - - return l - - def raise_for_status(self): - """Raises stored :class:`HTTPError`, if one occurred.""" - - http_error_msg = '' - if isinstance(self.reason, bytes): - # We attempt to decode utf-8 first because some servers - # choose to localize their reason strings. If the string - # isn't utf-8, we fall back to iso-8859-1 for all other - # encodings. (See PR #3538) - try: - reason = self.reason.decode('utf-8') - except UnicodeDecodeError: - reason = self.reason.decode('iso-8859-1') - else: - reason = self.reason - - if 400 <= self.status_code < 500: - http_error_msg = u'%s Client Error: %s for url: %s' % (self.status_code, reason, self.url) - - elif 500 <= self.status_code < 600: - http_error_msg = u'%s Server Error: %s for url: %s' % (self.status_code, reason, self.url) - - if http_error_msg: - raise HTTPError(http_error_msg, response=self) - - def close(self): - """Releases the connection back to the pool. Once this method has been - called the underlying ``raw`` object must not be accessed again. - - *Note: Should not normally need to be called explicitly.* - """ - if not self._content_consumed: - self.raw.close() - - release_conn = getattr(self.raw, 'release_conn', None) - if release_conn is not None: - release_conn() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/packages.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/packages.py deleted file mode 100644 index c91d9c7..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/packages.py +++ /dev/null @@ -1,16 +0,0 @@ -import sys - -# This code exists for backwards compatibility reasons. -# I don't like it either. Just look the other way. :) - -for package in ('urllib3', 'idna', 'chardet'): - vendored_package = "pip._vendor." + package - locals()[package] = __import__(vendored_package) - # This traversal is apparently necessary such that the identities are - # preserved (requests.packages.urllib3.* is urllib3.*) - for mod in list(sys.modules): - if mod == vendored_package or mod.startswith(vendored_package + '.'): - unprefixed_mod = mod[len("pip._vendor."):] - sys.modules['pip._vendor.requests.packages.' + unprefixed_mod] = sys.modules[mod] - -# Kinda cool, though, right? diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/sessions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/sessions.py deleted file mode 100644 index d8eafa8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/sessions.py +++ /dev/null @@ -1,737 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.session -~~~~~~~~~~~~~~~~ - -This module provides a Session object to manage and persist settings across -requests (cookies, auth, proxies). -""" -import os -import platform -import time -from collections import Mapping -from datetime import timedelta - -from .auth import _basic_auth_str -from .compat import cookielib, is_py3, OrderedDict, urljoin, urlparse -from .cookies import ( - cookiejar_from_dict, extract_cookies_to_jar, RequestsCookieJar, merge_cookies) -from .models import Request, PreparedRequest, DEFAULT_REDIRECT_LIMIT -from .hooks import default_hooks, dispatch_hook -from ._internal_utils import to_native_string -from .utils import to_key_val_list, default_headers -from .exceptions import ( - TooManyRedirects, InvalidSchema, ChunkedEncodingError, ContentDecodingError) - -from .structures import CaseInsensitiveDict -from .adapters import HTTPAdapter - -from .utils import ( - requote_uri, get_environ_proxies, get_netrc_auth, should_bypass_proxies, - get_auth_from_url, rewind_body -) - -from .status_codes import codes - -# formerly defined here, reexposed here for backward compatibility -from .models import REDIRECT_STATI - -# Preferred clock, based on which one is more accurate on a given system. -if platform.system() == 'Windows': - try: # Python 3.3+ - preferred_clock = time.perf_counter - except AttributeError: # Earlier than Python 3. - preferred_clock = time.clock -else: - preferred_clock = time.time - - -def merge_setting(request_setting, session_setting, dict_class=OrderedDict): - """Determines appropriate setting for a given request, taking into account - the explicit setting on that request, and the setting in the session. If a - setting is a dictionary, they will be merged together using `dict_class` - """ - - if session_setting is None: - return request_setting - - if request_setting is None: - return session_setting - - # Bypass if not a dictionary (e.g. verify) - if not ( - isinstance(session_setting, Mapping) and - isinstance(request_setting, Mapping) - ): - return request_setting - - merged_setting = dict_class(to_key_val_list(session_setting)) - merged_setting.update(to_key_val_list(request_setting)) - - # Remove keys that are set to None. Extract keys first to avoid altering - # the dictionary during iteration. - none_keys = [k for (k, v) in merged_setting.items() if v is None] - for key in none_keys: - del merged_setting[key] - - return merged_setting - - -def merge_hooks(request_hooks, session_hooks, dict_class=OrderedDict): - """Properly merges both requests and session hooks. - - This is necessary because when request_hooks == {'response': []}, the - merge breaks Session hooks entirely. - """ - if session_hooks is None or session_hooks.get('response') == []: - return request_hooks - - if request_hooks is None or request_hooks.get('response') == []: - return session_hooks - - return merge_setting(request_hooks, session_hooks, dict_class) - - -class SessionRedirectMixin(object): - - def get_redirect_target(self, resp): - """Receives a Response. Returns a redirect URI or ``None``""" - # Due to the nature of how requests processes redirects this method will - # be called at least once upon the original response and at least twice - # on each subsequent redirect response (if any). - # If a custom mixin is used to handle this logic, it may be advantageous - # to cache the redirect location onto the response object as a private - # attribute. - if resp.is_redirect: - location = resp.headers['location'] - # Currently the underlying http module on py3 decode headers - # in latin1, but empirical evidence suggests that latin1 is very - # rarely used with non-ASCII characters in HTTP headers. - # It is more likely to get UTF8 header rather than latin1. - # This causes incorrect handling of UTF8 encoded location headers. - # To solve this, we re-encode the location in latin1. - if is_py3: - location = location.encode('latin1') - return to_native_string(location, 'utf8') - return None - - def resolve_redirects(self, resp, req, stream=False, timeout=None, - verify=True, cert=None, proxies=None, yield_requests=False, **adapter_kwargs): - """Receives a Response. Returns a generator of Responses or Requests.""" - - hist = [] # keep track of history - - url = self.get_redirect_target(resp) - while url: - prepared_request = req.copy() - - # Update history and keep track of redirects. - # resp.history must ignore the original request in this loop - hist.append(resp) - resp.history = hist[1:] - - try: - resp.content # Consume socket so it can be released - except (ChunkedEncodingError, ContentDecodingError, RuntimeError): - resp.raw.read(decode_content=False) - - if len(resp.history) >= self.max_redirects: - raise TooManyRedirects('Exceeded %s redirects.' % self.max_redirects, response=resp) - - # Release the connection back into the pool. - resp.close() - - # Handle redirection without scheme (see: RFC 1808 Section 4) - if url.startswith('//'): - parsed_rurl = urlparse(resp.url) - url = '%s:%s' % (to_native_string(parsed_rurl.scheme), url) - - # The scheme should be lower case... - parsed = urlparse(url) - url = parsed.geturl() - - # Facilitate relative 'location' headers, as allowed by RFC 7231. - # (e.g. '/path/to/resource' instead of 'http://domain.tld/path/to/resource') - # Compliant with RFC3986, we percent encode the url. - if not parsed.netloc: - url = urljoin(resp.url, requote_uri(url)) - else: - url = requote_uri(url) - - prepared_request.url = to_native_string(url) - - self.rebuild_method(prepared_request, resp) - - # https://github.com/requests/requests/issues/1084 - if resp.status_code not in (codes.temporary_redirect, codes.permanent_redirect): - # https://github.com/requests/requests/issues/3490 - purged_headers = ('Content-Length', 'Content-Type', 'Transfer-Encoding') - for header in purged_headers: - prepared_request.headers.pop(header, None) - prepared_request.body = None - - headers = prepared_request.headers - try: - del headers['Cookie'] - except KeyError: - pass - - # Extract any cookies sent on the response to the cookiejar - # in the new request. Because we've mutated our copied prepared - # request, use the old one that we haven't yet touched. - extract_cookies_to_jar(prepared_request._cookies, req, resp.raw) - merge_cookies(prepared_request._cookies, self.cookies) - prepared_request.prepare_cookies(prepared_request._cookies) - - # Rebuild auth and proxy information. - proxies = self.rebuild_proxies(prepared_request, proxies) - self.rebuild_auth(prepared_request, resp) - - # A failed tell() sets `_body_position` to `object()`. This non-None - # value ensures `rewindable` will be True, allowing us to raise an - # UnrewindableBodyError, instead of hanging the connection. - rewindable = ( - prepared_request._body_position is not None and - ('Content-Length' in headers or 'Transfer-Encoding' in headers) - ) - - # Attempt to rewind consumed file-like object. - if rewindable: - rewind_body(prepared_request) - - # Override the original request. - req = prepared_request - - if yield_requests: - yield req - else: - - resp = self.send( - req, - stream=stream, - timeout=timeout, - verify=verify, - cert=cert, - proxies=proxies, - allow_redirects=False, - **adapter_kwargs - ) - - extract_cookies_to_jar(self.cookies, prepared_request, resp.raw) - - # extract redirect url, if any, for the next loop - url = self.get_redirect_target(resp) - yield resp - - def rebuild_auth(self, prepared_request, response): - """When being redirected we may want to strip authentication from the - request to avoid leaking credentials. This method intelligently removes - and reapplies authentication where possible to avoid credential loss. - """ - headers = prepared_request.headers - url = prepared_request.url - - if 'Authorization' in headers: - # If we get redirected to a new host, we should strip out any - # authentication headers. - original_parsed = urlparse(response.request.url) - redirect_parsed = urlparse(url) - - if (original_parsed.hostname != redirect_parsed.hostname): - del headers['Authorization'] - - # .netrc might have more auth for us on our new host. - new_auth = get_netrc_auth(url) if self.trust_env else None - if new_auth is not None: - prepared_request.prepare_auth(new_auth) - - return - - def rebuild_proxies(self, prepared_request, proxies): - """This method re-evaluates the proxy configuration by considering the - environment variables. If we are redirected to a URL covered by - NO_PROXY, we strip the proxy configuration. Otherwise, we set missing - proxy keys for this URL (in case they were stripped by a previous - redirect). - - This method also replaces the Proxy-Authorization header where - necessary. - - :rtype: dict - """ - proxies = proxies if proxies is not None else {} - headers = prepared_request.headers - url = prepared_request.url - scheme = urlparse(url).scheme - new_proxies = proxies.copy() - no_proxy = proxies.get('no_proxy') - - bypass_proxy = should_bypass_proxies(url, no_proxy=no_proxy) - if self.trust_env and not bypass_proxy: - environ_proxies = get_environ_proxies(url, no_proxy=no_proxy) - - proxy = environ_proxies.get(scheme, environ_proxies.get('all')) - - if proxy: - new_proxies.setdefault(scheme, proxy) - - if 'Proxy-Authorization' in headers: - del headers['Proxy-Authorization'] - - try: - username, password = get_auth_from_url(new_proxies[scheme]) - except KeyError: - username, password = None, None - - if username and password: - headers['Proxy-Authorization'] = _basic_auth_str(username, password) - - return new_proxies - - def rebuild_method(self, prepared_request, response): - """When being redirected we may want to change the method of the request - based on certain specs or browser behavior. - """ - method = prepared_request.method - - # http://tools.ietf.org/html/rfc7231#section-6.4.4 - if response.status_code == codes.see_other and method != 'HEAD': - method = 'GET' - - # Do what the browsers do, despite standards... - # First, turn 302s into GETs. - if response.status_code == codes.found and method != 'HEAD': - method = 'GET' - - # Second, if a POST is responded to with a 301, turn it into a GET. - # This bizarre behaviour is explained in Issue 1704. - if response.status_code == codes.moved and method == 'POST': - method = 'GET' - - prepared_request.method = method - - -class Session(SessionRedirectMixin): - """A Requests session. - - Provides cookie persistence, connection-pooling, and configuration. - - Basic Usage:: - - >>> import requests - >>> s = requests.Session() - >>> s.get('http://httpbin.org/get') - <Response [200]> - - Or as a context manager:: - - >>> with requests.Session() as s: - >>> s.get('http://httpbin.org/get') - <Response [200]> - """ - - __attrs__ = [ - 'headers', 'cookies', 'auth', 'proxies', 'hooks', 'params', 'verify', - 'cert', 'prefetch', 'adapters', 'stream', 'trust_env', - 'max_redirects', - ] - - def __init__(self): - - #: A case-insensitive dictionary of headers to be sent on each - #: :class:`Request <Request>` sent from this - #: :class:`Session <Session>`. - self.headers = default_headers() - - #: Default Authentication tuple or object to attach to - #: :class:`Request <Request>`. - self.auth = None - - #: Dictionary mapping protocol or protocol and host to the URL of the proxy - #: (e.g. {'http': 'foo.bar:3128', 'http://host.name': 'foo.bar:4012'}) to - #: be used on each :class:`Request <Request>`. - self.proxies = {} - - #: Event-handling hooks. - self.hooks = default_hooks() - - #: Dictionary of querystring data to attach to each - #: :class:`Request <Request>`. The dictionary values may be lists for - #: representing multivalued query parameters. - self.params = {} - - #: Stream response content default. - self.stream = False - - #: SSL Verification default. - self.verify = True - - #: SSL client certificate default, if String, path to ssl client - #: cert file (.pem). If Tuple, ('cert', 'key') pair. - self.cert = None - - #: Maximum number of redirects allowed. If the request exceeds this - #: limit, a :class:`TooManyRedirects` exception is raised. - #: This defaults to requests.models.DEFAULT_REDIRECT_LIMIT, which is - #: 30. - self.max_redirects = DEFAULT_REDIRECT_LIMIT - - #: Trust environment settings for proxy configuration, default - #: authentication and similar. - self.trust_env = True - - #: A CookieJar containing all currently outstanding cookies set on this - #: session. By default it is a - #: :class:`RequestsCookieJar <requests.cookies.RequestsCookieJar>`, but - #: may be any other ``cookielib.CookieJar`` compatible object. - self.cookies = cookiejar_from_dict({}) - - # Default connection adapters. - self.adapters = OrderedDict() - self.mount('https://', HTTPAdapter()) - self.mount('http://', HTTPAdapter()) - - def __enter__(self): - return self - - def __exit__(self, *args): - self.close() - - def prepare_request(self, request): - """Constructs a :class:`PreparedRequest <PreparedRequest>` for - transmission and returns it. The :class:`PreparedRequest` has settings - merged from the :class:`Request <Request>` instance and those of the - :class:`Session`. - - :param request: :class:`Request` instance to prepare with this - session's settings. - :rtype: requests.PreparedRequest - """ - cookies = request.cookies or {} - - # Bootstrap CookieJar. - if not isinstance(cookies, cookielib.CookieJar): - cookies = cookiejar_from_dict(cookies) - - # Merge with session cookies - merged_cookies = merge_cookies( - merge_cookies(RequestsCookieJar(), self.cookies), cookies) - - # Set environment's basic authentication if not explicitly set. - auth = request.auth - if self.trust_env and not auth and not self.auth: - auth = get_netrc_auth(request.url) - - p = PreparedRequest() - p.prepare( - method=request.method.upper(), - url=request.url, - files=request.files, - data=request.data, - json=request.json, - headers=merge_setting(request.headers, self.headers, dict_class=CaseInsensitiveDict), - params=merge_setting(request.params, self.params), - auth=merge_setting(auth, self.auth), - cookies=merged_cookies, - hooks=merge_hooks(request.hooks, self.hooks), - ) - return p - - def request(self, method, url, - params=None, data=None, headers=None, cookies=None, files=None, - auth=None, timeout=None, allow_redirects=True, proxies=None, - hooks=None, stream=None, verify=None, cert=None, json=None): - """Constructs a :class:`Request <Request>`, prepares it and sends it. - Returns :class:`Response <Response>` object. - - :param method: method for the new :class:`Request` object. - :param url: URL for the new :class:`Request` object. - :param params: (optional) Dictionary or bytes to be sent in the query - string for the :class:`Request`. - :param data: (optional) Dictionary, bytes, or file-like object to send - in the body of the :class:`Request`. - :param json: (optional) json to send in the body of the - :class:`Request`. - :param headers: (optional) Dictionary of HTTP Headers to send with the - :class:`Request`. - :param cookies: (optional) Dict or CookieJar object to send with the - :class:`Request`. - :param files: (optional) Dictionary of ``'filename': file-like-objects`` - for multipart encoding upload. - :param auth: (optional) Auth tuple or callable to enable - Basic/Digest/Custom HTTP Auth. - :param timeout: (optional) How long to wait for the server to send - data before giving up, as a float, or a :ref:`(connect timeout, - read timeout) <timeouts>` tuple. - :type timeout: float or tuple - :param allow_redirects: (optional) Set to True by default. - :type allow_redirects: bool - :param proxies: (optional) Dictionary mapping protocol or protocol and - hostname to the URL of the proxy. - :param stream: (optional) whether to immediately download the response - content. Defaults to ``False``. - :param verify: (optional) Either a boolean, in which case it controls whether we verify - the server's TLS certificate, or a string, in which case it must be a path - to a CA bundle to use. Defaults to ``True``. - :param cert: (optional) if String, path to ssl client cert file (.pem). - If Tuple, ('cert', 'key') pair. - :rtype: requests.Response - """ - # Create the Request. - req = Request( - method=method.upper(), - url=url, - headers=headers, - files=files, - data=data or {}, - json=json, - params=params or {}, - auth=auth, - cookies=cookies, - hooks=hooks, - ) - prep = self.prepare_request(req) - - proxies = proxies or {} - - settings = self.merge_environment_settings( - prep.url, proxies, stream, verify, cert - ) - - # Send the request. - send_kwargs = { - 'timeout': timeout, - 'allow_redirects': allow_redirects, - } - send_kwargs.update(settings) - resp = self.send(prep, **send_kwargs) - - return resp - - def get(self, url, **kwargs): - r"""Sends a GET request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', True) - return self.request('GET', url, **kwargs) - - def options(self, url, **kwargs): - r"""Sends a OPTIONS request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', True) - return self.request('OPTIONS', url, **kwargs) - - def head(self, url, **kwargs): - r"""Sends a HEAD request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - kwargs.setdefault('allow_redirects', False) - return self.request('HEAD', url, **kwargs) - - def post(self, url, data=None, json=None, **kwargs): - r"""Sends a POST request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`. - :param json: (optional) json to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - return self.request('POST', url, data=data, json=json, **kwargs) - - def put(self, url, data=None, **kwargs): - r"""Sends a PUT request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - return self.request('PUT', url, data=data, **kwargs) - - def patch(self, url, data=None, **kwargs): - r"""Sends a PATCH request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - return self.request('PATCH', url, data=data, **kwargs) - - def delete(self, url, **kwargs): - r"""Sends a DELETE request. Returns :class:`Response` object. - - :param url: URL for the new :class:`Request` object. - :param \*\*kwargs: Optional arguments that ``request`` takes. - :rtype: requests.Response - """ - - return self.request('DELETE', url, **kwargs) - - def send(self, request, **kwargs): - """Send a given PreparedRequest. - - :rtype: requests.Response - """ - # Set defaults that the hooks can utilize to ensure they always have - # the correct parameters to reproduce the previous request. - kwargs.setdefault('stream', self.stream) - kwargs.setdefault('verify', self.verify) - kwargs.setdefault('cert', self.cert) - kwargs.setdefault('proxies', self.proxies) - - # It's possible that users might accidentally send a Request object. - # Guard against that specific failure case. - if isinstance(request, Request): - raise ValueError('You can only send PreparedRequests.') - - # Set up variables needed for resolve_redirects and dispatching of hooks - allow_redirects = kwargs.pop('allow_redirects', True) - stream = kwargs.get('stream') - hooks = request.hooks - - # Get the appropriate adapter to use - adapter = self.get_adapter(url=request.url) - - # Start time (approximately) of the request - start = preferred_clock() - - # Send the request - r = adapter.send(request, **kwargs) - - # Total elapsed time of the request (approximately) - elapsed = preferred_clock() - start - r.elapsed = timedelta(seconds=elapsed) - - # Response manipulation hooks - r = dispatch_hook('response', hooks, r, **kwargs) - - # Persist cookies - if r.history: - - # If the hooks create history then we want those cookies too - for resp in r.history: - extract_cookies_to_jar(self.cookies, resp.request, resp.raw) - - extract_cookies_to_jar(self.cookies, request, r.raw) - - # Redirect resolving generator. - gen = self.resolve_redirects(r, request, **kwargs) - - # Resolve redirects if allowed. - history = [resp for resp in gen] if allow_redirects else [] - - # Shuffle things around if there's history. - if history: - # Insert the first (original) request at the start - history.insert(0, r) - # Get the last request made - r = history.pop() - r.history = history - - # If redirects aren't being followed, store the response on the Request for Response.next(). - if not allow_redirects: - try: - r._next = next(self.resolve_redirects(r, request, yield_requests=True, **kwargs)) - except StopIteration: - pass - - if not stream: - r.content - - return r - - def merge_environment_settings(self, url, proxies, stream, verify, cert): - """ - Check the environment and merge it with some settings. - - :rtype: dict - """ - # Gather clues from the surrounding environment. - if self.trust_env: - # Set environment's proxies. - no_proxy = proxies.get('no_proxy') if proxies is not None else None - env_proxies = get_environ_proxies(url, no_proxy=no_proxy) - for (k, v) in env_proxies.items(): - proxies.setdefault(k, v) - - # Look for requests environment configuration and be compatible - # with cURL. - if verify is True or verify is None: - verify = (os.environ.get('REQUESTS_CA_BUNDLE') or - os.environ.get('CURL_CA_BUNDLE')) - - # Merge all the kwargs. - proxies = merge_setting(proxies, self.proxies) - stream = merge_setting(stream, self.stream) - verify = merge_setting(verify, self.verify) - cert = merge_setting(cert, self.cert) - - return {'verify': verify, 'proxies': proxies, 'stream': stream, - 'cert': cert} - - def get_adapter(self, url): - """ - Returns the appropriate connection adapter for the given URL. - - :rtype: requests.adapters.BaseAdapter - """ - for (prefix, adapter) in self.adapters.items(): - - if url.lower().startswith(prefix): - return adapter - - # Nothing matches :-/ - raise InvalidSchema("No connection adapters were found for '%s'" % url) - - def close(self): - """Closes all adapters and as such the session""" - for v in self.adapters.values(): - v.close() - - def mount(self, prefix, adapter): - """Registers a connection adapter to a prefix. - - Adapters are sorted in descending order by prefix length. - """ - self.adapters[prefix] = adapter - keys_to_move = [k for k in self.adapters if len(k) < len(prefix)] - - for key in keys_to_move: - self.adapters[key] = self.adapters.pop(key) - - def __getstate__(self): - state = dict((attr, getattr(self, attr, None)) for attr in self.__attrs__) - return state - - def __setstate__(self, state): - for attr, value in state.items(): - setattr(self, attr, value) - - -def session(): - """ - Returns a :class:`Session` for context-management. - - :rtype: Session - """ - - return Session() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/status_codes.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/status_codes.py deleted file mode 100644 index 85d9bbc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/status_codes.py +++ /dev/null @@ -1,91 +0,0 @@ -# -*- coding: utf-8 -*- - -from .structures import LookupDict - -_codes = { - - # Informational. - 100: ('continue',), - 101: ('switching_protocols',), - 102: ('processing',), - 103: ('checkpoint',), - 122: ('uri_too_long', 'request_uri_too_long'), - 200: ('ok', 'okay', 'all_ok', 'all_okay', 'all_good', '\\o/', '✓'), - 201: ('created',), - 202: ('accepted',), - 203: ('non_authoritative_info', 'non_authoritative_information'), - 204: ('no_content',), - 205: ('reset_content', 'reset'), - 206: ('partial_content', 'partial'), - 207: ('multi_status', 'multiple_status', 'multi_stati', 'multiple_stati'), - 208: ('already_reported',), - 226: ('im_used',), - - # Redirection. - 300: ('multiple_choices',), - 301: ('moved_permanently', 'moved', '\\o-'), - 302: ('found',), - 303: ('see_other', 'other'), - 304: ('not_modified',), - 305: ('use_proxy',), - 306: ('switch_proxy',), - 307: ('temporary_redirect', 'temporary_moved', 'temporary'), - 308: ('permanent_redirect', - 'resume_incomplete', 'resume',), # These 2 to be removed in 3.0 - - # Client Error. - 400: ('bad_request', 'bad'), - 401: ('unauthorized',), - 402: ('payment_required', 'payment'), - 403: ('forbidden',), - 404: ('not_found', '-o-'), - 405: ('method_not_allowed', 'not_allowed'), - 406: ('not_acceptable',), - 407: ('proxy_authentication_required', 'proxy_auth', 'proxy_authentication'), - 408: ('request_timeout', 'timeout'), - 409: ('conflict',), - 410: ('gone',), - 411: ('length_required',), - 412: ('precondition_failed', 'precondition'), - 413: ('request_entity_too_large',), - 414: ('request_uri_too_large',), - 415: ('unsupported_media_type', 'unsupported_media', 'media_type'), - 416: ('requested_range_not_satisfiable', 'requested_range', 'range_not_satisfiable'), - 417: ('expectation_failed',), - 418: ('im_a_teapot', 'teapot', 'i_am_a_teapot'), - 421: ('misdirected_request',), - 422: ('unprocessable_entity', 'unprocessable'), - 423: ('locked',), - 424: ('failed_dependency', 'dependency'), - 425: ('unordered_collection', 'unordered'), - 426: ('upgrade_required', 'upgrade'), - 428: ('precondition_required', 'precondition'), - 429: ('too_many_requests', 'too_many'), - 431: ('header_fields_too_large', 'fields_too_large'), - 444: ('no_response', 'none'), - 449: ('retry_with', 'retry'), - 450: ('blocked_by_windows_parental_controls', 'parental_controls'), - 451: ('unavailable_for_legal_reasons', 'legal_reasons'), - 499: ('client_closed_request',), - - # Server Error. - 500: ('internal_server_error', 'server_error', '/o\\', '✗'), - 501: ('not_implemented',), - 502: ('bad_gateway',), - 503: ('service_unavailable', 'unavailable'), - 504: ('gateway_timeout',), - 505: ('http_version_not_supported', 'http_version'), - 506: ('variant_also_negotiates',), - 507: ('insufficient_storage',), - 509: ('bandwidth_limit_exceeded', 'bandwidth'), - 510: ('not_extended',), - 511: ('network_authentication_required', 'network_auth', 'network_authentication'), -} - -codes = LookupDict(name='status_codes') - -for code, titles in _codes.items(): - for title in titles: - setattr(codes, title, code) - if not title.startswith(('\\', '/')): - setattr(codes, title.upper(), code) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/structures.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/structures.py deleted file mode 100644 index ce775ba..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/structures.py +++ /dev/null @@ -1,105 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.structures -~~~~~~~~~~~~~~~~~~~ - -Data structures that power Requests. -""" - -import collections - -from .compat import OrderedDict - - -class CaseInsensitiveDict(collections.MutableMapping): - """A case-insensitive ``dict``-like object. - - Implements all methods and operations of - ``collections.MutableMapping`` as well as dict's ``copy``. Also - provides ``lower_items``. - - All keys are expected to be strings. The structure remembers the - case of the last key to be set, and ``iter(instance)``, - ``keys()``, ``items()``, ``iterkeys()``, and ``iteritems()`` - will contain case-sensitive keys. However, querying and contains - testing is case insensitive:: - - cid = CaseInsensitiveDict() - cid['Accept'] = 'application/json' - cid['aCCEPT'] == 'application/json' # True - list(cid) == ['Accept'] # True - - For example, ``headers['content-encoding']`` will return the - value of a ``'Content-Encoding'`` response header, regardless - of how the header name was originally stored. - - If the constructor, ``.update``, or equality comparison - operations are given keys that have equal ``.lower()``s, the - behavior is undefined. - """ - - def __init__(self, data=None, **kwargs): - self._store = OrderedDict() - if data is None: - data = {} - self.update(data, **kwargs) - - def __setitem__(self, key, value): - # Use the lowercased key for lookups, but store the actual - # key alongside the value. - self._store[key.lower()] = (key, value) - - def __getitem__(self, key): - return self._store[key.lower()][1] - - def __delitem__(self, key): - del self._store[key.lower()] - - def __iter__(self): - return (casedkey for casedkey, mappedvalue in self._store.values()) - - def __len__(self): - return len(self._store) - - def lower_items(self): - """Like iteritems(), but with all lowercase keys.""" - return ( - (lowerkey, keyval[1]) - for (lowerkey, keyval) - in self._store.items() - ) - - def __eq__(self, other): - if isinstance(other, collections.Mapping): - other = CaseInsensitiveDict(other) - else: - return NotImplemented - # Compare insensitively - return dict(self.lower_items()) == dict(other.lower_items()) - - # Copy is required - def copy(self): - return CaseInsensitiveDict(self._store.values()) - - def __repr__(self): - return str(dict(self.items())) - - -class LookupDict(dict): - """Dictionary lookup object.""" - - def __init__(self, name=None): - self.name = name - super(LookupDict, self).__init__() - - def __repr__(self): - return '<lookup \'%s\'>' % (self.name) - - def __getitem__(self, key): - # We allow fall-through here, so values default to None - - return self.__dict__.get(key, None) - - def get(self, key, default=None): - return self.__dict__.get(key, default) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/utils.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/utils.py deleted file mode 100644 index fc4f894..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/requests/utils.py +++ /dev/null @@ -1,904 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -requests.utils -~~~~~~~~~~~~~~ - -This module provides utility functions that are used within Requests -that are also useful for external consumption. -""" - -import cgi -import codecs -import collections -import contextlib -import io -import os -import platform -import re -import socket -import struct -import warnings - -from .__version__ import __version__ -from . import certs -# to_native_string is unused here, but imported here for backwards compatibility -from ._internal_utils import to_native_string -from .compat import parse_http_list as _parse_list_header -from .compat import ( - quote, urlparse, bytes, str, OrderedDict, unquote, getproxies, - proxy_bypass, urlunparse, basestring, integer_types, is_py3, - proxy_bypass_environment, getproxies_environment) -from .cookies import cookiejar_from_dict -from .structures import CaseInsensitiveDict -from .exceptions import ( - InvalidURL, InvalidHeader, FileModeWarning, UnrewindableBodyError) - -NETRC_FILES = ('.netrc', '_netrc') - -DEFAULT_CA_BUNDLE_PATH = certs.where() - - -if platform.system() == 'Windows': - # provide a proxy_bypass version on Windows without DNS lookups - - def proxy_bypass_registry(host): - if is_py3: - import winreg - else: - import _winreg as winreg - try: - internetSettings = winreg.OpenKey(winreg.HKEY_CURRENT_USER, - r'Software\Microsoft\Windows\CurrentVersion\Internet Settings') - proxyEnable = winreg.QueryValueEx(internetSettings, - 'ProxyEnable')[0] - proxyOverride = winreg.QueryValueEx(internetSettings, - 'ProxyOverride')[0] - except OSError: - return False - if not proxyEnable or not proxyOverride: - return False - - # make a check value list from the registry entry: replace the - # '<local>' string by the localhost entry and the corresponding - # canonical entry. - proxyOverride = proxyOverride.split(';') - # now check if we match one of the registry values. - for test in proxyOverride: - if test == '<local>': - if '.' not in host: - return True - test = test.replace(".", r"\.") # mask dots - test = test.replace("*", r".*") # change glob sequence - test = test.replace("?", r".") # change glob char - if re.match(test, host, re.I): - return True - return False - - def proxy_bypass(host): # noqa - """Return True, if the host should be bypassed. - - Checks proxy settings gathered from the environment, if specified, - or the registry. - """ - if getproxies_environment(): - return proxy_bypass_environment(host) - else: - return proxy_bypass_registry(host) - - -def dict_to_sequence(d): - """Returns an internal sequence dictionary update.""" - - if hasattr(d, 'items'): - d = d.items() - - return d - - -def super_len(o): - total_length = None - current_position = 0 - - if hasattr(o, '__len__'): - total_length = len(o) - - elif hasattr(o, 'len'): - total_length = o.len - - elif hasattr(o, 'fileno'): - try: - fileno = o.fileno() - except io.UnsupportedOperation: - pass - else: - total_length = os.fstat(fileno).st_size - - # Having used fstat to determine the file length, we need to - # confirm that this file was opened up in binary mode. - if 'b' not in o.mode: - warnings.warn(( - "Requests has determined the content-length for this " - "request using the binary size of the file: however, the " - "file has been opened in text mode (i.e. without the 'b' " - "flag in the mode). This may lead to an incorrect " - "content-length. In Requests 3.0, support will be removed " - "for files in text mode."), - FileModeWarning - ) - - if hasattr(o, 'tell'): - try: - current_position = o.tell() - except (OSError, IOError): - # This can happen in some weird situations, such as when the file - # is actually a special file descriptor like stdin. In this - # instance, we don't know what the length is, so set it to zero and - # let requests chunk it instead. - if total_length is not None: - current_position = total_length - else: - if hasattr(o, 'seek') and total_length is None: - # StringIO and BytesIO have seek but no useable fileno - try: - # seek to end of file - o.seek(0, 2) - total_length = o.tell() - - # seek back to current position to support - # partially read file-like objects - o.seek(current_position or 0) - except (OSError, IOError): - total_length = 0 - - if total_length is None: - total_length = 0 - - return max(0, total_length - current_position) - - -def get_netrc_auth(url, raise_errors=False): - """Returns the Requests tuple auth for a given url from netrc.""" - - try: - from netrc import netrc, NetrcParseError - - netrc_path = None - - for f in NETRC_FILES: - try: - loc = os.path.expanduser('~/{0}'.format(f)) - except KeyError: - # os.path.expanduser can fail when $HOME is undefined and - # getpwuid fails. See http://bugs.python.org/issue20164 & - # https://github.com/requests/requests/issues/1846 - return - - if os.path.exists(loc): - netrc_path = loc - break - - # Abort early if there isn't one. - if netrc_path is None: - return - - ri = urlparse(url) - - # Strip port numbers from netloc. This weird `if...encode`` dance is - # used for Python 3.2, which doesn't support unicode literals. - splitstr = b':' - if isinstance(url, str): - splitstr = splitstr.decode('ascii') - host = ri.netloc.split(splitstr)[0] - - try: - _netrc = netrc(netrc_path).authenticators(host) - if _netrc: - # Return with login / password - login_i = (0 if _netrc[0] else 1) - return (_netrc[login_i], _netrc[2]) - except (NetrcParseError, IOError): - # If there was a parsing error or a permissions issue reading the file, - # we'll just skip netrc auth unless explicitly asked to raise errors. - if raise_errors: - raise - - # AppEngine hackiness. - except (ImportError, AttributeError): - pass - - -def guess_filename(obj): - """Tries to guess the filename of the given object.""" - name = getattr(obj, 'name', None) - if (name and isinstance(name, basestring) and name[0] != '<' and - name[-1] != '>'): - return os.path.basename(name) - - -def from_key_val_list(value): - """Take an object and test to see if it can be represented as a - dictionary. Unless it can not be represented as such, return an - OrderedDict, e.g., - - :: - - >>> from_key_val_list([('key', 'val')]) - OrderedDict([('key', 'val')]) - >>> from_key_val_list('string') - ValueError: need more than 1 value to unpack - >>> from_key_val_list({'key': 'val'}) - OrderedDict([('key', 'val')]) - - :rtype: OrderedDict - """ - if value is None: - return None - - if isinstance(value, (str, bytes, bool, int)): - raise ValueError('cannot encode objects that are not 2-tuples') - - return OrderedDict(value) - - -def to_key_val_list(value): - """Take an object and test to see if it can be represented as a - dictionary. If it can be, return a list of tuples, e.g., - - :: - - >>> to_key_val_list([('key', 'val')]) - [('key', 'val')] - >>> to_key_val_list({'key': 'val'}) - [('key', 'val')] - >>> to_key_val_list('string') - ValueError: cannot encode objects that are not 2-tuples. - - :rtype: list - """ - if value is None: - return None - - if isinstance(value, (str, bytes, bool, int)): - raise ValueError('cannot encode objects that are not 2-tuples') - - if isinstance(value, collections.Mapping): - value = value.items() - - return list(value) - - -# From mitsuhiko/werkzeug (used with permission). -def parse_list_header(value): - """Parse lists as described by RFC 2068 Section 2. - - In particular, parse comma-separated lists where the elements of - the list may include quoted-strings. A quoted-string could - contain a comma. A non-quoted string could have quotes in the - middle. Quotes are removed automatically after parsing. - - It basically works like :func:`parse_set_header` just that items - may appear multiple times and case sensitivity is preserved. - - The return value is a standard :class:`list`: - - >>> parse_list_header('token, "quoted value"') - ['token', 'quoted value'] - - To create a header from the :class:`list` again, use the - :func:`dump_header` function. - - :param value: a string with a list header. - :return: :class:`list` - :rtype: list - """ - result = [] - for item in _parse_list_header(value): - if item[:1] == item[-1:] == '"': - item = unquote_header_value(item[1:-1]) - result.append(item) - return result - - -# From mitsuhiko/werkzeug (used with permission). -def parse_dict_header(value): - """Parse lists of key, value pairs as described by RFC 2068 Section 2 and - convert them into a python dict: - - >>> d = parse_dict_header('foo="is a fish", bar="as well"') - >>> type(d) is dict - True - >>> sorted(d.items()) - [('bar', 'as well'), ('foo', 'is a fish')] - - If there is no value for a key it will be `None`: - - >>> parse_dict_header('key_without_value') - {'key_without_value': None} - - To create a header from the :class:`dict` again, use the - :func:`dump_header` function. - - :param value: a string with a dict header. - :return: :class:`dict` - :rtype: dict - """ - result = {} - for item in _parse_list_header(value): - if '=' not in item: - result[item] = None - continue - name, value = item.split('=', 1) - if value[:1] == value[-1:] == '"': - value = unquote_header_value(value[1:-1]) - result[name] = value - return result - - -# From mitsuhiko/werkzeug (used with permission). -def unquote_header_value(value, is_filename=False): - r"""Unquotes a header value. (Reversal of :func:`quote_header_value`). - This does not use the real unquoting but what browsers are actually - using for quoting. - - :param value: the header value to unquote. - :rtype: str - """ - if value and value[0] == value[-1] == '"': - # this is not the real unquoting, but fixing this so that the - # RFC is met will result in bugs with internet explorer and - # probably some other browsers as well. IE for example is - # uploading files with "C:\foo\bar.txt" as filename - value = value[1:-1] - - # if this is a filename and the starting characters look like - # a UNC path, then just return the value without quotes. Using the - # replace sequence below on a UNC path has the effect of turning - # the leading double slash into a single slash and then - # _fix_ie_filename() doesn't work correctly. See #458. - if not is_filename or value[:2] != '\\\\': - return value.replace('\\\\', '\\').replace('\\"', '"') - return value - - -def dict_from_cookiejar(cj): - """Returns a key/value dictionary from a CookieJar. - - :param cj: CookieJar object to extract cookies from. - :rtype: dict - """ - - cookie_dict = {} - - for cookie in cj: - cookie_dict[cookie.name] = cookie.value - - return cookie_dict - - -def add_dict_to_cookiejar(cj, cookie_dict): - """Returns a CookieJar from a key/value dictionary. - - :param cj: CookieJar to insert cookies into. - :param cookie_dict: Dict of key/values to insert into CookieJar. - :rtype: CookieJar - """ - - return cookiejar_from_dict(cookie_dict, cj) - - -def get_encodings_from_content(content): - """Returns encodings from given content string. - - :param content: bytestring to extract encodings from. - """ - warnings.warn(( - 'In requests 3.0, get_encodings_from_content will be removed. For ' - 'more information, please see the discussion on issue #2266. (This' - ' warning should only appear once.)'), - DeprecationWarning) - - charset_re = re.compile(r'<meta.*?charset=["\']*(.+?)["\'>]', flags=re.I) - pragma_re = re.compile(r'<meta.*?content=["\']*;?charset=(.+?)["\'>]', flags=re.I) - xml_re = re.compile(r'^<\?xml.*?encoding=["\']*(.+?)["\'>]') - - return (charset_re.findall(content) + - pragma_re.findall(content) + - xml_re.findall(content)) - - -def get_encoding_from_headers(headers): - """Returns encodings from given HTTP Header Dict. - - :param headers: dictionary to extract encoding from. - :rtype: str - """ - - content_type = headers.get('content-type') - - if not content_type: - return None - - content_type, params = cgi.parse_header(content_type) - - if 'charset' in params: - return params['charset'].strip("'\"") - - if 'text' in content_type: - return 'ISO-8859-1' - - -def stream_decode_response_unicode(iterator, r): - """Stream decodes a iterator.""" - - if r.encoding is None: - for item in iterator: - yield item - return - - decoder = codecs.getincrementaldecoder(r.encoding)(errors='replace') - for chunk in iterator: - rv = decoder.decode(chunk) - if rv: - yield rv - rv = decoder.decode(b'', final=True) - if rv: - yield rv - - -def iter_slices(string, slice_length): - """Iterate over slices of a string.""" - pos = 0 - if slice_length is None or slice_length <= 0: - slice_length = len(string) - while pos < len(string): - yield string[pos:pos + slice_length] - pos += slice_length - - -def get_unicode_from_response(r): - """Returns the requested content back in unicode. - - :param r: Response object to get unicode content from. - - Tried: - - 1. charset from content-type - 2. fall back and replace all unicode characters - - :rtype: str - """ - warnings.warn(( - 'In requests 3.0, get_unicode_from_response will be removed. For ' - 'more information, please see the discussion on issue #2266. (This' - ' warning should only appear once.)'), - DeprecationWarning) - - tried_encodings = [] - - # Try charset from content-type - encoding = get_encoding_from_headers(r.headers) - - if encoding: - try: - return str(r.content, encoding) - except UnicodeError: - tried_encodings.append(encoding) - - # Fall back: - try: - return str(r.content, encoding, errors='replace') - except TypeError: - return r.content - - -# The unreserved URI characters (RFC 3986) -UNRESERVED_SET = frozenset( - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" + "0123456789-._~") - - -def unquote_unreserved(uri): - """Un-escape any percent-escape sequences in a URI that are unreserved - characters. This leaves all reserved, illegal and non-ASCII bytes encoded. - - :rtype: str - """ - parts = uri.split('%') - for i in range(1, len(parts)): - h = parts[i][0:2] - if len(h) == 2 and h.isalnum(): - try: - c = chr(int(h, 16)) - except ValueError: - raise InvalidURL("Invalid percent-escape sequence: '%s'" % h) - - if c in UNRESERVED_SET: - parts[i] = c + parts[i][2:] - else: - parts[i] = '%' + parts[i] - else: - parts[i] = '%' + parts[i] - return ''.join(parts) - - -def requote_uri(uri): - """Re-quote the given URI. - - This function passes the given URI through an unquote/quote cycle to - ensure that it is fully and consistently quoted. - - :rtype: str - """ - safe_with_percent = "!#$%&'()*+,/:;=?@[]~" - safe_without_percent = "!#$&'()*+,/:;=?@[]~" - try: - # Unquote only the unreserved characters - # Then quote only illegal characters (do not quote reserved, - # unreserved, or '%') - return quote(unquote_unreserved(uri), safe=safe_with_percent) - except InvalidURL: - # We couldn't unquote the given URI, so let's try quoting it, but - # there may be unquoted '%'s in the URI. We need to make sure they're - # properly quoted so they do not cause issues elsewhere. - return quote(uri, safe=safe_without_percent) - - -def address_in_network(ip, net): - """This function allows you to check if an IP belongs to a network subnet - - Example: returns True if ip = 192.168.1.1 and net = 192.168.1.0/24 - returns False if ip = 192.168.1.1 and net = 192.168.100.0/24 - - :rtype: bool - """ - ipaddr = struct.unpack('=L', socket.inet_aton(ip))[0] - netaddr, bits = net.split('/') - netmask = struct.unpack('=L', socket.inet_aton(dotted_netmask(int(bits))))[0] - network = struct.unpack('=L', socket.inet_aton(netaddr))[0] & netmask - return (ipaddr & netmask) == (network & netmask) - - -def dotted_netmask(mask): - """Converts mask from /xx format to xxx.xxx.xxx.xxx - - Example: if mask is 24 function returns 255.255.255.0 - - :rtype: str - """ - bits = 0xffffffff ^ (1 << 32 - mask) - 1 - return socket.inet_ntoa(struct.pack('>I', bits)) - - -def is_ipv4_address(string_ip): - """ - :rtype: bool - """ - try: - socket.inet_aton(string_ip) - except socket.error: - return False - return True - - -def is_valid_cidr(string_network): - """ - Very simple check of the cidr format in no_proxy variable. - - :rtype: bool - """ - if string_network.count('/') == 1: - try: - mask = int(string_network.split('/')[1]) - except ValueError: - return False - - if mask < 1 or mask > 32: - return False - - try: - socket.inet_aton(string_network.split('/')[0]) - except socket.error: - return False - else: - return False - return True - - -@contextlib.contextmanager -def set_environ(env_name, value): - """Set the environment variable 'env_name' to 'value' - - Save previous value, yield, and then restore the previous value stored in - the environment variable 'env_name'. - - If 'value' is None, do nothing""" - value_changed = value is not None - if value_changed: - old_value = os.environ.get(env_name) - os.environ[env_name] = value - try: - yield - finally: - if value_changed: - if old_value is None: - del os.environ[env_name] - else: - os.environ[env_name] = old_value - - -def should_bypass_proxies(url, no_proxy): - """ - Returns whether we should bypass proxies or not. - - :rtype: bool - """ - get_proxy = lambda k: os.environ.get(k) or os.environ.get(k.upper()) - - # First check whether no_proxy is defined. If it is, check that the URL - # we're getting isn't in the no_proxy list. - no_proxy_arg = no_proxy - if no_proxy is None: - no_proxy = get_proxy('no_proxy') - netloc = urlparse(url).netloc - - if no_proxy: - # We need to check whether we match here. We need to see if we match - # the end of the netloc, both with and without the port. - no_proxy = ( - host for host in no_proxy.replace(' ', '').split(',') if host - ) - - ip = netloc.split(':')[0] - if is_ipv4_address(ip): - for proxy_ip in no_proxy: - if is_valid_cidr(proxy_ip): - if address_in_network(ip, proxy_ip): - return True - elif ip == proxy_ip: - # If no_proxy ip was defined in plain IP notation instead of cidr notation & - # matches the IP of the index - return True - else: - for host in no_proxy: - if netloc.endswith(host) or netloc.split(':')[0].endswith(host): - # The URL does match something in no_proxy, so we don't want - # to apply the proxies on this URL. - return True - - # If the system proxy settings indicate that this URL should be bypassed, - # don't proxy. - # The proxy_bypass function is incredibly buggy on OS X in early versions - # of Python 2.6, so allow this call to fail. Only catch the specific - # exceptions we've seen, though: this call failing in other ways can reveal - # legitimate problems. - with set_environ('no_proxy', no_proxy_arg): - try: - bypass = proxy_bypass(netloc) - except (TypeError, socket.gaierror): - bypass = False - - if bypass: - return True - - return False - - -def get_environ_proxies(url, no_proxy=None): - """ - Return a dict of environment proxies. - - :rtype: dict - """ - if should_bypass_proxies(url, no_proxy=no_proxy): - return {} - else: - return getproxies() - - -def select_proxy(url, proxies): - """Select a proxy for the url, if applicable. - - :param url: The url being for the request - :param proxies: A dictionary of schemes or schemes and hosts to proxy URLs - """ - proxies = proxies or {} - urlparts = urlparse(url) - if urlparts.hostname is None: - return proxies.get(urlparts.scheme, proxies.get('all')) - - proxy_keys = [ - urlparts.scheme + '://' + urlparts.hostname, - urlparts.scheme, - 'all://' + urlparts.hostname, - 'all', - ] - proxy = None - for proxy_key in proxy_keys: - if proxy_key in proxies: - proxy = proxies[proxy_key] - break - - return proxy - - -def default_user_agent(name="python-requests"): - """ - Return a string representing the default user agent. - - :rtype: str - """ - return '%s/%s' % (name, __version__) - - -def default_headers(): - """ - :rtype: requests.structures.CaseInsensitiveDict - """ - return CaseInsensitiveDict({ - 'User-Agent': default_user_agent(), - 'Accept-Encoding': ', '.join(('gzip', 'deflate')), - 'Accept': '*/*', - 'Connection': 'keep-alive', - }) - - -def parse_header_links(value): - """Return a dict of parsed link headers proxies. - - i.e. Link: <http:/.../front.jpeg>; rel=front; type="image/jpeg",<http://.../back.jpeg>; rel=back;type="image/jpeg" - - :rtype: list - """ - - links = [] - - replace_chars = ' \'"' - - for val in re.split(', *<', value): - try: - url, params = val.split(';', 1) - except ValueError: - url, params = val, '' - - link = {'url': url.strip('<> \'"')} - - for param in params.split(';'): - try: - key, value = param.split('=') - except ValueError: - break - - link[key.strip(replace_chars)] = value.strip(replace_chars) - - links.append(link) - - return links - - -# Null bytes; no need to recreate these on each call to guess_json_utf -_null = '\x00'.encode('ascii') # encoding to ASCII for Python 3 -_null2 = _null * 2 -_null3 = _null * 3 - - -def guess_json_utf(data): - """ - :rtype: str - """ - # JSON always starts with two ASCII characters, so detection is as - # easy as counting the nulls and from their location and count - # determine the encoding. Also detect a BOM, if present. - sample = data[:4] - if sample in (codecs.BOM_UTF32_LE, codecs.BOM_UTF32_BE): - return 'utf-32' # BOM included - if sample[:3] == codecs.BOM_UTF8: - return 'utf-8-sig' # BOM included, MS style (discouraged) - if sample[:2] in (codecs.BOM_UTF16_LE, codecs.BOM_UTF16_BE): - return 'utf-16' # BOM included - nullcount = sample.count(_null) - if nullcount == 0: - return 'utf-8' - if nullcount == 2: - if sample[::2] == _null2: # 1st and 3rd are null - return 'utf-16-be' - if sample[1::2] == _null2: # 2nd and 4th are null - return 'utf-16-le' - # Did not detect 2 valid UTF-16 ascii-range characters - if nullcount == 3: - if sample[:3] == _null3: - return 'utf-32-be' - if sample[1:] == _null3: - return 'utf-32-le' - # Did not detect a valid UTF-32 ascii-range character - return None - - -def prepend_scheme_if_needed(url, new_scheme): - """Given a URL that may or may not have a scheme, prepend the given scheme. - Does not replace a present scheme with the one provided as an argument. - - :rtype: str - """ - scheme, netloc, path, params, query, fragment = urlparse(url, new_scheme) - - # urlparse is a finicky beast, and sometimes decides that there isn't a - # netloc present. Assume that it's being over-cautious, and switch netloc - # and path if urlparse decided there was no netloc. - if not netloc: - netloc, path = path, netloc - - return urlunparse((scheme, netloc, path, params, query, fragment)) - - -def get_auth_from_url(url): - """Given a url with authentication components, extract them into a tuple of - username,password. - - :rtype: (str,str) - """ - parsed = urlparse(url) - - try: - auth = (unquote(parsed.username), unquote(parsed.password)) - except (AttributeError, TypeError): - auth = ('', '') - - return auth - - -# Moved outside of function to avoid recompile every call -_CLEAN_HEADER_REGEX_BYTE = re.compile(b'^\\S[^\\r\\n]*$|^$') -_CLEAN_HEADER_REGEX_STR = re.compile(r'^\S[^\r\n]*$|^$') - - -def check_header_validity(header): - """Verifies that header value is a string which doesn't contain - leading whitespace or return characters. This prevents unintended - header injection. - - :param header: tuple, in the format (name, value). - """ - name, value = header - - if isinstance(value, bytes): - pat = _CLEAN_HEADER_REGEX_BYTE - else: - pat = _CLEAN_HEADER_REGEX_STR - try: - if not pat.match(value): - raise InvalidHeader("Invalid return character or leading space in header: %s" % name) - except TypeError: - raise InvalidHeader("Value for header {%s: %s} must be of type str or " - "bytes, not %s" % (name, value, type(value))) - - -def urldefragauth(url): - """ - Given a url remove the fragment and the authentication part. - - :rtype: str - """ - scheme, netloc, path, params, query, fragment = urlparse(url) - - # see func:`prepend_scheme_if_needed` - if not netloc: - netloc, path = path, netloc - - netloc = netloc.rsplit('@', 1)[-1] - - return urlunparse((scheme, netloc, path, params, query, '')) - - -def rewind_body(prepared_request): - """Move file pointer back to its recorded starting position - so it can be read again on redirect. - """ - body_seek = getattr(prepared_request.body, 'seek', None) - if body_seek is not None and isinstance(prepared_request._body_position, integer_types): - try: - body_seek(prepared_request._body_position) - except (IOError, OSError): - raise UnrewindableBodyError("An error occurred when rewinding request " - "body for redirect.") - else: - raise UnrewindableBodyError("Unable to rewind request body for redirect.") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/retrying.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/retrying.py deleted file mode 100644 index f8d743b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/retrying.py +++ /dev/null @@ -1,267 +0,0 @@ -## Copyright 2013-2014 Ray Holder -## -## Licensed under the Apache License, Version 2.0 (the "License"); -## you may not use this file except in compliance with the License. -## You may obtain a copy of the License at -## -## http://www.apache.org/licenses/LICENSE-2.0 -## -## Unless required by applicable law or agreed to in writing, software -## distributed under the License is distributed on an "AS IS" BASIS, -## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -## See the License for the specific language governing permissions and -## limitations under the License. - -import random -from pip._vendor import six -import sys -import time -import traceback - - -# sys.maxint / 2, since Python 3.2 doesn't have a sys.maxint... -MAX_WAIT = 1073741823 - - -def retry(*dargs, **dkw): - """ - Decorator function that instantiates the Retrying object - @param *dargs: positional arguments passed to Retrying object - @param **dkw: keyword arguments passed to the Retrying object - """ - # support both @retry and @retry() as valid syntax - if len(dargs) == 1 and callable(dargs[0]): - def wrap_simple(f): - - @six.wraps(f) - def wrapped_f(*args, **kw): - return Retrying().call(f, *args, **kw) - - return wrapped_f - - return wrap_simple(dargs[0]) - - else: - def wrap(f): - - @six.wraps(f) - def wrapped_f(*args, **kw): - return Retrying(*dargs, **dkw).call(f, *args, **kw) - - return wrapped_f - - return wrap - - -class Retrying(object): - - def __init__(self, - stop=None, wait=None, - stop_max_attempt_number=None, - stop_max_delay=None, - wait_fixed=None, - wait_random_min=None, wait_random_max=None, - wait_incrementing_start=None, wait_incrementing_increment=None, - wait_exponential_multiplier=None, wait_exponential_max=None, - retry_on_exception=None, - retry_on_result=None, - wrap_exception=False, - stop_func=None, - wait_func=None, - wait_jitter_max=None): - - self._stop_max_attempt_number = 5 if stop_max_attempt_number is None else stop_max_attempt_number - self._stop_max_delay = 100 if stop_max_delay is None else stop_max_delay - self._wait_fixed = 1000 if wait_fixed is None else wait_fixed - self._wait_random_min = 0 if wait_random_min is None else wait_random_min - self._wait_random_max = 1000 if wait_random_max is None else wait_random_max - self._wait_incrementing_start = 0 if wait_incrementing_start is None else wait_incrementing_start - self._wait_incrementing_increment = 100 if wait_incrementing_increment is None else wait_incrementing_increment - self._wait_exponential_multiplier = 1 if wait_exponential_multiplier is None else wait_exponential_multiplier - self._wait_exponential_max = MAX_WAIT if wait_exponential_max is None else wait_exponential_max - self._wait_jitter_max = 0 if wait_jitter_max is None else wait_jitter_max - - # TODO add chaining of stop behaviors - # stop behavior - stop_funcs = [] - if stop_max_attempt_number is not None: - stop_funcs.append(self.stop_after_attempt) - - if stop_max_delay is not None: - stop_funcs.append(self.stop_after_delay) - - if stop_func is not None: - self.stop = stop_func - - elif stop is None: - self.stop = lambda attempts, delay: any(f(attempts, delay) for f in stop_funcs) - - else: - self.stop = getattr(self, stop) - - # TODO add chaining of wait behaviors - # wait behavior - wait_funcs = [lambda *args, **kwargs: 0] - if wait_fixed is not None: - wait_funcs.append(self.fixed_sleep) - - if wait_random_min is not None or wait_random_max is not None: - wait_funcs.append(self.random_sleep) - - if wait_incrementing_start is not None or wait_incrementing_increment is not None: - wait_funcs.append(self.incrementing_sleep) - - if wait_exponential_multiplier is not None or wait_exponential_max is not None: - wait_funcs.append(self.exponential_sleep) - - if wait_func is not None: - self.wait = wait_func - - elif wait is None: - self.wait = lambda attempts, delay: max(f(attempts, delay) for f in wait_funcs) - - else: - self.wait = getattr(self, wait) - - # retry on exception filter - if retry_on_exception is None: - self._retry_on_exception = self.always_reject - else: - self._retry_on_exception = retry_on_exception - - # TODO simplify retrying by Exception types - # retry on result filter - if retry_on_result is None: - self._retry_on_result = self.never_reject - else: - self._retry_on_result = retry_on_result - - self._wrap_exception = wrap_exception - - def stop_after_attempt(self, previous_attempt_number, delay_since_first_attempt_ms): - """Stop after the previous attempt >= stop_max_attempt_number.""" - return previous_attempt_number >= self._stop_max_attempt_number - - def stop_after_delay(self, previous_attempt_number, delay_since_first_attempt_ms): - """Stop after the time from the first attempt >= stop_max_delay.""" - return delay_since_first_attempt_ms >= self._stop_max_delay - - def no_sleep(self, previous_attempt_number, delay_since_first_attempt_ms): - """Don't sleep at all before retrying.""" - return 0 - - def fixed_sleep(self, previous_attempt_number, delay_since_first_attempt_ms): - """Sleep a fixed amount of time between each retry.""" - return self._wait_fixed - - def random_sleep(self, previous_attempt_number, delay_since_first_attempt_ms): - """Sleep a random amount of time between wait_random_min and wait_random_max""" - return random.randint(self._wait_random_min, self._wait_random_max) - - def incrementing_sleep(self, previous_attempt_number, delay_since_first_attempt_ms): - """ - Sleep an incremental amount of time after each attempt, starting at - wait_incrementing_start and incrementing by wait_incrementing_increment - """ - result = self._wait_incrementing_start + (self._wait_incrementing_increment * (previous_attempt_number - 1)) - if result < 0: - result = 0 - return result - - def exponential_sleep(self, previous_attempt_number, delay_since_first_attempt_ms): - exp = 2 ** previous_attempt_number - result = self._wait_exponential_multiplier * exp - if result > self._wait_exponential_max: - result = self._wait_exponential_max - if result < 0: - result = 0 - return result - - def never_reject(self, result): - return False - - def always_reject(self, result): - return True - - def should_reject(self, attempt): - reject = False - if attempt.has_exception: - reject |= self._retry_on_exception(attempt.value[1]) - else: - reject |= self._retry_on_result(attempt.value) - - return reject - - def call(self, fn, *args, **kwargs): - start_time = int(round(time.time() * 1000)) - attempt_number = 1 - while True: - try: - attempt = Attempt(fn(*args, **kwargs), attempt_number, False) - except: - tb = sys.exc_info() - attempt = Attempt(tb, attempt_number, True) - - if not self.should_reject(attempt): - return attempt.get(self._wrap_exception) - - delay_since_first_attempt_ms = int(round(time.time() * 1000)) - start_time - if self.stop(attempt_number, delay_since_first_attempt_ms): - if not self._wrap_exception and attempt.has_exception: - # get() on an attempt with an exception should cause it to be raised, but raise just in case - raise attempt.get() - else: - raise RetryError(attempt) - else: - sleep = self.wait(attempt_number, delay_since_first_attempt_ms) - if self._wait_jitter_max: - jitter = random.random() * self._wait_jitter_max - sleep = sleep + max(0, jitter) - time.sleep(sleep / 1000.0) - - attempt_number += 1 - - -class Attempt(object): - """ - An Attempt encapsulates a call to a target function that may end as a - normal return value from the function or an Exception depending on what - occurred during the execution. - """ - - def __init__(self, value, attempt_number, has_exception): - self.value = value - self.attempt_number = attempt_number - self.has_exception = has_exception - - def get(self, wrap_exception=False): - """ - Return the return value of this Attempt instance or raise an Exception. - If wrap_exception is true, this Attempt is wrapped inside of a - RetryError before being raised. - """ - if self.has_exception: - if wrap_exception: - raise RetryError(self) - else: - six.reraise(self.value[0], self.value[1], self.value[2]) - else: - return self.value - - def __repr__(self): - if self.has_exception: - return "Attempts: {0}, Error:\n{1}".format(self.attempt_number, "".join(traceback.format_tb(self.value[2]))) - else: - return "Attempts: {0}, Value: {1}".format(self.attempt_number, self.value) - - -class RetryError(Exception): - """ - A RetryError encapsulates the last Attempt instance right before giving up. - """ - - def __init__(self, last_attempt): - self.last_attempt = last_attempt - - def __str__(self): - return "RetryError[{0}]".format(self.last_attempt) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/six.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/six.py deleted file mode 100644 index e36380b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/six.py +++ /dev/null @@ -1,891 +0,0 @@ -# Copyright (c) 2010-2017 Benjamin Peterson -# -# 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. - -"""Utilities for writing code that runs on Python 2 and 3""" - -from __future__ import absolute_import - -import functools -import itertools -import operator -import sys -import types - -__author__ = "Benjamin Peterson <benjamin@python.org>" -__version__ = "1.11.0" - - -# Useful for very coarse version differentiation. -PY2 = sys.version_info[0] == 2 -PY3 = sys.version_info[0] == 3 -PY34 = sys.version_info[0:2] >= (3, 4) - -if PY3: - string_types = str, - integer_types = int, - class_types = type, - text_type = str - binary_type = bytes - - MAXSIZE = sys.maxsize -else: - string_types = basestring, - integer_types = (int, long) - class_types = (type, types.ClassType) - text_type = unicode - binary_type = str - - if sys.platform.startswith("java"): - # Jython always uses 32 bits. - MAXSIZE = int((1 << 31) - 1) - else: - # It's possible to have sizeof(long) != sizeof(Py_ssize_t). - class X(object): - - def __len__(self): - return 1 << 31 - try: - len(X()) - except OverflowError: - # 32-bit - MAXSIZE = int((1 << 31) - 1) - else: - # 64-bit - MAXSIZE = int((1 << 63) - 1) - del X - - -def _add_doc(func, doc): - """Add documentation to a function.""" - func.__doc__ = doc - - -def _import_module(name): - """Import module, returning the module after the last dot.""" - __import__(name) - return sys.modules[name] - - -class _LazyDescr(object): - - def __init__(self, name): - self.name = name - - def __get__(self, obj, tp): - result = self._resolve() - setattr(obj, self.name, result) # Invokes __set__. - try: - # This is a bit ugly, but it avoids running this again by - # removing this descriptor. - delattr(obj.__class__, self.name) - except AttributeError: - pass - return result - - -class MovedModule(_LazyDescr): - - def __init__(self, name, old, new=None): - super(MovedModule, self).__init__(name) - if PY3: - if new is None: - new = name - self.mod = new - else: - self.mod = old - - def _resolve(self): - return _import_module(self.mod) - - def __getattr__(self, attr): - _module = self._resolve() - value = getattr(_module, attr) - setattr(self, attr, value) - return value - - -class _LazyModule(types.ModuleType): - - def __init__(self, name): - super(_LazyModule, self).__init__(name) - self.__doc__ = self.__class__.__doc__ - - def __dir__(self): - attrs = ["__doc__", "__name__"] - attrs += [attr.name for attr in self._moved_attributes] - return attrs - - # Subclasses should override this - _moved_attributes = [] - - -class MovedAttribute(_LazyDescr): - - def __init__(self, name, old_mod, new_mod, old_attr=None, new_attr=None): - super(MovedAttribute, self).__init__(name) - if PY3: - if new_mod is None: - new_mod = name - self.mod = new_mod - if new_attr is None: - if old_attr is None: - new_attr = name - else: - new_attr = old_attr - self.attr = new_attr - else: - self.mod = old_mod - if old_attr is None: - old_attr = name - self.attr = old_attr - - def _resolve(self): - module = _import_module(self.mod) - return getattr(module, self.attr) - - -class _SixMetaPathImporter(object): - - """ - A meta path importer to import six.moves and its submodules. - - This class implements a PEP302 finder and loader. It should be compatible - with Python 2.5 and all existing versions of Python3 - """ - - def __init__(self, six_module_name): - self.name = six_module_name - self.known_modules = {} - - def _add_module(self, mod, *fullnames): - for fullname in fullnames: - self.known_modules[self.name + "." + fullname] = mod - - def _get_module(self, fullname): - return self.known_modules[self.name + "." + fullname] - - def find_module(self, fullname, path=None): - if fullname in self.known_modules: - return self - return None - - def __get_module(self, fullname): - try: - return self.known_modules[fullname] - except KeyError: - raise ImportError("This loader does not know module " + fullname) - - def load_module(self, fullname): - try: - # in case of a reload - return sys.modules[fullname] - except KeyError: - pass - mod = self.__get_module(fullname) - if isinstance(mod, MovedModule): - mod = mod._resolve() - else: - mod.__loader__ = self - sys.modules[fullname] = mod - return mod - - def is_package(self, fullname): - """ - Return true, if the named module is a package. - - We need this method to get correct spec objects with - Python 3.4 (see PEP451) - """ - return hasattr(self.__get_module(fullname), "__path__") - - def get_code(self, fullname): - """Return None - - Required, if is_package is implemented""" - self.__get_module(fullname) # eventually raises ImportError - return None - get_source = get_code # same as get_code - -_importer = _SixMetaPathImporter(__name__) - - -class _MovedItems(_LazyModule): - - """Lazy loading of moved objects""" - __path__ = [] # mark as package - - -_moved_attributes = [ - MovedAttribute("cStringIO", "cStringIO", "io", "StringIO"), - MovedAttribute("filter", "itertools", "builtins", "ifilter", "filter"), - MovedAttribute("filterfalse", "itertools", "itertools", "ifilterfalse", "filterfalse"), - MovedAttribute("input", "__builtin__", "builtins", "raw_input", "input"), - MovedAttribute("intern", "__builtin__", "sys"), - MovedAttribute("map", "itertools", "builtins", "imap", "map"), - MovedAttribute("getcwd", "os", "os", "getcwdu", "getcwd"), - MovedAttribute("getcwdb", "os", "os", "getcwd", "getcwdb"), - MovedAttribute("getoutput", "commands", "subprocess"), - MovedAttribute("range", "__builtin__", "builtins", "xrange", "range"), - MovedAttribute("reload_module", "__builtin__", "importlib" if PY34 else "imp", "reload"), - MovedAttribute("reduce", "__builtin__", "functools"), - MovedAttribute("shlex_quote", "pipes", "shlex", "quote"), - MovedAttribute("StringIO", "StringIO", "io"), - MovedAttribute("UserDict", "UserDict", "collections"), - MovedAttribute("UserList", "UserList", "collections"), - MovedAttribute("UserString", "UserString", "collections"), - MovedAttribute("xrange", "__builtin__", "builtins", "xrange", "range"), - MovedAttribute("zip", "itertools", "builtins", "izip", "zip"), - MovedAttribute("zip_longest", "itertools", "itertools", "izip_longest", "zip_longest"), - MovedModule("builtins", "__builtin__"), - MovedModule("configparser", "ConfigParser"), - MovedModule("copyreg", "copy_reg"), - MovedModule("dbm_gnu", "gdbm", "dbm.gnu"), - MovedModule("_dummy_thread", "dummy_thread", "_dummy_thread"), - MovedModule("http_cookiejar", "cookielib", "http.cookiejar"), - MovedModule("http_cookies", "Cookie", "http.cookies"), - MovedModule("html_entities", "htmlentitydefs", "html.entities"), - MovedModule("html_parser", "HTMLParser", "html.parser"), - MovedModule("http_client", "httplib", "http.client"), - MovedModule("email_mime_base", "email.MIMEBase", "email.mime.base"), - MovedModule("email_mime_image", "email.MIMEImage", "email.mime.image"), - MovedModule("email_mime_multipart", "email.MIMEMultipart", "email.mime.multipart"), - MovedModule("email_mime_nonmultipart", "email.MIMENonMultipart", "email.mime.nonmultipart"), - MovedModule("email_mime_text", "email.MIMEText", "email.mime.text"), - MovedModule("BaseHTTPServer", "BaseHTTPServer", "http.server"), - MovedModule("CGIHTTPServer", "CGIHTTPServer", "http.server"), - MovedModule("SimpleHTTPServer", "SimpleHTTPServer", "http.server"), - MovedModule("cPickle", "cPickle", "pickle"), - MovedModule("queue", "Queue"), - MovedModule("reprlib", "repr"), - MovedModule("socketserver", "SocketServer"), - MovedModule("_thread", "thread", "_thread"), - MovedModule("tkinter", "Tkinter"), - MovedModule("tkinter_dialog", "Dialog", "tkinter.dialog"), - MovedModule("tkinter_filedialog", "FileDialog", "tkinter.filedialog"), - MovedModule("tkinter_scrolledtext", "ScrolledText", "tkinter.scrolledtext"), - MovedModule("tkinter_simpledialog", "SimpleDialog", "tkinter.simpledialog"), - MovedModule("tkinter_tix", "Tix", "tkinter.tix"), - MovedModule("tkinter_ttk", "ttk", "tkinter.ttk"), - MovedModule("tkinter_constants", "Tkconstants", "tkinter.constants"), - MovedModule("tkinter_dnd", "Tkdnd", "tkinter.dnd"), - MovedModule("tkinter_colorchooser", "tkColorChooser", - "tkinter.colorchooser"), - MovedModule("tkinter_commondialog", "tkCommonDialog", - "tkinter.commondialog"), - MovedModule("tkinter_tkfiledialog", "tkFileDialog", "tkinter.filedialog"), - MovedModule("tkinter_font", "tkFont", "tkinter.font"), - MovedModule("tkinter_messagebox", "tkMessageBox", "tkinter.messagebox"), - MovedModule("tkinter_tksimpledialog", "tkSimpleDialog", - "tkinter.simpledialog"), - MovedModule("urllib_parse", __name__ + ".moves.urllib_parse", "urllib.parse"), - MovedModule("urllib_error", __name__ + ".moves.urllib_error", "urllib.error"), - MovedModule("urllib", __name__ + ".moves.urllib", __name__ + ".moves.urllib"), - MovedModule("urllib_robotparser", "robotparser", "urllib.robotparser"), - MovedModule("xmlrpc_client", "xmlrpclib", "xmlrpc.client"), - MovedModule("xmlrpc_server", "SimpleXMLRPCServer", "xmlrpc.server"), -] -# Add windows specific modules. -if sys.platform == "win32": - _moved_attributes += [ - MovedModule("winreg", "_winreg"), - ] - -for attr in _moved_attributes: - setattr(_MovedItems, attr.name, attr) - if isinstance(attr, MovedModule): - _importer._add_module(attr, "moves." + attr.name) -del attr - -_MovedItems._moved_attributes = _moved_attributes - -moves = _MovedItems(__name__ + ".moves") -_importer._add_module(moves, "moves") - - -class Module_six_moves_urllib_parse(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_parse""" - - -_urllib_parse_moved_attributes = [ - MovedAttribute("ParseResult", "urlparse", "urllib.parse"), - MovedAttribute("SplitResult", "urlparse", "urllib.parse"), - MovedAttribute("parse_qs", "urlparse", "urllib.parse"), - MovedAttribute("parse_qsl", "urlparse", "urllib.parse"), - MovedAttribute("urldefrag", "urlparse", "urllib.parse"), - MovedAttribute("urljoin", "urlparse", "urllib.parse"), - MovedAttribute("urlparse", "urlparse", "urllib.parse"), - MovedAttribute("urlsplit", "urlparse", "urllib.parse"), - MovedAttribute("urlunparse", "urlparse", "urllib.parse"), - MovedAttribute("urlunsplit", "urlparse", "urllib.parse"), - MovedAttribute("quote", "urllib", "urllib.parse"), - MovedAttribute("quote_plus", "urllib", "urllib.parse"), - MovedAttribute("unquote", "urllib", "urllib.parse"), - MovedAttribute("unquote_plus", "urllib", "urllib.parse"), - MovedAttribute("unquote_to_bytes", "urllib", "urllib.parse", "unquote", "unquote_to_bytes"), - MovedAttribute("urlencode", "urllib", "urllib.parse"), - MovedAttribute("splitquery", "urllib", "urllib.parse"), - MovedAttribute("splittag", "urllib", "urllib.parse"), - MovedAttribute("splituser", "urllib", "urllib.parse"), - MovedAttribute("splitvalue", "urllib", "urllib.parse"), - MovedAttribute("uses_fragment", "urlparse", "urllib.parse"), - MovedAttribute("uses_netloc", "urlparse", "urllib.parse"), - MovedAttribute("uses_params", "urlparse", "urllib.parse"), - MovedAttribute("uses_query", "urlparse", "urllib.parse"), - MovedAttribute("uses_relative", "urlparse", "urllib.parse"), -] -for attr in _urllib_parse_moved_attributes: - setattr(Module_six_moves_urllib_parse, attr.name, attr) -del attr - -Module_six_moves_urllib_parse._moved_attributes = _urllib_parse_moved_attributes - -_importer._add_module(Module_six_moves_urllib_parse(__name__ + ".moves.urllib_parse"), - "moves.urllib_parse", "moves.urllib.parse") - - -class Module_six_moves_urllib_error(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_error""" - - -_urllib_error_moved_attributes = [ - MovedAttribute("URLError", "urllib2", "urllib.error"), - MovedAttribute("HTTPError", "urllib2", "urllib.error"), - MovedAttribute("ContentTooShortError", "urllib", "urllib.error"), -] -for attr in _urllib_error_moved_attributes: - setattr(Module_six_moves_urllib_error, attr.name, attr) -del attr - -Module_six_moves_urllib_error._moved_attributes = _urllib_error_moved_attributes - -_importer._add_module(Module_six_moves_urllib_error(__name__ + ".moves.urllib.error"), - "moves.urllib_error", "moves.urllib.error") - - -class Module_six_moves_urllib_request(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_request""" - - -_urllib_request_moved_attributes = [ - MovedAttribute("urlopen", "urllib2", "urllib.request"), - MovedAttribute("install_opener", "urllib2", "urllib.request"), - MovedAttribute("build_opener", "urllib2", "urllib.request"), - MovedAttribute("pathname2url", "urllib", "urllib.request"), - MovedAttribute("url2pathname", "urllib", "urllib.request"), - MovedAttribute("getproxies", "urllib", "urllib.request"), - MovedAttribute("Request", "urllib2", "urllib.request"), - MovedAttribute("OpenerDirector", "urllib2", "urllib.request"), - MovedAttribute("HTTPDefaultErrorHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPRedirectHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPCookieProcessor", "urllib2", "urllib.request"), - MovedAttribute("ProxyHandler", "urllib2", "urllib.request"), - MovedAttribute("BaseHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPPasswordMgr", "urllib2", "urllib.request"), - MovedAttribute("HTTPPasswordMgrWithDefaultRealm", "urllib2", "urllib.request"), - MovedAttribute("AbstractBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("ProxyBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("AbstractDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("ProxyDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPSHandler", "urllib2", "urllib.request"), - MovedAttribute("FileHandler", "urllib2", "urllib.request"), - MovedAttribute("FTPHandler", "urllib2", "urllib.request"), - MovedAttribute("CacheFTPHandler", "urllib2", "urllib.request"), - MovedAttribute("UnknownHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPErrorProcessor", "urllib2", "urllib.request"), - MovedAttribute("urlretrieve", "urllib", "urllib.request"), - MovedAttribute("urlcleanup", "urllib", "urllib.request"), - MovedAttribute("URLopener", "urllib", "urllib.request"), - MovedAttribute("FancyURLopener", "urllib", "urllib.request"), - MovedAttribute("proxy_bypass", "urllib", "urllib.request"), - MovedAttribute("parse_http_list", "urllib2", "urllib.request"), - MovedAttribute("parse_keqv_list", "urllib2", "urllib.request"), -] -for attr in _urllib_request_moved_attributes: - setattr(Module_six_moves_urllib_request, attr.name, attr) -del attr - -Module_six_moves_urllib_request._moved_attributes = _urllib_request_moved_attributes - -_importer._add_module(Module_six_moves_urllib_request(__name__ + ".moves.urllib.request"), - "moves.urllib_request", "moves.urllib.request") - - -class Module_six_moves_urllib_response(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_response""" - - -_urllib_response_moved_attributes = [ - MovedAttribute("addbase", "urllib", "urllib.response"), - MovedAttribute("addclosehook", "urllib", "urllib.response"), - MovedAttribute("addinfo", "urllib", "urllib.response"), - MovedAttribute("addinfourl", "urllib", "urllib.response"), -] -for attr in _urllib_response_moved_attributes: - setattr(Module_six_moves_urllib_response, attr.name, attr) -del attr - -Module_six_moves_urllib_response._moved_attributes = _urllib_response_moved_attributes - -_importer._add_module(Module_six_moves_urllib_response(__name__ + ".moves.urllib.response"), - "moves.urllib_response", "moves.urllib.response") - - -class Module_six_moves_urllib_robotparser(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_robotparser""" - - -_urllib_robotparser_moved_attributes = [ - MovedAttribute("RobotFileParser", "robotparser", "urllib.robotparser"), -] -for attr in _urllib_robotparser_moved_attributes: - setattr(Module_six_moves_urllib_robotparser, attr.name, attr) -del attr - -Module_six_moves_urllib_robotparser._moved_attributes = _urllib_robotparser_moved_attributes - -_importer._add_module(Module_six_moves_urllib_robotparser(__name__ + ".moves.urllib.robotparser"), - "moves.urllib_robotparser", "moves.urllib.robotparser") - - -class Module_six_moves_urllib(types.ModuleType): - - """Create a six.moves.urllib namespace that resembles the Python 3 namespace""" - __path__ = [] # mark as package - parse = _importer._get_module("moves.urllib_parse") - error = _importer._get_module("moves.urllib_error") - request = _importer._get_module("moves.urllib_request") - response = _importer._get_module("moves.urllib_response") - robotparser = _importer._get_module("moves.urllib_robotparser") - - def __dir__(self): - return ['parse', 'error', 'request', 'response', 'robotparser'] - -_importer._add_module(Module_six_moves_urllib(__name__ + ".moves.urllib"), - "moves.urllib") - - -def add_move(move): - """Add an item to six.moves.""" - setattr(_MovedItems, move.name, move) - - -def remove_move(name): - """Remove item from six.moves.""" - try: - delattr(_MovedItems, name) - except AttributeError: - try: - del moves.__dict__[name] - except KeyError: - raise AttributeError("no such move, %r" % (name,)) - - -if PY3: - _meth_func = "__func__" - _meth_self = "__self__" - - _func_closure = "__closure__" - _func_code = "__code__" - _func_defaults = "__defaults__" - _func_globals = "__globals__" -else: - _meth_func = "im_func" - _meth_self = "im_self" - - _func_closure = "func_closure" - _func_code = "func_code" - _func_defaults = "func_defaults" - _func_globals = "func_globals" - - -try: - advance_iterator = next -except NameError: - def advance_iterator(it): - return it.next() -next = advance_iterator - - -try: - callable = callable -except NameError: - def callable(obj): - return any("__call__" in klass.__dict__ for klass in type(obj).__mro__) - - -if PY3: - def get_unbound_function(unbound): - return unbound - - create_bound_method = types.MethodType - - def create_unbound_method(func, cls): - return func - - Iterator = object -else: - def get_unbound_function(unbound): - return unbound.im_func - - def create_bound_method(func, obj): - return types.MethodType(func, obj, obj.__class__) - - def create_unbound_method(func, cls): - return types.MethodType(func, None, cls) - - class Iterator(object): - - def next(self): - return type(self).__next__(self) - - callable = callable -_add_doc(get_unbound_function, - """Get the function out of a possibly unbound function""") - - -get_method_function = operator.attrgetter(_meth_func) -get_method_self = operator.attrgetter(_meth_self) -get_function_closure = operator.attrgetter(_func_closure) -get_function_code = operator.attrgetter(_func_code) -get_function_defaults = operator.attrgetter(_func_defaults) -get_function_globals = operator.attrgetter(_func_globals) - - -if PY3: - def iterkeys(d, **kw): - return iter(d.keys(**kw)) - - def itervalues(d, **kw): - return iter(d.values(**kw)) - - def iteritems(d, **kw): - return iter(d.items(**kw)) - - def iterlists(d, **kw): - return iter(d.lists(**kw)) - - viewkeys = operator.methodcaller("keys") - - viewvalues = operator.methodcaller("values") - - viewitems = operator.methodcaller("items") -else: - def iterkeys(d, **kw): - return d.iterkeys(**kw) - - def itervalues(d, **kw): - return d.itervalues(**kw) - - def iteritems(d, **kw): - return d.iteritems(**kw) - - def iterlists(d, **kw): - return d.iterlists(**kw) - - viewkeys = operator.methodcaller("viewkeys") - - viewvalues = operator.methodcaller("viewvalues") - - viewitems = operator.methodcaller("viewitems") - -_add_doc(iterkeys, "Return an iterator over the keys of a dictionary.") -_add_doc(itervalues, "Return an iterator over the values of a dictionary.") -_add_doc(iteritems, - "Return an iterator over the (key, value) pairs of a dictionary.") -_add_doc(iterlists, - "Return an iterator over the (key, [values]) pairs of a dictionary.") - - -if PY3: - def b(s): - return s.encode("latin-1") - - def u(s): - return s - unichr = chr - import struct - int2byte = struct.Struct(">B").pack - del struct - byte2int = operator.itemgetter(0) - indexbytes = operator.getitem - iterbytes = iter - import io - StringIO = io.StringIO - BytesIO = io.BytesIO - _assertCountEqual = "assertCountEqual" - if sys.version_info[1] <= 1: - _assertRaisesRegex = "assertRaisesRegexp" - _assertRegex = "assertRegexpMatches" - else: - _assertRaisesRegex = "assertRaisesRegex" - _assertRegex = "assertRegex" -else: - def b(s): - return s - # Workaround for standalone backslash - - def u(s): - return unicode(s.replace(r'\\', r'\\\\'), "unicode_escape") - unichr = unichr - int2byte = chr - - def byte2int(bs): - return ord(bs[0]) - - def indexbytes(buf, i): - return ord(buf[i]) - iterbytes = functools.partial(itertools.imap, ord) - import StringIO - StringIO = BytesIO = StringIO.StringIO - _assertCountEqual = "assertItemsEqual" - _assertRaisesRegex = "assertRaisesRegexp" - _assertRegex = "assertRegexpMatches" -_add_doc(b, """Byte literal""") -_add_doc(u, """Text literal""") - - -def assertCountEqual(self, *args, **kwargs): - return getattr(self, _assertCountEqual)(*args, **kwargs) - - -def assertRaisesRegex(self, *args, **kwargs): - return getattr(self, _assertRaisesRegex)(*args, **kwargs) - - -def assertRegex(self, *args, **kwargs): - return getattr(self, _assertRegex)(*args, **kwargs) - - -if PY3: - exec_ = getattr(moves.builtins, "exec") - - def reraise(tp, value, tb=None): - try: - if value is None: - value = tp() - if value.__traceback__ is not tb: - raise value.with_traceback(tb) - raise value - finally: - value = None - tb = None - -else: - def exec_(_code_, _globs_=None, _locs_=None): - """Execute code in a namespace.""" - if _globs_ is None: - frame = sys._getframe(1) - _globs_ = frame.f_globals - if _locs_ is None: - _locs_ = frame.f_locals - del frame - elif _locs_ is None: - _locs_ = _globs_ - exec("""exec _code_ in _globs_, _locs_""") - - exec_("""def reraise(tp, value, tb=None): - try: - raise tp, value, tb - finally: - tb = None -""") - - -if sys.version_info[:2] == (3, 2): - exec_("""def raise_from(value, from_value): - try: - if from_value is None: - raise value - raise value from from_value - finally: - value = None -""") -elif sys.version_info[:2] > (3, 2): - exec_("""def raise_from(value, from_value): - try: - raise value from from_value - finally: - value = None -""") -else: - def raise_from(value, from_value): - raise value - - -print_ = getattr(moves.builtins, "print", None) -if print_ is None: - def print_(*args, **kwargs): - """The new-style print function for Python 2.4 and 2.5.""" - fp = kwargs.pop("file", sys.stdout) - if fp is None: - return - - def write(data): - if not isinstance(data, basestring): - data = str(data) - # If the file has an encoding, encode unicode with it. - if (isinstance(fp, file) and - isinstance(data, unicode) and - fp.encoding is not None): - errors = getattr(fp, "errors", None) - if errors is None: - errors = "strict" - data = data.encode(fp.encoding, errors) - fp.write(data) - want_unicode = False - sep = kwargs.pop("sep", None) - if sep is not None: - if isinstance(sep, unicode): - want_unicode = True - elif not isinstance(sep, str): - raise TypeError("sep must be None or a string") - end = kwargs.pop("end", None) - if end is not None: - if isinstance(end, unicode): - want_unicode = True - elif not isinstance(end, str): - raise TypeError("end must be None or a string") - if kwargs: - raise TypeError("invalid keyword arguments to print()") - if not want_unicode: - for arg in args: - if isinstance(arg, unicode): - want_unicode = True - break - if want_unicode: - newline = unicode("\n") - space = unicode(" ") - else: - newline = "\n" - space = " " - if sep is None: - sep = space - if end is None: - end = newline - for i, arg in enumerate(args): - if i: - write(sep) - write(arg) - write(end) -if sys.version_info[:2] < (3, 3): - _print = print_ - - def print_(*args, **kwargs): - fp = kwargs.get("file", sys.stdout) - flush = kwargs.pop("flush", False) - _print(*args, **kwargs) - if flush and fp is not None: - fp.flush() - -_add_doc(reraise, """Reraise an exception.""") - -if sys.version_info[0:2] < (3, 4): - def wraps(wrapped, assigned=functools.WRAPPER_ASSIGNMENTS, - updated=functools.WRAPPER_UPDATES): - def wrapper(f): - f = functools.wraps(wrapped, assigned, updated)(f) - f.__wrapped__ = wrapped - return f - return wrapper -else: - wraps = functools.wraps - - -def with_metaclass(meta, *bases): - """Create a base class with a metaclass.""" - # This requires a bit of explanation: the basic idea is to make a dummy - # metaclass for one level of class instantiation that replaces itself with - # the actual metaclass. - class metaclass(type): - - def __new__(cls, name, this_bases, d): - return meta(name, bases, d) - - @classmethod - def __prepare__(cls, name, this_bases): - return meta.__prepare__(name, bases) - return type.__new__(metaclass, 'temporary_class', (), {}) - - -def add_metaclass(metaclass): - """Class decorator for creating a class with a metaclass.""" - def wrapper(cls): - orig_vars = cls.__dict__.copy() - slots = orig_vars.get('__slots__') - if slots is not None: - if isinstance(slots, str): - slots = [slots] - for slots_var in slots: - orig_vars.pop(slots_var) - orig_vars.pop('__dict__', None) - orig_vars.pop('__weakref__', None) - return metaclass(cls.__name__, cls.__bases__, orig_vars) - return wrapper - - -def python_2_unicode_compatible(klass): - """ - A decorator that defines __unicode__ and __str__ methods under Python 2. - Under Python 3 it does nothing. - - To support Python 2 and 3 with a single code base, define a __str__ method - returning text and apply this decorator to the class. - """ - if PY2: - if '__str__' not in klass.__dict__: - raise ValueError("@python_2_unicode_compatible cannot be applied " - "to %s because it doesn't define __str__()." % - klass.__name__) - klass.__unicode__ = klass.__str__ - klass.__str__ = lambda self: self.__unicode__().encode('utf-8') - return klass - - -# Complete the moves implementation. -# This code is at the end of this module to speed up module loading. -# Turn this module into a package. -__path__ = [] # required for PEP 302 and PEP 451 -__package__ = __name__ # see PEP 366 @ReservedAssignment -if globals().get("__spec__") is not None: - __spec__.submodule_search_locations = [] # PEP 451 @UndefinedVariable -# Remove other six meta path importers, since they cause problems. This can -# happen if six is removed from sys.modules and then reloaded. (Setuptools does -# this for some reason.) -if sys.meta_path: - for i, importer in enumerate(sys.meta_path): - # Here's some real nastiness: Another "instance" of the six module might - # be floating around. Therefore, we can't use isinstance() to check for - # the six meta path importer, since the other six instance will have - # inserted an importer with different class. - if (type(importer).__name__ == "_SixMetaPathImporter" and - importer.name == __name__): - del sys.meta_path[i] - break - del i, importer -# Finally, add the importer to the meta path import hook. -sys.meta_path.append(_importer) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/__init__.py deleted file mode 100644 index 1bffade..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/__init__.py +++ /dev/null @@ -1,97 +0,0 @@ -""" -urllib3 - Thread-safe connection pooling and re-using. -""" - -from __future__ import absolute_import -import warnings - -from .connectionpool import ( - HTTPConnectionPool, - HTTPSConnectionPool, - connection_from_url -) - -from . import exceptions -from .filepost import encode_multipart_formdata -from .poolmanager import PoolManager, ProxyManager, proxy_from_url -from .response import HTTPResponse -from .util.request import make_headers -from .util.url import get_host -from .util.timeout import Timeout -from .util.retry import Retry - - -# Set default logging handler to avoid "No handler found" warnings. -import logging -try: # Python 2.7+ - from logging import NullHandler -except ImportError: - class NullHandler(logging.Handler): - def emit(self, record): - pass - -__author__ = 'Andrey Petrov (andrey.petrov@shazow.net)' -__license__ = 'MIT' -__version__ = '1.22' - -__all__ = ( - 'HTTPConnectionPool', - 'HTTPSConnectionPool', - 'PoolManager', - 'ProxyManager', - 'HTTPResponse', - 'Retry', - 'Timeout', - 'add_stderr_logger', - 'connection_from_url', - 'disable_warnings', - 'encode_multipart_formdata', - 'get_host', - 'make_headers', - 'proxy_from_url', -) - -logging.getLogger(__name__).addHandler(NullHandler()) - - -def add_stderr_logger(level=logging.DEBUG): - """ - Helper for quickly adding a StreamHandler to the logger. Useful for - debugging. - - Returns the handler after adding it. - """ - # This method needs to be in this __init__.py to get the __name__ correct - # even if urllib3 is vendored within another package. - logger = logging.getLogger(__name__) - handler = logging.StreamHandler() - handler.setFormatter(logging.Formatter('%(asctime)s %(levelname)s %(message)s')) - logger.addHandler(handler) - logger.setLevel(level) - logger.debug('Added a stderr logging handler to logger: %s', __name__) - return handler - - -# ... Clean up. -del NullHandler - - -# All warning filters *must* be appended unless you're really certain that they -# shouldn't be: otherwise, it's very hard for users to use most Python -# mechanisms to silence them. -# SecurityWarning's always go off by default. -warnings.simplefilter('always', exceptions.SecurityWarning, append=True) -# SubjectAltNameWarning's should go off once per host -warnings.simplefilter('default', exceptions.SubjectAltNameWarning, append=True) -# InsecurePlatformWarning's don't vary between requests, so we keep it default. -warnings.simplefilter('default', exceptions.InsecurePlatformWarning, - append=True) -# SNIMissingWarnings should go off only once. -warnings.simplefilter('default', exceptions.SNIMissingWarning, append=True) - - -def disable_warnings(category=exceptions.HTTPWarning): - """ - Helper for quickly disabling all urllib3 warnings. - """ - warnings.simplefilter('ignore', category) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/_collections.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/_collections.py deleted file mode 100644 index ecbf6b0..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/_collections.py +++ /dev/null @@ -1,319 +0,0 @@ -from __future__ import absolute_import -from collections import Mapping, MutableMapping -try: - from threading import RLock -except ImportError: # Platform-specific: No threads available - class RLock: - def __enter__(self): - pass - - def __exit__(self, exc_type, exc_value, traceback): - pass - - -try: # Python 2.7+ - from collections import OrderedDict -except ImportError: - from .packages.ordered_dict import OrderedDict -from .packages.six import iterkeys, itervalues, PY3 - - -__all__ = ['RecentlyUsedContainer', 'HTTPHeaderDict'] - - -_Null = object() - - -class RecentlyUsedContainer(MutableMapping): - """ - Provides a thread-safe dict-like container which maintains up to - ``maxsize`` keys while throwing away the least-recently-used keys beyond - ``maxsize``. - - :param maxsize: - Maximum number of recent elements to retain. - - :param dispose_func: - Every time an item is evicted from the container, - ``dispose_func(value)`` is called. Callback which will get called - """ - - ContainerCls = OrderedDict - - def __init__(self, maxsize=10, dispose_func=None): - self._maxsize = maxsize - self.dispose_func = dispose_func - - self._container = self.ContainerCls() - self.lock = RLock() - - def __getitem__(self, key): - # Re-insert the item, moving it to the end of the eviction line. - with self.lock: - item = self._container.pop(key) - self._container[key] = item - return item - - def __setitem__(self, key, value): - evicted_value = _Null - with self.lock: - # Possibly evict the existing value of 'key' - evicted_value = self._container.get(key, _Null) - self._container[key] = value - - # If we didn't evict an existing value, we might have to evict the - # least recently used item from the beginning of the container. - if len(self._container) > self._maxsize: - _key, evicted_value = self._container.popitem(last=False) - - if self.dispose_func and evicted_value is not _Null: - self.dispose_func(evicted_value) - - def __delitem__(self, key): - with self.lock: - value = self._container.pop(key) - - if self.dispose_func: - self.dispose_func(value) - - def __len__(self): - with self.lock: - return len(self._container) - - def __iter__(self): - raise NotImplementedError('Iteration over this class is unlikely to be threadsafe.') - - def clear(self): - with self.lock: - # Copy pointers to all values, then wipe the mapping - values = list(itervalues(self._container)) - self._container.clear() - - if self.dispose_func: - for value in values: - self.dispose_func(value) - - def keys(self): - with self.lock: - return list(iterkeys(self._container)) - - -class HTTPHeaderDict(MutableMapping): - """ - :param headers: - An iterable of field-value pairs. Must not contain multiple field names - when compared case-insensitively. - - :param kwargs: - Additional field-value pairs to pass in to ``dict.update``. - - A ``dict`` like container for storing HTTP Headers. - - Field names are stored and compared case-insensitively in compliance with - RFC 7230. Iteration provides the first case-sensitive key seen for each - case-insensitive pair. - - Using ``__setitem__`` syntax overwrites fields that compare equal - case-insensitively in order to maintain ``dict``'s api. For fields that - compare equal, instead create a new ``HTTPHeaderDict`` and use ``.add`` - in a loop. - - If multiple fields that are equal case-insensitively are passed to the - constructor or ``.update``, the behavior is undefined and some will be - lost. - - >>> headers = HTTPHeaderDict() - >>> headers.add('Set-Cookie', 'foo=bar') - >>> headers.add('set-cookie', 'baz=quxx') - >>> headers['content-length'] = '7' - >>> headers['SET-cookie'] - 'foo=bar, baz=quxx' - >>> headers['Content-Length'] - '7' - """ - - def __init__(self, headers=None, **kwargs): - super(HTTPHeaderDict, self).__init__() - self._container = OrderedDict() - if headers is not None: - if isinstance(headers, HTTPHeaderDict): - self._copy_from(headers) - else: - self.extend(headers) - if kwargs: - self.extend(kwargs) - - def __setitem__(self, key, val): - self._container[key.lower()] = [key, val] - return self._container[key.lower()] - - def __getitem__(self, key): - val = self._container[key.lower()] - return ', '.join(val[1:]) - - def __delitem__(self, key): - del self._container[key.lower()] - - def __contains__(self, key): - return key.lower() in self._container - - def __eq__(self, other): - if not isinstance(other, Mapping) and not hasattr(other, 'keys'): - return False - if not isinstance(other, type(self)): - other = type(self)(other) - return (dict((k.lower(), v) for k, v in self.itermerged()) == - dict((k.lower(), v) for k, v in other.itermerged())) - - def __ne__(self, other): - return not self.__eq__(other) - - if not PY3: # Python 2 - iterkeys = MutableMapping.iterkeys - itervalues = MutableMapping.itervalues - - __marker = object() - - def __len__(self): - return len(self._container) - - def __iter__(self): - # Only provide the originally cased names - for vals in self._container.values(): - yield vals[0] - - def pop(self, key, default=__marker): - '''D.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. - ''' - # Using the MutableMapping function directly fails due to the private marker. - # Using ordinary dict.pop would expose the internal structures. - # So let's reinvent the wheel. - try: - value = self[key] - except KeyError: - if default is self.__marker: - raise - return default - else: - del self[key] - return value - - def discard(self, key): - try: - del self[key] - except KeyError: - pass - - def add(self, key, val): - """Adds a (name, value) pair, doesn't overwrite the value if it already - exists. - - >>> headers = HTTPHeaderDict(foo='bar') - >>> headers.add('Foo', 'baz') - >>> headers['foo'] - 'bar, baz' - """ - key_lower = key.lower() - new_vals = [key, val] - # Keep the common case aka no item present as fast as possible - vals = self._container.setdefault(key_lower, new_vals) - if new_vals is not vals: - vals.append(val) - - def extend(self, *args, **kwargs): - """Generic import function for any type of header-like object. - Adapted version of MutableMapping.update in order to insert items - with self.add instead of self.__setitem__ - """ - if len(args) > 1: - raise TypeError("extend() takes at most 1 positional " - "arguments ({0} given)".format(len(args))) - other = args[0] if len(args) >= 1 else () - - if isinstance(other, HTTPHeaderDict): - for key, val in other.iteritems(): - self.add(key, val) - elif isinstance(other, Mapping): - for key in other: - self.add(key, other[key]) - elif hasattr(other, "keys"): - for key in other.keys(): - self.add(key, other[key]) - else: - for key, value in other: - self.add(key, value) - - for key, value in kwargs.items(): - self.add(key, value) - - def getlist(self, key, default=__marker): - """Returns a list of all the values for the named field. Returns an - empty list if the key doesn't exist.""" - try: - vals = self._container[key.lower()] - except KeyError: - if default is self.__marker: - return [] - return default - else: - return vals[1:] - - # Backwards compatibility for httplib - getheaders = getlist - getallmatchingheaders = getlist - iget = getlist - - # Backwards compatibility for http.cookiejar - get_all = getlist - - def __repr__(self): - return "%s(%s)" % (type(self).__name__, dict(self.itermerged())) - - def _copy_from(self, other): - for key in other: - val = other.getlist(key) - if isinstance(val, list): - # Don't need to convert tuples - val = list(val) - self._container[key.lower()] = [key] + val - - def copy(self): - clone = type(self)() - clone._copy_from(self) - return clone - - def iteritems(self): - """Iterate over all header lines, including duplicate ones.""" - for key in self: - vals = self._container[key.lower()] - for val in vals[1:]: - yield vals[0], val - - def itermerged(self): - """Iterate over all headers, merging duplicate ones together.""" - for key in self: - val = self._container[key.lower()] - yield val[0], ', '.join(val[1:]) - - def items(self): - return list(self.iteritems()) - - @classmethod - def from_httplib(cls, message): # Python 2 - """Read headers from a Python 2 httplib message object.""" - # python2.7 does not expose a proper API for exporting multiheaders - # efficiently. This function re-reads raw lines from the message - # object and extracts the multiheaders properly. - headers = [] - - for line in message.headers: - if line.startswith((' ', '\t')): - key, value = headers[-1] - headers[-1] = (key, value + '\r\n' + line.rstrip()) - continue - - key, value = line.split(':', 1) - headers.append((key, value.strip())) - - return cls(headers) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connection.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connection.py deleted file mode 100644 index 67090e3..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connection.py +++ /dev/null @@ -1,373 +0,0 @@ -from __future__ import absolute_import -import datetime -import logging -import os -import sys -import socket -from socket import error as SocketError, timeout as SocketTimeout -import warnings -from .packages import six -from .packages.six.moves.http_client import HTTPConnection as _HTTPConnection -from .packages.six.moves.http_client import HTTPException # noqa: F401 - -try: # Compiled with SSL? - import ssl - BaseSSLError = ssl.SSLError -except (ImportError, AttributeError): # Platform-specific: No SSL. - ssl = None - - class BaseSSLError(BaseException): - pass - - -try: # Python 3: - # Not a no-op, we're adding this to the namespace so it can be imported. - ConnectionError = ConnectionError -except NameError: # Python 2: - class ConnectionError(Exception): - pass - - -from .exceptions import ( - NewConnectionError, - ConnectTimeoutError, - SubjectAltNameWarning, - SystemTimeWarning, -) -from .packages.ssl_match_hostname import match_hostname, CertificateError - -from .util.ssl_ import ( - resolve_cert_reqs, - resolve_ssl_version, - assert_fingerprint, - create_urllib3_context, - ssl_wrap_socket -) - - -from .util import connection - -from ._collections import HTTPHeaderDict - -log = logging.getLogger(__name__) - -port_by_scheme = { - 'http': 80, - 'https': 443, -} - -# When updating RECENT_DATE, move it to -# within two years of the current date, and no -# earlier than 6 months ago. -RECENT_DATE = datetime.date(2016, 1, 1) - - -class DummyConnection(object): - """Used to detect a failed ConnectionCls import.""" - pass - - -class HTTPConnection(_HTTPConnection, object): - """ - Based on httplib.HTTPConnection but provides an extra constructor - backwards-compatibility layer between older and newer Pythons. - - Additional keyword parameters are used to configure attributes of the connection. - Accepted parameters include: - - - ``strict``: See the documentation on :class:`urllib3.connectionpool.HTTPConnectionPool` - - ``source_address``: Set the source address for the current connection. - - .. note:: This is ignored for Python 2.6. It is only applied for 2.7 and 3.x - - - ``socket_options``: Set specific options on the underlying socket. If not specified, then - defaults are loaded from ``HTTPConnection.default_socket_options`` which includes disabling - Nagle's algorithm (sets TCP_NODELAY to 1) unless the connection is behind a proxy. - - For example, if you wish to enable TCP Keep Alive in addition to the defaults, - you might pass:: - - HTTPConnection.default_socket_options + [ - (socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1), - ] - - Or you may want to disable the defaults by passing an empty list (e.g., ``[]``). - """ - - default_port = port_by_scheme['http'] - - #: Disable Nagle's algorithm by default. - #: ``[(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)]`` - default_socket_options = [(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)] - - #: Whether this connection verifies the host's certificate. - is_verified = False - - def __init__(self, *args, **kw): - if six.PY3: # Python 3 - kw.pop('strict', None) - - # Pre-set source_address in case we have an older Python like 2.6. - self.source_address = kw.get('source_address') - - if sys.version_info < (2, 7): # Python 2.6 - # _HTTPConnection on Python 2.6 will balk at this keyword arg, but - # not newer versions. We can still use it when creating a - # connection though, so we pop it *after* we have saved it as - # self.source_address. - kw.pop('source_address', None) - - #: The socket options provided by the user. If no options are - #: provided, we use the default options. - self.socket_options = kw.pop('socket_options', self.default_socket_options) - - # Superclass also sets self.source_address in Python 2.7+. - _HTTPConnection.__init__(self, *args, **kw) - - def _new_conn(self): - """ Establish a socket connection and set nodelay settings on it. - - :return: New socket connection. - """ - extra_kw = {} - if self.source_address: - extra_kw['source_address'] = self.source_address - - if self.socket_options: - extra_kw['socket_options'] = self.socket_options - - try: - conn = connection.create_connection( - (self.host, self.port), self.timeout, **extra_kw) - - except SocketTimeout as e: - raise ConnectTimeoutError( - self, "Connection to %s timed out. (connect timeout=%s)" % - (self.host, self.timeout)) - - except SocketError as e: - raise NewConnectionError( - self, "Failed to establish a new connection: %s" % e) - - return conn - - def _prepare_conn(self, conn): - self.sock = conn - # the _tunnel_host attribute was added in python 2.6.3 (via - # http://hg.python.org/cpython/rev/0f57b30a152f) so pythons 2.6(0-2) do - # not have them. - if getattr(self, '_tunnel_host', None): - # TODO: Fix tunnel so it doesn't depend on self.sock state. - self._tunnel() - # Mark this connection as not reusable - self.auto_open = 0 - - def connect(self): - conn = self._new_conn() - self._prepare_conn(conn) - - def request_chunked(self, method, url, body=None, headers=None): - """ - Alternative to the common request method, which sends the - body with chunked encoding and not as one block - """ - headers = HTTPHeaderDict(headers if headers is not None else {}) - skip_accept_encoding = 'accept-encoding' in headers - skip_host = 'host' in headers - self.putrequest( - method, - url, - skip_accept_encoding=skip_accept_encoding, - skip_host=skip_host - ) - for header, value in headers.items(): - self.putheader(header, value) - if 'transfer-encoding' not in headers: - self.putheader('Transfer-Encoding', 'chunked') - self.endheaders() - - if body is not None: - stringish_types = six.string_types + (six.binary_type,) - if isinstance(body, stringish_types): - body = (body,) - for chunk in body: - if not chunk: - continue - if not isinstance(chunk, six.binary_type): - chunk = chunk.encode('utf8') - len_str = hex(len(chunk))[2:] - self.send(len_str.encode('utf-8')) - self.send(b'\r\n') - self.send(chunk) - self.send(b'\r\n') - - # After the if clause, to always have a closed body - self.send(b'0\r\n\r\n') - - -class HTTPSConnection(HTTPConnection): - default_port = port_by_scheme['https'] - - ssl_version = None - - def __init__(self, host, port=None, key_file=None, cert_file=None, - strict=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT, - ssl_context=None, **kw): - - HTTPConnection.__init__(self, host, port, strict=strict, - timeout=timeout, **kw) - - self.key_file = key_file - self.cert_file = cert_file - self.ssl_context = ssl_context - - # Required property for Google AppEngine 1.9.0 which otherwise causes - # HTTPS requests to go out as HTTP. (See Issue #356) - self._protocol = 'https' - - def connect(self): - conn = self._new_conn() - self._prepare_conn(conn) - - if self.ssl_context is None: - self.ssl_context = create_urllib3_context( - ssl_version=resolve_ssl_version(None), - cert_reqs=resolve_cert_reqs(None), - ) - - self.sock = ssl_wrap_socket( - sock=conn, - keyfile=self.key_file, - certfile=self.cert_file, - ssl_context=self.ssl_context, - ) - - -class VerifiedHTTPSConnection(HTTPSConnection): - """ - Based on httplib.HTTPSConnection but wraps the socket with - SSL certification. - """ - cert_reqs = None - ca_certs = None - ca_cert_dir = None - ssl_version = None - assert_fingerprint = None - - def set_cert(self, key_file=None, cert_file=None, - cert_reqs=None, ca_certs=None, - assert_hostname=None, assert_fingerprint=None, - ca_cert_dir=None): - """ - This method should only be called once, before the connection is used. - """ - # If cert_reqs is not provided, we can try to guess. If the user gave - # us a cert database, we assume they want to use it: otherwise, if - # they gave us an SSL Context object we should use whatever is set for - # it. - if cert_reqs is None: - if ca_certs or ca_cert_dir: - cert_reqs = 'CERT_REQUIRED' - elif self.ssl_context is not None: - cert_reqs = self.ssl_context.verify_mode - - self.key_file = key_file - self.cert_file = cert_file - self.cert_reqs = cert_reqs - self.assert_hostname = assert_hostname - self.assert_fingerprint = assert_fingerprint - self.ca_certs = ca_certs and os.path.expanduser(ca_certs) - self.ca_cert_dir = ca_cert_dir and os.path.expanduser(ca_cert_dir) - - def connect(self): - # Add certificate verification - conn = self._new_conn() - - hostname = self.host - if getattr(self, '_tunnel_host', None): - # _tunnel_host was added in Python 2.6.3 - # (See: http://hg.python.org/cpython/rev/0f57b30a152f) - - self.sock = conn - # Calls self._set_hostport(), so self.host is - # self._tunnel_host below. - self._tunnel() - # Mark this connection as not reusable - self.auto_open = 0 - - # Override the host with the one we're requesting data from. - hostname = self._tunnel_host - - is_time_off = datetime.date.today() < RECENT_DATE - if is_time_off: - warnings.warn(( - 'System time is way off (before {0}). This will probably ' - 'lead to SSL verification errors').format(RECENT_DATE), - SystemTimeWarning - ) - - # Wrap socket using verification with the root certs in - # trusted_root_certs - if self.ssl_context is None: - self.ssl_context = create_urllib3_context( - ssl_version=resolve_ssl_version(self.ssl_version), - cert_reqs=resolve_cert_reqs(self.cert_reqs), - ) - - context = self.ssl_context - context.verify_mode = resolve_cert_reqs(self.cert_reqs) - self.sock = ssl_wrap_socket( - sock=conn, - keyfile=self.key_file, - certfile=self.cert_file, - ca_certs=self.ca_certs, - ca_cert_dir=self.ca_cert_dir, - server_hostname=hostname, - ssl_context=context) - - if self.assert_fingerprint: - assert_fingerprint(self.sock.getpeercert(binary_form=True), - self.assert_fingerprint) - elif context.verify_mode != ssl.CERT_NONE \ - and not getattr(context, 'check_hostname', False) \ - and self.assert_hostname is not False: - # While urllib3 attempts to always turn off hostname matching from - # the TLS library, this cannot always be done. So we check whether - # the TLS Library still thinks it's matching hostnames. - cert = self.sock.getpeercert() - if not cert.get('subjectAltName', ()): - warnings.warn(( - 'Certificate for {0} has no `subjectAltName`, falling back to check for a ' - '`commonName` for now. This feature is being removed by major browsers and ' - 'deprecated by RFC 2818. (See https://github.com/shazow/urllib3/issues/497 ' - 'for details.)'.format(hostname)), - SubjectAltNameWarning - ) - _match_hostname(cert, self.assert_hostname or hostname) - - self.is_verified = ( - context.verify_mode == ssl.CERT_REQUIRED or - self.assert_fingerprint is not None - ) - - -def _match_hostname(cert, asserted_hostname): - try: - match_hostname(cert, asserted_hostname) - except CertificateError as e: - log.error( - 'Certificate did not match expected hostname: %s. ' - 'Certificate: %s', asserted_hostname, cert - ) - # Add cert to exception and reraise so client code can inspect - # the cert when catching the exception, if they want to - e._peer_cert = cert - raise - - -if ssl: - # Make a copy for testing. - UnverifiedHTTPSConnection = HTTPSConnection - HTTPSConnection = VerifiedHTTPSConnection -else: - HTTPSConnection = DummyConnection diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connectionpool.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connectionpool.py deleted file mode 100644 index b099ca8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/connectionpool.py +++ /dev/null @@ -1,905 +0,0 @@ -from __future__ import absolute_import -import errno -import logging -import sys -import warnings - -from socket import error as SocketError, timeout as SocketTimeout -import socket - - -from .exceptions import ( - ClosedPoolError, - ProtocolError, - EmptyPoolError, - HeaderParsingError, - HostChangedError, - LocationValueError, - MaxRetryError, - ProxyError, - ReadTimeoutError, - SSLError, - TimeoutError, - InsecureRequestWarning, - NewConnectionError, -) -from .packages.ssl_match_hostname import CertificateError -from .packages import six -from .packages.six.moves import queue -from .connection import ( - port_by_scheme, - DummyConnection, - HTTPConnection, HTTPSConnection, VerifiedHTTPSConnection, - HTTPException, BaseSSLError, -) -from .request import RequestMethods -from .response import HTTPResponse - -from .util.connection import is_connection_dropped -from .util.request import set_file_position -from .util.response import assert_header_parsing -from .util.retry import Retry -from .util.timeout import Timeout -from .util.url import get_host, Url - - -if six.PY2: - # Queue is imported for side effects on MS Windows - import Queue as _unused_module_Queue # noqa: F401 - -xrange = six.moves.xrange - -log = logging.getLogger(__name__) - -_Default = object() - - -# Pool objects -class ConnectionPool(object): - """ - Base class for all connection pools, such as - :class:`.HTTPConnectionPool` and :class:`.HTTPSConnectionPool`. - """ - - scheme = None - QueueCls = queue.LifoQueue - - def __init__(self, host, port=None): - if not host: - raise LocationValueError("No host specified.") - - self.host = _ipv6_host(host).lower() - self._proxy_host = host.lower() - self.port = port - - def __str__(self): - return '%s(host=%r, port=%r)' % (type(self).__name__, - self.host, self.port) - - def __enter__(self): - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - self.close() - # Return False to re-raise any potential exceptions - return False - - def close(self): - """ - Close all pooled connections and disable the pool. - """ - pass - - -# This is taken from http://hg.python.org/cpython/file/7aaba721ebc0/Lib/socket.py#l252 -_blocking_errnos = set([errno.EAGAIN, errno.EWOULDBLOCK]) - - -class HTTPConnectionPool(ConnectionPool, RequestMethods): - """ - Thread-safe connection pool for one host. - - :param host: - Host used for this HTTP Connection (e.g. "localhost"), passed into - :class:`httplib.HTTPConnection`. - - :param port: - Port used for this HTTP Connection (None is equivalent to 80), passed - into :class:`httplib.HTTPConnection`. - - :param strict: - Causes BadStatusLine to be raised if the status line can't be parsed - as a valid HTTP/1.0 or 1.1 status line, passed into - :class:`httplib.HTTPConnection`. - - .. note:: - Only works in Python 2. This parameter is ignored in Python 3. - - :param timeout: - Socket timeout in seconds for each individual connection. This can - be a float or integer, which sets the timeout for the HTTP request, - or an instance of :class:`urllib3.util.Timeout` which gives you more - fine-grained control over request timeouts. After the constructor has - been parsed, this is always a `urllib3.util.Timeout` object. - - :param maxsize: - Number of connections to save that can be reused. More than 1 is useful - in multithreaded situations. If ``block`` is set to False, more - connections will be created but they will not be saved once they've - been used. - - :param block: - If set to True, no more than ``maxsize`` connections will be used at - a time. When no free connections are available, the call will block - until a connection has been released. This is a useful side effect for - particular multithreaded situations where one does not want to use more - than maxsize connections per host to prevent flooding. - - :param headers: - Headers to include with all requests, unless other headers are given - explicitly. - - :param retries: - Retry configuration to use by default with requests in this pool. - - :param _proxy: - Parsed proxy URL, should not be used directly, instead, see - :class:`urllib3.connectionpool.ProxyManager`" - - :param _proxy_headers: - A dictionary with proxy headers, should not be used directly, - instead, see :class:`urllib3.connectionpool.ProxyManager`" - - :param \\**conn_kw: - Additional parameters are used to create fresh :class:`urllib3.connection.HTTPConnection`, - :class:`urllib3.connection.HTTPSConnection` instances. - """ - - scheme = 'http' - ConnectionCls = HTTPConnection - ResponseCls = HTTPResponse - - def __init__(self, host, port=None, strict=False, - timeout=Timeout.DEFAULT_TIMEOUT, maxsize=1, block=False, - headers=None, retries=None, - _proxy=None, _proxy_headers=None, - **conn_kw): - ConnectionPool.__init__(self, host, port) - RequestMethods.__init__(self, headers) - - self.strict = strict - - if not isinstance(timeout, Timeout): - timeout = Timeout.from_float(timeout) - - if retries is None: - retries = Retry.DEFAULT - - self.timeout = timeout - self.retries = retries - - self.pool = self.QueueCls(maxsize) - self.block = block - - self.proxy = _proxy - self.proxy_headers = _proxy_headers or {} - - # Fill the queue up so that doing get() on it will block properly - for _ in xrange(maxsize): - self.pool.put(None) - - # These are mostly for testing and debugging purposes. - self.num_connections = 0 - self.num_requests = 0 - self.conn_kw = conn_kw - - if self.proxy: - # Enable Nagle's algorithm for proxies, to avoid packet fragmentation. - # We cannot know if the user has added default socket options, so we cannot replace the - # list. - self.conn_kw.setdefault('socket_options', []) - - def _new_conn(self): - """ - Return a fresh :class:`HTTPConnection`. - """ - self.num_connections += 1 - log.debug("Starting new HTTP connection (%d): %s", - self.num_connections, self.host) - - conn = self.ConnectionCls(host=self.host, port=self.port, - timeout=self.timeout.connect_timeout, - strict=self.strict, **self.conn_kw) - return conn - - def _get_conn(self, timeout=None): - """ - Get a connection. Will return a pooled connection if one is available. - - If no connections are available and :prop:`.block` is ``False``, then a - fresh connection is returned. - - :param timeout: - Seconds to wait before giving up and raising - :class:`urllib3.exceptions.EmptyPoolError` if the pool is empty and - :prop:`.block` is ``True``. - """ - conn = None - try: - conn = self.pool.get(block=self.block, timeout=timeout) - - except AttributeError: # self.pool is None - raise ClosedPoolError(self, "Pool is closed.") - - except queue.Empty: - if self.block: - raise EmptyPoolError(self, - "Pool reached maximum size and no more " - "connections are allowed.") - pass # Oh well, we'll create a new connection then - - # If this is a persistent connection, check if it got disconnected - if conn and is_connection_dropped(conn): - log.debug("Resetting dropped connection: %s", self.host) - conn.close() - if getattr(conn, 'auto_open', 1) == 0: - # This is a proxied connection that has been mutated by - # httplib._tunnel() and cannot be reused (since it would - # attempt to bypass the proxy) - conn = None - - return conn or self._new_conn() - - def _put_conn(self, conn): - """ - Put a connection back into the pool. - - :param conn: - Connection object for the current host and port as returned by - :meth:`._new_conn` or :meth:`._get_conn`. - - If the pool is already full, the connection is closed and discarded - because we exceeded maxsize. If connections are discarded frequently, - then maxsize should be increased. - - If the pool is closed, then the connection will be closed and discarded. - """ - try: - self.pool.put(conn, block=False) - return # Everything is dandy, done. - except AttributeError: - # self.pool is None. - pass - except queue.Full: - # This should never happen if self.block == True - log.warning( - "Connection pool is full, discarding connection: %s", - self.host) - - # Connection never got put back into the pool, close it. - if conn: - conn.close() - - def _validate_conn(self, conn): - """ - Called right before a request is made, after the socket is created. - """ - pass - - def _prepare_proxy(self, conn): - # Nothing to do for HTTP connections. - pass - - def _get_timeout(self, timeout): - """ Helper that always returns a :class:`urllib3.util.Timeout` """ - if timeout is _Default: - return self.timeout.clone() - - if isinstance(timeout, Timeout): - return timeout.clone() - else: - # User passed us an int/float. This is for backwards compatibility, - # can be removed later - return Timeout.from_float(timeout) - - def _raise_timeout(self, err, url, timeout_value): - """Is the error actually a timeout? Will raise a ReadTimeout or pass""" - - if isinstance(err, SocketTimeout): - raise ReadTimeoutError(self, url, "Read timed out. (read timeout=%s)" % timeout_value) - - # See the above comment about EAGAIN in Python 3. In Python 2 we have - # to specifically catch it and throw the timeout error - if hasattr(err, 'errno') and err.errno in _blocking_errnos: - raise ReadTimeoutError(self, url, "Read timed out. (read timeout=%s)" % timeout_value) - - # Catch possible read timeouts thrown as SSL errors. If not the - # case, rethrow the original. We need to do this because of: - # http://bugs.python.org/issue10272 - if 'timed out' in str(err) or 'did not complete (read)' in str(err): # Python 2.6 - raise ReadTimeoutError(self, url, "Read timed out. (read timeout=%s)" % timeout_value) - - def _make_request(self, conn, method, url, timeout=_Default, chunked=False, - **httplib_request_kw): - """ - Perform a request on a given urllib connection object taken from our - pool. - - :param conn: - a connection from one of our connection pools - - :param timeout: - Socket timeout in seconds for the request. This can be a - float or integer, which will set the same timeout value for - the socket connect and the socket read, or an instance of - :class:`urllib3.util.Timeout`, which gives you more fine-grained - control over your timeouts. - """ - self.num_requests += 1 - - timeout_obj = self._get_timeout(timeout) - timeout_obj.start_connect() - conn.timeout = timeout_obj.connect_timeout - - # Trigger any extra validation we need to do. - try: - self._validate_conn(conn) - except (SocketTimeout, BaseSSLError) as e: - # Py2 raises this as a BaseSSLError, Py3 raises it as socket timeout. - self._raise_timeout(err=e, url=url, timeout_value=conn.timeout) - raise - - # conn.request() calls httplib.*.request, not the method in - # urllib3.request. It also calls makefile (recv) on the socket. - if chunked: - conn.request_chunked(method, url, **httplib_request_kw) - else: - conn.request(method, url, **httplib_request_kw) - - # Reset the timeout for the recv() on the socket - read_timeout = timeout_obj.read_timeout - - # App Engine doesn't have a sock attr - if getattr(conn, 'sock', None): - # In Python 3 socket.py will catch EAGAIN and return None when you - # try and read into the file pointer created by http.client, which - # instead raises a BadStatusLine exception. Instead of catching - # the exception and assuming all BadStatusLine exceptions are read - # timeouts, check for a zero timeout before making the request. - if read_timeout == 0: - raise ReadTimeoutError( - self, url, "Read timed out. (read timeout=%s)" % read_timeout) - if read_timeout is Timeout.DEFAULT_TIMEOUT: - conn.sock.settimeout(socket.getdefaulttimeout()) - else: # None or a value - conn.sock.settimeout(read_timeout) - - # Receive the response from the server - try: - try: # Python 2.7, use buffering of HTTP responses - httplib_response = conn.getresponse(buffering=True) - except TypeError: # Python 2.6 and older, Python 3 - try: - httplib_response = conn.getresponse() - except Exception as e: - # Remove the TypeError from the exception chain in Python 3; - # otherwise it looks like a programming error was the cause. - six.raise_from(e, None) - except (SocketTimeout, BaseSSLError, SocketError) as e: - self._raise_timeout(err=e, url=url, timeout_value=read_timeout) - raise - - # AppEngine doesn't have a version attr. - http_version = getattr(conn, '_http_vsn_str', 'HTTP/?') - log.debug("%s://%s:%s \"%s %s %s\" %s %s", self.scheme, self.host, self.port, - method, url, http_version, httplib_response.status, - httplib_response.length) - - try: - assert_header_parsing(httplib_response.msg) - except (HeaderParsingError, TypeError) as hpe: # Platform-specific: Python 3 - log.warning( - 'Failed to parse headers (url=%s): %s', - self._absolute_url(url), hpe, exc_info=True) - - return httplib_response - - def _absolute_url(self, path): - return Url(scheme=self.scheme, host=self.host, port=self.port, path=path).url - - def close(self): - """ - Close all pooled connections and disable the pool. - """ - # Disable access to the pool - old_pool, self.pool = self.pool, None - - try: - while True: - conn = old_pool.get(block=False) - if conn: - conn.close() - - except queue.Empty: - pass # Done. - - def is_same_host(self, url): - """ - Check if the given ``url`` is a member of the same host as this - connection pool. - """ - if url.startswith('/'): - return True - - # TODO: Add optional support for socket.gethostbyname checking. - scheme, host, port = get_host(url) - - host = _ipv6_host(host).lower() - - # Use explicit default port for comparison when none is given - if self.port and not port: - port = port_by_scheme.get(scheme) - elif not self.port and port == port_by_scheme.get(scheme): - port = None - - return (scheme, host, port) == (self.scheme, self.host, self.port) - - def urlopen(self, method, url, body=None, headers=None, retries=None, - redirect=True, assert_same_host=True, timeout=_Default, - pool_timeout=None, release_conn=None, chunked=False, - body_pos=None, **response_kw): - """ - Get a connection from the pool and perform an HTTP request. This is the - lowest level call for making a request, so you'll need to specify all - the raw details. - - .. note:: - - More commonly, it's appropriate to use a convenience method provided - by :class:`.RequestMethods`, such as :meth:`request`. - - .. note:: - - `release_conn` will only behave as expected if - `preload_content=False` because we want to make - `preload_content=False` the default behaviour someday soon without - breaking backwards compatibility. - - :param method: - HTTP request method (such as GET, POST, PUT, etc.) - - :param body: - Data to send in the request body (useful for creating - POST requests, see HTTPConnectionPool.post_url for - more convenience). - - :param headers: - Dictionary of custom headers to send, such as User-Agent, - If-None-Match, etc. If None, pool headers are used. If provided, - these headers completely replace any pool-specific headers. - - :param retries: - Configure the number of retries to allow before raising a - :class:`~urllib3.exceptions.MaxRetryError` exception. - - Pass ``None`` to retry until you receive a response. Pass a - :class:`~urllib3.util.retry.Retry` object for fine-grained control - over different types of retries. - Pass an integer number to retry connection errors that many times, - but no other types of errors. Pass zero to never retry. - - If ``False``, then retries are disabled and any exception is raised - immediately. Also, instead of raising a MaxRetryError on redirects, - the redirect response will be returned. - - :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. - - :param redirect: - If True, automatically handle redirects (status codes 301, 302, - 303, 307, 308). Each redirect counts as a retry. Disabling retries - will disable redirect, too. - - :param assert_same_host: - If ``True``, will make sure that the host of the pool requests is - consistent else will raise HostChangedError. When False, you can - use the pool on an HTTP proxy and request foreign hosts. - - :param timeout: - If specified, overrides the default timeout for this one - request. It may be a float (in seconds) or an instance of - :class:`urllib3.util.Timeout`. - - :param pool_timeout: - If set and the pool is set to block=True, then this method will - block for ``pool_timeout`` seconds and raise EmptyPoolError if no - connection is available within the time period. - - :param release_conn: - If False, then the urlopen call will not release the connection - back into the pool once a response is received (but will release if - you read the entire contents of the response such as when - `preload_content=True`). This is useful if you're not preloading - the response's content immediately. You will need to call - ``r.release_conn()`` on the response ``r`` to return the connection - back into the pool. If None, it takes the value of - ``response_kw.get('preload_content', True)``. - - :param chunked: - If True, urllib3 will send the body using chunked transfer - encoding. Otherwise, urllib3 will send the body using the standard - content-length form. Defaults to False. - - :param int body_pos: - Position to seek to in file-like body in the event of a retry or - redirect. Typically this won't need to be set because urllib3 will - auto-populate the value when needed. - - :param \\**response_kw: - Additional parameters are passed to - :meth:`urllib3.response.HTTPResponse.from_httplib` - """ - if headers is None: - headers = self.headers - - if not isinstance(retries, Retry): - retries = Retry.from_int(retries, redirect=redirect, default=self.retries) - - if release_conn is None: - release_conn = response_kw.get('preload_content', True) - - # Check host - if assert_same_host and not self.is_same_host(url): - raise HostChangedError(self, url, retries) - - conn = None - - # Track whether `conn` needs to be released before - # returning/raising/recursing. Update this variable if necessary, and - # leave `release_conn` constant throughout the function. That way, if - # the function recurses, the original value of `release_conn` will be - # passed down into the recursive call, and its value will be respected. - # - # See issue #651 [1] for details. - # - # [1] <https://github.com/shazow/urllib3/issues/651> - release_this_conn = release_conn - - # Merge the proxy headers. Only do this in HTTP. We have to copy the - # headers dict so we can safely change it without those changes being - # reflected in anyone else's copy. - if self.scheme == 'http': - headers = headers.copy() - headers.update(self.proxy_headers) - - # Must keep the exception bound to a separate variable or else Python 3 - # complains about UnboundLocalError. - err = None - - # Keep track of whether we cleanly exited the except block. This - # ensures we do proper cleanup in finally. - clean_exit = False - - # Rewind body position, if needed. Record current position - # for future rewinds in the event of a redirect/retry. - body_pos = set_file_position(body, body_pos) - - try: - # Request a connection from the queue. - timeout_obj = self._get_timeout(timeout) - conn = self._get_conn(timeout=pool_timeout) - - conn.timeout = timeout_obj.connect_timeout - - is_new_proxy_conn = self.proxy is not None and not getattr(conn, 'sock', None) - if is_new_proxy_conn: - self._prepare_proxy(conn) - - # Make the request on the httplib connection object. - httplib_response = self._make_request(conn, method, url, - timeout=timeout_obj, - body=body, headers=headers, - chunked=chunked) - - # If we're going to release the connection in ``finally:``, then - # the response doesn't need to know about the connection. Otherwise - # it will also try to release it and we'll have a double-release - # mess. - response_conn = conn if not release_conn else None - - # Pass method to Response for length checking - response_kw['request_method'] = method - - # Import httplib's response into our own wrapper object - response = self.ResponseCls.from_httplib(httplib_response, - pool=self, - connection=response_conn, - retries=retries, - **response_kw) - - # Everything went great! - clean_exit = True - - except queue.Empty: - # Timed out by queue. - raise EmptyPoolError(self, "No pool connections are available.") - - except (TimeoutError, HTTPException, SocketError, ProtocolError, - BaseSSLError, SSLError, CertificateError) as e: - # Discard the connection for these exceptions. It will be - # replaced during the next _get_conn() call. - clean_exit = False - if isinstance(e, (BaseSSLError, CertificateError)): - e = SSLError(e) - elif isinstance(e, (SocketError, NewConnectionError)) and self.proxy: - e = ProxyError('Cannot connect to proxy.', e) - elif isinstance(e, (SocketError, HTTPException)): - e = ProtocolError('Connection aborted.', e) - - retries = retries.increment(method, url, error=e, _pool=self, - _stacktrace=sys.exc_info()[2]) - retries.sleep() - - # Keep track of the error for the retry warning. - err = e - - finally: - if not clean_exit: - # We hit some kind of exception, handled or otherwise. We need - # to throw the connection away unless explicitly told not to. - # Close the connection, set the variable to None, and make sure - # we put the None back in the pool to avoid leaking it. - conn = conn and conn.close() - release_this_conn = True - - if release_this_conn: - # Put the connection back to be reused. If the connection is - # expired then it will be None, which will get replaced with a - # fresh connection during _get_conn. - self._put_conn(conn) - - if not conn: - # Try again - log.warning("Retrying (%r) after connection " - "broken by '%r': %s", retries, err, url) - return self.urlopen(method, url, body, headers, retries, - redirect, assert_same_host, - timeout=timeout, pool_timeout=pool_timeout, - release_conn=release_conn, body_pos=body_pos, - **response_kw) - - def drain_and_release_conn(response): - try: - # discard any remaining response body, the connection will be - # released back to the pool once the entire response is read - response.read() - except (TimeoutError, HTTPException, SocketError, ProtocolError, - BaseSSLError, SSLError) as e: - pass - - # Handle redirect? - redirect_location = redirect and response.get_redirect_location() - if redirect_location: - if response.status == 303: - method = 'GET' - - try: - retries = retries.increment(method, url, response=response, _pool=self) - except MaxRetryError: - if retries.raise_on_redirect: - # Drain and release the connection for this response, since - # we're not returning it to be released manually. - drain_and_release_conn(response) - raise - return response - - # drain and return the connection to the pool before recursing - drain_and_release_conn(response) - - retries.sleep_for_retry(response) - log.debug("Redirecting %s -> %s", url, redirect_location) - return self.urlopen( - method, redirect_location, body, headers, - retries=retries, redirect=redirect, - assert_same_host=assert_same_host, - timeout=timeout, pool_timeout=pool_timeout, - release_conn=release_conn, body_pos=body_pos, - **response_kw) - - # Check if we should retry the HTTP response. - has_retry_after = bool(response.getheader('Retry-After')) - if retries.is_retry(method, response.status, has_retry_after): - try: - retries = retries.increment(method, url, response=response, _pool=self) - except MaxRetryError: - if retries.raise_on_status: - # Drain and release the connection for this response, since - # we're not returning it to be released manually. - drain_and_release_conn(response) - raise - return response - - # drain and return the connection to the pool before recursing - drain_and_release_conn(response) - - retries.sleep(response) - log.debug("Retry: %s", url) - return self.urlopen( - method, url, body, headers, - retries=retries, redirect=redirect, - assert_same_host=assert_same_host, - timeout=timeout, pool_timeout=pool_timeout, - release_conn=release_conn, - body_pos=body_pos, **response_kw) - - return response - - -class HTTPSConnectionPool(HTTPConnectionPool): - """ - Same as :class:`.HTTPConnectionPool`, but HTTPS. - - When Python is compiled with the :mod:`ssl` module, then - :class:`.VerifiedHTTPSConnection` is used, which *can* verify certificates, - instead of :class:`.HTTPSConnection`. - - :class:`.VerifiedHTTPSConnection` uses one of ``assert_fingerprint``, - ``assert_hostname`` and ``host`` in this order to verify connections. - If ``assert_hostname`` is False, no verification is done. - - The ``key_file``, ``cert_file``, ``cert_reqs``, ``ca_certs``, - ``ca_cert_dir``, and ``ssl_version`` are only used if :mod:`ssl` is - available and are fed into :meth:`urllib3.util.ssl_wrap_socket` to upgrade - the connection socket into an SSL socket. - """ - - scheme = 'https' - ConnectionCls = HTTPSConnection - - def __init__(self, host, port=None, - strict=False, timeout=Timeout.DEFAULT_TIMEOUT, maxsize=1, - block=False, headers=None, retries=None, - _proxy=None, _proxy_headers=None, - key_file=None, cert_file=None, cert_reqs=None, - ca_certs=None, ssl_version=None, - assert_hostname=None, assert_fingerprint=None, - ca_cert_dir=None, **conn_kw): - - HTTPConnectionPool.__init__(self, host, port, strict, timeout, maxsize, - block, headers, retries, _proxy, _proxy_headers, - **conn_kw) - - if ca_certs and cert_reqs is None: - cert_reqs = 'CERT_REQUIRED' - - self.key_file = key_file - self.cert_file = cert_file - self.cert_reqs = cert_reqs - self.ca_certs = ca_certs - self.ca_cert_dir = ca_cert_dir - self.ssl_version = ssl_version - self.assert_hostname = assert_hostname - self.assert_fingerprint = assert_fingerprint - - def _prepare_conn(self, conn): - """ - Prepare the ``connection`` for :meth:`urllib3.util.ssl_wrap_socket` - and establish the tunnel if proxy is used. - """ - - if isinstance(conn, VerifiedHTTPSConnection): - conn.set_cert(key_file=self.key_file, - cert_file=self.cert_file, - cert_reqs=self.cert_reqs, - ca_certs=self.ca_certs, - ca_cert_dir=self.ca_cert_dir, - assert_hostname=self.assert_hostname, - assert_fingerprint=self.assert_fingerprint) - conn.ssl_version = self.ssl_version - return conn - - def _prepare_proxy(self, conn): - """ - Establish tunnel connection early, because otherwise httplib - would improperly set Host: header to proxy's IP:port. - """ - # Python 2.7+ - try: - set_tunnel = conn.set_tunnel - except AttributeError: # Platform-specific: Python 2.6 - set_tunnel = conn._set_tunnel - - if sys.version_info <= (2, 6, 4) and not self.proxy_headers: # Python 2.6.4 and older - set_tunnel(self._proxy_host, self.port) - else: - set_tunnel(self._proxy_host, self.port, self.proxy_headers) - - conn.connect() - - def _new_conn(self): - """ - Return a fresh :class:`httplib.HTTPSConnection`. - """ - self.num_connections += 1 - log.debug("Starting new HTTPS connection (%d): %s", - self.num_connections, self.host) - - if not self.ConnectionCls or self.ConnectionCls is DummyConnection: - raise SSLError("Can't connect to HTTPS URL because the SSL " - "module is not available.") - - actual_host = self.host - actual_port = self.port - if self.proxy is not None: - actual_host = self.proxy.host - actual_port = self.proxy.port - - conn = self.ConnectionCls(host=actual_host, port=actual_port, - timeout=self.timeout.connect_timeout, - strict=self.strict, **self.conn_kw) - - return self._prepare_conn(conn) - - def _validate_conn(self, conn): - """ - Called right before a request is made, after the socket is created. - """ - super(HTTPSConnectionPool, self)._validate_conn(conn) - - # Force connect early to allow us to validate the connection. - if not getattr(conn, 'sock', None): # AppEngine might not have `.sock` - conn.connect() - - if not conn.is_verified: - warnings.warn(( - 'Unverified HTTPS request is being made. ' - 'Adding certificate verification is strongly advised. See: ' - 'https://urllib3.readthedocs.io/en/latest/advanced-usage.html' - '#ssl-warnings'), - InsecureRequestWarning) - - -def connection_from_url(url, **kw): - """ - Given a url, return an :class:`.ConnectionPool` instance of its host. - - This is a shortcut for not having to parse out the scheme, host, and port - of the url before creating an :class:`.ConnectionPool` instance. - - :param url: - Absolute URL string that must include the scheme. Port is optional. - - :param \\**kw: - Passes additional parameters to the constructor of the appropriate - :class:`.ConnectionPool`. Useful for specifying things like - timeout, maxsize, headers, etc. - - Example:: - - >>> conn = connection_from_url('http://google.com/') - >>> r = conn.request('GET', '/') - """ - scheme, host, port = get_host(url) - port = port or port_by_scheme.get(scheme, 80) - if scheme == 'https': - return HTTPSConnectionPool(host, port=port, **kw) - else: - return HTTPConnectionPool(host, port=port, **kw) - - -def _ipv6_host(host): - """ - Process IPv6 address literals - """ - - # httplib doesn't like it when we include brackets in IPv6 addresses - # Specifically, if we include brackets but also pass the port then - # httplib crazily doubles up the square brackets on the Host header. - # Instead, we need to make sure we never pass ``None`` as the port. - # However, for backward compatibility reasons we can't actually - # *assert* that. See http://bugs.python.org/issue28539 - # - # Also if an IPv6 address literal has a zone identifier, the - # percent sign might be URIencoded, convert it back into ASCII - if host.startswith('[') and host.endswith(']'): - host = host.replace('%25', '%').strip('[]') - return host diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/bindings.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/bindings.py deleted file mode 100644 index 9787b02..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +++ /dev/null @@ -1,593 +0,0 @@ -""" -This module uses ctypes to bind a whole bunch of functions and constants from -SecureTransport. The goal here is to provide the low-level API to -SecureTransport. These are essentially the C-level functions and constants, and -they're pretty gross to work with. - -This code is a bastardised version of the code found in Will Bond's oscrypto -library. An enormous debt is owed to him for blazing this trail for us. For -that reason, this code should be considered to be covered both by urllib3's -license and by oscrypto's: - - Copyright (c) 2015-2016 Will Bond <will@wbond.net> - - 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 absolute_import - -import platform -from ctypes.util import find_library -from ctypes import ( - c_void_p, c_int32, c_char_p, c_size_t, c_byte, c_uint32, c_ulong, c_long, - c_bool -) -from ctypes import CDLL, POINTER, CFUNCTYPE - - -security_path = find_library('Security') -if not security_path: - raise ImportError('The library Security could not be found') - - -core_foundation_path = find_library('CoreFoundation') -if not core_foundation_path: - raise ImportError('The library CoreFoundation could not be found') - - -version = platform.mac_ver()[0] -version_info = tuple(map(int, version.split('.'))) -if version_info < (10, 8): - raise OSError( - 'Only OS X 10.8 and newer are supported, not %s.%s' % ( - version_info[0], version_info[1] - ) - ) - -Security = CDLL(security_path, use_errno=True) -CoreFoundation = CDLL(core_foundation_path, use_errno=True) - -Boolean = c_bool -CFIndex = c_long -CFStringEncoding = c_uint32 -CFData = c_void_p -CFString = c_void_p -CFArray = c_void_p -CFMutableArray = c_void_p -CFDictionary = c_void_p -CFError = c_void_p -CFType = c_void_p -CFTypeID = c_ulong - -CFTypeRef = POINTER(CFType) -CFAllocatorRef = c_void_p - -OSStatus = c_int32 - -CFDataRef = POINTER(CFData) -CFStringRef = POINTER(CFString) -CFArrayRef = POINTER(CFArray) -CFMutableArrayRef = POINTER(CFMutableArray) -CFDictionaryRef = POINTER(CFDictionary) -CFArrayCallBacks = c_void_p -CFDictionaryKeyCallBacks = c_void_p -CFDictionaryValueCallBacks = c_void_p - -SecCertificateRef = POINTER(c_void_p) -SecExternalFormat = c_uint32 -SecExternalItemType = c_uint32 -SecIdentityRef = POINTER(c_void_p) -SecItemImportExportFlags = c_uint32 -SecItemImportExportKeyParameters = c_void_p -SecKeychainRef = POINTER(c_void_p) -SSLProtocol = c_uint32 -SSLCipherSuite = c_uint32 -SSLContextRef = POINTER(c_void_p) -SecTrustRef = POINTER(c_void_p) -SSLConnectionRef = c_uint32 -SecTrustResultType = c_uint32 -SecTrustOptionFlags = c_uint32 -SSLProtocolSide = c_uint32 -SSLConnectionType = c_uint32 -SSLSessionOption = c_uint32 - - -try: - Security.SecItemImport.argtypes = [ - CFDataRef, - CFStringRef, - POINTER(SecExternalFormat), - POINTER(SecExternalItemType), - SecItemImportExportFlags, - POINTER(SecItemImportExportKeyParameters), - SecKeychainRef, - POINTER(CFArrayRef), - ] - Security.SecItemImport.restype = OSStatus - - Security.SecCertificateGetTypeID.argtypes = [] - Security.SecCertificateGetTypeID.restype = CFTypeID - - Security.SecIdentityGetTypeID.argtypes = [] - Security.SecIdentityGetTypeID.restype = CFTypeID - - Security.SecKeyGetTypeID.argtypes = [] - Security.SecKeyGetTypeID.restype = CFTypeID - - Security.SecCertificateCreateWithData.argtypes = [ - CFAllocatorRef, - CFDataRef - ] - Security.SecCertificateCreateWithData.restype = SecCertificateRef - - Security.SecCertificateCopyData.argtypes = [ - SecCertificateRef - ] - Security.SecCertificateCopyData.restype = CFDataRef - - Security.SecCopyErrorMessageString.argtypes = [ - OSStatus, - c_void_p - ] - Security.SecCopyErrorMessageString.restype = CFStringRef - - Security.SecIdentityCreateWithCertificate.argtypes = [ - CFTypeRef, - SecCertificateRef, - POINTER(SecIdentityRef) - ] - Security.SecIdentityCreateWithCertificate.restype = OSStatus - - Security.SecKeychainCreate.argtypes = [ - c_char_p, - c_uint32, - c_void_p, - Boolean, - c_void_p, - POINTER(SecKeychainRef) - ] - Security.SecKeychainCreate.restype = OSStatus - - Security.SecKeychainDelete.argtypes = [ - SecKeychainRef - ] - Security.SecKeychainDelete.restype = OSStatus - - Security.SecPKCS12Import.argtypes = [ - CFDataRef, - CFDictionaryRef, - POINTER(CFArrayRef) - ] - Security.SecPKCS12Import.restype = OSStatus - - SSLReadFunc = CFUNCTYPE(OSStatus, SSLConnectionRef, c_void_p, POINTER(c_size_t)) - SSLWriteFunc = CFUNCTYPE(OSStatus, SSLConnectionRef, POINTER(c_byte), POINTER(c_size_t)) - - Security.SSLSetIOFuncs.argtypes = [ - SSLContextRef, - SSLReadFunc, - SSLWriteFunc - ] - Security.SSLSetIOFuncs.restype = OSStatus - - Security.SSLSetPeerID.argtypes = [ - SSLContextRef, - c_char_p, - c_size_t - ] - Security.SSLSetPeerID.restype = OSStatus - - Security.SSLSetCertificate.argtypes = [ - SSLContextRef, - CFArrayRef - ] - Security.SSLSetCertificate.restype = OSStatus - - Security.SSLSetCertificateAuthorities.argtypes = [ - SSLContextRef, - CFTypeRef, - Boolean - ] - Security.SSLSetCertificateAuthorities.restype = OSStatus - - Security.SSLSetConnection.argtypes = [ - SSLContextRef, - SSLConnectionRef - ] - Security.SSLSetConnection.restype = OSStatus - - Security.SSLSetPeerDomainName.argtypes = [ - SSLContextRef, - c_char_p, - c_size_t - ] - Security.SSLSetPeerDomainName.restype = OSStatus - - Security.SSLHandshake.argtypes = [ - SSLContextRef - ] - Security.SSLHandshake.restype = OSStatus - - Security.SSLRead.argtypes = [ - SSLContextRef, - c_char_p, - c_size_t, - POINTER(c_size_t) - ] - Security.SSLRead.restype = OSStatus - - Security.SSLWrite.argtypes = [ - SSLContextRef, - c_char_p, - c_size_t, - POINTER(c_size_t) - ] - Security.SSLWrite.restype = OSStatus - - Security.SSLClose.argtypes = [ - SSLContextRef - ] - Security.SSLClose.restype = OSStatus - - Security.SSLGetNumberSupportedCiphers.argtypes = [ - SSLContextRef, - POINTER(c_size_t) - ] - Security.SSLGetNumberSupportedCiphers.restype = OSStatus - - Security.SSLGetSupportedCiphers.argtypes = [ - SSLContextRef, - POINTER(SSLCipherSuite), - POINTER(c_size_t) - ] - Security.SSLGetSupportedCiphers.restype = OSStatus - - Security.SSLSetEnabledCiphers.argtypes = [ - SSLContextRef, - POINTER(SSLCipherSuite), - c_size_t - ] - Security.SSLSetEnabledCiphers.restype = OSStatus - - Security.SSLGetNumberEnabledCiphers.argtype = [ - SSLContextRef, - POINTER(c_size_t) - ] - Security.SSLGetNumberEnabledCiphers.restype = OSStatus - - Security.SSLGetEnabledCiphers.argtypes = [ - SSLContextRef, - POINTER(SSLCipherSuite), - POINTER(c_size_t) - ] - Security.SSLGetEnabledCiphers.restype = OSStatus - - Security.SSLGetNegotiatedCipher.argtypes = [ - SSLContextRef, - POINTER(SSLCipherSuite) - ] - Security.SSLGetNegotiatedCipher.restype = OSStatus - - Security.SSLGetNegotiatedProtocolVersion.argtypes = [ - SSLContextRef, - POINTER(SSLProtocol) - ] - Security.SSLGetNegotiatedProtocolVersion.restype = OSStatus - - Security.SSLCopyPeerTrust.argtypes = [ - SSLContextRef, - POINTER(SecTrustRef) - ] - Security.SSLCopyPeerTrust.restype = OSStatus - - Security.SecTrustSetAnchorCertificates.argtypes = [ - SecTrustRef, - CFArrayRef - ] - Security.SecTrustSetAnchorCertificates.restype = OSStatus - - Security.SecTrustSetAnchorCertificatesOnly.argstypes = [ - SecTrustRef, - Boolean - ] - Security.SecTrustSetAnchorCertificatesOnly.restype = OSStatus - - Security.SecTrustEvaluate.argtypes = [ - SecTrustRef, - POINTER(SecTrustResultType) - ] - Security.SecTrustEvaluate.restype = OSStatus - - Security.SecTrustGetCertificateCount.argtypes = [ - SecTrustRef - ] - Security.SecTrustGetCertificateCount.restype = CFIndex - - Security.SecTrustGetCertificateAtIndex.argtypes = [ - SecTrustRef, - CFIndex - ] - Security.SecTrustGetCertificateAtIndex.restype = SecCertificateRef - - Security.SSLCreateContext.argtypes = [ - CFAllocatorRef, - SSLProtocolSide, - SSLConnectionType - ] - Security.SSLCreateContext.restype = SSLContextRef - - Security.SSLSetSessionOption.argtypes = [ - SSLContextRef, - SSLSessionOption, - Boolean - ] - Security.SSLSetSessionOption.restype = OSStatus - - Security.SSLSetProtocolVersionMin.argtypes = [ - SSLContextRef, - SSLProtocol - ] - Security.SSLSetProtocolVersionMin.restype = OSStatus - - Security.SSLSetProtocolVersionMax.argtypes = [ - SSLContextRef, - SSLProtocol - ] - Security.SSLSetProtocolVersionMax.restype = OSStatus - - Security.SecCopyErrorMessageString.argtypes = [ - OSStatus, - c_void_p - ] - Security.SecCopyErrorMessageString.restype = CFStringRef - - Security.SSLReadFunc = SSLReadFunc - Security.SSLWriteFunc = SSLWriteFunc - Security.SSLContextRef = SSLContextRef - Security.SSLProtocol = SSLProtocol - Security.SSLCipherSuite = SSLCipherSuite - Security.SecIdentityRef = SecIdentityRef - Security.SecKeychainRef = SecKeychainRef - Security.SecTrustRef = SecTrustRef - Security.SecTrustResultType = SecTrustResultType - Security.SecExternalFormat = SecExternalFormat - Security.OSStatus = OSStatus - - Security.kSecImportExportPassphrase = CFStringRef.in_dll( - Security, 'kSecImportExportPassphrase' - ) - Security.kSecImportItemIdentity = CFStringRef.in_dll( - Security, 'kSecImportItemIdentity' - ) - - # CoreFoundation time! - CoreFoundation.CFRetain.argtypes = [ - CFTypeRef - ] - CoreFoundation.CFRetain.restype = CFTypeRef - - CoreFoundation.CFRelease.argtypes = [ - CFTypeRef - ] - CoreFoundation.CFRelease.restype = None - - CoreFoundation.CFGetTypeID.argtypes = [ - CFTypeRef - ] - CoreFoundation.CFGetTypeID.restype = CFTypeID - - CoreFoundation.CFStringCreateWithCString.argtypes = [ - CFAllocatorRef, - c_char_p, - CFStringEncoding - ] - CoreFoundation.CFStringCreateWithCString.restype = CFStringRef - - CoreFoundation.CFStringGetCStringPtr.argtypes = [ - CFStringRef, - CFStringEncoding - ] - CoreFoundation.CFStringGetCStringPtr.restype = c_char_p - - CoreFoundation.CFStringGetCString.argtypes = [ - CFStringRef, - c_char_p, - CFIndex, - CFStringEncoding - ] - CoreFoundation.CFStringGetCString.restype = c_bool - - CoreFoundation.CFDataCreate.argtypes = [ - CFAllocatorRef, - c_char_p, - CFIndex - ] - CoreFoundation.CFDataCreate.restype = CFDataRef - - CoreFoundation.CFDataGetLength.argtypes = [ - CFDataRef - ] - CoreFoundation.CFDataGetLength.restype = CFIndex - - CoreFoundation.CFDataGetBytePtr.argtypes = [ - CFDataRef - ] - CoreFoundation.CFDataGetBytePtr.restype = c_void_p - - CoreFoundation.CFDictionaryCreate.argtypes = [ - CFAllocatorRef, - POINTER(CFTypeRef), - POINTER(CFTypeRef), - CFIndex, - CFDictionaryKeyCallBacks, - CFDictionaryValueCallBacks - ] - CoreFoundation.CFDictionaryCreate.restype = CFDictionaryRef - - CoreFoundation.CFDictionaryGetValue.argtypes = [ - CFDictionaryRef, - CFTypeRef - ] - CoreFoundation.CFDictionaryGetValue.restype = CFTypeRef - - CoreFoundation.CFArrayCreate.argtypes = [ - CFAllocatorRef, - POINTER(CFTypeRef), - CFIndex, - CFArrayCallBacks, - ] - CoreFoundation.CFArrayCreate.restype = CFArrayRef - - CoreFoundation.CFArrayCreateMutable.argtypes = [ - CFAllocatorRef, - CFIndex, - CFArrayCallBacks - ] - CoreFoundation.CFArrayCreateMutable.restype = CFMutableArrayRef - - CoreFoundation.CFArrayAppendValue.argtypes = [ - CFMutableArrayRef, - c_void_p - ] - CoreFoundation.CFArrayAppendValue.restype = None - - CoreFoundation.CFArrayGetCount.argtypes = [ - CFArrayRef - ] - CoreFoundation.CFArrayGetCount.restype = CFIndex - - CoreFoundation.CFArrayGetValueAtIndex.argtypes = [ - CFArrayRef, - CFIndex - ] - CoreFoundation.CFArrayGetValueAtIndex.restype = c_void_p - - CoreFoundation.kCFAllocatorDefault = CFAllocatorRef.in_dll( - CoreFoundation, 'kCFAllocatorDefault' - ) - CoreFoundation.kCFTypeArrayCallBacks = c_void_p.in_dll(CoreFoundation, 'kCFTypeArrayCallBacks') - CoreFoundation.kCFTypeDictionaryKeyCallBacks = c_void_p.in_dll( - CoreFoundation, 'kCFTypeDictionaryKeyCallBacks' - ) - CoreFoundation.kCFTypeDictionaryValueCallBacks = c_void_p.in_dll( - CoreFoundation, 'kCFTypeDictionaryValueCallBacks' - ) - - CoreFoundation.CFTypeRef = CFTypeRef - CoreFoundation.CFArrayRef = CFArrayRef - CoreFoundation.CFStringRef = CFStringRef - CoreFoundation.CFDictionaryRef = CFDictionaryRef - -except (AttributeError): - raise ImportError('Error initializing ctypes') - - -class CFConst(object): - """ - A class object that acts as essentially a namespace for CoreFoundation - constants. - """ - kCFStringEncodingUTF8 = CFStringEncoding(0x08000100) - - -class SecurityConst(object): - """ - A class object that acts as essentially a namespace for Security constants. - """ - kSSLSessionOptionBreakOnServerAuth = 0 - - kSSLProtocol2 = 1 - kSSLProtocol3 = 2 - kTLSProtocol1 = 4 - kTLSProtocol11 = 7 - kTLSProtocol12 = 8 - - kSSLClientSide = 1 - kSSLStreamType = 0 - - kSecFormatPEMSequence = 10 - - kSecTrustResultInvalid = 0 - kSecTrustResultProceed = 1 - # This gap is present on purpose: this was kSecTrustResultConfirm, which - # is deprecated. - kSecTrustResultDeny = 3 - kSecTrustResultUnspecified = 4 - kSecTrustResultRecoverableTrustFailure = 5 - kSecTrustResultFatalTrustFailure = 6 - kSecTrustResultOtherError = 7 - - errSSLProtocol = -9800 - errSSLWouldBlock = -9803 - errSSLClosedGraceful = -9805 - errSSLClosedNoNotify = -9816 - errSSLClosedAbort = -9806 - - errSSLXCertChainInvalid = -9807 - errSSLCrypto = -9809 - errSSLInternal = -9810 - errSSLCertExpired = -9814 - errSSLCertNotYetValid = -9815 - errSSLUnknownRootCert = -9812 - errSSLNoRootCert = -9813 - errSSLHostNameMismatch = -9843 - errSSLPeerHandshakeFail = -9824 - errSSLPeerUserCancelled = -9839 - errSSLWeakPeerEphemeralDHKey = -9850 - errSSLServerAuthCompleted = -9841 - errSSLRecordOverflow = -9847 - - errSecVerifyFailed = -67808 - errSecNoTrustSettings = -25263 - errSecItemNotFound = -25300 - errSecInvalidTrustSettings = -25262 - - # Cipher suites. We only pick the ones our default cipher string allows. - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 0xC02C - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 0xC030 - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = 0xC02B - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 0xC02F - TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 = 0x00A3 - TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 = 0x009F - TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 = 0x00A2 - TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 = 0x009E - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 = 0xC024 - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 = 0xC028 - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA = 0xC00A - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA = 0xC014 - TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 = 0x006B - TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 = 0x006A - TLS_DHE_RSA_WITH_AES_256_CBC_SHA = 0x0039 - TLS_DHE_DSS_WITH_AES_256_CBC_SHA = 0x0038 - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 = 0xC023 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 = 0xC027 - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA = 0xC009 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA = 0xC013 - TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 = 0x0067 - TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 = 0x0040 - TLS_DHE_RSA_WITH_AES_128_CBC_SHA = 0x0033 - TLS_DHE_DSS_WITH_AES_128_CBC_SHA = 0x0032 - TLS_RSA_WITH_AES_256_GCM_SHA384 = 0x009D - TLS_RSA_WITH_AES_128_GCM_SHA256 = 0x009C - TLS_RSA_WITH_AES_256_CBC_SHA256 = 0x003D - TLS_RSA_WITH_AES_128_CBC_SHA256 = 0x003C - TLS_RSA_WITH_AES_256_CBC_SHA = 0x0035 - TLS_RSA_WITH_AES_128_CBC_SHA = 0x002F - TLS_AES_128_GCM_SHA256 = 0x1301 - TLS_AES_256_GCM_SHA384 = 0x1302 - TLS_CHACHA20_POLY1305_SHA256 = 0x1303 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/low_level.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/low_level.py deleted file mode 100644 index 4e5c0db..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +++ /dev/null @@ -1,343 +0,0 @@ -""" -Low-level helpers for the SecureTransport bindings. - -These are Python functions that are not directly related to the high-level APIs -but are necessary to get them to work. They include a whole bunch of low-level -CoreFoundation messing about and memory management. The concerns in this module -are almost entirely about trying to avoid memory leaks and providing -appropriate and useful assistance to the higher-level code. -""" -import base64 -import ctypes -import itertools -import re -import os -import ssl -import tempfile - -from .bindings import Security, CoreFoundation, CFConst - - -# This regular expression is used to grab PEM data out of a PEM bundle. -_PEM_CERTS_RE = re.compile( - b"-----BEGIN CERTIFICATE-----\n(.*?)\n-----END CERTIFICATE-----", re.DOTALL -) - - -def _cf_data_from_bytes(bytestring): - """ - Given a bytestring, create a CFData object from it. This CFData object must - be CFReleased by the caller. - """ - return CoreFoundation.CFDataCreate( - CoreFoundation.kCFAllocatorDefault, bytestring, len(bytestring) - ) - - -def _cf_dictionary_from_tuples(tuples): - """ - Given a list of Python tuples, create an associated CFDictionary. - """ - dictionary_size = len(tuples) - - # We need to get the dictionary keys and values out in the same order. - keys = (t[0] for t in tuples) - values = (t[1] for t in tuples) - cf_keys = (CoreFoundation.CFTypeRef * dictionary_size)(*keys) - cf_values = (CoreFoundation.CFTypeRef * dictionary_size)(*values) - - return CoreFoundation.CFDictionaryCreate( - CoreFoundation.kCFAllocatorDefault, - cf_keys, - cf_values, - dictionary_size, - CoreFoundation.kCFTypeDictionaryKeyCallBacks, - CoreFoundation.kCFTypeDictionaryValueCallBacks, - ) - - -def _cf_string_to_unicode(value): - """ - Creates a Unicode string from a CFString object. Used entirely for error - reporting. - - Yes, it annoys me quite a lot that this function is this complex. - """ - value_as_void_p = ctypes.cast(value, ctypes.POINTER(ctypes.c_void_p)) - - string = CoreFoundation.CFStringGetCStringPtr( - value_as_void_p, - CFConst.kCFStringEncodingUTF8 - ) - if string is None: - buffer = ctypes.create_string_buffer(1024) - result = CoreFoundation.CFStringGetCString( - value_as_void_p, - buffer, - 1024, - CFConst.kCFStringEncodingUTF8 - ) - if not result: - raise OSError('Error copying C string from CFStringRef') - string = buffer.value - if string is not None: - string = string.decode('utf-8') - return string - - -def _assert_no_error(error, exception_class=None): - """ - Checks the return code and throws an exception if there is an error to - report - """ - if error == 0: - return - - cf_error_string = Security.SecCopyErrorMessageString(error, None) - output = _cf_string_to_unicode(cf_error_string) - CoreFoundation.CFRelease(cf_error_string) - - if output is None or output == u'': - output = u'OSStatus %s' % error - - if exception_class is None: - exception_class = ssl.SSLError - - raise exception_class(output) - - -def _cert_array_from_pem(pem_bundle): - """ - Given a bundle of certs in PEM format, turns them into a CFArray of certs - that can be used to validate a cert chain. - """ - der_certs = [ - base64.b64decode(match.group(1)) - for match in _PEM_CERTS_RE.finditer(pem_bundle) - ] - if not der_certs: - raise ssl.SSLError("No root certificates specified") - - cert_array = CoreFoundation.CFArrayCreateMutable( - CoreFoundation.kCFAllocatorDefault, - 0, - ctypes.byref(CoreFoundation.kCFTypeArrayCallBacks) - ) - if not cert_array: - raise ssl.SSLError("Unable to allocate memory!") - - try: - for der_bytes in der_certs: - certdata = _cf_data_from_bytes(der_bytes) - if not certdata: - raise ssl.SSLError("Unable to allocate memory!") - cert = Security.SecCertificateCreateWithData( - CoreFoundation.kCFAllocatorDefault, certdata - ) - CoreFoundation.CFRelease(certdata) - if not cert: - raise ssl.SSLError("Unable to build cert object!") - - CoreFoundation.CFArrayAppendValue(cert_array, cert) - CoreFoundation.CFRelease(cert) - except Exception: - # We need to free the array before the exception bubbles further. - # We only want to do that if an error occurs: otherwise, the caller - # should free. - CoreFoundation.CFRelease(cert_array) - - return cert_array - - -def _is_cert(item): - """ - Returns True if a given CFTypeRef is a certificate. - """ - expected = Security.SecCertificateGetTypeID() - return CoreFoundation.CFGetTypeID(item) == expected - - -def _is_identity(item): - """ - Returns True if a given CFTypeRef is an identity. - """ - expected = Security.SecIdentityGetTypeID() - return CoreFoundation.CFGetTypeID(item) == expected - - -def _temporary_keychain(): - """ - This function creates a temporary Mac keychain that we can use to work with - credentials. This keychain uses a one-time password and a temporary file to - store the data. We expect to have one keychain per socket. The returned - SecKeychainRef must be freed by the caller, including calling - SecKeychainDelete. - - Returns a tuple of the SecKeychainRef and the path to the temporary - directory that contains it. - """ - # Unfortunately, SecKeychainCreate requires a path to a keychain. This - # means we cannot use mkstemp to use a generic temporary file. Instead, - # we're going to create a temporary directory and a filename to use there. - # This filename will be 8 random bytes expanded into base64. We also need - # some random bytes to password-protect the keychain we're creating, so we - # ask for 40 random bytes. - random_bytes = os.urandom(40) - filename = base64.b64encode(random_bytes[:8]).decode('utf-8') - password = base64.b64encode(random_bytes[8:]) # Must be valid UTF-8 - tempdirectory = tempfile.mkdtemp() - - keychain_path = os.path.join(tempdirectory, filename).encode('utf-8') - - # We now want to create the keychain itself. - keychain = Security.SecKeychainRef() - status = Security.SecKeychainCreate( - keychain_path, - len(password), - password, - False, - None, - ctypes.byref(keychain) - ) - _assert_no_error(status) - - # Having created the keychain, we want to pass it off to the caller. - return keychain, tempdirectory - - -def _load_items_from_file(keychain, path): - """ - Given a single file, loads all the trust objects from it into arrays and - the keychain. - Returns a tuple of lists: the first list is a list of identities, the - second a list of certs. - """ - certificates = [] - identities = [] - result_array = None - - with open(path, 'rb') as f: - raw_filedata = f.read() - - try: - filedata = CoreFoundation.CFDataCreate( - CoreFoundation.kCFAllocatorDefault, - raw_filedata, - len(raw_filedata) - ) - result_array = CoreFoundation.CFArrayRef() - result = Security.SecItemImport( - filedata, # cert data - None, # Filename, leaving it out for now - None, # What the type of the file is, we don't care - None, # what's in the file, we don't care - 0, # import flags - None, # key params, can include passphrase in the future - keychain, # The keychain to insert into - ctypes.byref(result_array) # Results - ) - _assert_no_error(result) - - # A CFArray is not very useful to us as an intermediary - # representation, so we are going to extract the objects we want - # and then free the array. We don't need to keep hold of keys: the - # keychain already has them! - result_count = CoreFoundation.CFArrayGetCount(result_array) - for index in range(result_count): - item = CoreFoundation.CFArrayGetValueAtIndex( - result_array, index - ) - item = ctypes.cast(item, CoreFoundation.CFTypeRef) - - if _is_cert(item): - CoreFoundation.CFRetain(item) - certificates.append(item) - elif _is_identity(item): - CoreFoundation.CFRetain(item) - identities.append(item) - finally: - if result_array: - CoreFoundation.CFRelease(result_array) - - CoreFoundation.CFRelease(filedata) - - return (identities, certificates) - - -def _load_client_cert_chain(keychain, *paths): - """ - Load certificates and maybe keys from a number of files. Has the end goal - of returning a CFArray containing one SecIdentityRef, and then zero or more - SecCertificateRef objects, suitable for use as a client certificate trust - chain. - """ - # Ok, the strategy. - # - # This relies on knowing that macOS will not give you a SecIdentityRef - # unless you have imported a key into a keychain. This is a somewhat - # artificial limitation of macOS (for example, it doesn't necessarily - # affect iOS), but there is nothing inside Security.framework that lets you - # get a SecIdentityRef without having a key in a keychain. - # - # So the policy here is we take all the files and iterate them in order. - # Each one will use SecItemImport to have one or more objects loaded from - # it. We will also point at a keychain that macOS can use to work with the - # private key. - # - # Once we have all the objects, we'll check what we actually have. If we - # already have a SecIdentityRef in hand, fab: we'll use that. Otherwise, - # we'll take the first certificate (which we assume to be our leaf) and - # ask the keychain to give us a SecIdentityRef with that cert's associated - # key. - # - # We'll then return a CFArray containing the trust chain: one - # SecIdentityRef and then zero-or-more SecCertificateRef objects. The - # responsibility for freeing this CFArray will be with the caller. This - # CFArray must remain alive for the entire connection, so in practice it - # will be stored with a single SSLSocket, along with the reference to the - # keychain. - certificates = [] - identities = [] - - # Filter out bad paths. - paths = (path for path in paths if path) - - try: - for file_path in paths: - new_identities, new_certs = _load_items_from_file( - keychain, file_path - ) - identities.extend(new_identities) - certificates.extend(new_certs) - - # Ok, we have everything. The question is: do we have an identity? If - # not, we want to grab one from the first cert we have. - if not identities: - new_identity = Security.SecIdentityRef() - status = Security.SecIdentityCreateWithCertificate( - keychain, - certificates[0], - ctypes.byref(new_identity) - ) - _assert_no_error(status) - identities.append(new_identity) - - # We now want to release the original certificate, as we no longer - # need it. - CoreFoundation.CFRelease(certificates.pop(0)) - - # We now need to build a new CFArray that holds the trust chain. - trust_chain = CoreFoundation.CFArrayCreateMutable( - CoreFoundation.kCFAllocatorDefault, - 0, - ctypes.byref(CoreFoundation.kCFTypeArrayCallBacks), - ) - for item in itertools.chain(identities, certificates): - # ArrayAppendValue does a CFRetain on the item. That's fine, - # because the finally block will release our other refs to them. - CoreFoundation.CFArrayAppendValue(trust_chain, item) - - return trust_chain - finally: - for obj in itertools.chain(identities, certificates): - CoreFoundation.CFRelease(obj) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/appengine.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/appengine.py deleted file mode 100644 index fc00d17..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/appengine.py +++ /dev/null @@ -1,296 +0,0 @@ -""" -This module provides a pool manager that uses Google App Engine's -`URLFetch Service <https://cloud.google.com/appengine/docs/python/urlfetch>`_. - -Example usage:: - - from pip._vendor.urllib3 import PoolManager - from pip._vendor.urllib3.contrib.appengine import AppEngineManager, is_appengine_sandbox - - if is_appengine_sandbox(): - # AppEngineManager uses AppEngine's URLFetch API behind the scenes - http = AppEngineManager() - else: - # PoolManager uses a socket-level API behind the scenes - http = PoolManager() - - r = http.request('GET', 'https://google.com/') - -There are `limitations <https://cloud.google.com/appengine/docs/python/\ -urlfetch/#Python_Quotas_and_limits>`_ to the URLFetch service and it may not be -the best choice for your application. There are three options for using -urllib3 on Google App Engine: - -1. You can use :class:`AppEngineManager` with URLFetch. URLFetch is - cost-effective in many circumstances as long as your usage is within the - limitations. -2. You can use a normal :class:`~urllib3.PoolManager` by enabling sockets. - Sockets also have `limitations and restrictions - <https://cloud.google.com/appengine/docs/python/sockets/\ - #limitations-and-restrictions>`_ and have a lower free quota than URLFetch. - To use sockets, be sure to specify the following in your ``app.yaml``:: - - env_variables: - GAE_USE_SOCKETS_HTTPLIB : 'true' - -3. If you are using `App Engine Flexible -<https://cloud.google.com/appengine/docs/flexible/>`_, you can use the standard -:class:`PoolManager` without any configuration or special environment variables. -""" - -from __future__ import absolute_import -import logging -import os -import warnings -from ..packages.six.moves.urllib.parse import urljoin - -from ..exceptions import ( - HTTPError, - HTTPWarning, - MaxRetryError, - ProtocolError, - TimeoutError, - SSLError -) - -from ..packages.six import BytesIO -from ..request import RequestMethods -from ..response import HTTPResponse -from ..util.timeout import Timeout -from ..util.retry import Retry - -try: - from google.appengine.api import urlfetch -except ImportError: - urlfetch = None - - -log = logging.getLogger(__name__) - - -class AppEnginePlatformWarning(HTTPWarning): - pass - - -class AppEnginePlatformError(HTTPError): - pass - - -class AppEngineManager(RequestMethods): - """ - Connection manager for Google App Engine sandbox applications. - - This manager uses the URLFetch service directly instead of using the - emulated httplib, and is subject to URLFetch limitations as described in - the App Engine documentation `here - <https://cloud.google.com/appengine/docs/python/urlfetch>`_. - - Notably it will raise an :class:`AppEnginePlatformError` if: - * URLFetch is not available. - * If you attempt to use this on App Engine Flexible, as full socket - support is available. - * If a request size is more than 10 megabytes. - * If a response size is more than 32 megabtyes. - * If you use an unsupported request method such as OPTIONS. - - Beyond those cases, it will raise normal urllib3 errors. - """ - - def __init__(self, headers=None, retries=None, validate_certificate=True, - urlfetch_retries=True): - if not urlfetch: - raise AppEnginePlatformError( - "URLFetch is not available in this environment.") - - if is_prod_appengine_mvms(): - raise AppEnginePlatformError( - "Use normal urllib3.PoolManager instead of AppEngineManager" - "on Managed VMs, as using URLFetch is not necessary in " - "this environment.") - - warnings.warn( - "urllib3 is using URLFetch on Google App Engine sandbox instead " - "of sockets. To use sockets directly instead of URLFetch see " - "https://urllib3.readthedocs.io/en/latest/reference/urllib3.contrib.html.", - AppEnginePlatformWarning) - - RequestMethods.__init__(self, headers) - self.validate_certificate = validate_certificate - self.urlfetch_retries = urlfetch_retries - - self.retries = retries or Retry.DEFAULT - - def __enter__(self): - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - # Return False to re-raise any potential exceptions - return False - - def urlopen(self, method, url, body=None, headers=None, - retries=None, redirect=True, timeout=Timeout.DEFAULT_TIMEOUT, - **response_kw): - - retries = self._get_retries(retries, redirect) - - try: - follow_redirects = ( - redirect and - retries.redirect != 0 and - retries.total) - response = urlfetch.fetch( - url, - payload=body, - method=method, - headers=headers or {}, - allow_truncated=False, - follow_redirects=self.urlfetch_retries and follow_redirects, - deadline=self._get_absolute_timeout(timeout), - validate_certificate=self.validate_certificate, - ) - except urlfetch.DeadlineExceededError as e: - raise TimeoutError(self, e) - - except urlfetch.InvalidURLError as e: - if 'too large' in str(e): - raise AppEnginePlatformError( - "URLFetch request too large, URLFetch only " - "supports requests up to 10mb in size.", e) - raise ProtocolError(e) - - except urlfetch.DownloadError as e: - if 'Too many redirects' in str(e): - raise MaxRetryError(self, url, reason=e) - raise ProtocolError(e) - - except urlfetch.ResponseTooLargeError as e: - raise AppEnginePlatformError( - "URLFetch response too large, URLFetch only supports" - "responses up to 32mb in size.", e) - - except urlfetch.SSLCertificateError as e: - raise SSLError(e) - - except urlfetch.InvalidMethodError as e: - raise AppEnginePlatformError( - "URLFetch does not support method: %s" % method, e) - - http_response = self._urlfetch_response_to_http_response( - response, retries=retries, **response_kw) - - # Handle redirect? - redirect_location = redirect and http_response.get_redirect_location() - if redirect_location: - # Check for redirect response - if (self.urlfetch_retries and retries.raise_on_redirect): - raise MaxRetryError(self, url, "too many redirects") - else: - if http_response.status == 303: - method = 'GET' - - try: - retries = retries.increment(method, url, response=http_response, _pool=self) - except MaxRetryError: - if retries.raise_on_redirect: - raise MaxRetryError(self, url, "too many redirects") - return http_response - - retries.sleep_for_retry(http_response) - log.debug("Redirecting %s -> %s", url, redirect_location) - redirect_url = urljoin(url, redirect_location) - return self.urlopen( - method, redirect_url, body, headers, - retries=retries, redirect=redirect, - timeout=timeout, **response_kw) - - # Check if we should retry the HTTP response. - has_retry_after = bool(http_response.getheader('Retry-After')) - if retries.is_retry(method, http_response.status, has_retry_after): - retries = retries.increment( - method, url, response=http_response, _pool=self) - log.debug("Retry: %s", url) - retries.sleep(http_response) - return self.urlopen( - method, url, - body=body, headers=headers, - retries=retries, redirect=redirect, - timeout=timeout, **response_kw) - - return http_response - - def _urlfetch_response_to_http_response(self, urlfetch_resp, **response_kw): - - if is_prod_appengine(): - # Production GAE handles deflate encoding automatically, but does - # not remove the encoding header. - content_encoding = urlfetch_resp.headers.get('content-encoding') - - if content_encoding == 'deflate': - del urlfetch_resp.headers['content-encoding'] - - transfer_encoding = urlfetch_resp.headers.get('transfer-encoding') - # We have a full response's content, - # so let's make sure we don't report ourselves as chunked data. - if transfer_encoding == 'chunked': - encodings = transfer_encoding.split(",") - encodings.remove('chunked') - urlfetch_resp.headers['transfer-encoding'] = ','.join(encodings) - - return HTTPResponse( - # In order for decoding to work, we must present the content as - # a file-like object. - body=BytesIO(urlfetch_resp.content), - headers=urlfetch_resp.headers, - status=urlfetch_resp.status_code, - **response_kw - ) - - def _get_absolute_timeout(self, timeout): - if timeout is Timeout.DEFAULT_TIMEOUT: - return None # Defer to URLFetch's default. - if isinstance(timeout, Timeout): - if timeout._read is not None or timeout._connect is not None: - warnings.warn( - "URLFetch does not support granular timeout settings, " - "reverting to total or default URLFetch timeout.", - AppEnginePlatformWarning) - return timeout.total - return timeout - - def _get_retries(self, retries, redirect): - if not isinstance(retries, Retry): - retries = Retry.from_int( - retries, redirect=redirect, default=self.retries) - - if retries.connect or retries.read or retries.redirect: - warnings.warn( - "URLFetch only supports total retries and does not " - "recognize connect, read, or redirect retry parameters.", - AppEnginePlatformWarning) - - return retries - - -def is_appengine(): - return (is_local_appengine() or - is_prod_appengine() or - is_prod_appengine_mvms()) - - -def is_appengine_sandbox(): - return is_appengine() and not is_prod_appengine_mvms() - - -def is_local_appengine(): - return ('APPENGINE_RUNTIME' in os.environ and - 'Development/' in os.environ['SERVER_SOFTWARE']) - - -def is_prod_appengine(): - return ('APPENGINE_RUNTIME' in os.environ and - 'Google App Engine/' in os.environ['SERVER_SOFTWARE'] and - not is_prod_appengine_mvms()) - - -def is_prod_appengine_mvms(): - return os.environ.get('GAE_VM', False) == 'true' diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/ntlmpool.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/ntlmpool.py deleted file mode 100644 index 888e0ad..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/ntlmpool.py +++ /dev/null @@ -1,112 +0,0 @@ -""" -NTLM authenticating pool, contributed by erikcederstran - -Issue #10, see: http://code.google.com/p/urllib3/issues/detail?id=10 -""" -from __future__ import absolute_import - -from logging import getLogger -from ntlm import ntlm - -from .. import HTTPSConnectionPool -from ..packages.six.moves.http_client import HTTPSConnection - - -log = getLogger(__name__) - - -class NTLMConnectionPool(HTTPSConnectionPool): - """ - Implements an NTLM authentication version of an urllib3 connection pool - """ - - scheme = 'https' - - def __init__(self, user, pw, authurl, *args, **kwargs): - """ - authurl is a random URL on the server that is protected by NTLM. - user is the Windows user, probably in the DOMAIN\\username format. - pw is the password for the user. - """ - super(NTLMConnectionPool, self).__init__(*args, **kwargs) - self.authurl = authurl - self.rawuser = user - user_parts = user.split('\\', 1) - self.domain = user_parts[0].upper() - self.user = user_parts[1] - self.pw = pw - - def _new_conn(self): - # Performs the NTLM handshake that secures the connection. The socket - # must be kept open while requests are performed. - self.num_connections += 1 - log.debug('Starting NTLM HTTPS connection no. %d: https://%s%s', - self.num_connections, self.host, self.authurl) - - headers = {} - headers['Connection'] = 'Keep-Alive' - req_header = 'Authorization' - resp_header = 'www-authenticate' - - conn = HTTPSConnection(host=self.host, port=self.port) - - # Send negotiation message - headers[req_header] = ( - 'NTLM %s' % ntlm.create_NTLM_NEGOTIATE_MESSAGE(self.rawuser)) - log.debug('Request headers: %s', headers) - conn.request('GET', self.authurl, None, headers) - res = conn.getresponse() - reshdr = dict(res.getheaders()) - log.debug('Response status: %s %s', res.status, res.reason) - log.debug('Response headers: %s', reshdr) - log.debug('Response data: %s [...]', res.read(100)) - - # Remove the reference to the socket, so that it can not be closed by - # the response object (we want to keep the socket open) - res.fp = None - - # Server should respond with a challenge message - auth_header_values = reshdr[resp_header].split(', ') - auth_header_value = None - for s in auth_header_values: - if s[:5] == 'NTLM ': - auth_header_value = s[5:] - if auth_header_value is None: - raise Exception('Unexpected %s response header: %s' % - (resp_header, reshdr[resp_header])) - - # Send authentication message - ServerChallenge, NegotiateFlags = \ - ntlm.parse_NTLM_CHALLENGE_MESSAGE(auth_header_value) - auth_msg = ntlm.create_NTLM_AUTHENTICATE_MESSAGE(ServerChallenge, - self.user, - self.domain, - self.pw, - NegotiateFlags) - headers[req_header] = 'NTLM %s' % auth_msg - log.debug('Request headers: %s', headers) - conn.request('GET', self.authurl, None, headers) - res = conn.getresponse() - log.debug('Response status: %s %s', res.status, res.reason) - log.debug('Response headers: %s', dict(res.getheaders())) - log.debug('Response data: %s [...]', res.read()[:100]) - if res.status != 200: - if res.status == 401: - raise Exception('Server rejected request: wrong ' - 'username or password') - raise Exception('Wrong server response: %s %s' % - (res.status, res.reason)) - - res.fp = None - log.debug('Connection established') - return conn - - def urlopen(self, method, url, body=None, headers=None, retries=3, - redirect=True, assert_same_host=True): - if headers is None: - headers = {} - headers['Connection'] = 'Keep-Alive' - return super(NTLMConnectionPool, self).urlopen(method, url, body, - headers, retries, - redirect, - assert_same_host) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/pyopenssl.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/pyopenssl.py deleted file mode 100644 index f13e2bc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/pyopenssl.py +++ /dev/null @@ -1,455 +0,0 @@ -""" -SSL with SNI_-support for Python 2. Follow these instructions if you would -like to verify SSL certificates in Python 2. Note, the default libraries do -*not* do certificate checking; you need to do additional work to validate -certificates yourself. - -This needs the following packages installed: - -* pyOpenSSL (tested with 16.0.0) -* cryptography (minimum 1.3.4, from pyopenssl) -* idna (minimum 2.0, from cryptography) - -However, pyopenssl depends on cryptography, which depends on idna, so while we -use all three directly here we end up having relatively few packages required. - -You can install them with the following command: - - pip install pyopenssl cryptography idna - -To activate certificate checking, call -:func:`~urllib3.contrib.pyopenssl.inject_into_urllib3` from your Python code -before you begin making HTTP requests. This can be done in a ``sitecustomize`` -module, or at any other time before your application begins using ``urllib3``, -like this:: - - try: - import urllib3.contrib.pyopenssl - urllib3.contrib.pyopenssl.inject_into_urllib3() - except ImportError: - pass - -Now you can use :mod:`urllib3` as you normally would, and it will support SNI -when the required modules are installed. - -Activating this module also has the positive side effect of disabling SSL/TLS -compression in Python 2 (see `CRIME attack`_). - -If you want to configure the default list of supported cipher suites, you can -set the ``urllib3.contrib.pyopenssl.DEFAULT_SSL_CIPHER_LIST`` variable. - -.. _sni: https://en.wikipedia.org/wiki/Server_Name_Indication -.. _crime attack: https://en.wikipedia.org/wiki/CRIME_(security_exploit) -""" -from __future__ import absolute_import - -import OpenSSL.SSL -from cryptography import x509 -from cryptography.hazmat.backends.openssl import backend as openssl_backend -from cryptography.hazmat.backends.openssl.x509 import _Certificate - -from socket import timeout, error as SocketError -from io import BytesIO - -try: # Platform-specific: Python 2 - from socket import _fileobject -except ImportError: # Platform-specific: Python 3 - _fileobject = None - from ..packages.backports.makefile import backport_makefile - -import logging -import ssl -from ..packages import six -import sys - -from .. import util - -__all__ = ['inject_into_urllib3', 'extract_from_urllib3'] - -# SNI always works. -HAS_SNI = True - -# Map from urllib3 to PyOpenSSL compatible parameter-values. -_openssl_versions = { - ssl.PROTOCOL_SSLv23: OpenSSL.SSL.SSLv23_METHOD, - ssl.PROTOCOL_TLSv1: OpenSSL.SSL.TLSv1_METHOD, -} - -if hasattr(ssl, 'PROTOCOL_TLSv1_1') and hasattr(OpenSSL.SSL, 'TLSv1_1_METHOD'): - _openssl_versions[ssl.PROTOCOL_TLSv1_1] = OpenSSL.SSL.TLSv1_1_METHOD - -if hasattr(ssl, 'PROTOCOL_TLSv1_2') and hasattr(OpenSSL.SSL, 'TLSv1_2_METHOD'): - _openssl_versions[ssl.PROTOCOL_TLSv1_2] = OpenSSL.SSL.TLSv1_2_METHOD - -try: - _openssl_versions.update({ssl.PROTOCOL_SSLv3: OpenSSL.SSL.SSLv3_METHOD}) -except AttributeError: - pass - -_stdlib_to_openssl_verify = { - ssl.CERT_NONE: OpenSSL.SSL.VERIFY_NONE, - ssl.CERT_OPTIONAL: OpenSSL.SSL.VERIFY_PEER, - ssl.CERT_REQUIRED: - OpenSSL.SSL.VERIFY_PEER + OpenSSL.SSL.VERIFY_FAIL_IF_NO_PEER_CERT, -} -_openssl_to_stdlib_verify = dict( - (v, k) for k, v in _stdlib_to_openssl_verify.items() -) - -# OpenSSL will only write 16K at a time -SSL_WRITE_BLOCKSIZE = 16384 - -orig_util_HAS_SNI = util.HAS_SNI -orig_util_SSLContext = util.ssl_.SSLContext - - -log = logging.getLogger(__name__) - - -def inject_into_urllib3(): - 'Monkey-patch urllib3 with PyOpenSSL-backed SSL-support.' - - _validate_dependencies_met() - - util.ssl_.SSLContext = PyOpenSSLContext - util.HAS_SNI = HAS_SNI - util.ssl_.HAS_SNI = HAS_SNI - util.IS_PYOPENSSL = True - util.ssl_.IS_PYOPENSSL = True - - -def extract_from_urllib3(): - 'Undo monkey-patching by :func:`inject_into_urllib3`.' - - util.ssl_.SSLContext = orig_util_SSLContext - util.HAS_SNI = orig_util_HAS_SNI - util.ssl_.HAS_SNI = orig_util_HAS_SNI - util.IS_PYOPENSSL = False - util.ssl_.IS_PYOPENSSL = False - - -def _validate_dependencies_met(): - """ - Verifies that PyOpenSSL's package-level dependencies have been met. - Throws `ImportError` if they are not met. - """ - # Method added in `cryptography==1.1`; not available in older versions - from cryptography.x509.extensions import Extensions - if getattr(Extensions, "get_extension_for_class", None) is None: - raise ImportError("'cryptography' module missing required functionality. " - "Try upgrading to v1.3.4 or newer.") - - # pyOpenSSL 0.14 and above use cryptography for OpenSSL bindings. The _x509 - # attribute is only present on those versions. - from OpenSSL.crypto import X509 - x509 = X509() - if getattr(x509, "_x509", None) is None: - raise ImportError("'pyOpenSSL' module missing required functionality. " - "Try upgrading to v0.14 or newer.") - - -def _dnsname_to_stdlib(name): - """ - Converts a dNSName SubjectAlternativeName field to the form used by the - standard library on the given Python version. - - Cryptography produces a dNSName as a unicode string that was idna-decoded - from ASCII bytes. We need to idna-encode that string to get it back, and - then on Python 3 we also need to convert to unicode via UTF-8 (the stdlib - uses PyUnicode_FromStringAndSize on it, which decodes via UTF-8). - """ - def idna_encode(name): - """ - Borrowed wholesale from the Python Cryptography Project. It turns out - that we can't just safely call `idna.encode`: it can explode for - wildcard names. This avoids that problem. - """ - from pip._vendor import idna - - for prefix in [u'*.', u'.']: - if name.startswith(prefix): - name = name[len(prefix):] - return prefix.encode('ascii') + idna.encode(name) - return idna.encode(name) - - name = idna_encode(name) - if sys.version_info >= (3, 0): - name = name.decode('utf-8') - return name - - -def get_subj_alt_name(peer_cert): - """ - Given an PyOpenSSL certificate, provides all the subject alternative names. - """ - # Pass the cert to cryptography, which has much better APIs for this. - if hasattr(peer_cert, "to_cryptography"): - cert = peer_cert.to_cryptography() - else: - # This is technically using private APIs, but should work across all - # relevant versions before PyOpenSSL got a proper API for this. - cert = _Certificate(openssl_backend, peer_cert._x509) - - # We want to find the SAN extension. Ask Cryptography to locate it (it's - # faster than looping in Python) - try: - ext = cert.extensions.get_extension_for_class( - x509.SubjectAlternativeName - ).value - except x509.ExtensionNotFound: - # No such extension, return the empty list. - return [] - except (x509.DuplicateExtension, x509.UnsupportedExtension, - x509.UnsupportedGeneralNameType, UnicodeError) as e: - # A problem has been found with the quality of the certificate. Assume - # no SAN field is present. - log.warning( - "A problem was encountered with the certificate that prevented " - "urllib3 from finding the SubjectAlternativeName field. This can " - "affect certificate validation. The error was %s", - e, - ) - return [] - - # We want to return dNSName and iPAddress fields. We need to cast the IPs - # back to strings because the match_hostname function wants them as - # strings. - # Sadly the DNS names need to be idna encoded and then, on Python 3, UTF-8 - # decoded. This is pretty frustrating, but that's what the standard library - # does with certificates, and so we need to attempt to do the same. - names = [ - ('DNS', _dnsname_to_stdlib(name)) - for name in ext.get_values_for_type(x509.DNSName) - ] - names.extend( - ('IP Address', str(name)) - for name in ext.get_values_for_type(x509.IPAddress) - ) - - return names - - -class WrappedSocket(object): - '''API-compatibility wrapper for Python OpenSSL's Connection-class. - - Note: _makefile_refs, _drop() and _reuse() are needed for the garbage - collector of pypy. - ''' - - def __init__(self, connection, socket, suppress_ragged_eofs=True): - self.connection = connection - self.socket = socket - self.suppress_ragged_eofs = suppress_ragged_eofs - self._makefile_refs = 0 - self._closed = False - - def fileno(self): - return self.socket.fileno() - - # Copy-pasted from Python 3.5 source code - def _decref_socketios(self): - if self._makefile_refs > 0: - self._makefile_refs -= 1 - if self._closed: - self.close() - - def recv(self, *args, **kwargs): - try: - data = self.connection.recv(*args, **kwargs) - except OpenSSL.SSL.SysCallError as e: - if self.suppress_ragged_eofs and e.args == (-1, 'Unexpected EOF'): - return b'' - else: - raise SocketError(str(e)) - except OpenSSL.SSL.ZeroReturnError as e: - if self.connection.get_shutdown() == OpenSSL.SSL.RECEIVED_SHUTDOWN: - return b'' - else: - raise - except OpenSSL.SSL.WantReadError: - rd = util.wait_for_read(self.socket, self.socket.gettimeout()) - if not rd: - raise timeout('The read operation timed out') - else: - return self.recv(*args, **kwargs) - else: - return data - - def recv_into(self, *args, **kwargs): - try: - return self.connection.recv_into(*args, **kwargs) - except OpenSSL.SSL.SysCallError as e: - if self.suppress_ragged_eofs and e.args == (-1, 'Unexpected EOF'): - return 0 - else: - raise SocketError(str(e)) - except OpenSSL.SSL.ZeroReturnError as e: - if self.connection.get_shutdown() == OpenSSL.SSL.RECEIVED_SHUTDOWN: - return 0 - else: - raise - except OpenSSL.SSL.WantReadError: - rd = util.wait_for_read(self.socket, self.socket.gettimeout()) - if not rd: - raise timeout('The read operation timed out') - else: - return self.recv_into(*args, **kwargs) - - def settimeout(self, timeout): - return self.socket.settimeout(timeout) - - def _send_until_done(self, data): - while True: - try: - return self.connection.send(data) - except OpenSSL.SSL.WantWriteError: - wr = util.wait_for_write(self.socket, self.socket.gettimeout()) - if not wr: - raise timeout() - continue - except OpenSSL.SSL.SysCallError as e: - raise SocketError(str(e)) - - def sendall(self, data): - total_sent = 0 - while total_sent < len(data): - sent = self._send_until_done(data[total_sent:total_sent + SSL_WRITE_BLOCKSIZE]) - total_sent += sent - - def shutdown(self): - # FIXME rethrow compatible exceptions should we ever use this - self.connection.shutdown() - - def close(self): - if self._makefile_refs < 1: - try: - self._closed = True - return self.connection.close() - except OpenSSL.SSL.Error: - return - else: - self._makefile_refs -= 1 - - def getpeercert(self, binary_form=False): - x509 = self.connection.get_peer_certificate() - - if not x509: - return x509 - - if binary_form: - return OpenSSL.crypto.dump_certificate( - OpenSSL.crypto.FILETYPE_ASN1, - x509) - - return { - 'subject': ( - (('commonName', x509.get_subject().CN),), - ), - 'subjectAltName': get_subj_alt_name(x509) - } - - def _reuse(self): - self._makefile_refs += 1 - - def _drop(self): - if self._makefile_refs < 1: - self.close() - else: - self._makefile_refs -= 1 - - -if _fileobject: # Platform-specific: Python 2 - def makefile(self, mode, bufsize=-1): - self._makefile_refs += 1 - return _fileobject(self, mode, bufsize, close=True) -else: # Platform-specific: Python 3 - makefile = backport_makefile - -WrappedSocket.makefile = makefile - - -class PyOpenSSLContext(object): - """ - I am a wrapper class for the PyOpenSSL ``Context`` object. I am responsible - for translating the interface of the standard library ``SSLContext`` object - to calls into PyOpenSSL. - """ - def __init__(self, protocol): - self.protocol = _openssl_versions[protocol] - self._ctx = OpenSSL.SSL.Context(self.protocol) - self._options = 0 - self.check_hostname = False - - @property - def options(self): - return self._options - - @options.setter - def options(self, value): - self._options = value - self._ctx.set_options(value) - - @property - def verify_mode(self): - return _openssl_to_stdlib_verify[self._ctx.get_verify_mode()] - - @verify_mode.setter - def verify_mode(self, value): - self._ctx.set_verify( - _stdlib_to_openssl_verify[value], - _verify_callback - ) - - def set_default_verify_paths(self): - self._ctx.set_default_verify_paths() - - def set_ciphers(self, ciphers): - if isinstance(ciphers, six.text_type): - ciphers = ciphers.encode('utf-8') - self._ctx.set_cipher_list(ciphers) - - def load_verify_locations(self, cafile=None, capath=None, cadata=None): - if cafile is not None: - cafile = cafile.encode('utf-8') - if capath is not None: - capath = capath.encode('utf-8') - self._ctx.load_verify_locations(cafile, capath) - if cadata is not None: - self._ctx.load_verify_locations(BytesIO(cadata)) - - def load_cert_chain(self, certfile, keyfile=None, password=None): - self._ctx.use_certificate_file(certfile) - if password is not None: - self._ctx.set_passwd_cb(lambda max_length, prompt_twice, userdata: password) - self._ctx.use_privatekey_file(keyfile or certfile) - - def wrap_socket(self, sock, server_side=False, - do_handshake_on_connect=True, suppress_ragged_eofs=True, - server_hostname=None): - cnx = OpenSSL.SSL.Connection(self._ctx, sock) - - if isinstance(server_hostname, six.text_type): # Platform-specific: Python 3 - server_hostname = server_hostname.encode('utf-8') - - if server_hostname is not None: - cnx.set_tlsext_host_name(server_hostname) - - cnx.set_connect_state() - - while True: - try: - cnx.do_handshake() - except OpenSSL.SSL.WantReadError: - rd = util.wait_for_read(sock, sock.gettimeout()) - if not rd: - raise timeout('select timed out') - continue - except OpenSSL.SSL.Error as e: - raise ssl.SSLError('bad handshake: %r' % e) - break - - return WrappedSocket(cnx, sock) - - -def _verify_callback(cnx, x509, err_no, err_depth, return_code): - return err_no == 0 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/securetransport.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/securetransport.py deleted file mode 100644 index 77cf861..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/securetransport.py +++ /dev/null @@ -1,810 +0,0 @@ -""" -SecureTranport support for urllib3 via ctypes. - -This makes platform-native TLS available to urllib3 users on macOS without the -use of a compiler. This is an important feature because the Python Package -Index is moving to become a TLSv1.2-or-higher server, and the default OpenSSL -that ships with macOS is not capable of doing TLSv1.2. The only way to resolve -this is to give macOS users an alternative solution to the problem, and that -solution is to use SecureTransport. - -We use ctypes here because this solution must not require a compiler. That's -because pip is not allowed to require a compiler either. - -This is not intended to be a seriously long-term solution to this problem. -The hope is that PEP 543 will eventually solve this issue for us, at which -point we can retire this contrib module. But in the short term, we need to -solve the impending tire fire that is Python on Mac without this kind of -contrib module. So...here we are. - -To use this module, simply import and inject it:: - - import urllib3.contrib.securetransport - urllib3.contrib.securetransport.inject_into_urllib3() - -Happy TLSing! -""" -from __future__ import absolute_import - -import contextlib -import ctypes -import errno -import os.path -import shutil -import socket -import ssl -import threading -import weakref - -from .. import util -from ._securetransport.bindings import ( - Security, SecurityConst, CoreFoundation -) -from ._securetransport.low_level import ( - _assert_no_error, _cert_array_from_pem, _temporary_keychain, - _load_client_cert_chain -) - -try: # Platform-specific: Python 2 - from socket import _fileobject -except ImportError: # Platform-specific: Python 3 - _fileobject = None - from ..packages.backports.makefile import backport_makefile - -try: - memoryview(b'') -except NameError: - raise ImportError("SecureTransport only works on Pythons with memoryview") - -__all__ = ['inject_into_urllib3', 'extract_from_urllib3'] - -# SNI always works -HAS_SNI = True - -orig_util_HAS_SNI = util.HAS_SNI -orig_util_SSLContext = util.ssl_.SSLContext - -# This dictionary is used by the read callback to obtain a handle to the -# calling wrapped socket. This is a pretty silly approach, but for now it'll -# do. I feel like I should be able to smuggle a handle to the wrapped socket -# directly in the SSLConnectionRef, but for now this approach will work I -# guess. -# -# We need to lock around this structure for inserts, but we don't do it for -# reads/writes in the callbacks. The reasoning here goes as follows: -# -# 1. It is not possible to call into the callbacks before the dictionary is -# populated, so once in the callback the id must be in the dictionary. -# 2. The callbacks don't mutate the dictionary, they only read from it, and -# so cannot conflict with any of the insertions. -# -# This is good: if we had to lock in the callbacks we'd drastically slow down -# the performance of this code. -_connection_refs = weakref.WeakValueDictionary() -_connection_ref_lock = threading.Lock() - -# Limit writes to 16kB. This is OpenSSL's limit, but we'll cargo-cult it over -# for no better reason than we need *a* limit, and this one is right there. -SSL_WRITE_BLOCKSIZE = 16384 - -# This is our equivalent of util.ssl_.DEFAULT_CIPHERS, but expanded out to -# individual cipher suites. We need to do this becuase this is how -# SecureTransport wants them. -CIPHER_SUITES = [ - SecurityConst.TLS_AES_256_GCM_SHA384, - SecurityConst.TLS_CHACHA20_POLY1305_SHA256, - SecurityConst.TLS_AES_128_GCM_SHA256, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, - SecurityConst.TLS_DHE_DSS_WITH_AES_256_GCM_SHA384, - SecurityConst.TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, - SecurityConst.TLS_DHE_DSS_WITH_AES_128_GCM_SHA256, - SecurityConst.TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, - SecurityConst.TLS_DHE_RSA_WITH_AES_256_CBC_SHA256, - SecurityConst.TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, - SecurityConst.TLS_DHE_RSA_WITH_AES_256_CBC_SHA, - SecurityConst.TLS_DHE_DSS_WITH_AES_256_CBC_SHA, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, - SecurityConst.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, - SecurityConst.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, - SecurityConst.TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, - SecurityConst.TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, - SecurityConst.TLS_DHE_RSA_WITH_AES_128_CBC_SHA, - SecurityConst.TLS_DHE_DSS_WITH_AES_128_CBC_SHA, - SecurityConst.TLS_RSA_WITH_AES_256_GCM_SHA384, - SecurityConst.TLS_RSA_WITH_AES_128_GCM_SHA256, - SecurityConst.TLS_RSA_WITH_AES_256_CBC_SHA256, - SecurityConst.TLS_RSA_WITH_AES_128_CBC_SHA256, - SecurityConst.TLS_RSA_WITH_AES_256_CBC_SHA, - SecurityConst.TLS_RSA_WITH_AES_128_CBC_SHA, -] - -# Basically this is simple: for PROTOCOL_SSLv23 we turn it into a low of -# TLSv1 and a high of TLSv1.2. For everything else, we pin to that version. -_protocol_to_min_max = { - ssl.PROTOCOL_SSLv23: (SecurityConst.kTLSProtocol1, SecurityConst.kTLSProtocol12), -} - -if hasattr(ssl, "PROTOCOL_SSLv2"): - _protocol_to_min_max[ssl.PROTOCOL_SSLv2] = ( - SecurityConst.kSSLProtocol2, SecurityConst.kSSLProtocol2 - ) -if hasattr(ssl, "PROTOCOL_SSLv3"): - _protocol_to_min_max[ssl.PROTOCOL_SSLv3] = ( - SecurityConst.kSSLProtocol3, SecurityConst.kSSLProtocol3 - ) -if hasattr(ssl, "PROTOCOL_TLSv1"): - _protocol_to_min_max[ssl.PROTOCOL_TLSv1] = ( - SecurityConst.kTLSProtocol1, SecurityConst.kTLSProtocol1 - ) -if hasattr(ssl, "PROTOCOL_TLSv1_1"): - _protocol_to_min_max[ssl.PROTOCOL_TLSv1_1] = ( - SecurityConst.kTLSProtocol11, SecurityConst.kTLSProtocol11 - ) -if hasattr(ssl, "PROTOCOL_TLSv1_2"): - _protocol_to_min_max[ssl.PROTOCOL_TLSv1_2] = ( - SecurityConst.kTLSProtocol12, SecurityConst.kTLSProtocol12 - ) -if hasattr(ssl, "PROTOCOL_TLS"): - _protocol_to_min_max[ssl.PROTOCOL_TLS] = _protocol_to_min_max[ssl.PROTOCOL_SSLv23] - - -def inject_into_urllib3(): - """ - Monkey-patch urllib3 with SecureTransport-backed SSL-support. - """ - util.ssl_.SSLContext = SecureTransportContext - util.HAS_SNI = HAS_SNI - util.ssl_.HAS_SNI = HAS_SNI - util.IS_SECURETRANSPORT = True - util.ssl_.IS_SECURETRANSPORT = True - - -def extract_from_urllib3(): - """ - Undo monkey-patching by :func:`inject_into_urllib3`. - """ - util.ssl_.SSLContext = orig_util_SSLContext - util.HAS_SNI = orig_util_HAS_SNI - util.ssl_.HAS_SNI = orig_util_HAS_SNI - util.IS_SECURETRANSPORT = False - util.ssl_.IS_SECURETRANSPORT = False - - -def _read_callback(connection_id, data_buffer, data_length_pointer): - """ - SecureTransport read callback. This is called by ST to request that data - be returned from the socket. - """ - wrapped_socket = None - try: - wrapped_socket = _connection_refs.get(connection_id) - if wrapped_socket is None: - return SecurityConst.errSSLInternal - base_socket = wrapped_socket.socket - - requested_length = data_length_pointer[0] - - timeout = wrapped_socket.gettimeout() - error = None - read_count = 0 - buffer = (ctypes.c_char * requested_length).from_address(data_buffer) - buffer_view = memoryview(buffer) - - try: - while read_count < requested_length: - if timeout is None or timeout >= 0: - readables = util.wait_for_read([base_socket], timeout) - if not readables: - raise socket.error(errno.EAGAIN, 'timed out') - - # We need to tell ctypes that we have a buffer that can be - # written to. Upsettingly, we do that like this: - chunk_size = base_socket.recv_into( - buffer_view[read_count:requested_length] - ) - read_count += chunk_size - if not chunk_size: - if not read_count: - return SecurityConst.errSSLClosedGraceful - break - except (socket.error) as e: - error = e.errno - - if error is not None and error != errno.EAGAIN: - if error == errno.ECONNRESET: - return SecurityConst.errSSLClosedAbort - raise - - data_length_pointer[0] = read_count - - if read_count != requested_length: - return SecurityConst.errSSLWouldBlock - - return 0 - except Exception as e: - if wrapped_socket is not None: - wrapped_socket._exception = e - return SecurityConst.errSSLInternal - - -def _write_callback(connection_id, data_buffer, data_length_pointer): - """ - SecureTransport write callback. This is called by ST to request that data - actually be sent on the network. - """ - wrapped_socket = None - try: - wrapped_socket = _connection_refs.get(connection_id) - if wrapped_socket is None: - return SecurityConst.errSSLInternal - base_socket = wrapped_socket.socket - - bytes_to_write = data_length_pointer[0] - data = ctypes.string_at(data_buffer, bytes_to_write) - - timeout = wrapped_socket.gettimeout() - error = None - sent = 0 - - try: - while sent < bytes_to_write: - if timeout is None or timeout >= 0: - writables = util.wait_for_write([base_socket], timeout) - if not writables: - raise socket.error(errno.EAGAIN, 'timed out') - chunk_sent = base_socket.send(data) - sent += chunk_sent - - # This has some needless copying here, but I'm not sure there's - # much value in optimising this data path. - data = data[chunk_sent:] - except (socket.error) as e: - error = e.errno - - if error is not None and error != errno.EAGAIN: - if error == errno.ECONNRESET: - return SecurityConst.errSSLClosedAbort - raise - - data_length_pointer[0] = sent - if sent != bytes_to_write: - return SecurityConst.errSSLWouldBlock - - return 0 - except Exception as e: - if wrapped_socket is not None: - wrapped_socket._exception = e - return SecurityConst.errSSLInternal - - -# We need to keep these two objects references alive: if they get GC'd while -# in use then SecureTransport could attempt to call a function that is in freed -# memory. That would be...uh...bad. Yeah, that's the word. Bad. -_read_callback_pointer = Security.SSLReadFunc(_read_callback) -_write_callback_pointer = Security.SSLWriteFunc(_write_callback) - - -class WrappedSocket(object): - """ - API-compatibility wrapper for Python's OpenSSL wrapped socket object. - - Note: _makefile_refs, _drop(), and _reuse() are needed for the garbage - collector of PyPy. - """ - def __init__(self, socket): - self.socket = socket - self.context = None - self._makefile_refs = 0 - self._closed = False - self._exception = None - self._keychain = None - self._keychain_dir = None - self._client_cert_chain = None - - # We save off the previously-configured timeout and then set it to - # zero. This is done because we use select and friends to handle the - # timeouts, but if we leave the timeout set on the lower socket then - # Python will "kindly" call select on that socket again for us. Avoid - # that by forcing the timeout to zero. - self._timeout = self.socket.gettimeout() - self.socket.settimeout(0) - - @contextlib.contextmanager - def _raise_on_error(self): - """ - A context manager that can be used to wrap calls that do I/O from - SecureTransport. If any of the I/O callbacks hit an exception, this - context manager will correctly propagate the exception after the fact. - This avoids silently swallowing those exceptions. - - It also correctly forces the socket closed. - """ - self._exception = None - - # We explicitly don't catch around this yield because in the unlikely - # event that an exception was hit in the block we don't want to swallow - # it. - yield - if self._exception is not None: - exception, self._exception = self._exception, None - self.close() - raise exception - - def _set_ciphers(self): - """ - Sets up the allowed ciphers. By default this matches the set in - util.ssl_.DEFAULT_CIPHERS, at least as supported by macOS. This is done - custom and doesn't allow changing at this time, mostly because parsing - OpenSSL cipher strings is going to be a freaking nightmare. - """ - ciphers = (Security.SSLCipherSuite * len(CIPHER_SUITES))(*CIPHER_SUITES) - result = Security.SSLSetEnabledCiphers( - self.context, ciphers, len(CIPHER_SUITES) - ) - _assert_no_error(result) - - def _custom_validate(self, verify, trust_bundle): - """ - Called when we have set custom validation. We do this in two cases: - first, when cert validation is entirely disabled; and second, when - using a custom trust DB. - """ - # If we disabled cert validation, just say: cool. - if not verify: - return - - # We want data in memory, so load it up. - if os.path.isfile(trust_bundle): - with open(trust_bundle, 'rb') as f: - trust_bundle = f.read() - - cert_array = None - trust = Security.SecTrustRef() - - try: - # Get a CFArray that contains the certs we want. - cert_array = _cert_array_from_pem(trust_bundle) - - # Ok, now the hard part. We want to get the SecTrustRef that ST has - # created for this connection, shove our CAs into it, tell ST to - # ignore everything else it knows, and then ask if it can build a - # chain. This is a buuuunch of code. - result = Security.SSLCopyPeerTrust( - self.context, ctypes.byref(trust) - ) - _assert_no_error(result) - if not trust: - raise ssl.SSLError("Failed to copy trust reference") - - result = Security.SecTrustSetAnchorCertificates(trust, cert_array) - _assert_no_error(result) - - result = Security.SecTrustSetAnchorCertificatesOnly(trust, True) - _assert_no_error(result) - - trust_result = Security.SecTrustResultType() - result = Security.SecTrustEvaluate( - trust, ctypes.byref(trust_result) - ) - _assert_no_error(result) - finally: - if trust: - CoreFoundation.CFRelease(trust) - - if cert_array is None: - CoreFoundation.CFRelease(cert_array) - - # Ok, now we can look at what the result was. - successes = ( - SecurityConst.kSecTrustResultUnspecified, - SecurityConst.kSecTrustResultProceed - ) - if trust_result.value not in successes: - raise ssl.SSLError( - "certificate verify failed, error code: %d" % - trust_result.value - ) - - def handshake(self, - server_hostname, - verify, - trust_bundle, - min_version, - max_version, - client_cert, - client_key, - client_key_passphrase): - """ - Actually performs the TLS handshake. This is run automatically by - wrapped socket, and shouldn't be needed in user code. - """ - # First, we do the initial bits of connection setup. We need to create - # a context, set its I/O funcs, and set the connection reference. - self.context = Security.SSLCreateContext( - None, SecurityConst.kSSLClientSide, SecurityConst.kSSLStreamType - ) - result = Security.SSLSetIOFuncs( - self.context, _read_callback_pointer, _write_callback_pointer - ) - _assert_no_error(result) - - # Here we need to compute the handle to use. We do this by taking the - # id of self modulo 2**31 - 1. If this is already in the dictionary, we - # just keep incrementing by one until we find a free space. - with _connection_ref_lock: - handle = id(self) % 2147483647 - while handle in _connection_refs: - handle = (handle + 1) % 2147483647 - _connection_refs[handle] = self - - result = Security.SSLSetConnection(self.context, handle) - _assert_no_error(result) - - # If we have a server hostname, we should set that too. - if server_hostname: - if not isinstance(server_hostname, bytes): - server_hostname = server_hostname.encode('utf-8') - - result = Security.SSLSetPeerDomainName( - self.context, server_hostname, len(server_hostname) - ) - _assert_no_error(result) - - # Setup the ciphers. - self._set_ciphers() - - # Set the minimum and maximum TLS versions. - result = Security.SSLSetProtocolVersionMin(self.context, min_version) - _assert_no_error(result) - result = Security.SSLSetProtocolVersionMax(self.context, max_version) - _assert_no_error(result) - - # If there's a trust DB, we need to use it. We do that by telling - # SecureTransport to break on server auth. We also do that if we don't - # want to validate the certs at all: we just won't actually do any - # authing in that case. - if not verify or trust_bundle is not None: - result = Security.SSLSetSessionOption( - self.context, - SecurityConst.kSSLSessionOptionBreakOnServerAuth, - True - ) - _assert_no_error(result) - - # If there's a client cert, we need to use it. - if client_cert: - self._keychain, self._keychain_dir = _temporary_keychain() - self._client_cert_chain = _load_client_cert_chain( - self._keychain, client_cert, client_key - ) - result = Security.SSLSetCertificate( - self.context, self._client_cert_chain - ) - _assert_no_error(result) - - while True: - with self._raise_on_error(): - result = Security.SSLHandshake(self.context) - - if result == SecurityConst.errSSLWouldBlock: - raise socket.timeout("handshake timed out") - elif result == SecurityConst.errSSLServerAuthCompleted: - self._custom_validate(verify, trust_bundle) - continue - else: - _assert_no_error(result) - break - - def fileno(self): - return self.socket.fileno() - - # Copy-pasted from Python 3.5 source code - def _decref_socketios(self): - if self._makefile_refs > 0: - self._makefile_refs -= 1 - if self._closed: - self.close() - - def recv(self, bufsiz): - buffer = ctypes.create_string_buffer(bufsiz) - bytes_read = self.recv_into(buffer, bufsiz) - data = buffer[:bytes_read] - return data - - def recv_into(self, buffer, nbytes=None): - # Read short on EOF. - if self._closed: - return 0 - - if nbytes is None: - nbytes = len(buffer) - - buffer = (ctypes.c_char * nbytes).from_buffer(buffer) - processed_bytes = ctypes.c_size_t(0) - - with self._raise_on_error(): - result = Security.SSLRead( - self.context, buffer, nbytes, ctypes.byref(processed_bytes) - ) - - # There are some result codes that we want to treat as "not always - # errors". Specifically, those are errSSLWouldBlock, - # errSSLClosedGraceful, and errSSLClosedNoNotify. - if (result == SecurityConst.errSSLWouldBlock): - # If we didn't process any bytes, then this was just a time out. - # However, we can get errSSLWouldBlock in situations when we *did* - # read some data, and in those cases we should just read "short" - # and return. - if processed_bytes.value == 0: - # Timed out, no data read. - raise socket.timeout("recv timed out") - elif result in (SecurityConst.errSSLClosedGraceful, SecurityConst.errSSLClosedNoNotify): - # The remote peer has closed this connection. We should do so as - # well. Note that we don't actually return here because in - # principle this could actually be fired along with return data. - # It's unlikely though. - self.close() - else: - _assert_no_error(result) - - # Ok, we read and probably succeeded. We should return whatever data - # was actually read. - return processed_bytes.value - - def settimeout(self, timeout): - self._timeout = timeout - - def gettimeout(self): - return self._timeout - - def send(self, data): - processed_bytes = ctypes.c_size_t(0) - - with self._raise_on_error(): - result = Security.SSLWrite( - self.context, data, len(data), ctypes.byref(processed_bytes) - ) - - if result == SecurityConst.errSSLWouldBlock and processed_bytes.value == 0: - # Timed out - raise socket.timeout("send timed out") - else: - _assert_no_error(result) - - # We sent, and probably succeeded. Tell them how much we sent. - return processed_bytes.value - - def sendall(self, data): - total_sent = 0 - while total_sent < len(data): - sent = self.send(data[total_sent:total_sent + SSL_WRITE_BLOCKSIZE]) - total_sent += sent - - def shutdown(self): - with self._raise_on_error(): - Security.SSLClose(self.context) - - def close(self): - # TODO: should I do clean shutdown here? Do I have to? - if self._makefile_refs < 1: - self._closed = True - if self.context: - CoreFoundation.CFRelease(self.context) - self.context = None - if self._client_cert_chain: - CoreFoundation.CFRelease(self._client_cert_chain) - self._client_cert_chain = None - if self._keychain: - Security.SecKeychainDelete(self._keychain) - CoreFoundation.CFRelease(self._keychain) - shutil.rmtree(self._keychain_dir) - self._keychain = self._keychain_dir = None - return self.socket.close() - else: - self._makefile_refs -= 1 - - def getpeercert(self, binary_form=False): - # Urgh, annoying. - # - # Here's how we do this: - # - # 1. Call SSLCopyPeerTrust to get hold of the trust object for this - # connection. - # 2. Call SecTrustGetCertificateAtIndex for index 0 to get the leaf. - # 3. To get the CN, call SecCertificateCopyCommonName and process that - # string so that it's of the appropriate type. - # 4. To get the SAN, we need to do something a bit more complex: - # a. Call SecCertificateCopyValues to get the data, requesting - # kSecOIDSubjectAltName. - # b. Mess about with this dictionary to try to get the SANs out. - # - # This is gross. Really gross. It's going to be a few hundred LoC extra - # just to repeat something that SecureTransport can *already do*. So my - # operating assumption at this time is that what we want to do is - # instead to just flag to urllib3 that it shouldn't do its own hostname - # validation when using SecureTransport. - if not binary_form: - raise ValueError( - "SecureTransport only supports dumping binary certs" - ) - trust = Security.SecTrustRef() - certdata = None - der_bytes = None - - try: - # Grab the trust store. - result = Security.SSLCopyPeerTrust( - self.context, ctypes.byref(trust) - ) - _assert_no_error(result) - if not trust: - # Probably we haven't done the handshake yet. No biggie. - return None - - cert_count = Security.SecTrustGetCertificateCount(trust) - if not cert_count: - # Also a case that might happen if we haven't handshaked. - # Handshook? Handshaken? - return None - - leaf = Security.SecTrustGetCertificateAtIndex(trust, 0) - assert leaf - - # Ok, now we want the DER bytes. - certdata = Security.SecCertificateCopyData(leaf) - assert certdata - - data_length = CoreFoundation.CFDataGetLength(certdata) - data_buffer = CoreFoundation.CFDataGetBytePtr(certdata) - der_bytes = ctypes.string_at(data_buffer, data_length) - finally: - if certdata: - CoreFoundation.CFRelease(certdata) - if trust: - CoreFoundation.CFRelease(trust) - - return der_bytes - - def _reuse(self): - self._makefile_refs += 1 - - def _drop(self): - if self._makefile_refs < 1: - self.close() - else: - self._makefile_refs -= 1 - - -if _fileobject: # Platform-specific: Python 2 - def makefile(self, mode, bufsize=-1): - self._makefile_refs += 1 - return _fileobject(self, mode, bufsize, close=True) -else: # Platform-specific: Python 3 - def makefile(self, mode="r", buffering=None, *args, **kwargs): - # We disable buffering with SecureTransport because it conflicts with - # the buffering that ST does internally (see issue #1153 for more). - buffering = 0 - return backport_makefile(self, mode, buffering, *args, **kwargs) - -WrappedSocket.makefile = makefile - - -class SecureTransportContext(object): - """ - I am a wrapper class for the SecureTransport library, to translate the - interface of the standard library ``SSLContext`` object to calls into - SecureTransport. - """ - def __init__(self, protocol): - self._min_version, self._max_version = _protocol_to_min_max[protocol] - self._options = 0 - self._verify = False - self._trust_bundle = None - self._client_cert = None - self._client_key = None - self._client_key_passphrase = None - - @property - def check_hostname(self): - """ - SecureTransport cannot have its hostname checking disabled. For more, - see the comment on getpeercert() in this file. - """ - return True - - @check_hostname.setter - def check_hostname(self, value): - """ - SecureTransport cannot have its hostname checking disabled. For more, - see the comment on getpeercert() in this file. - """ - pass - - @property - def options(self): - # TODO: Well, crap. - # - # So this is the bit of the code that is the most likely to cause us - # trouble. Essentially we need to enumerate all of the SSL options that - # users might want to use and try to see if we can sensibly translate - # them, or whether we should just ignore them. - return self._options - - @options.setter - def options(self, value): - # TODO: Update in line with above. - self._options = value - - @property - def verify_mode(self): - return ssl.CERT_REQUIRED if self._verify else ssl.CERT_NONE - - @verify_mode.setter - def verify_mode(self, value): - self._verify = True if value == ssl.CERT_REQUIRED else False - - def set_default_verify_paths(self): - # So, this has to do something a bit weird. Specifically, what it does - # is nothing. - # - # This means that, if we had previously had load_verify_locations - # called, this does not undo that. We need to do that because it turns - # out that the rest of the urllib3 code will attempt to load the - # default verify paths if it hasn't been told about any paths, even if - # the context itself was sometime earlier. We resolve that by just - # ignoring it. - pass - - def load_default_certs(self): - return self.set_default_verify_paths() - - def set_ciphers(self, ciphers): - # For now, we just require the default cipher string. - if ciphers != util.ssl_.DEFAULT_CIPHERS: - raise ValueError( - "SecureTransport doesn't support custom cipher strings" - ) - - def load_verify_locations(self, cafile=None, capath=None, cadata=None): - # OK, we only really support cadata and cafile. - if capath is not None: - raise ValueError( - "SecureTransport does not support cert directories" - ) - - self._trust_bundle = cafile or cadata - - def load_cert_chain(self, certfile, keyfile=None, password=None): - self._client_cert = certfile - self._client_key = keyfile - self._client_cert_passphrase = password - - def wrap_socket(self, sock, server_side=False, - do_handshake_on_connect=True, suppress_ragged_eofs=True, - server_hostname=None): - # So, what do we do here? Firstly, we assert some properties. This is a - # stripped down shim, so there is some functionality we don't support. - # See PEP 543 for the real deal. - assert not server_side - assert do_handshake_on_connect - assert suppress_ragged_eofs - - # Ok, we're good to go. Now we want to create the wrapped socket object - # and store it in the appropriate place. - wrapped_socket = WrappedSocket(sock) - - # Now we can handshake - wrapped_socket.handshake( - server_hostname, self._verify, self._trust_bundle, - self._min_version, self._max_version, self._client_cert, - self._client_key, self._client_key_passphrase - ) - return wrapped_socket diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/socks.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/socks.py deleted file mode 100644 index 6c99a75..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/contrib/socks.py +++ /dev/null @@ -1,188 +0,0 @@ -# -*- coding: utf-8 -*- -""" -This module contains provisional support for SOCKS proxies from within -urllib3. This module supports SOCKS4 (specifically the SOCKS4A variant) and -SOCKS5. To enable its functionality, either install PySocks or install this -module with the ``socks`` extra. - -The SOCKS implementation supports the full range of urllib3 features. It also -supports the following SOCKS features: - -- SOCKS4 -- SOCKS4a -- SOCKS5 -- Usernames and passwords for the SOCKS proxy - -Known Limitations: - -- Currently PySocks does not support contacting remote websites via literal - IPv6 addresses. Any such connection attempt will fail. You must use a domain - name. -- Currently PySocks does not support IPv6 connections to the SOCKS proxy. Any - such connection attempt will fail. -""" -from __future__ import absolute_import - -try: - import socks -except ImportError: - import warnings - from ..exceptions import DependencyWarning - - warnings.warn(( - 'SOCKS support in urllib3 requires the installation of optional ' - 'dependencies: specifically, PySocks. For more information, see ' - 'https://urllib3.readthedocs.io/en/latest/contrib.html#socks-proxies' - ), - DependencyWarning - ) - raise - -from socket import error as SocketError, timeout as SocketTimeout - -from ..connection import ( - HTTPConnection, HTTPSConnection -) -from ..connectionpool import ( - HTTPConnectionPool, HTTPSConnectionPool -) -from ..exceptions import ConnectTimeoutError, NewConnectionError -from ..poolmanager import PoolManager -from ..util.url import parse_url - -try: - import ssl -except ImportError: - ssl = None - - -class SOCKSConnection(HTTPConnection): - """ - A plain-text HTTP connection that connects via a SOCKS proxy. - """ - def __init__(self, *args, **kwargs): - self._socks_options = kwargs.pop('_socks_options') - super(SOCKSConnection, self).__init__(*args, **kwargs) - - def _new_conn(self): - """ - Establish a new connection via the SOCKS proxy. - """ - extra_kw = {} - if self.source_address: - extra_kw['source_address'] = self.source_address - - if self.socket_options: - extra_kw['socket_options'] = self.socket_options - - try: - conn = socks.create_connection( - (self.host, self.port), - proxy_type=self._socks_options['socks_version'], - proxy_addr=self._socks_options['proxy_host'], - proxy_port=self._socks_options['proxy_port'], - proxy_username=self._socks_options['username'], - proxy_password=self._socks_options['password'], - proxy_rdns=self._socks_options['rdns'], - timeout=self.timeout, - **extra_kw - ) - - except SocketTimeout as e: - raise ConnectTimeoutError( - self, "Connection to %s timed out. (connect timeout=%s)" % - (self.host, self.timeout)) - - except socks.ProxyError as e: - # This is fragile as hell, but it seems to be the only way to raise - # useful errors here. - if e.socket_err: - error = e.socket_err - if isinstance(error, SocketTimeout): - raise ConnectTimeoutError( - self, - "Connection to %s timed out. (connect timeout=%s)" % - (self.host, self.timeout) - ) - else: - raise NewConnectionError( - self, - "Failed to establish a new connection: %s" % error - ) - else: - raise NewConnectionError( - self, - "Failed to establish a new connection: %s" % e - ) - - except SocketError as e: # Defensive: PySocks should catch all these. - raise NewConnectionError( - self, "Failed to establish a new connection: %s" % e) - - return conn - - -# We don't need to duplicate the Verified/Unverified distinction from -# urllib3/connection.py here because the HTTPSConnection will already have been -# correctly set to either the Verified or Unverified form by that module. This -# means the SOCKSHTTPSConnection will automatically be the correct type. -class SOCKSHTTPSConnection(SOCKSConnection, HTTPSConnection): - pass - - -class SOCKSHTTPConnectionPool(HTTPConnectionPool): - ConnectionCls = SOCKSConnection - - -class SOCKSHTTPSConnectionPool(HTTPSConnectionPool): - ConnectionCls = SOCKSHTTPSConnection - - -class SOCKSProxyManager(PoolManager): - """ - A version of the urllib3 ProxyManager that routes connections via the - defined SOCKS proxy. - """ - pool_classes_by_scheme = { - 'http': SOCKSHTTPConnectionPool, - 'https': SOCKSHTTPSConnectionPool, - } - - def __init__(self, proxy_url, username=None, password=None, - num_pools=10, headers=None, **connection_pool_kw): - parsed = parse_url(proxy_url) - - if parsed.scheme == 'socks5': - socks_version = socks.PROXY_TYPE_SOCKS5 - rdns = False - elif parsed.scheme == 'socks5h': - socks_version = socks.PROXY_TYPE_SOCKS5 - rdns = True - elif parsed.scheme == 'socks4': - socks_version = socks.PROXY_TYPE_SOCKS4 - rdns = False - elif parsed.scheme == 'socks4a': - socks_version = socks.PROXY_TYPE_SOCKS4 - rdns = True - else: - raise ValueError( - "Unable to determine SOCKS version from %s" % proxy_url - ) - - self.proxy_url = proxy_url - - socks_options = { - 'socks_version': socks_version, - 'proxy_host': parsed.host, - 'proxy_port': parsed.port, - 'username': username, - 'password': password, - 'rdns': rdns - } - connection_pool_kw['_socks_options'] = socks_options - - super(SOCKSProxyManager, self).__init__( - num_pools, headers, **connection_pool_kw - ) - - self.pool_classes_by_scheme = SOCKSProxyManager.pool_classes_by_scheme diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/exceptions.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/exceptions.py deleted file mode 100644 index 670a63e..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/exceptions.py +++ /dev/null @@ -1,246 +0,0 @@ -from __future__ import absolute_import -from .packages.six.moves.http_client import ( - IncompleteRead as httplib_IncompleteRead -) -# Base Exceptions - - -class HTTPError(Exception): - "Base exception used by this module." - pass - - -class HTTPWarning(Warning): - "Base warning used by this module." - pass - - -class PoolError(HTTPError): - "Base exception for errors caused within a pool." - def __init__(self, pool, message): - self.pool = pool - HTTPError.__init__(self, "%s: %s" % (pool, message)) - - def __reduce__(self): - # For pickling purposes. - return self.__class__, (None, None) - - -class RequestError(PoolError): - "Base exception for PoolErrors that have associated URLs." - def __init__(self, pool, url, message): - self.url = url - PoolError.__init__(self, pool, message) - - def __reduce__(self): - # For pickling purposes. - return self.__class__, (None, self.url, None) - - -class SSLError(HTTPError): - "Raised when SSL certificate fails in an HTTPS connection." - pass - - -class ProxyError(HTTPError): - "Raised when the connection to a proxy fails." - pass - - -class DecodeError(HTTPError): - "Raised when automatic decoding based on Content-Type fails." - pass - - -class ProtocolError(HTTPError): - "Raised when something unexpected happens mid-request/response." - pass - - -#: Renamed to ProtocolError but aliased for backwards compatibility. -ConnectionError = ProtocolError - - -# Leaf Exceptions - -class MaxRetryError(RequestError): - """Raised when the maximum number of retries is exceeded. - - :param pool: The connection pool - :type pool: :class:`~urllib3.connectionpool.HTTPConnectionPool` - :param string url: The requested Url - :param exceptions.Exception reason: The underlying error - - """ - - def __init__(self, pool, url, reason=None): - self.reason = reason - - message = "Max retries exceeded with url: %s (Caused by %r)" % ( - url, reason) - - RequestError.__init__(self, pool, url, message) - - -class HostChangedError(RequestError): - "Raised when an existing pool gets a request for a foreign host." - - def __init__(self, pool, url, retries=3): - message = "Tried to open a foreign host with url: %s" % url - RequestError.__init__(self, pool, url, message) - self.retries = retries - - -class TimeoutStateError(HTTPError): - """ Raised when passing an invalid state to a timeout """ - pass - - -class TimeoutError(HTTPError): - """ Raised when a socket timeout error occurs. - - Catching this error will catch both :exc:`ReadTimeoutErrors - <ReadTimeoutError>` and :exc:`ConnectTimeoutErrors <ConnectTimeoutError>`. - """ - pass - - -class ReadTimeoutError(TimeoutError, RequestError): - "Raised when a socket timeout occurs while receiving data from a server" - pass - - -# This timeout error does not have a URL attached and needs to inherit from the -# base HTTPError -class ConnectTimeoutError(TimeoutError): - "Raised when a socket timeout occurs while connecting to a server" - pass - - -class NewConnectionError(ConnectTimeoutError, PoolError): - "Raised when we fail to establish a new connection. Usually ECONNREFUSED." - pass - - -class EmptyPoolError(PoolError): - "Raised when a pool runs out of connections and no more are allowed." - pass - - -class ClosedPoolError(PoolError): - "Raised when a request enters a pool after the pool has been closed." - pass - - -class LocationValueError(ValueError, HTTPError): - "Raised when there is something wrong with a given URL input." - pass - - -class LocationParseError(LocationValueError): - "Raised when get_host or similar fails to parse the URL input." - - def __init__(self, location): - message = "Failed to parse: %s" % location - HTTPError.__init__(self, message) - - self.location = location - - -class ResponseError(HTTPError): - "Used as a container for an error reason supplied in a MaxRetryError." - GENERIC_ERROR = 'too many error responses' - SPECIFIC_ERROR = 'too many {status_code} error responses' - - -class SecurityWarning(HTTPWarning): - "Warned when perfoming security reducing actions" - pass - - -class SubjectAltNameWarning(SecurityWarning): - "Warned when connecting to a host with a certificate missing a SAN." - pass - - -class InsecureRequestWarning(SecurityWarning): - "Warned when making an unverified HTTPS request." - pass - - -class SystemTimeWarning(SecurityWarning): - "Warned when system time is suspected to be wrong" - pass - - -class InsecurePlatformWarning(SecurityWarning): - "Warned when certain SSL configuration is not available on a platform." - pass - - -class SNIMissingWarning(HTTPWarning): - "Warned when making a HTTPS request without SNI available." - pass - - -class DependencyWarning(HTTPWarning): - """ - Warned when an attempt is made to import a module with missing optional - dependencies. - """ - pass - - -class ResponseNotChunked(ProtocolError, ValueError): - "Response needs to be chunked in order to read it as chunks." - pass - - -class BodyNotHttplibCompatible(HTTPError): - """ - Body should be httplib.HTTPResponse like (have an fp attribute which - returns raw chunks) for read_chunked(). - """ - pass - - -class IncompleteRead(HTTPError, httplib_IncompleteRead): - """ - Response length doesn't match expected Content-Length - - Subclass of http_client.IncompleteRead to allow int value - for `partial` to avoid creating large objects on streamed - reads. - """ - def __init__(self, partial, expected): - super(IncompleteRead, self).__init__(partial, expected) - - def __repr__(self): - return ('IncompleteRead(%i bytes read, ' - '%i more expected)' % (self.partial, self.expected)) - - -class InvalidHeader(HTTPError): - "The header provided was somehow invalid." - pass - - -class ProxySchemeUnknown(AssertionError, ValueError): - "ProxyManager does not support the supplied scheme" - # TODO(t-8ch): Stop inheriting from AssertionError in v2.0. - - def __init__(self, scheme): - message = "Not supported proxy scheme %s" % scheme - super(ProxySchemeUnknown, self).__init__(message) - - -class HeaderParsingError(HTTPError): - "Raised by assert_header_parsing, but we convert it to a log.warning statement." - def __init__(self, defects, unparsed_data): - message = '%s, unparsed data: %r' % (defects or 'Unknown', unparsed_data) - super(HeaderParsingError, self).__init__(message) - - -class UnrewindableBodyError(HTTPError): - "urllib3 encountered an error when trying to rewind a body" - pass diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/fields.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/fields.py deleted file mode 100644 index 8e15621..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/fields.py +++ /dev/null @@ -1,178 +0,0 @@ -from __future__ import absolute_import -import email.utils -import mimetypes - -from .packages import six - - -def guess_content_type(filename, default='application/octet-stream'): - """ - Guess the "Content-Type" of a file. - - :param filename: - The filename to guess the "Content-Type" of using :mod:`mimetypes`. - :param default: - If no "Content-Type" can be guessed, default to `default`. - """ - if filename: - return mimetypes.guess_type(filename)[0] or default - return default - - -def format_header_param(name, value): - """ - Helper function to format and quote a single header parameter. - - Particularly useful for header parameters which might contain - non-ASCII values, like file names. This follows RFC 2231, as - suggested by RFC 2388 Section 4.4. - - :param name: - The name of the parameter, a string expected to be ASCII only. - :param value: - The value of the parameter, provided as a unicode string. - """ - if not any(ch in value for ch in '"\\\r\n'): - result = '%s="%s"' % (name, value) - try: - result.encode('ascii') - except (UnicodeEncodeError, UnicodeDecodeError): - pass - else: - return result - if not six.PY3 and isinstance(value, six.text_type): # Python 2: - value = value.encode('utf-8') - value = email.utils.encode_rfc2231(value, 'utf-8') - value = '%s*=%s' % (name, value) - return value - - -class RequestField(object): - """ - A data container for request body parameters. - - :param name: - The name of this request field. - :param data: - The data/value body. - :param filename: - An optional filename of the request field. - :param headers: - An optional dict-like object of headers to initially use for the field. - """ - def __init__(self, name, data, filename=None, headers=None): - self._name = name - self._filename = filename - self.data = data - self.headers = {} - if headers: - self.headers = dict(headers) - - @classmethod - def from_tuples(cls, fieldname, value): - """ - A :class:`~urllib3.fields.RequestField` factory from old-style tuple parameters. - - Supports constructing :class:`~urllib3.fields.RequestField` from - parameter of key/value strings AND key/filetuple. A filetuple is a - (filename, data, MIME type) tuple where the MIME type is optional. - For example:: - - 'foo': 'bar', - 'fakefile': ('foofile.txt', 'contents of foofile'), - 'realfile': ('barfile.txt', open('realfile').read()), - 'typedfile': ('bazfile.bin', open('bazfile').read(), 'image/jpeg'), - 'nonamefile': 'contents of nonamefile field', - - Field names and filenames must be unicode. - """ - if isinstance(value, tuple): - if len(value) == 3: - filename, data, content_type = value - else: - filename, data = value - content_type = guess_content_type(filename) - else: - filename = None - content_type = None - data = value - - request_param = cls(fieldname, data, filename=filename) - request_param.make_multipart(content_type=content_type) - - return request_param - - def _render_part(self, name, value): - """ - Overridable helper function to format a single header parameter. - - :param name: - The name of the parameter, a string expected to be ASCII only. - :param value: - The value of the parameter, provided as a unicode string. - """ - return format_header_param(name, value) - - def _render_parts(self, header_parts): - """ - Helper function to format and quote a single header. - - Useful for single headers that are composed of multiple items. E.g., - 'Content-Disposition' fields. - - :param header_parts: - A sequence of (k, v) typles or a :class:`dict` of (k, v) to format - as `k1="v1"; k2="v2"; ...`. - """ - parts = [] - iterable = header_parts - if isinstance(header_parts, dict): - iterable = header_parts.items() - - for name, value in iterable: - if value is not None: - parts.append(self._render_part(name, value)) - - return '; '.join(parts) - - def render_headers(self): - """ - Renders the headers for this request field. - """ - lines = [] - - sort_keys = ['Content-Disposition', 'Content-Type', 'Content-Location'] - for sort_key in sort_keys: - if self.headers.get(sort_key, False): - lines.append('%s: %s' % (sort_key, self.headers[sort_key])) - - for header_name, header_value in self.headers.items(): - if header_name not in sort_keys: - if header_value: - lines.append('%s: %s' % (header_name, header_value)) - - lines.append('\r\n') - return '\r\n'.join(lines) - - def make_multipart(self, content_disposition=None, content_type=None, - content_location=None): - """ - Makes this request field into a multipart request field. - - This method overrides "Content-Disposition", "Content-Type" and - "Content-Location" headers to the request parameter. - - :param content_type: - The 'Content-Type' of the request body. - :param content_location: - The 'Content-Location' of the request body. - - """ - self.headers['Content-Disposition'] = content_disposition or 'form-data' - self.headers['Content-Disposition'] += '; '.join([ - '', self._render_parts( - (('name', self._name), ('filename', self._filename)) - ) - ]) - self.headers['Content-Type'] = content_type - self.headers['Content-Location'] = content_location diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/filepost.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/filepost.py deleted file mode 100644 index e53dedc..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/filepost.py +++ /dev/null @@ -1,94 +0,0 @@ -from __future__ import absolute_import -import codecs - -from uuid import uuid4 -from io import BytesIO - -from .packages import six -from .packages.six import b -from .fields import RequestField - -writer = codecs.lookup('utf-8')[3] - - -def choose_boundary(): - """ - Our embarrassingly-simple replacement for mimetools.choose_boundary. - """ - return uuid4().hex - - -def iter_field_objects(fields): - """ - Iterate over fields. - - Supports list of (k, v) tuples and dicts, and lists of - :class:`~urllib3.fields.RequestField`. - - """ - if isinstance(fields, dict): - i = six.iteritems(fields) - else: - i = iter(fields) - - for field in i: - if isinstance(field, RequestField): - yield field - else: - yield RequestField.from_tuples(*field) - - -def iter_fields(fields): - """ - .. deprecated:: 1.6 - - Iterate over fields. - - The addition of :class:`~urllib3.fields.RequestField` makes this function - obsolete. Instead, use :func:`iter_field_objects`, which returns - :class:`~urllib3.fields.RequestField` objects. - - Supports list of (k, v) tuples and dicts. - """ - if isinstance(fields, dict): - return ((k, v) for k, v in six.iteritems(fields)) - - return ((k, v) for k, v in fields) - - -def encode_multipart_formdata(fields, boundary=None): - """ - Encode a dictionary of ``fields`` using the multipart/form-data MIME format. - - :param fields: - Dictionary of fields or list of (key, :class:`~urllib3.fields.RequestField`). - - :param boundary: - If not specified, then a random boundary will be generated using - :func:`mimetools.choose_boundary`. - """ - body = BytesIO() - if boundary is None: - boundary = choose_boundary() - - for field in iter_field_objects(fields): - body.write(b('--%s\r\n' % (boundary))) - - writer(body).write(field.render_headers()) - data = field.data - - if isinstance(data, int): - data = str(data) # Backwards compatibility - - if isinstance(data, six.text_type): - writer(body).write(data) - else: - body.write(data) - - body.write(b'\r\n') - - body.write(b('--%s--\r\n' % (boundary))) - - content_type = str('multipart/form-data; boundary=%s' % boundary) - - return body.getvalue(), content_type diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/__init__.py deleted file mode 100644 index 324c551..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/__init__.py +++ /dev/null @@ -1,5 +0,0 @@ -from __future__ import absolute_import - -from . import ssl_match_hostname - -__all__ = ('ssl_match_hostname', ) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/makefile.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/makefile.py deleted file mode 100644 index 00dee0b..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/backports/makefile.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -""" -backports.makefile -~~~~~~~~~~~~~~~~~~ - -Backports the Python 3 ``socket.makefile`` method for use with anything that -wants to create a "fake" socket object. -""" -import io - -from socket import SocketIO - - -def backport_makefile(self, mode="r", buffering=None, encoding=None, - errors=None, newline=None): - """ - Backport of ``socket.makefile`` from Python 3.5. - """ - if not set(mode) <= set(["r", "w", "b"]): - raise ValueError( - "invalid mode %r (only r, w, b allowed)" % (mode,) - ) - writing = "w" in mode - reading = "r" in mode or not writing - assert reading or writing - binary = "b" in mode - rawmode = "" - if reading: - rawmode += "r" - if writing: - rawmode += "w" - raw = SocketIO(self, rawmode) - self._makefile_refs += 1 - if buffering is None: - buffering = -1 - if buffering < 0: - buffering = io.DEFAULT_BUFFER_SIZE - if buffering == 0: - if not binary: - raise ValueError("unbuffered streams must be binary") - return raw - if reading and writing: - buffer = io.BufferedRWPair(raw, raw, buffering) - elif reading: - buffer = io.BufferedReader(raw, buffering) - else: - assert writing - buffer = io.BufferedWriter(raw, buffering) - if binary: - return buffer - text = io.TextIOWrapper(buffer, encoding, errors, newline) - text.mode = mode - return text diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ordered_dict.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ordered_dict.py deleted file mode 100644 index 62dcb42..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ordered_dict.py +++ /dev/null @@ -1,259 +0,0 @@ -# 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. -# Copyright 2009 Raymond Hettinger, released under the MIT License. -# http://code.activestate.com/recipes/576693/ -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={}): - 'od.__repr__() <==> repr(od)' - 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) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/six.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/six.py deleted file mode 100644 index 7bd9225..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/six.py +++ /dev/null @@ -1,868 +0,0 @@ -"""Utilities for writing code that runs on Python 2 and 3""" - -# Copyright (c) 2010-2015 Benjamin Peterson -# -# 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 absolute_import - -import functools -import itertools -import operator -import sys -import types - -__author__ = "Benjamin Peterson <benjamin@python.org>" -__version__ = "1.10.0" - - -# Useful for very coarse version differentiation. -PY2 = sys.version_info[0] == 2 -PY3 = sys.version_info[0] == 3 -PY34 = sys.version_info[0:2] >= (3, 4) - -if PY3: - string_types = str, - integer_types = int, - class_types = type, - text_type = str - binary_type = bytes - - MAXSIZE = sys.maxsize -else: - string_types = basestring, - integer_types = (int, long) - class_types = (type, types.ClassType) - text_type = unicode - binary_type = str - - if sys.platform.startswith("java"): - # Jython always uses 32 bits. - MAXSIZE = int((1 << 31) - 1) - else: - # It's possible to have sizeof(long) != sizeof(Py_ssize_t). - class X(object): - - def __len__(self): - return 1 << 31 - try: - len(X()) - except OverflowError: - # 32-bit - MAXSIZE = int((1 << 31) - 1) - else: - # 64-bit - MAXSIZE = int((1 << 63) - 1) - del X - - -def _add_doc(func, doc): - """Add documentation to a function.""" - func.__doc__ = doc - - -def _import_module(name): - """Import module, returning the module after the last dot.""" - __import__(name) - return sys.modules[name] - - -class _LazyDescr(object): - - def __init__(self, name): - self.name = name - - def __get__(self, obj, tp): - result = self._resolve() - setattr(obj, self.name, result) # Invokes __set__. - try: - # This is a bit ugly, but it avoids running this again by - # removing this descriptor. - delattr(obj.__class__, self.name) - except AttributeError: - pass - return result - - -class MovedModule(_LazyDescr): - - def __init__(self, name, old, new=None): - super(MovedModule, self).__init__(name) - if PY3: - if new is None: - new = name - self.mod = new - else: - self.mod = old - - def _resolve(self): - return _import_module(self.mod) - - def __getattr__(self, attr): - _module = self._resolve() - value = getattr(_module, attr) - setattr(self, attr, value) - return value - - -class _LazyModule(types.ModuleType): - - def __init__(self, name): - super(_LazyModule, self).__init__(name) - self.__doc__ = self.__class__.__doc__ - - def __dir__(self): - attrs = ["__doc__", "__name__"] - attrs += [attr.name for attr in self._moved_attributes] - return attrs - - # Subclasses should override this - _moved_attributes = [] - - -class MovedAttribute(_LazyDescr): - - def __init__(self, name, old_mod, new_mod, old_attr=None, new_attr=None): - super(MovedAttribute, self).__init__(name) - if PY3: - if new_mod is None: - new_mod = name - self.mod = new_mod - if new_attr is None: - if old_attr is None: - new_attr = name - else: - new_attr = old_attr - self.attr = new_attr - else: - self.mod = old_mod - if old_attr is None: - old_attr = name - self.attr = old_attr - - def _resolve(self): - module = _import_module(self.mod) - return getattr(module, self.attr) - - -class _SixMetaPathImporter(object): - - """ - A meta path importer to import six.moves and its submodules. - - This class implements a PEP302 finder and loader. It should be compatible - with Python 2.5 and all existing versions of Python3 - """ - - def __init__(self, six_module_name): - self.name = six_module_name - self.known_modules = {} - - def _add_module(self, mod, *fullnames): - for fullname in fullnames: - self.known_modules[self.name + "." + fullname] = mod - - def _get_module(self, fullname): - return self.known_modules[self.name + "." + fullname] - - def find_module(self, fullname, path=None): - if fullname in self.known_modules: - return self - return None - - def __get_module(self, fullname): - try: - return self.known_modules[fullname] - except KeyError: - raise ImportError("This loader does not know module " + fullname) - - def load_module(self, fullname): - try: - # in case of a reload - return sys.modules[fullname] - except KeyError: - pass - mod = self.__get_module(fullname) - if isinstance(mod, MovedModule): - mod = mod._resolve() - else: - mod.__loader__ = self - sys.modules[fullname] = mod - return mod - - def is_package(self, fullname): - """ - Return true, if the named module is a package. - - We need this method to get correct spec objects with - Python 3.4 (see PEP451) - """ - return hasattr(self.__get_module(fullname), "__path__") - - def get_code(self, fullname): - """Return None - - Required, if is_package is implemented""" - self.__get_module(fullname) # eventually raises ImportError - return None - get_source = get_code # same as get_code - -_importer = _SixMetaPathImporter(__name__) - - -class _MovedItems(_LazyModule): - - """Lazy loading of moved objects""" - __path__ = [] # mark as package - - -_moved_attributes = [ - MovedAttribute("cStringIO", "cStringIO", "io", "StringIO"), - MovedAttribute("filter", "itertools", "builtins", "ifilter", "filter"), - MovedAttribute("filterfalse", "itertools", "itertools", "ifilterfalse", "filterfalse"), - MovedAttribute("input", "__builtin__", "builtins", "raw_input", "input"), - MovedAttribute("intern", "__builtin__", "sys"), - MovedAttribute("map", "itertools", "builtins", "imap", "map"), - MovedAttribute("getcwd", "os", "os", "getcwdu", "getcwd"), - MovedAttribute("getcwdb", "os", "os", "getcwd", "getcwdb"), - MovedAttribute("range", "__builtin__", "builtins", "xrange", "range"), - MovedAttribute("reload_module", "__builtin__", "importlib" if PY34 else "imp", "reload"), - MovedAttribute("reduce", "__builtin__", "functools"), - MovedAttribute("shlex_quote", "pipes", "shlex", "quote"), - MovedAttribute("StringIO", "StringIO", "io"), - MovedAttribute("UserDict", "UserDict", "collections"), - MovedAttribute("UserList", "UserList", "collections"), - MovedAttribute("UserString", "UserString", "collections"), - MovedAttribute("xrange", "__builtin__", "builtins", "xrange", "range"), - MovedAttribute("zip", "itertools", "builtins", "izip", "zip"), - MovedAttribute("zip_longest", "itertools", "itertools", "izip_longest", "zip_longest"), - MovedModule("builtins", "__builtin__"), - MovedModule("configparser", "ConfigParser"), - MovedModule("copyreg", "copy_reg"), - MovedModule("dbm_gnu", "gdbm", "dbm.gnu"), - MovedModule("_dummy_thread", "dummy_thread", "_dummy_thread"), - MovedModule("http_cookiejar", "cookielib", "http.cookiejar"), - MovedModule("http_cookies", "Cookie", "http.cookies"), - MovedModule("html_entities", "htmlentitydefs", "html.entities"), - MovedModule("html_parser", "HTMLParser", "html.parser"), - MovedModule("http_client", "httplib", "http.client"), - MovedModule("email_mime_multipart", "email.MIMEMultipart", "email.mime.multipart"), - MovedModule("email_mime_nonmultipart", "email.MIMENonMultipart", "email.mime.nonmultipart"), - MovedModule("email_mime_text", "email.MIMEText", "email.mime.text"), - MovedModule("email_mime_base", "email.MIMEBase", "email.mime.base"), - MovedModule("BaseHTTPServer", "BaseHTTPServer", "http.server"), - MovedModule("CGIHTTPServer", "CGIHTTPServer", "http.server"), - MovedModule("SimpleHTTPServer", "SimpleHTTPServer", "http.server"), - MovedModule("cPickle", "cPickle", "pickle"), - MovedModule("queue", "Queue"), - MovedModule("reprlib", "repr"), - MovedModule("socketserver", "SocketServer"), - MovedModule("_thread", "thread", "_thread"), - MovedModule("tkinter", "Tkinter"), - MovedModule("tkinter_dialog", "Dialog", "tkinter.dialog"), - MovedModule("tkinter_filedialog", "FileDialog", "tkinter.filedialog"), - MovedModule("tkinter_scrolledtext", "ScrolledText", "tkinter.scrolledtext"), - MovedModule("tkinter_simpledialog", "SimpleDialog", "tkinter.simpledialog"), - MovedModule("tkinter_tix", "Tix", "tkinter.tix"), - MovedModule("tkinter_ttk", "ttk", "tkinter.ttk"), - MovedModule("tkinter_constants", "Tkconstants", "tkinter.constants"), - MovedModule("tkinter_dnd", "Tkdnd", "tkinter.dnd"), - MovedModule("tkinter_colorchooser", "tkColorChooser", - "tkinter.colorchooser"), - MovedModule("tkinter_commondialog", "tkCommonDialog", - "tkinter.commondialog"), - MovedModule("tkinter_tkfiledialog", "tkFileDialog", "tkinter.filedialog"), - MovedModule("tkinter_font", "tkFont", "tkinter.font"), - MovedModule("tkinter_messagebox", "tkMessageBox", "tkinter.messagebox"), - MovedModule("tkinter_tksimpledialog", "tkSimpleDialog", - "tkinter.simpledialog"), - MovedModule("urllib_parse", __name__ + ".moves.urllib_parse", "urllib.parse"), - MovedModule("urllib_error", __name__ + ".moves.urllib_error", "urllib.error"), - MovedModule("urllib", __name__ + ".moves.urllib", __name__ + ".moves.urllib"), - MovedModule("urllib_robotparser", "robotparser", "urllib.robotparser"), - MovedModule("xmlrpc_client", "xmlrpclib", "xmlrpc.client"), - MovedModule("xmlrpc_server", "SimpleXMLRPCServer", "xmlrpc.server"), -] -# Add windows specific modules. -if sys.platform == "win32": - _moved_attributes += [ - MovedModule("winreg", "_winreg"), - ] - -for attr in _moved_attributes: - setattr(_MovedItems, attr.name, attr) - if isinstance(attr, MovedModule): - _importer._add_module(attr, "moves." + attr.name) -del attr - -_MovedItems._moved_attributes = _moved_attributes - -moves = _MovedItems(__name__ + ".moves") -_importer._add_module(moves, "moves") - - -class Module_six_moves_urllib_parse(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_parse""" - - -_urllib_parse_moved_attributes = [ - MovedAttribute("ParseResult", "urlparse", "urllib.parse"), - MovedAttribute("SplitResult", "urlparse", "urllib.parse"), - MovedAttribute("parse_qs", "urlparse", "urllib.parse"), - MovedAttribute("parse_qsl", "urlparse", "urllib.parse"), - MovedAttribute("urldefrag", "urlparse", "urllib.parse"), - MovedAttribute("urljoin", "urlparse", "urllib.parse"), - MovedAttribute("urlparse", "urlparse", "urllib.parse"), - MovedAttribute("urlsplit", "urlparse", "urllib.parse"), - MovedAttribute("urlunparse", "urlparse", "urllib.parse"), - MovedAttribute("urlunsplit", "urlparse", "urllib.parse"), - MovedAttribute("quote", "urllib", "urllib.parse"), - MovedAttribute("quote_plus", "urllib", "urllib.parse"), - MovedAttribute("unquote", "urllib", "urllib.parse"), - MovedAttribute("unquote_plus", "urllib", "urllib.parse"), - MovedAttribute("urlencode", "urllib", "urllib.parse"), - MovedAttribute("splitquery", "urllib", "urllib.parse"), - MovedAttribute("splittag", "urllib", "urllib.parse"), - MovedAttribute("splituser", "urllib", "urllib.parse"), - MovedAttribute("uses_fragment", "urlparse", "urllib.parse"), - MovedAttribute("uses_netloc", "urlparse", "urllib.parse"), - MovedAttribute("uses_params", "urlparse", "urllib.parse"), - MovedAttribute("uses_query", "urlparse", "urllib.parse"), - MovedAttribute("uses_relative", "urlparse", "urllib.parse"), -] -for attr in _urllib_parse_moved_attributes: - setattr(Module_six_moves_urllib_parse, attr.name, attr) -del attr - -Module_six_moves_urllib_parse._moved_attributes = _urllib_parse_moved_attributes - -_importer._add_module(Module_six_moves_urllib_parse(__name__ + ".moves.urllib_parse"), - "moves.urllib_parse", "moves.urllib.parse") - - -class Module_six_moves_urllib_error(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_error""" - - -_urllib_error_moved_attributes = [ - MovedAttribute("URLError", "urllib2", "urllib.error"), - MovedAttribute("HTTPError", "urllib2", "urllib.error"), - MovedAttribute("ContentTooShortError", "urllib", "urllib.error"), -] -for attr in _urllib_error_moved_attributes: - setattr(Module_six_moves_urllib_error, attr.name, attr) -del attr - -Module_six_moves_urllib_error._moved_attributes = _urllib_error_moved_attributes - -_importer._add_module(Module_six_moves_urllib_error(__name__ + ".moves.urllib.error"), - "moves.urllib_error", "moves.urllib.error") - - -class Module_six_moves_urllib_request(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_request""" - - -_urllib_request_moved_attributes = [ - MovedAttribute("urlopen", "urllib2", "urllib.request"), - MovedAttribute("install_opener", "urllib2", "urllib.request"), - MovedAttribute("build_opener", "urllib2", "urllib.request"), - MovedAttribute("pathname2url", "urllib", "urllib.request"), - MovedAttribute("url2pathname", "urllib", "urllib.request"), - MovedAttribute("getproxies", "urllib", "urllib.request"), - MovedAttribute("Request", "urllib2", "urllib.request"), - MovedAttribute("OpenerDirector", "urllib2", "urllib.request"), - MovedAttribute("HTTPDefaultErrorHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPRedirectHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPCookieProcessor", "urllib2", "urllib.request"), - MovedAttribute("ProxyHandler", "urllib2", "urllib.request"), - MovedAttribute("BaseHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPPasswordMgr", "urllib2", "urllib.request"), - MovedAttribute("HTTPPasswordMgrWithDefaultRealm", "urllib2", "urllib.request"), - MovedAttribute("AbstractBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("ProxyBasicAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("AbstractDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("ProxyDigestAuthHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPSHandler", "urllib2", "urllib.request"), - MovedAttribute("FileHandler", "urllib2", "urllib.request"), - MovedAttribute("FTPHandler", "urllib2", "urllib.request"), - MovedAttribute("CacheFTPHandler", "urllib2", "urllib.request"), - MovedAttribute("UnknownHandler", "urllib2", "urllib.request"), - MovedAttribute("HTTPErrorProcessor", "urllib2", "urllib.request"), - MovedAttribute("urlretrieve", "urllib", "urllib.request"), - MovedAttribute("urlcleanup", "urllib", "urllib.request"), - MovedAttribute("URLopener", "urllib", "urllib.request"), - MovedAttribute("FancyURLopener", "urllib", "urllib.request"), - MovedAttribute("proxy_bypass", "urllib", "urllib.request"), -] -for attr in _urllib_request_moved_attributes: - setattr(Module_six_moves_urllib_request, attr.name, attr) -del attr - -Module_six_moves_urllib_request._moved_attributes = _urllib_request_moved_attributes - -_importer._add_module(Module_six_moves_urllib_request(__name__ + ".moves.urllib.request"), - "moves.urllib_request", "moves.urllib.request") - - -class Module_six_moves_urllib_response(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_response""" - - -_urllib_response_moved_attributes = [ - MovedAttribute("addbase", "urllib", "urllib.response"), - MovedAttribute("addclosehook", "urllib", "urllib.response"), - MovedAttribute("addinfo", "urllib", "urllib.response"), - MovedAttribute("addinfourl", "urllib", "urllib.response"), -] -for attr in _urllib_response_moved_attributes: - setattr(Module_six_moves_urllib_response, attr.name, attr) -del attr - -Module_six_moves_urllib_response._moved_attributes = _urllib_response_moved_attributes - -_importer._add_module(Module_six_moves_urllib_response(__name__ + ".moves.urllib.response"), - "moves.urllib_response", "moves.urllib.response") - - -class Module_six_moves_urllib_robotparser(_LazyModule): - - """Lazy loading of moved objects in six.moves.urllib_robotparser""" - - -_urllib_robotparser_moved_attributes = [ - MovedAttribute("RobotFileParser", "robotparser", "urllib.robotparser"), -] -for attr in _urllib_robotparser_moved_attributes: - setattr(Module_six_moves_urllib_robotparser, attr.name, attr) -del attr - -Module_six_moves_urllib_robotparser._moved_attributes = _urllib_robotparser_moved_attributes - -_importer._add_module(Module_six_moves_urllib_robotparser(__name__ + ".moves.urllib.robotparser"), - "moves.urllib_robotparser", "moves.urllib.robotparser") - - -class Module_six_moves_urllib(types.ModuleType): - - """Create a six.moves.urllib namespace that resembles the Python 3 namespace""" - __path__ = [] # mark as package - parse = _importer._get_module("moves.urllib_parse") - error = _importer._get_module("moves.urllib_error") - request = _importer._get_module("moves.urllib_request") - response = _importer._get_module("moves.urllib_response") - robotparser = _importer._get_module("moves.urllib_robotparser") - - def __dir__(self): - return ['parse', 'error', 'request', 'response', 'robotparser'] - -_importer._add_module(Module_six_moves_urllib(__name__ + ".moves.urllib"), - "moves.urllib") - - -def add_move(move): - """Add an item to six.moves.""" - setattr(_MovedItems, move.name, move) - - -def remove_move(name): - """Remove item from six.moves.""" - try: - delattr(_MovedItems, name) - except AttributeError: - try: - del moves.__dict__[name] - except KeyError: - raise AttributeError("no such move, %r" % (name,)) - - -if PY3: - _meth_func = "__func__" - _meth_self = "__self__" - - _func_closure = "__closure__" - _func_code = "__code__" - _func_defaults = "__defaults__" - _func_globals = "__globals__" -else: - _meth_func = "im_func" - _meth_self = "im_self" - - _func_closure = "func_closure" - _func_code = "func_code" - _func_defaults = "func_defaults" - _func_globals = "func_globals" - - -try: - advance_iterator = next -except NameError: - def advance_iterator(it): - return it.next() -next = advance_iterator - - -try: - callable = callable -except NameError: - def callable(obj): - return any("__call__" in klass.__dict__ for klass in type(obj).__mro__) - - -if PY3: - def get_unbound_function(unbound): - return unbound - - create_bound_method = types.MethodType - - def create_unbound_method(func, cls): - return func - - Iterator = object -else: - def get_unbound_function(unbound): - return unbound.im_func - - def create_bound_method(func, obj): - return types.MethodType(func, obj, obj.__class__) - - def create_unbound_method(func, cls): - return types.MethodType(func, None, cls) - - class Iterator(object): - - def next(self): - return type(self).__next__(self) - - callable = callable -_add_doc(get_unbound_function, - """Get the function out of a possibly unbound function""") - - -get_method_function = operator.attrgetter(_meth_func) -get_method_self = operator.attrgetter(_meth_self) -get_function_closure = operator.attrgetter(_func_closure) -get_function_code = operator.attrgetter(_func_code) -get_function_defaults = operator.attrgetter(_func_defaults) -get_function_globals = operator.attrgetter(_func_globals) - - -if PY3: - def iterkeys(d, **kw): - return iter(d.keys(**kw)) - - def itervalues(d, **kw): - return iter(d.values(**kw)) - - def iteritems(d, **kw): - return iter(d.items(**kw)) - - def iterlists(d, **kw): - return iter(d.lists(**kw)) - - viewkeys = operator.methodcaller("keys") - - viewvalues = operator.methodcaller("values") - - viewitems = operator.methodcaller("items") -else: - def iterkeys(d, **kw): - return d.iterkeys(**kw) - - def itervalues(d, **kw): - return d.itervalues(**kw) - - def iteritems(d, **kw): - return d.iteritems(**kw) - - def iterlists(d, **kw): - return d.iterlists(**kw) - - viewkeys = operator.methodcaller("viewkeys") - - viewvalues = operator.methodcaller("viewvalues") - - viewitems = operator.methodcaller("viewitems") - -_add_doc(iterkeys, "Return an iterator over the keys of a dictionary.") -_add_doc(itervalues, "Return an iterator over the values of a dictionary.") -_add_doc(iteritems, - "Return an iterator over the (key, value) pairs of a dictionary.") -_add_doc(iterlists, - "Return an iterator over the (key, [values]) pairs of a dictionary.") - - -if PY3: - def b(s): - return s.encode("latin-1") - - def u(s): - return s - unichr = chr - import struct - int2byte = struct.Struct(">B").pack - del struct - byte2int = operator.itemgetter(0) - indexbytes = operator.getitem - iterbytes = iter - import io - StringIO = io.StringIO - BytesIO = io.BytesIO - _assertCountEqual = "assertCountEqual" - if sys.version_info[1] <= 1: - _assertRaisesRegex = "assertRaisesRegexp" - _assertRegex = "assertRegexpMatches" - else: - _assertRaisesRegex = "assertRaisesRegex" - _assertRegex = "assertRegex" -else: - def b(s): - return s - # Workaround for standalone backslash - - def u(s): - return unicode(s.replace(r'\\', r'\\\\'), "unicode_escape") - unichr = unichr - int2byte = chr - - def byte2int(bs): - return ord(bs[0]) - - def indexbytes(buf, i): - return ord(buf[i]) - iterbytes = functools.partial(itertools.imap, ord) - import StringIO - StringIO = BytesIO = StringIO.StringIO - _assertCountEqual = "assertItemsEqual" - _assertRaisesRegex = "assertRaisesRegexp" - _assertRegex = "assertRegexpMatches" -_add_doc(b, """Byte literal""") -_add_doc(u, """Text literal""") - - -def assertCountEqual(self, *args, **kwargs): - return getattr(self, _assertCountEqual)(*args, **kwargs) - - -def assertRaisesRegex(self, *args, **kwargs): - return getattr(self, _assertRaisesRegex)(*args, **kwargs) - - -def assertRegex(self, *args, **kwargs): - return getattr(self, _assertRegex)(*args, **kwargs) - - -if PY3: - exec_ = getattr(moves.builtins, "exec") - - def reraise(tp, value, tb=None): - if value is None: - value = tp() - if value.__traceback__ is not tb: - raise value.with_traceback(tb) - raise value - -else: - def exec_(_code_, _globs_=None, _locs_=None): - """Execute code in a namespace.""" - if _globs_ is None: - frame = sys._getframe(1) - _globs_ = frame.f_globals - if _locs_ is None: - _locs_ = frame.f_locals - del frame - elif _locs_ is None: - _locs_ = _globs_ - exec("""exec _code_ in _globs_, _locs_""") - - exec_("""def reraise(tp, value, tb=None): - raise tp, value, tb -""") - - -if sys.version_info[:2] == (3, 2): - exec_("""def raise_from(value, from_value): - if from_value is None: - raise value - raise value from from_value -""") -elif sys.version_info[:2] > (3, 2): - exec_("""def raise_from(value, from_value): - raise value from from_value -""") -else: - def raise_from(value, from_value): - raise value - - -print_ = getattr(moves.builtins, "print", None) -if print_ is None: - def print_(*args, **kwargs): - """The new-style print function for Python 2.4 and 2.5.""" - fp = kwargs.pop("file", sys.stdout) - if fp is None: - return - - def write(data): - if not isinstance(data, basestring): - data = str(data) - # If the file has an encoding, encode unicode with it. - if (isinstance(fp, file) and - isinstance(data, unicode) and - fp.encoding is not None): - errors = getattr(fp, "errors", None) - if errors is None: - errors = "strict" - data = data.encode(fp.encoding, errors) - fp.write(data) - want_unicode = False - sep = kwargs.pop("sep", None) - if sep is not None: - if isinstance(sep, unicode): - want_unicode = True - elif not isinstance(sep, str): - raise TypeError("sep must be None or a string") - end = kwargs.pop("end", None) - if end is not None: - if isinstance(end, unicode): - want_unicode = True - elif not isinstance(end, str): - raise TypeError("end must be None or a string") - if kwargs: - raise TypeError("invalid keyword arguments to print()") - if not want_unicode: - for arg in args: - if isinstance(arg, unicode): - want_unicode = True - break - if want_unicode: - newline = unicode("\n") - space = unicode(" ") - else: - newline = "\n" - space = " " - if sep is None: - sep = space - if end is None: - end = newline - for i, arg in enumerate(args): - if i: - write(sep) - write(arg) - write(end) -if sys.version_info[:2] < (3, 3): - _print = print_ - - def print_(*args, **kwargs): - fp = kwargs.get("file", sys.stdout) - flush = kwargs.pop("flush", False) - _print(*args, **kwargs) - if flush and fp is not None: - fp.flush() - -_add_doc(reraise, """Reraise an exception.""") - -if sys.version_info[0:2] < (3, 4): - def wraps(wrapped, assigned=functools.WRAPPER_ASSIGNMENTS, - updated=functools.WRAPPER_UPDATES): - def wrapper(f): - f = functools.wraps(wrapped, assigned, updated)(f) - f.__wrapped__ = wrapped - return f - return wrapper -else: - wraps = functools.wraps - - -def with_metaclass(meta, *bases): - """Create a base class with a metaclass.""" - # This requires a bit of explanation: the basic idea is to make a dummy - # metaclass for one level of class instantiation that replaces itself with - # the actual metaclass. - class metaclass(meta): - - def __new__(cls, name, this_bases, d): - return meta(name, bases, d) - return type.__new__(metaclass, 'temporary_class', (), {}) - - -def add_metaclass(metaclass): - """Class decorator for creating a class with a metaclass.""" - def wrapper(cls): - orig_vars = cls.__dict__.copy() - slots = orig_vars.get('__slots__') - if slots is not None: - if isinstance(slots, str): - slots = [slots] - for slots_var in slots: - orig_vars.pop(slots_var) - orig_vars.pop('__dict__', None) - orig_vars.pop('__weakref__', None) - return metaclass(cls.__name__, cls.__bases__, orig_vars) - return wrapper - - -def python_2_unicode_compatible(klass): - """ - A decorator that defines __unicode__ and __str__ methods under Python 2. - Under Python 3 it does nothing. - - To support Python 2 and 3 with a single code base, define a __str__ method - returning text and apply this decorator to the class. - """ - if PY2: - if '__str__' not in klass.__dict__: - raise ValueError("@python_2_unicode_compatible cannot be applied " - "to %s because it doesn't define __str__()." % - klass.__name__) - klass.__unicode__ = klass.__str__ - klass.__str__ = lambda self: self.__unicode__().encode('utf-8') - return klass - - -# Complete the moves implementation. -# This code is at the end of this module to speed up module loading. -# Turn this module into a package. -__path__ = [] # required for PEP 302 and PEP 451 -__package__ = __name__ # see PEP 366 @ReservedAssignment -if globals().get("__spec__") is not None: - __spec__.submodule_search_locations = [] # PEP 451 @UndefinedVariable -# Remove other six meta path importers, since they cause problems. This can -# happen if six is removed from sys.modules and then reloaded. (Setuptools does -# this for some reason.) -if sys.meta_path: - for i, importer in enumerate(sys.meta_path): - # Here's some real nastiness: Another "instance" of the six module might - # be floating around. Therefore, we can't use isinstance() to check for - # the six meta path importer, since the other six instance will have - # inserted an importer with different class. - if (type(importer).__name__ == "_SixMetaPathImporter" and - importer.name == __name__): - del sys.meta_path[i] - break - del i, importer -# Finally, add the importer to the meta path import hook. -sys.meta_path.append(_importer) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py deleted file mode 100644 index accb927..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -import sys - -try: - # Our match_hostname function is the same as 3.5's, so we only want to - # import the match_hostname function if it's at least that good. - if sys.version_info < (3, 5): - raise ImportError("Fallback to vendored code") - - from ssl import CertificateError, match_hostname -except ImportError: - try: - # Backport of the function from a pypi module - from backports.ssl_match_hostname import CertificateError, match_hostname - except ImportError: - # Our vendored copy - from ._implementation import CertificateError, match_hostname - -# Not needed, but documenting what we provide. -__all__ = ('CertificateError', 'match_hostname') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py deleted file mode 100644 index 7272d86..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py +++ /dev/null @@ -1,157 +0,0 @@ -"""The match_hostname() function from Python 3.3.3, essential when using SSL.""" - -# Note: This file is under the PSF license as the code comes from the python -# stdlib. http://docs.python.org/3/license.html - -import re -import sys - -# ipaddress has been backported to 2.6+ in pypi. If it is installed on the -# system, use it to handle IPAddress ServerAltnames (this was added in -# python-3.5) otherwise only do DNS matching. This allows -# backports.ssl_match_hostname to continue to be used all the way back to -# python-2.4. -try: - from pip._vendor import ipaddress -except ImportError: - ipaddress = None - -__version__ = '3.5.0.1' - - -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 - - # Ported from python3-syntax: - # leftmost, *remainder = dn.split(r'.') - parts = dn.split(r'.') - leftmost = parts[0] - remainder = parts[1:] - - wildcards = leftmost.count('*') - if wildcards > max_wildcards: - # Issue #17980: avoid denials of service by refusing more - # than one wildcard per fragment. A survey 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 _to_unicode(obj): - if isinstance(obj, str) and sys.version_info < (3,): - obj = unicode(obj, encoding='ascii', errors='strict') - return obj - -def _ipaddress_match(ipname, host_ip): - """Exact matching of IP addresses. - - RFC 6125 explicitly doesn't define an algorithm for this - (section 1.7.2 - "Out of Scope"). - """ - # OpenSSL may add a trailing newline to a subjectAltName's IP address - # Divergence from upstream: ipaddress can't handle byte str - ip = ipaddress.ip_address(_to_unicode(ipname).rstrip()) - return ip == host_ip - - -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") - try: - # Divergence from upstream: ipaddress can't handle byte str - host_ip = ipaddress.ip_address(_to_unicode(hostname)) - except ValueError: - # Not an IP address (common case) - host_ip = None - except UnicodeError: - # Divergence from upstream: Have to deal with ipaddress not taking - # byte strings. addresses should be all ascii, so we consider it not - # an ipaddress in this case - host_ip = None - except AttributeError: - # Divergence from upstream: Make ipaddress library optional - if ipaddress is None: - host_ip = None - else: - raise - dnsnames = [] - san = cert.get('subjectAltName', ()) - for key, value in san: - if key == 'DNS': - if host_ip is None and _dnsname_match(value, hostname): - return - dnsnames.append(value) - elif key == 'IP Address': - if host_ip is not None and _ipaddress_match(value, host_ip): - 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") diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/poolmanager.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/poolmanager.py deleted file mode 100644 index 607ae0f..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/poolmanager.py +++ /dev/null @@ -1,440 +0,0 @@ -from __future__ import absolute_import -import collections -import functools -import logging - -from ._collections import RecentlyUsedContainer -from .connectionpool import HTTPConnectionPool, HTTPSConnectionPool -from .connectionpool import port_by_scheme -from .exceptions import LocationValueError, MaxRetryError, ProxySchemeUnknown -from .packages.six.moves.urllib.parse import urljoin -from .request import RequestMethods -from .util.url import parse_url -from .util.retry import Retry - - -__all__ = ['PoolManager', 'ProxyManager', 'proxy_from_url'] - - -log = logging.getLogger(__name__) - -SSL_KEYWORDS = ('key_file', 'cert_file', 'cert_reqs', 'ca_certs', - 'ssl_version', 'ca_cert_dir', 'ssl_context') - -# All known keyword arguments that could be provided to the pool manager, its -# pools, or the underlying connections. This is used to construct a pool key. -_key_fields = ( - 'key_scheme', # str - 'key_host', # str - 'key_port', # int - 'key_timeout', # int or float or Timeout - 'key_retries', # int or Retry - 'key_strict', # bool - 'key_block', # bool - 'key_source_address', # str - 'key_key_file', # str - 'key_cert_file', # str - 'key_cert_reqs', # str - 'key_ca_certs', # str - 'key_ssl_version', # str - 'key_ca_cert_dir', # str - 'key_ssl_context', # instance of ssl.SSLContext or urllib3.util.ssl_.SSLContext - 'key_maxsize', # int - 'key_headers', # dict - 'key__proxy', # parsed proxy url - 'key__proxy_headers', # dict - 'key_socket_options', # list of (level (int), optname (int), value (int or str)) tuples - 'key__socks_options', # dict - 'key_assert_hostname', # bool or string - 'key_assert_fingerprint', # str -) - -#: The namedtuple class used to construct keys for the connection pool. -#: All custom key schemes should include the fields in this key at a minimum. -PoolKey = collections.namedtuple('PoolKey', _key_fields) - - -def _default_key_normalizer(key_class, request_context): - """ - Create a pool key out of a request context dictionary. - - According to RFC 3986, both the scheme and host are case-insensitive. - Therefore, this function normalizes both before constructing the pool - key for an HTTPS request. If you wish to change this behaviour, provide - alternate callables to ``key_fn_by_scheme``. - - :param key_class: - The class to use when constructing the key. This should be a namedtuple - with the ``scheme`` and ``host`` keys at a minimum. - :type key_class: namedtuple - :param request_context: - A dictionary-like object that contain the context for a request. - :type request_context: dict - - :return: A namedtuple that can be used as a connection pool key. - :rtype: PoolKey - """ - # Since we mutate the dictionary, make a copy first - context = request_context.copy() - context['scheme'] = context['scheme'].lower() - context['host'] = context['host'].lower() - - # These are both dictionaries and need to be transformed into frozensets - for key in ('headers', '_proxy_headers', '_socks_options'): - if key in context and context[key] is not None: - context[key] = frozenset(context[key].items()) - - # The socket_options key may be a list and needs to be transformed into a - # tuple. - socket_opts = context.get('socket_options') - if socket_opts is not None: - context['socket_options'] = tuple(socket_opts) - - # Map the kwargs to the names in the namedtuple - this is necessary since - # namedtuples can't have fields starting with '_'. - for key in list(context.keys()): - context['key_' + key] = context.pop(key) - - # Default to ``None`` for keys missing from the context - for field in key_class._fields: - if field not in context: - context[field] = None - - return key_class(**context) - - -#: A dictionary that maps a scheme to a callable that creates a pool key. -#: This can be used to alter the way pool keys are constructed, if desired. -#: Each PoolManager makes a copy of this dictionary so they can be configured -#: globally here, or individually on the instance. -key_fn_by_scheme = { - 'http': functools.partial(_default_key_normalizer, PoolKey), - 'https': functools.partial(_default_key_normalizer, PoolKey), -} - -pool_classes_by_scheme = { - 'http': HTTPConnectionPool, - 'https': HTTPSConnectionPool, -} - - -class PoolManager(RequestMethods): - """ - Allows for arbitrary requests while transparently keeping track of - necessary connection pools for you. - - :param num_pools: - Number of connection pools to cache before discarding the least - recently used pool. - - :param headers: - Headers to include with all requests, unless other headers are given - explicitly. - - :param \\**connection_pool_kw: - Additional parameters are used to create fresh - :class:`urllib3.connectionpool.ConnectionPool` instances. - - Example:: - - >>> manager = PoolManager(num_pools=2) - >>> r = manager.request('GET', 'http://google.com/') - >>> r = manager.request('GET', 'http://google.com/mail') - >>> r = manager.request('GET', 'http://yahoo.com/') - >>> len(manager.pools) - 2 - - """ - - proxy = None - - def __init__(self, num_pools=10, headers=None, **connection_pool_kw): - RequestMethods.__init__(self, headers) - self.connection_pool_kw = connection_pool_kw - self.pools = RecentlyUsedContainer(num_pools, - dispose_func=lambda p: p.close()) - - # Locally set the pool classes and keys so other PoolManagers can - # override them. - self.pool_classes_by_scheme = pool_classes_by_scheme - self.key_fn_by_scheme = key_fn_by_scheme.copy() - - def __enter__(self): - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - self.clear() - # Return False to re-raise any potential exceptions - return False - - def _new_pool(self, scheme, host, port, request_context=None): - """ - Create a new :class:`ConnectionPool` based on host, port, scheme, and - any additional pool keyword arguments. - - If ``request_context`` is provided, it is provided as keyword arguments - to the pool class used. This method is used to actually create the - connection pools handed out by :meth:`connection_from_url` and - companion methods. It is intended to be overridden for customization. - """ - pool_cls = self.pool_classes_by_scheme[scheme] - if request_context is None: - request_context = self.connection_pool_kw.copy() - - # Although the context has everything necessary to create the pool, - # this function has historically only used the scheme, host, and port - # in the positional args. When an API change is acceptable these can - # be removed. - for key in ('scheme', 'host', 'port'): - request_context.pop(key, None) - - if scheme == 'http': - for kw in SSL_KEYWORDS: - request_context.pop(kw, None) - - return pool_cls(host, port, **request_context) - - def clear(self): - """ - Empty our store of pools and direct them all to close. - - This will not affect in-flight connections, but they will not be - re-used after completion. - """ - self.pools.clear() - - def connection_from_host(self, host, port=None, scheme='http', pool_kwargs=None): - """ - Get a :class:`ConnectionPool` based on the host, port, and scheme. - - If ``port`` isn't given, it will be derived from the ``scheme`` using - ``urllib3.connectionpool.port_by_scheme``. If ``pool_kwargs`` is - provided, it is merged with the instance's ``connection_pool_kw`` - variable and used to create the new connection pool, if one is - needed. - """ - - if not host: - raise LocationValueError("No host specified.") - - request_context = self._merge_pool_kwargs(pool_kwargs) - request_context['scheme'] = scheme or 'http' - if not port: - port = port_by_scheme.get(request_context['scheme'].lower(), 80) - request_context['port'] = port - request_context['host'] = host - - return self.connection_from_context(request_context) - - def connection_from_context(self, request_context): - """ - Get a :class:`ConnectionPool` based on the request context. - - ``request_context`` must at least contain the ``scheme`` key and its - value must be a key in ``key_fn_by_scheme`` instance variable. - """ - scheme = request_context['scheme'].lower() - pool_key_constructor = self.key_fn_by_scheme[scheme] - pool_key = pool_key_constructor(request_context) - - return self.connection_from_pool_key(pool_key, request_context=request_context) - - def connection_from_pool_key(self, pool_key, request_context=None): - """ - Get a :class:`ConnectionPool` based on the provided pool key. - - ``pool_key`` should be a namedtuple that only contains immutable - objects. At a minimum it must have the ``scheme``, ``host``, and - ``port`` fields. - """ - with self.pools.lock: - # If the scheme, host, or port doesn't match existing open - # connections, open a new ConnectionPool. - pool = self.pools.get(pool_key) - if pool: - return pool - - # Make a fresh ConnectionPool of the desired type - scheme = request_context['scheme'] - host = request_context['host'] - port = request_context['port'] - pool = self._new_pool(scheme, host, port, request_context=request_context) - self.pools[pool_key] = pool - - return pool - - def connection_from_url(self, url, pool_kwargs=None): - """ - Similar to :func:`urllib3.connectionpool.connection_from_url`. - - If ``pool_kwargs`` is not provided and a new pool needs to be - constructed, ``self.connection_pool_kw`` is used to initialize - the :class:`urllib3.connectionpool.ConnectionPool`. If ``pool_kwargs`` - is provided, it is used instead. Note that if a new pool does not - need to be created for the request, the provided ``pool_kwargs`` are - not used. - """ - u = parse_url(url) - return self.connection_from_host(u.host, port=u.port, scheme=u.scheme, - pool_kwargs=pool_kwargs) - - def _merge_pool_kwargs(self, override): - """ - Merge a dictionary of override values for self.connection_pool_kw. - - This does not modify self.connection_pool_kw and returns a new dict. - Any keys in the override dictionary with a value of ``None`` are - removed from the merged dictionary. - """ - base_pool_kwargs = self.connection_pool_kw.copy() - if override: - for key, value in override.items(): - if value is None: - try: - del base_pool_kwargs[key] - except KeyError: - pass - else: - base_pool_kwargs[key] = value - return base_pool_kwargs - - def urlopen(self, method, url, redirect=True, **kw): - """ - Same as :meth:`urllib3.connectionpool.HTTPConnectionPool.urlopen` - with custom cross-host redirect logic and only sends the request-uri - portion of the ``url``. - - The given ``url`` parameter must be absolute, such that an appropriate - :class:`urllib3.connectionpool.ConnectionPool` can be chosen for it. - """ - u = parse_url(url) - conn = self.connection_from_host(u.host, port=u.port, scheme=u.scheme) - - kw['assert_same_host'] = False - kw['redirect'] = False - if 'headers' not in kw: - kw['headers'] = self.headers - - if self.proxy is not None and u.scheme == "http": - response = conn.urlopen(method, url, **kw) - else: - response = conn.urlopen(method, u.request_uri, **kw) - - redirect_location = redirect and response.get_redirect_location() - if not redirect_location: - return response - - # Support relative URLs for redirecting. - redirect_location = urljoin(url, redirect_location) - - # RFC 7231, Section 6.4.4 - if response.status == 303: - method = 'GET' - - retries = kw.get('retries') - if not isinstance(retries, Retry): - retries = Retry.from_int(retries, redirect=redirect) - - try: - retries = retries.increment(method, url, response=response, _pool=conn) - except MaxRetryError: - if retries.raise_on_redirect: - raise - return response - - kw['retries'] = retries - kw['redirect'] = redirect - - log.info("Redirecting %s -> %s", url, redirect_location) - return self.urlopen(method, redirect_location, **kw) - - -class ProxyManager(PoolManager): - """ - Behaves just like :class:`PoolManager`, but sends all requests through - the defined proxy, using the CONNECT method for HTTPS URLs. - - :param proxy_url: - The URL of the proxy to be used. - - :param proxy_headers: - A dictionary contaning headers that will be sent to the proxy. In case - of HTTP they are being sent with each request, while in the - HTTPS/CONNECT case they are sent only once. Could be used for proxy - authentication. - - Example: - >>> proxy = urllib3.ProxyManager('http://localhost:3128/') - >>> r1 = proxy.request('GET', 'http://google.com/') - >>> r2 = proxy.request('GET', 'http://httpbin.org/') - >>> len(proxy.pools) - 1 - >>> r3 = proxy.request('GET', 'https://httpbin.org/') - >>> r4 = proxy.request('GET', 'https://twitter.com/') - >>> len(proxy.pools) - 3 - - """ - - def __init__(self, proxy_url, num_pools=10, headers=None, - proxy_headers=None, **connection_pool_kw): - - if isinstance(proxy_url, HTTPConnectionPool): - proxy_url = '%s://%s:%i' % (proxy_url.scheme, proxy_url.host, - proxy_url.port) - proxy = parse_url(proxy_url) - if not proxy.port: - port = port_by_scheme.get(proxy.scheme, 80) - proxy = proxy._replace(port=port) - - if proxy.scheme not in ("http", "https"): - raise ProxySchemeUnknown(proxy.scheme) - - self.proxy = proxy - self.proxy_headers = proxy_headers or {} - - connection_pool_kw['_proxy'] = self.proxy - connection_pool_kw['_proxy_headers'] = self.proxy_headers - - super(ProxyManager, self).__init__( - num_pools, headers, **connection_pool_kw) - - def connection_from_host(self, host, port=None, scheme='http', pool_kwargs=None): - if scheme == "https": - return super(ProxyManager, self).connection_from_host( - host, port, scheme, pool_kwargs=pool_kwargs) - - return super(ProxyManager, self).connection_from_host( - self.proxy.host, self.proxy.port, self.proxy.scheme, pool_kwargs=pool_kwargs) - - def _set_proxy_headers(self, url, headers=None): - """ - Sets headers needed by proxies: specifically, the Accept and Host - headers. Only sets headers not provided by the user. - """ - headers_ = {'Accept': '*/*'} - - netloc = parse_url(url).netloc - if netloc: - headers_['Host'] = netloc - - if headers: - headers_.update(headers) - return headers_ - - def urlopen(self, method, url, redirect=True, **kw): - "Same as HTTP(S)ConnectionPool.urlopen, ``url`` must be absolute." - u = parse_url(url) - - if u.scheme == "http": - # For proxied HTTPS requests, httplib sets the necessary headers - # on the CONNECT to the proxy. For HTTP, we'll definitely - # need to set 'Host' at the very least. - headers = kw.get('headers', self.headers) - kw['headers'] = self._set_proxy_headers(url, headers) - - return super(ProxyManager, self).urlopen(method, url, redirect=redirect, **kw) - - -def proxy_from_url(url, **kw): - return ProxyManager(proxy_url=url, **kw) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/request.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/request.py deleted file mode 100644 index 9d789d6..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/request.py +++ /dev/null @@ -1,148 +0,0 @@ -from __future__ import absolute_import - -from .filepost import encode_multipart_formdata -from .packages.six.moves.urllib.parse import urlencode - - -__all__ = ['RequestMethods'] - - -class RequestMethods(object): - """ - Convenience mixin for classes who implement a :meth:`urlopen` method, such - as :class:`~urllib3.connectionpool.HTTPConnectionPool` and - :class:`~urllib3.poolmanager.PoolManager`. - - Provides behavior for making common types of HTTP request methods and - decides which type of request field encoding to use. - - Specifically, - - :meth:`.request_encode_url` is for sending requests whose fields are - encoded in the URL (such as GET, HEAD, DELETE). - - :meth:`.request_encode_body` is for sending requests whose fields are - encoded in the *body* of the request using multipart or www-form-urlencoded - (such as for POST, PUT, PATCH). - - :meth:`.request` is for making any kind of request, it will look up the - appropriate encoding format and use one of the above two methods to make - the request. - - Initializer parameters: - - :param headers: - Headers to include with all requests, unless other headers are given - explicitly. - """ - - _encode_url_methods = set(['DELETE', 'GET', 'HEAD', 'OPTIONS']) - - def __init__(self, headers=None): - self.headers = headers or {} - - def urlopen(self, method, url, body=None, headers=None, - encode_multipart=True, multipart_boundary=None, - **kw): # Abstract - raise NotImplemented("Classes extending RequestMethods must implement " - "their own ``urlopen`` method.") - - def request(self, method, url, fields=None, headers=None, **urlopen_kw): - """ - Make a request using :meth:`urlopen` with the appropriate encoding of - ``fields`` based on the ``method`` used. - - This is a convenience method that requires the least amount of manual - effort. It can be used in most situations, while still having the - option to drop down to more specific methods when necessary, such as - :meth:`request_encode_url`, :meth:`request_encode_body`, - or even the lowest level :meth:`urlopen`. - """ - method = method.upper() - - if method in self._encode_url_methods: - return self.request_encode_url(method, url, fields=fields, - headers=headers, - **urlopen_kw) - else: - return self.request_encode_body(method, url, fields=fields, - headers=headers, - **urlopen_kw) - - def request_encode_url(self, method, url, fields=None, headers=None, - **urlopen_kw): - """ - Make a request using :meth:`urlopen` with the ``fields`` encoded in - the url. This is useful for request methods like GET, HEAD, DELETE, etc. - """ - if headers is None: - headers = self.headers - - extra_kw = {'headers': headers} - extra_kw.update(urlopen_kw) - - if fields: - url += '?' + urlencode(fields) - - return self.urlopen(method, url, **extra_kw) - - def request_encode_body(self, method, url, fields=None, headers=None, - encode_multipart=True, multipart_boundary=None, - **urlopen_kw): - """ - Make a request using :meth:`urlopen` with the ``fields`` encoded in - the body. This is useful for request methods like POST, PUT, PATCH, etc. - - When ``encode_multipart=True`` (default), then - :meth:`urllib3.filepost.encode_multipart_formdata` is used to encode - the payload with the appropriate content type. Otherwise - :meth:`urllib.urlencode` is used with the - 'application/x-www-form-urlencoded' content type. - - Multipart encoding must be used when posting files, and it's reasonably - safe to use it in other times too. However, it may break request - signing, such as with OAuth. - - Supports an optional ``fields`` parameter of key/value strings AND - key/filetuple. A filetuple is a (filename, data, MIME type) tuple where - the MIME type is optional. For example:: - - fields = { - 'foo': 'bar', - 'fakefile': ('foofile.txt', 'contents of foofile'), - 'realfile': ('barfile.txt', open('realfile').read()), - 'typedfile': ('bazfile.bin', open('bazfile').read(), - 'image/jpeg'), - 'nonamefile': 'contents of nonamefile field', - } - - When uploading a file, providing a filename (the first parameter of the - tuple) is optional but recommended to best mimick behavior of browsers. - - Note that if ``headers`` are supplied, the 'Content-Type' header will - be overwritten because it depends on the dynamic random boundary string - which is used to compose the body of the request. The random boundary - string can be explicitly set with the ``multipart_boundary`` parameter. - """ - if headers is None: - headers = self.headers - - extra_kw = {'headers': {}} - - if fields: - if 'body' in urlopen_kw: - raise TypeError( - "request got values for both 'fields' and 'body', can only specify one.") - - if encode_multipart: - body, content_type = encode_multipart_formdata(fields, boundary=multipart_boundary) - else: - body, content_type = urlencode(fields), 'application/x-www-form-urlencoded' - - extra_kw['body'] = body - extra_kw['headers'] = {'Content-Type': content_type} - - extra_kw['headers'].update(headers) - extra_kw.update(urlopen_kw) - - return self.urlopen(method, url, **extra_kw) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/response.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/response.py deleted file mode 100644 index 54799ba..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/response.py +++ /dev/null @@ -1,626 +0,0 @@ -from __future__ import absolute_import -from contextlib import contextmanager -import zlib -import io -import logging -from socket import timeout as SocketTimeout -from socket import error as SocketError - -from ._collections import HTTPHeaderDict -from .exceptions import ( - BodyNotHttplibCompatible, ProtocolError, DecodeError, ReadTimeoutError, - ResponseNotChunked, IncompleteRead, InvalidHeader -) -from .packages.six import string_types as basestring, binary_type, PY3 -from .packages.six.moves import http_client as httplib -from .connection import HTTPException, BaseSSLError -from .util.response import is_fp_closed, is_response_to_head - -log = logging.getLogger(__name__) - - -class DeflateDecoder(object): - - def __init__(self): - self._first_try = True - self._data = binary_type() - self._obj = zlib.decompressobj() - - def __getattr__(self, name): - return getattr(self._obj, name) - - def decompress(self, data): - if not data: - return data - - if not self._first_try: - return self._obj.decompress(data) - - self._data += data - try: - decompressed = self._obj.decompress(data) - if decompressed: - self._first_try = False - self._data = None - return decompressed - except zlib.error: - self._first_try = False - self._obj = zlib.decompressobj(-zlib.MAX_WBITS) - try: - return self.decompress(self._data) - finally: - self._data = None - - -class GzipDecoder(object): - - def __init__(self): - self._obj = zlib.decompressobj(16 + zlib.MAX_WBITS) - - def __getattr__(self, name): - return getattr(self._obj, name) - - def decompress(self, data): - if not data: - return data - return self._obj.decompress(data) - - -def _get_decoder(mode): - if mode == 'gzip': - return GzipDecoder() - - return DeflateDecoder() - - -class HTTPResponse(io.IOBase): - """ - HTTP Response container. - - Backwards-compatible to httplib's HTTPResponse but the response ``body`` is - loaded and decoded on-demand when the ``data`` property is accessed. This - class is also compatible with the Python standard library's :mod:`io` - module, and can hence be treated as a readable object in the context of that - framework. - - Extra parameters for behaviour not present in httplib.HTTPResponse: - - :param preload_content: - If True, the response's body will be preloaded during construction. - - :param decode_content: - If True, attempts to decode specific content-encoding's based on headers - (like 'gzip' and 'deflate') will be skipped and raw data will be used - instead. - - :param original_response: - When this HTTPResponse wrapper is generated from an httplib.HTTPResponse - object, it's convenient to include the original for debug purposes. It's - otherwise unused. - - :param retries: - The retries contains the last :class:`~urllib3.util.retry.Retry` that - was used during the request. - - :param enforce_content_length: - Enforce content length checking. Body returned by server must match - value of Content-Length header, if present. Otherwise, raise error. - """ - - CONTENT_DECODERS = ['gzip', 'deflate'] - REDIRECT_STATUSES = [301, 302, 303, 307, 308] - - def __init__(self, body='', headers=None, status=0, version=0, reason=None, - strict=0, preload_content=True, decode_content=True, - original_response=None, pool=None, connection=None, - retries=None, enforce_content_length=False, request_method=None): - - if isinstance(headers, HTTPHeaderDict): - self.headers = headers - else: - self.headers = HTTPHeaderDict(headers) - self.status = status - self.version = version - self.reason = reason - self.strict = strict - self.decode_content = decode_content - self.retries = retries - self.enforce_content_length = enforce_content_length - - self._decoder = None - self._body = None - self._fp = None - self._original_response = original_response - self._fp_bytes_read = 0 - - if body and isinstance(body, (basestring, binary_type)): - self._body = body - - self._pool = pool - self._connection = connection - - if hasattr(body, 'read'): - self._fp = body - - # Are we using the chunked-style of transfer encoding? - self.chunked = False - self.chunk_left = None - tr_enc = self.headers.get('transfer-encoding', '').lower() - # Don't incur the penalty of creating a list and then discarding it - encodings = (enc.strip() for enc in tr_enc.split(",")) - if "chunked" in encodings: - self.chunked = True - - # Determine length of response - self.length_remaining = self._init_length(request_method) - - # If requested, preload the body. - if preload_content and not self._body: - self._body = self.read(decode_content=decode_content) - - def get_redirect_location(self): - """ - Should we redirect and where to? - - :returns: Truthy redirect location string if we got a redirect status - code and valid location. ``None`` if redirect status and no - location. ``False`` if not a redirect status code. - """ - if self.status in self.REDIRECT_STATUSES: - return self.headers.get('location') - - return False - - def release_conn(self): - if not self._pool or not self._connection: - return - - self._pool._put_conn(self._connection) - self._connection = None - - @property - def data(self): - # For backwords-compat with earlier urllib3 0.4 and earlier. - if self._body: - return self._body - - if self._fp: - return self.read(cache_content=True) - - @property - def connection(self): - return self._connection - - def tell(self): - """ - Obtain the number of bytes pulled over the wire so far. May differ from - the amount of content returned by :meth:``HTTPResponse.read`` if bytes - are encoded on the wire (e.g, compressed). - """ - return self._fp_bytes_read - - def _init_length(self, request_method): - """ - Set initial length value for Response content if available. - """ - length = self.headers.get('content-length') - - if length is not None and self.chunked: - # This Response will fail with an IncompleteRead if it can't be - # received as chunked. This method falls back to attempt reading - # the response before raising an exception. - log.warning("Received response with both Content-Length and " - "Transfer-Encoding set. This is expressly forbidden " - "by RFC 7230 sec 3.3.2. Ignoring Content-Length and " - "attempting to process response as Transfer-Encoding: " - "chunked.") - return None - - elif length is not None: - try: - # RFC 7230 section 3.3.2 specifies multiple content lengths can - # be sent in a single Content-Length header - # (e.g. Content-Length: 42, 42). This line ensures the values - # are all valid ints and that as long as the `set` length is 1, - # all values are the same. Otherwise, the header is invalid. - lengths = set([int(val) for val in length.split(',')]) - if len(lengths) > 1: - raise InvalidHeader("Content-Length contained multiple " - "unmatching values (%s)" % length) - length = lengths.pop() - except ValueError: - length = None - else: - if length < 0: - length = None - - # Convert status to int for comparison - # In some cases, httplib returns a status of "_UNKNOWN" - try: - status = int(self.status) - except ValueError: - status = 0 - - # Check for responses that shouldn't include a body - if status in (204, 304) or 100 <= status < 200 or request_method == 'HEAD': - length = 0 - - return length - - def _init_decoder(self): - """ - Set-up the _decoder attribute if necessary. - """ - # Note: content-encoding value should be case-insensitive, per RFC 7230 - # Section 3.2 - content_encoding = self.headers.get('content-encoding', '').lower() - if self._decoder is None and content_encoding in self.CONTENT_DECODERS: - self._decoder = _get_decoder(content_encoding) - - def _decode(self, data, decode_content, flush_decoder): - """ - Decode the data passed in and potentially flush the decoder. - """ - try: - if decode_content and self._decoder: - data = self._decoder.decompress(data) - except (IOError, zlib.error) as e: - content_encoding = self.headers.get('content-encoding', '').lower() - raise DecodeError( - "Received response with content-encoding: %s, but " - "failed to decode it." % content_encoding, e) - - if flush_decoder and decode_content: - data += self._flush_decoder() - - return data - - def _flush_decoder(self): - """ - Flushes the decoder. Should only be called if the decoder is actually - being used. - """ - if self._decoder: - buf = self._decoder.decompress(b'') - return buf + self._decoder.flush() - - return b'' - - @contextmanager - def _error_catcher(self): - """ - Catch low-level python exceptions, instead re-raising urllib3 - variants, so that low-level exceptions are not leaked in the - high-level api. - - On exit, release the connection back to the pool. - """ - clean_exit = False - - try: - try: - yield - - except SocketTimeout: - # FIXME: Ideally we'd like to include the url in the ReadTimeoutError but - # there is yet no clean way to get at it from this context. - raise ReadTimeoutError(self._pool, None, 'Read timed out.') - - except BaseSSLError as e: - # FIXME: Is there a better way to differentiate between SSLErrors? - if 'read operation timed out' not in str(e): # Defensive: - # This shouldn't happen but just in case we're missing an edge - # case, let's avoid swallowing SSL errors. - raise - - raise ReadTimeoutError(self._pool, None, 'Read timed out.') - - except (HTTPException, SocketError) as e: - # This includes IncompleteRead. - raise ProtocolError('Connection broken: %r' % e, e) - - # If no exception is thrown, we should avoid cleaning up - # unnecessarily. - clean_exit = True - finally: - # If we didn't terminate cleanly, we need to throw away our - # connection. - if not clean_exit: - # The response may not be closed but we're not going to use it - # anymore so close it now to ensure that the connection is - # released back to the pool. - if self._original_response: - self._original_response.close() - - # Closing the response may not actually be sufficient to close - # everything, so if we have a hold of the connection close that - # too. - if self._connection: - self._connection.close() - - # If we hold the original response but it's closed now, we should - # return the connection back to the pool. - if self._original_response and self._original_response.isclosed(): - self.release_conn() - - def read(self, amt=None, decode_content=None, cache_content=False): - """ - Similar to :meth:`httplib.HTTPResponse.read`, but with two additional - parameters: ``decode_content`` and ``cache_content``. - - :param amt: - How much of the content to read. If specified, caching is skipped - because it doesn't make sense to cache partial content as the full - response. - - :param decode_content: - If True, will attempt to decode the body based on the - 'content-encoding' header. - - :param cache_content: - If True, will save the returned data such that the same result is - returned despite of the state of the underlying file object. This - is useful if you want the ``.data`` property to continue working - after having ``.read()`` the file object. (Overridden if ``amt`` is - set.) - """ - self._init_decoder() - if decode_content is None: - decode_content = self.decode_content - - if self._fp is None: - return - - flush_decoder = False - data = None - - with self._error_catcher(): - if amt is None: - # cStringIO doesn't like amt=None - data = self._fp.read() - flush_decoder = True - else: - cache_content = False - data = self._fp.read(amt) - if amt != 0 and not data: # Platform-specific: Buggy versions of Python. - # Close the connection when no data is returned - # - # This is redundant to what httplib/http.client _should_ - # already do. However, versions of python released before - # December 15, 2012 (http://bugs.python.org/issue16298) do - # not properly close the connection in all cases. There is - # no harm in redundantly calling close. - self._fp.close() - flush_decoder = True - if self.enforce_content_length and self.length_remaining not in (0, None): - # This is an edge case that httplib failed to cover due - # to concerns of backward compatibility. We're - # addressing it here to make sure IncompleteRead is - # raised during streaming, so all calls with incorrect - # Content-Length are caught. - raise IncompleteRead(self._fp_bytes_read, self.length_remaining) - - if data: - self._fp_bytes_read += len(data) - if self.length_remaining is not None: - self.length_remaining -= len(data) - - data = self._decode(data, decode_content, flush_decoder) - - if cache_content: - self._body = data - - return data - - def stream(self, amt=2**16, decode_content=None): - """ - A generator wrapper for the read() method. A call will block until - ``amt`` bytes have been read from the connection or until the - connection is closed. - - :param amt: - How much of the content to read. The generator will return up to - much data per iteration, but may return less. This is particularly - likely when using compressed data. However, the empty string will - never be returned. - - :param decode_content: - If True, will attempt to decode the body based on the - 'content-encoding' header. - """ - if self.chunked and self.supports_chunked_reads(): - for line in self.read_chunked(amt, decode_content=decode_content): - yield line - else: - while not is_fp_closed(self._fp): - data = self.read(amt=amt, decode_content=decode_content) - - if data: - yield data - - @classmethod - def from_httplib(ResponseCls, r, **response_kw): - """ - Given an :class:`httplib.HTTPResponse` instance ``r``, return a - corresponding :class:`urllib3.response.HTTPResponse` object. - - Remaining parameters are passed to the HTTPResponse constructor, along - with ``original_response=r``. - """ - headers = r.msg - - if not isinstance(headers, HTTPHeaderDict): - if PY3: # Python 3 - headers = HTTPHeaderDict(headers.items()) - else: # Python 2 - headers = HTTPHeaderDict.from_httplib(headers) - - # HTTPResponse objects in Python 3 don't have a .strict attribute - strict = getattr(r, 'strict', 0) - resp = ResponseCls(body=r, - headers=headers, - status=r.status, - version=r.version, - reason=r.reason, - strict=strict, - original_response=r, - **response_kw) - return resp - - # Backwards-compatibility methods for httplib.HTTPResponse - def getheaders(self): - return self.headers - - def getheader(self, name, default=None): - return self.headers.get(name, default) - - # Backwards compatibility for http.cookiejar - def info(self): - return self.headers - - # Overrides from io.IOBase - def close(self): - if not self.closed: - self._fp.close() - - if self._connection: - self._connection.close() - - @property - def closed(self): - if self._fp is None: - return True - elif hasattr(self._fp, 'isclosed'): - return self._fp.isclosed() - elif hasattr(self._fp, 'closed'): - return self._fp.closed - else: - return True - - def fileno(self): - if self._fp is None: - raise IOError("HTTPResponse has no file to get a fileno from") - elif hasattr(self._fp, "fileno"): - return self._fp.fileno() - else: - raise IOError("The file-like object this HTTPResponse is wrapped " - "around has no file descriptor") - - def flush(self): - if self._fp is not None and hasattr(self._fp, 'flush'): - return self._fp.flush() - - def readable(self): - # This method is required for `io` module compatibility. - return True - - def readinto(self, b): - # This method is required for `io` module compatibility. - temp = self.read(len(b)) - if len(temp) == 0: - return 0 - else: - b[:len(temp)] = temp - return len(temp) - - def supports_chunked_reads(self): - """ - Checks if the underlying file-like object looks like a - httplib.HTTPResponse object. We do this by testing for the fp - attribute. If it is present we assume it returns raw chunks as - processed by read_chunked(). - """ - return hasattr(self._fp, 'fp') - - def _update_chunk_length(self): - # First, we'll figure out length of a chunk and then - # we'll try to read it from socket. - if self.chunk_left is not None: - return - line = self._fp.fp.readline() - line = line.split(b';', 1)[0] - try: - self.chunk_left = int(line, 16) - except ValueError: - # Invalid chunked protocol response, abort. - self.close() - raise httplib.IncompleteRead(line) - - def _handle_chunk(self, amt): - returned_chunk = None - if amt is None: - chunk = self._fp._safe_read(self.chunk_left) - returned_chunk = chunk - self._fp._safe_read(2) # Toss the CRLF at the end of the chunk. - self.chunk_left = None - elif amt < self.chunk_left: - value = self._fp._safe_read(amt) - self.chunk_left = self.chunk_left - amt - returned_chunk = value - elif amt == self.chunk_left: - value = self._fp._safe_read(amt) - self._fp._safe_read(2) # Toss the CRLF at the end of the chunk. - self.chunk_left = None - returned_chunk = value - else: # amt > self.chunk_left - returned_chunk = self._fp._safe_read(self.chunk_left) - self._fp._safe_read(2) # Toss the CRLF at the end of the chunk. - self.chunk_left = None - return returned_chunk - - def read_chunked(self, amt=None, decode_content=None): - """ - Similar to :meth:`HTTPResponse.read`, but with an additional - parameter: ``decode_content``. - - :param decode_content: - If True, will attempt to decode the body based on the - 'content-encoding' header. - """ - self._init_decoder() - # FIXME: Rewrite this method and make it a class with a better structured logic. - if not self.chunked: - raise ResponseNotChunked( - "Response is not chunked. " - "Header 'transfer-encoding: chunked' is missing.") - if not self.supports_chunked_reads(): - raise BodyNotHttplibCompatible( - "Body should be httplib.HTTPResponse like. " - "It should have have an fp attribute which returns raw chunks.") - - # Don't bother reading the body of a HEAD request. - if self._original_response and is_response_to_head(self._original_response): - self._original_response.close() - return - - with self._error_catcher(): - while True: - self._update_chunk_length() - if self.chunk_left == 0: - break - chunk = self._handle_chunk(amt) - decoded = self._decode(chunk, decode_content=decode_content, - flush_decoder=False) - if decoded: - yield decoded - - if decode_content: - # On CPython and PyPy, we should never need to flush the - # decoder. However, on Jython we *might* need to, so - # lets defensively do it anyway. - decoded = self._flush_decoder() - if decoded: # Platform-specific: Jython. - yield decoded - - # Chunk content ends with \r\n: discard it. - while True: - line = self._fp.fp.readline() - if not line: - # Some sites may not end with '\r\n'. - break - if line == b'\r\n': - break - - # We read everything; close the "file". - if self._original_response: - self._original_response.close() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/__init__.py deleted file mode 100644 index a84b005..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/__init__.py +++ /dev/null @@ -1,54 +0,0 @@ -from __future__ import absolute_import -# For backwards compatibility, provide imports that used to be here. -from .connection import is_connection_dropped -from .request import make_headers -from .response import is_fp_closed -from .ssl_ import ( - SSLContext, - HAS_SNI, - IS_PYOPENSSL, - IS_SECURETRANSPORT, - assert_fingerprint, - resolve_cert_reqs, - resolve_ssl_version, - ssl_wrap_socket, -) -from .timeout import ( - current_time, - Timeout, -) - -from .retry import Retry -from .url import ( - get_host, - parse_url, - split_first, - Url, -) -from .wait import ( - wait_for_read, - wait_for_write -) - -__all__ = ( - 'HAS_SNI', - 'IS_PYOPENSSL', - 'IS_SECURETRANSPORT', - 'SSLContext', - 'Retry', - 'Timeout', - 'Url', - 'assert_fingerprint', - 'current_time', - 'is_connection_dropped', - 'is_fp_closed', - 'get_host', - 'parse_url', - 'make_headers', - 'resolve_cert_reqs', - 'resolve_ssl_version', - 'split_first', - 'ssl_wrap_socket', - 'wait_for_read', - 'wait_for_write' -) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/connection.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/connection.py deleted file mode 100644 index 31ecd83..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/connection.py +++ /dev/null @@ -1,130 +0,0 @@ -from __future__ import absolute_import -import socket -from .wait import wait_for_read -from .selectors import HAS_SELECT, SelectorError - - -def is_connection_dropped(conn): # Platform-specific - """ - Returns True if the connection is dropped and should be closed. - - :param conn: - :class:`httplib.HTTPConnection` object. - - Note: For platforms like AppEngine, this will always return ``False`` to - let the platform handle connection recycling transparently for us. - """ - sock = getattr(conn, 'sock', False) - if sock is False: # Platform-specific: AppEngine - return False - if sock is None: # Connection already closed (such as by httplib). - return True - - if not HAS_SELECT: - return False - - try: - return bool(wait_for_read(sock, timeout=0.0)) - except SelectorError: - return True - - -# This function is copied from socket.py in the Python 2.7 standard -# library test suite. Added to its signature is only `socket_options`. -# One additional modification is that we avoid binding to IPv6 servers -# discovered in DNS if the system doesn't have IPv6 functionality. -def create_connection(address, timeout=socket._GLOBAL_DEFAULT_TIMEOUT, - source_address=None, socket_options=None): - """Connect to *address* and return the socket object. - - Convenience function. Connect to *address* (a 2-tuple ``(host, - port)``) and return the socket object. Passing the optional - *timeout* parameter will set the timeout on the socket instance - before attempting to connect. If no *timeout* is supplied, the - global default timeout setting returned by :func:`getdefaulttimeout` - is used. If *source_address* is set it must be a tuple of (host, port) - for the socket to bind as a source address before making the connection. - An host of '' or port 0 tells the OS to use the default. - """ - - host, port = address - if host.startswith('['): - host = host.strip('[]') - err = None - - # Using the value from allowed_gai_family() in the context of getaddrinfo lets - # us select whether to work with IPv4 DNS records, IPv6 records, or both. - # The original create_connection function always returns all records. - family = allowed_gai_family() - - for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): - af, socktype, proto, canonname, sa = res - sock = None - try: - sock = socket.socket(af, socktype, proto) - - # If provided, set socket level options before connecting. - _set_socket_options(sock, socket_options) - - if timeout is not socket._GLOBAL_DEFAULT_TIMEOUT: - sock.settimeout(timeout) - if source_address: - sock.bind(source_address) - sock.connect(sa) - return sock - - except socket.error as e: - err = e - if sock is not None: - sock.close() - sock = None - - if err is not None: - raise err - - raise socket.error("getaddrinfo returns an empty list") - - -def _set_socket_options(sock, options): - if options is None: - return - - for opt in options: - sock.setsockopt(*opt) - - -def allowed_gai_family(): - """This function is designed to work in the context of - getaddrinfo, where family=socket.AF_UNSPEC is the default and - will perform a DNS search for both IPv6 and IPv4 records.""" - - family = socket.AF_INET - if HAS_IPV6: - family = socket.AF_UNSPEC - return family - - -def _has_ipv6(host): - """ Returns True if the system can bind an IPv6 address. """ - sock = None - has_ipv6 = False - - if socket.has_ipv6: - # has_ipv6 returns true if cPython was compiled with IPv6 support. - # It does not tell us if the system has IPv6 support enabled. To - # determine that we must bind to an IPv6 address. - # https://github.com/shazow/urllib3/pull/611 - # https://bugs.python.org/issue658327 - try: - sock = socket.socket(socket.AF_INET6) - sock.bind((host, 0)) - has_ipv6 = True - except Exception: - pass - - if sock: - sock.close() - return has_ipv6 - - -HAS_IPV6 = _has_ipv6('::1') diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/request.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/request.py deleted file mode 100644 index 22882b8..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/request.py +++ /dev/null @@ -1,118 +0,0 @@ -from __future__ import absolute_import -from base64 import b64encode - -from ..packages.six import b, integer_types -from ..exceptions import UnrewindableBodyError - -ACCEPT_ENCODING = 'gzip,deflate' -_FAILEDTELL = object() - - -def make_headers(keep_alive=None, accept_encoding=None, user_agent=None, - basic_auth=None, proxy_basic_auth=None, disable_cache=None): - """ - Shortcuts for generating request headers. - - :param keep_alive: - If ``True``, adds 'connection: keep-alive' header. - - :param accept_encoding: - Can be a boolean, list, or string. - ``True`` translates to 'gzip,deflate'. - List will get joined by comma. - String will be used as provided. - - :param user_agent: - String representing the user-agent you want, such as - "python-urllib3/0.6" - - :param basic_auth: - Colon-separated username:password string for 'authorization: basic ...' - auth header. - - :param proxy_basic_auth: - Colon-separated username:password string for 'proxy-authorization: basic ...' - auth header. - - :param disable_cache: - If ``True``, adds 'cache-control: no-cache' header. - - Example:: - - >>> make_headers(keep_alive=True, user_agent="Batman/1.0") - {'connection': 'keep-alive', 'user-agent': 'Batman/1.0'} - >>> make_headers(accept_encoding=True) - {'accept-encoding': 'gzip,deflate'} - """ - headers = {} - if accept_encoding: - if isinstance(accept_encoding, str): - pass - elif isinstance(accept_encoding, list): - accept_encoding = ','.join(accept_encoding) - else: - accept_encoding = ACCEPT_ENCODING - headers['accept-encoding'] = accept_encoding - - if user_agent: - headers['user-agent'] = user_agent - - if keep_alive: - headers['connection'] = 'keep-alive' - - if basic_auth: - headers['authorization'] = 'Basic ' + \ - b64encode(b(basic_auth)).decode('utf-8') - - if proxy_basic_auth: - headers['proxy-authorization'] = 'Basic ' + \ - b64encode(b(proxy_basic_auth)).decode('utf-8') - - if disable_cache: - headers['cache-control'] = 'no-cache' - - return headers - - -def set_file_position(body, pos): - """ - If a position is provided, move file to that point. - Otherwise, we'll attempt to record a position for future use. - """ - if pos is not None: - rewind_body(body, pos) - elif getattr(body, 'tell', None) is not None: - try: - pos = body.tell() - except (IOError, OSError): - # This differentiates from None, allowing us to catch - # a failed `tell()` later when trying to rewind the body. - pos = _FAILEDTELL - - return pos - - -def rewind_body(body, body_pos): - """ - Attempt to rewind body to a certain position. - Primarily used for request redirects and retries. - - :param body: - File-like object that supports seek. - - :param int pos: - Position to seek to in file. - """ - body_seek = getattr(body, 'seek', None) - if body_seek is not None and isinstance(body_pos, integer_types): - try: - body_seek(body_pos) - except (IOError, OSError): - raise UnrewindableBodyError("An error occurred when rewinding request " - "body for redirect/retry.") - elif body_pos is _FAILEDTELL: - raise UnrewindableBodyError("Unable to record file position for rewinding " - "request body during a redirect/retry.") - else: - raise ValueError("body_pos must be of type integer, " - "instead it was %s." % type(body_pos)) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/response.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/response.py deleted file mode 100644 index c2eb49c..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/response.py +++ /dev/null @@ -1,81 +0,0 @@ -from __future__ import absolute_import -from ..packages.six.moves import http_client as httplib - -from ..exceptions import HeaderParsingError - - -def is_fp_closed(obj): - """ - Checks whether a given file-like object is closed. - - :param obj: - The file-like object to check. - """ - - try: - # Check `isclosed()` first, in case Python3 doesn't set `closed`. - # GH Issue #928 - return obj.isclosed() - except AttributeError: - pass - - try: - # Check via the official file-like-object way. - return obj.closed - except AttributeError: - pass - - try: - # Check if the object is a container for another file-like object that - # gets released on exhaustion (e.g. HTTPResponse). - return obj.fp is None - except AttributeError: - pass - - raise ValueError("Unable to determine whether fp is closed.") - - -def assert_header_parsing(headers): - """ - Asserts whether all headers have been successfully parsed. - Extracts encountered errors from the result of parsing headers. - - Only works on Python 3. - - :param headers: Headers to verify. - :type headers: `httplib.HTTPMessage`. - - :raises urllib3.exceptions.HeaderParsingError: - If parsing errors are found. - """ - - # This will fail silently if we pass in the wrong kind of parameter. - # To make debugging easier add an explicit check. - if not isinstance(headers, httplib.HTTPMessage): - raise TypeError('expected httplib.Message, got {0}.'.format( - type(headers))) - - defects = getattr(headers, 'defects', None) - get_payload = getattr(headers, 'get_payload', None) - - unparsed_data = None - if get_payload: # Platform-specific: Python 3. - unparsed_data = get_payload() - - if defects or unparsed_data: - raise HeaderParsingError(defects=defects, unparsed_data=unparsed_data) - - -def is_response_to_head(response): - """ - Checks whether the request of a response has been a HEAD-request. - Handles the quirks of AppEngine. - - :param conn: - :type conn: :class:`httplib.HTTPResponse` - """ - # FIXME: Can we do this somehow without accessing private httplib _method? - method = response._method - if isinstance(method, int): # Platform-specific: Appengine - return method == 3 - return method.upper() == 'HEAD' diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/retry.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/retry.py deleted file mode 100644 index 2a7e8c1..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/retry.py +++ /dev/null @@ -1,401 +0,0 @@ -from __future__ import absolute_import -import time -import logging -from collections import namedtuple -from itertools import takewhile -import email -import re - -from ..exceptions import ( - ConnectTimeoutError, - MaxRetryError, - ProtocolError, - ReadTimeoutError, - ResponseError, - InvalidHeader, -) -from ..packages import six - - -log = logging.getLogger(__name__) - -# Data structure for representing the metadata of requests that result in a retry. -RequestHistory = namedtuple('RequestHistory', ["method", "url", "error", - "status", "redirect_location"]) - - -class Retry(object): - """ Retry configuration. - - Each retry attempt will create a new Retry object with updated values, so - they can be safely reused. - - Retries can be defined as a default for a pool:: - - retries = Retry(connect=5, read=2, redirect=5) - http = PoolManager(retries=retries) - response = http.request('GET', 'http://example.com/') - - Or per-request (which overrides the default for the pool):: - - response = http.request('GET', 'http://example.com/', retries=Retry(10)) - - Retries can be disabled by passing ``False``:: - - response = http.request('GET', 'http://example.com/', retries=False) - - Errors will be wrapped in :class:`~urllib3.exceptions.MaxRetryError` unless - retries are disabled, in which case the causing exception will be raised. - - :param int total: - Total number of retries to allow. Takes precedence over other counts. - - Set to ``None`` to remove this constraint and fall back on other - counts. It's a good idea to set this to some sensibly-high value to - account for unexpected edge cases and avoid infinite retry loops. - - Set to ``0`` to fail on the first retry. - - Set to ``False`` to disable and imply ``raise_on_redirect=False``. - - :param int connect: - How many connection-related errors to retry on. - - These are errors raised before the request is sent to the remote server, - which we assume has not triggered the server to process the request. - - Set to ``0`` to fail on the first retry of this type. - - :param int read: - How many times to retry on read errors. - - These errors are raised after the request was sent to the server, so the - request may have side-effects. - - Set to ``0`` to fail on the first retry of this type. - - :param int redirect: - How many redirects to perform. Limit this to avoid infinite redirect - loops. - - A redirect is a HTTP response with a status code 301, 302, 303, 307 or - 308. - - Set to ``0`` to fail on the first retry of this type. - - Set to ``False`` to disable and imply ``raise_on_redirect=False``. - - :param int status: - How many times to retry on bad status codes. - - These are retries made on responses, where status code matches - ``status_forcelist``. - - Set to ``0`` to fail on the first retry of this type. - - :param iterable method_whitelist: - Set of uppercased HTTP method verbs that we should retry on. - - By default, we only retry on methods which are considered to be - idempotent (multiple requests with the same parameters end with the - same state). See :attr:`Retry.DEFAULT_METHOD_WHITELIST`. - - Set to a ``False`` value to retry on any verb. - - :param iterable status_forcelist: - A set of integer HTTP status codes that we should force a retry on. - A retry is initiated if the request method is in ``method_whitelist`` - and the response status code is in ``status_forcelist``. - - By default, this is disabled with ``None``. - - :param float backoff_factor: - A backoff factor to apply between attempts after the second try - (most errors are resolved immediately by a second try without a - delay). urllib3 will sleep for:: - - {backoff factor} * (2 ^ ({number of total retries} - 1)) - - seconds. If the backoff_factor is 0.1, then :func:`.sleep` will sleep - for [0.0s, 0.2s, 0.4s, ...] between retries. It will never be longer - than :attr:`Retry.BACKOFF_MAX`. - - By default, backoff is disabled (set to 0). - - :param bool raise_on_redirect: Whether, if the number of redirects is - exhausted, to raise a MaxRetryError, or to return a response with a - response code in the 3xx range. - - :param bool raise_on_status: Similar meaning to ``raise_on_redirect``: - whether we should raise an exception, or return a response, - if status falls in ``status_forcelist`` range and retries have - been exhausted. - - :param tuple history: The history of the request encountered during - each call to :meth:`~Retry.increment`. The list is in the order - the requests occurred. Each list item is of class :class:`RequestHistory`. - - :param bool respect_retry_after_header: - Whether to respect Retry-After header on status codes defined as - :attr:`Retry.RETRY_AFTER_STATUS_CODES` or not. - - """ - - DEFAULT_METHOD_WHITELIST = frozenset([ - 'HEAD', 'GET', 'PUT', 'DELETE', 'OPTIONS', 'TRACE']) - - RETRY_AFTER_STATUS_CODES = frozenset([413, 429, 503]) - - #: Maximum backoff time. - BACKOFF_MAX = 120 - - def __init__(self, total=10, connect=None, read=None, redirect=None, status=None, - method_whitelist=DEFAULT_METHOD_WHITELIST, status_forcelist=None, - backoff_factor=0, raise_on_redirect=True, raise_on_status=True, - history=None, respect_retry_after_header=True): - - self.total = total - self.connect = connect - self.read = read - self.status = status - - if redirect is False or total is False: - redirect = 0 - raise_on_redirect = False - - self.redirect = redirect - self.status_forcelist = status_forcelist or set() - self.method_whitelist = method_whitelist - self.backoff_factor = backoff_factor - self.raise_on_redirect = raise_on_redirect - self.raise_on_status = raise_on_status - self.history = history or tuple() - self.respect_retry_after_header = respect_retry_after_header - - def new(self, **kw): - params = dict( - total=self.total, - connect=self.connect, read=self.read, redirect=self.redirect, status=self.status, - method_whitelist=self.method_whitelist, - status_forcelist=self.status_forcelist, - backoff_factor=self.backoff_factor, - raise_on_redirect=self.raise_on_redirect, - raise_on_status=self.raise_on_status, - history=self.history, - ) - params.update(kw) - return type(self)(**params) - - @classmethod - def from_int(cls, retries, redirect=True, default=None): - """ Backwards-compatibility for the old retries format.""" - if retries is None: - retries = default if default is not None else cls.DEFAULT - - if isinstance(retries, Retry): - return retries - - redirect = bool(redirect) and None - new_retries = cls(retries, redirect=redirect) - log.debug("Converted retries value: %r -> %r", retries, new_retries) - return new_retries - - def get_backoff_time(self): - """ Formula for computing the current backoff - - :rtype: float - """ - # We want to consider only the last consecutive errors sequence (Ignore redirects). - consecutive_errors_len = len(list(takewhile(lambda x: x.redirect_location is None, - reversed(self.history)))) - if consecutive_errors_len <= 1: - return 0 - - backoff_value = self.backoff_factor * (2 ** (consecutive_errors_len - 1)) - return min(self.BACKOFF_MAX, backoff_value) - - def parse_retry_after(self, retry_after): - # Whitespace: https://tools.ietf.org/html/rfc7230#section-3.2.4 - if re.match(r"^\s*[0-9]+\s*$", retry_after): - seconds = int(retry_after) - else: - retry_date_tuple = email.utils.parsedate(retry_after) - if retry_date_tuple is None: - raise InvalidHeader("Invalid Retry-After header: %s" % retry_after) - retry_date = time.mktime(retry_date_tuple) - seconds = retry_date - time.time() - - if seconds < 0: - seconds = 0 - - return seconds - - def get_retry_after(self, response): - """ Get the value of Retry-After in seconds. """ - - retry_after = response.getheader("Retry-After") - - if retry_after is None: - return None - - return self.parse_retry_after(retry_after) - - def sleep_for_retry(self, response=None): - retry_after = self.get_retry_after(response) - if retry_after: - time.sleep(retry_after) - return True - - return False - - def _sleep_backoff(self): - backoff = self.get_backoff_time() - if backoff <= 0: - return - time.sleep(backoff) - - def sleep(self, response=None): - """ Sleep between retry attempts. - - This method will respect a server's ``Retry-After`` response header - and sleep the duration of the time requested. If that is not present, it - will use an exponential backoff. By default, the backoff factor is 0 and - this method will return immediately. - """ - - if response: - slept = self.sleep_for_retry(response) - if slept: - return - - self._sleep_backoff() - - def _is_connection_error(self, err): - """ Errors when we're fairly sure that the server did not receive the - request, so it should be safe to retry. - """ - return isinstance(err, ConnectTimeoutError) - - def _is_read_error(self, err): - """ Errors that occur after the request has been started, so we should - assume that the server began processing it. - """ - return isinstance(err, (ReadTimeoutError, ProtocolError)) - - def _is_method_retryable(self, method): - """ Checks if a given HTTP method should be retried upon, depending if - it is included on the method whitelist. - """ - if self.method_whitelist and method.upper() not in self.method_whitelist: - return False - - return True - - def is_retry(self, method, status_code, has_retry_after=False): - """ Is this method/status code retryable? (Based on whitelists and control - variables such as the number of total retries to allow, whether to - respect the Retry-After header, whether this header is present, and - whether the returned status code is on the list of status codes to - be retried upon on the presence of the aforementioned header) - """ - if not self._is_method_retryable(method): - return False - - if self.status_forcelist and status_code in self.status_forcelist: - return True - - return (self.total and self.respect_retry_after_header and - has_retry_after and (status_code in self.RETRY_AFTER_STATUS_CODES)) - - def is_exhausted(self): - """ Are we out of retries? """ - retry_counts = (self.total, self.connect, self.read, self.redirect, self.status) - retry_counts = list(filter(None, retry_counts)) - if not retry_counts: - return False - - return min(retry_counts) < 0 - - def increment(self, method=None, url=None, response=None, error=None, - _pool=None, _stacktrace=None): - """ Return a new Retry object with incremented retry counters. - - :param response: A response object, or None, if the server did not - return a response. - :type response: :class:`~urllib3.response.HTTPResponse` - :param Exception error: An error encountered during the request, or - None if the response was received successfully. - - :return: A new ``Retry`` object. - """ - if self.total is False and error: - # Disabled, indicate to re-raise the error. - raise six.reraise(type(error), error, _stacktrace) - - total = self.total - if total is not None: - total -= 1 - - connect = self.connect - read = self.read - redirect = self.redirect - status_count = self.status - cause = 'unknown' - status = None - redirect_location = None - - if error and self._is_connection_error(error): - # Connect retry? - if connect is False: - raise six.reraise(type(error), error, _stacktrace) - elif connect is not None: - connect -= 1 - - elif error and self._is_read_error(error): - # Read retry? - if read is False or not self._is_method_retryable(method): - raise six.reraise(type(error), error, _stacktrace) - elif read is not None: - read -= 1 - - elif response and response.get_redirect_location(): - # Redirect retry? - if redirect is not None: - redirect -= 1 - cause = 'too many redirects' - redirect_location = response.get_redirect_location() - status = response.status - - else: - # Incrementing because of a server error like a 500 in - # status_forcelist and a the given method is in the whitelist - cause = ResponseError.GENERIC_ERROR - if response and response.status: - if status_count is not None: - status_count -= 1 - cause = ResponseError.SPECIFIC_ERROR.format( - status_code=response.status) - status = response.status - - history = self.history + (RequestHistory(method, url, error, status, redirect_location),) - - new_retry = self.new( - total=total, - connect=connect, read=read, redirect=redirect, status=status_count, - history=history) - - if new_retry.is_exhausted(): - raise MaxRetryError(_pool, url, error or ResponseError(cause)) - - log.debug("Incremented Retry for (url='%s'): %r", url, new_retry) - - return new_retry - - def __repr__(self): - return ('{cls.__name__}(total={self.total}, connect={self.connect}, ' - 'read={self.read}, redirect={self.redirect}, status={self.status})').format( - cls=type(self), self=self) - - -# For backwards compatibility (equivalent to pre-v1.9): -Retry.DEFAULT = Retry(3) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/selectors.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/selectors.py deleted file mode 100644 index 9f16c66..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/selectors.py +++ /dev/null @@ -1,581 +0,0 @@ -# Backport of selectors.py from Python 3.5+ to support Python < 3.4 -# Also has the behavior specified in PEP 475 which is to retry syscalls -# in the case of an EINTR error. This module is required because selectors34 -# does not follow this behavior and instead returns that no dile descriptor -# events have occurred rather than retry the syscall. The decision to drop -# support for select.devpoll is made to maintain 100% test coverage. - -import errno -import math -import select -import socket -import sys -import time -from collections import namedtuple, Mapping - -try: - monotonic = time.monotonic -except (AttributeError, ImportError): # Python 3.3< - monotonic = time.time - -EVENT_READ = (1 << 0) -EVENT_WRITE = (1 << 1) - -HAS_SELECT = True # Variable that shows whether the platform has a selector. -_SYSCALL_SENTINEL = object() # Sentinel in case a system call returns None. -_DEFAULT_SELECTOR = None - - -class SelectorError(Exception): - def __init__(self, errcode): - super(SelectorError, self).__init__() - self.errno = errcode - - def __repr__(self): - return "<SelectorError errno={0}>".format(self.errno) - - def __str__(self): - return self.__repr__() - - -def _fileobj_to_fd(fileobj): - """ Return a file descriptor from a file object. If - given an integer will simply return that integer back. """ - if isinstance(fileobj, int): - fd = fileobj - else: - try: - fd = int(fileobj.fileno()) - except (AttributeError, TypeError, ValueError): - raise ValueError("Invalid file object: {0!r}".format(fileobj)) - if fd < 0: - raise ValueError("Invalid file descriptor: {0}".format(fd)) - return fd - - -# Determine which function to use to wrap system calls because Python 3.5+ -# already handles the case when system calls are interrupted. -if sys.version_info >= (3, 5): - def _syscall_wrapper(func, _, *args, **kwargs): - """ This is the short-circuit version of the below logic - because in Python 3.5+ all system calls automatically restart - and recalculate their timeouts. """ - try: - return func(*args, **kwargs) - except (OSError, IOError, select.error) as e: - errcode = None - if hasattr(e, "errno"): - errcode = e.errno - raise SelectorError(errcode) -else: - def _syscall_wrapper(func, recalc_timeout, *args, **kwargs): - """ Wrapper function for syscalls that could fail due to EINTR. - All functions should be retried if there is time left in the timeout - in accordance with PEP 475. """ - timeout = kwargs.get("timeout", None) - if timeout is None: - expires = None - recalc_timeout = False - else: - timeout = float(timeout) - if timeout < 0.0: # Timeout less than 0 treated as no timeout. - expires = None - else: - expires = monotonic() + timeout - - args = list(args) - if recalc_timeout and "timeout" not in kwargs: - raise ValueError( - "Timeout must be in args or kwargs to be recalculated") - - result = _SYSCALL_SENTINEL - while result is _SYSCALL_SENTINEL: - try: - result = func(*args, **kwargs) - # OSError is thrown by select.select - # IOError is thrown by select.epoll.poll - # select.error is thrown by select.poll.poll - # Aren't we thankful for Python 3.x rework for exceptions? - except (OSError, IOError, select.error) as e: - # select.error wasn't a subclass of OSError in the past. - errcode = None - if hasattr(e, "errno"): - errcode = e.errno - elif hasattr(e, "args"): - errcode = e.args[0] - - # Also test for the Windows equivalent of EINTR. - is_interrupt = (errcode == errno.EINTR or (hasattr(errno, "WSAEINTR") and - errcode == errno.WSAEINTR)) - - if is_interrupt: - if expires is not None: - current_time = monotonic() - if current_time > expires: - raise OSError(errno=errno.ETIMEDOUT) - if recalc_timeout: - if "timeout" in kwargs: - kwargs["timeout"] = expires - current_time - continue - if errcode: - raise SelectorError(errcode) - else: - raise - return result - - -SelectorKey = namedtuple('SelectorKey', ['fileobj', 'fd', 'events', 'data']) - - -class _SelectorMapping(Mapping): - """ Mapping of file objects to selector keys """ - - def __init__(self, selector): - self._selector = selector - - def __len__(self): - return len(self._selector._fd_to_key) - - def __getitem__(self, fileobj): - try: - fd = self._selector._fileobj_lookup(fileobj) - return self._selector._fd_to_key[fd] - except KeyError: - raise KeyError("{0!r} is not registered.".format(fileobj)) - - def __iter__(self): - return iter(self._selector._fd_to_key) - - -class BaseSelector(object): - """ Abstract Selector class - - A selector supports registering file objects to be monitored - for specific I/O events. - - A file object is a file descriptor or any object with a - `fileno()` method. An arbitrary object can be attached to the - file object which can be used for example to store context info, - a callback, etc. - - A selector can use various implementations (select(), poll(), epoll(), - and kqueue()) depending on the platform. The 'DefaultSelector' class uses - the most efficient implementation for the current platform. - """ - def __init__(self): - # Maps file descriptors to keys. - self._fd_to_key = {} - - # Read-only mapping returned by get_map() - self._map = _SelectorMapping(self) - - def _fileobj_lookup(self, fileobj): - """ Return a file descriptor from a file object. - This wraps _fileobj_to_fd() to do an exhaustive - search in case the object is invalid but we still - have it in our map. Used by unregister() so we can - unregister an object that was previously registered - even if it is closed. It is also used by _SelectorMapping - """ - try: - return _fileobj_to_fd(fileobj) - except ValueError: - - # Search through all our mapped keys. - for key in self._fd_to_key.values(): - if key.fileobj is fileobj: - return key.fd - - # Raise ValueError after all. - raise - - def register(self, fileobj, events, data=None): - """ Register a file object for a set of events to monitor. """ - if (not events) or (events & ~(EVENT_READ | EVENT_WRITE)): - raise ValueError("Invalid events: {0!r}".format(events)) - - key = SelectorKey(fileobj, self._fileobj_lookup(fileobj), events, data) - - if key.fd in self._fd_to_key: - raise KeyError("{0!r} (FD {1}) is already registered" - .format(fileobj, key.fd)) - - self._fd_to_key[key.fd] = key - return key - - def unregister(self, fileobj): - """ Unregister a file object from being monitored. """ - try: - key = self._fd_to_key.pop(self._fileobj_lookup(fileobj)) - except KeyError: - raise KeyError("{0!r} is not registered".format(fileobj)) - - # Getting the fileno of a closed socket on Windows errors with EBADF. - except socket.error as e: # Platform-specific: Windows. - if e.errno != errno.EBADF: - raise - else: - for key in self._fd_to_key.values(): - if key.fileobj is fileobj: - self._fd_to_key.pop(key.fd) - break - else: - raise KeyError("{0!r} is not registered".format(fileobj)) - return key - - def modify(self, fileobj, events, data=None): - """ Change a registered file object monitored events and data. """ - # NOTE: Some subclasses optimize this operation even further. - try: - key = self._fd_to_key[self._fileobj_lookup(fileobj)] - except KeyError: - raise KeyError("{0!r} is not registered".format(fileobj)) - - if events != key.events: - self.unregister(fileobj) - key = self.register(fileobj, events, data) - - elif data != key.data: - # Use a shortcut to update the data. - key = key._replace(data=data) - self._fd_to_key[key.fd] = key - - return key - - def select(self, timeout=None): - """ Perform the actual selection until some monitored file objects - are ready or the timeout expires. """ - raise NotImplementedError() - - def close(self): - """ Close the selector. This must be called to ensure that all - underlying resources are freed. """ - self._fd_to_key.clear() - self._map = None - - def get_key(self, fileobj): - """ Return the key associated with a registered file object. """ - mapping = self.get_map() - if mapping is None: - raise RuntimeError("Selector is closed") - try: - return mapping[fileobj] - except KeyError: - raise KeyError("{0!r} is not registered".format(fileobj)) - - def get_map(self): - """ Return a mapping of file objects to selector keys """ - return self._map - - def _key_from_fd(self, fd): - """ Return the key associated to a given file descriptor - Return None if it is not found. """ - try: - return self._fd_to_key[fd] - except KeyError: - return None - - def __enter__(self): - return self - - def __exit__(self, *args): - self.close() - - -# Almost all platforms have select.select() -if hasattr(select, "select"): - class SelectSelector(BaseSelector): - """ Select-based selector. """ - def __init__(self): - super(SelectSelector, self).__init__() - self._readers = set() - self._writers = set() - - def register(self, fileobj, events, data=None): - key = super(SelectSelector, self).register(fileobj, events, data) - if events & EVENT_READ: - self._readers.add(key.fd) - if events & EVENT_WRITE: - self._writers.add(key.fd) - return key - - def unregister(self, fileobj): - key = super(SelectSelector, self).unregister(fileobj) - self._readers.discard(key.fd) - self._writers.discard(key.fd) - return key - - def _select(self, r, w, timeout=None): - """ Wrapper for select.select because timeout is a positional arg """ - return select.select(r, w, [], timeout) - - def select(self, timeout=None): - # Selecting on empty lists on Windows errors out. - if not len(self._readers) and not len(self._writers): - return [] - - timeout = None if timeout is None else max(timeout, 0.0) - ready = [] - r, w, _ = _syscall_wrapper(self._select, True, self._readers, - self._writers, timeout) - r = set(r) - w = set(w) - for fd in r | w: - events = 0 - if fd in r: - events |= EVENT_READ - if fd in w: - events |= EVENT_WRITE - - key = self._key_from_fd(fd) - if key: - ready.append((key, events & key.events)) - return ready - - -if hasattr(select, "poll"): - class PollSelector(BaseSelector): - """ Poll-based selector """ - def __init__(self): - super(PollSelector, self).__init__() - self._poll = select.poll() - - def register(self, fileobj, events, data=None): - key = super(PollSelector, self).register(fileobj, events, data) - event_mask = 0 - if events & EVENT_READ: - event_mask |= select.POLLIN - if events & EVENT_WRITE: - event_mask |= select.POLLOUT - self._poll.register(key.fd, event_mask) - return key - - def unregister(self, fileobj): - key = super(PollSelector, self).unregister(fileobj) - self._poll.unregister(key.fd) - return key - - def _wrap_poll(self, timeout=None): - """ Wrapper function for select.poll.poll() so that - _syscall_wrapper can work with only seconds. """ - if timeout is not None: - if timeout <= 0: - timeout = 0 - else: - # select.poll.poll() has a resolution of 1 millisecond, - # round away from zero to wait *at least* timeout seconds. - timeout = math.ceil(timeout * 1e3) - - result = self._poll.poll(timeout) - return result - - def select(self, timeout=None): - ready = [] - fd_events = _syscall_wrapper(self._wrap_poll, True, timeout=timeout) - for fd, event_mask in fd_events: - events = 0 - if event_mask & ~select.POLLIN: - events |= EVENT_WRITE - if event_mask & ~select.POLLOUT: - events |= EVENT_READ - - key = self._key_from_fd(fd) - if key: - ready.append((key, events & key.events)) - - return ready - - -if hasattr(select, "epoll"): - class EpollSelector(BaseSelector): - """ Epoll-based selector """ - def __init__(self): - super(EpollSelector, self).__init__() - self._epoll = select.epoll() - - def fileno(self): - return self._epoll.fileno() - - def register(self, fileobj, events, data=None): - key = super(EpollSelector, self).register(fileobj, events, data) - events_mask = 0 - if events & EVENT_READ: - events_mask |= select.EPOLLIN - if events & EVENT_WRITE: - events_mask |= select.EPOLLOUT - _syscall_wrapper(self._epoll.register, False, key.fd, events_mask) - return key - - def unregister(self, fileobj): - key = super(EpollSelector, self).unregister(fileobj) - try: - _syscall_wrapper(self._epoll.unregister, False, key.fd) - except SelectorError: - # This can occur when the fd was closed since registry. - pass - return key - - def select(self, timeout=None): - if timeout is not None: - if timeout <= 0: - timeout = 0.0 - else: - # select.epoll.poll() has a resolution of 1 millisecond - # but luckily takes seconds so we don't need a wrapper - # like PollSelector. Just for better rounding. - timeout = math.ceil(timeout * 1e3) * 1e-3 - timeout = float(timeout) - else: - timeout = -1.0 # epoll.poll() must have a float. - - # We always want at least 1 to ensure that select can be called - # with no file descriptors registered. Otherwise will fail. - max_events = max(len(self._fd_to_key), 1) - - ready = [] - fd_events = _syscall_wrapper(self._epoll.poll, True, - timeout=timeout, - maxevents=max_events) - for fd, event_mask in fd_events: - events = 0 - if event_mask & ~select.EPOLLIN: - events |= EVENT_WRITE - if event_mask & ~select.EPOLLOUT: - events |= EVENT_READ - - key = self._key_from_fd(fd) - if key: - ready.append((key, events & key.events)) - return ready - - def close(self): - self._epoll.close() - super(EpollSelector, self).close() - - -if hasattr(select, "kqueue"): - class KqueueSelector(BaseSelector): - """ Kqueue / Kevent-based selector """ - def __init__(self): - super(KqueueSelector, self).__init__() - self._kqueue = select.kqueue() - - def fileno(self): - return self._kqueue.fileno() - - def register(self, fileobj, events, data=None): - key = super(KqueueSelector, self).register(fileobj, events, data) - if events & EVENT_READ: - kevent = select.kevent(key.fd, - select.KQ_FILTER_READ, - select.KQ_EV_ADD) - - _syscall_wrapper(self._kqueue.control, False, [kevent], 0, 0) - - if events & EVENT_WRITE: - kevent = select.kevent(key.fd, - select.KQ_FILTER_WRITE, - select.KQ_EV_ADD) - - _syscall_wrapper(self._kqueue.control, False, [kevent], 0, 0) - - return key - - def unregister(self, fileobj): - key = super(KqueueSelector, self).unregister(fileobj) - if key.events & EVENT_READ: - kevent = select.kevent(key.fd, - select.KQ_FILTER_READ, - select.KQ_EV_DELETE) - try: - _syscall_wrapper(self._kqueue.control, False, [kevent], 0, 0) - except SelectorError: - pass - if key.events & EVENT_WRITE: - kevent = select.kevent(key.fd, - select.KQ_FILTER_WRITE, - select.KQ_EV_DELETE) - try: - _syscall_wrapper(self._kqueue.control, False, [kevent], 0, 0) - except SelectorError: - pass - - return key - - def select(self, timeout=None): - if timeout is not None: - timeout = max(timeout, 0) - - max_events = len(self._fd_to_key) * 2 - ready_fds = {} - - kevent_list = _syscall_wrapper(self._kqueue.control, True, - None, max_events, timeout) - - for kevent in kevent_list: - fd = kevent.ident - event_mask = kevent.filter - events = 0 - if event_mask == select.KQ_FILTER_READ: - events |= EVENT_READ - if event_mask == select.KQ_FILTER_WRITE: - events |= EVENT_WRITE - - key = self._key_from_fd(fd) - if key: - if key.fd not in ready_fds: - ready_fds[key.fd] = (key, events & key.events) - else: - old_events = ready_fds[key.fd][1] - ready_fds[key.fd] = (key, (events | old_events) & key.events) - - return list(ready_fds.values()) - - def close(self): - self._kqueue.close() - super(KqueueSelector, self).close() - - -if not hasattr(select, 'select'): # Platform-specific: AppEngine - HAS_SELECT = False - - -def _can_allocate(struct): - """ Checks that select structs can be allocated by the underlying - operating system, not just advertised by the select module. We don't - check select() because we'll be hopeful that most platforms that - don't have it available will not advertise it. (ie: GAE) """ - try: - # select.poll() objects won't fail until used. - if struct == 'poll': - p = select.poll() - p.poll(0) - - # All others will fail on allocation. - else: - getattr(select, struct)().close() - return True - except (OSError, AttributeError) as e: - return False - - -# Choose the best implementation, roughly: -# kqueue == epoll > poll > select. Devpoll not supported. (See above) -# select() also can't accept a FD > FD_SETSIZE (usually around 1024) -def DefaultSelector(): - """ This function serves as a first call for DefaultSelector to - detect if the select module is being monkey-patched incorrectly - by eventlet, greenlet, and preserve proper behavior. """ - global _DEFAULT_SELECTOR - if _DEFAULT_SELECTOR is None: - if _can_allocate('kqueue'): - _DEFAULT_SELECTOR = KqueueSelector - elif _can_allocate('epoll'): - _DEFAULT_SELECTOR = EpollSelector - elif _can_allocate('poll'): - _DEFAULT_SELECTOR = PollSelector - elif hasattr(select, 'select'): - _DEFAULT_SELECTOR = SelectSelector - else: # Platform-specific: AppEngine - raise ValueError('Platform does not have a selector') - return _DEFAULT_SELECTOR() diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/ssl_.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/ssl_.py deleted file mode 100644 index c11dff2..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/ssl_.py +++ /dev/null @@ -1,341 +0,0 @@ -from __future__ import absolute_import -import errno -import warnings -import hmac - -from binascii import hexlify, unhexlify -from hashlib import md5, sha1, sha256 - -from ..exceptions import SSLError, InsecurePlatformWarning, SNIMissingWarning - - -SSLContext = None -HAS_SNI = False -IS_PYOPENSSL = False -IS_SECURETRANSPORT = False - -# Maps the length of a digest to a possible hash function producing this digest -HASHFUNC_MAP = { - 32: md5, - 40: sha1, - 64: sha256, -} - - -def _const_compare_digest_backport(a, b): - """ - Compare two digests of equal length in constant time. - - The digests must be of type str/bytes. - Returns True if the digests match, and False otherwise. - """ - result = abs(len(a) - len(b)) - for l, r in zip(bytearray(a), bytearray(b)): - result |= l ^ r - return result == 0 - - -_const_compare_digest = getattr(hmac, 'compare_digest', - _const_compare_digest_backport) - - -try: # Test for SSL features - import ssl - from ssl import wrap_socket, CERT_NONE, PROTOCOL_SSLv23 - from ssl import HAS_SNI # Has SNI? -except ImportError: - pass - - -try: - from ssl import OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION -except ImportError: - OP_NO_SSLv2, OP_NO_SSLv3 = 0x1000000, 0x2000000 - OP_NO_COMPRESSION = 0x20000 - -# A secure default. -# Sources for more information on TLS ciphers: -# -# - https://wiki.mozilla.org/Security/Server_Side_TLS -# - https://www.ssllabs.com/projects/best-practices/index.html -# - https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/ -# -# The general intent is: -# - Prefer TLS 1.3 cipher suites -# - prefer cipher suites that offer perfect forward secrecy (DHE/ECDHE), -# - prefer ECDHE over DHE for better performance, -# - prefer any AES-GCM and ChaCha20 over any AES-CBC for better performance and -# security, -# - prefer AES-GCM over ChaCha20 because hardware-accelerated AES is common, -# - disable NULL authentication, MD5 MACs and DSS for security reasons. -DEFAULT_CIPHERS = ':'.join([ - 'TLS13-AES-256-GCM-SHA384', - 'TLS13-CHACHA20-POLY1305-SHA256', - 'TLS13-AES-128-GCM-SHA256', - 'ECDH+AESGCM', - 'ECDH+CHACHA20', - 'DH+AESGCM', - 'DH+CHACHA20', - 'ECDH+AES256', - 'DH+AES256', - 'ECDH+AES128', - 'DH+AES', - 'RSA+AESGCM', - 'RSA+AES', - '!aNULL', - '!eNULL', - '!MD5', -]) - -try: - from ssl import SSLContext # Modern SSL? -except ImportError: - import sys - - class SSLContext(object): # Platform-specific: Python 2 & 3.1 - supports_set_ciphers = ((2, 7) <= sys.version_info < (3,) or - (3, 2) <= sys.version_info) - - def __init__(self, protocol_version): - self.protocol = protocol_version - # Use default values from a real SSLContext - self.check_hostname = False - self.verify_mode = ssl.CERT_NONE - self.ca_certs = None - self.options = 0 - self.certfile = None - self.keyfile = None - self.ciphers = None - - def load_cert_chain(self, certfile, keyfile): - self.certfile = certfile - self.keyfile = keyfile - - def load_verify_locations(self, cafile=None, capath=None): - self.ca_certs = cafile - - if capath is not None: - raise SSLError("CA directories not supported in older Pythons") - - def set_ciphers(self, cipher_suite): - if not self.supports_set_ciphers: - raise TypeError( - 'Your version of Python does not support setting ' - 'a custom cipher suite. Please upgrade to Python ' - '2.7, 3.2, or later if you need this functionality.' - ) - self.ciphers = cipher_suite - - def wrap_socket(self, socket, server_hostname=None, server_side=False): - warnings.warn( - 'A true SSLContext object is not available. This prevents ' - 'urllib3 from configuring SSL appropriately and may cause ' - 'certain SSL connections to fail. You can upgrade to a newer ' - 'version of Python to solve this. For more information, see ' - 'https://urllib3.readthedocs.io/en/latest/advanced-usage.html' - '#ssl-warnings', - InsecurePlatformWarning - ) - kwargs = { - 'keyfile': self.keyfile, - 'certfile': self.certfile, - 'ca_certs': self.ca_certs, - 'cert_reqs': self.verify_mode, - 'ssl_version': self.protocol, - 'server_side': server_side, - } - if self.supports_set_ciphers: # Platform-specific: Python 2.7+ - return wrap_socket(socket, ciphers=self.ciphers, **kwargs) - else: # Platform-specific: Python 2.6 - return wrap_socket(socket, **kwargs) - - -def assert_fingerprint(cert, fingerprint): - """ - Checks if given fingerprint matches the supplied certificate. - - :param cert: - Certificate as bytes object. - :param fingerprint: - Fingerprint as string of hexdigits, can be interspersed by colons. - """ - - fingerprint = fingerprint.replace(':', '').lower() - digest_length = len(fingerprint) - hashfunc = HASHFUNC_MAP.get(digest_length) - if not hashfunc: - raise SSLError( - 'Fingerprint of invalid length: {0}'.format(fingerprint)) - - # We need encode() here for py32; works on py2 and p33. - fingerprint_bytes = unhexlify(fingerprint.encode()) - - cert_digest = hashfunc(cert).digest() - - if not _const_compare_digest(cert_digest, fingerprint_bytes): - raise SSLError('Fingerprints did not match. Expected "{0}", got "{1}".' - .format(fingerprint, hexlify(cert_digest))) - - -def resolve_cert_reqs(candidate): - """ - Resolves the argument to a numeric constant, which can be passed to - the wrap_socket function/method from the ssl module. - Defaults to :data:`ssl.CERT_NONE`. - If given a string it is assumed to be the name of the constant in the - :mod:`ssl` module or its abbrevation. - (So you can specify `REQUIRED` instead of `CERT_REQUIRED`. - If it's neither `None` nor a string we assume it is already the numeric - constant which can directly be passed to wrap_socket. - """ - if candidate is None: - return CERT_NONE - - if isinstance(candidate, str): - res = getattr(ssl, candidate, None) - if res is None: - res = getattr(ssl, 'CERT_' + candidate) - return res - - return candidate - - -def resolve_ssl_version(candidate): - """ - like resolve_cert_reqs - """ - if candidate is None: - return PROTOCOL_SSLv23 - - if isinstance(candidate, str): - res = getattr(ssl, candidate, None) - if res is None: - res = getattr(ssl, 'PROTOCOL_' + candidate) - return res - - return candidate - - -def create_urllib3_context(ssl_version=None, cert_reqs=None, - options=None, ciphers=None): - """All arguments have the same meaning as ``ssl_wrap_socket``. - - By default, this function does a lot of the same work that - ``ssl.create_default_context`` does on Python 3.4+. It: - - - Disables SSLv2, SSLv3, and compression - - Sets a restricted set of server ciphers - - If you wish to enable SSLv3, you can do:: - - from pip._vendor.urllib3.util import ssl_ - context = ssl_.create_urllib3_context() - context.options &= ~ssl_.OP_NO_SSLv3 - - You can do the same to enable compression (substituting ``COMPRESSION`` - for ``SSLv3`` in the last line above). - - :param ssl_version: - The desired protocol version to use. This will default to - PROTOCOL_SSLv23 which will negotiate the highest protocol that both - the server and your installation of OpenSSL support. - :param cert_reqs: - Whether to require the certificate verification. This defaults to - ``ssl.CERT_REQUIRED``. - :param options: - Specific OpenSSL options. These default to ``ssl.OP_NO_SSLv2``, - ``ssl.OP_NO_SSLv3``, ``ssl.OP_NO_COMPRESSION``. - :param ciphers: - Which cipher suites to allow the server to select. - :returns: - Constructed SSLContext object with specified options - :rtype: SSLContext - """ - context = SSLContext(ssl_version or ssl.PROTOCOL_SSLv23) - - # Setting the default here, as we may have no ssl module on import - cert_reqs = ssl.CERT_REQUIRED if cert_reqs is None else cert_reqs - - if options is None: - options = 0 - # SSLv2 is easily broken and is considered harmful and dangerous - options |= OP_NO_SSLv2 - # SSLv3 has several problems and is now dangerous - options |= OP_NO_SSLv3 - # Disable compression to prevent CRIME attacks for OpenSSL 1.0+ - # (issue #309) - options |= OP_NO_COMPRESSION - - context.options |= options - - if getattr(context, 'supports_set_ciphers', True): # Platform-specific: Python 2.6 - context.set_ciphers(ciphers or DEFAULT_CIPHERS) - - context.verify_mode = cert_reqs - if getattr(context, 'check_hostname', None) is not None: # Platform-specific: Python 3.2 - # We do our own verification, including fingerprints and alternative - # hostnames. So disable it here - context.check_hostname = False - return context - - -def ssl_wrap_socket(sock, keyfile=None, certfile=None, cert_reqs=None, - ca_certs=None, server_hostname=None, - ssl_version=None, ciphers=None, ssl_context=None, - ca_cert_dir=None): - """ - All arguments except for server_hostname, ssl_context, and ca_cert_dir have - the same meaning as they do when using :func:`ssl.wrap_socket`. - - :param server_hostname: - When SNI is supported, the expected hostname of the certificate - :param ssl_context: - A pre-made :class:`SSLContext` object. If none is provided, one will - be created using :func:`create_urllib3_context`. - :param ciphers: - A string of ciphers we wish the client to support. This is not - supported on Python 2.6 as the ssl module does not support it. - :param ca_cert_dir: - A directory containing CA certificates in multiple separate files, as - supported by OpenSSL's -CApath flag or the capath argument to - SSLContext.load_verify_locations(). - """ - context = ssl_context - if context is None: - # Note: This branch of code and all the variables in it are no longer - # used by urllib3 itself. We should consider deprecating and removing - # this code. - context = create_urllib3_context(ssl_version, cert_reqs, - ciphers=ciphers) - - if ca_certs or ca_cert_dir: - try: - context.load_verify_locations(ca_certs, ca_cert_dir) - except IOError as e: # Platform-specific: Python 2.6, 2.7, 3.2 - raise SSLError(e) - # Py33 raises FileNotFoundError which subclasses OSError - # These are not equivalent unless we check the errno attribute - except OSError as e: # Platform-specific: Python 3.3 and beyond - if e.errno == errno.ENOENT: - raise SSLError(e) - raise - elif getattr(context, 'load_default_certs', None) is not None: - # try to load OS default certs; works well on Windows (require Python3.4+) - context.load_default_certs() - - if certfile: - context.load_cert_chain(certfile, keyfile) - if HAS_SNI: # Platform-specific: OpenSSL with enabled SNI - return context.wrap_socket(sock, server_hostname=server_hostname) - - warnings.warn( - 'An HTTPS request has been made, but the SNI (Subject Name ' - 'Indication) extension to TLS is not available on this platform. ' - 'This may cause the server to present an incorrect TLS ' - 'certificate, which can cause validation failures. You can upgrade to ' - 'a newer version of Python to solve this. For more information, see ' - 'https://urllib3.readthedocs.io/en/latest/advanced-usage.html' - '#ssl-warnings', - SNIMissingWarning - ) - return context.wrap_socket(sock) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/timeout.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/timeout.py deleted file mode 100644 index 9c2e6ef..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/timeout.py +++ /dev/null @@ -1,242 +0,0 @@ -from __future__ import absolute_import -# The default socket timeout, used by httplib to indicate that no timeout was -# specified by the user -from socket import _GLOBAL_DEFAULT_TIMEOUT -import time - -from ..exceptions import TimeoutStateError - -# A sentinel value to indicate that no timeout was specified by the user in -# urllib3 -_Default = object() - - -# Use time.monotonic if available. -current_time = getattr(time, "monotonic", time.time) - - -class Timeout(object): - """ Timeout configuration. - - Timeouts can be defined as a default for a pool:: - - timeout = Timeout(connect=2.0, read=7.0) - http = PoolManager(timeout=timeout) - response = http.request('GET', 'http://example.com/') - - Or per-request (which overrides the default for the pool):: - - response = http.request('GET', 'http://example.com/', timeout=Timeout(10)) - - Timeouts can be disabled by setting all the parameters to ``None``:: - - no_timeout = Timeout(connect=None, read=None) - response = http.request('GET', 'http://example.com/, timeout=no_timeout) - - - :param total: - This combines the connect and read timeouts into one; the read timeout - will be set to the time leftover from the connect attempt. In the - event that both a connect timeout and a total are specified, or a read - timeout and a total are specified, the shorter timeout will be applied. - - Defaults to None. - - :type total: integer, float, or None - - :param connect: - The maximum amount of time to wait for a connection attempt to a server - to succeed. Omitting the parameter will default the connect timeout to - the system default, probably `the global default timeout in socket.py - <http://hg.python.org/cpython/file/603b4d593758/Lib/socket.py#l535>`_. - None will set an infinite timeout for connection attempts. - - :type connect: integer, float, or None - - :param read: - The maximum amount of time to wait between consecutive - read operations for a response from the server. Omitting - the parameter will default the read timeout to the system - default, probably `the global default timeout in socket.py - <http://hg.python.org/cpython/file/603b4d593758/Lib/socket.py#l535>`_. - None will set an infinite timeout. - - :type read: integer, float, or None - - .. note:: - - Many factors can affect the total amount of time for urllib3 to return - an HTTP response. - - For example, Python's DNS resolver does not obey the timeout specified - on the socket. Other factors that can affect total request time include - high CPU load, high swap, the program running at a low priority level, - or other behaviors. - - In addition, the read and total timeouts only measure the time between - read operations on the socket connecting the client and the server, - not the total amount of time for the request to return a complete - response. For most requests, the timeout is raised because the server - has not sent the first byte in the specified time. This is not always - the case; if a server streams one byte every fifteen seconds, a timeout - of 20 seconds will not trigger, even though the request will take - several minutes to complete. - - If your goal is to cut off any request after a set amount of wall clock - time, consider having a second "watcher" thread to cut off a slow - request. - """ - - #: A sentinel object representing the default timeout value - DEFAULT_TIMEOUT = _GLOBAL_DEFAULT_TIMEOUT - - def __init__(self, total=None, connect=_Default, read=_Default): - self._connect = self._validate_timeout(connect, 'connect') - self._read = self._validate_timeout(read, 'read') - self.total = self._validate_timeout(total, 'total') - self._start_connect = None - - def __str__(self): - return '%s(connect=%r, read=%r, total=%r)' % ( - type(self).__name__, self._connect, self._read, self.total) - - @classmethod - def _validate_timeout(cls, value, name): - """ Check that a timeout attribute is valid. - - :param value: The timeout value to validate - :param name: The name of the timeout attribute to validate. This is - used to specify in error messages. - :return: The validated and casted version of the given value. - :raises ValueError: If it is a numeric value less than or equal to - zero, or the type is not an integer, float, or None. - """ - if value is _Default: - return cls.DEFAULT_TIMEOUT - - if value is None or value is cls.DEFAULT_TIMEOUT: - return value - - if isinstance(value, bool): - raise ValueError("Timeout cannot be a boolean value. It must " - "be an int, float or None.") - try: - float(value) - except (TypeError, ValueError): - raise ValueError("Timeout value %s was %s, but it must be an " - "int, float or None." % (name, value)) - - try: - if value <= 0: - raise ValueError("Attempted to set %s timeout to %s, but the " - "timeout cannot be set to a value less " - "than or equal to 0." % (name, value)) - except TypeError: # Python 3 - raise ValueError("Timeout value %s was %s, but it must be an " - "int, float or None." % (name, value)) - - return value - - @classmethod - def from_float(cls, timeout): - """ Create a new Timeout from a legacy timeout value. - - The timeout value used by httplib.py sets the same timeout on the - connect(), and recv() socket requests. This creates a :class:`Timeout` - object that sets the individual timeouts to the ``timeout`` value - passed to this function. - - :param timeout: The legacy timeout value. - :type timeout: integer, float, sentinel default object, or None - :return: Timeout object - :rtype: :class:`Timeout` - """ - return Timeout(read=timeout, connect=timeout) - - def clone(self): - """ Create a copy of the timeout object - - Timeout properties are stored per-pool but each request needs a fresh - Timeout object to ensure each one has its own start/stop configured. - - :return: a copy of the timeout object - :rtype: :class:`Timeout` - """ - # We can't use copy.deepcopy because that will also create a new object - # for _GLOBAL_DEFAULT_TIMEOUT, which socket.py uses as a sentinel to - # detect the user default. - return Timeout(connect=self._connect, read=self._read, - total=self.total) - - def start_connect(self): - """ Start the timeout clock, used during a connect() attempt - - :raises urllib3.exceptions.TimeoutStateError: if you attempt - to start a timer that has been started already. - """ - if self._start_connect is not None: - raise TimeoutStateError("Timeout timer has already been started.") - self._start_connect = current_time() - return self._start_connect - - def get_connect_duration(self): - """ Gets the time elapsed since the call to :meth:`start_connect`. - - :return: Elapsed time. - :rtype: float - :raises urllib3.exceptions.TimeoutStateError: if you attempt - to get duration for a timer that hasn't been started. - """ - if self._start_connect is None: - raise TimeoutStateError("Can't get connect duration for timer " - "that has not started.") - return current_time() - self._start_connect - - @property - def connect_timeout(self): - """ Get the value to use when setting a connection timeout. - - This will be a positive float or integer, the value None - (never timeout), or the default system timeout. - - :return: Connect timeout. - :rtype: int, float, :attr:`Timeout.DEFAULT_TIMEOUT` or None - """ - if self.total is None: - return self._connect - - if self._connect is None or self._connect is self.DEFAULT_TIMEOUT: - return self.total - - return min(self._connect, self.total) - - @property - def read_timeout(self): - """ Get the value for the read timeout. - - This assumes some time has elapsed in the connection timeout and - computes the read timeout appropriately. - - If self.total is set, the read timeout is dependent on the amount of - time taken by the connect timeout. If the connection time has not been - established, a :exc:`~urllib3.exceptions.TimeoutStateError` will be - raised. - - :return: Value to use for the read timeout. - :rtype: int, float, :attr:`Timeout.DEFAULT_TIMEOUT` or None - :raises urllib3.exceptions.TimeoutStateError: If :meth:`start_connect` - has not yet been called on this object. - """ - if (self.total is not None and - self.total is not self.DEFAULT_TIMEOUT and - self._read is not None and - self._read is not self.DEFAULT_TIMEOUT): - # In case the connect timeout has not yet been established. - if self._start_connect is None: - return self._read - return max(0, min(self.total - self.get_connect_duration(), - self._read)) - elif self.total is not None and self.total is not self.DEFAULT_TIMEOUT: - return max(0, self.total - self.get_connect_duration()) - else: - return self._read diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/url.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/url.py deleted file mode 100644 index 60f826a..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/url.py +++ /dev/null @@ -1,230 +0,0 @@ -from __future__ import absolute_import -from collections import namedtuple - -from ..exceptions import LocationParseError - - -url_attrs = ['scheme', 'auth', 'host', 'port', 'path', 'query', 'fragment'] - -# We only want to normalize urls with an HTTP(S) scheme. -# urllib3 infers URLs without a scheme (None) to be http. -NORMALIZABLE_SCHEMES = ('http', 'https', None) - - -class Url(namedtuple('Url', url_attrs)): - """ - Datastructure for representing an HTTP URL. Used as a return value for - :func:`parse_url`. Both the scheme and host are normalized as they are - both case-insensitive according to RFC 3986. - """ - __slots__ = () - - def __new__(cls, scheme=None, auth=None, host=None, port=None, path=None, - query=None, fragment=None): - if path and not path.startswith('/'): - path = '/' + path - if scheme: - scheme = scheme.lower() - if host and scheme in NORMALIZABLE_SCHEMES: - host = host.lower() - return super(Url, cls).__new__(cls, scheme, auth, host, port, path, - query, fragment) - - @property - def hostname(self): - """For backwards-compatibility with urlparse. We're nice like that.""" - return self.host - - @property - def request_uri(self): - """Absolute path including the query string.""" - uri = self.path or '/' - - if self.query is not None: - uri += '?' + self.query - - return uri - - @property - def netloc(self): - """Network location including host and port""" - if self.port: - return '%s:%d' % (self.host, self.port) - return self.host - - @property - def url(self): - """ - Convert self into a url - - This function should more or less round-trip with :func:`.parse_url`. The - returned url may not be exactly the same as the url inputted to - :func:`.parse_url`, but it should be equivalent by the RFC (e.g., urls - with a blank port will have : removed). - - Example: :: - - >>> U = parse_url('http://google.com/mail/') - >>> U.url - 'http://google.com/mail/' - >>> Url('http', 'username:password', 'host.com', 80, - ... '/path', 'query', 'fragment').url - 'http://username:password@host.com:80/path?query#fragment' - """ - scheme, auth, host, port, path, query, fragment = self - url = '' - - # We use "is not None" we want things to happen with empty strings (or 0 port) - if scheme is not None: - url += scheme + '://' - if auth is not None: - url += auth + '@' - if host is not None: - url += host - if port is not None: - url += ':' + str(port) - if path is not None: - url += path - if query is not None: - url += '?' + query - if fragment is not None: - url += '#' + fragment - - return url - - def __str__(self): - return self.url - - -def split_first(s, delims): - """ - Given a string and an iterable of delimiters, split on the first found - delimiter. Return two split parts and the matched delimiter. - - If not found, then the first part is the full input string. - - Example:: - - >>> split_first('foo/bar?baz', '?/=') - ('foo', 'bar?baz', '/') - >>> split_first('foo/bar?baz', '123') - ('foo/bar?baz', '', None) - - Scales linearly with number of delims. Not ideal for large number of delims. - """ - min_idx = None - min_delim = None - for d in delims: - idx = s.find(d) - if idx < 0: - continue - - if min_idx is None or idx < min_idx: - min_idx = idx - min_delim = d - - if min_idx is None or min_idx < 0: - return s, '', None - - return s[:min_idx], s[min_idx + 1:], min_delim - - -def parse_url(url): - """ - Given a url, return a parsed :class:`.Url` namedtuple. Best-effort is - performed to parse incomplete urls. Fields not provided will be None. - - Partly backwards-compatible with :mod:`urlparse`. - - Example:: - - >>> parse_url('http://google.com/mail/') - Url(scheme='http', host='google.com', port=None, path='/mail/', ...) - >>> parse_url('google.com:80') - Url(scheme=None, host='google.com', port=80, path=None, ...) - >>> parse_url('/foo?bar') - Url(scheme=None, host=None, port=None, path='/foo', query='bar', ...) - """ - - # While this code has overlap with stdlib's urlparse, it is much - # simplified for our needs and less annoying. - # Additionally, this implementations does silly things to be optimal - # on CPython. - - if not url: - # Empty - return Url() - - scheme = None - auth = None - host = None - port = None - path = None - fragment = None - query = None - - # Scheme - if '://' in url: - scheme, url = url.split('://', 1) - - # Find the earliest Authority Terminator - # (http://tools.ietf.org/html/rfc3986#section-3.2) - url, path_, delim = split_first(url, ['/', '?', '#']) - - if delim: - # Reassemble the path - path = delim + path_ - - # Auth - if '@' in url: - # Last '@' denotes end of auth part - auth, url = url.rsplit('@', 1) - - # IPv6 - if url and url[0] == '[': - host, url = url.split(']', 1) - host += ']' - - # Port - if ':' in url: - _host, port = url.split(':', 1) - - if not host: - host = _host - - if port: - # If given, ports must be integers. No whitespace, no plus or - # minus prefixes, no non-integer digits such as ^2 (superscript). - if not port.isdigit(): - raise LocationParseError(url) - try: - port = int(port) - except ValueError: - raise LocationParseError(url) - else: - # Blank ports are cool, too. (rfc3986#section-3.2.3) - port = None - - elif not host and url: - host = url - - if not path: - return Url(scheme, auth, host, port, path, query, fragment) - - # Fragment - if '#' in path: - path, fragment = path.split('#', 1) - - # Query - if '?' in path: - path, query = path.split('?', 1) - - return Url(scheme, auth, host, port, path, query, fragment) - - -def get_host(url): - """ - Deprecated. Use :func:`parse_url` instead. - """ - p = parse_url(url) - return p.scheme or 'http', p.hostname, p.port diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/wait.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/wait.py deleted file mode 100644 index 46392f2..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/urllib3/util/wait.py +++ /dev/null @@ -1,40 +0,0 @@ -from .selectors import ( - HAS_SELECT, - DefaultSelector, - EVENT_READ, - EVENT_WRITE -) - - -def _wait_for_io_events(socks, events, timeout=None): - """ Waits for IO events to be available from a list of sockets - or optionally a single socket if passed in. Returns a list of - sockets that can be interacted with immediately. """ - if not HAS_SELECT: - raise ValueError('Platform does not have a selector') - if not isinstance(socks, list): - # Probably just a single socket. - if hasattr(socks, "fileno"): - socks = [socks] - # Otherwise it might be a non-list iterable. - else: - socks = list(socks) - with DefaultSelector() as selector: - for sock in socks: - selector.register(sock, events) - return [key[0].fileobj for key in - selector.select(timeout) if key[1] & events] - - -def wait_for_read(socks, timeout=None): - """ Waits for reading to be available from a list of sockets - or optionally a single socket if passed in. Returns a list of - sockets that can be read from immediately. """ - return _wait_for_io_events(socks, EVENT_READ, timeout) - - -def wait_for_write(socks, timeout=None): - """ Waits for writing to be available from a list of sockets - or optionally a single socket if passed in. Returns a list of - sockets that can be written to immediately. """ - return _wait_for_io_events(socks, EVENT_WRITE, timeout) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/__init__.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/__init__.py deleted file mode 100644 index 16671ef..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/__init__.py +++ /dev/null @@ -1,342 +0,0 @@ -# coding: utf-8 -""" - - webencodings - ~~~~~~~~~~~~ - - This is a Python implementation of the `WHATWG Encoding standard - <http://encoding.spec.whatwg.org/>`. See README for details. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -from __future__ import unicode_literals - -import codecs - -from .labels import LABELS - - -VERSION = '0.5.1' - - -# Some names in Encoding are not valid Python aliases. Remap these. -PYTHON_NAMES = { - 'iso-8859-8-i': 'iso-8859-8', - 'x-mac-cyrillic': 'mac-cyrillic', - 'macintosh': 'mac-roman', - 'windows-874': 'cp874'} - -CACHE = {} - - -def ascii_lower(string): - r"""Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. - - :param string: An Unicode string. - :returns: A new Unicode string. - - This is used for `ASCII case-insensitive - <http://encoding.spec.whatwg.org/#ascii-case-insensitive>`_ - matching of encoding labels. - The same matching is also used, among other things, - for `CSS keywords <http://dev.w3.org/csswg/css-values/#keywords>`_. - - This is different from the :meth:`~py:str.lower` method of Unicode strings - which also affect non-ASCII characters, - sometimes mapping them into the ASCII range: - - >>> keyword = u'Bac\N{KELVIN SIGN}ground' - >>> assert keyword.lower() == u'background' - >>> assert ascii_lower(keyword) != keyword.lower() - >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' - - """ - # This turns out to be faster than unicode.translate() - return string.encode('utf8').lower().decode('utf8') - - -def lookup(label): - """ - Look for an encoding by its label. - This is the spec’s `get an encoding - <http://encoding.spec.whatwg.org/#concept-encoding-get>`_ algorithm. - Supported labels are listed there. - - :param label: A string. - :returns: - An :class:`Encoding` object, or :obj:`None` for an unknown label. - - """ - # Only strip ASCII whitespace: U+0009, U+000A, U+000C, U+000D, and U+0020. - label = ascii_lower(label.strip('\t\n\f\r ')) - name = LABELS.get(label) - if name is None: - return None - encoding = CACHE.get(name) - if encoding is None: - if name == 'x-user-defined': - from .x_user_defined import codec_info - else: - python_name = PYTHON_NAMES.get(name, name) - # Any python_name value that gets to here should be valid. - codec_info = codecs.lookup(python_name) - encoding = Encoding(name, codec_info) - CACHE[name] = encoding - return encoding - - -def _get_encoding(encoding_or_label): - """ - Accept either an encoding object or label. - - :param encoding: An :class:`Encoding` object or a label string. - :returns: An :class:`Encoding` object. - :raises: :exc:`~exceptions.LookupError` for an unknown label. - - """ - if hasattr(encoding_or_label, 'codec_info'): - return encoding_or_label - - encoding = lookup(encoding_or_label) - if encoding is None: - raise LookupError('Unknown encoding label: %r' % encoding_or_label) - return encoding - - -class Encoding(object): - """Reresents a character encoding such as UTF-8, - that can be used for decoding or encoding. - - .. attribute:: name - - Canonical name of the encoding - - .. attribute:: codec_info - - The actual implementation of the encoding, - a stdlib :class:`~codecs.CodecInfo` object. - See :func:`codecs.register`. - - """ - def __init__(self, name, codec_info): - self.name = name - self.codec_info = codec_info - - def __repr__(self): - return '<Encoding %s>' % self.name - - -#: The UTF-8 encoding. Should be used for new content and formats. -UTF8 = lookup('utf-8') - -_UTF16LE = lookup('utf-16le') -_UTF16BE = lookup('utf-16be') - - -def decode(input, fallback_encoding, errors='replace'): - """ - Decode a single string. - - :param input: A byte string - :param fallback_encoding: - An :class:`Encoding` object or a label string. - The encoding to use if :obj:`input` does note have a BOM. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - :return: - A ``(output, encoding)`` tuple of an Unicode string - and an :obj:`Encoding`. - - """ - # Fail early if `encoding` is an invalid label. - fallback_encoding = _get_encoding(fallback_encoding) - bom_encoding, input = _detect_bom(input) - encoding = bom_encoding or fallback_encoding - return encoding.codec_info.decode(input, errors)[0], encoding - - -def _detect_bom(input): - """Return (bom_encoding, input), with any BOM removed from the input.""" - if input.startswith(b'\xFF\xFE'): - return _UTF16LE, input[2:] - if input.startswith(b'\xFE\xFF'): - return _UTF16BE, input[2:] - if input.startswith(b'\xEF\xBB\xBF'): - return UTF8, input[3:] - return None, input - - -def encode(input, encoding=UTF8, errors='strict'): - """ - Encode a single string. - - :param input: An Unicode string. - :param encoding: An :class:`Encoding` object or a label string. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - :return: A byte string. - - """ - return _get_encoding(encoding).codec_info.encode(input, errors)[0] - - -def iter_decode(input, fallback_encoding, errors='replace'): - """ - "Pull"-based decoder. - - :param input: - An iterable of byte strings. - - The input is first consumed just enough to determine the encoding - based on the precense of a BOM, - then consumed on demand when the return value is. - :param fallback_encoding: - An :class:`Encoding` object or a label string. - The encoding to use if :obj:`input` does note have a BOM. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - :returns: - An ``(output, encoding)`` tuple. - :obj:`output` is an iterable of Unicode strings, - :obj:`encoding` is the :obj:`Encoding` that is being used. - - """ - - decoder = IncrementalDecoder(fallback_encoding, errors) - generator = _iter_decode_generator(input, decoder) - encoding = next(generator) - return generator, encoding - - -def _iter_decode_generator(input, decoder): - """Return a generator that first yields the :obj:`Encoding`, - then yields output chukns as Unicode strings. - - """ - decode = decoder.decode - input = iter(input) - for chunck in input: - output = decode(chunck) - if output: - assert decoder.encoding is not None - yield decoder.encoding - yield output - break - else: - # Input exhausted without determining the encoding - output = decode(b'', final=True) - assert decoder.encoding is not None - yield decoder.encoding - if output: - yield output - return - - for chunck in input: - output = decode(chunck) - if output: - yield output - output = decode(b'', final=True) - if output: - yield output - - -def iter_encode(input, encoding=UTF8, errors='strict'): - """ - “Pull”-based encoder. - - :param input: An iterable of Unicode strings. - :param encoding: An :class:`Encoding` object or a label string. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - :returns: An iterable of byte strings. - - """ - # Fail early if `encoding` is an invalid label. - encode = IncrementalEncoder(encoding, errors).encode - return _iter_encode_generator(input, encode) - - -def _iter_encode_generator(input, encode): - for chunck in input: - output = encode(chunck) - if output: - yield output - output = encode('', final=True) - if output: - yield output - - -class IncrementalDecoder(object): - """ - “Push”-based decoder. - - :param fallback_encoding: - An :class:`Encoding` object or a label string. - The encoding to use if :obj:`input` does note have a BOM. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - - """ - def __init__(self, fallback_encoding, errors='replace'): - # Fail early if `encoding` is an invalid label. - self._fallback_encoding = _get_encoding(fallback_encoding) - self._errors = errors - self._buffer = b'' - self._decoder = None - #: The actual :class:`Encoding` that is being used, - #: or :obj:`None` if that is not determined yet. - #: (Ie. if there is not enough input yet to determine - #: if there is a BOM.) - self.encoding = None # Not known yet. - - def decode(self, input, final=False): - """Decode one chunk of the input. - - :param input: A byte string. - :param final: - Indicate that no more input is available. - Must be :obj:`True` if this is the last call. - :returns: An Unicode string. - - """ - decoder = self._decoder - if decoder is not None: - return decoder(input, final) - - input = self._buffer + input - encoding, input = _detect_bom(input) - if encoding is None: - if len(input) < 3 and not final: # Not enough data yet. - self._buffer = input - return '' - else: # No BOM - encoding = self._fallback_encoding - decoder = encoding.codec_info.incrementaldecoder(self._errors).decode - self._decoder = decoder - self.encoding = encoding - return decoder(input, final) - - -class IncrementalEncoder(object): - """ - “Push”-based encoder. - - :param encoding: An :class:`Encoding` object or a label string. - :param errors: Type of error handling. See :func:`codecs.register`. - :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. - - .. method:: encode(input, final=False) - - :param input: An Unicode string. - :param final: - Indicate that no more input is available. - Must be :obj:`True` if this is the last call. - :returns: A byte string. - - """ - def __init__(self, encoding=UTF8, errors='strict'): - encoding = _get_encoding(encoding) - self.encode = encoding.codec_info.incrementalencoder(errors).encode diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/labels.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/labels.py deleted file mode 100644 index 9dae102..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/labels.py +++ /dev/null @@ -1,231 +0,0 @@ -""" - - webencodings.labels - ~~~~~~~~~~~~~~~~~~~ - - Map encoding labels to their name. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -# XXX Do not edit! -# This file is automatically generated by mklabels.py - -LABELS = { - 'unicode-1-1-utf-8': 'utf-8', - 'utf-8': 'utf-8', - 'utf8': 'utf-8', - '866': 'ibm866', - 'cp866': 'ibm866', - 'csibm866': 'ibm866', - 'ibm866': 'ibm866', - 'csisolatin2': 'iso-8859-2', - 'iso-8859-2': 'iso-8859-2', - 'iso-ir-101': 'iso-8859-2', - 'iso8859-2': 'iso-8859-2', - 'iso88592': 'iso-8859-2', - 'iso_8859-2': 'iso-8859-2', - 'iso_8859-2:1987': 'iso-8859-2', - 'l2': 'iso-8859-2', - 'latin2': 'iso-8859-2', - 'csisolatin3': 'iso-8859-3', - 'iso-8859-3': 'iso-8859-3', - 'iso-ir-109': 'iso-8859-3', - 'iso8859-3': 'iso-8859-3', - 'iso88593': 'iso-8859-3', - 'iso_8859-3': 'iso-8859-3', - 'iso_8859-3:1988': 'iso-8859-3', - 'l3': 'iso-8859-3', - 'latin3': 'iso-8859-3', - 'csisolatin4': 'iso-8859-4', - 'iso-8859-4': 'iso-8859-4', - 'iso-ir-110': 'iso-8859-4', - 'iso8859-4': 'iso-8859-4', - 'iso88594': 'iso-8859-4', - 'iso_8859-4': 'iso-8859-4', - 'iso_8859-4:1988': 'iso-8859-4', - 'l4': 'iso-8859-4', - 'latin4': 'iso-8859-4', - 'csisolatincyrillic': 'iso-8859-5', - 'cyrillic': 'iso-8859-5', - 'iso-8859-5': 'iso-8859-5', - 'iso-ir-144': 'iso-8859-5', - 'iso8859-5': 'iso-8859-5', - 'iso88595': 'iso-8859-5', - 'iso_8859-5': 'iso-8859-5', - 'iso_8859-5:1988': 'iso-8859-5', - 'arabic': 'iso-8859-6', - 'asmo-708': 'iso-8859-6', - 'csiso88596e': 'iso-8859-6', - 'csiso88596i': 'iso-8859-6', - 'csisolatinarabic': 'iso-8859-6', - 'ecma-114': 'iso-8859-6', - 'iso-8859-6': 'iso-8859-6', - 'iso-8859-6-e': 'iso-8859-6', - 'iso-8859-6-i': 'iso-8859-6', - 'iso-ir-127': 'iso-8859-6', - 'iso8859-6': 'iso-8859-6', - 'iso88596': 'iso-8859-6', - 'iso_8859-6': 'iso-8859-6', - 'iso_8859-6:1987': 'iso-8859-6', - 'csisolatingreek': 'iso-8859-7', - 'ecma-118': 'iso-8859-7', - 'elot_928': 'iso-8859-7', - 'greek': 'iso-8859-7', - 'greek8': 'iso-8859-7', - 'iso-8859-7': 'iso-8859-7', - 'iso-ir-126': 'iso-8859-7', - 'iso8859-7': 'iso-8859-7', - 'iso88597': 'iso-8859-7', - 'iso_8859-7': 'iso-8859-7', - 'iso_8859-7:1987': 'iso-8859-7', - 'sun_eu_greek': 'iso-8859-7', - 'csiso88598e': 'iso-8859-8', - 'csisolatinhebrew': 'iso-8859-8', - 'hebrew': 'iso-8859-8', - 'iso-8859-8': 'iso-8859-8', - 'iso-8859-8-e': 'iso-8859-8', - 'iso-ir-138': 'iso-8859-8', - 'iso8859-8': 'iso-8859-8', - 'iso88598': 'iso-8859-8', - 'iso_8859-8': 'iso-8859-8', - 'iso_8859-8:1988': 'iso-8859-8', - 'visual': 'iso-8859-8', - 'csiso88598i': 'iso-8859-8-i', - 'iso-8859-8-i': 'iso-8859-8-i', - 'logical': 'iso-8859-8-i', - 'csisolatin6': 'iso-8859-10', - 'iso-8859-10': 'iso-8859-10', - 'iso-ir-157': 'iso-8859-10', - 'iso8859-10': 'iso-8859-10', - 'iso885910': 'iso-8859-10', - 'l6': 'iso-8859-10', - 'latin6': 'iso-8859-10', - 'iso-8859-13': 'iso-8859-13', - 'iso8859-13': 'iso-8859-13', - 'iso885913': 'iso-8859-13', - 'iso-8859-14': 'iso-8859-14', - 'iso8859-14': 'iso-8859-14', - 'iso885914': 'iso-8859-14', - 'csisolatin9': 'iso-8859-15', - 'iso-8859-15': 'iso-8859-15', - 'iso8859-15': 'iso-8859-15', - 'iso885915': 'iso-8859-15', - 'iso_8859-15': 'iso-8859-15', - 'l9': 'iso-8859-15', - 'iso-8859-16': 'iso-8859-16', - 'cskoi8r': 'koi8-r', - 'koi': 'koi8-r', - 'koi8': 'koi8-r', - 'koi8-r': 'koi8-r', - 'koi8_r': 'koi8-r', - 'koi8-u': 'koi8-u', - 'csmacintosh': 'macintosh', - 'mac': 'macintosh', - 'macintosh': 'macintosh', - 'x-mac-roman': 'macintosh', - 'dos-874': 'windows-874', - 'iso-8859-11': 'windows-874', - 'iso8859-11': 'windows-874', - 'iso885911': 'windows-874', - 'tis-620': 'windows-874', - 'windows-874': 'windows-874', - 'cp1250': 'windows-1250', - 'windows-1250': 'windows-1250', - 'x-cp1250': 'windows-1250', - 'cp1251': 'windows-1251', - 'windows-1251': 'windows-1251', - 'x-cp1251': 'windows-1251', - 'ansi_x3.4-1968': 'windows-1252', - 'ascii': 'windows-1252', - 'cp1252': 'windows-1252', - 'cp819': 'windows-1252', - 'csisolatin1': 'windows-1252', - 'ibm819': 'windows-1252', - 'iso-8859-1': 'windows-1252', - 'iso-ir-100': 'windows-1252', - 'iso8859-1': 'windows-1252', - 'iso88591': 'windows-1252', - 'iso_8859-1': 'windows-1252', - 'iso_8859-1:1987': 'windows-1252', - 'l1': 'windows-1252', - 'latin1': 'windows-1252', - 'us-ascii': 'windows-1252', - 'windows-1252': 'windows-1252', - 'x-cp1252': 'windows-1252', - 'cp1253': 'windows-1253', - 'windows-1253': 'windows-1253', - 'x-cp1253': 'windows-1253', - 'cp1254': 'windows-1254', - 'csisolatin5': 'windows-1254', - 'iso-8859-9': 'windows-1254', - 'iso-ir-148': 'windows-1254', - 'iso8859-9': 'windows-1254', - 'iso88599': 'windows-1254', - 'iso_8859-9': 'windows-1254', - 'iso_8859-9:1989': 'windows-1254', - 'l5': 'windows-1254', - 'latin5': 'windows-1254', - 'windows-1254': 'windows-1254', - 'x-cp1254': 'windows-1254', - 'cp1255': 'windows-1255', - 'windows-1255': 'windows-1255', - 'x-cp1255': 'windows-1255', - 'cp1256': 'windows-1256', - 'windows-1256': 'windows-1256', - 'x-cp1256': 'windows-1256', - 'cp1257': 'windows-1257', - 'windows-1257': 'windows-1257', - 'x-cp1257': 'windows-1257', - 'cp1258': 'windows-1258', - 'windows-1258': 'windows-1258', - 'x-cp1258': 'windows-1258', - 'x-mac-cyrillic': 'x-mac-cyrillic', - 'x-mac-ukrainian': 'x-mac-cyrillic', - 'chinese': 'gbk', - 'csgb2312': 'gbk', - 'csiso58gb231280': 'gbk', - 'gb2312': 'gbk', - 'gb_2312': 'gbk', - 'gb_2312-80': 'gbk', - 'gbk': 'gbk', - 'iso-ir-58': 'gbk', - 'x-gbk': 'gbk', - 'gb18030': 'gb18030', - 'hz-gb-2312': 'hz-gb-2312', - 'big5': 'big5', - 'big5-hkscs': 'big5', - 'cn-big5': 'big5', - 'csbig5': 'big5', - 'x-x-big5': 'big5', - 'cseucpkdfmtjapanese': 'euc-jp', - 'euc-jp': 'euc-jp', - 'x-euc-jp': 'euc-jp', - 'csiso2022jp': 'iso-2022-jp', - 'iso-2022-jp': 'iso-2022-jp', - 'csshiftjis': 'shift_jis', - 'ms_kanji': 'shift_jis', - 'shift-jis': 'shift_jis', - 'shift_jis': 'shift_jis', - 'sjis': 'shift_jis', - 'windows-31j': 'shift_jis', - 'x-sjis': 'shift_jis', - 'cseuckr': 'euc-kr', - 'csksc56011987': 'euc-kr', - 'euc-kr': 'euc-kr', - 'iso-ir-149': 'euc-kr', - 'korean': 'euc-kr', - 'ks_c_5601-1987': 'euc-kr', - 'ks_c_5601-1989': 'euc-kr', - 'ksc5601': 'euc-kr', - 'ksc_5601': 'euc-kr', - 'windows-949': 'euc-kr', - 'csiso2022kr': 'iso-2022-kr', - 'iso-2022-kr': 'iso-2022-kr', - 'utf-16be': 'utf-16be', - 'utf-16': 'utf-16le', - 'utf-16le': 'utf-16le', - 'x-user-defined': 'x-user-defined', -} diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/mklabels.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/mklabels.py deleted file mode 100644 index a7f7e76..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/mklabels.py +++ /dev/null @@ -1,59 +0,0 @@ -""" - - webencodings.mklabels - ~~~~~~~~~~~~~~~~~~~~~ - - Regenarate the webencodings.labels module. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -import json -try: - from urllib import urlopen -except ImportError: - from urllib.request import urlopen - - -def assert_lower(string): - assert string == string.lower() - return string - - -def generate(url): - parts = ['''\ -""" - - webencodings.labels - ~~~~~~~~~~~~~~~~~~~ - - Map encoding labels to their name. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -# XXX Do not edit! -# This file is automatically generated by mklabels.py - -LABELS = { -'''] - labels = [ - (repr(assert_lower(label)).lstrip('u'), - repr(encoding['name']).lstrip('u')) - for category in json.loads(urlopen(url).read().decode('ascii')) - for encoding in category['encodings'] - for label in encoding['labels']] - max_len = max(len(label) for label, name in labels) - parts.extend( - ' %s:%s %s,\n' % (label, ' ' * (max_len - len(label)), name) - for label, name in labels) - parts.append('}') - return ''.join(parts) - - -if __name__ == '__main__': - print(generate('http://encoding.spec.whatwg.org/encodings.json')) diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/tests.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/tests.py deleted file mode 100644 index f6cdbf9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/tests.py +++ /dev/null @@ -1,153 +0,0 @@ -# coding: utf-8 -""" - - webencodings.tests - ~~~~~~~~~~~~~~~~~~ - - A basic test suite for Encoding. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -from __future__ import unicode_literals - -from . import (lookup, LABELS, decode, encode, iter_decode, iter_encode, - IncrementalDecoder, IncrementalEncoder, UTF8) - - -def assert_raises(exception, function, *args, **kwargs): - try: - function(*args, **kwargs) - except exception: - return - else: # pragma: no cover - raise AssertionError('Did not raise %s.' % exception) - - -def test_labels(): - assert lookup('utf-8').name == 'utf-8' - assert lookup('Utf-8').name == 'utf-8' - assert lookup('UTF-8').name == 'utf-8' - assert lookup('utf8').name == 'utf-8' - assert lookup('utf8').name == 'utf-8' - assert lookup('utf8 ').name == 'utf-8' - assert lookup(' \r\nutf8\t').name == 'utf-8' - assert lookup('u8') is None # Python label. - assert lookup('utf-8 ') is None # Non-ASCII white space. - - assert lookup('US-ASCII').name == 'windows-1252' - assert lookup('iso-8859-1').name == 'windows-1252' - assert lookup('latin1').name == 'windows-1252' - assert lookup('LATIN1').name == 'windows-1252' - assert lookup('latin-1') is None - assert lookup('LATİN1') is None # ASCII-only case insensitivity. - - -def test_all_labels(): - for label in LABELS: - assert decode(b'', label) == ('', lookup(label)) - assert encode('', label) == b'' - for repeat in [0, 1, 12]: - output, _ = iter_decode([b''] * repeat, label) - assert list(output) == [] - assert list(iter_encode([''] * repeat, label)) == [] - decoder = IncrementalDecoder(label) - assert decoder.decode(b'') == '' - assert decoder.decode(b'', final=True) == '' - encoder = IncrementalEncoder(label) - assert encoder.encode('') == b'' - assert encoder.encode('', final=True) == b'' - # All encoding names are valid labels too: - for name in set(LABELS.values()): - assert lookup(name).name == name - - -def test_invalid_label(): - assert_raises(LookupError, decode, b'\xEF\xBB\xBF\xc3\xa9', 'invalid') - assert_raises(LookupError, encode, 'é', 'invalid') - assert_raises(LookupError, iter_decode, [], 'invalid') - assert_raises(LookupError, iter_encode, [], 'invalid') - assert_raises(LookupError, IncrementalDecoder, 'invalid') - assert_raises(LookupError, IncrementalEncoder, 'invalid') - - -def test_decode(): - assert decode(b'\x80', 'latin1') == ('€', lookup('latin1')) - assert decode(b'\x80', lookup('latin1')) == ('€', lookup('latin1')) - assert decode(b'\xc3\xa9', 'utf8') == ('é', lookup('utf8')) - assert decode(b'\xc3\xa9', UTF8) == ('é', lookup('utf8')) - assert decode(b'\xc3\xa9', 'ascii') == ('é', lookup('ascii')) - assert decode(b'\xEF\xBB\xBF\xc3\xa9', 'ascii') == ('é', lookup('utf8')) # UTF-8 with BOM - - assert decode(b'\xFE\xFF\x00\xe9', 'ascii') == ('é', lookup('utf-16be')) # UTF-16-BE with BOM - assert decode(b'\xFF\xFE\xe9\x00', 'ascii') == ('é', lookup('utf-16le')) # UTF-16-LE with BOM - assert decode(b'\xFE\xFF\xe9\x00', 'ascii') == ('\ue900', lookup('utf-16be')) - assert decode(b'\xFF\xFE\x00\xe9', 'ascii') == ('\ue900', lookup('utf-16le')) - - assert decode(b'\x00\xe9', 'UTF-16BE') == ('é', lookup('utf-16be')) - assert decode(b'\xe9\x00', 'UTF-16LE') == ('é', lookup('utf-16le')) - assert decode(b'\xe9\x00', 'UTF-16') == ('é', lookup('utf-16le')) - - assert decode(b'\xe9\x00', 'UTF-16BE') == ('\ue900', lookup('utf-16be')) - assert decode(b'\x00\xe9', 'UTF-16LE') == ('\ue900', lookup('utf-16le')) - assert decode(b'\x00\xe9', 'UTF-16') == ('\ue900', lookup('utf-16le')) - - -def test_encode(): - assert encode('é', 'latin1') == b'\xe9' - assert encode('é', 'utf8') == b'\xc3\xa9' - assert encode('é', 'utf8') == b'\xc3\xa9' - assert encode('é', 'utf-16') == b'\xe9\x00' - assert encode('é', 'utf-16le') == b'\xe9\x00' - assert encode('é', 'utf-16be') == b'\x00\xe9' - - -def test_iter_decode(): - def iter_decode_to_string(input, fallback_encoding): - output, _encoding = iter_decode(input, fallback_encoding) - return ''.join(output) - assert iter_decode_to_string([], 'latin1') == '' - assert iter_decode_to_string([b''], 'latin1') == '' - assert iter_decode_to_string([b'\xe9'], 'latin1') == 'é' - assert iter_decode_to_string([b'hello'], 'latin1') == 'hello' - assert iter_decode_to_string([b'he', b'llo'], 'latin1') == 'hello' - assert iter_decode_to_string([b'hell', b'o'], 'latin1') == 'hello' - assert iter_decode_to_string([b'\xc3\xa9'], 'latin1') == 'é' - assert iter_decode_to_string([b'\xEF\xBB\xBF\xc3\xa9'], 'latin1') == 'é' - assert iter_decode_to_string([ - b'\xEF\xBB\xBF', b'\xc3', b'\xa9'], 'latin1') == 'é' - assert iter_decode_to_string([ - b'\xEF\xBB\xBF', b'a', b'\xc3'], 'latin1') == 'a\uFFFD' - assert iter_decode_to_string([ - b'', b'\xEF', b'', b'', b'\xBB\xBF\xc3', b'\xa9'], 'latin1') == 'é' - assert iter_decode_to_string([b'\xEF\xBB\xBF'], 'latin1') == '' - assert iter_decode_to_string([b'\xEF\xBB'], 'latin1') == 'ï»' - assert iter_decode_to_string([b'\xFE\xFF\x00\xe9'], 'latin1') == 'é' - assert iter_decode_to_string([b'\xFF\xFE\xe9\x00'], 'latin1') == 'é' - assert iter_decode_to_string([ - b'', b'\xFF', b'', b'', b'\xFE\xe9', b'\x00'], 'latin1') == 'é' - assert iter_decode_to_string([ - b'', b'h\xe9', b'llo'], 'x-user-defined') == 'h\uF7E9llo' - - -def test_iter_encode(): - assert b''.join(iter_encode([], 'latin1')) == b'' - assert b''.join(iter_encode([''], 'latin1')) == b'' - assert b''.join(iter_encode(['é'], 'latin1')) == b'\xe9' - assert b''.join(iter_encode(['', 'é', '', ''], 'latin1')) == b'\xe9' - assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16')) == b'\xe9\x00' - assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16le')) == b'\xe9\x00' - assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16be')) == b'\x00\xe9' - assert b''.join(iter_encode([ - '', 'h\uF7E9', '', 'llo'], 'x-user-defined')) == b'h\xe9llo' - - -def test_x_user_defined(): - encoded = b'2,\x0c\x0b\x1aO\xd9#\xcb\x0f\xc9\xbbt\xcf\xa8\xca' - decoded = '2,\x0c\x0b\x1aO\uf7d9#\uf7cb\x0f\uf7c9\uf7bbt\uf7cf\uf7a8\uf7ca' - encoded = b'aa' - decoded = 'aa' - assert decode(encoded, 'x-user-defined') == (decoded, lookup('x-user-defined')) - assert encode(decoded, 'x-user-defined') == encoded diff --git a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/x_user_defined.py b/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/x_user_defined.py deleted file mode 100644 index 748e2c9..0000000 --- a/venv/Lib/site-packages/pip-10.0.1-py3.7.egg/pip/_vendor/webencodings/x_user_defined.py +++ /dev/null @@ -1,325 +0,0 @@ -# coding: utf-8 -""" - - webencodings.x_user_defined - ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - An implementation of the x-user-defined encoding. - - :copyright: Copyright 2012 by Simon Sapin - :license: BSD, see LICENSE for details. - -""" - -from __future__ import unicode_literals - -import codecs - - -### Codec APIs - -class Codec(codecs.Codec): - - def encode(self, input, errors='strict'): - return codecs.charmap_encode(input, errors, encoding_table) - - def decode(self, input, errors='strict'): - return codecs.charmap_decode(input, errors, decoding_table) - - -class IncrementalEncoder(codecs.IncrementalEncoder): - def encode(self, input, final=False): - return codecs.charmap_encode(input, self.errors, encoding_table)[0] - - -class IncrementalDecoder(codecs.IncrementalDecoder): - def decode(self, input, final=False): - return codecs.charmap_decode(input, self.errors, decoding_table)[0] - - -class StreamWriter(Codec, codecs.StreamWriter): - pass - - -class StreamReader(Codec, codecs.StreamReader): - pass - - -### encodings module API - -codec_info = codecs.CodecInfo( - name='x-user-defined', - encode=Codec().encode, - decode=Codec().decode, - incrementalencoder=IncrementalEncoder, - incrementaldecoder=IncrementalDecoder, - streamreader=StreamReader, - streamwriter=StreamWriter, -) - - -### Decoding Table - -# Python 3: -# for c in range(256): print(' %r' % chr(c if c < 128 else c + 0xF700)) -decoding_table = ( - '\x00' - '\x01' - '\x02' - '\x03' - '\x04' - '\x05' - '\x06' - '\x07' - '\x08' - '\t' - '\n' - '\x0b' - '\x0c' - '\r' - '\x0e' - '\x0f' - '\x10' - '\x11' - '\x12' - '\x13' - '\x14' - '\x15' - '\x16' - '\x17' - '\x18' - '\x19' - '\x1a' - '\x1b' - '\x1c' - '\x1d' - '\x1e' - '\x1f' - ' ' - '!' - '"' - '#' - '$' - '%' - '&' - "'" - '(' - ')' - '*' - '+' - ',' - '-' - '.' - '/' - '0' - '1' - '2' - '3' - '4' - '5' - '6' - '7' - '8' - '9' - ':' - ';' - '<' - '=' - '>' - '?' - '@' - 'A' - 'B' - 'C' - 'D' - 'E' - 'F' - 'G' - 'H' - 'I' - 'J' - 'K' - 'L' - 'M' - 'N' - 'O' - 'P' - 'Q' - 'R' - 'S' - 'T' - 'U' - 'V' - 'W' - 'X' - 'Y' - 'Z' - '[' - '\\' - ']' - '^' - '_' - '`' - 'a' - 'b' - 'c' - 'd' - 'e' - 'f' - 'g' - 'h' - 'i' - 'j' - 'k' - 'l' - 'm' - 'n' - 'o' - 'p' - 'q' - 'r' - 's' - 't' - 'u' - 'v' - 'w' - 'x' - 'y' - 'z' - '{' - '|' - '}' - '~' - '\x7f' - '\uf780' - '\uf781' - '\uf782' - '\uf783' - '\uf784' - '\uf785' - '\uf786' - '\uf787' - '\uf788' - '\uf789' - '\uf78a' - '\uf78b' - '\uf78c' - '\uf78d' - '\uf78e' - '\uf78f' - '\uf790' - '\uf791' - '\uf792' - '\uf793' - '\uf794' - '\uf795' - '\uf796' - '\uf797' - '\uf798' - '\uf799' - '\uf79a' - '\uf79b' - '\uf79c' - '\uf79d' - '\uf79e' - '\uf79f' - '\uf7a0' - '\uf7a1' - '\uf7a2' - '\uf7a3' - '\uf7a4' - '\uf7a5' - '\uf7a6' - '\uf7a7' - '\uf7a8' - '\uf7a9' - '\uf7aa' - '\uf7ab' - '\uf7ac' - '\uf7ad' - '\uf7ae' - '\uf7af' - '\uf7b0' - '\uf7b1' - '\uf7b2' - '\uf7b3' - '\uf7b4' - '\uf7b5' - '\uf7b6' - '\uf7b7' - '\uf7b8' - '\uf7b9' - '\uf7ba' - '\uf7bb' - '\uf7bc' - '\uf7bd' - '\uf7be' - '\uf7bf' - '\uf7c0' - '\uf7c1' - '\uf7c2' - '\uf7c3' - '\uf7c4' - '\uf7c5' - '\uf7c6' - '\uf7c7' - '\uf7c8' - '\uf7c9' - '\uf7ca' - '\uf7cb' - '\uf7cc' - '\uf7cd' - '\uf7ce' - '\uf7cf' - '\uf7d0' - '\uf7d1' - '\uf7d2' - '\uf7d3' - '\uf7d4' - '\uf7d5' - '\uf7d6' - '\uf7d7' - '\uf7d8' - '\uf7d9' - '\uf7da' - '\uf7db' - '\uf7dc' - '\uf7dd' - '\uf7de' - '\uf7df' - '\uf7e0' - '\uf7e1' - '\uf7e2' - '\uf7e3' - '\uf7e4' - '\uf7e5' - '\uf7e6' - '\uf7e7' - '\uf7e8' - '\uf7e9' - '\uf7ea' - '\uf7eb' - '\uf7ec' - '\uf7ed' - '\uf7ee' - '\uf7ef' - '\uf7f0' - '\uf7f1' - '\uf7f2' - '\uf7f3' - '\uf7f4' - '\uf7f5' - '\uf7f6' - '\uf7f7' - '\uf7f8' - '\uf7f9' - '\uf7fa' - '\uf7fb' - '\uf7fc' - '\uf7fd' - '\uf7fe' - '\uf7ff' -) - -### Encoding table -encoding_table = codecs.charmap_build(decoding_table) diff --git a/venv/Lib/site-packages/setuptools-39.1.0-py3.7.egg b/venv/Lib/site-packages/setuptools-39.1.0-py3.7.egg deleted file mode 100644 index 07567a356aacd470822423b5889a156a9b6716ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 563215 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%0DvrH` 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 diff --git a/venv/Lib/site-packages/setuptools.pth b/venv/Lib/site-packages/setuptools.pth deleted file mode 100644 index 81af74b..0000000 --- a/venv/Lib/site-packages/setuptools.pth +++ /dev/null @@ -1 +0,0 @@ -./setuptools-39.1.0-py3.7.egg diff --git a/venv/Scripts/Activate.ps1 b/venv/Scripts/Activate.ps1 deleted file mode 100644 index fb1bc8b..0000000 --- a/venv/Scripts/Activate.ps1 +++ /dev/null @@ -1,51 +0,0 @@ -function global:deactivate ([switch]$NonDestructive) { - # Revert to original values - if (Test-Path function:_OLD_VIRTUAL_PROMPT) { - copy-item function:_OLD_VIRTUAL_PROMPT function:prompt - remove-item function:_OLD_VIRTUAL_PROMPT - } - - if (Test-Path env:_OLD_VIRTUAL_PYTHONHOME) { - copy-item env:_OLD_VIRTUAL_PYTHONHOME env:PYTHONHOME - remove-item env:_OLD_VIRTUAL_PYTHONHOME - } - - if (Test-Path env:_OLD_VIRTUAL_PATH) { - copy-item env:_OLD_VIRTUAL_PATH env:PATH - remove-item env:_OLD_VIRTUAL_PATH - } - - if (Test-Path env:VIRTUAL_ENV) { - remove-item env:VIRTUAL_ENV - } - - if (!$NonDestructive) { - # Self destruct! - remove-item function:deactivate - } -} - -deactivate -nondestructive - -$env:VIRTUAL_ENV="F:\Dane\Programy i inne\Projekt - office365\Generator plików csv dla office i losobolew\venv" - -if (! $env:VIRTUAL_ENV_DISABLE_PROMPT) { - # Set the prompt to include the env name - # Make sure _OLD_VIRTUAL_PROMPT is global - function global:_OLD_VIRTUAL_PROMPT {""} - copy-item function:prompt function:_OLD_VIRTUAL_PROMPT - function global:prompt { - Write-Host -NoNewline -ForegroundColor Green '(venv) ' - _OLD_VIRTUAL_PROMPT - } -} - -# Clear PYTHONHOME -if (Test-Path env:PYTHONHOME) { - copy-item env:PYTHONHOME env:_OLD_VIRTUAL_PYTHONHOME - remove-item env:PYTHONHOME -} - -# Add the venv to the PATH -copy-item env:PATH env:_OLD_VIRTUAL_PATH -$env:PATH = "$env:VIRTUAL_ENV\Scripts;$env:PATH" diff --git a/venv/Scripts/activate b/venv/Scripts/activate deleted file mode 100644 index eb9de41..0000000 --- a/venv/Scripts/activate +++ /dev/null @@ -1,76 +0,0 @@ -# This file must be used with "source bin/activate" *from bash* -# you cannot run it directly - -deactivate () { - # reset old environment variables - if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then - PATH="${_OLD_VIRTUAL_PATH:-}" - export PATH - unset _OLD_VIRTUAL_PATH - fi - if [ -n "${_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:-}" -o -n "${ZSH_VERSION:-}" ] ; then - hash -r - fi - - if [ -n "${_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="F:\Dane\Programy i inne\Projekt - office365\Generator plików csv dla office i losobolew\venv" -export VIRTUAL_ENV - -_OLD_VIRTUAL_PATH="$PATH" -PATH="$VIRTUAL_ENV/Scripts:$PATH" -export PATH - -# unset PYTHONHOME if set -# this will fail if PYTHONHOME is set to the empty string (which is bad anyway) -# could use `if (set -u; : $PYTHONHOME) ;` in bash -if [ -n "${PYTHONHOME:-}" ] ; then - _OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}" - unset PYTHONHOME -fi - -if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then - _OLD_VIRTUAL_PS1="${PS1:-}" - if [ "x(venv) " != x ] ; then - PS1="(venv) ${PS1:-}" - else - if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then - # special case for Aspen magic directories - # see http://www.zetadev.com/software/aspen/ - PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1" - else - PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1" - fi - fi - export PS1 -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:-}" -o -n "${ZSH_VERSION:-}" ] ; then - hash -r -fi diff --git a/venv/Scripts/activate.bat b/venv/Scripts/activate.bat deleted file mode 100644 index e05ed11..0000000 --- a/venv/Scripts/activate.bat +++ /dev/null @@ -1,45 +0,0 @@ -@echo off - -rem This file is UTF-8 encoded, so we need to update the current code page while executing it -for /f "tokens=2 delims=:" %%a in ('"%SystemRoot%\System32\chcp.com"') do ( - set "_OLD_CODEPAGE=%%a" -) -if defined _OLD_CODEPAGE ( - "%SystemRoot%\System32\chcp.com" 65001 > nul -) - -set "VIRTUAL_ENV=F:\Dane\Programy i inne\Projekt - office365\Generator plików csv dla office i losobolew\venv" - -if not defined PROMPT ( - set "PROMPT=$P$G" -) - -if defined _OLD_VIRTUAL_PROMPT ( - set "PROMPT=%_OLD_VIRTUAL_PROMPT%" -) - -if defined _OLD_VIRTUAL_PYTHONHOME ( - set "PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME%" -) - -set "_OLD_VIRTUAL_PROMPT=%PROMPT%" -set "PROMPT=(venv) %PROMPT%" - -if defined PYTHONHOME ( - set "_OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME%" - set PYTHONHOME= -) - -if defined _OLD_VIRTUAL_PATH ( - set "PATH=%_OLD_VIRTUAL_PATH%" -) else ( - set "_OLD_VIRTUAL_PATH=%PATH%" -) - -set "PATH=%VIRTUAL_ENV%\Scripts;%PATH%" - -:END -if defined _OLD_CODEPAGE ( - "%SystemRoot%\System32\chcp.com" %_OLD_CODEPAGE% > nul - set "_OLD_CODEPAGE=" -) diff --git a/venv/Scripts/deactivate.bat b/venv/Scripts/deactivate.bat deleted file mode 100644 index 313c079..0000000 --- a/venv/Scripts/deactivate.bat +++ /dev/null @@ -1,21 +0,0 @@ -@echo off - -if defined _OLD_VIRTUAL_PROMPT ( - set "PROMPT=%_OLD_VIRTUAL_PROMPT%" -) -set _OLD_VIRTUAL_PROMPT= - -if defined _OLD_VIRTUAL_PYTHONHOME ( - set "PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME%" - set _OLD_VIRTUAL_PYTHONHOME= -) - -if defined _OLD_VIRTUAL_PATH ( - set "PATH=%_OLD_VIRTUAL_PATH%" -) - -set _OLD_VIRTUAL_PATH= - -set VIRTUAL_ENV= - -:END diff --git a/venv/Scripts/easy_install-3.7-script.py b/venv/Scripts/easy_install-3.7-script.py deleted file mode 100644 index 57dabe0..0000000 --- a/venv/Scripts/easy_install-3.7-script.py +++ /dev/null @@ -1,12 +0,0 @@ -#!"F:\Dane\Programy i inne\Projekt - office365\Generator plikw csv dla office i losobolew\venv\Scripts\python.exe" -x -# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==39.1.0','console_scripts','easy_install-3.7' -__requires__ = 'setuptools==39.1.0' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('setuptools==39.1.0', 'console_scripts', 'easy_install-3.7')() - ) diff --git a/venv/Scripts/easy_install-3.7.exe b/venv/Scripts/easy_install-3.7.exe deleted file mode 100644 index 675e6bf3743f3d3011c238657e7128ee9960ef7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74752 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 &sjKl@1{;unAiW2w^OujNoW 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 diff --git a/venv/Scripts/easy_install-script.py b/venv/Scripts/easy_install-script.py deleted file mode 100644 index d1b48e2..0000000 --- a/venv/Scripts/easy_install-script.py +++ /dev/null @@ -1,12 +0,0 @@ -#!"F:\Dane\Programy i inne\Projekt - office365\Generator plikw csv dla office i losobolew\venv\Scripts\python.exe" -x -# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==39.1.0','console_scripts','easy_install' -__requires__ = 'setuptools==39.1.0' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('setuptools==39.1.0', 'console_scripts', 'easy_install')() - ) diff --git a/venv/Scripts/easy_install.exe b/venv/Scripts/easy_install.exe deleted file mode 100644 index 675e6bf3743f3d3011c238657e7128ee9960ef7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74752 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 &sjKl@1{;unAiW2w^OujNoW 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 diff --git a/venv/Scripts/pip-script.py b/venv/Scripts/pip-script.py deleted file mode 100644 index f132b6c..0000000 --- a/venv/Scripts/pip-script.py +++ /dev/null @@ -1,12 +0,0 @@ -#!"F:\Dane\Programy i inne\Projekt - office365\Generator plikw csv dla office i losobolew\venv\Scripts\python.exe" -x -# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip' -__requires__ = 'pip==10.0.1' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('pip==10.0.1', 'console_scripts', 'pip')() - ) diff --git a/venv/Scripts/pip.exe b/venv/Scripts/pip.exe deleted file mode 100644 index 675e6bf3743f3d3011c238657e7128ee9960ef7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74752 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 &sjKl@1{;unAiW2w^OujNoW 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 diff --git a/venv/Scripts/pip3-script.py b/venv/Scripts/pip3-script.py deleted file mode 100644 index acaed5b..0000000 --- a/venv/Scripts/pip3-script.py +++ /dev/null @@ -1,12 +0,0 @@ -#!"F:\Dane\Programy i inne\Projekt - office365\Generator plikw csv dla office i losobolew\venv\Scripts\python.exe" -x -# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip3' -__requires__ = 'pip==10.0.1' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('pip==10.0.1', 'console_scripts', 'pip3')() - ) diff --git a/venv/Scripts/pip3.7-script.py b/venv/Scripts/pip3.7-script.py deleted file mode 100644 index 863a491..0000000 --- a/venv/Scripts/pip3.7-script.py +++ /dev/null @@ -1,12 +0,0 @@ -#!"F:\Dane\Programy i inne\Projekt - office365\Generator plikw csv dla office i losobolew\venv\Scripts\python.exe" -x -# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip3.7' -__requires__ = 'pip==10.0.1' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('pip==10.0.1', 'console_scripts', 'pip3.7')() - ) diff --git a/venv/Scripts/pip3.7.exe b/venv/Scripts/pip3.7.exe deleted file mode 100644 index 675e6bf3743f3d3011c238657e7128ee9960ef7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74752 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 &sjKl@1{;unAiW2w^OujNoW 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 diff --git a/venv/Scripts/pip3.exe b/venv/Scripts/pip3.exe deleted file mode 100644 index 675e6bf3743f3d3011c238657e7128ee9960ef7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74752 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 &sjKl@1{;unAiW2w^OujNoW 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 diff --git a/venv/Scripts/python.exe b/venv/Scripts/python.exe deleted file mode 100644 index 89c00b007184cdbcfb0af7d01540e785c9c9a0e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 522768 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⪙+PLUfL%mxsIuDRp1t1B2#ciYENghK^11C; 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�l5G#uT#wRLf{8m7?J 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 Tm69M{cDuH8~wkB5MQgRQc5=CMm(1V8}?$ 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�yl5^^vgSkDQ}G56J-0+qWHgcBDC<s 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 diff --git a/venv/Scripts/python.pdb b/venv/Scripts/python.pdb deleted file mode 100644 index b48de68250e4f25dfb94fb525718aa52f8fc13a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6238208 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ⅈ7 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ʡ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̙j3zyO<$Kg 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�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ⅇa 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�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±BqrF~1tdHeX?lGxLnjXY5MfJOlIZdilBR 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⪤W4Z;- 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ξ8S0;-X zE$GE5-k-P2zI&mE<XqTWz;me2(IX~q5E-eCK%=N`!UNWt6M3sC3t7W^6Z~(+kNbMx z2AB2Z_Q?yPw*$_H{XNT=<tp*t34gu#?=tbZPQv(HQ@C(RvQ852|Fvx)^C0g-yd<1! zLvX*1jgvN=U%+{gd~}0KU(bUu+*D<>T2Lxa!-%KhWy846&q;v7bi6j1dp^R=j|Sq{ zJ|DdR^o!+7i(@6QGOkB@$`(LBA$VEyROe#p<xD*qEEI7AB*us1Rd2E(i93ar(9yC% zqg@J3Lk8^$SUn5j<GgtW&1=kyo`8XAtx8Z&B@~l9nRKTv9+@x`G=^m}Ug6TK@DkH3 zA}@aahH=vQ7_KDQY~_-bq?UShdM{@E>U^s7)I5RaPY>#lZ?2ualyylv3uR0H%i&kH zgz-~nBwc`NEGit^Zvt1n1?G_!M{fWe=lEOQl8(dqigy5q`v8JX2bRFZL<L!3rI*IX zrg)S)zJFu9cO#xt9%^dAN<t;C*YKDhjActRlaq*!FvuF$_L#3HFOVjoa;VnrxKHIu zful?q_B{xD?Sh29d}Bv_^s7Aza+wKcAu8KgZj3|R@AlC3t`TfkZMpY?*7jhIXFtRt z{r7{uKj!}cVE&k&<FO+!=KmmY^89I!kY=4HX7vC)llYuj@Td>oS+fWFCbnIa1f*gH zgG=2G3BLqToK0bdzzLjl*x1j&riN)GJ%_~b>??4#pqZq*cL(h>j)^{OmF51yUMe%Y zvmO~e5bU(O8y@4Ec_i8AM0u?_!LC%B+Hoa&qg3!@`XWG3Rw~nRhr-KxVe<g(=gx-n z1%*0RE>4!~FMX%E@^a*mn!CKvR{0p(smx9A-JYBH1pKshxDG?y$MNIb#3$+E5j!Zx z0VeYdv?&P}Tk|t`x928^`>dfOaY&DI3B<``<E}X<jO(*(*7Tf)>C#Yl+I~&uFYdC& z<aZ*?kj8V0zQuMKn5}Tg&QXo-NYxbzQOZy1T5QEHA-_qzxphig(Z-3bcxztUiXT<= zqx-N=;oZqhi)F;VlJ?D~L9dp5cL(rJfA8BrHS9am4%v5vXW4faE@j_2yr2-UbQ84i ztaR(zcMMxIe+}4o<g1>2xA(rgMxSFi#kT%NoUqTwFc|f)wA77u`e<Zj+kF9eu?cD0 zD8FY@(f0Tv!fl_EhN0WpU7+XNGG7MFw`HiGm%^6$3UKm-*DvOTIc>Q(q~=JPArD_` zv9GB!Hy-G2QcD1Cj%06eIwnlBU{@IgQpT@neV<k9*~(Z9vHR!NiPzd{)qKIJ-E0<P zvF+PL*=OytVju8z$c6Oxe7F1iZ^AEq2yx%QkNy4Kbn!H`uRG1J*tN0`-K=lB=2}*R zV%woj@on%THpO@FuKP2+&*~odxzCE<F!=kdlKd=;zH9O$`>ehNKW&`v!DaqAUW>!y zUHVYsIPcRKF1^nxiI?7I^&_OseM~<#Jh<uPB72_|=|~y;4DVuB3Ew{l3>6petFrSX zIDa42FBDCDCkr>7&-A`2@}OxYd!rbS<!I+~2W&PzvS)~MX!ic1gib#Co#I=kKY=*J z=_kFPD8ae)!~H~AIG491p2&sRM)x9J(opRmB`xh=<<HO;oY+POoBc#zQ#|YW5`XVL z_l<lXc+=wJm1q%+3^k>8fw)p4F;2>eVkr;_nh~-Vai!UmUDg);0DRkfihc+`IthM9 zklIre#Cdy)eiDjr?J4qTID3jbT)d~~r{uALJw;x8XHSubi}w_HaL*RZMIJuhQ{=(b zgaYTS2&c#1Q^Yc{V9uT*H@x0c<ihlxqF*^QrW)E)<kHc5id>l9Q{=+*o+1~f_Y}D> zy{E{9={-d*Oz$cBwZp%=r^pSj_Y|?r>g_4|4Z`?)ihc`Nyn9Hs@mxfhzo+Q;fQ9xH z{Q>aMo}xbjp0%gwPrzmEDcS*CdQVa7R!N4q&!J+_cKM&dw{MsK1u)+(r`^YWMSlfO zp0Hj1pwf=o{`XmK!DyRLyKkPx5xjXMqg#r<H4Kj<(lN8lzW>2EBF&t1p>xpN)*#-< zI3gWAtKc%*Q{yBuzt*6=^bg3fj3fANk0b7bUu;3*{)r#Q5&xo#hw<0o-L~ET1Amt7 zp3qnr{nyYC+x_40)2_Q8F4Lq99EZodZ@V{!OWW>AytM7!c7nFu7r-SCwB7CSw(U;1 z*zUU^yluM^w-~UH?QY|?Asiq124aaxf7f98Y1=)amA2i9Q}qQd#dc?&_$@#ZFKw$6 zr=PT~p5Wa2psk*TW1SMGc}e0)+Y?)TALKa+m$Wg}{tSJ|k8i90UGbc4t4E;it9H=^ z8T~7kDl?U0MwBMH<Ql|nTRjK9ZCgDLf0nHt#Cf**!cct6R`+N)wz`LlZS_Uuu>o7% zi|^R#9xk@kJ$TAi_wcc;?!jYQop8%8S9{r6CKk-G)!p#gR(E0AR^QE`(U`67($TiM z3)8l`3)8l`3)8l`3)8l`3)8l`3)8mx?hgO1t?q``wmQqKo~^zI!uYoOo`CtbI$^%8 zz87F2TfH6dkgdKq;90i%QsA;|^@jl0w5?u4cIRI)Xj^?>@a@~``vI0^t3MPtdFIAe z|DP5@9a}xk+yBD0`a#2U{;ug=Q0wM(#*67JN_SR!^<1X0)A6&4DAR6d|IL0^Y)8J^ zw&Q_lbE@w~!z1nhwn5mA4>xU5?5h|DwAgr@A0}Mvt4AP?*jKd4h+AgpNF37Rnlo|o z*f_2^hj4c{y>>jCx~aQ@JXbXouOTzfs_aoHQXW!wVtXBlvP{Ccb;LDf8z;8c8_gQ> z!&E(Jy>t-Xoq?jX$_&L=%gDmWQ>`N(44Sppkq-gB<~nPQb!5^Gts@hjwT^7zJbNS` zIlO2?Ex3+srCWC$nPF?@uYq-B^3}*X@}Ugpts@^6!@}#xhXZe~BP)Mk9r*}^^VX4P zBS_dY*p_=FX!`x&QGogVAm>fEmV7jD@`U@rIc&Y573H~-Zp?FD)Nub|?rydF6<N8n zP+1*-Ua!L$_$WKk^?bK={qgXNt|#s|{HW_spo=GsOOO8_g|Pf6q62O!Jm9wOQfZ)f zV7P9CkJALqNfWxu#)<CQGpF~z9IN=#-$r-hea?Gg)YBeVD_RX5yk&tm$ENlqx8=H! zuGpZ?*11_pht|hE%o9d&+;`7&CMh$$fcf%4TLtG&=KFw?XQI}(qI1WnW6RlO(H_;* zSD=r`YO0yGO5@*RX7A<X*6XZpEU-k*;E64kNp|k`m|WfZevDSK7A%U)Y__<UES`P# zCvTcAHZ-M7=9(r}b3SztG9-GE@3x+NH2k95h+B>y_2h|k@icYzO;)4hS29|1(jhW7 z$;zILlfZ}A+$ZB*+lP8j#t{5jXWt}wSs1M_d69YD$H31yz*FEd@0{0-!{c4_I&rk^ z8^fjNb(47MdEM1Wn|m@&Gd#HIxO*~4N6O#~yvw*l_<k&4?5Qp_;|x1bg4<?rGOxQ< z(ZsodaMSrr&+C#0P0O9TWjWgU^yhVxc=_mRi@ymIkDQbDYiu0)NXC=Lt`E-ZX5n03 zl6vIWf^lSQaW3BJS8W|7D{Y<Sz_Epmlm1!uU<@d}^t^89OqWxE_f<nns%B?tGqVR{ zCHS`IbyvY}?C#Vaj3CaN*F8NH-<sF;XgKq_9xk5OT|*ulnAi2<JM+38E}qx*;NCbY z7kT)2Ue|-i^SXpvbGT|=mt|tXoOxY0yq?!}VR~M7okOFsd0m%|p4W9@dS2Is>3Llj zrss8Cn4Z^lVR~NIh3R?SvmE~2d0jWWp4VlW)tlEn8)5u;-Twp3pVuYKpVwUvSZH2% z1K^=~-Hm`}&Fh{6T-LnqCg8-TPBv#fkj)%zo1X{1eS7_Jfcf@1Z9VS6I3GB9!rys4 zsI;Rq7KrPuY4dF7*n0DNhGyDwQ{7rJpfI1cnTa7em$T`j3Xho7Stn0G+Y&pL@3tL# z0sN}}M&l#yiTKfuEzrfo`CG!pjw<3^>?qn^#0{IUw!OjmTjJ!gah$)+!qFBXPVs?v ziAP(6aIr-;<2?zN@GG{6jT2ksd^1<@F=aDpIlT~c!Zpy6^?_jy>E@#n=+>O;%bd&H zH7X;nKX+G&Vd=R$&IMF~H)q!R$Fa7W5jDrK1$2EqHUgNh$0$R%gD`&)aPoxb<>t1u zwW0~roGTfc*Y%%(elXKTiHZnJX2o+V>G)00sZh4KM_P0Q-)$W+hB_4;LEKi>F?7VZ zscYh>3t}AJ6S>VP+M+)u5y#daj5B5ENF36m{vb{s8%O;S!p-^mPr7Vn6$EwD@cK`h zN^><7um6P0SJ$2B#miBaNjSHTI7YK^q8DZTXH?aL){7H(Z)yfTolC2%^!m>wpjm7E zXBzm{bY?yx?a=xU;aTfH7S0>D<Rga{t&E{$(&t22>DFEUVc44aYhe9{d^NKEGsAG+ z`p=~?EZv9jEQ!m2x7UA^Kd}C@4dI$w|Eb+L*neFCntng?B*6TBM%I6x44gdSer66^ zuS~;P+rs8j{|=k;4>(7I9P3*W)Y%qo>dYCOabRvvkb8qQ9A_LDxH`=X>l1Ae^)Svh zz=<5VGhv2DbMRK`dw1M`JDe6kYj3y8Z5c{8co#&vx)ed2;2F!bI%`VZ1Ckv$OU-eP za-Pn1Pcx&f?cl6X*lK9eT$<Af?l5P~+cQ~T9qKa>uS8prKA-P)pMN#{(&rO*6@KjV zpGFr?8ke3gz6N1w&p#b5!*kv>riFLAPiMPr440lSPU5BKi=TzGIbVF8;lWMEoi8RG zu~VLdcd=81?;8L^A*AMu8BcKjeDRHnCeDzA%QA4&PtO-8w9@m%c0T?2;v`;rzL+@u zr00thoLe8%MOir3DRHVz;9csGb|m3qi@Xf)NjR_V82Xw<E)rWr&H(554Yz5j@7qK3 z#m@kK{$@nN^4Gd%P&QTcOz>>a6<-U#>7!F~#X+1mSN!Zyd~2@Qqv6aId$@S6_<Hi# zz+ABx-<d1+aPeHR2ls5QT;$>7xnd6<&lMAH%?qo!VwQ;obLNWO@OrM;h3UEC=Q%VQ zn=5wd=(%DSrss-Xn4T+kVS29Eh3UCs7pCWmU6`ILzRBU=ohx?3>$zf<S-rX9=Oc_i zSNsCN{JCPn{JG*60v4Jpei7iIx#AZCo;6qe65z7tieC!cJkAx*wNg;?D=!DnzTNu@ zz<j$`&H#TUaPoxh-Up9XoV!WlaMjGEy+r#Ny;%ciy#|j^m~;D?eeJg~KO*+qtI#g= zyS}&i)$ogr#&EZ=-N1gk)wCbR|Bi_-b_v71*5IX2x6cUReR=7y`RFzi$4*bvN$$~O zdWuI_SZ~F6hvQBETYSP8hJzR07N8WpS!aC>;K7njMkJJ{=yeDuV{DEy2)i9Ht>3tA zqz_#r{Pi(hQ)YOcpYsO5A%TVs+(V`IR4vWFQNgwJW!|F~7=g%qUd`<s8HcuzC*F0< zbF!c*rnlhiRKDjT>CWX0Eq1f|y^U7Iq`s$SL3BlBa$LVJjLIXMaZDcLFS72!*~Pl! zX0hr$qaEjCFSXoh^Je5bG*XO9Q`Z#4`P?2CHk6JwG!)&?`u?WYchWU80&G2%IsafZ zL$kH8qptQ?@U5t0(ItGh$AWK%Uu2uOx8X-!@(#Lq(zx`V(03v%TkyN!GCaprF)h4{ zz9Eidq{eXRv0xG}Jr;Z)(&kw3{e}lO9d|59Ix-gg5Z>*vAaNhYFEkdkasF8FBZ_7e zeH3mwpXsq+LMuHMBu>=>xb(+@Nxbwop~UGYJr+!GZhdepn1y4V5~q1d;!)odE@Q#Z z;XMiGwH-rW@*`ux6U_N7Jm*-(f_|UD^IP5x+9|82bs64?nnL$a?*aezxbVI3XN?Pk zIB#6|flz#FT<Fn|js$&WF7j~kxbTDIv4L@+7vC8ddboI8=)qItLJuF03q5!|E+pI< z1FCT$%fx~?<3cyQ9v8YWJudv1L!+^Ap-V@P3tgBV7rHP#E_7jfT<F5|xX^{^aiI&- z<HC<S{JY~qH@qGfvdrp@3qOG{{<!dyfcfJ>!u)aJrvM9$3qK8bXk7Riz_Z4Mp9L;! zTzCg?>2cwMLP4l8;^)D?KSsP0Fn^3lyNY{>z5tv&4UQ2X6orv7UToeL!nUHFVOKT& ztwNX^8QKIpq}qd_cr_wSdCpd^cE-I?HAYl%HnYD7kk*l=lC?Y)9<*Q_Mw{j?$d=g2 ze7Ei7ufQ+1FmYeTk9P7`>EaQaFUA2Tb}#o?5iU08H}EbtC+$??zG>)4oO!+LDP3OD z9K(Ab=D!AZ%<Fwkb@HojAW$P*zBP2MPMTtKEpC4ASW0u})vugbugofybJ&08x;Mgh zP8sZkJC+(Q33Y7+N}`oJmePqd*BGcfz61HE9?*|_uab}3#LJ8DgyPxvD*5qb>=laF zSA(W~uaZww?o|rWyj_j$@J&&q?^60M^2fWBzGvL;8}|ps{h@JxWZWMc_a|_vL+^nr zI`n6F=lGLw@<h1Y|MPSBe}SKWe^8>E7ev1Vo)7gt>5`Vj|8)cLe`DhF{vgIb47BX~ zgOarDen9szGH(6@;w9nSzJ&X^Y@F1c+#mEMmA+m>WjO!-AmSUjKj>=+m#N-GYqVyh zz`o5#UkCkK`@)EqIo)RO4`STVzA(bG_JvtEZ!D^Ljd{_7beLG_ePLF*b@zoaY)lh- zj9R%r=<Xz+Dm^vU)%@wH5wn*5ErgRjUYu|LHvIPeL6j3$&qrzvp6xe*D@~~G5Be$K zS@#G13b<D85Be?QIptB~{vhTDW1Q6eLCja9_XqtBVdv`ppx=X5>-PtxdkGOQZU*K) zxj%xwKNkEGVE$N8?ho1loIK(0O6Ezj^<XWN_?(SEV3*7NL2SDyiFvy}=+9PJ&hh<0 zH7kCu?s-fn(wq&#e(+e7fsB9nZjXQd20#0F&IuFuSNu5s`8!=aX<X9p$v4LTKv*ua z{u3_4A9bWf3ve0xq;c+AK=l|qUa}T&0PGCX|CdSU-^TrqNzdWkN>B1G{c`jum%fun z^viMnVKYd-+=p{^IA47q(z1^0h(%nlKjxL4fOb4S!HYhoB6aS>o$czbtI_dNakK(m z&a)`qd7!%Is#GlD>fb_Ta&l}Occ<ke-jRm(X@>rCFBWdU1z*cj_hn(PGxB*9);nc! zbgIBvKV0W#(&0Ii$3^DycC|*Dk7f|318Ly;cXbyX(<PlA!0h|@1U?WIoW7KB-qUrW zbx#*z9P17tt(ge~pPDiUZRj$%1h`Y;e34xZXTDC43TA51UdzS4aE((_g9d|st1bF3 z>OkFbFE`Aad@&DaGq36pc5{W8!I8I(F%CT&shTp{h`gL9`*8uIuD%~>Y!6nn#^=z6 zd|jRg%-7{SALamjThj)dJUD|Suy;3@nAXG=Dog6w{u-aN%2e$&x5=fCE7Kcv8<@#i zsgFWPQ^+_9A#)yQp3c`uGp4f^w2bGv^y2dK7s6x{Oq#olVr%4^%Z7>7JYQoG+OzZ} ze7F0O#qdjiLEJ9*u`gLd7f%|uFuK@`C8aOf6=A8*cZ19Dl<k-n-tE4GvfUWY?PuJ0 zNk1d!MeK#Nx#rw%c<{s9=MXb}8M{6N?=t@<eD4Dodq@Ag3dR$hzvjHJqKUl1Wf{2X zr`MblTJE|s%P}b*7svh~iI?7gOq_nwYt9MItq<z$ES$?r5|4c}<47O94Da--wu6#& z+K!<wIO(J1yo!a2=j{E*y94iwT1$#=XK4rMcJ6uF1AN<S&3nS1wbmTOd27vkhvHjn z%^nSBt=YrHYt2i^V*_i=UVLY**~7(a%^uvbNx1&);p4St53VLfCA=DIt1DMZYOR@N zV!@oXX3|M;dac=o>9yvEI^h~yYj)}AwPqKl*P30JUTbz?dac=o>9uATrq`NXm|kn% z-{Id~Yj(rywPu!Cy|w0tA&kG)d;nnnS~Fq(TJwQ`h1QxM4tQv-`5?fv)|w9nE^Dp% z5x}L_nrW*B1s!%~x-Z?iW`njx4*}o4EqW+mzAY-}RU8JKJmGnT2bFfzHnPw11JrhE z{JaX2Avugsj{#chrhNO-CE0XAW!mPPt3Lv5OYEQ{@lHEP_95TV9!0VbnRWofK2o*C zd~}p@VGl&PrTEq{I`Sb=bSTy=82(JyC}J}vaTY|!m^i$zmi^<=@Td0*=c8j|xEUIb zY@HazIFEIK`Gov&h7M%{r%?pPW)H@?$hXrD5*wZGwvGNM_@zvVI{`o1=pA(Nh`kx( z027;=^-Q?bb2r|_-ldI7T#un6aeje4$-Kv#a}O^;eTGVTuE$k@ulzHUm?J6J!F;xv ze7<a_<+F(u?ztI>@3;^7Txjz7ik+6vWEDdhanStd_PDT`E8BCF_y4NzNv`Eor1k8q z7A@=et*mIzO#x6h3_!jq=lXHivwhqqYwg*`+3VRpPR4bi^!jShwAZtJn)Z6OkMq~F zmm_~%&wjLVPc-ghjC+!CPd4t5aaX{ljvRz5I`UM!b8JgE(<NN`x|Q&+!jJvq+e}|4 zdQ|D<XhF0Zcs?8_lP+mV{L>qVzsAJpdN$)923q!dHtSNSW$Ss}hsc=xOoU0oxqSuK zvu&Kz-F<EPjOStGOZI^?oWGt;yuY4(82Wx%-vu0bF)}@+*3dc;H&cnXY8|QZbw26> z?OJQu#5-%7W)WJC!Hd&{%yXeM?a*2_X=bfuTR3m5tLeqO)L6?V4g1WIvGK{R#ZkQ; zfLZ<V5+>@gwuG|vXtubP-Rq^N#>;`V>^_9E*RuQJx7V^MBd%uGYuRkO2|QWLJ_Ycs zwd~V?Yh^9_48)7enB`GpEt~lXtz|P`p|$MKLDsKaVAgrmIz%pdEW*y!TJ~Dds<D>c z%Agj*2tD3h2ipF4^DMyp@g~<Jj=-Mgvw@Q*Jl>phiLSSTJvSX8^oFcov%R7OQtQ_f zfG&vFy_D6W&U)dx7rsMe^O~A2$U0w}T35r_FlO=U-W{|xXg9C7%COn>>((lJwky|j zQ^f2qSD|l^esm+sLB<*!LlSq6Dx37TtO+jpmQ}`zn-C{7Ry;R`yJJPRWsVikQ)#iT z$y3PY3y&3B-=tq>^e%g((^FAdONB#eu7`%Wepp2w8~aY$T9DKeUgq;y3!bq;#dPj& zI32GnsqS0t<DFR|nE@feIU4yPU$o60kM<#BZob=N?kB=8V{YP}fFH-)7tqC%#--QA z3JA-A$AxfH;Q^QNw(ughTM6OgG|_UMG@*-ZoY-#v#k@+iPd++d@u%<SDB^t%Yensa z*a8{Ox|d@Z>B*d|U2Cm21Fr3tnFp+9*!OW%0Q37Vwo~56Q3Xz(#_!{3P3sy#3Ka3& zwo~pOm3GQ^yPb|8ztXmd+rs>#onB<hfjXIR(aEELi%#aag}ALIth7hc<J=E%^4K_@ z3z>zZo+nQ6fp>|=Hcq&-@kykagiH8Uc|jYuani=C=3H5QCZ)D-E(V?Ow>PrgCu=<* zy-Q1C=ske>XbiL+o3i0C#IDge;+pk7bu!%E`|cV|#IW?afNblR0H1ZXY@I%-c4naO zNPi0SeOa0Y%$FthpFCrB1~_@b-?z<2$!p~wraWi68I}I0t`xcAyDeAS;1{_f?lSx+ zSC`Yplg1@&UG_y>fw0v7PlC(v+$$H;0$gN+IPSkoaPHm*H(s*$LH5`^#iX;{xKB0d zQ5F-LNqUq;!bKLZ#(NUZ%Ohmb#)&MRVD{KO8F4L3!dMu3-yG*H(7IaQU&nFR|Bw6Y zIL=rRk2Bc!w7$RYN|gV6@2|TGX*m1q$g;X?ur2pA;C!8O4Pd@bp}oqzbx#LQp89+1 zbV6DqSgovvy?STE_A0dVSh+Y^E^sQVRTD+C=8&4(zMpe#qNDh3>!@d;EJY6ycP+~n zI_f%8#_anEm%jgc!0o=DxaXL#wk~4dPn<k9j(vX?j{1f;#RuLc9`z03qHk_Onn}2X zUzHc=8yhG3M$VLfrs7xkXV1oaxSwdXI!QMl-2l3+_WL&?uHWxJH-?4#{pSIn)$g}x znX3N&`Jn5|<_iGxWmC?Se<5)4G}Yg?$Yjl)er~2Dc3d|{=ZVFd=$v|o@va=o8naUl zPJ#_A^88|yw|>`WiM<qlk!OZ`3F`y${4!H7jDNC;&v3Ng8SWJZFY=bgC2RIJeH|}Z zn<st66Ewyf&Dml8nV|fZiD5!#hrJwdGZW*EiHudib^li)jK~(}7YMr<u=M;+TlA_J zuBkFS&kef;aJ1t1+^{Ru*l%h6)e26Wny(A&4XDMPsB*O--Q~YVf5S54xj9m&e7AM< zYr&J0IdQKckEqkv8D6QQ2^SrGJK(mCChqkntX;p<(ZtDP<EW#vaMaPnDL(Kn@gyIj zqu+uwlW+;YDlgE{HcoW3jL-C)(OO5}209r!y3UX$JxS(|&)xvq(w3V0UUApxjfm^( z={Lo&u%3Q1@L76#R+%y5v$ul2udm+*n6Iy8eD-$W<Y`J@&x+ZaT6?Z$IMw*<qiClh zSA4hS>RrgY$Q5z#WLZG2-fhYxjZ2@K{T_tn`0TwQT7cWK!8AlRK7jCXnvh&4O~{6g z6WIvO&%F<HTt%aAvai*h1_t`7Yr@R4nxA8TkTpN|ex%p*{9KI$Ij8VJ=E0kv`w(D$ zo0a*w4+AI9+|19_U{E*JKoN_Lo{pQL>NERvxl@2^M9B5L+$lgChIa~l)GE7WDB))B z6qpMe=B9Z&Q!-r_vAz#Z;bpHw)=_UY5^CgF$#nFr#haR6_=u)#oLtRsd_Io0A-a<9 zwyyjn{Gtzu`viW}m7k)ECyiSeeHZ$UkIZF#8ewTWd<HJV^IMsi7T!fy5=XnVF`PTk z<;F|qx#Sz4&m(Pq<8!Cs!4GeL<HPjDruq`z#ikOz?*fe4-~Yyk@dW38<MU-jGm5?f zH=WP)H$Dk1_d6bzV^TgYj^Fqs@zUo?5~rW^H$Dl@tq*?VlZA76N#fBSWE|=9?!i0# zs_md;owj4>3r_mHK69=l&%}`ZM4@vfKMT4>Nt<0R<C7x$LD3JJ@kZ=V3PzbXZDGbR zcOVb;_dcJ4-`JO_I|qU|?|YvwgyLJ@`*<{*?|nR6{JqZ?$zucG`*`u4?|nR6{JoC{ z_x3>LA`c&b@8iMMrVD=WL%7<HWPR_$GO=LJ_dafT{k@M1)8G4i)uGYY_dYHi{k@M1 z)8G5JF#Wxc3)A2GxG?>_j|<b^`?xUuz0cPi{@w3=-0=E)AC_6Y?|r_GF#h*G-vG@2 z-iI*%d!KIt7W&@jZoos|`+N)VtnYok4P4guKHmXOY}W^$lF(z}?;;Prt^7T}d|R0| z7SEUbK5+7c_hLP0wWed4$MxC5^4`v}vF7hA^|S#feP6gIYi%~AMk;e|^oBWXp>i`V zUcG<khma4kdHHVJyg!Ct>{{Y}gdc6*pU}mV#-(lEpCT;nqo2WLc-oFJExh|SZ)3Q$ z&6~ta+q}O*+O&CpZFr!~YlpXOUc$xZ{T<$Io0quX;}^1dZJclO{z1`<qCdhFn>R^6 zZSy9yT)UR#n8b5&w0V<wX`7cg{iJQ)1n1TVZQd-L%S#fEHZS9d&HGQh)34eNO4eyR zhQ8p$=9RP5xqqdW&HHoEop0?OmP64lK{L6wWvw)Yp0oc2__yudU&5bd?*?(6z5AO` ze9PYTXgKz+hl}mq-;&1$>|HOuWAA#n*xvQvDSOw$$M&uVkL_K;E!$Ro-_A0zV2-`( zhS&D43)A-QpBx&E*}E<sZST4;ZST4;ZST4;ZST4;ZST4;ZST4;ZSU@I_;>AHH@voY zS!VU@-Fp$nw|D;xm~ZbA=G(h}0W4(i{uS_$z56%7v+Ui!1D9p*{sXvqw|D19L8!Io z`@p|%>;4Nc-`170)c*~fJmIyB2dB22OG7tYU2|(!&ENcPjrF`>SJd*1O^t*aF?G|? zXEnduIJrz~mv+g2As=Gv^4+#|BN&BZ&k}b(WeK)!j>aOMG%kH_P#$4v7quB$v~^=z zc=v7H#&Bs{H;I?Fb$3D9v~?F79^hC!xc3H;j@Y`pA)syR61O`e2j+KeoNw#yfjCTm zPq<?1Cj6#t-Gr8F&$1kocrK2%ZW1qT>k_A*w5^-q-1?xcn}u_EN#aSH5?gnF<e4;7 z+d(NfZO70ToY=ZDzk8!vE6`^+h30n`fOfOmJ1sV1w}wZ>^QJA#{O&^J!M1l7!JlRC z263LfyCf9fvUfcij=k&QVtaR2^4NgA>&18MT@M%AyB<7c?|S&y-u2+Iy-T=d+bVmP zWn#e`d)E!G?Ohk9?cKc`8jabzE*)*}x-f0;x-f0;x-f0;x-f0;x-f0;x-f0;a`7xF z1J~Yl!)tq&WmeDL-5X(idv_^dzP(GBZ|^<?u#mmG58xqtcVED>?A`r<%d&SL3S86n z?gK_i==t4;ArHRIdjMd*%`5Y}2LdP0+|2JjU<#y;*_-C`e{Ex3)cU@LR<`Q|Enf5| z4em$}%;uV1K>in~$=tfxP@9gLvE@ab0&6kU{GOStn=om69E7$n_AK9Rd-f6Vi_J>h z!T8ahT}BsA8kgSNbqK=J_Bj+T!_%IPY2n?sXB)$%?b#$=+MYcUY15v3q~QUM#e-|l zl8)H3$Kc(zXNfzOkpuRujq~l<;}p#(Iv%drvkAXxdp4ov+N><cB%X_-J)6W!pGiub ze$w`Af^+MG_G}i;<t2$HZA$Ffexyqps_md;owj4>3r_6WMP|Rk$1Ho+-~Y^W#Sa7B zls)@E(*nkBJsiB+cIy%FXW6YmoM*Ql6^d`!tsV`>ZuM}n-Fh^6Y`|{y;yZS$hl}l2 z51z7HJ$!7pdhpn8B|Ndu^f{y~6AR|pt!{X2x4JNGx1Qk8Xv}VP>1eyvg=xFhg=xFh zg=xFhg=xFhg=xFhg=xF>Q4asE-Rg$db}P%Qp55AkFuvW|37BuU66V{jU4Vt`)^5N< zc54sdS$1nLa9MV1A8={A^?{}gw0$}NUVZy?5HR09r7gt$2g`wzr@=Yd2U^B6?9d06 zEyObwq`znXM*oQ{d)Pcj;9M;}?B7PLa6~iQNv4i`dnUo<qIP@_!bj|;1ebjK^Imm+ zM4LM2Q`Rm0zK`GPJO=4ukuYt*Ti^Jcj4<+DhJ52Q1elh0HW3`XQ<=oI4%1uEkD`Z} z8JjkjF-iCpad^EXDc}B_r^<u(Mt}vJaU|dVoPzN3;H;kT-snuObu$U(E5kY_Kdh5c ztn-Q;%Xiz3T?L+`%!yk`9#N;O4X<fjdJn>B2+MC2P7l!nT<TqT5&P${2p^{j`^QNW z_K%Gd`)5ycz5?%5VH=>Wvj%jGt>YZ&F`GTsx-Rq4x6yvHzEwB_>55*RyM(nKT+2Mc zGO^DTITJ8n5B@-XS9WB69dPnA{>{RyO32Y$cK%yg?MX|+kUB$%ZDzn~zkIjb@Bbm+ z(ng6po8^G^yWW%saeR$&cu(3R&Q3%e8PlADfTH6h&L%@g;>_Q<v*|&vR#(eTYUSM7 zG_?#RF%&HMc|3PE%~_Jq=Fgo?Q)@1t^LOrSnzJOI7)e;Sr}B)RR?eMGr_fy9=lk5* zG=HHIn8mrX=>(c80P2SGA>Y&i`f<;l^>Lf5Gh%(5eeSG}lfEmIUSAEG_PMh@P5azg zALpMt`vl~X=gvOSxEC0=VB8ChTQu&laZ7Od?eF8^ijJ({o&7iAOqXyuH?|7@X8i7G zch8+obnk*_3-ElX*GZSOB>qM4*NcC#iO+Lq8UHZQvd^7O(z5lu?nA`x7)QJ$oZDCM z+*unZbtmV}K0&n=y^hFm{<*WnH*)Um2Jn!*9@xqd1+%JZJ|!P*1npYq&Jr)SZ*$)y zYucf6XGt^b+*u3f&24CUF)w=32U|$ecc_v^qvy`n&EIfk^T^nk(jHa08ZS2aBXz#U zxn6o|?nLvaO-;0Wo-=SB!rAA}J`R5S+*!(qr|nfdw%r7toI6_vJnP)q5#U-mcXkx< z;xevt?kw|zadheqRpzVFb7!|A?6nIDarUNARy-4d^V`4Lqp-EOZDi}r*22hGxw1{h zOvL?e4_)sXq3z%?&}#AA*>vw9-4FQTcfk{&?c3Ow0Os4+a_;OTaPoxL!sc9}wT+!g zw)yprptT3RA?MDry`lu>?cCXEs|@Gz+}Z5Po}+VT(+M<XYs}NyUDj;DEZ6R`$ky7M z*6d+8S!;Lcw6hAj*4o{rXlF9#!FPMixD9?8GZJ?hejGDiP8Uxamp(W33WVi6*puKg zJoQ&h3-2;sB#vYo!==~ml6dL0yQhLM*Y2(~Jh<t&Yj>n0Hr&(jF5_I``x-_Ltlcr5 z;QY0_rz@IK^bEM^e5Tj#5?b#19Lv$p=MHNwkZX5Iy!6@~ar#NG-6c4;KDc(5g>!jH z;?Z7Z9I+vvi+B1}+d;`XZO70ToY;`EcK1xRe=hqz!6$=mQ)_o=k<mTfd};x+cJ~zU zYOmdGhd*oWE{OBi?yd^Ox7O}F8qV6Chl|(lt|pHStlfF>owYj;7q8uUaL>NYMIJt0 zyYt{QFL7sr4sWf~sXb>b6AR|7-H}d$(`$DwOt0NN(+Stu+MP>Buid#Yy>{oq^xB;Z z(`$DwOt0O!Fuiu?!t~nRwGRL8+MOF-uidfC>aE>93t{}VyXye+*X{`O*Y2JTSZM9; zdcZ?#ch3PlYwhj^;Ih{4ZUj!|nB#piO1d+IJ9F71BfPbHrX{k;_g1;*fmh$2z6mhj zo|d({=L09t9IV~_FSMXD2OigtnB{4XGEABIwT0N<h%Ll-+ZK8e>Okxr;$Fx)fi3i6 zQ#aDD$2g$Hw&5HQ;bK?33~|J+V07YMZs<rH(&M>s#K~jhcrIKBcb9b!+MTco(&L!r z%hB&NxHm0bF)}m^%(XjYo37f7`SnzpqcEf#Xlt+x#MXE<%8-6lHz;kpZa80M<HXju z6=xswto_HUa@OPBmw=9wnHB|J=9yj!dbQ@6UIDx_@6hns<oSrSL-S08XU#KNIIkbh zM-DIAKncz>S?Nw)JTg(Jb-xkA*34f6^GxK+p4U=+x#lmPXX3f+uVlFC;&er?M8j6t zHM%*5rOyK7+|;Xpm$@m<zbL;qx5IgmTM%yhoHPvG&Ta)gzaMxFV17TqbC8!}565eP zlPBB{%n5T^S39KUNSe($`$3q?r_54*pSqvOZ*J*AWbPv9tO=a0e*ckCbQ|(}JAR@A z;<JSF3!~SYvJhM>+X37{$o2`8ZwIH-`;SR)_eZAFi_gVGyf=I4@m$OUIL95p@f(`w z;^*RYdP9hll|RmjKhe;9yO$pKF@D_8^l|Y#Ja|cPI=y=khv|j#7vIZ(c<=Vo<Gl=9 z4KF^9XFz?~!`+NFiV-%4h1OHR1li<tVRXE7vDxOK=Fv;V(b4703x(0H<;zbTEp8ny z7YiNbp3bh0uC8LwaMwVoG*Im6=&Tfb27CK^Dg(tz-%09*j)p@I4PDq<9_Z@s>MKXo z!)$BsM;_Uy-xTE4oJoFZbpofxPFH>Yiv9h)m2z)?vD!H>TpXzMlzYpi{(+8Saj>Ir zpjvVHs~bAR-v_}T<zm)lIoRJ@?C&i04Ht_&0|Uj5foe~sv$xte+|k`VI6Ua_S~qlv z*AJVrT#9>xS?M2u|3mnF1V73o=SyxmG>Tr0A7_9*3OFCyLaYa|g+7jVv4u#7xKEg{ zNk5-!XL=InQ(he6KK=jLI}a#1ildMB&Yl9naDV^-1_UC<%RvO45E4lVArVA4_ICHA zgVWvVf{+MC1RD$jY;1A{8v{1MCKxbaj4>H(g2_ST90VAX`F{VI>D}Jh-CIeZ&-gv> z(`lx=tE;Q4s;jDddU^`f5kGC6yPP_rO=WjS>U?Xy*Vfk7*C$i0H8r*M>5AIQ>bi78 zva%&vS6kEATGv>gt0N_$3-SG4XkKC+PN!=dD;gV7S;%W`t!u5QsBUR&s7Y4VHq=zq zHssP*61ot5_e0-zqQl8lO;v40vObY)Ot)}TQJZXSXlbcysi~<+w$@bT(pnO_5Ume} zytF!eAL$49dx*b6I{bI?^^*=u4pz4w=HAs|l|2%|x;m`(Y@Np<byW7x0(HbsTjvR< zj&xXMPe$r|YaOnyX=$vktE*_OO2PQ*)|SfJWNj+lm~L%tOtsXv<np~FbRoV!4b4le z!_`%-m6i30>Z)`@YeTxFuChAW(pr^FG*mXGQ#G{_+g1{~5Pi==-*=+J_0?5X4UIMF zbUps83I|tNTiu#YrCZa9mWsx7b%d9tpbOFZe8@|y!_Sa@j=vZ9E2P5<$k$IgEIC-+ zdWm~ihgJ4+2<z&w+Ou_Djnq-uYX$0vpSI2$P95p6%HE9B`PMp|sH;jgR#&sv4kKJ& zS&b2Ct!=2NPgJJUiDYGKF5gQ+7vlTd(7ePtoT#p>sIRQA$M_~t58Oqvg>a&xCf(ZD zSXmK?bxJ}PqVHYk`%ZMYwyvVCwxYHo)zT`4*5g7F4b`cZnp%`O71iOA(1mDyKjfv= z;de;C$KMD171H5_<m)FLmK>~ZeZ;-1!z%kYgmraT?b$k?MCz#Q-v#Q3pSI3tP95p6 z%07?O`PMp|s!Svj4atT&;^CT_s;ZXS+H_-8MP*fEU8=sJr7>5BOF|do`<KwX<T{LL zYiLciw4~}Qs*(+@RaMn3HPsDOjTMR3ipoSyE`5no(1qyx8v4Ey9j<AuN!Hd^5WJ^r zl2t9qn(E3#b!)ONkxW<BH%9G2N$5hfn#zEeR)@cW_HX!$kzYuMJ@WOF4oePJx5~(O zby#HsLReRa)t;?0C{jmdgA3FVKW&|5ojTHCl`R*k^R0C_%>=Bqv9_wN9`{_AO4nB; z({<Gql?~M`4RtNaNDNmJx)9%g0L@FR!}aN!hQ`)(va+TwRa;%tkZNJPrK*$3bag#( zdu^@`mxL}v--^)po#=3FePeZHbwgvSsy<bnN~RlHDq2zmKh>#<R6})jB$g-%U5M6| zLS9-OUV(Hue=GA>NQYM;Uq9)v<Y0AcRqkCKR@rJHtgFLn&(;|lsiU$r3e*ulZJo88 zI?`d4{V=bNSFRXCI<f+DRlR>Pd?nr`1#Sg1*q^7eP-E65tu+G0JudA^uP2<W^{>AL zSAK$1tmDEdJv<LC_!f|2GVxFITNmGkg6EfCmR;l4cL7yzBVcviIJ~aU)zT~d(!FB1 z;67+~Ghl>!Q?8kIf!&<6e%-t$r1yYcp`Klb++<V3yCQM32{3lCrDTvF?pqUIwfgG6 z&J#ZO-U2)p_jbU^rVKP2#kUM;Pz}A~v&id2rHRq{<sy@wKMn%k+4xyJcV)YENVk<) zwk%&}6~L-~Wq93ytJNJVGsV!Z%xZuU?rN?X+{mn!w0>4*uNRP66)>5OmzqrUBeOd2 z6p~qeNQ3BDJeidwCP!wapz~$sm22$JkBsp~^4u{#g0%QAd*qH?rMKlTI>u##TsWn- z&w~r}MYhuFgp039@ci=2^7UmDu+o<u!s~WiExlG>WLsT*8ADpQcjTIB7e0(7t)JDG z)k#~K+A%(wJgYAyoo_$-vXg_`9pgKPG>DGH(wEZ2xcX8OI$vJ`nOVOkp1ZQ$HKg0h zEL)Z@v)zDI{c+)SBv;8yb*#+f+gzDVBrV(%xMpx8vq_}&voc$gbW~>J$+I#m>E!#7 z+3pT*S7wt#8brrp$*eRnuFOh8=gW+9^RRjIBV&9D^txkwDrxawakD#imEKEzi}-QH z$}XJJ`{cm|`l6WL>V%7LU%~UsFU!}L{eYFe>>pnD=4$D+`l302t1kzV7Vc)QnRekr zg0y~CUj~wn>dOJ-S$!!vN$f{oS{&T2z9d5$M8{(3OKD<UeJKf@uP=ej?EFhScV(Ln z>9#V<mgUQ=6<F1u9$u$$mCRJf%1m=GS7ry17Vb8#8QjS1V5Rw4nJq&)Dzh2nS(%lb zjP@h5b_cgBvzZ|cqGPdSR+<=BW+kEXW#*M@EoFXWjCVq>JI1?6i~m~RamTLG-RfIp zjB8EDg;TmW4=&Ibtvy+taPiF+Jiq+1e0@0tSn120@Y=)G(rfiaYgMkk90rVVAIde; zE_^tgw0>4!{zbj0zRU&2>PyMR%zpIc2=G|kuD<*zq(O8nmcEoG#?_aS(E0ij$jq)2 zis!Cu=Y@1znPtoJWp)&>s(*BN?c*w$sg9MI)(Tyj{TLYGK9*|+H!}MPY5lCsJ}n@# zV}P+TE4gUekIaq(Pa&BdAJQN?7E5NOiE(9C5;|XIUir=NV}4|ep8&n?7(bD;_^;=| z?$}lOB=s#a#&3zhDSb*FT%a%Z8MWl?!u?$E{H(rY%kuT*RA5#A7vc41Tt%<ySbfoR zYFA%Q2S&J0<C?(@AI>1HpVgPYQP0ZM#_GQW#_CJS2loBw%bDP@xZN>+R!D>BSS)=h zO^mBAC86{6C6Jl+7g)KtI&e-%cYayE%+3W?GCME4p3K$in3b9KBe*iV5E$XUfNQ2* zWOfm0{jALHC?K=*fw3|xy}c!P_pi_z%EjO*B(qCG8brrp$*eRnuFOh8=gZ71zaM_g zkBsqOL$5o=FC{Jh>v_35#+ANIeT$6o2P1GwUy%nF=!>4^Tb*$6{Z8=w^2_q|<w{_s zFIR=v%eh*5t-k2lzpF352S&KB;hJd|KKy~SepX)|rJj|k9phI6WA&xv=8%5I__g4% zxZN>+T}XrISS)=hO^mBAC86{6C6JljcOjm;vb`as+sZ6kmM^nE0;~ErhS%S6mCRJf z%1nDNT$%j|7~#H|YX&zmyM?rVR%VYEkl9VZSecdFgwl`9ZUs*vncWuBAUYOHW~GU7 zWmXb8Dzi0NOV@tQHC77N(>Gd$Ga9+qe$MO|A7E~We)0cVco&TEpx%0{rE7nu-3#gN z^AzkI>Noom|EeoLo-wSfclg#JZS^1v7c+kg;quG!b>uE!r6YHT*E_k2M(s^-_2ORg zg-`n_GHsz3_mQvP9VS>me~WS}J3E%|0mkY@$xSGsUWg~|`nmQZi${YE8z>X)Y5NYi zcven}y=|Qx_MLI<mmL~@o!!ETr^8I5dwP3YPcLm~t^a=Lvb4%JXfNcltj9kP_DK|M zVoL0VEZrejw@N~n(ycXDDy&-%L9^txBG+QNrG2liZVC1u{7JVS)|H>ttwz#Tf3k2f z^JoZ{UzV?1j{z&)`e%53gsW&=i>s?!PmmVAa;}-S(5)v)>t}UqZPHd=R<|A}&+1mm zhmzlcZi$DBqFYZnw7R<Wbl4~LtE6s~?vSfnC849bC0S@4(Tz8hepWOVus2i4w{p+I z#mw_zpYqG{b>anJr4tLn>vLR1$Ff{qop_0~@M+&brY&^hW%Bj2I<Y+Is7|~{p4Ewx zn=QTromf<R^NK^Os}rw=eNw+l>O|=dxjIo2x{yvNUUhXs>DNVL0Xv~M*2+B#7c*~$ zeabJ(*NL})l}@}JUf<v<ozNanS0~;jU-+~yHPaS4@gDj5S)F)_@~BR{1B}&)lAC$I z1D#k@JMlhrSz2A4_#o_)`c+aVN_WWBiIUKTbmCoj>gt5jABx5TcA}GfEB7p1%zPa7 zDZeaVC;kPjbmEin`Vm*@g!Y@cI`Jv_!lylQnYPf0&&b!$>ckh6TRvOg@o!+PPL$kO z_#NoPqS}eiq07?h>ckgepVY6CI#Iequ1=JME~FD$yK;3x>90g%0XuO5`Bv^(xS07S z>{EVOzD}5`Kqq41^=s-%C-gpps}pg`g-`EbWZFU}%E;Hx>cl;iTRvNz@PNtaM9J4& zf^~{-6RR$&ofrUJmR46M28Ml7ze?*w$qwb{L@DT~POQ(oWDs;{9;CUCuKFuH9~xu^ zL;E_^;dRuUI)&i}nq`4^+ZY<+R~v=n;z4HlNE^0JVfcY&1>m)ZYYOjt*}YZe<XJr* z4y`I%i9G#Qqiy}9Z(VdmWmEan&n?sWA;rp2L#HfeCamFC_jQ}8WR7mHM!RZDbu#br zLFwutJ+>_K4xm$}xoEkMI%Z}vZ*tQoY>>s9d56xaYw>2@y(>_bdDpK%S>_$V0%e(Z z=n9l&-o10mME9^rKWtk4P<bGhY(H&U<#vv996D<I<??c)et2oi)W&)d8f>~4FKu1h zrprrPCcN6eC+)K`vT55ly$kP_+qB!R+aKZ4&$jF8hAmUO(q9*^O<TMTyf-Sm!7pZ% zub;*1>W#%~%iO-YWz$e()eC<4I9;7`>q-AzopQ_0WBdi*ZWGpgoUXpP^@P*aH@EC5 zXjHx6m&N%|Y(T+xJ@u+*Pj9NNvpIMrd&G#PcREku?`JOIi~2e`*f|`=zWSNy=xNhy zs~l;jmrtiU>86pDBS$(_nnrFA?dxK{GtJ=^g?qKwn3{^5_%&+Gs8P)m_MTSY-Pn<g z|K-se#THH6yRpS6(pIP4akN8dGc=A=$Bv^%z6bhI^eDjpb`>ewv8Add{`=Eokg?T~ zvD~{lvJ+{mBd#6Z+1HC~nX5mxO!^~yR)5^I?5*`(f>9e$n>;>j<L2*y-sK#d@ZYX$ zIh|Sh`ZW<bTK$^Dy{lilhq9Nya&>5OD0}IQ>R26GN<J$8bW2~xg}-B3*qZmN6vgoC z^r)riqw<?AegIS9URmu}WK2uoqoyKXs~>xE@9M{1q^<pN<F37Zoe1J%)v@}qlzdcv z_xsV0qNe=6T}6s^Y^iFA@1yob##Tr6<KESg{YhILapU#_e7(q)x%y+vWM72O>W`at zeUxC-Ml{AxhHWe*AGKI|mt)rd+jT9cGfQ8;(#X;3S1b3feoYT$FCXRV(2P*_(izpU zI`sUK$15d1NK@e4wy?%xd8#FEWoh}V=DqwQ01F)6*w062i+HTX$F&4L>tN(<^`)JA zS6^n5w)V)K*LV0j68J3DvHJ4T_eNie8hHC*_acXA7Lc2*L4dP#LY&1HGb&cJgPCtO z<qxr98n`%G<NL5#$lU5oH}|g2^pLhX<E|6+`g)QrbM?uV$^HnR)h9RY`Y^$$jp&-v z+^~)NzBhW9WBjcq{kQ90PN)7q^zAU@YW3}K?p=L5BGiTG+T)KxU62l`j@7B9=hF&= zI7`8&_0!7IHc<IZ7qckER|>7MTXbBDW1Yft^o~N_R$q?h-qn|5NL%~lt}7qw>qy|! zRLAPe((`HgEU*Tma12z`<lAb+>`FfkeXmreXa_SkCch`eG;ndW#`kH*A#<xU$8+!M z%uh*MopGO2oZ#z8w#?NhTPFJ>d{&>_wCmFZqc)<?G)@WISb9D!pQ%=%3hQBx`M03| z?YfuKss9gs`#Ey8`gSV!uD<;u)P?A?uV03`ARSU2t5bR=qVuC&9A`K<-1Y7=LmXD0 z-L*<vCj7!@@w;j1tm;PBxSO44?xNdWzp!|1o9^7xEsL&6L~*+Dq+2iQ``xl=j2Ok~ zj%T-Cl=p5~bc|Y@lEZ52<jUbUMdWZ<KXR~T;=Ay<a<FMDhbXUY-9o&Mmbv_lmbvkH zw9MsMw9K`EwoLudo(Z=fHm!cBTzfd&a+?lpq*p$RQdhtKScI=P_QO|OruKx-ZO^8Q z@zvHX#Mfw<%hza`%hza`%hza`%hza``~2Vi{<hT(zpFeujh2Z{TlP`-?Qh#Z(Go4Q z=Pqe)&)wz0w;{z#wWD2Ncf)%Z=C=i4?ghr4b95|wJ#OTk0=23A6vIOr*sNym59O#a zB|MV7t@j{hwx0HPjCbli<kTAho%5+@X*zaI_SRGWA^XME=E^y3#?8Y{-Pw`4n{H&x zqmjDVcH`zTr|vz_>$dwiW&O4Lgj4r-k-AS&)?d3%hjncqweO^7h%rO>Qy;ZoGl`s2 zzO3Ws*%02A4P@`gAb<Zze%b5_`(32`vU%voQNE7kmo<_<qDa}=;9Q44=}VNBtEh8z zk$PW4<2Oa<{FJ_ZR-}I~P-j7rdbgARmm+14g72{iPRnE2rv7;RW<NZRmbpBRmbpBR zmbpBRmbpBRmbpBRmbpBRmbpBRmbpBRmbpBRmbpB(Wtnft!h6}6^%;j%jBnW)>9R3p z<`ej9;dDNJF}P11IGt->4DNFWPUq1VgZmOVYlE~8OYf6q>GI6il-s=kSA$1o){mKL zrQ@s4q6f;O`ogiipY;RYc?$NZHMgfbruWY9_cRB2p2>V;Gp9^#^R8V>Uu$c+8+biS zhBxszZP;IV!7r;s_W<?#a3y~Qv7cv!h1al`2>;TWlrF)C4GZ_mKE=srP?4w7i!&Q# z4MWd<|I_j;IvM|O7irOsEmf&5)N|GUv`lj*x&Q5Q%<0V1mEBUZuLTxf^zrJ#t1g8t zQNKbghJPvB*ZgLSSjFP2#G$2LWK7==`<hR#FP_5kENX`S+eKQmV|I+@v#E%FERIx{ zmVM19wjY`1n56%9Ip%a`>B>&e<d)DkF8L0Sf-BZVtn8Avvb1cieU4Tj1a01{;HL_U zTieCQwKyY_cvjEQz8~@}YMe?v$H?cit?|EoA^L*ZLOq}Qe#kh-a9Jr89PPnL;Ni<a z&3rtht2f<kYka@tn$xMw^QnBT{7#;SE<Jl(z@7eYk3{(CQ4Y&#Zb|f{Gt$jx)^{P@ zrD~7!NzM$Xf+KK=?QuU1Ep3;Z-*hptEYd!`MMt+dUUw<l<9veqmvN5ivY-XEA$XPX zKV^^e`_+$Jb2_z@N9;na8*5E^IE%Y{AH?6U(#UfQz5lM~WBz^kZsfi^Te126eVBhf z>(MsfzYp`DW?kIo`}gFly)N2Pds?TqXQ?SY7drHO>puRp4y`rr;9ckeW=+<g?O6bV zRk^PED_m!g`5|@ec>{veJNdfmIaq!h1I;?&I(oy(0o=aO_pQGJ)KHU7*40#}6ODWz zGhNkMpGsC#wzO2F8|$iSsv9HU*(nLl84Q(tRj8__5@N$WY3p&TXM!gb{I+XPx_36q z`S!(Ld)P&iucX%3Rku_pE9z?a6i{VVbw#?SwZ1W(sI6&DM83mT61osw!=X#hR=+h5 z;Zvf%uClJOAz9nlQc+h?k*=z#ZK$iSs!7#XS4Y0fSQ5Grts90sw9nzzC%plG8}VnK zA-msn-I#p+basUJZ_kd{lzZvCeFmzs%|cjvK7{J1JzHmsNF9}JS)h*iY3pq5)bXEh zldj0C<CUw9bi+Pd(iy8&<YmW}XR1kStc%tt?X~1Z&mt9lE}YW!d2qp*h2o>j3yZH& z@ci=2+;cR7@BfSdHV*7I;kAydrC0i;d+|NE58B<Hv~X|7RsHhY1$HF&`q^_WHz#e+ zS+QrrY)hUUCM5@CcutV`>YiVy^9Gw7+&aU>e*b4wNP}uD*149YiE+<!DG8lF4g%g; zofpqt*^UnBwld3><;!eGU{!xicx~V+IjN47ne^V3+0LYednc|L+{kPf()wAMZACgN zv$5n^nUypE{m5)r2e&J;-9j2f$70E>G%>EsN<!z$EEwY&kM_BB7w3O$%-)w%*aPF9 z|0r89Uj6XO%!IH%woZcQ;Pwn3Jr~c~hcYt>So`c*w!_Lli!Wv-hxqc#@^xbmV5J*V z!s|q?(hb=(S0DByEqt=WnYPe}y-4eKLwE+MTwzonrjlp%p``N)^+9|yCV2GS+|zbw zy19*M)7;*4k6EbmNX65^&Nsf4Cmxp@orV#>h~Gm)9P-by1A9C4NvGtem*L#eeZqdI z)nVp8<EL*3Vg`L0&iOSr>pYXbj<#8S>E;>fL|1cHZ}+xAZg9#;xW17}^d`c1n-9mQ zyE_u?&8^+(baPi{ds}jD@Dah08x+LXG_?rACR<VnWfMPmD1F%%{z>oUPjzp7<Nn;c zdUOD3tCxb?k3adeW?lJNT=T(T^*m9ePD@y)5WfAwy<+-qT@1Vj0xLaFhSyXfoRnwd zf}l^LUHGR1pP`pLOK+hvOV`R_+cUy8+rl;vhPEuOY@2!gpdH%}@kP9}z8=-~am*x7 zKTEf8Sp0>`E?T#rwu#BJbj3`S??*WwITl}8-{MQtRzdAqB5e%DV=Fj+^xYxln}MD= z2%OdiX^d;!A52~<-J3|xFn+q7bfPz#79HK`_B0DKM(`b^+j^S)H5+R?lxOh{Yw7H4 z4{>*rKRw;+*Xs)IS!GOhr+a#uJ6nVHlpo@6PIRQ2fzN@F{gT|^a97w~Of)q&r&`;4 zo0Gkr-Ob7N&Yr$*pT5{Ezif6oxnsJ0M+#L(_G2Z}>UC3QfAWvtfBO+DpGM!U&FF>x z(3bdPw~w?P8+&j*+f@IIwwRe6_S5dK(wKl_h^?oqy$z=Els%Ee5+Wz<zZym<Bey-> z+S@rh-QC>Yc}R0-cZxeX7PIgGGXU)|-W-R2o;fhl(b+L~W@lf|mK}+i>7FjW*1PeD z5v^_Qhv1%?lbzVwIlcbDOp&~%k)tZ+Ft4lSo3lwQW!8_!%$fKvI}eb*?}9d!2Yv9& zVbEabKPuO}!osK@vSvpBlf@a-Q6G$%7x5wAWgmiXmx`uYP@(qc`TX+CQ6W9H4@%1) zs9dsj`*SRLw!W_F&yUHw`P=)zVVf<n7o0R^)RH?w-wz%~AFLnLz18WTa_{=V6G&T~ z7Todt$q$~WD?izL<-30HB+`ZIoSdl>%o%<d?zNV`b8-JHgtI<zK54<65?+7KH4i`K z*0)%itWW$U@EQE{)Y2{-(K1V;^@*p2ZJr*sDZiA(m2ESho|v)y5Iy3n>l20JZ2t7K zbPI>YA1xCOl`Rkbf;*48Md`plX3Mhv@ruwto=V-tvbH5ORetCf;9NZaSOO`2LO${g z@LFGHedL+sxjynN(yosbEv}C|hji3OD$n9|edM|1TOWCTaG&G<)K}$~@{y92>mx-| zF&}w>UzY15WnbhYFQm-=7Sl(TV6di;#iHzQZ(sJs?z+D5V)|jni0d0K3HvAg?nQ5< z-*$efwcRUtH$s2E1}^JE%FLytGj)jPwMH!8JRD{Xjv3ad1N*OeseC}Tu4k?YaRv52 z*T-pH+rnG_aAgj>XCA_CSsx*Pw+er{stw)CT3r*?3DPlB2OYLwdYA2C+Noj9c>S=R z>T56gwSK*TcEJh8rTu!!Egr3B>rd~$c>D=Yc2ao$2%M$S!ihIon7FwK81XPhUCGK{ zX9u6)K7fa|zMbQ5w2Dhh+}uk2ENx}xXy&z+Hm$GgPq?&h?!w(pz4c9eWskAM+_|%_ zBb83!ca@Hrz7CtSry1nOIpWP7)F~1jFs<xhKYH`b&Qx0A&0aNbjvw6ARW{aFw^VS< zqvFrW1!IrEBKEY+Of?fa9o*d8ooMUr*|x%;k508CC0gFJLB%M|F1HH%;~9eUnduHr z_GB@@_<b5|^Lm=Q2;zjD^=<WSuqXcfjlMapTLhMXE&4cDb9zTQHLPbwXLm2>nr++H zp%5>%WxAtp=9U&-4f@3HRnrduCvO&Q%kRui^yb5byV4&sByR46Hr`NLSWdL2_X2EV z{^|w1RQ_GS^wXj_2!6*+xp%jZOZfcw){pmnerAw{ERXis4_X(E?)A+;#g!UX{F<9* zR@K(Ess5Dkp5Cn-%4(SL1?>y!Xyg$K<#AuGJX~$4%;SCrMM2hQOLO_|;DqTF5Vg2^ zSy@sqg_UPz%aq?se;#mnZ{rQcyebP~zaS=ih_vcx%w_Au%-_TM9q>*vSG}MUTE+_W z;C}LQ^&s2*V6M2Fc@P-QDGyC|cLpOt^WNpmKgj1RI$eFeX@8c(n<hO6gI8m<4BdH{ za{FU$l+_)FliMyLPo$6ea}NjScc_okO0`vNl;`Vw0O^cT$?y3gf&8q$`zL(TpJb@A z$1;5L%;VwxM&a0g)K3Tee}a4QKhd3TPS5H~w6lIG+C5y$lNlV5ar-T3-?J27lB{ub z^mR2)?@M&23Q9HyA{<5j+~#TMwXwE5jMC49eXzRk$0GQ;Y*{u=-U0q7&U=<RVNC0r zshkEy5@Qy)*mJ-&H|NH0>Yryk@A<G@>28kR<{`sI<$9SM2;0B@{7kvE&PDvp0-sL* z)M<ISh?ZAIt?p9wGZk_(@Xz|0z}EEdXI_N<T>E0X5V$_;XI?7Ca|<5oZC;P_$6Rg= z2_d9=ac#)AX=_n!$Rf0nu_3k})^5n|TiY+&{%VGYo_Q_2w|3(dKONYO*SRldH{QtL zi0J;J^FNPX>$}T~`0lr8)3M~Pcc@q@zT1!fKJ@*p>}?P)1)j><8vA^}+GY9HEL_aI z8}iBeR^f^I*0+Jl)%|?m`VKIKeCvDU_vc&R58KbPQMug9A01A)@0J+S);`6oEpp=E zQub*fbU3oh9edkWWbKpxTGCQAPotW~<k}}U4ju-hGQ=tT3FF`op+8qf7An_1eN>F! z7Camu(H`duAh&`qgOKjU^sj|xIZ^-PYr5u(|AKzkzbgGn*e9#=*1u-U^8M?-sZ-p) zLQ?2oKLxIsfBh_MH&1tSs4qB+%Ym@^yMnXV3_1II-IyNx^H`hK_|?44rdNri$<Hb8 zi=<W8*1wooLu>wD`2Fx_E6r^UdM+F{U%Gjfbw+t#xp~!9e%{w^UR{l!_l=X+7vj5I z6F3vJ(HG(~HBMfLFXrZfPjjllY-{q!ABH3f&8b>T#dEo;x~=1@{L#D!x?LgFE~(e~ zzNHBMtZNZo>8t$S0Kf0zNxt7J^UDIiH<0_N-wR?s;|<E-DCzeWiMGX!HNK7ASkzdf zbQ>A|W^AdQlPsIzPyU=_8HdNq72vU*lPsUXQJBX|MxR}i>gnO!;&44GF?$a8b<SGU z3bgI`skWYkw0EzX+`Pbl^yd$USuf(m>t{RbLgl&blo&xv)gSs}uTZQ$jFFNd%<+XQ zL3@9`Q1(J=LMs=OV+LukCbXpX!p65(tR1YAY8_IxSL1sKZQJtX5XLiqDz6C3S98kK zoC~FOR=568zue-BnTeF!HB<K+V%fFNxLJ!j7DjuD?Y?3cW^G{XI;xAuw%_a1S7z3A z;4CinExO*i9&qwAT3=lO%}r<u*qZK`-JED)sgy_0&2t*+o4b?EJu})`dyU{$D-6fL z$c59n9!2n_=Q#L=7KRhP4BVmUei?#UpFRwS=3M<L+K#2W-~wFfTERH|QOKW|Y3oSO zfhDXxi4Pv@(L8x?<r%!smolSA@_sU0+x1tnQf;%_SbYxal!GJKkP)PZ@wBR=vwLQu zJ+LVwO`^S>4<#jf`+AyNSY)Q&1p3Z*@%+ATNZ$+69aOQ#rU2Um0D830?T<@~7onxh z<kLSm(#P@$4~9i}RH#2%ySM$>IMSb)>~4X}%@TgGF6F}na{4?T=rQw)nQXNSL`9q! z$cntIxcs~_!DU1iz_A`bGgyEO#TM3Qej=Qiy)?p!jh@+@5noV$r1HY`Nx>L{3U;Iu z+P~qaW294^hjiGqN4l@e*B=w-J~^Ya%a$pfgDch1+>@AXb;*>GZf)=DVLy<Md$3J6 z`;RX>QtToDyqR4*eeI}H*cY>Wh$jo?V<`xi(|%X7nV8RStDO7V>fnAD_f=tj1@~^9 zrnY2rqO}!q1h9s5S9j+@>11ykJ@Ih~#;H>_Pkviw$LD#D998DovZy>ME3;)0xvJh^ zTjr{D$P<;9+wzE<RW{6)MdWS#eB|WFSny3Y-;uTQ=h^&F=E}R><~g#@$&c{H#C+43 zr{k()ys)eQZ%kQOR)9BVa9CD^H>Nz(X3iM!+Z+~_<?%-O`MfbrVSa=+W?q=@@W$L8 z=0$ju$q#um8JoiELB5ULG-6XSo=p3ky4ms;Mq~wyWC)RO_jB!}%cNjj=iC0Q0Houx z`>yYp7qPV$6tMfQo!mUqCu;)}-7`zt$t+CJFBfky`>WAc%Km0y0=%04zd|e(JTD$x zz8N&@r+L3(n2nsYU<Y$vs9^0HnBWB`t0@bBNy(I{u3J_^y3UUijdvTdlKqusBZJ<= z^x!#ICRR`mq^=XrtJn7{jcrd%@A2owm^OYrtWyotvyFlEqzmAi62<pk4!%9p-95Y? ziw)PD{2FK*Y$j==rJuflbh#NFJiyqgyAxIS^RFd;Xiom<L`O2+KALc#MGu9sQ^Kd` z{=>{<_V4Z3uDzSeyPmq6m{BsQiC&r>9d74S+0B$yn6Yhaq;5MjD76^<x()QP!Swn4 zuLO2mV_Tfm-PYON);l+#PrPa}d-%_-cZKiEGS(V>e)&u^JDcVylbT158aHl-QKNTj z9y4LjT_#VQ(7b20KY1@w*3@Kv#J(fZc_ey6WYg8x!anb?Uu<uHSKaB>B-;Rb13I)` zGQ_mwCp+8Q6Fd-1cKNg`f2i_%+h+QiA-{Ub|Dg}x-gdCRr#^0uqOD<m9tfs)cF(o# z!P^DocM|=wRlFU47&aa7SsxmHBP{3PdbT)hOXVMg<uiFhI#WF?KZbTc4a$9*{SOz% zl6qWTnFS8o(z}I&!!j%TW2s*r>q@rIO!)h2#W&>*C9luPJ5K$JWq8ro-5v1mc=9)i zwRa{H?dfK15}@DPBTK~YZR5yt?^rNf4I#BBKaisTWYx(<eybrr--ny#v0Y;o$o7uy zVy#GdJk!eNg>eJt1ZMLZDtx%On^#%YVB?gsZ2m4RN%=9(04I-T{Jeoq9?kf9gR*&3 zZC&<A*|w+Jy306uw(hdoyd9D$h(vzs&vM!P(ZS=;psnSz`FjLkIQ`IH6ZipqmHur9 zZ=1(X+GWg`G0kHqP98sMO6Y-d@?a+Id_LIW=V*4VOzr6DN+;V|+t>yZ(&6(}WusD= zJfE-1+oP|=pSB@e(d_e9`QwQI+q&AN>&o|etNa~<*@^Oe-ugIr$lINs+}Rn-_k8{; ze{y<eqD@mChsVmd+z9FO`5feTFd^!-bo;#a@n~C5fWzmt@}_k6btD;&A$>ltl|Qz< zlbzu{%|4%fyy-UCKGFOG@m_hOlAW3>DUW$<nAg*0<LnhPdA$jn$NV&eBQMmYm2BQ< zqJ|LP%9%Wx2>ZB-lc#eq)$S0RH)f7MK9#qs%^RD=$NV{HcP!hI!n&(x^19R1_VF<< z4&Zj4+l46nyftjzxKsvi%}ieBbW7h_PF`h2Q1^#6Z+vH}HEefnn>UF`Y}mJTY~CKQ zFU(ul$+P_(X7i@N(hzPvC(pvIZ}avE#{2M0y3!y28)VWQetJWj9@ja&C8TpBn>T@t z>WNlui1+!iaW;Rtv`0MO#O95inUVjd*}TM@5a(t#4~Ho|^;Iw|+uStoJ%0QyjIgeZ z%(uwo^<?t44DuLtS-7n-d0DuvgFHrI7Oo<bmxZeg@)(s_xT;KE7OpzT+hbODFMxsm z)nxMk4DxD&yzz-SS$uVwyez)@Ft4p63)hgz%fdAVd821`W#L9-^0IK-gn6Aa+cLCl z8{|#JTqx6*-*zF~?B1@nDo{#(+h_86+NuCl-pEW|S5H+}o1fQ|$?NH<>Iw2jW%A&Q z07JdpA)6lnhxwy}eB|8Yi%@Ot8078D`!7%w@NrC-7eEDhV}rcOvStAK{n^RMvwb8s zk}mBimI?nZLApxHWyk-n*}NW`w_BJe<+6F>vUwS}@nN2n%fd~_=4Id}hIvvh3pXj7 zmx0?o%=48iw9}KFJOKT^?h)omxh%dZ*}M$CsWuPgvT%E5^D=OIg?Umg3%7SRF9Wxa z&66I5v`h>00_95ieBRf>p<F3P7xv5M_oSpap)Ty7%?~RCaz4Px4=M!t&DnhETE-V2 zn9Y~2W%3i*e9@D!AuZW_q0i(ev-zo64ty$`FC|aS3UxG{%@4A}ezj)v)vpZv^lW~R z9m3BD^TR=rp}#H6_XkGE_k(Pn21b~7aF`bij6fFcZXPVrIG7pcF);i#wr39C5yng- zgP5s#;-oQ?M@`v<sl@1sJC4c3O_BT{b~-3rr&YAo<u^Wog|~E%U9a`yCO?0CTSs5d zE*-2&X@VnK{P@W)o5X@zrpVWGKZf$lMzc8A<?lz{0a~>lt@v(~6W>jqICa8~yG+=r zdAv)mANu7KL9ze*SaTe$%kvC%q4qs1rXLMHW7<2WBUhzIDQQwIih0%v=cYRXL!6~d ze*-Hwp!`rceH@pqr#gEvmmR>~RpX8IaVk%9s%GNfQIjW++9!zXZ3+yw{!>E)xtG~2 ztiN+^{jrmFCtB9FGy+?0bK2e|Y<r`y?ygQ<Xx_!v<i^%pRaL|X=9QT~jPvVdX&CR| zA#U7Z^p3>lJ`Mh@k84>oU}en(J$Pa7<6icD`2pHjR&bAJ7>$qFd-Rw|zQ&CmH)^Ln zY$tsYM#^YWYY?pJc{J(#Y_z}UsBu$$r4^fe41Nyv^sc#NJJIixuUs7JLtqxpQ78HN zle!80{nZ4)?(XMJWS_V{k@x42lgTS%&fdp6pMp_(uo=^lXleKNp4hzQ%^v<U1=%{~ z?Ezf5@o{yeDuel<@+xc|@vw!PWG4Fy$f`Sn{w@Q1rvPhzU5vM&caz7Ao;Z2O9F_%H zzHF>MMC3Sjk`<%wfV6NCy_stDhMNq&g1nF5lMWYz(_AyuVQ%}wnWwX&u>j6I8jG}D zP<J&}3*js_R*T>+I5ww+>nu&a&@@HgGtu4`=**}vudXJWx3@3fv0V)n*}Q$iJa`pk zhPtFZFvc)N4|09I=?(I1Gk)GQzdo#V;CxeIn4&v*eSTexl9RWuUl;Z|dHeZ!{uDjP z4e8N4Ee3t>W<&)AfzAgsg_BhW&;9{!*xcQnm>U#G_gC@hz`8lG2l%jKyJp#3+SGa> zYbXPoDJ#!kf6QAiTsE{(!QT47UX{hP78BTn1N}C#bR>Md;aDZR4L>XTTKxQA(M4m^ zu7@W5`abbSb2P{DSar{_Mbe{KzK<9?slfQi&<?$sd&j=U;!b|qhYNMaifC0I(2>j< zxbj;4ys4RIsLGq}=S|E!M^)YoKW`du1%!(gp`6=7oU_G}tXcH!`vCfLkY66~LF*j> zA0jq9ha-_PEP_2xtQR!;(^%1;e3jOtb<fTq(@tBmjRnT<BH2c*hj)NO@3`4B#yUw4 zN0-&E{zh@HzwA2rK+^?`J;y8xueD<RscyE;Ak$49yU##lO*n0T1gm${dV#TYD9?xE zTDboM&1~S+hVaPy9*j|N>kEgio6o<2W^PzN7`wrKK<z1(`~!Q?*_D)cbjJ8#<1b?J zZIa+!gu}sMe+9<j)ZBG@|M-GdVHh!@%3piaI}=BML*tS-Xw@Haum1eQd1p|x>s`dG z>^(Ejr#*Nt&-T$RKbmsMcfrv9<=X^a{bgk}(EOOXm-h2Mxt`Iad3f59nC`z?Hey7I z7c~4wH|gf-?VT-&_H9|q9<~Wfx~X)seX~tBVN*pi-K7Tw!#3O0e?r2$o_V#JCe@AF z*?-qF1J1i_)0)DKOp#`N->E(x2fg7l9sfS_?l}2dz*+mO=LFLJK2Z3nI>+;8Jl?<7 zm0w;Nb#0m2`I5jnXvZr*nK}V(-lgVV`Ko^k_rm=%{`9l^PgTEWNKi*`r-pDo4Gx^% z^Ny4LIpw<kf~%!pZ5E>OH1hScZD>3T?hNuX{iNK|B0Uo=(lgBgu0ZGYe#v~`^JG#& zlB#zS^*a3sv9nw6MC(22Uy_H7#M}Gtq?pr5Yv$9YXF|lAs&}T^OLR=f$g=T7JH-Rd zO2{QrPiK3a1q^em02Sj<dO3)#pJ)5|D)Z+g!TVPc1^G|vrN)zZtdTAGNH(8^`eXNa z`QsW0cif)u!v^oZsa$2fLIa))DYMT$nhg6XQi(%ln>3f4S75J*iRJGVF&=sDqvWu@ zDI-7fjNS|;FZ)Q@Z^x9AXCEuuy6ckX>=!TxM)s66k+%CyhH>vagE!H=Dyr+?^5&U& z+F{arXt4g{&Aa^@?N$mOng`pJphM4>S7bD=2d6HEPwsvt``lVj^}~Adz}g_0eH>o^ z2m`Zl2m7o^yo~J8SQ@-ke`zVRtHEC<m}f4q99BBYv$A>EaPiUE!!S>2htGn!U3rl` z4St@(Z^4;Z$nj9VnY<{R*O5R8GwblcU2uCmPddJA^t?|#^;bn?qx}LUW#a%zHkx0E zAK~6BKP0o`f%l#rE(T-7-+NU+_x=4>5#9IqUPW}@-+L9&{rtUG&b}ni*{>Amp2?&y zKixaLG|T78#SG5M(v;=O(MX2Qz8}A?i>rJQ_C5*5sWWoj!ZI5Yj;BkD$V_`NO3KUu zlFStEYz990Xd4e+Mp}P8LjrrJa(TbYxmsJPJpIWY2IZdlEotG?J`ES&m8A7&@u^(+ zuHtI(DNldG7nFPE8q&gd30L8>dtU!QT7Q<#EDfBGK)%JPdiqnjuCUKs&s8`#;p*c2 zBWe9vTC;SNnH$NsI8{%7D%VvwZ{})gyNrANSsJr#mzi4}INOeGH;b>#+y)#p`e#O| zJWET=-0qioK93adSi0^Y-||oQqU*0dY=B4f2u~oZnE9Ju=J{zC&)wu(x$0hc?(ty* zJnCDvPcd_!U*`Gzb@4nvzU95{h37#ZHo&9)XZy_i<9?av^VG%jF!`H=u(}tXN5Zu2 zi)e6pBwSe<gE%YORyHlmEiDi)RBqGavC<ZQRhaG#;cYt5)0ojdq|<}=JV4>Y=|4_% z(O&99*hAyHx}MH<W*W`S?N#i?Z%@o@NhO-=DwCBh4T<W8WIB~h)TCN#TT{u}nyPeN zGMPx%rGn^uk)b)vv#z$js<olILgz9_*Pnwv>AGT`=eZYut$w{gT7B&e`?i3zg|jiV z%7o)3{`9kPtDP5Xe)$a!Wqr!l=U(Y7&H?5X>e>0J_M!W5z+UCt+d8`Pg;(<$bwr2S zwK0Bjh^5^t-_N<9I6TO=_UldRyv5(!{Mq<ic;4X8cyaTNuKcnz#?4Px&9*n+;m`X8 zam36AA&z|fE`Nf#!$M%C7$1h$ce&cWNfyHKF?ksp$&(!Pv*(e%Oxniu_DtcA$XjH+ zK>mu~B`2OMbnOs)jMLAPJeWsM=$qM+?w;5>n&akrrgZKlrDZ)i=F7C4IynF;?oIo# zhUO0ca_G~XL*rpE=aGIA_Cu|*m*GD?9)fe_*e|GuF5!=7Lcx3`JtH_yAf0Mve^fhb z1vv++_{&6@V@4vtO~JV+h0m?~?(j=*K7*$k6UA(fA4Ic7>tO$cM)f3Wb1JGEIG(*W zk*-W6Ff%Q!>FT=1M0G`~E}5uGx7O#{oRZMkocc!2ov%nX1UAPj{{k8{jtZY2&mO;C zKBN*Qt1(^CQkQ6{uS(RmR43Ba^@&ttV|}Wkp{2I6v9&gM33X4a@+F~j$Rc(Y@4kXA zjkzV~9S81n;(kSKh0cjjR#jEhHl%ACs;gR3>DtE1n$}$2m4wbAGNAFBkayOeeM$Oj z{!DFP&orl!4t%aWEK7`h{bcLKcWdk8<Xamq`=he55Z2mo)e%o@oq<jrwWG2@1?q@K zTW1-kj@nV#vUzm^-b*KJ%(Cq;=mSo6SZ&F-|A4gQBwC}iuPB_X5A85aumPOfa^aL- zDGx4)IV}GyjTUYd!Sl1WJc}dWmJb0|^;ZqAD{~dSsw2J9z4#H_2kj0eE!?Yf&EN)h z4buAAGsu@C9kubRk!KaYq%MUvUVO#I%K-40AXx8N)4^@+^FZwLS|JUp!TNYG0q@s# zl%|5Yd}ffAgwE6dfM?QqD-Y>{mHpZwz4>MNvRVgN$!gv3TF%w#mX(#ph%2l0NelOS zTr=$=tKp>ev$7gMIx4GS<XKsjw3+?LY6AziE2|Ad8brsU$*MFJuB=Kz=gBG<(;9y^ zo_w$>D>vDWjYTtKc9W2H3#V~!W$40f7Q*G1<;!<-U?txz!t177C12SvSEgH$7Cza~ zOk2owYx4Eeo)N_`gGonax+Qs5rX?LtC{yu(w?+MPlq(#ZlBN8i#$9FDwjkLL@gMPr z+V^ep_br66Q2O8?7z!SaMKW1B2z*sF{Rrh>u6yefYPol1P)FLzRB$!?NiXVk<!60@ ze;y;}BIm<;rZI%IYw``GCI1mz^We$P`Z&+0P4ozEJK!@kkY{P|aWMaI%k0_VT9em0 z`Zm<H(OiZ@#1_(@Z7H+oRirb8LD}|{S>2Kz=$TgVY`LqQ7diZW8%neG#kS~dIqP0? z2($gYQL57m%uv%hL;GrJGd9wvC--bA$(3&bcukbq->`hD{ap`*<XYm}I)}7%a^y75 zrFBNp0JE;Tv9hwYraGBysH>~2X{@WRs;z1vr>Z)UNYz9lxsuQro`#x4YeijcCC^7R z#&@7^^O0SV_%b;|N2)aUL?cYTa+F}YT}j|uS=m6m+ge>;lW1tDYH6rURVEv9gSV2< z`E>0FUDC7ff`_R@Z936f)!5KdQ(x0qUt685ud0Nj$-2sPMQw1HUB=PYm4eQvb!^B( z8)uFtJ%+!X_|sUBu3gCF@FGnR8EHF{ub*N@@!yX1UAcE-FqQ2V!e+-{tX#aYb;dh& z)Q-v~MCw?ZpmL3k?0nrblYkW+>Vw5OnR}NGmF>Zwepxy^pAPAc#V?yP6*w3Fo}{gw zxj5Cgy@eCo^)t>h)lYD0%Y{>VS{_^w+lbHBUb*=86Fk5CvMl{N^IA4<e_(YzAiVCw z)zT~d)4k*p+z0I@NDKFYTr=$g+d^8uj?fQ|BW-P!U2AA2&-%fV!_~K6tQ+{7f?8+j z8G!6#(!nbmXun;Q3fmVAPF(XnurmSQ?068rUAeY~bX$34%kt$l9az<$5nlJ@YW2p- zOZw}|>tNEteGu0SZsgTYT0bkVDWs$FY9lWruTrL=h`eSxcwKpQgzbxl#g$h{Qrv)a z32d6|h{mCKn;?!5KkYczcXeh_ZsjG|F7?IpOt-H5EUavfmWW)N&<l)>Uu7@y@$fB& z5Kn$tzD^thtaM^dc<tdTx@8+(JvfxK@X0o3Xr^C>k=9RVIcR)MBpua*x#U?rDCy2Z zJrJJ^F-EY@Cg$^uZxm(r2^{XUV`EzO0K|_7=}~R=7yn0m@OR*M>uW3hh@dK2Uz4ig zROl);&D7V`B@z@=H70Ungp$zsUEFwMMY58`F+X-W5<bmGem^Pv%s`(<$$v^v)sW)3 zKt)YUf;ga|r8QYmm27ORt*oxEZLMyNeDblb6m$+z(z&CcNjmo(@UOKlS>KYb<+G2C z4Yk!3$?BREpH_sK)%B^mmfD(J{*{EzA=T&KF(LnK+%k{!(fl3DpT<cvZuv3!`YB!z z?`^zr9QUrzR@w0(Y&Kqq`Mj}pPH^g|9r5kN0(C^At#gu7N8?>(C+F1(WFWn;Hc0;S zXTZ5O=;x#*FVPyM{TIR+iA&U$3#asHd2oTBv;4C(TDUU=&(GSlERKAeb|$c@e^z)s zovY|ooxrAf<>E(hAGCWeY2iMHYX&!bIFGb`*3X?nI%?m}CePZplB!h1&z<k!b^Y80 zVf&(CG5uU=Qd~b*5;{5t0=`M_txTj3R{j@-bmy1l%j;rbC9g}u>o2)l{j&1XIC155 zDQV&UHP=kL$m=(x^|SK&De0)Zenp;@S4q=ZL|&IUcwKp29=0zU7E@lONpa;>5;`ic zU~IeNP<G?DqSqO(8t4903tle6_d#r|Asb+2>DId{>~DTqzMQWHR&u^3y#9`><ScvU z%JvVWg-`Z0(-!nxOIklG+xeuUvi&`IR<<QQP=Q!OG0b%iUddKIQtM^chwY07*316i zedKrG7ZcU>Evz%twboUq8yf2q4HfA`LnYrHPPbGv@B!yszgQ9)9jk0;s86M8lVM!( zM|d<JSruCo>6|&Utv9+NqJ0PT>H3BWo&+|g>uVZPb*a{>hN^T+vaTWB8hkM#v&v8s zI)|$8ncGd!B^~<?c-Yw3+Cs?FkZ!E6OtjQNc?u?0r>hh2vpP|g%fph;In?^G#h*eR z+SuYo(l_&W3x66H(b(cv^7T_}A^uyR|7Y&q@vgGlLs&Pq5N~XqJDfUdM`eF4P)9V{ zI)8KOXnd>euDm*4xo}B0+}PqC^4!?sUedA&qBTnU{p7i}N^ok+g;V;$Jh;GDiI3J! z3BSencfs?^FUz-K{{U8fd^o&5z}3<l*f6hLd=Kt}b{``x+>dh2v<n~pNm@T^&;CL> zYR?`a&)Tz+!?B33dfdV5`l=_w_C>>D`l`~TxW1|+baV^^e6#v)b;`>1sgQ0fudK}T z<@GeMs{c%QeTb{o8!IpAuPd+TNelOLTr;?l*9)Zev+}x|bW~o?l4s>ra_AS4*8&Hx zE3X&B_C>>D%BwUfuDnV@N97faZFd}MtiLRJo!G+05*qVXb}rnjVgK^W^5yy(u#)TR z;q?`+lB?{OE6X=Y3!m&~rY&Uo7HR#gEbk;8mE{}cSy`5JIz?iMw;jBarG57HPT0O^ zP%QDE@r$u?t!bA*mw5LcG)ab;d*4=P<H2U;f>wsdtQFX8$-wsn)V2OfbH=_Q?6Ko2 z+a7FlikpukFj^b4Fu`-ExcS6^`H;*)cs`B56vFel10z2s8gzB(`4X7ftXt`sRu^SF zFV&&5nRD0_2bY;dGRenhgLSC5zi)6baA_U#LTsVBf?MA7uw^ZHhNg76zV_GM*21@f za_SB-0e+nk&0{|AYiO{)p~b!)#<x(@oRO(lr8pIim)+eA|Knka##AlQQ@TmdM0Gy1 zz7tge;@jys=hCZVvlGqjZ9TpErYk3crMuId>*l}7!+!0a-eGxPo@j3FoskaSvhhQj z=qJ0}a{tRwMO$gwV1v;+?CjH~cj?Mkg|IrtR?a8FTy$n(EBuLZ_Hqn3`_mq|qHVZ6 z$!wA<3Z0>--#u6}TY8#%JDU$l_HevgG-$0)HWK&Mx76?%_Ns>3R8=y?!crxhXj6&0 zs`|)kSV?G1sug0ee=SxXr|&k#D&t;u&F=BmckcADvjODyFxIj$RGAq_p2o21Seq=} z7rw##Nvl^2Halg;tng_p+VLoOS=eQPxBF%rw&aXH{=V6W@0_j%m3;HiUS(rdXE@(6 z41R;m@_t*{`g&hcfBNR0VBNng{e#R3)U&o^&5))jUF8MnTHc{2O4oRYu9b_>rG3FJ zO}cmK8bUq$E~(2e(N+ciTp9<O)qs~AR3_QEd>l%d<)dh|e}(wC2C(|swq2eSYkMu~ zMBB6cv2E#U+jIG|cG#Y5l*!whQREAUu1Q)18>P9*y0l~Udzp|&R=?G+VU$Y->v7G> zq0FpLT710{c}c%rUD<##)f0TMk2`KQByC}Y*Zv7cG)T`k4(rHvW0uV;oC&IO*-%lb zwGfNL%3dW|y5eSYa9H{+jM~bDD>GXHXJwf;7Boh3@D4Ov18>{5vd_gCH=He)Y1_gS zYP;HLJ5S#Wv|S7Q4Z$-4&+ka)zhDPSUq{=lzI5}9bfT-dtG7G+dOatRvq579A7{sL z>D<O8{)%+?3F$n9O-*45FBPY|IaRc|wL6_|?&{>&&bhoGZ1)D$Lw^v{#L9JV^{tV6 zH%=TuT4O=+jNlshQ|!8puKc8L%AXGg8v|`ex=@|%ojOMoCxz|%@6t3CsWU39W4|Z8 zEosp*GQ93ks2=6nd3->h`Xrjh0H5gxdA1*g$}GM1d(vaWHg^i!RIHc9m2ESx@3dq4 zA%2O+*8gZ63CC{y>1XK{4vRlpCLAhTKJ3#3>K3H~-OZL|zvFW$?*pz#j5eCO-<`$= zdkJ;~XTRT*&ePg{hk^f&^v>Y4^AOD!v>v$&dG5EQcO~t9OImce-;y3jI{GbX<ypM$ zx1`6D&s*01KEa8>ecrdEm0#*x(vlM#_RpJy=9p+I_ATj2ep&8*G1(Y>OL}+8?2mbo zzcuXpZDV5P8spZk>;e7mc%MSrjuZEr(o@5J%6|mB3&w<98&i0f>jyluH+5RW`AXoY zI>x0truS+eo}Gu3nT}n8SL*#&X#72Wf*ov9hm7v+Zr>|$aJsK+ygpo-sk6Mwf+NXy zOV8E$OlkicMmkq)T1cm4!t?ae6DRC3aom{Z$zw+CXz#gBnLKe^ut(Eo769;Vvc5l* zA5(mLys{PhL91+q^_B8}_PfxopFRLM%V)vpd)g`w=CYnSkaG9EGQ|<%q24Qdd6?_- z2bdOM-S+IaP~7%Xk@kKYX|L63&!ssZ*8npESnGcpnA@qHE(wQzALQT>%`V;h`!v{h z>^LXJPsdkP-Qhv?g|qwd^NV=CN3ix?=opWko5C%tkpmgf3dyb$daR$;y&X@pxR+0} zeeNc0$CKc?_>-UR(Uo6b8Fg)$+7UkMlNA37$Lz4K>yxf$OlR<e*Ou9RzlTsq`Z9-W zp*9sS>ZdZzc?#iLfipKW#>Ice+QL&A+p_n);4FCN#`eJ(8GV#nTP`1=J;8IybI;Z| zlyvlLjl+bu#Mv5$1B2zxoUI|9(AgSC`1vXmt%XHd<ZO*4(g{00#UJr6JDxmqB(#jp zv4iRE?#^x&(X!|AXuOsgeY%Wno!aiK)eJW6tzoYJ{b1zi9p&_I`C{uZ!8^3US4@0! z=VtipFqQRHbq&>ZIz8?~A9ud3D>8p_Q7r;)*XC%hVb=hT@%zDf>|8Am^UFQ+6TjRU z|3iXvAZNih-yVc%YagcmAh-OAfo9>+-_l-4I>R;_wpnon;oKko?O5D&`0JMQ>5H`; zy0^CDWbR$taSCZWRt0wwfByQkuKe=K!1S}QOtxbVbHV^0XZ?_G?Z_{<7rtMHu+~-x zU)d%>nco&|*fMKJPNR<O$mv`QwSN<98v3d13hpy>lV@?sj*P&MNp3p3=k(By{2ZM5 zb|lMn*_u;<iQ1Ag$a8JUnWUq(<SgMXVN1>i#<eBV7uk|?{Ct)9Yu~~4|A<>CWJ|J? z>tRJ9CsSHq!u@Vu(7OG9(d`*;jABxH7e#HG_bQ>c=fMZ7x4O4_dja>Z-d;%B>W1LX z=TCZjk*@sm%D`mHq_>ATdMn&kZ-2$T@clZ(WA#b+HbHMQZPA7;vwC|eb)>hy;aaHu zM;*Ogbx2`c(%adN-ku%m?Zx2C*V`P<`}3kpfQ#zxW#qZKdpYT-?p`7MC3N?<z__|A zy^-$z&d*ob;^}S<_5G`Fzj`BH>ukF0I%`%o@{zJp(xi_$<4v-cy^t=c>>8i;n3=I= zATxd2BfIXGi$^*mJSSjOgh#qy@mv?;*$^EOUVZb=w&|u-*ZQe<(TA?hn7{C+KKOA@ zW=%G3ZuD^m_@r0DC);Q151}p9-(;g~{VeTq^QQv!rGwT7%0FsdO!Pq(KhNAooou?y z>`lyO;YF|3xASTB%wL?g)DPi06Q0_-YD+#hi`z4IM%vQ)yM<TZ+_tj)^32^~TQ>fc zKM`KbqkAcreD34w+Kl^2+i{uo88P!f1fRyai|?Tj-`^wn{^8)u+J%^TIK(%*;JmI# ztixv=+qyeDW~MuIyqk_k<vEN04NX7tDPA1JSS_tJ^^Fz5Ik}hi6NA`wgJ2o5ciSvA z!*twY51$54Z#-f|@#bt`lDiBMqHCI3ykdmTaE|jByt4LQ_txG&&b=$UCrDe_3GSc# z$=*MyD?iCw`SZbG_2OyLh3Y&L)+tn`@u{C(b9@R|>D9C0^|?YgDYw4B(jnS~e*y3r zddai&7AmuJ*)_)(!!}<k*k;U(^lePgN7=1xJGu0Tm)5^oxYx+j&(bY=Do6`Qp)&cT zLil|i=Cqw%XMBWpMm^Vj6r6!7H|u*!MtPzmTnqQ}v>y39a0S(BNwk!?jbgbMz!_PO z{1&Po%qw38r|V<Y&MV}(>yNLJcGo9gCvDdhMU%f#GF;1igLHIlQhBxwcWv^`08id} zr1DFxM~dfgIAD9wc1*MsTa$dtFUwt%lx<nX%=X@<%>JTllHY>CK@?C>2^P<`Sbdi6 z1;709k}b=Q1D*41_0v~OUyqhE?}8^Qv*pZtq;(Q!c+_FIIPl>@*?fH;`Tb10vT0c> zyXB%;*~PZ`@>hCxrPkK+{jOct^2~7J7TG1uTV)@ukNph;{v+rVuX5uj&wL!xFT9#Z z+1Nv{{=6y^r(}6&@ygHJZysySR<XdR;Inayp7AQ?QS2go(YWXHux)F{MW^6onzJ!p z%zPQbS-gT1P75E!`*j8{?`f=-&kIvuh#t?x$k$K2P;4MxC|<Pv)taQ%C{=D_pEBx* z=PHvgu&@Kkw>;N)bmN*qPCK%<YDe*!`mS^qHlOE;<DxuY4t$n3dd{sl(dBs-AK&T< z+qOIxotEcWxR_ZngtK@BC!7{u{m;V3%}N=(0WVzrQ=L`#vpSHi=b0g4J@HiWop_<x z+O});r&#Q~dRX7W+rAfzmDdR2?Xzlqi@T3j)gS$3Wm{&}0@lh?FuC9D_RQLp+jjL0 zK>b;mVZIHHn{|C0_Kfo2%-S`vJ$hy_3Y>Tk|2ahvj<lJ&@Y^EmQ*Ur~myrFAX5<|E zBp+cLF`~N3EL@U$^-EZ<k$U1&K!42aiB8)67M72)Gb*=#>R-0bAhU6Vx3*mMWk)up zd^65q<U1EexRfs#i(glZTlZPq%b3lnyZvJE(LS#C*HV3kmTJ3+HuY!Q*1a*yn5}5r z$~VYs_2n!5!TXyXLb@t|EB#&59J*S4!thf|);G?k^%3Y?^}*!<Z9xoY@hu)r;0q}7 z@df&8%s6yG_=Eli__OJ3dEDoRXMTgd+978=v~ntJ@Juhj*_TNt7+-i4J{uX7r~GuE zpVl{dc#bfz5xx#KQ>WC`G|RV6@$Z;}*l}ugM)YNMCT_Oz<rZ6+Zx&?qN-+A9{$*hY znC*bI_?jr!pT(zp%_K%T_>`x=C_d%sy9J|w{on6@9QYpx{>Op;ao~R(_`Y!9gA3y3 zxfMKf)nPI7*;B^szIn{tPrUrIPR^Y^FK#aRk!McZDsCS5B4#eTm3JJ@iJRfOdglGc znE7-%yYP>SncA70>3y1K?)`}8GTm|W!8yk4Tko0b-^I+ZU5t6>q`0|rwr2*u?3p*G zac=NWjQPuDo;hp3xH<Py&-`v^+`N8S+)Vqc&IyZ|q3guWp*Qm#w&#sG?Btj^bVA%* zoMx^?8)KRGO#*(wRdKW8d!88tp3R|qxu0@2$EI=f#;!4A{!U*u<lUwln5(iY@u#cA z%+7o8KH5CbY{1;(qdLztjQ7j~&Afm68)Ec}JTst*{&}3LzkkdmU-Zm<tMP2$51zTB zp6{XT?wP+o;F;y=@5Y<N&351LY;^<A40|zVuB6T9-sOC1=H)NG6*H?`7c+kt%$Y%d zVSRrEzAy5=XIALr9I`WF=DnwlspvLl^0A(I41Uj|of`UZ!549}_aq){!jIqfvgY}6 z%<T1b+&uCJ;>?d&Tl>^Amuwp|o4pk`=}qawEcOW895dUV&-)L*^-TO^*6iWkz*phd zHJstLPt5FceBAu|(6~9}ZO%%6h5gs-!MiEOJhEckOxm63CBgSf_Kq>1iJN^#d*(`D zjywRm{unc(UyYmb+Zc0iQ_TGObJqNfXGVTu%;?+rM$U>cGwD>%toR%<fPbg|n7yRQ zxao$*AFl41&eu7&dCi!qV9&<YhZ?i#KAiFRCQ<S4k?n`bW<=b)H^MWo%`oPL7unZ4 zAZ8wiUt@mZney8`GZh)_&fI^!-x#y?Yv|T3F>?WUkNR8OG@Z}f_BzjevZFC;qgxN$ zhYrDmPtW$uZq)7i&@<C2pyj5RIb|2mJo^trT+Y0dKF|9nw6D(|<~h7|fs7t)i2Hrp zcKe`@UkyYLyFIh|MD|9X36JRS8z;ofKQ{KvwaBTgk^WDMnFm|Y|M!`HqZ2ociJ8~X z_i-nAX1x~Aywedg`%j6PYZk;!;wPN9&i<vz>&1+R>}I?iH=lnAJ=bv7>lVzt_b}#y z{f+q-`aJta_Q4|iA06bGZLf@(I{GxdJ7zBZIo|`ggmVKH7&8&MTzgQ=j5{!9zJjN} zZsVKR>$CQH7T?ibBW|8J-!rStrR^i&*UoWsR?3+4<<NuP{+zyygAX&n^Z5eLjDMT= z!@l&)`KPhx4gJ3wJ|z$0jExHzPlw0M+nex*JSxziz72TRGt4s+;rGi20QV%e;$6?| z#dzysobA!$nfo7RJRO8A<DAcTEaT{D&m6l!-24#u)869U#9#3qKK=Uud=pOL9gm9{ zBfG~<?RK0U#&zv0;^xaM<L2ZE=*Kj8H#uhZIngsKcN(+RiP)K`d^hJn`b2wo-D=D$ z=g|NAV`evxK5oO=^4PCK|IE?7n*n#EXTHKV-M1|5?8(~Klbqu_&NC}99^#M0%}=g~ znYA~<maKs8&W)SZrW&&$dUGDUX>a$;s0|s*jL*tBadXp&tlL7*Q|SD<XT{7z%di^w zWz76|HfL_W;F<bZ+-!Yt%-r~Ubeyrd+ept`d^7s;K7GJWbpH@}wPKs@jhnlEA2(}l z#Md(Ki<_5jVw_(eH@EH1n1$|3??Lv}%s0@{op$3rzKcAw&K7ag{v3PvKI7TLMlmx1 z9e;+8y?h2wPQHm11$5||6ZtkBHuaXf7}t#Nx~Dvo*f4Ik!e*W|l|9j|?1TBcXFlIC zZod9G`^4bS_1DKt8{_Vl^^E!3cAh!x3C7MK&;091`fzgGEcdEssy>dJ)fwL->EFa2 zz6*yP7>`_&-++@bKWSXt{N*N|jokp=A#t-My0hD4)=Kt8HmmTxx!u^Kcnmty#`(J+ z#LQLK8*?W1d-|(<bL~rf!M@1x8En&i#vFJz<L+YQf}DF_i<`G@XIxyxm_9vjHX6m8 z44y5^IIsPuXTBa5H;vepJCWm_wQ=()Hf8c1aq~~s|2BNXGjkX(mGJKJXR+s-#?6E8 zAj4g;y<cG`u8W(gk3u7FU7f~#FJm$GJAB7*_8(8=i+Skv;pcefB=~;v1H8L(Dfx_} z!RUP-KH<va;^z08V$<<so7{%q_%pr+{kZNtWUw~2KOOk1p}<eVHXlA3zQyq&_=de1 zvu{A#BS*x|^2o3D3~a&W@ac8WoY;mfJI*sh`5^CCYqIZ)F}d!s$ahBEe0C*gHNSxW zDfi6!vltt<V*jvHKf%WQ3AxQjx29gsnf6J~Jc^CInsIo{@y5J=34UjLZ01>>+2<Sf zQ=AzycObhL&W@Rer;OPgn|1tK*d=J5ekOW+4>pxH%a-Gu)=B8>UwMA>Roq;Lj%_iX z>)OB#g$LUh^X?A7f#(_Y(YuT`cZ!*FZ|1Dg!94AQcd<t>@sFchM`Ann#zqd{nN4Th zJdB-~Tplwo;fHHBWF33ExVd(3))euN^N>gK-}qR3@Bz<rW)m^MpiPM>@W&_3^~@R7 z*x|LXha*{g+nMwA*Ms-i)v0^49(PsDbiNI5Zze{;um1(VejB#!z9Zsh$~bJ#PvT~s z(b(%r#@va{R^Nc0+z>Ne*ok}b2ls3qGxv6S=7b5z;c9ew7wp%Kd^7n#_H@A0!BzOr zmw0}?P260#b==HG))!ohpS*){j*i`i-Fkyq;gn}%<{a$6g4^M32WOc6n)>gct6Lbe z9b@z#$nC(t8}s~cIOq7nxOsC;&-XvO+{HQR|K>fkA@B@4{nDq<fqhv9nktdU)#%$a z_**?MZk{<UZvKj{ytp84=DvnbV@I~Z7LPuf?*O6?KRq{Q9>I1#e>G=0ze$Wn3~|;( z+F1$vwhsC;m)NQW+fE!{80QD#qmH4!$BgD%2<XgOyT#3VTVh8Zq|avo!*!i1#td=6 z3r+9@eQ!Ds{;kEns`0G*ApZkr@(mg6<t6Z{b4zp<8Py*dGnFf1ZyDzm_?Fv$&6@dZ z?AdsPaj<R7e2q`IXcD#s+3mvL)4yO`VQX$@F{tX$n0cZ*W?mn_o{2v(CV(46of!Hy z{EfJ&ewK6E!S@3Fefuu#&yM)sT6Bka>t-)*4yqvj*&KVqSl*C0=WXoJGB3x?pPS=m zKXm5fdFU1oGJb<RuK(0C`#**q8sV95kmp*Afl1ivvDlM02gc3O2V+m~1!hm;6XMJd z(d|F|1^KMwnZMl<H)o)4=ibJd8^^~?M{C?PU{gjn7_)01<NpZHT#E0Q_%&z9of0=U z6Sr)PJyDD?dJV?PGchw|YRqhYOw7#Xox`$WF?04j>=?Xw9laU)K5_HUVkX6yyZR64 z?cI!*L)e3NUfj%LERJpP%$SOpIr^8_LB>!0`Pk1#u(>B0bK5-6tos3bM&@va<+|8= z?C~w=(bi`Y3lS%-2H%FA%`=VT&^>hhXY=FcUGS8@3+|D`49~?)2fn-OMV@iv4}W_Y zzKHvazwk`c{V{VSHsR*&!Es5<ya<k-2a)?T*qPy;`O}s$GxH_Zz;`9aLNEKMcNw}e z-C%RMzhQG@8V$5=!Z-9j!q?m%HyiBZndIL1QO3s~wu+mkPV68&`^ye-Q*|wI*j6#K z61-Tck>|2+7;`Q@{J_u9+09~R`Bmd)O~&`Aw_|2NlKx=_Ud7hUU<}kl>nMECcGt1~ zh^`*JE`I7l<{$XOsZU{xPl}np9*+-XoOS$>Z<fTduNPyN>HlrmijgN0!{K+%f!8Y& zk1j*K7gu7=vOBTOv2k<2Fk?Rc1bc^`|Kw6*zFbHi@z<(bW2@-v!>oI*wwh;VejGDr ztd38<hq$YmSekKrK@%|(dhk9r_`Va+sk7te<yRQv?_*~f6L%kM%sxK_7rJpOHuI!< zVol=Tap?Ev*pq{<f=B4aaCGs`fAa<LJv_5BeK~m`WAYf{U1YI&8{_G;m>JPd+<=|= zh%sHea@^cInKQsTm=j@}_Z>uBGZCHGiM9BTnEUO;obO0<4*zo?a{n4!@4Xf`n_%Pq zJsvy@_%^^}#LTDiU9+@ehnQIopS8m$=<No~d%i+<9x~<x#?xuo$G)TRS5M-Lun9l7 z%`+{G4f88w-g`7|)?h4e`o3o_>R`OCObj!Zc_6lM|7(~l{EO!*t9#}H<i6h@uuF{1 zw#OMGk0FQ4;Wzre;00o=jpOF=O@aR$|H9ZkQGSTJ_b_I*VC-%Fm}hRC6f>KSAP%{c zv0R0{9)NtXr4O&=nN_cjn;)Y;KO5qiKR(D>buI78{~mirz405w%^^wjfwBD19WgT> zo&IPP`i{-p=dbtzc=_3*;5r3=NQ`hfzTv$Z&)h|P@YqA>^)jA0-~r|n;JEj4&pf?6 zdi65z2NRDxc!6iW>^A0(aWS(2d>DQUHU$592ljRrxK5jnpKK$h`~sc44ITM4b_rQ} z@Osxeo}Ns@4n7?-TW-Wx-(cxiM={1;VD7cRGe`Gw#?!gzG&r|pp7HkZxY?dDbJLSC z^X@@0vn%6v!kf&y-ie!C-;A5r&Omp2J<~?)ax-JIi!t`QQ;A`Zfxc>V=?!%Ct(dtJ zKYQ_B*tTV$`A3Mc8oA!bGir3>R&3~rhvOq3VXm?ne7+8TeuF<{3=TXsX5J(&8;%YA z0zR~z%bfd{p6NLgAAV-s{QWazxFPW&V`8mY;5jjF=A4Qxdy4Ou;d@t_$=X1ZG1ot6 z%unI%N(V6aM?de!ewV|q4Y~f{AB?GWW9Il1uybeO^P%r<<^?^(h_ai@(Eh&v!dIQ| znXO(yme(`?UnypO1dkuP37IoqRz^P-(#PJ%<K~=K<7UL~<Gyb`vkacxitqh^?~q{w z%CM`m(Vs2vKo*A@^W(LV>mYnFwtN20o_Xpp{N<Ib5nzknLYKx=qD$xCUndYJ(C_E3 zFlNYl#757<S8UrK89PrirfzvRX0Co0eE8Gji3heHO5Aa!Xa0a~y6{fM#_2KB^d4gx zoBa39@d0~#=A|__BcvS}UWRS>QOqPhWbcT_oMQ{mJPw}S*JMsP2;EzYF@ay%2ORA$ z@=W$5<|=h@vrjj^<0Z!FkC=0yk3WUR-Wy`(3i!X;U7ooeT^#r*{G;7F7zeWk<0C%7 z|CbXZ?#H-!4ts?>9~jKJsed8npshCIw!^03vv-c;|B>bE#vDQndk?m7F8rHwIsTtm z>C8!<+3bn9xfMIsyeIK8_I~mqF|+#7*h6%F-=pK^3gXCXFOQqO?v0tPHbB<sbP9Sm z#m>Bsy=pz2Id%_v^agVl@V!i&d<|pkI>u5P_I2ImJoDbg%sZG{53FbIil2Fm*l(Yk ziLbB~d()4*h}YIUByM)X-)}L4F+@8**v2!z+L5^jI-vM|!G72-#`9})h=+i=Vp(JU zJqz22T|SPyb7wMV`3rp}Zd(E0`V+?MaD4XEKN<5h@#@5T7$?L%pCXs-j%OY=8-Kvq z|7w_L{&_uft@E&d=LBnRzx|EpugTTISFNF)@Gs_cxADyUH>@?`OV-85?t4kx961=B zzMZ%ayLvNrVKgz}o{Y7BWBWcLj{4&-i5Kv}!`?=QYce+0gxBcyy^N*H(b3EBH6O#f z(a#W*9EH8r+5|ipzdmuw>YQ1<UEDNdXHK}*Gr#yFXF|Qgdckn!-0jRMKaZQYfqfpH zZo5m|3}rmLOkD8grSJxt$F(pILHA#UhEJ-|*AIE#yOL*~#EvGgcUur|^o`J(3c6iM z-19v8j-S##kh#Q+_dX2&u>U)Z;JX%#neo_@ogc<0U%?vWO`NU4-|bTvm-vra*zY3_ z^vo3Wv5fI^1$uNHvCezMdG8#=8Vh6Pw2|n{3e27H6YFum1@ztjPx^-p&w?kLzlj}1 zhmX5HW)8-$Z<6L+xb0)+bM)*<?8;NbIm7W;0~lWu7|ZSWus>hTdSRNn6Fu|9pJHbB zKE}Wp&j0(;n97HV!G6HlJ=ZhK;hz`W2X5px_FCdT=BLL$i7qXOn`f_pui*T{znCX9 z@V?bI*x7gRb$^8?*ocd^<bmfgT%mb|RgnvNv-aG$8Q2mx4^82`_*mTBfNg%{2;ypD zk$pcQ_DaRg(?4eZLCiG>S)RTLKK*lJ4*oN75xRd@Gx`tjKE$q$qrKnaKR?}!>E-B{ z+40Zxg_vjU9^{Mdd><b$a-Ep@a~HPeD(1%c-*sqz*&)Ox*D&6vvle+aYofQZ_E&?y zIT8DV9xe9>^8t9a`#k37apD(j`fg7%r{9h9)>1L^#huJwW5i~}5Oble9G~*!%Zy=S zkNc;h!;IG({}ea>xRLddk690TotOywwcIOwa}gdc2j5rxGd}Jfd?EeXY$5iXzL<UJ z^Gd9<;eU6>hF%4~c0Pf5<7zRp)6}@}uEMS%rw2D+y^EObZN~C@_=;&B@jEhH275Aa zbG}tKB+i^VW}d}<nC<a<_@-Ov->#MD(Id>?FCy;S06T|`JB_jT%&&+&#u;-?EjlxU zI1FEV`e8A%(Y5F|<LkoR7^AO%b6@=C&G^>@{^l$8*WkZTe*?W{%x;Sw+;JiD!w3Bn zn=$8i#vDEe9-Ks*mH4ga@Kt|DXYs+GerC)=AHz5N?qvM#o9D28jGtd-S<f7?E@vA2 znDe%G!w+)bgsoWfE#mnZ^pU@l{u(!jVQ06%MxI7L{)Ww-$~gWp`nKU)=w=Ic|5ncP zIK(q=c+7QKH>v>NRbMhEL+2KZ^UT@vSugrKYbKv!yS^YseF3|Ry?gFiVv5<Eb433y z*&F=Z;49F@D}Tv6eNSTT8fbi+*p2w`0AiD|W3l;bV|(M+pb4B)F@Ujty)k<}fNlHQ zm>-_U8smzrBclI5`2wF$`+I=v)+dRHxZj95-hTM!f3;wDwj<u3#kfMwuiythMUPe_ z?rkR?-3q<^rUKu_*nOKA^QDd0b9O(rgE79!Q*m<yI)1uAC+@><UIeaszDK_u@xs9| zGm)`%By*GFZe-4Yt-ZVoJGT*k!(-+ZY}Ix2V?I9Zfsa^|1$NZ_=rKCBKDOzZtyl}# z9AEM*zUCTY;PvR!G}cSLWc_+a^!5hUM;H@dV2cL+03F3<?KKl#Qs?B~!<!^?_s578 z9wDy7r+&O*+#H-n);ReCuv1sl-mU2RY~=U^@x(7X;r$M*zg93$-<Y-8r+G%Rfc0N& z{aNS6%+Hhfp<Q_X@*HE2b&?Z@a9xSGZ!lwW2y*=c{YFl2b;Zo9*xPs8u(8<ty*DLJ zF2@cIW=(o`cu+?ih^+Uz&zKL6XP(1Y*lAgOI=VE3e!T<kkC4yR*T>B@BZ$qeW)1x! z)_h;UXEM%r!)J8v@0kVo?4yarmdBnBU>u(b-*^)%wopH9XXKgctX+ld7jBmX95 zxb_9l%)qy{ZUYaoE6482-lTW%byuSo(Do=}v<A5MPl}mo&oIBhmL5)Q^T>{@_cA_i zTmyeNlIKw9?$_U77Y@a*eubRoFt0%mPk$eqfL-qT8~*Btp1Fb;>xrYVjp*r^t9V9& zotlUK|Lr~IJj75hW7GCMjkzoHqLbI4ed2+mpJRP^TYS=`j8}N@_MPk@s^Zzq-o~ts z9r$$<Hee{R;iJ6&FbUgwH*-5;)6wX~(Me-kR$$Goj(HS)SQFkg{VQhv!hG!!#)H<d zUi%HtFg_)A!=`rpHD(%zg9p2I61*8qtb1M=Yi8Hu$KGHa@z0F6CyA|(q}^9ocYh4O zN*^8{WXv#Z#zXs{OREx7W7h_6jE^A>@xH<i9?83bD-!3w$X>*=kqz~}933}*{ERVy zuiX9L%<Erdt?dTZYbe|0CDtMz#O6?U!*`jlm9v)q47x`j9wD}xzFORD_6x@2&U{<v zEapE?81ws2h?6^5Cqm|40y~9Vr|(1@4F9&Az`Ed#p4sUf*3O{!<-WKX@)>jVWuT`M z`ff31E%f4keCcl3`w!sjtq(BnUgmirvE5_4VCS)Uui+afBlDe`={w_mA~dah7V*$^ zjC*uO&rkkz1#!m^;=sM|zr@!291%B%BZnVSe|}fooc$6u^;qHy#@W#qvc_}=am3@y zaoX^|XYzdJVb)t`@to{DbfnQUe`ZX#J<K>_F237m%njksT?Y`iZ%qt527AP~*=7Lq z<@3>#2G2~d@l40BW9Ikp@Co#)@^fN{9>&3%_`B1nI~My4&!@rr2e9eOGai@0w;g>y z;|KX)I)}BACm3I6vKEBzIjxEHRN|#q(SxC%;6ILG&G31A3bu9ntE^!h$TKF!%B@H9 z{N<PE0PU20#9XNry_#&yjV~B;#-ptFf35W=o>4Z_KVsXhAHcpa4yG=|W??T^#=gBi z2mg$oJ+eJ9J~}#{aeCfh)@6^wo^8$C;7aBQ=+K{$)BU?KPNwl(7@K+j*USgue`-%+ z++Ta<v!VFIPZ^W+^UUX2ONEE8--0jr2V)zV{g$|Lz@69xct0OKKKC@%BJd%v?h-S< zf`-{Uvv!P*O=cbAm@lwF_|_fpp+_RS*fi$+(7Ip%bC&yg7P>L<BmQ;`bY=_seh_kb zbVHtJt>c+B;LA+LYTb(9MlLhYW8DDSmaAe6J_MZyVDl$p+keRO!wr%1N32JW;yDmD z<sJH*svyRKr?;ca|3qId-jnfs9{pOE^$u*ph4gvzThYn?<Lth}tE#rI0Uroeq&G!M zP>?3QiwYqG2!<pkL5h*kdzC6kRf>po5l|2W1w}x*N*Ae81r-a56crEwQ9(ic-V+ju z_jm6<-+i83!`}Psz1CcFjxpw(YoAQQ!*o)CBzROo?lqmRhJk}#hmVWh=M%NN{BnuS z;uHq13ZVh`XW%4kwN^|0cLh7YzFMu4->-xD!|8<kJEadq4yTbr)r3dV=f%}~_s~FM z<wR$E&9~#su}^sVKw^AIU@_ZPrm^#`4FuZov&_fkLi5uHdSt%!w}`4#$A4Yb3fZC} z9lbs`e}XeJ;m3`lA%O{<X_kl51q$==dCl}kVf!>O|5k|p$|do-J$<1389fx3&=Rj+ zf|30uqz^n|eS^C3nE*~O=C1eBTKu}r2e^70y-J4_xmREBNj0Ur1A#i1@#he8=qL}L zDJNjVA!GIX9+9Jk@vDKj@C7z#0ps(if#SS(kHYGSA%Ptk#gaP3k0<23*7dc?bjW6( z$?I=@SJ#t-r3o<RNxA5bztaV#jpsWF>G%+>jvM-S5>EmBf|<;}Lau4OdTpgcpU1)c z;ZiMn6wW^7`A@>~Z8_2hR*s|RBLacX;7t2n@}5&_q2=VWJ#pA9IS`!cQHmy-O}{kP z^B12HQTmky_}(18^sqc}KTW?!t?@VaiJ)0BT084mOU!>W4hF-*Y+t&Lj$MN@D?g&n z{(!#j8P_k-1A8Cdtl*3J)iSp6fjjkqvRdQ&aO5*I4-HXsn_2{(%Ql4$O!6Jfc(OZg zUNBi54);9yjJ`T8F)ber!`CjoMu%F12QH{%^@5ky`KiXZbtGKgpvF{0Z?;_ez+^G~ zUUoUgQvK-lF!X*g&kyFzV<$G;upM`O4-<d376a{fNYoz|*ZJAI9G_{KM;sjUyJvUf z7sL74bL>@$-_)tDCj5ub(sm!zwr(r*$9jvm1a+`>`0g<MV;r+SR)gKaUi@n|Kbz+I zO0-|MN%VRjcq(3(vT=R!yA$q|70+e+sh7JppYbf)X3ZZ{&*~%}ZB0X$)_1s5PAYbT zecYGf_xP6Sa3HREUJV3Rh8ll!@%w98`!rg!WnSMEeKdXG!IH3Nw_g1fasDYE8;Glg z^PI_Q!au8V(5=%qs4?76N9b7=_)~4Xk{YF4?3ZdGfogxcuC2KGhORY_o(phTZusRn zs}|~^<ENv&<*@T$0~|e5*j}D3^!s}817m+N?riMb;!E0Uv7BKq+<uA1KSwXZ`r)wj z-D3K(F#8zXZ4|?I#Qj|U+zkI8bI)tW*x?=Zl=pDy%jzri%gib11A|Jd6W6t#RrLr? z$c;Xs8{yqj|GnY(V{aOFUVCZIyAIEN4W~jYi-$0^jraMD>wZcvrhm|f#iw@|dqHu3 z=yy0N&P&{{r(^v0540~Rr?Kvm2g^^VT(wW6gxr3$x=Vj!ww{aePc`GY^f4PoxrVmx zSX5rN6&3{jn?DtJ-TG&g_kAS~%1%p;P%FUywM*Nl(2E}VRUg6g8ieEaWq3J(efdUk zPsR^&qQ|$`djN~S{MKjg#w82wpSdr6AbJ|E|681l;fJ5WzGLd?59l2|p=Ur>{t?RO z-q&waV=HvrdXM5;=kXAKXm<hjy{QJq$Hug@CJS&q?C*4hFTtK!u(sS)YvBB~MEiG! z;zxcuDsQ^LT7FvL3w=B5oAW3B=kp^*)7avtPf5D|fSf{|YlRp(;d4#c|1N%X1CHPK zH0-CfkNIqmg02_mbMQ$nzBAXlEj}pLHyM|>s=0}_sH_e``=$GxKXp*&X1mjS)E8Ug zosjf_dhn~*1iI`M+yhH9Uhus=o#j0n#VXu=b-vnBSs49_-1)3{hq>#%))Rt7`C!hx z17ex4b)%WP9H%ixI-bdXq;mM6hx!ye|0I)~YP_E9MK!FM>Z>qh(f7f;&YqQeauYm$ z=exKmRDWu_`bt$bpUb$Bzb@^r|DE6ZM##bYim#>WP-6RWF}M$&=EN~y!qft<s*}+! zrGK!eZ7ux&gD%Cn^_$~CIP}~wdxdaaglmE|fb%cF;u`d`V})k0|Bv!$<J?@*+GUm# z*Y+LvAIVMO?)6{PJK3tVwK%>T$MJ~)Khb0KK#SmWfofTNS^pFHq#DwIOL*mB+*HFp zjr!uDg&G<EZCOvw>HITvLf0;Inz;Np18ji5%fxYxTJm7ON5hc8J!x__$v~S_g4I#Q ztzQLtQw-e0?xkOYc`L>8$283&uxgfgcI{s4l54Or{zA8f<9;!903QB2H(lTz$3A{t zFObju`6=FZpU#`*0#o^pYi|z4Q`L+$OkX}4KCPq=#KXNi^kupS_s4_;#<hY4V*IB! z)Ml*Z?_=o-KCt|V*l6gvv_OU7*862#QZW!n80+4AAlrER+p5FME_iwf{fFzu!m1y{ z>Tl*zNUf#GDz!kk_zN6+aH_m#h;=>6H?!C$0dwjeP*eIu?$p+N`=t+z^ZOdHG9x>T zgez6?{oVn5rm|kbezCZY{>`f&^19Ey$v5uPyO@lZe$i9@TpnhAPxht{X@^QL*@KW( ze+VYEDxE&iiBBAWe+S3nU1J$~hd6u!FSU@1zNc40a}+2h&k)mL>FrzboM60edCa`r zzZ1O8hL=~-?vH#e&w&eXd_%LR_qlxOBp>qZ;xtYpISTt-@!7htHDDg|#r{aKQ)Yqv zV&nBEX5$iERiO?4SR)VpKpk_TUg}x<kT&3R^T-2dzuut^1kcOi$PxwE=pf9)A7!j@ zFrO*<ot}LudnBx3mDR9$i~Tw|@L?snq`YgvZ^nwNzx`H!_A{74W92U>C%%q*?&15! z)@Us*fdLaeciJhr9=>X8+@*_~KW=K!U(UA77}+-f(-za9&EQmvzMg+xopJ}AS5Q7O zO5Sl+ZLz8zJ#I_bW$I6Prr2xT&;8(SEq-_w_RhM<FKN(+`O!mV>=P6#YuO;<EBYT5 z-E+J3JfQ~&CsuvH?l^U$xGE-ow&$d0Y1q~4;2GO*Zm-rZmdEXdr8Lh6<?J(<B9^Vy zSK{uEGU)<O!Hp3U<*e}F4e?$0X>rDHo5T0E?9~`99xW?w)5~*C(kJ(%4@CXNuisIh z^4Yc%)go}iG`yX^nLSSP@Lzd#{{cS3W?98^8RK}(XU86ri$v2xu;>{33_3_-PKLEK z{$Bpqi@i@b)+>xx6M4%qT-EKSKHi=D#xu{tx;b6>Xm)vn=NuLzwO_N>;%7PvzZZlL znfc!kn(ufxY`<5@b+{Pk$2ZgI!`>%vk*5uU&2xX|8*;@}{9u_JVNDsmEwMA_Nt*g? zdCLhkV*cEv6<wXj@8Wkq{#d-&KG$`yq_H@)){|U!Or0bU3)e^6BPR}fS66GUuCGb+ zZh%GI-%202zy`ZxLIQ1IOFyw03g61Ssa_PXmkEb=<ivR&!Uwz_B0dMv5BqRfAL~4- zA-~Ker>X!$SHh?W`v_p*+2-o4?Dss3KS+bMdB^^)GkQW@<&(3;X9L$Cv-iOm-}poA zd4qWM*^#Hzyh7|j`(2#xrmgw-8Eexjhq%N8zu>-HEA$wC!0%1eK{(Spf3m?Mdo4$b zla<yXRLv4jZH0T^T*lMAt!opS(b|;5#m{`G7eEU}E~T-=$SE;F_6Ej(&A0s0ot6pq zL5i?@1bck+nVvIy+`ZU*7peX8)5S18*t?kCkUxEHz3{}tS=sDubB7~)=D^XP>BtFc zhx^2NO_<tDJw?21+N~A<2N%%*4_M#!exLINe;A5O4&vkp^~LS{5#JYlMlEEUnw{}X z8>H?@Yu4Qm5@-Vp(_5P&uqD_hD9P84Pu0hP@1-X5mpftOGPO(RpIanOjd`|sjws;o zK=Qd@F8kX(V)TZ6n#Qqu9i0U?+GYy&oz(Jv3<P@e^OkUL<L~UnMr&|*EIj|>M|rF9 zG`t{}^!cbyaCt_#9amejkhV&o`NU<r&*XA+RKMDCo|o9VsLwUGuj0Dzk|=+x{#~5S zDrcd8Ceo4vX@%?b<Fjg)Y_RinIvG9{bl;6v)sd{hJH|CDo4rS+)oe1S53GY(EnkEw z{2>zNRiFp+(M9FhEHMu*sVuIF@DmvJH6MP{bw^t0H4L_P3+1bDA^eqKJyp*JrWbyT zZyEd1Fms^qLOu=&T#m>6W#!#%*>r{LMtK&$Y`aG8L;wGN(i%Kyjryuj(G73lo>k&1 zVo16`2rc#TL$ngkUv=1fZk|)7z1T3u7;6!%leXx2YY%m`2I{F|s^DGnG~+8aTs%Y> z8=dpi0$Sw?eEXXI{fbt5iN^nwrf*GK@c-uZ<^HtfKpd67n;MB2EmsUi;kOO5VV@Y^ zehMEg#Knc>l=$U|8*+#v`eo0-UVKzItA8h{FPiW71NroF`hT-MF4lNLXZx};STiv- z?@@Y6o-yfrd-@i@u*Y1x-}h;Ez>BUq{RAF?dn;G^mb<^?-^=ug;NI?{ux7CF8{4FW zkig#~?Vn15p`q{+hP?9|Kcv?#1YjFo`7JyyUs)fc9nBa;QyX7DYt-gD^|xd6d_|lF z&-RPcNoCZc*gpe5YEo1F4UdnC?WWdj-5oTDwOoidPve7-FWm1kAGF4`Y4i_<%7J#m z&S+ZmFE}kfDMv>it}LIx&lh0Kf;#r=kEhwYi@6RkNG>xkPK*!NAMVZmKj7-GU_PvA zTtI!#v6%1F4A}KaakQ;GUw{+o3xx#czGRQp5;2pP7BP=W{CUALnvK>7e?;wEJf7vV zPl&g(=Dr0^Cy1fvaaxr>?e*XjopH)~xZI&{Adp{-lpn3Gam_m2C)epBM}AZe7GsYR zZrPRx$3M-_qtn@!LtBWEm1EU(-1}HfIqx=c=3c>C<uiWIG}(M$;JPR59jIyjt>1_q z-d*@veWZc9+-10tn-<?H_I||SusNw4KY+WL*V_9x1Ha(2p%23C;93jd%!6D9&uV`Q zXZFFT<9zHcn1GuXuw{`CtzSO<7%|zJkE|G^j!;3|oRJT(U0X5v7~X1yM}m8uZd!{S z?}P*vEf6!y<%g&B;XAV*{0WD%d%~<+q+ZMs?|Hz8GB4YQEaz@n-afb|Xpy;UhBehE zHtJo$ksDEZGTY@Lc<EC<(RsKru;byE)v1p0mBsi%d^OygE^zsTIq<iT8?cPcUxmM| z<QzBH^~2|BjdAJ=H1VEc{@YKUumTp$rvtxLn-~Ji_*R8|_CHLr7ZwLCf_w9E-_`p1 z6ywqb2IHs`tMK!3esNr_th;sNTjQO7uOpk|z3O;pGu_eQtXMYxL*K%SE&k4;7<z~9 zc(ax<J?b-_U-e`6!m*of*i%*681d3M+Bb?%XY7gFi_+WotBYhe=2i6DR$60@STv?7 zwC&^R)rBUg;S|)T_(>hG9sid<pY0;wf;(N$tC{ib@IUEq*mh4h8itQ7wkFk=%BiNq zDt?m@p8eb?U7$Gs58LDY2tK^u`X7Ktf3wY+-SXF>cvnu9({szgm)Kpf?lt}1O!B$x zaEfMnp3Vx^Dlc2hKjG?}i}rW1XKis4Db5FtRqu;eM}JREB&ZkJ^GE+~G}m6Bpzgg! z5;vel$Kw1;Y9V~J&1`-Ew{A{TyIE^}#Z2+u>|kvwh?Vwz==1&RGpp>a^6%j-<+6kQ z-7a>k`XXF_W4+&oTYHTAP47~CiTC(vQCg@HZWs>>DizdM$DKpynSl>k*F$1M?B8Ep z?X11`7_PvqUGS}r`10?9+i_th+W2=d-CynHwRC|9cHh-fzOao>rb`axcAuQI-`)C~ zebu5`=mF<6e``~1xf->3^q=VdP3TT*KOO#`!5KMv(jrUPY=FI0Vy@nPYtJ7uik(vr zc+cV0An(iV#bJZ*<-i%z3t08w(_;BKHK8l%0>e77mBTGc>x-C2{r9|2Q$k<S^I!d# z4tZQ(qm3LnzrF;Ht^J&u&mwxBHk!yj7jegsJLS`S;Awt*gMVE6887s~)5Bm~j5_rJ zIl#O2DQC7O=j~^QXF0auOSsyw5-oQX7s&$((0)g{^6wI`e-52dP95Fa4Pl!Kq1FZ- zAGh|OB-u;EP7fW{f8+;=>H*<6c&ND~wif62)978r&8u?#IdD=PI#>hU+6_N-(D(X6 z4bpRNexo<SR@W=i3dVW#E$^b;@0tAL^L%)|kD6aYm{1AdvqNwX#C7pCw>CZ#zl(O# z&wJ^I-F%Y$pMl@mvapxAe)7IG41wYF^54&@v7d#@rSYeDZMf84nToIy|K_P-?c8%? zb9*n~eQmn!;%a+|Ve*$Zaqky!7{}i{jejSG1nR-`4<7ao5B%918WIS7(Y&X+AOGmG zL!MOF=U~o-U+r_`!>tR;WoeR^)M2|B%j!?er3$X(Tc0eI`>vJyiR%Zm!+vp8kY7wO zt`<GjU*_5KA&xpdCbmzCHym;ES-DmiPPAr6PV4`ChC|`R3b-EEjLzkEceImp(zgpE zt=WBW`t6Xw44Aptyj$e34ntu9Z2Z2nwTBbmzXgXU(oi>P=OXm+v-J23>xRSX^y0Gp z-9vro<&X4kj?-I3=%Fgscr$D;w|;rt;}7w1#v1qu#c_Ro{z?VU9qSzjvAX^*Itc## zL>Gi-Rxhe)5B$S$@iF+vU)tb`2NsCq2i2>m=pA<U89Jn|`K*8O)_&*v-e+rb?=Cj( zULqgnQ{$J2LA*Ni4gSqf$4-a0^0!0Q=E^*Ax==je(3{omvtOx~z7GGeOJ07q_z`RR zqq@c*ecbEx5WgHf8jgpW;}{x9F4L)o94Ujo$aY%hJv{pyzlv0=&!OIJ&8`=dXXRGY zoF?!4Qtm<@Y?)#|$5{Jdmczw#dc%3?VX?Wrr1~vR=+fW2DoyqKVc$A&yV+cu(@(Qt z{EjT<E7pVWvMv#y2WYobV(Vxf_zX)&d@0|d%aV4hgVYNNOf9Nz%6{c&hp5hY?<eaw zOfG&>{bV2xkOMrJD3^cAew~MC;u7+YYBWe`_@7f9@Lrk+29DjYUl@>QRq&onA$5~h zaw<GE{tJ5v-jFwDRU5FzA9iG;dUTmsy;5GU@CSObxWCi289(Q;PuRUCHHVQ4;E7{9 z57HeGH1VVMt!=W0BnqZavJbwMT8}YxqU-P3$jAP|OXm6Z590Kj;QkQ4u+N^@*826k z<S#VaC-A#f1P$>3JQmw`@T&%X?>1SD0Uo`|E-&)EGuzaG@x&1JueXQ}T+a`u(!n*< zPuaHuOfNALe)!y~LGoMi+^edZ)CRQx{<yydd_6?-^2407)mXyC-gNqGUvQ7Od+xEv zAx{2%1)iQ#_u|XPA5oW|1T&}G$7DTPxpuneE~Q)Q@cnkv#M6(ks5=gV(TncaZ=-z@ zcgl&y<c@GUsTds!D?j~PEES`#@3oE(+dtYmU7!s+J$Hc5KL{^+dNxh=JA8O?hqXu$ zpGEaf;9mn+SDCLhraMc1O|LAZ8GmEj4eVDyKL4Fsi+G(d5YMskEO8M(l9rrHhh0?z znqYn#)m&Edzb@8zuv~N_&dzBapF&jg`42o=_KKP_TTaPFSI>nxztP9r^k=O3<eB32 z8RO@>H+Q%{JX+kI?jFt7xW4akyvx59H!==B#H4}d)}*2P9?nI(o`dzntT|g&7ndEg zs#OK&RbM?+zA?l)e^onupv@T?il*3o!9E1Kw^m7hYVCfls5i)_%?r`}xT)+&d->UV z-Bk7Eee?)_4RXsn@MQ9Sc!gK5Tx5eyIHxxZ<Cods%r7`;$O7x(Ij;|)HLZ8oX)xqh zc`MyDzpQr=9<t`RI|E%Yh;Av~P~0%nb@t1DO5OUZ{2-UOgduP8%i-nJo^e%0W1bru z5_oo=o>j*Xe^8xo9v3IpaUmNV>mknK?NiKb&&8egpTotBCE2x-{4`$eFC#4CC*7ab zdrpx1Eml7={yX;C2gmOd1K#z(kKOCqUy(;mqm_PUqS#}{Cj4|<7ded2Uq6A*EWi}8 zH)*IEKr9}D^D9@1!|%l7UBP!l#KRxzLvUrcxwrh%9v*(tF2wylq?umQgT@1yL+~b^ zy}vy!-7Q}j>D&f;;A_)Si^b+Me5$bZWrOX9*)0J_=97QZ1-oGxcMN<m+Oe&8d9s?7 zbqn@4=ZoEyo!P*-%=zr?`JNwGlW4kXBmR2@4s3W){$uT1!h^oq^`gF^eV+H;4xf5; zym*H>!?UPIJi!(;+@)UZS66+7-?c4A^WLqGO!qW_f#2O{&EFJ5p4GP{9uQ-l@k%}8 zzBpWet+1ZVclh4A{?13T!LJ`(Gpi%4NblXm&ECK0q{n{~r>%y=kMO||HMv>%yg1GB zj{Ngp?=#}1s2I2aqYn6aKi(cU<9m>8BgEws*7|!~nY*l*<5cTLs=f6L?!8rCm?)Od z=(DcD;qT(UqxPNhi_)+lyuTR#ivGh>QQxcOt+cjH`JHDD;$tJ`@P#WOfjs8e)N`7^ zyhyr#?%(Pe?~0q#wEDgJ2{-ih#ChY^dieACz1Uqe6`vW;-=EOW@{-v6aMjq(<C+)z z^o4J&s#wS^_E+G5RrU0B=cqAMRYx!Cb1%!U<g!=R%Adx<2HaH3`sAch9{rSd`WBY1 zfw$JPH15y3mmYF{72bSwC9OY3EwZt^?6BNN+>DP@j~4fXXrEeN(?&3=M05FyHOcCl zn^*P2p7icGn=GiM76JPveQ1xvBXIGUe`iuh9BkjhP+SQ&9&JRgR8qf&2SbeU!ku!C zJ^Z1b8iZ+0WrG(s=*gV(zRv6NKe}k*Q;xy(=#sdIAKZ0>pU~&0V18HlkPYr-ZKwxi zy=PXCFTk<lAE-UhV3{0S3~PQHKo^MDxL};Lfj5)sf!EBXhj;g8s2LBFbIp<`W@GEW z@S@mySsXO)Ko7q|6SVdWe%ZRS+RQs*;#cE_DX)!D&uOe5nnC@#JAZl>-_(+qwXqIQ z<D0R16|kr}JH^q5l|pFN*|gr*Y8NH!H~&s7KcZ)JTK-jl?lO+GFt~X?bvi%QJa77C z`^_`i?+y=&!pU>)JMcd5uEo*wPpV~<55B{Ik6z#}W%aY=FQtFMrN%s?mHY^f4lf0V zXrYd9JF|Fi$`8-o&CfTh@vh*jbpCn%zsWc=i}~?2^`NWR7gkIjWzDM>kxLG-uZV`4 zSVEr5Pjj!QN7%LDdV8E;M@R;I&36vr%|^yJWt+T&J=XKJoK5h{d3AO?*wlIsi-O~D z?!4>17w5t6zsLbYtHQN{<}w?1w0caQ*Vs5<*KC?+tZ@c=qDx+8m-p0I@MxV*a1%!c z{r}^hG>frr9xe{}QxNM)!R_M`z@zExbIGO7@HUNZ{qJ7K=k|(6v9?}Z7JN?LHBmgU z*X7swL@E37?xepyviIg^dmW=`SU6n>?mWb1e~pAG%hJnN#1!qgUYs4~t9R9fWlQ<y zJa{J;JII%E=TzquV-Iz=cCi0`9RDG0JHtAyd6h2QZQsB(KBE?W>XbTgUhj+Xld|G@ zFujtG4mf13ui=l4xp7fzI4y2En)8I8@!DR!E<6$Jk4N8xRbP20F+v{hv$K76&uV%X z#$1%My!$-OL<=tpg-6Zwh~8kgM`3q=@eVr+^X<qm{xd*atx)6s14pg0&koPjEkoPo zSC_A^?%9_H&A}J&UAnvM^F42^ey4->o0D~!dXg`Qu`jE8$7B#bZc4B4|8<YqbGKC; z{TRPnj+^_*hb!ve%u;hYrS^G1eO^4w<!fzVNbr54N#EiWTJrN^LEhGHRYwS^274R& zUWdx&`-WJc+pqAwI^r;MUh!xhz7fm)M#E)zve~mT%0D*2p<-~Y`#il^{1^)lviwO` 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�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 R8ITf=$r()LURLuIEidp|sG3#F{X8lXW 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 L3VY!H+5`UsIlJrn diff --git a/venv/Scripts/pythonw.exe b/venv/Scripts/pythonw.exe deleted file mode 100644 index 84b1f79b410893f2315305b8a3460268c667e752..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 522256 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≶DcP-9`{nK}8PEAh~WswQ|LN|p0W9T|Gh|6HT< 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≤8Pl4?O|z0DcY10DllTumE)@f8b`&L#X3k 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 RbkkE)`Y8|UaRZiu{s%ak5fcCa diff --git a/venv/Scripts/pythonw.pdb b/venv/Scripts/pythonw.pdb deleted file mode 100644 index 1d7929e75d028a615849ede606b4d51e68b78125..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6270976 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�e-v_k9pwrYXCh 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%0DDjk>&$sRY=pkQEK8KtT8%b= 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ⅈGE(Mf6HfWS)HMMyaolTvL{X z>sKq%kos6ng?p6u6Qzs<WS)u}kGl&u9d|$OL0o?L_{4N7sN_%V@>Njbb$#v$&o$KZ zlZw7@U3LDwE_-G$b79EbxN8XOm0Myz#!}|iGJc+=y)6=-S%$hjkn}`WFDh9zQ0a?| zK3D094w&?sKhY`SZ-t_7<klD2Ch-<UWGj5=veUAau!VV*y)@6Mu(hwNJI?zkZe}gK z<lEdkP*j`5aNj7Zu8O_KjVj-U(HxzU=e>?+(J`sZ7YTd3rfVIyYaO?19e4ZRUF*1A z>$rd1`}yatb=<CX+<(tH?q$4dwpqSfzcVCY<iLF^9xC@i#0B4Z-+Pws{6OhRT`r$o zGq6@4|7osu-2c=%?oU;Dbc-09F#bToGr!;YUbWHZ;#$pYy{h#)(W@SNx|L6x4^M7; z$}n8EMdEvW{ZP*n|Ears_o_!uZ}_9$$;*M>oaMwjWt-*hXPZ60^5=^$pPrkVb@1Za zKFw>@>h=12_qm<wwC#s+3GVlC?jhf5Y?dA``z&79e9wSWxtFp|AFes-wo8+q?ASN_ z^R{;!zo$>n`@0xMYen~PL$?KcYGzp`pJ}-*dF&J3y*EsGwRhNCUvK-g&AwA5wlY2q zRdi$C9RKykbFTH?Up~6>PUGt*`QGKu$7Y-5kvcU>cJH{;zf!MtCCBf)HD}6zoqI=R z-rv9b14C-G*|>}EXw?<nkJfE(59uFJz0=1L?~SN)+g)92+`7;2+_ZO>PtJKKAbNPD zVSLTUSk|+yiWwT)%eCIywcgvc-rKd_+h+OW<?UA@UVD4o(A)MT8S7px_24qsdT(hb zUF*GFwnan_CNFAp&%*;>U2|q>i;S7!wW@vKTWNH8->I!D`!sIU{z|*nhB33N(EZ*j z{f#GTyRE)E#J}vJnFA*6?D5c*Y>&wiy<QGHHe<mT8w}%tHbU3#%iX))Ul9A|z`EbJ zu(&_5Z*JA*8^`=~*CQWTf1KR&#PGKa<GhN`t+8jh+iuxX_T+Qznms#V*Rd7pubvov z-><dYPW#Vkzoza?_NRnOe4SSO@JnPn|9%OZBSuvEq(_q#=W4&#e8A!R-l{VDY~6)V zGNubvbP0pY2DM6m{oRBgZ+YpDVL9)|U8=p(bK>Tb<)4oC3`lUT_x|fPLtN{<=aqiG z{vG36wYaxY(17IRIwfbHjM~KeX|<ku!9A}`y{lB65uKC#lRvHXeRj+@wN8KWK-89$ z&Gqc1s+AbQ8Lf)W^R?2GuatOwf6b0p7P{7ZkGX6ZO>dWa9y`9p&n<l>Z)w(cRhPtC zCvwKc{Nghp^7f5!C!Q?br}L~eh7qsmyrU;tKHf9*L}s54n@%jbA>_88w@-u)AHVRv zjZ1b;sPf=DhA~6YeKGc<DjAj!&hGu_sjhP?*L!ln8}2P9ZMM2U)H(2ndSfrqUM*L2 zuJzvkmi68?=6W{EmZ#?i>~A*bk5%R8|JMAQ(nG)dxap%G)^-1MRBPLb%+_rW@x9Am z^)r8)jgS9^b>Z^uUM~5bChMl@_KY8JLveb&fnn5<XMU6K|16tR7fVX*a>FYKwdR=M zYE5r2SQY<npnO}UX;N!@d97iu?Rb{>gK_%%yum4yI)3Lh(fy#uTh=P8`0oH^E&4!^ zS1!tKgNnz^{I<^eVeW;`M*Qx_y<AhEuK~(h<GP@ozm_1c7wx2>))-4(XYxD}<TZ_5 zz75X<S<h}P09n7zcU%^9fU*X9DtHW>0WJdxqt<K_#(0kB#o#J%DYzPZ27D2G0mRu~ z0pA4w0Jngi@VXT&3%(6j2Hyp1f&T#;fDCW!O~H3SUvLxH9^4EDg1f;!;9gL^_3j7z zg9pKA@Guw;9tFpOvNl}SCP+TcdAinEkG##b#@c0<g7v|pusJ|Ku%ZKP9gWYNA=L4X ztm}$pPY4Z0a0Kgm7;{Aia28+?>+fCmDE?Jztc$WkAvP%fto;es`fBXajN#nTPgt*n zyEvb^K*!ht*BfWUFB9|yr-OlDZ(OW6I?wsw9PCv5l{MC4U*u-&OoabxF_Lg|aBFaf za9+Pzj1IUYoa=H)z$F2f1paLj@PMKCzjytAVhTs!CbB3uDm^MW&fEY%I{zE@0JP$a z-jF8DW$MWpz7Y}X$o;D%5Rtcr_@A^B@TTL;_gF{wQ`Mn-RlqLrys3fXe0?#O5YICH zh*-5uIU+4JF@<sq9G{vPYxBXJ0{%(On)*zLNr+01$h5_zretK=n%N>ESo`kp*WzaV zvr;k=N2kQa+DN8F-a|wLkN$p58R3c@fFP?MJhIMStsR!N!J6OF>RHx8zpwcBW{q$k z>k*!F-3_BB6LD`#MYX=zW-WNmw5$={sls@&=2p(`53=4OiMdCx7a%4pJu!1)L=3wp z67~7rLcc}Pdlk2aU+q;e&svxC%Q^Nf2>-0xCoNCr-WA}6xw2F^uDTl3dk!g!16P$r zT#76i|2LL}$mN*gw?baoX#Pv9vPeMRV#%j23)4<Q@v@fp2ZvRh)&8=qhr4N6AK)E> zTqQM73cMRa))$>+UD!-WKtOC(RFcDb$mpch=%}Rssd^9)keHH~nMh+gDNY;kh)Pe7 znplXP5v@o4gEdpu-nT-AZboK8Vus$&AazsAw4~bi5UPI1qDoYRVpzm4`vIiRnsnFR z6Jsk-pALt}eigkBNYd@+rqea|07+W?+zO^8^)1M;U+SE^K;%lsmBvNm!U%I&>p)CY zT4q*yTm+Rr9UC#!ej2`P_Mb@G5KiOZW;nbe(rFvhnUU+f$X=0Bw@CXrJg*MuILpGX zL)VQS$rzvM5|ttCNf#?qd!xJ~jO@FrP*Gy*o|U3@UUf^!<kWYOlhm&!imtum+0D39 zJ(p4PwJ5y~)7w%)5wqf{i!~B7<Iii`jBaRnbW&nQLR@-x>5zs0E>?N}Xwv5M+m-C6 zrzVBRsC4DsUR9NDe^n=g2~)(S%BwDAB>5AW^>e#gX0mTWewX&PpIg3Mq#PshlRWiv zE0`yVQ~1<jipobvt1bh>XpbyqUqyYzFJleI^H9fgXP!kbzHqd|KB5d<j^>!Y8*`iJ zMUtYo7i~i5U)46mMx~67OHa+ph!DFRx*5~e?OJtI=gp&-_Ep!tqUxK-?n8&{MwU^c zD<Hd$$S&=_Ms}v{iK5#wosa9w$?WsP>GQ88vml4evde3kji64o;#R&D^h9Qvrp(m9 zF(xW0iH0UEH9a#vN?DkxOFN<MWyHosXN{)BBN7;)&`_!EWU8K`+KzbIsprZ(Kd<7g z=_c)fwo4L`zc1HmFPeM@(LA(OVdX5D=Tul*(P870qDDK~{p!#@qiBz*unFWz$JH7g z(|mK{PE-ctN(b+0Se{X~xTKwv@Y5Pf8`@K~Yd@(GlC(iI!Toh}>uH2qD-f^b<5%^2 zH*<S&xE`fupqZi8Fyb=vinUYSHX=%AJ3SJ7p-NBouZk@zH)ExGZlc0|TQGhH2Xd}Y zs5OnS4H#!eqWj+Eu!|Z3dL)%8Tc&%NCY~M^D<+@(OX$6o(q6HWJg@DS@WJ?8ugx!` zc<H2glf94K)wAwXi)!;F-bmstuB{guX+y8o#t%lezo|0Zug1jXuvx`0+SrCH#7RGW zfqWHlh1AE>tOFvC(nf&wIJEuXy#Z}^1=@6N3nj1o3+S%2@71Bvd+Dy$Px;+e)b9=* zRAT`67rp7{R#0ywtmuU3Oh31)bw+-dGL<rS`aQ4Ar7t<J<dWaFlu+f7-?s!io~3UQ z`iYL`!H#FG+pMW@JkN9d&gN3p7xg#W(+XO;j-iSguO`6PUPVt|<d{_EjRlLDUy6>E zqyca<^!y<<A|*@qHjBQ?I8Ddtg+5>djW)@fw2xADV*5$vMAsgdX?t#_%`pihV>2lO z;ak$|=T<OH=`*^Uc_cq_N&6y~%td?A{vC4UQTniAvZeTqgx8C>W5O>HNFG-5d;zED z8kNXrkhQ3J-x-yTp7-78-0yQ0rc^QgrD@|X!7Aej;X(R>&*4val>D1ztjBsHFFodv zIk@Eif>Zu86Vl_NVk44L=?01uhUBsE-enmx{;J~A_U@$pDA7pT))Lgqd^>bfzCNT~ z#1&j0PvJShQD#2EBp2V2)xL7UKJe_V;<aDRBEO6N)u*h{ziesjGdNQK?>zm}VQrM1 z-lN?@#WjyL0D5ez!^S(t#1SbnU=`h!xq}W{M}?LB<4slA1)L$~iJzG+hfc)laFT|M zVH+#Dg{&ixGYRy*WF1#c#qTs#Uy>422$z){EnB@+8q$y6qQX961RHv;o0!K(HI=5; zHR;vT$Hy@{sAzPv_Jc-btkZCVyZm-q-U%3no>%6-71HU+xARFVz1v95Q}NoLavY@m z^d9S?%DuJvUEYJ}J@XmrxuemNmPG6mR;Io2BQvVrlpO7CDeYaBW)=EA*5eESeECh+ zAA3$w^+))+PsN#Ef6RVD_D}y#T@=0Ym8@NTDZQ#{6kSIu8YQf6s<<mO?A^C@TL~_0 zN-!w8K$}uPkL0(oyx$7yi8;s6;qvuB!bl$|<=oG$U^z>eNPd%YRJPz8<tXj>P{o&F z45_W_g=w#HsiR)VI~=L^vex4y;WsJzBI*SuyX2q<$nxsq@enPu4&r(Bl~)&gI_hEz z$IH80p_McRCCwu$%~@C1MMs)IdK^<+sf1>kN!n(a6_<WF%BD<XX+xxJ+N!p}JX^!B zIuUZ+juU<Yaf6YQx1v}4q>hb?m=Kkjp&EeewhJm;DOFcQkMijYmT_KNpy<mhddWjk z^*^t!JJAL^;x4Mr3%#n}PV}N{5_hrnT+!=#9uB?P-kxxjadGXf=%(cNTDmTIbLew{ zHc|98IRCf2HqWdd*V1+2uP9xwqVk|^9E$D-IGzuoWAfbF@!ZNWb}{?)U84M4ei{s^ z!2M|B1}b_x?^TQM*QK2Gd)}0|2~G{7l!c5}bUgZ<?;Skfsp8e`wr)%1{ExiX>#EI^ zzR<4dyj1(w0bQ*OpI=ZO-epRAm#E@xDG8sd{o}U^{HEK#`f3cM#|M3^5-yG3RJ&Qa zinn`tZ;K3ttI}>($3Mvo=iX5LP*mF~yd)`JD(A(0y)jlz+Db{M@OVP_m-6-EH~nt8 zpv;`d8|P%8!NqWdI$~g}SC`8yr*gT`@kViFB=5l%s5omW*-M$}G>Y!8q#u9OArCWN zeMZXFWw=byi49^sei_|Hx0yEbQpBa&OtU^+OFkC~=(3mC__FJq4c9pvu5&hC4RD>a z;W}p{xNO`3*Et)1&p8{v#W23Kyj5{?yRwURzQ68xaLISyO?&YBi4R}c@$BYJ&;GdB zX1qVFoa>y8f9jkK*ZCQ)^D{o|!rl@#&DbmxllKmP@U_(w>-Dk!xNhGMb0^$abEGw? z-=L>|ZTrH8reVLcS47eIz1sbi&p*r_a?8q^)?Q~SbxEl9NWFt@=@mQFSeiKF>GylF zjz-a4zV*!1wVneH#-6_Dm1;X!=ApyG8V&#cKSu3ew)QyV_sHjlaZ1rWdL`%A?jhkn zCB|&o_|mFHzjm57r9tg3?N7VT&lvViOtZB=+|_(%r-Y2%J{fO)96vuX`0<BQetqc3 z%kMDJTg7T9n`QBr?QOrFd*Ik1uhk2`x2|tHs?1YY8gzf=h1CJ8TO1!``IPT&?S#(T ztNU%6hTpPsMynx-Pu%KzwDRuG>sFMqoOGR^;W|IVb$*8H{ER`XK2BbI>WPf*O#;uY z$*nouFh1p-lI#2o&jzmZGei$u=VyHE|4~vuw~y+?EU4Y~(OIk)2^G0SMpP`j=Eq)b z_N;wnOUUkp;Rj+vHa%r+n6s(OrJUQpeCrtdmla+2db6|dc(&HrE2}4;oba$UAm_<P z9`n4|Zp_{V^?WP)b$E__&D|uv!}WK#PklFi>lbzA*>{v^oV#GylPRM%Hr$u&^~cG8 zw=4d}dv9K-+bl6Lwd@&{$G!b-&s9C2c>V0^ovXJ5&3*5&i!V<+dbIETF>JJT*-Lz@ z>zm(AJ?&G!#s{Z&{?;+6d9951-sL-nl5?wuv2UHfXMy*uURMU~U;g&_E+_kaa%;)# z1|^#eEZyXt)A8&j_ZK;*f8BEBCfkDWGq0a-cJR%P)jr(Xqw~wnd*<~1q4AX97b~*I zteF~LS$(oIU-)X;;daYb9Cw|c@yJBOIMH3?S8~xCm+t*;{QPpizqHY>-q!ce)#>!E zSC^2_R=@d1$B+RQHlTa)q0nZjc>byE+5=7|Cr*F#wyKM|k6*je{nZB^EqUmjuJzW> zc+hoz#<+Fwc6{aISC-Xm7HMr8bhc0V$zQqm?;3J~dLAb7`@>eDV%og*wbs4<Yv+q) zc2wCGb8!9Sbrm1pko)O~H#$5sjn#IF?x*%0HrUJ6oxN`If{qO${~vqb0T<QL^?jG6 zi^^g{MO_sYJ4h7~K~b>)78LukG(l;?V%IDN6>F>sQH+|9#MpwdM~yYnSYl7?(byGZ ziBV$x{%7W1Sa3mnlK1(Z_j&LAF`T_~&zw1PrkrVKX2*c0k;)CL?M`g2bvwTG@*i*C z#C>ZFFWGv`y7ZXIt+(xYwdB+BZEJa4{ZBbR<NxBh7=GfS7Ond&!`k9Qtd-HeIyzs1 zmh))ORWddzuflIylO&wKfb*O9+Y}r39^o6UCv#gFzR!yA5KM4{qbDC1g%CtoJ#A%p z4Jd`<b{w?M#_1b|Q=0H_h(})w->m_qaC~1sx3wT14a0qo<yfGzb17&olFp-`aI_Z9 z_ssMC`IJulVLuOlDgm!Nej@F9{1&jiKu>Z&-0ZGLtZC}m+BskZ{F?$w{P4Zbd~ZT= zezpP+=<GZU;&YopIKKDSc({3DxcPt-Zh;ss7r*(wSKJqg{GfCYzd3O9d;mPC4|cAH zHz0*?2lx?SPrxid;{RhnY}I3TMkb5zW5o9pfLrkWG9dAP7jOsQ6TqE-W{7t;U^&3= z0jmK10H_8$2-qC(Fd*$a{s~Z$6W<TW&sib94f758pa*$&9t!0Pcr6IW_wDihe8t0I zzb*@>0;Fv#c4GPR!*9OdjhAN%X9hoM?*Mq!o8rALAl)g6Gf4E9Di#_6QaN=3B)-ut z6Zcl}y=g>;@W#W@qXnO8K**Hc-5Ci8HP7w<#j!lX2)qvki~~#r90mwK_O27(M~Uwl z;`>ZM<c%JAM7AXQ#em480(tPgKfK-)mj`I-DP3uR)d5EugyZ{n_<o+^;gB8{Zh{zY zq8P3RXz+bDeE$uF!(TzYLAQ{FL${RGo6CSyZ>|Bh0K5(819%6}Pkbl2hQsmw7CcXg zF6Bcg96eT$zcnDr7|Rc9K-59@?g&Wl4aN7y;(Igk-4(DrzEeDYaD0yd-=9G77?y)- zz@vEW0abuC0I?NAz}Yk`zFL5R2qWLo`JZ`y%&u8Dt6>24>UKffhQewa1p7wx6SKMs z!s;;W&hLnGP4IpTXPV@r9}?Oc?X4fmG#bTlYGm+TjqgG*?yyC}c>tAn1!y&EkNa+a zgGFd(&;pJF;%Ek%@)<J!9cRe+yiy7_XuSQ<aIZ$A6W9$pF93Ota*~C-w{3&-K2V;H zg`+J)*%*zok`Me$lmpAY&~FHH3+2J755A+!#Nyj!FSH}TO@=#$GUMZqvPNYQG^0TK zUGD0%{1$Y(Ll1yvR4?pZ?+?0g@logt90SjAyWmd2nL_Em0JJ@heixh@Tp-*aI0t-7 z2F!q40Jj2e3*0TZd^lt0$><QKtY^xs0Iuyxq%j6O!JUFL9f~>yzntp|!3{7FZV=o7 z;0EAZEPnR`91WNWmjxG#_tk*=;6~&3DL`X)cU}VxpHt{3z?sfL{>4J(fKlX!-#S1& z+-UsH0n7pP!S`F><!$$Q>VWqcVeI2j#^L^d-|1;P*Z8?Jq458^=g#Os!wa2@cRhP1 zp6bnOoI3;eKrn^gG!?GFWt*4^```qnso)G34>t#H3tS$Yjj5^N11CSS1Y`-w5|AYz zOF))@ECE>pvIJxa$P$nx@ZT>18vRB5v*-Vj$zOCzN>Yj@0f&^dNQxMSIQ|>Y{`+^H z<tN$Qt}x+c(hq?04pU;n$12R-Y$ZEgZf{vAd|GFb&W|BmLBlWHCf^R>dD!O6e$Nh6 z<}+Gm1!1{;-kV_&tuUJ5TC%Woo{AJ!vNfKEg`4?sZ##E@&f{<fJ$_!uo4k^3V{M$Z zr~}TK2DDBk9*beX)?<8=ZTn=~J|SPW?UQZ$WZS;S)nwZ~*|zVKgV(J88QVU$D6AnV zV?S>7%5Ao(W>UrD4SF{G>QD_oAM;7~>-c^9d(}y&6EAO<ZTn=~J}<{<!?9k7O(tsP zO!p<tUr!4PP4fNe#H$67zvfKp_WFkd`)eQh;P(eDCa$e32#c}CuU57iADp@-#x`eW zoy|X788GYlhDEEN+lK|DH+z-tG5hsEY@E5t=r!;@_oU)|%Mn$&D4b>6KH0Xf#)h23 zdrT*4TRyLPb9&gm)0a}Mt3Ha4$-^1vzErM)uT}l#L~zHW-=7?GeSM(orfzO87qwnE zKIWG`R!>fD`6~r$)C}+aobXwLF6{O6&%L<6@ylg*k9KO@b^WDpYc<Zf`nthiFFgez zk>NRPI5xKK?0r6C+&8$a({_4Mv2Ej1ZH~`-*tox0t%!ZIu)igP;qC4(+xBhQ_-J^I zW1eO;HgCY*i?-O`16w2Am^oGsGZTZ)Y&g21!tvlWC(}At@v!Ll$&yP?9ir~N#=ZoG z*XPXdFO~UchbD(^IyU)q=(kJyH+65bvW8W=l&iV(6m*EHT`QtDe6wuZC)@VPwtcc~ z-+t^7LqB5sodLRom+ZX*AKuwqGa*#A?Hkd7<RaVl$+mq|4n8km;m@PD6C%6%|GwxW zU3TRW(fQHwzup`CXPZ6Ur=Pd8#hIr}uiiFY7cgSe%tIFkF0OUu`hy?BR{xd%?0JLa zs`<W`s=uf*7W??1)746S!m9?}Gseg7c(E|^MC`Qpb_Lu|$hE&et@-3ys;8y{VNh_B z;az<=CF@AaUcb8a&er_QdTx^(_bt7XCY*b9Ex7N#kh|eO3qq<Z(aYO^bI{^W$0O=o zTI(;{_I-x_&~ofoRV!zB&N~oM<*7%9SE`^Dr`}tBJT32+69Fx13r%Ot&-kS^`b_H? zUQ6xHVbKR?t9svfv0`fZm#1#eRyQg?`PjiDO?#aA+PU3IK{(0q7BnxXzdOM`@wWSm zTjt%59J%A&W&PsA%0GKqZr(f5Nw)1<pi4j3G}$(0%>H)ab3VUbt4ZsSF9V0Q*5hpB zK+2EmKVKbvzxi~h{LfN`)~ObIyuVG88?h6Hl=mJS7PnwQEA&sj8D3!0o@3KyyBw8m z`&><}A7?E?yMevgYNh-CnLDo^VO^>pIkr~D?O({|#S(tlPR<@Qxq4d9LldaC1M~x| z0SMCwy&BLPupuDU`}9tLXj1jG_J{56`eWv@EsT7ZGRha`$82Eib_#`M^&srucf+~2 zRPbQ05RQWK0^bAiTMvI5ydQ=QL>BB9GEfKu&{iFQ4MiYqCQiXQ_@NBKKNbaWJmx+! zdczI_I%W`Tc^-pyz!2Cv;JXj-?17U%05%8Vu!VrXV*u7@QIKO%&$BUSO!eIhb9|#g z_gWu8*f1FPvm!1p_-{eH8{nUTF!3Syjqrnjdj|fw;4!l^U=KjVu^MsPhJtr|djK7l z83DTre47dXeDwY8dx9p>23`3s<^LHQn190lr8L_YvVAaS|58@lm$KTu{9T(D$=-!* zUC7SGn2k$W>|6emY+H=or~G$qTF9Q|UG7mH4SSR<*(L>zw*1HvkR>2XK$d_k0a*gF z1Y`-w68PsOKyyw5{^9-qxZ7PD|6jcCzXtZ9M>fJa6PS=w3X!^$_()vQsAD(X(H?dB z=3MYC0+;#?FZeEn^<v+(5xD8~jc<PJn=U#fq2LqlDza3q!P-oZK4HB>dugzuM`wFk zsv0{8LZ9yby*hW)bO{da*tugb+G}sAst^Cr9-0pR-MhE<@6b)tF}QD+ULnDnzL=Mx zaF=Uh?y+bv?6B{yqJw=#ig%9XoAB~x$$@|=OCcI*)A^VRWNV;_1oJW4RG53PyXyH} zlgYXijn3OUDLFbtt4m7Zx0M4oDmpUWDK1gh*jGI=DK1LwB>FXJ%zQzc?oYDDq-XKF z#d&;|;4gsPeN^)ON&Nm|>5fV|N6iwFlJ4du+S2{uWKVEMydylooF@=-szOCLOrHtK zNauLNbf!kfYKEq1Q=+1yG;~dGv0K=AB76(e?bO)ECtjNn5vA3*xjRRBdbmfqxwiIl z^Nezf^mKLCy1GWXdU!>+$3!~&HY>n%^K^C5dPX@%dqjD;M7l<MXtiFgqCDMPoV{E; zy*zx?4b>VAB<$f<5XQsVMcWEtw5}1J+SVS?t=-+-w2_{zT-+nwBAh)Vebv5556Lzb zX(}#Tp2o^dw$38nFop*+p0s3U*U?QO$)Y;L!xSQ9ihG3_o>cO=JxPyZxPBsTBEyZ0 zkJcuFD#xX}8D}#Yw_@?o{a&0OI~EV7`B*$vQI-Xv@Gf7v=aBB5TEfDj#-SF{U0yFx zUT>j6vqGNRSlAWZ8x@LjKzDjcILT%>tBP={)?nfC5GEde<qZ7jK&n_celHl=#z=R- zNq0wc9=>8cDA{*@PjhN)T#SyThvxB@ir*=I$w_=H0DT+At8)RbeHw6Hsf?>B*>61I z?4GN7xFgI0-=sUjC_UxjC=D$AfOLP~Y8JnM`}@3*R&HZM<v^+j<VX2Qc^;zRc`n^8 zNBJ9~D9m5-r#zvxPic}aEYiCC9n#l`|v4ZgfS0SM(PnNgb&E?%tuzqm3r^7amQ z!M~WeL`P?q?}qh??*9x%*`&I}(_E32;o@~g!t*PJSG=A`cqDg;9^F3|2;m;K5X+Cb zm5o`sx0M^)N%cU3%0vy87gQ!Z*n8!IclRP?Bv_$~jZ5Y2r&LCQjg*n#63R$$u`&`P zmXUteU<41;9MdUv0mq|E?PFyXdWGG0jB9YAHWS6xw(KpWFO&CJ=r@JHXv9T<KHVos z^^wQnz;O_#LMSZXghOo|$FT=akSZSK+1U!=QJ-v-6$;uB@(+Z6Mdok8{H1&9Y~fdm zy;~rqSJF{LmuOJkqB28#<Bn2FJL8-DN%mt|oh#%u7&?49{EP|9+gqcFZ{_VR$?UBf z0`!UAf-=&3t3CrgY7_d3{RlnECOuU-5YWXCVh~rJl-~vY2=ozPGO9`DH@h2Gv2?#C zY#I?BC&96Nr8@^XEq+fV<>3=Xo9@I7QVl|Rs|+4^TW*IiZ?@%hPvdhIhTm~paHqP7 z26tFSrlrK`#%Lmwl7`3e`-lnu4~B2a@>)z<alrCgx+9(9uYmldCX)CMQ6v|UQ>G0M zUR$J63y|bw+SYh~>s{qUJXc_}_+7>%H%{A{$teReasUrpPSseMew!Rf-<M-FtNm>` zj1}95tnyp{Bqw?-;3h&2j$95>v3_eYEUW=<MP+4T0^%s%KjLxHed)fc9%}mTBUVmd zR`#f@NjPuomrDImibvAFRKIPJKB66>D5OpGN0P^i3P8YPC=WeoG%G5Pw^s8)dAt>s z$>TjE^5AinE)NN(tn#3E$|8>;V)=MMope0aIAHC{NYHRADi61}b*2qF>qLs$g)}2+ z=5+bp#FPirrmRMu=)ni?GjcySypM<D^{3>!=mQv^g?DMct&UN>ZNtKpb{9P#`xL)t zTj~=^WslM)$(qWTB-33~2=Q2OfVz+Uc);ymOr~!e${3SriV>M|x+VqvUh1QlwY(5L zV`<1xapn!vFb24xMbq%s!fz}Mqm872(=AK`_1(*w2BK$}25+%!J6Gaqm<K@JB!V9T zcMwklO*TZ2j84>H44RB<y`u@6jm0Wc+eDu=x-rRIM^S%=hqGaA6;Om&Mu(5%sJ}sX z@ah1O+icnfIxdQc(in@vk7xKTaTb6HaQ#*G@cWSY^@C3(p&eo+8XEA3Q8Qye>ZK43 zY9FUFd~fhz!Rk&X@+kwvS>3T{!SoE(De})Q@bAF<rE>(Rd`R+DQ&ev}es7G6f)J($ zoKy!Yp`XR)190a&<B9sf{LXo){}m4*VQga{$JVMV99N)mDAk!xVqV=6^Qt;{p|OtG zObZRfvCbQrRdnc3Q1(kt7w@;*q2KOW&`)=9q2!Zai$XujPUHpeM^ZY_|1L-e@$D<= zS1Jg2d^lidNPL9+d%)7EAByukhQ=pFXye7{C)^=VI**kzag2+yl7^LiN;5AfJgl;m z@-GzW_e%Lf{IdQK@*d;Q0=mR+ir9b5r4Az=Dq?1Eb>W8KrJ1imzbI9w)kSL(w29iG z(Fv#^-riAZNCEfe$uZua^!AQRjMK$w<KxCga~;qVw2SuxcwDtvdb=tVLJ*7FoXdpa z)0q{8a|2ZFd6-6}$b`4qQrk@NN^OGFFW~*eLfRx3sjcWPcBsW-2wt$C3p7HxT;ftu znG;i!;-fXZZsT*QdC0?6dMm%B<(X8*oJHj<)d}j-Edp<`1-zvtrlut)WBwBpYR34} zXkwC5614G!WsHY4hXnXMAhmmZ9Dwj>bSQn&7>?ssc*nF9##vPUh4e}Ot;BldMvWmJ zG%@UP#Q$uhaWqdO0>xv%z^1!Ol{?38z}nG<2rrFEH9BoXJS&sD9p!ku@7@h%Fq6eo zg^h=T*&G=k4;g+dSs(HGSW;fnJ?hjYAbzAdAc-H6frr!viZTG2fN3;=<`|aXWm$m? zuoi$x;<)%|8itoD2Oh>=Y*Q4%cZ`NrK|4uj$xwQnh|rr4YhNfm)DZG>WT;&6c8YjT z6x);S)L`Qwe(6!d4Ft~zIM3n~)xX}J@K&JYwuHxH`qr{3jT@=0G}cB?n%awLx<(Uj zcv`?&z%_>Z1Zg@frHRd{P}5FjIRX>+v6x$lk4^y|>E2zCNk7o23>|4x&!Rx)G?zi& zP4UeOj?IIZIxyW#^HAg;3diO_%q(n7QPHJ&&QkJ<>1sR7VUp}APH7&b7v>?p2H)bm zh7pE~&u+Z6o6mH1S5Zzjte&ttL=ZE^yKu44JuiyLsZb+`O_L-o%!ctZl`Nn`6+*Ff z4}7EchsM>MUM(iOTab?q^Ey>YwiZ>Gd`PC`KeNEUaBhkGa|-<V+>(U9y}-Y4zK?h^ z@-P`oWr*UYGnPo#67M03H+ko6n=Pb)o}4Hr(kWC=sQtc*FAnWQog0(P=4#+wP*#Sv zdVBrkZ3mCzjFC9TqCIhz;z%AHnXHRTj7h?Z2P7}eue~K6mTrotg_!4A^@&SC7>+>= zC5|ASnH9j}NzuloqLnSZZQ{6<ke~i4>OO_Bu>DLXLNbMY=%n~4O`%|@EKq#={YYl~ zj4YDpTz`5uW3=eJts{(9s-lVzrl=saSB(aahWYg{Azi1&JLx*U4kGog$<JTa9c3+! z(eI?FjFybz><-<)X;x-uc)cbj1mdlzKq)+pEmyGc*O8KgEPNosw`M$=AddDbJwkJO zzkx>`BpblmSQ@voPNz7BszHx~_p~@~LqI!%rDH!*y92b_tCB%$DDw+6q49Pvn&c9a zb)+1KpFRjPfPL>{@;*XQ9DHoS(=E+;QK)*rr!}N44F9RZOo$Rv(fW;tn+!J_j^q(k zAdgA~Iu<KFNm#}!SYY)A9`);ZI?p4WjzR}WWC&uJj}))OO(;(><Iq^)AZQWO1W0?n z!b3QY-;@s0lc0&kP@WEI1D-IsItZr7ml{Rr&j<bX3W-i(_?Wm95Fnl@U+%N;6<Aox zlb7s02BWUZ=*yc4L4Y(DD(QYHKW{R;riizJNJ|Q9#`2EzXFaq(7f}Bk)R;#>+o0@X zUfIT?v3Ysr#By<1Pq4t;HnromMZ7%V*%O|Axw(l_RnFbq+QtMpRQ5~ivycp~v%FEE z&sto*mCGz&!!-UKI+Px2M=9Nd>Wbq}yYwdH_W<eZ2R}Y{lir&0M2&i*5DNSBRM#dj z*_OQCH%k02=|CwyJ!n^l{A|q9XBf6)hCJmI;*2W^=Rg6@Bt=O$d4)Iu#c}Eh1K7IZ zh9;O>K!1wP=99+OG!7k&G?!&QDvhPHoX|v+lYn`0*2SPMS3$kvJw^;e(h^ZGq;j3d z$^`HK_zA`yK9+9*%}jG3lqb?yp2{kfLz1Pjas67>ZrRef-UVhLXj9Boj?9n7`fjYb zqCO(EL&f`u)aO;hAFM(@7H!L=^9iXf<==|7rSzR>QUnG4WrOyR=KZPOQC+2Z{|Z8D zRe#Qx&=hS4y$=)LrFjNvoMDgj(}Qe9{iXcjk1wBRVEW6EFGrTBi==f#HG=YRHCR5E ztQ!i~F(rJdER}V>qF=$>gsT^EOnK3{&<|Ec+^=|^8Riex8w>jIhWQg*O8)R~CFf7D zxL#?fuMG1iSX`Hp`VSYVGmYn*LSSoG`vBJ=&vIFQ>3NCAchb>Rb`)$bt?2v+$F0HY z01cTAvalNzq)Yw8u$1pCY_YK{4@>Kj{;Ix+`v40&Td`hHi+&0ry*>3QOcXV6n;p>% z1Wjt2X?)Cee__9Y>R~U?Y2JatG-f>Yf_~Al_o@YLI$8ttzY0_&i;MKqk1Vc0!5;C` zoFM5Y6${%RZMumN0^LOIXI>qOo9lLpvkSt0%fe=}IJ+QRUly)D^pVt;pyOkuc?&jw z#ZLGnN|b);i#}xOUnz8k_9MEK3W*M-nfH^Z{uZX0!iFLK$1Ln9+~LOiUt!>Z%g(Yu zc51{yZQwUdc5n7OC{B_?7nYXxEUkw6pT5&x7EhM8I*iAj2J$7H;D9=v3HmiiCsd%> zRj!-Je;NF1lD~Cu5&sA9XLF|Z`cH^P4&L+Nn9efOuQR5zD9u{Nrx~MV7>^$sB$^Mk zDX-s6^d5tj5B#_e)E^*v#`d&~Wb{l5=usbmr3YbIA0fRb`UtiKeFQ`OT~c`=z9ij5 z`e>aW@0U<pL%M2yeXg(GrkiLzvJd00**ohd3Tw&ojL&0ITmI(r<~%c{*#VC7lJbr6 zNSbHnWs7uAD^f?OFDh2wxsEAp+sL2QS*9Q0FSY?vn@44u>z%?fO**3%ODpOm^b);$ ziSKRj&c|~V@k<acLx%JepR3kz9m3l%QHhjXhqz8qgANZ@p<ql_R-KSg(Ehh_BYsFH z#1{IwlAocB4BLN088Lq&GU9E2p^W%A(1wju)Yx!>{hH#OC~I59Nf1q3A|{IC#W||S z;Ndcq>|+-JcIpSloA+IQ_4LH~gXcJ8pL=5GX}@;oj&X}VUf03%a<}ZA(Snc;O{P}< zwlyNr$G_QY5BD2s_a0Zcv-RLdFAgo-IQZPWDo<)X2&<2KR*^cjGTVL6!`{s&&NyxI z+%Nu<Ovhz=VxC8NEZyB=TJFp7)1p5`S!eX>&Cx!6)?~;6>pc634SwpsRP)?%(fsBa z4YccOhqV||3H*)1cpK;4oNv|Owa3S*)%$PW?znNme(mj5zS-5=U)|l~i`-h>Zk~eO zETeZaE5C2!kuG*M7CN-Z$vJoK=ilQ(*O}}rZ<h9lu1iLb4Y)6q;f=o-GIc^&yZQ1t z!ty!7?SkcVgynOD<#U8{P2_Wg|G9I7hhwr&t&BXdc6aTa5%aZ<HlANK8|wBVAfU&f zUniAQJ!sH*X`R&f<a31oUFQg&jimhOs2LtR@>J~SuZDbIZD?L}i>WRvU3N#TT=ZEB zr&d2*+mC+91oU9l%JDBJwOe;TtJU`dj=oIp?c$}qx9yK-&1NNzJlSDO$1BT@V$YBd z;f;>_TsbPTp;HU{7n5twy!BnHCpV-02mjC`Sl8gpH`C_z!}yuu?fvMF-1-W0uhh)T z$&TsMpEmkx%5ufZLp{v~jj;ah!6Wql_c6R#{pKB6@Y&X1PWv?M_Fet{-qydLy=Pgz zQn@kSmBZ!ph9f4PJOBBr#?C>Xw0wMb$@1uz>0en5nq0?k0LC<tZ7Dy>2Yy}ttM^W> z)%^Tb+oh9-&H6CSKcn`l54#OL(DeNdT{5(|pPb=kKfQhB$Bl!=yVsujdO+6Ih)u80 z_jGWzT9y5Hctq|w`MhEIyy4bO!WJ}ND+t?QSfp0oGC4ngYOCvQGRAE1x_>tGm&}T( z?*~p=efYq#f!?e8emPJOjx)Ryo!q+C>zF#LmGb!cExK;gKOIx;oXd_enN=(kcke&$ zG6Vas8Q#G3Uv-Uo<{k4tck@iEJJ0sC9`xte^J5pziHYogrtXb)m`SXJbBNT+sm)Ig zt+cV7+HUqYlcRQ(pI&MH{Co0w!)m45M|+NYR*!Qnw`=ZIWzO9T?sun@Q!lNfI(Su> zH_5#dbngWwzrC~99ttXNvZ;RcRn^>H4m_S+y-H$a>YbH-y&tS|c=o+N2El$L=Y%y& zdb?B)copc={^h<ISI1Y+A6G{{Z&*HWSUzu9K5tl+K1|o(XJ6~QrHwk@jeMnDvuxD~ zL6FZIo)#13{$*$RykXKG@_EBu+OBKbHNE?zhU5L#+6@<kChjB`mD6b5nw#&RcVCus zdA9Xeb$gC%(QI-9-`)ucwJfGx({2}prkx0H?xb%fPOz#qux-3Y!r7V+M@QbRdE>Va zw0jeG)zMp3GeiF>l;N3gv>x};Y}1JvtzRxU{b}9Yh7$ukV$C-!%CQ>udy@Kn^smww zUeD&2q8BMnr%wFP#5rZ!yd%nUb`!hJSnRPqd2#ClAIj$q>w<o2JjP<He>>luR{{o% zTrhpx;zOgV%-bypQ#w<A{5Je#l~m=Aw~w9tw8N~*b(Z$tY|?z}E|tmrwmy&Q41c~A z=QT6DU-qWot2_C*{mLdA+&}+h+S92=yWaeI+`{+nkDNT^cH6IdVvT{}^&8?dV(H9f z`SN+g1Ag_Je*oqA7c7LSm4n*U_uIUq&j9nbr(Z2oxH;>_d)>^nzW(*duPQBkWVYlQ zZ2cMD!i9q$XWdCKHE(d*toijyODfD-eQ>w7QF_O5(s{$`E<|tdXS2LdG@1E&WyLwq zn%=eUcmH(bkAJFda(1wb`ijoQ_00dhbBUjzi@ybq9$NE#fW^Uwm@l9`HgrBQrd`;2 zF8%I{-?Y9-zu(7iTIZzSnfOg-572LS?5m`GIrQ5HziH2DvJ(5jfkSJeME@_)r?pY~ zZ3-OP`)gZC5Ox5M&Mlzd-{Cjy2bO-*842`z7yN0TvGn^9=&IrP`5>T+-$WNtU}qeE zs+b6R!b4FJ&z4|kCo?>A_)!|^`9a|4F8>Hf`)dvZ()#Z)KrD+1Cjq?yv7E-}IpH_A z$EUplJYFP+?I#8hjsOqa<5+l#pJ;Kra&GrdX+UxWM>u-6D+N8oMsm>C1>6lNh2yr( zv@XiyF$|Zl5cKdSxzf=s!fQY&oT+HHME1la7sGH$$OYb%2l`ro)}ox$_|5HExjcza zLwO=^7=6OycAm!ZkXHqKaQjJauSsRYkPkPJ50o7}rO(5F4{jsK_p_JA2e-pBjwkVv z3)<Wkj@#4`A4r;z14j>_p3JXT09FJ18n6-IIzZY}{|zA2wy++M%E3lJDm$A2I{=~{ z>AM1M1q=a%`qrZ<6Lta)0o(@|3rOWF0q`JT65vU|v4B)w^ngDBLRAYV04X1-oN;?H zzIIQ18<w-(z@u_T^a+179Jj^dWt;FRT`;3zPaELT5Ad!>k$^3mpsxwo8PEaH53s)Y z?g)sq>6?o0%>diu-Bo;d1H@DUJBOUYQ~XrUx!n`D*P{B5zk+g}4LmcvqfKDte7P9T z4}RSKi02FOO?VUsJyU^4FcXl{GYzo3_--e@OYw8tAKDMW+akmGCy8|47sF=&Qn-F_ z+`fj}^HBVj@aqmoPcJbX+CjZ7-opT?zR^3?FXXje4LAs}E+FXXNq+QB^u6G?eG8Wh z(Km%3$&{W5;L&>|AeBp$5k@x|P)ZlK8{y%K%XJ>`5Da^j1wEyAfk8NK1Hx@XC|*N( zv_gG@m*5K67|>I!e}VYTZ5X(%1cftfFPn?;wFIQ_$ag)-8(SurTv`EAc|ut!;Gf$L z(4LPs^Q8^qrSwB@uzYPR@<HW^+XEO6=P!n9FNW(NhC85;_V@Gs{=~lrXl;i-JuA>o zlAON+q;_W|Ak~94fb{{_0(Jr12sj21;q>W%I{>EuHb*?40Pe#39>Cpz`$hk=fP3(M z5pXZybwKPH)ZYX=4EO+$=vsjndba~S3Rn&B7+^iXQ-BQse*yFXJP+6j@CslE;61=_ z!25tB03QI31pEVV9N?dTGXS3eegyaeFdOg{;3`1U6I%flNC$WnNFR{Q==~=^OTaUL z6z^rg@_4@vSOE}m3OLM2k2shdKwGGWcZ3zH1KI=D1grsA3(yI$J|N1N&;YO<ApG<J zfQ<or05${c1&BEGVSqOPHGsDOrSi}Bq4IsO#mh12FKP#g&x(M=Cxr_HZ+!nG-@i%W z8p5AsN>3foC;bhXvwIbq0HRG3ngjX+wg3zObOsCt^aRubwgwyp*amPSU|T>vU^~D$ zfPR4U00RI&2J8q(<)t&=HbC&D-wlX8k^19+I5S9p9uWHm^;ZEy0q+711T+D!u%*yj z18M*(0Y(8*`4|f51{ezno`iTn+IyG^NaaEYNaX@$LO%ge5BNUdB*3YFQvl}zW&$n{ z-<Jc<#QPV3*e9w-*%f91k~~Qt@x5Qh^%3k|Sw2vDMnl$@QFtCx0qO>u?>5jyD8RQO zVJGQ{HWA7vybt1r!2LSn9gV#s8rD<zc4{#Co`C!CzAp-NI-uQa4|&497zif%0|JNE z5VsEiU!dO%6*d6=`+%Dbzr4<%kA}=1bjOFoHWoP7Fzz}4c&aVhdxRZL4L=li05VyJ z#=0_;{AGXa{X&C%pa;HtlRiT|2c9$H&BC`V{LTYUXAs^VZV=)f1Vzv+2=%Zv!fVhU zKs@%*@JHI_Ag&Ea=RV+3C!!ztUN8iGMff|TQ28KUH5ARh2-vHG?|@#A323;1mLFv1 zhp=kUAB_%%ADkudY>~Fgppyf7`yfwe$aN6hDbPBGIA<cR45TX_aXjt~-Gg*wLKaT& zvq#!?&4RoU*JI#iA)U71{S@*e3-nh*=CR0+6?ngeH0L8+D0ngTL;itwIMSxacQwA_ z;2_}ucsPK@bp>cOL;mFcrVuWhn+nO`F$;JOh^HCo{%^XULa;Cu&ithmET1U_FSvL( z`OXTIIg}$e)UPclSD7f6QK(lBP^OweUV(72a2aqmT9j3k)77D9>rmgepnm02{XzM# zMVZb(nLCEC*HC^&qdesUKNID|66O3b!rVf6aRU8oC|9xgb{S>X9=OSH$55txP!CP1 zyn<#F)m_wueW>TVfae3cUZ|J*fE$i_<&65;9W?t<y+Pfw{1$ZK9}nCpyq`gvkqj4) zI=$c+c!t{rcM8t*1GF=Mw#U&n!MVW&!VQ8e?H-H&jdxfqL%#jD-eVCp7wz!RXcy73 z*Z_EWI2_tQbv*JP?|E>}_#FTj8jW`C7nDc*J`8sm&Ia$M^HHu6KnJwm<xYz&kgL6= zsgMVE*veFJur?J2!DYh<<xGVrxD{}DaLzWSLJv4S+zL3;@}`0#Tp(OH+<3TCa6$#( z!Ue*`!i|T^g3E<F3@1Ob1Y`-w5|AYzOF))@EP;|FKs|*a|LpnybZ~uKB2MEHuK*Cd z1s|0n9Q}68xR)2AV@yS8B?QGqrX-~%#pu*dy&9`SaM(ve+}OCpq3RAv3CTDzC<Swc zjw+32Bo5fu=~Ch%(sa?OSO;-b#YV^DfO$h-nxAx3X?5{fkD)MhsBG~=!8lGTPMfd> zPFP%GRMMza%o97RI>AIeO3TmiCp!M^yOfIa?>vuRI#bKbgy*82n3*cT^^GtFdSxPD zx`oclDUiJ;DMb?%9ivT)r}HFyRf3w<aSCm5>1+lb&aRYmi1-;%(%C~q1GekztPaC- zT&{_H)dN3No@&8$tbuV9=Sx$BF?=IiQ(7Nf0k;-oNgI`wQ66dTZX=^nSs?pR$^Lw3 zt5VOI@vDnCq;qeGz9FyZQnRNS{+q)!gzE%ek8xhf__#oZgh;lKPcc!f5a<lH!ZVX3 zd*-t&Ts`p5&;8+aczTN4KVxo8xWe#j7SQFk*+uD6x^Ic;CRyEroHi&WS*eW5LQTxR z`Me<uvL|&09;GQnQ8Z25UX-8Bb3v4o8o2b6;58Ju7mTmWA~GVoccMolb?Hng$wu1h zHI>bBOg>~MUX{I*efR)OA!Gg$dAS8)OFk=#+uM?zr~?bj&UT<AfQFfh(<A#@PrSEQ zRbV(geUzTZz?*~om2Elqf8zAK`p%Z$D8^>)o-p#e@~JHrqwwGGMBXZUkID{xP|o3l z;C|lg?eqIvx`%|OTAr+7yRp^po68NIewNS8s+AKaPXGMp^xuDVb4d(8eRWH-tQD2= z`_$glE@t_YpZdGaNP*lLy`}?#JsMV@)-~^Nm!O(q-SU3uUwdKYNs0cyZgm{Jt5?@p z%(r8%My+i8T=Da%rhO;c)|{)WxMWpt|C})kyZ5=d*>ivJ(2sw0#F)Gm=4fE!`s%{4 zO)dR)^qSEwTjRg%<592M<vp6Vcj)2W<1?N$iM)#Wc!t-aXT@t>RZ-?UD*F!Fx9m`_ zuAVo?JFV@uZ*0D7%PHG(>XfoAr)<laE8B7^|2bREMN!l~j~Jg><$7#n*rGYr+&7JR zoS)useq^6P4?ow;Z15zb>g*)hmh<0b%PHGv#&o$ezw4FnY9BeW@}nDDU)Q<z!p8>d zOIQz5E8qK~$yY0$JYIKWR#Mt8k8^{X)~wlW)A!RA*W2uWG$PhyI`%bST}!R(vd$@M zL(`+ZujfBcyK%n8;C9c)E^Qs$<5$<7mnQ{vozWiqTo~Smj*7WQYosa1-D<u+VfZID z-M5Zk-#u{0o&9H99lvh25B<&nhBxfnk$1M`$u^o-KVC6JxU&>%$tGA+S1UiNRo$Xf z>q8!ux^1u+d8lRj_}+((4c5)*)#-z<>aDgN#(J_n!}~+Ee`i=PZ~Hc<HQx`c)owzE z>Mf7E<-NaW`MC7m-Vp=B1>ue>(Mw(#*)OWw-p^$lP1#0s-Tt2!W{;nmP;>AquREJ! z_CM~rz5Cgqey_a`biRo_%-F}ERvs7D{d%R!u1<pvMQ=TtG4jOR%~e8#31eP*MSXWW zV30r7`BpK!wD-e?T`~Q&!_74VYd`#Tsjt_lsn&|w`qPp5e~d8i?{XUZ0NJ=F<Ht=- zPiwffzY@HoX0<1o4#OKf85z34tKr56jhaWtPS;>fn$eSOH1{-_lz3purL9#We_gX` z9c(82C_nZmq=Z$!IwCA>O{2h}@iXoX*H>K{xNiT%4_&U?KCSy}PuLtYyc!+bjQgSG z4^6EGtnpg(Uep&&?(}|~^v$6er>7<d-l%+Y7}o0jiQemV2VQD6?i|st-O+eq!+NWE z%d*}-zCHhn+HBo|%|m8k4^9%pvwkt@Mm1NRYrlsHUk$(7(xvUIUwjgLM|E2j6g1$2 zYgSg+@51mDPc6qCpB}g9evRWf?UM&OSaiNJuU$x-*_=k-*`y^b)?$vth2pKWb?VHA z7pJx99Wh|sw1>&r?rpDJogLTZ{D$!Mo3DM|WIOgCdl24dU*5YIF?sL7+n1HS^kdI7 zE59^#=AMjIXYB{AT{J0S=oy?-%;LQjus<cfeQLtffR5`UdtOldw)pVx6T<GOKN$6- zM$VpfD5u{ryxD7?ZmT}|&x~8np^;rWxV?~VG-Vr2*+#S75$vxHp!)Wp%Yzf&2DP?c z?)A+Q*+w&XuONIt`}kxV&3&?sCY6H)&CBWUPOwkB?f&AHdG{kn?s#`uzxc57&t8_B z_fB;BXbjdbu;)&#v{<<L`Q-Z}=Tvz0^)|OU`+mr))n<=nd;fE*zTMo~zqfJ?_Sj+X zr&?)u@6*u^y{{$2WqjPO>cUPVb61$G|KMYbGrK#~*)nC`uou|>&G4c|Hha?CY24l> zt}ENe)x45EBJ!zI@9@ssqOUBq4r-gZ8uuVFJe!Cy%F{>tU6E}x&ko$|_4)fa0}^|4 z)yh9Ty|(Hr)Sk9s+}zgn!gma48mZi{+U~^WTDRj{FaPm2`n&TPUb6L=b?GsaTW{O* zYRRYL+t%{9dg%|h+Ov-*hO2I8_X>K6H7164esQa=3sVmy^b!J_4tnrquft>Azj=J| zNwb%M|5G-aIjleAo;COv>k(U=znEI?!sU-UI!=GD-oZW&NA9~kZl1ldUf0H0i^7;t zt=zil^LzEvZw~0RsnS=?KN!{P=*BMP-Mf5#?(4-pGX_REpnv7Z@Y>9@{cP#xM)6ns z%=O!U>Wf!9BbqmEx#L<)#|}>)<<?Gph5hvmuby@1>MwJiteNuH^4a@ZEE+dXbMev* zm(1lypN0B-{pdtK_P;Z{g>$0T_RsKdv21nQ=55MH`BwP!Xn+47-5t*7o~*rcZY1ap zXXAiNzrEMUZtKlvUrzT6bW826JU;w<-2*GVFRuRb{K0xL9UH?g1M5<@aP-g`CD|pY z@cR)QEpG9(S>rY@2&V@M;p-`k9iSABueoA<1^&ftB&q<9*7B+X)&i_1hV#R3zHW(q zy!cJw%mA@O!yX6VS>YGLu=wf#68*Y>w0`OcNb#fSi0gyMBm5>h=72tM^fUq<#qR`I z9uQ*CgLh^-WDn?qcTAaJzW{7c5Ky)qz}h9|kN(qa2mUAR2L3nO49NBYCEEx5C))%3 zPul{}e)0c}_5lB_wg5%!0A@i~#lO1^z`N}K_o|4!`*3==Y&iLmB_K;cmVhh)Spu>I zWC{HLlmPWc2K>wW|FOS5MVFR5C_y(UDPmYmO7tLYLX?NwAZ-Nhb!OZD<-Pxws`{8f z3GJcj;NQJ_d;bpIG#!KccIg!otm%tA3srI7?d6)VPxkNCxud2_aA?QQ9eW{9%!TeM zI!MJ^yu&n;HcR6HDfS?Uun`j~m)U-2y@ocfGpTDLqGPoq<C0Qnf3&YE4R{J6CSE&~ z>>T)A?L15cgYOC2RM^APciP6yzdK-FiHB!<)Hw-;Lvv0ySiDtBvmIc2&n4Rd;v+=C ziI5-7eQ`e?H|^Dy?pq60;v=5Ea8y1Cvc2al&P<j}c)`v?y5EfMOQJiC3-A4r_Me*x zN~FIc(!%d4qdQU+LR*{<RtK^l!0r?C3lIc<xGPvgrTY&{-it1<G||5EUW^XyMfZSA zTI232qALi`kT7ZA`4)NK`HRCH<$dS-F<E+{m4JEc7D@Z_W5e72m0sD-+WS@$*Ax05 z>)d)UqT#}yCMo_}*>x(;m16tYokJ_EAG~tR{?89(nJsYsHL${zja@cpnRIrVwc=BK zjf<FwCA$f=GHk}a{SF=W9jkSHUB@2#KYP?_U7mie{`0X{Ry18ab>eYM;Knj~jphW; zvGUSo+vOa;>HqcVsOr<hKJDzd`{K#?lg{-Vf5jwj2Ez;b{Yi)R=hsv_^0mI-XXn~^ zoEd#Lb3*X>QR#a_EN6Uw<Yz%x$ncK#Hhp+++VY_;$H%xXpKkf-AD%z8t-SNTZ&Tmj zj~<U0G!*pMeyr?GU%Zz0oy+^qZ$6Xvo#)E?&i}!E=Z-j|L#_PqdB;_szW4t3_g~aJ zzaz!^jGO<c{`ZGH+xz&laUHB1n01!-oy+^q<-398edqGN^Zs`uo8&&4(DYE7*wiCV zsXI=`%!%_`GC%RJ`4`shw#50DY@dDBRZsO_c^_OlW4UU<L)8}7!R0=ES+CRQYgT!$ zYIeDg@+{8Ta;J9J#<Ekp?E~tsn9?FF?vs|z7b_oWyCKI)dF{nl^1gF<-}(H=MX?8` zWGxR0#Xb~2Dlf@vR1JkTp*o)}$Co(Yn6>G`i*CQ}tgo!>?y)ZB#<z9m!@ii|b^ha{ zCU&Z;pRaDU?t`^8CI#hAy)fbXh~vF(A6~V%@q23@;J87C7keUOmax{<spU7(nHAGx z9&Nl3eq?OJ^U;nyKHm@&@H@uv5p4W1WaVHxMa<r7@i`S@4t4FZ=vGa6-#O)nyzhM3 z#;Ui%t?WlMnK;op8XJ)k+ml>A*t0Rwe16l$$LtepFZU^L?>wU6^%cW<Z{Pgo=9a@6 zw%LQbo*7<kWzU|!T{za{;_nMn-Df@?l5@DJ!rf)sw_CD%^&T^14d$=pedqGNb9vwS z!4*ltqrPAM-0j)3efP#*Uwgh`o9Xpy$@|W4ZMxUwmv38F`$^t+-ig{>dEdEwHxQMB zfB(Movfh3Ce{FyIBLRJKIKCFh*Bxm;H?7Cf9&vgSu}_;Ij(5=0KJR2eT9?GqBij!i zj^8iD^O$H2kHXVFatsUD(-L?@4_lns{&EaK^%d~$2WSt7={tR0!0v#~fI)!RUQfrh z>v5zs9RaUDCGQjek3C~v-Y3rQ6!XHI$!IOsu=`*y|6rU!jmqHVfpgDbFtGvt8CZLc zN1@&@1m}ta_YC}VasGKGDnM=zz}7fR4~5?r6~_kO9zbViM!-G;-)6!;A7c{xo}fvz zK{p2#w>y0c!@2(m>lB5v_CVhc_UDyxUV1nTEN-E)Ib2l;p>W9qa6f`S_yb?3+Mu4I zl3BtoPzT)5NSy5t+%2eVd7!r%-!B0F0pK<8VA>nJBmMxuX28t{|MsAD3TaA4xIDzQ ztQYQR03U(i;TX~-z`vw(<mG+h(1Ryn69YE~YaHPppzP3Zz)Zkha8WUkFW@b>O#IGR z4w;@r`GCv9`)c|QXF3$L;Fp6-Ronmr;ReA4z&{qSAK+-fOt>t#SiG+W+y^%rzfS=k z0JJ{^2pY`*^YQKj*aOZl7Q6t;`@|tb>>)RHR{Xo{6VJ!qa0gqQ>kcPBvIJxa$P$nx zAWJ}&fGh!70<r}DCnP{U&42y;{}T8Arwkpb!EyRp*#@8&?I-_xHUOPO8vxvq$({!I zPx+>XD_03){blU@e+{<3V-I{>Vw^5c8y`0|S`(R+kbo1}HSuwY7)q95Uwdm+4@OH6 zHZ>x9fYz$P;``TFQ>T6H5-%4-Uc{~X_=b7E$`}hWe7(p^T4G7ukZnO@;41`;CMGE* zL5uMd?b#<foQ4vy1*j}Vz5$FqY(IWg*b@*Q(F;)&(j$IbiL!GO86`Y=Ea0vpO`|1# zlQrNuWhkaF-fGieNOz_Yx?3PSeKEQt-;wS$BXoZQznO+~M}c7wCVK^tH})|381m~Q z4lNDkuoe8yF`%oBOo)od<nFuBT~GquECag9Llcs9Dep!%&j{T_N6aZ1&>i(J@Ec&p z#bqc5qPxP7uE_Aa$idc})5SC#tD`P}+aTXukuKeZA<2R2z|`7Q2U4O_>7ouiWT!%R zb8vjJEwO{+cO}fLf^&S}C|okdV^Tnh)g8Jw;ujW=^;_#Y)fs1yp!h=+h4CAfl?z7F zvK?u;WssIpVq%D==_RCv<CmP45j-stse-grTu$v;+0#Pt7f;J$q*1>Ap`mPtlmB$2 zY=_gZYSO64wl70ft3vE->YQ8E`@M}H&#Yl>f&EI%uIIf<>BnX_Syg5BhL=qz9;g(n zAEt>3DSxt?zjFDA!CSARukkCxyDWTs^24u%_9vYtZJ(p}J$mv$>x}%-mK~R0jy&b? z#eC?limvFNDEDs5x!Te7xkX+`)|LI8-|JT1KX*o@#)q05ckTE~)#UroX9Cs*)XFEv z=4I$7)mt)D{k&5@?}Y>V&(J-t*EJ-^weL&a<c6o4Vh)<&Is8%1J3r>`-Ep2f=IpE1 zqH@)1qt<=->gR6#N9kH`Gp~$AL4StleQ)D8i(2Xe5B%O?V0pWbJ@19qsx`z)w!@L_ zaE4pv%62&apdC&h3@p^jpEDYm-mZWC&-5=Ad{TSiFZ1hHn=^6QY5!+~o9`J@ZT94r zvK@|Wha=nJ$aXlg9gb{=vt{F>;WdtVn$_66p(FNwvHK97>&DEna+sMId}hPZ4Hb?D zuQ{34xr&EH$4{1Adg>5$?=|)<FuXozet)UVKRYxzbkniPr$fJ8(!Z&Do0T=J+NE60 zou|M75`tYT(nrHL`&5<faAZ3i`TmE~30c=aN$u3gCvSCr4eZ-G>reIL`Euuw(B_M$ zHXJqWo9VvaY@7Fdbb9{6oUJPs9XkH?j%R%Z;UUAjcd5Gb^q?UNN3>hwbh)<g#e^ZQ zu`l{QTW{{UIloJ+$0F3X_CzoJ<++tE7pL57uzz90pEB0hPx<P}g{CPZ<Gi=pTv+NJ za}W2yGQ5ZpN9#U$ez9`+l(rkb|56uq{!`fwhvet*eq_C~*Dtx0zuIzRMJL^j?bj^Z zH}3ap=jLI$uOFw@!I;~%1L0k-_|$CKMRn@%pVqI-jIxi4Xwv&w6|0eoT}da-t{DA6 zx*)7$?VrsYuL}X+SB?55W52Czha=nJ$aXlP){S=Gh(Uh?6Z2|i%AMvbwyWp%knM1K zocY?h-AZg9?L=~s?Qmo}94ZI@emk81i}p2snEvK#_kz#>zsWv^mL=Wb=<&reGA(~% z=)>+^@B_pWmw>LBUJZyYRl&Uve9c_IDRi6;K`dvo2g58q{XiAh)B1X6F`OE|`T95Z z`{OsouK>g{I(yUxcziwEI9^=?Jib0{9Iu`M9$#-Zjt5z=bRm9$uOA!7t8akE*Mp7Y zH8jBE>$}GBATJg#Oee(kS3#h4T#^g^ga9~t(8bc50%D1S*)73bg5?MDO;5H_FoDox z%9FzCY5kYJKLRAWd@a;CUAhm0=r#c)J1Nj$bg}%w=r#u=x)|m%y7b)^jLG+8V2u|> zWb!>3u-SmU&FVq0<v?Mq+z*8XV~23q+`PagEP?o~hrbQp55u-6t3PZ<U|bgv2>T9< z`2w{F59i<~2!8O7#ah~U6yA*9s1Im_2Eo?oF=z)25rkd%?gKnpm&?bv(l#7+K=5}& zB{_qN5sSi~9VOd8$@WjsXU9>t;0D1Z!)3rNfLj5#1@0DHKAe0{26W90h2V1<btn#X z2rwV8@-Wm}{9Zi=G6M9%dm!90{2mXu8g4t>VZ0v(ya0C%zaPMDN0=9QH~krP6z(zJ zorZ%3Tz5D%{B(fMfEj>3fZgGu;QrnBWX!~AyxZaO;4JM-1xGkPxIu8E;TFK<!X1XY z1t(N873|@%LQI5QIA{D0gp(gx0<r{T3CI$7y9B7UjQHoz|EK-`$=a0ExWu8%1OVsQ z`=}J*u>Te+3FU?87*i2i2|;m@DM_hGF*>zVug2<-WL;cB+*pKDcSuS|j*E{@!G2dq zl}0l%Qlr)BQsN@gbkV6eyWLS08y%k<onq)q=jJ=Aw7Phl4NqZcKRj#{bkQ2@gVzp? zPKZv_ahz0L6n2(6s>0$Dqmo9^+4zpCPDyErFj|O9!ro`1<KMnZsW^7n*T2RV<GMa! zy+eCxFhkGJ^KXnp`uh|+(Esn+01OfLv1ii&9*?wdna24#NA#_BiZ%e;1V9&^lBkW> z;6{dMO>$CvT;v#U?<5FIt4m68YV4Dih!gV@qodT3vDy@0qDOZHL{+Epzb-Z|mG8x; zeaM_{;a+@e;H4lwoEpIP>2@o?v4pG!sPHOWtXtY1Z*?F(BTxCBeTp+gA;rn>1t9t% zie!QIB1`FBKncZTnC?Fsp`Y?j>89kWo2WG!>_hi(qlA}~Zcevox*sAw!*p|;e=glb zUrKj`nBQ}#g5ohu_Y>g7zf-zLQNlI4qDe0??VNVev_CGEc8>GUrJd+YX>Tu7R8g8A zTho8s6M;fi2`~!qFW~8T+R3^lDG^34i7|0Q(^8_zd}E}KSfVLkXV_7GB_u^f^YV;W zF|0i+yNRGTlhNw0p#AGED0gTL(_&)K=-{Ef_+1pJ5xb~v#R;akiJ~g-W>=-JF>xuW z)Vidgt>W~1fSxbIwP$xzV15b@xJsjT2aKjs>%(!wfLod2wg)fmRmt#w!g%?^AdaF2 zJj73T@bf#v%N8<GLx`WBArnD}9-RzZpXewi2F5$p-+3$!S70`TUwc(7FmqV=j*3c{ zZLE#(jhVDbdKyL~6)hlZHq-c>A=MCOI-}E^$*mfs@jZL5XOK=3Jnr8>gDfSK(lr`k z%^B`hhRbD_q8(MtIEie3x`W?yjJL{+|Ke%26M|G^XF_+wj>V*=jYSObf>f*VPUirP z6a7qtVAv4_t0epv_%@!tRSPU=qbA_p5Jznx2onj%tV03LUZ<isJ%IBb;VAVRiMAu& zyTj>4KPld-BA=u2EuFrZrkmPW7uJ<Y@H32i4)EURc$VZ}Lkxcl{$F^o`2H|Au~AZW zpmG{s89#*hq)4>zRBoiZPKGf#TQk`O7L?lvR&EXB^Fd>>jObdX51@49As#RIEjRF^ z2FDHVQ_;_`ZI{w%NOJ*jGbjyK={+g^et4e)HyM7)^qyef)QsW^h2KoLDTHg5-m@gS zk_@i_cPim3(>vIhQrfu9O!4%S9?D|r=Vi1T($CAN8I!dn(|Am*W-^}C<=ntkW#|>s zX}qo`GFei+S<GnF!Mm@jEvp}K1$CF~Y(8P%8;P<njEnfb1)gIO&otuOG+k|@v|v1t zylO*7qBshYEzfk|%z&eJ`c1Y*&iHQRVR|!0h*jC+Bb9Y3uQTCh!BIJ*vPtEI^7czO zDwmX}l-}8Jl$Rd>5?>@!$}cK+bKoeSsE$y*qP!vf9FBOX4GmH7HncYUsJxM^LKJVd zYr*IbshtGDXv6I7t<l7{^7i(L*Cs?nX*E$XF7EEGF0EW5VzjQUonu^F+}$Fgyxdy5 zdc?HybajSuu7UVs5f`;@A&R2yTMfZR^%DNJHE7KvIVEXmiZ(%$s7;6_8LC*j!})x( zU7~(PCsD`vu)Gz75y(^0G2wuuWAa%3>WwDFM^vX$|G}7^;o%GQjOlLDA$>~KGq)H{ zp`NM3cr&hNzG1j!(=(Y2w@}XvWA9wg@HmX?nFxkgsAnEPE+y$1^F5TlqI$-Gh4+V^ zu`jcpdBwsM>Y3JzZrSwASQeJ+8J@0^^-M6sEz~oHX{B~5AC0YFdDKhP1sjV9)Q2Ed zWxV^q%@_Toc2L6ahi?n$n|%jX-zEP{_=|dD9r+Eydj_1SH`YmXsO_M5bMb8<(J@UI z4E4r`@RQnH!aD%Gk2szw`BNK5{^|+^dgFds^u{G7i$cA@%VANyL3DMXE9#BDlnzI{ zC&P()gZX*kJswWf8+}V^-zC``25uIm!74q7(mxvS2jD)2pE5nDKyS>1-#)lSglm=_ zR1#fDh7J|ch7+zby`7{t$Ue}R-mqb1tWa<8GFPZKDD63*m(6%`C{=G%WVE>6m}o?A z*s<@0dP9nf_*Ns1WpGP~Z_{*#()7kBz>)L@{VuECpt8FZZW-KiI4Wl)=?zNnr{thF zJ_97aNT!ruRPIP`P(D$ar+PwpV@z+5UI-|wUeLOFXtgnsZZ0lf?h(=2R;}H%cwD_& zdqjG+j*g5(qx&{JB<T%muZ-!9j5??zHQ!xtkUhLVt1E&q40%g>WTH4uTSkKmJmomR z7mPiS=5UtZu!pB{IUj|kXybILe4OI#P4>Xhu4(bnnix!WFb(E|$q8@o#I*Q$3{y3_ zW)w{A)KD6>HXhi@!)0)@xI`UfLH(ghNGDbeppa8Fq&KNQNPQR{w>iUkWq{)%;!vN7 z<CJ4KuMKcoi8wT-;W)~Ielhi(OSXyT<9o>_pLh#V6!J#?wvY|+Bl#0Q<WKz?;z9B! z9!SPhL>b$%ey@P}BmR(#8$!nMCCOOQ(`6I0G)OK%(xuCq^T1{82%e<;FqAdNDPO9r zIgavg%a?eN<XD<~sZ6IZ`4yIFU$JkLNdrGTdr<~z0p<Xf2i@^p-ZZ~g^o$8{@J(fs z?9&wj4D;C$A%$g<hYdvfsEjIveT>#PMN>g73>B2Zmx7tFR#;xp?^e+Gc_a@{<&}qT z%F1|Oyno5UFH}%JoySSlfa7<;_Z;>;9pC*`RF-*oCq8avJighFCET6`xD8lbp?F`; zXf09Dy_5BM`izWu{Z%x!|AgUYqrcZt6@qt&O^jQC5*@($)+8t1*N;ooj7UqOc}<Et z0QfF@sXz6Ky?4Spms0{OJ86_DLSkA%YP>czmZz0eO&kjo#Ktq!Pe)Ijg{N%1!}#fp zddBG=W$zJ!6?Uf#g4}6tfyVVbo`z`0te9UwK^}2G8Y{802gLcmAn>-5(VEWW!Ujng z0VI!MtsR>XAWn!r^{<CA9#;#ag}RKFN{ExEwSvM!m@6DbFP!=Yl~LC>R278J(bm{l zjVNe)zQDWG2O^v^5{`BHK&ek4;ZPf;rpVuX{OZEb8e=K2&*Gr=#}B_LZ6S)na!dLw z5dJg<WMdwbMe^%WfXmAp>7;(}qjF(vY((F~3%(m4lSuPkt1+gb=Tk6;VWBVs&;<p^ zZy%Kjy^(q+HFUg<qVp7t)jb~Gm*oZ3y@`yT3*s<AIq_9df2DYR<6%B!^^4OjtY1{0 zr0<1w!gzh6x~O6CjbL?=>K6}N$Dl60DHo~_y?{G_h0QEdpLlp)pQs*{RG&H`{23PB zgvH$-@1xm!I15u!eX8?4$-5t`Pa`NpP@ky&U}!JQVBve?TOEugO<6sI_=Hu=-xX;h zJW0lp&{@_(Jxr=J#~6vesY>`p^^4?;k|^dA#v6=gh{6ORsU8*2JCc1#^^W8>9O<pa z((*myb2#$;5~JC!6g|W5x|Qn4m#BA=?k4_<*Add)RDKNWh#Gzzx3G>-J6KvBp?u`u z-z*E%7m((~7oh(}kJR5n7hQOPzQZ+^&XW6EbWgJ3YyneQ#pcDS96bXqNrxNusW^S= zF9oS`QBS*r4>s=z2B=+nTfaz>Cxsz-T7qwiOVZU87o{^s?DOccmPC(XI_pD-4@yd> z)D(DozmZg_gJZY=LTRlFddAYq<KSt{LOQ*`3mf~sV_GSUlvawXcv{Db{f%YR$-ra5 z0i=NAA%Opar&XFcdg}<GaFXe*sI1-dWa*dIpm^Vz$7#XZrfa+`6q$fRHnF-yeG&=x zZFx_6!xG^rK55O1^nxw?C=STwjX0<*Nb=cL8;E!e<x>T;On+c{L6Xl~XVwbk^Hx+Q zpGrpL!{g-gIrtX&NVsK{55-qpJ`_hu^7%rnD|r~#6_-yvtm)Wr`S39qjwBnA7Ojbm z)+W;`V9}+}W*i4Yt2fq9eQ5%d266u~0Vd1p;HUT+E9cLG=^2{aH(X<szLiyWL|>9! z1+i=qO=)dyr6?<hx^K#AKV)3FG+D8MXhG}ouL!H`6u=(!Nxoxct7zTiJaT#Q^Ro)q zqNQ(Tl^4-3E-!v27GHl}E6S?}Hm}oT!2xTVt{|*KY4Uob!Tnc6_D)2Y%+45*8RwJB zjGxn0C^P9>S!G7_i_46ky~SlFm9Y(cQAHqCO>H^#WgSsI9ZQp0k*x`(%WLA_t&re{ z%2@F_NqyDkj7Jr|bA7;hwt^nR8WzezJkqw@1A5ttrYJ30f4~`jv2c9u(+c&ua6bg~ z4W#~o8u7mQ@OhI87?aQz528(UNM}%=$gp0MPLO15-+)sxl<|+qAHULMT=rV%?OlS9 z%TB_0Jti4<DJEmiGnere$nhA;3av{S%6I|%4#TnaL(9J>W1=msb&-q>+X9mDH)7q- zX!xd#uR_LyN|W(BRofE9{7zJeODfOB>p#glx|pmv?_AanC__F-BhBR+${Je+1TQ!? z=l(ZkO|+%?VUo3B8$z-kDav{@<Vuev2duqqhWs8~nylZU&5$-hsUwn-;t>bQt10Lg z*U3CSUavDD12^!+)@v-@t)EX}q<$a8Bek29<{@IgcLDl4^iUn9hlc+x;iu<mmil#X z?aUf(@gh2uwicjMJZ+pV&F2<f_oj92$t=#QENt=h3+n4;vhS5xJ2)OP=>hs|y+Vnl z7PEJg4TY0rLwp*OO>SdKNm1F918#Ov*}SzQYfLuQMr6b38kfy-1KAYc6F{=bF_29b zXvc$hwg=!}kPU^CWJ7!!$|g~)E7?uBY%Doob)_-N*cL9Ezo{L)y`!Ra+Q?X5j*9C@ zT3_JtP#r0GPs%pN3+*#1>5ST<`vHsVIVr7~P2WuGPbh!8N=s|ml~h4usm>VdbMkn2 zTB(0nd>xVM&fa%SYjJ&(BDI0d-c0K)r1d~)X?-V6QIK4t`hxP7$HmiYY~7U7d*~h0 zTfEJe))|^L=jlcBQSg|c%pc?FjY`t6y-v}EM_cnvx>W9x5yIFR(mbpgT3LREwA2@) zJzXW2MIo>*=t*-GM7#KT(h|?7M4pue9K#+Iw9k}*XPQea&NIzl@vw#aF3ZX%(JP71 z?JYQihO#vSpBFfve7=Eg8Ptr5i;s%brbJ=&gx7gKw!+*U=DekTFb`)28TqP|pra_Z z?~w4QEtK#ixlclS_O|p$?HwO~@px%1*B1OxT*cRNNry`Lk<;?cbT&qqYh_3$9}g8x zClANd*{GCsN_bK_X^%!()5*t7Mbk-f8B6Cdv2BQ@&J!L}4zO~Au?pJ!Jf6<K-R5IG znzaeW`b0bq(^Aq`v@I{*-;vsKXBW=AVH!@LeS1(^8s4QXr$pePw)`0A7VrP?c*>p* zqG3$`<{L>z9&jI*mX3F9r=|S3V<a6sp0cNdXc(qL>T@4x^=5vY1a5w5>3GNd&}gHg zaLRb9CMkyHi!mL`<12f5itEp@QoqRc&Gg(udR~;4o_Eg|!z8gZ6(4tz9_4YCJx#@R zWD9YO;O55DWXS>R>)D~L5cadVU)n~(8j{j<BFD8X(1~wrr%Ka<5?_an@Z|x%ERFD0 zlHTLE@6MMoz2_myE8hK0dD((5+d{sIY<etBZamDp^JlF8An|8|xgB~8^V1Fd*_Xm! zN%G@i-km>V@{{_YXN>Si<8U?S?{DjwxKzzZTv8H6GAL;b&f~KD+xq4*&M=_IaE^@T zA)WrAw4_AGM{84~Svrc3lW6Y6g~d}im&oI#{S`r~3y^a*_$z77km{(KabNr&*R|4m zVrg@QQl92{aT<nlpt-_;(&X?i?YtxiL}P3mMY0GgCJP=nm&G;6VFh?BX>PBqvM6m% zPm)DG&aI%wP!=?&7haky-cd(L;viWR*9|0#xMH&4adTNbfE+e}$CBpW$|{S}=G>$` z@Y&v67F7YLPo{$Fh_+}vmqlu9Qd)cz>~*lGN1K?WizO2uY2y=xq<N&n=%i!M3G$ua z;lsnydIO&W|3d5+gRHTKjk{>Qin_N%3;PS$I=IAR_clD3G~S{)@=hSOpo~0H`(9G} z$!YvE<1XobBpX^F#)B)Fp>G8t46Y*h&63I&yQ@hXPa|8Hr*fk+x(SJ^aklQPMn<sx zI7aNpsBgh(HDNNRJt6lPZA*i&1=(a^lf}npJZudXmTYB83!93&q`*GfE53)0hYcee z3KqTx!ry0co3n8t@r~W$NjlgkNnxe&<0*zmce?nhI3Bt!Jbl`f6zv!(fP}w?;nN*B zeBX=2XJPolG#U~hUTKffDi%HfyKXqIJ&W)fr0Rik)emO}v3>0(oovj^X#5|fqVsY> z;lCX1vyFj&W%%`gW9_x*FO_k!dzIFC2ul82)O<_`VC?ZjFzgMARapR*v=^J=qrC!D zKS*vR?J=V!o_{Zti)4>S;r)z!m-2{@r)^p8T?+sro+*%FB|x&lY=?E^d?rsl%9CVu znFz5bjS`D3^2xZ}B@b6<4`X|P`mMthF_5(_>WUlUTY)yh#-vg?GjnU3YL@1f%Gz*d z<`tCH%*!h+04>aIl;r{InOiHXo0}_Zl?%Xs`*NMiH7M5{ex~Kz$~l&6QqIxb6yI%? zb<4HF>YNSjoq3zx)!Xbke`NfY&E94{!wp7#;dY%Z*?Wk>0w=i@##5yG34d<e$#H{# z>nU7Dt5LFjC%5Hnz-aeZsIYIgthSsLe<az5u{uS2K4aK>Rn~4`*$vN|Wrxx-8ea<2 z62kD`X3yE5@mIOT^idy3kNjWlC)sprS-(h+_Z4t#Z<U3%pk7J%$MB8YbQaoc(!O-6 zcM{HH;BcEx-vT{E^M8goj{XI<Ik^-rA7Rw+6K!*HrTR>50`ZxFZ@jJ0@3b*9MY@7i zPJ|D)oV68&{(kTq569aI?k}|o#oG#r{%YWhHlt>Swm&p~X2|zG;E6V)R)+pI?Ir%w zu~#xkbpUvl@Z-F3zYFj)g&*fD9s3IT+O#2^P>GH*eJIhf#d{Blj_Buz_wI0v4*U%1 zkS!9)YdgL(yHJz#J~n3MX{j9LCP>u}{#)Q^4c3N#V+-jd2Oa!3z_ETH|5lKH#pNdD zbw2Q!ov3Mg80mUrbM!PX>CDP{OD0Q+$K(!@O{iO`wmq&atOIM~im(6Be7Fbu-k6n% z7vLuzbVVCbH$z(<DX)*=J1a}dbVnOA3l>fXzr%1WzYP3m!tVf_C~JoQwzA}mHdVCA zt!ZOw!{mMnG@8Mm$=xcwCJEg}Al(i-V0?4JHzs#{D~Uekv*9=Di;`Y4@-W>t47v@+ zJiL?5D(QlM%5IhPnzuMNw4fX3auV{3^x6nO(rbE_cZPaxR9qB4QlLbg#={iqv@Av= zMiBv7-hv!Yb$vsp*+QpPP}=|V`mDG;80n4D>_>wRk`5@FKC8xX3-#G%md<X_QEgCW zrFe|%GmhH@xURwlQJ;}r)|+;uT%WCBwEIAxmEC4^KI5-YpWR{aWz%PcY3auF+1u<! zFEaiL^;z-sQ9TMp*&W|mvK<}F>Q)cDkA~y6qk~!dBel1LzX0F3?Wk`-J5T=m;7@%* zoH?+XXlLPl7o4b{R!eOzwJC(}7$~*>`fZYaIskk%{8^h~Qs{pf{toaL^%KK4tk)84 zf)f4iz!z;(6^8oB&^DF$hytEyn`&m5&eiZ2_2)}UPb}V7z=^yuzwvm_ffM<9X~>5p z-^chaww;mWmy7oYaALd3{Py8J4^C_|BMs?L+fRHB>LS{onxywM)KB>c*AL%l-wN~- zeJjvUmEj)>$HwOTTdDeq;>iO3Vxnc5-kbE3u{BlFPa9a-E!0mG))wsuw>@<(RX=TJ zVYz-PzITK4)3@w9*H78tht2_IdpAteor~)yiZ>bGMH#Cl{Ztu#@o=J?3;dhGFBVRe zHS>R4Svm%M(e}5Rq@Q%~I}FF<Zk1lmP(RIt{{c8AcYG^}KIOCFx3cP|cd?Bn{q#@S z$C3@+G1jgW+TgVk^_3dutkPr20h{;Fazy{_5S#bcuucBry}C5^;x=%YT1}(*NWOQG z<Cc9MmD@mZ8l*cVURE37B?Y5J8v|aXOI(Q;ZZA}n7mizYUby{8Auo?12R$b39=o7T zQyv&^-go)c(-Y?pp5u^x?unhJ{o0*7#x44IT?fz0-LiK^qc4p)MYZy`tr3Yn{>@%{ zxZg;-_qf8Htp`7PacJSj!RO{xc~a{^Sbf-?V$Ddc%y!@Nuy^x`Gfta4_ly4|({b6J znCDR*OLw=Jmiu!2wCGRKelvRY=4hWjYcgbkb)Nmi20!&*s(J3XXnymI2HJJC!&(ff zgbiGyu%@O~wmRRc!E29?Rjc>kyxno*g8katt9-Mox4*i(#}~P^y4^g5aSx++GAqAt z<B=|QH5NLw$jLc(?&sg*Lf4t>EN_<fhptOTj}3zG1H&7CF=Xn5uy*t1`&<S2KG$H+ zSMq(X^8?<un1K4B!Cbjoc{*iol|DD3s@>6TvN-$Y@cTFXmQEZ#_2HiJNA7m|rb~8Z zLHLQa8#&{q+^(PhWwXBy-u`a#;~$!h>2TWA&go^Xn~NHLIn+XX7WJ3Wo4xkww(67r z%(&$o8rh|T+lxLci{Ga-li~H8aAv!w-OnE_I(Yc*mY=@f(5BhIYSz!%UTiz7LG5w- zhWepD!|-~K$_{-{&f$aLe%|Zt^ZQ%6hlHkDo~&WJvDNRJ%MG25c=t0r8_Q1ZwhySk zVoHm!xKCO-U#xtj?S>pH<+T@IwQdr&p!r(tuVHxdeXjC-u2k+nIe5)FZO+yQHFrfR zP6Y(|dA7(%O?Gh`S99TyW_dT3VQ*ABra!X7x1XAtasT#DcaMcd@9X1q>C@9Sf<|9V zUUO{ib-}dCk2r%0I#aD|JAYJ@8@Z|09*R0i=Jlrvldb-WKJ{b6`kv~KN9fx$2E8tr zH&-j~R__=8s!7&DlQkFee)#O^p;hZN{kB$|SLcrJMDM{1=A*xm#PANzOBvG5^CJ)I zUE72eEvC6&-`vml!1pb?4z|x8R^Fq|pE$>g;eEVj<)g93a+Cg8{>5Y0?e{xZsn^0L z_=aii3S&Bi*Nclo-|tI?7yER*yT`OkK0OEAxBKD8{39*)e!k1?=l*W9elUHQuY7N+ zAZ%rLjaTeHJMVCsRmVPGI6rILSe2E#Y~SjsuhdiHMjYt*y1TU?Tw!>Nb0VKR>RL2y zU-!YiidNU|Y^hM`)~PxlzE|$j>K4mKbgw1|&l%pymZPfn`RV4Q^mO??SNT3y`94?q zK3DlZSNT3ywbJdQJ;yz($GMi<HTSAA=k5jfyHm=km)21oyeiC_<lZR?{WaX5qE_ym zz4lO0d6P}`tFNl&_Hy9y?CMn#BUA6J^y~d#ox`*5{V}*jUs0`0ShJ+JOZ9+Pfj;eD z?wfISeD(Zsb$<7g?{k&!b1gppkneNdTr(lmyq<T3p^js>2G?F4u)Jco$v8(C>u+jh zlPROr<J$XO%6jP+(DlR0iBJAG`b&TROD7&Rd^+`dRIN3F@RZ?sr3U_0cibQEWzRMH zw%QLLZLF@*J~)!uzuO`!TaU0Wf-Nvl!|=AwU#(j2G;;l%Azv^2>%7_i=I6CPuC>$5 zYI^r*{SiGTVjS8NYiMfuKG&4>SB6gitES?H$4t-Fwb381hxIVEvQ5sTr{V4%A+ftO z11tU9rBP0v!}m>lpP#;?%Cy_H7c9k|n*fFv+qb-Li<C`!V*jZB_3QrWKSV!wSYbY9 zmqo?TV$8i`|C{b}-Pe)iV)y>#=jSRsS#{}fH=m7v4d^*Iq|1Q`FS4stckF$*XWM>v z1mOrPR|&@hY9$Zo+%$6F?@#YOTjBI%+suAT^S_+?#BAjpyFZ#>9y5&5`*q6ej~-Tf zGUn)^JGCd<4g2oK#@p#_BX+)+`{AzmKI!S0o76G9?FTpYO;`Ro@9*CaTa}G3!$Z!l z4EnK4or?Xw@@PL|SDQW^`q!Jj@T&=ZzFptC{PVbBINOKKi{3U}7cgSe%tIFkF0OUu z`hy?BR{xd%?0JLas`<W`s=uf*7V{;HKYhZh2HrEq$M1NtF!Mz0wD)!e+)v20zdx<{ z<XWnyrUR9*xnt$!ME@`9G@ta`LmRd&>iyt=*`J;a*zJ)#$EE4Cn^W(kq<tm`HyORF z52s`uN!jaHx8B*BpIOgslH<OmchZD&udW66-4}8<{AWQ(W%Iy!`)>|f-065kol9%| zcXasn{=^$jb*uk)<IuC#@l9){e!mB2_Aq)a9HVyJn>5!Zv)ju)CzkKL*Zx|_&;O6T z?~aS=h}yo((!sKbii(PgihznV0UIbP_J$p$BPdOZVqXvyYf#Y;C9woMDk^qOjFMn1 z5hL~<v1_bR?B8={_Oi>;ee=G*?~kkwbMM?UXHJ_l<<6aHtrOQ+r}=;9%?6%WBpY<^ z<Hk8vKIJ`JWY)aOtlSf)t^PZ2w$ZE)CYvp@9M=6X_wAfB|D88W{_p?(yjcUR)iRU* zlCHI{<|#*~w#UN!JRizNEK5A(e`x09l$7@yhG#4vhk2=g`&`=g_%6jvI?#2Z|Ax1N zF4PJ%>-0AEOr2FN`|mi=!2R7Hy<OUlyE1(@h5>j#i}rFs^&eO5Z611O@M71Ty!D@d z_G{Uq_2K-Wu3g@~%xn<-SrA4txW@Y3>wHRovvu~nHH)%at(Y>!`}&Q0ZIafUdGFbN z`^!HIutz+DTb3NKZFr(vtJN7DTDGea(6Q>;GsE3}cQC!0d9K0c#s0uIj`{H$f6Zua zwEw>KhIy_Y_R)i+XUAP_bbPbR^^6TyPc#nd+5%@)V5pLacgpmmHF^(>1mO;@=^ZLv z=i{2z-qG2qHE~UA+UUA5u4(-MT>}l<dy%dO<C@kv1moS=QsAY1?CE+6uIU{#UDJ6T zwC;hf7vY-TLDO{-uIYU&;pu{FS~o=3w8lp@o!-}q>GYnO^3vX%^bVY^Q*ll2=;?YY zuIb%0T~oQVmVvJQa7}BvM0i?rCc@KND-oX7=85q1E}O22PFi;*Ueo$TSEPr5_sJ^P zDT?c<NT+?335Krey*K40nrV%ec>NO3ED-ovJ^WoUJ<~v%DFXfaV&h1Pk(ZrCOYr>s znu^2oGhZqO{{Z;;IW2tcFv%SxVGR)fxq=Q_e+7N9E$*;Kqa58A0qYdxT@d3e5V;3p z>@g|#MvOgG<w1zCrdv+(8isf>;?aoH5C<YgwZV#FY@2~N4DkuX5s3dn9EF(Cg!mQi zv7TA32|2>P<hqC_BQ{jr*Fp^a%gqqaK<tKi4q~z`tcRA<x^lV?Kn$HSdENp}zUMz* zQ%3yOL0TRH{mSE)_#6p1;?oZ?@fm`c_?&>4_)JAieC|L@d>%zid=kIJ=MBWfC)K?e z#Lo~Dp91J4K8auAllY~3BgDj~DPrQY17hN<6Jp|%_I9OvAH*V`X29vg_Iu@f5|VA= zap9TK&<&FZ!STI}`F_pnaIj|v=L#d`d-C#qhDmNPZNVPt^n=dj^%0LjjIN^)j2N%J zusfze%S(mvhzTCH!0crj;y$>afw(_nIsT789FN!waUx=}r&)*t5YI+D4sjA<;1cE` z25rIu#K0jeM2tMbBE<6%e}fp;!V<*kh*u!qgm@+5?TD8n-ii1J#AJ`?ddh!Bybf^= z;`NCCK#V-{3y8NOzKR&H^q8GyBEE-v<dr{0d=T+d#D@`+K93-#`u+>z*NXHHh_i7| zia3s#^bFf)`aOlXChk$Dyf)&qi0dH!6R{a$&>%NQd<Ahc#Mcm8A-;~d4Pw}o++OkA z3GrXJr*%r8QBHmcbxKZqBR@nu5;16&k3sx5V%Vne95HNCc!78lV$dun-})9YY)(Ma zBu_*P9^`Woe?<HZ;?IbeApU~*Tf`c$!!*QF#H$f&Ax=lEjhN)|9M^n5Sgb+9HQ7-+ zr03(BenG%f6EWFQW5i@fEfA9(wL(mG<bas$i0q2&$Q?0kK;9j(9RCL)jz>HgaU$Yj zh{=vdA)bvGIGG(qAYOudJY)6&n_~8{7%|z$GQ?yb2+Te<BPRRUgLpk+vKO)s=#tsT zX~bk7<V(mtE+XEI7&>D1aTD=j+}}og1o2(OzaYM^NQdm1eL&{SJ|JUe9|n*O*+*5x zWFOTLlU>wBOm@)#G1&##3E4$c#3)nV67dbhHj3wDA7mHgFYX~8h?wjGzKq$0H)7H| zwVkB*AjG8iafnIpk%&p}afm-7hHqkemm?;<&q7RkhYw<UpO0A7yBT=ld$N}AkNAG3 zCBsccxnxI#kMHNn_xd9{LUD!uEm2`_1gFWqCodb$25@{2M-E5rvJ`3N2=wy@K8hh5 zIi&|E@KZj%mtp1enX1rLnexmP`Rbu;^?azy>`Z#}g;+hJ_J-s|bh>_JKCiFL7pKUl zTLPW%8FD03A5sq02`LIXU2)C#z2e_|l3ultW{*HW*qWT;1jM9=c*OLa?x8a3>oR^_ zah;|@_t)Za0-k+pd}t!g8i9V)PE$<nG|@xtH1RWCK?mjMdlD)8W0lR%_xSm`{AMVh z@3F(>s9sNMs??`T3O<Psb+}pzI14<xrhp^46C8B`OcChU2yhg`cQZW@Jl}goS-vVf zo-=s(_(D77`<L)<T-EIxZ484?Rml50g`CO0`F<gl&&T)YsC+)Y4@SxP&;~L(zgN)t zg9@D=74p*r&FcJ>md^~ZLJqAZ<#wR1ANT?$KZ4`?G?WYnJr%<7{Sr!sGf{yvDWhEU zoeTBG_W|Je)cIPdkjEm#R6o#nVEL$i@bBz-eW!dR7qNa(zg7?T)UTBxM&E<^wRtM} z`M2p`pPzrv{dM`t?)W#<^gSxC4^)555$K1$h@ALAUxd*=1hMFk`S;Acogsay<{J(; z%0Ch@)fX>CK1$@@_403)DPI+&#URkH8swsl7<~jebSTt7+zc_sN^(oY=v%UW6#AB| ze{PDnJ<{tV?uNJ#Vh_cAFU37*7tq&`4@KM<G12dez`qq`V-V&CRQ)vRo5qc#Z}=F2 z?uj0{r*Bk6{ktNKf1ktW0f-+}Jk(AQ9%?5D58V?Ux*rcbV!L66G`@bC+aJwsP+c)b zpx+&Z{LFC8*EW|7mk+pWpg}yh{?;vt@ESpYFcRA#?`?_jz@P60;RJ#CKsZUAAdjxt zgA<LEIfRtg76F}26U5oL&khiTTU|h3XS_E-_z0y6Q1C~<WJ36dMxYJ=zjY5hM|w73 z(~$P0JMcppCcrz@2YLrg{s8n15$AQlcPhvmHw?J?@%J$?FcM=2l;wtgoD<;s<GBm) zc0?NlI2)9kif5^~egc{<A-@R%eOuuL!?f-LAL@+!-e~hsj!7WW!CNxQ$^xI+fTPa$ zFwmVc8a^NCHhr-tDaxhw@7aEs2LRpf10fUOum>(z$jlXa&453yC$1560aqQo83Ru` z@MS}uHjt|qf=LZcA+?`|kcp57ytycU0m@ATkD(~<H7e9<@RS6(SRl;=d^(}b*MLa{ zztzD*9`urmaxx(MVCZEd?jL}6`c}jfG-<j*kHG5#9%)c&hUWtKI1XBlI|3fKtf8mO zzp%qM=%o22Q<Op9P7H&*3_))mXvhG4!O)E{<SBp-A3Ue;(LHc2N4g>IPm#=_(?rO} z9pxW~96WrHAHfuKxFS6mG);xAB!ah0(B%alUIVu~WPAkA+XK!7Fa@BYx)0=lbaQv; z&klJ(ZyIz-^Pf(jKMr{FA@3~6b^*$ALi#?Gn}zg5<Ozk$vXI{ku$PdY2^y2YV<u#m zgfcQvc6CqCj%Uvymn7)Q9?upaoxa^Pfy|r;H}Ix|&))P5a$b$R7NBDz@Vi3y#^Bor zGJ4PveBO}=o(Pekf2tek16_Hri(%kd7qX23tS4l89I*R_!#0601JADk{yE}&(4Yy~ zgra<R#MXc<0R1Mwl?R?8k?#r0S`E891UfuG1AVh1Al(@0_FaG%wvz<81VDbz@!Syd za0T8B@alp3v=4YPK}T*qP2s^R$RBYk%Bzm@6TxFH^5w%u;=q3a@+N^cUGQ-V`5&Mx z3*fea?dC%+9*Bbha|`k@L7qs2T=3Z*^lCz;sVFA^<;6gb*|3u%fNKx@POzP9!1_Sv zHp3uW;2s7VtAnq6q=f=50N0lwqez5M$U7w$JRlrF$V1Tl1~!Pe`dQcrf<1x<!h;a# z9C0K<B0>tnMudF`4-g6vk{3fRf1*Ah*dQbaf)?QOyekpna36^{8TU!JK7tSsgfbC7 zKuE%M;u^^O9Lh#W#eD`nN6;Jt8$n((q^BdcN9=*%h2V~7!H9<;jzgS;kctqD`wYa{ z2ywX1L!5;8IKl%2lRR7lmo?%7+_y*EAHgCRdPNApbqoRx#^Z3GjyN6h1LVm<oQ;r= zpnDJgo$m2GAQ|N#&PRBSU;>#rA+!ffDtH@)xczy^A8Eme3lJNRMH#rxK;C4;PPq3# zSdHtch%*olA)LbfDa6+h@^Sqf;Slmn1<sF1)4Tw=A-qPK#W>(W=#5~8v>3!Th!YXF zN8B4B03jJ+0rKY}Jqy>j76LvL^x^smf(@?S5j>$s;UeUR>r)7~5DamzxfJDu0T;qX z@Rx-+55WV^@)3t3HVg-ih!-HFBbb_M3O)!M5uPKM*4GqzBV-|%HP9415MmGxAs9B) z6e1Dw5CY6Jg#v`+Mu2M!c!b_fG=&U==Lq)Zn!*Bvd<55~s6PnF2w4c15UiVNq9cQA z1gGYjLK;FA!YPC&2!<9Y1K|*YaSN1-kcMy^p#Z_mQd4k8@Im<R_n!p*lfZux_)h}= zN#H*T{3n6`B=DaE{*%Ce68KL7|4HEgR|(LlHAujAOZWx2ctu2eMfi>N@(l}cv=533 z^a=|JABUq514F%V^kKADEdF{$NBMjCMn<yB7~iOv*hsIi7|KQ&SWYk6id=b~L@PWa z{4PR!nZyTkRzeNDTL=u&RK$8hpAi43i0Fu*7&D83EzJ5w#)O20Ob!VjW7Z`iEHWfC zFbaDpnaeu4*~B>nIruv{IkzEvl;-U{!Qb0ACMGJxFP6^Fu7$MVz|ctSQLB<ld$5|z zd}Bhf295H7c5fU^j*VBte8YXm1cn8M$Iza|=CVRcfS>XV9oU<t4~+uLfl<+7xgNgZ z0il7OQNAHDEKMJ<?l><eBs3a(0V%HuM|4a8OB)&z9uP5+&iFQ$b&H4%58%g`uyWiw z_b3y_NYIsSt&X{<!9xdm4)n&%BfSgNmFZbx?*s3Fo}N8AV+-moI1oJAJuuooDkL%{ zA__3I0Mo)0?}>W54eZ|4yGLKouHCy1r2Q~;WwPRV-DnS1!cEVcAfIP{?=Eh=dv|v0 z(#yMR-yuB)_Ur3C#E#>=RS$DUMbUzn-ZFZjGFGt<dyJH@k*@fU49yPZE;u9=@Tx^T z+p3LifSr@Sqobp<zf)j98{f9}HjZum+XOi~JGQm=_qWICn<8jP_=E`9q_=-SpnoW4 zV)<Uv+CVH3LW4;e;=VV$4B9)kql`a~Dtz8cBGO<48DT#{4a`A-*6H0aH-)X#H4Jt2 zXdfZkJBZ3C{xfrJghX-wZOSK}UqWT|lW<xnjS%oOUOw%qBg!X5F>RzOA1BCXby4~F z+uGUK1=!j<*#@-rw{vXk5a??gXlw6p?;qsn*rtucSILK$QM!D@=Omvv$fiALo$;0O zp?sB*&w7RZoYLcxr?q2sa5);WE98^K<>T$m_EE-ev=ahRrziSHdx!Z&d;3SSbDgaf z8+KcZw$s+%IUvxtt)IQWZ(Ca@hX7mu06z!&HokUF0ltp5Z5=u)4xF4A5^iTJZpvJE z8f?I%aNn>He{Y;)!Mqb0Uo+TNyBcJB;jy8i-Z(cFE)$L=0EZPt#*&wbf*(`bB&WM6 zv(Y}_<uc==kA(Kos|JIT2&!fCd_4enfx)@4^UKM0IiALlX-8Q{$OC(CPl)jjiVgSY zdHNT^IK$`BzReQh1;f!^VkKw_&R8)#QP>DebZ2MT6P}sI3{M31J&c4?WHi<SkLOsv z9<1z;Lc9%yR>(tp4fFkCA$6_=@E#c&8|__0AmogwUV0$E@DtU2L&d#Bm~oiywLvHL zw}Xv6(FRN_ytlT*KE5?*2QW?cYyr|AAV}CVgJ$%E%!BrS+lcgh1Pweh)U!doEPnPT z)n~DcG#%h4Jj1m$4Xf5L)CV8*>^X3F;+ZBr3#AhD@kd`r#J98w@zGJH16g6UEjwsN z<ja!rp)ZK#5Uy0<V)PC#N-w>SPC?-GdY4Ks@kTN^0$6&HZrD)1QKUtqF0GN_``r@E zCBSGC|C;h2L>ef4fv$pA`6Dn}1<Y25f5+JafOp3;#%sKUnAKv;f-|v<viLoq#xLPZ z0zSsC{81sp#DfRY6A?JS^5-J{>y0=MM6W6@nSf>d){Ac~!m9Io959^Ucq`Ssw~(&G z<PZ<H-d9!?wgC4oyljE@{AioX*bmMF<iPZTv40$w3(-quutf}r$!7Er2tV<ui(skP zSDXAmKS>d@FXjj6JSz|2rn=rwQnaqqc`N<#jOsJ?zb~xMl#bVS0@Y8XtJF_t8LvB7 z>k9j&c184?n$?g2zxk+d<Tq)JWq07UVRcVly5AICCT#&-=r;qL9GvZZZQG({_I2{N zvGohILpRLPw@upsJ8Ff#&TlpX%@y^VoNlGx9L)IeW`45~^M6HUNp+I^=0FBFi1{w^ zn;Z}Kn_XExrJN}b`ArU^^qXM}M_-9G{H6>1=2Wb{CBNwdxt8TO`>}i@S=r<_Io_}L zn~Q!f>NlnAp8L&QI6`wntXqVSQ1_eJ27+LQX9?_CVYOs_^A?_&;#o!fCY6x~*qMZ9 zL{YzKf%F9k%$I~!&TnpDa#H$D!j+4_=p9j%-ejboLg4iJ6#A)>{0Pxo0N6zGo6VJe z^JsnUbI30dO!X>Q$4xMr@>S$7s2!m6Y@{<@<^O<LL-@^V%x@YaeJTR?o4Uj-{n3Z} zE2O6^zv;^KrsS9K9YJ9H%Ks^3nCO!u{Sbn}Z+;McVQKt604(FTNxZWNtIjVPFa^Ky z4x-;Aeoc@*o5>-5Y-xVe6+D*kE75O~Oo<k<Ns{9n1j0{zCLxgDB!5SKpdx;gd?3~J zlKiF*o>6^P_nW~;FUfE6x})@);`w_0S-UO>6Hs5tZ~7o^(Fi(VIurdS^)X{2Sa%a$ zO+KDf^*`wRp(hxQ^Dq95J|i#N9BQL80`Q)l(bBEVJ|p=$p05$hM}5ufEMH&j3txI) z?+Sx)Wj-so5Jv-H2y9UoZHfijxVg}sp++480~mcB9M&Lhj8hlT8<RFPutQP}eI(U2 z=x*SrUDZ&t0lR5|rwt733@mYH!cTB8)Il?iwzl$p$ey4}`xo+s28=g4`y}CrvJYv2 z0hbMI3djX%3-lpnR7H6oG8fORsoi1E44UGJ6sFI7;S)Twz%yRgS{2r1^}0s>fy%fA zSk{LeOukT7*oU-7dMX0*4?$FR#ru%fj1Q%6AY9iF7`=mw(wm0#O9-6a5v9^geuU`N z#2}OPsT#=BMc<&>ry>|rz$p5VD@9*O>A6T}yvpxV9}>*+KBO7alMooM^7q7SrTUNu z)%YcRrw|yw^1Fo$6AufJejGvJ3m=I*sOv}M_cdS@eMoB&R-Io%*t4P!X(9ST;@2GM ziaz9EN-xbH+Q4>7__4VGTl6E*yfWDk&0;^2>JPI`r2TLACDnajU(D<Hz)vbVfJGdc zi;K5+sI79QrQFdn*r2_OdEG1SOVh}K;)gZW%$LR>_CwkBtnP}wl*a7vrHWzu*Z9)P z^douMN?$sR(K4dUekA!)o=@pZ2eW*BrTS9xojgwi$jD6=j{AWu&o~MBQctuqF(&Ar z7x$%2i~G`U+?O_o_pEO~zO=rIFSWvPIsYSHy5wk4Un*tyyk8lE@zPXG0<eCinlCj) zdK?1lx3nm%s?3)<Aw346BEFQ$u&%A>YYi#tOXa|kkHGxPn9BLmbxht$UrM+vP!6Ma zNKtwp;F&p|ae7CV=}U>;{(x2VD+_(8YCnr$f&ruGSEh-+l+sP1ciyjjLH$bjQr@o& z1$-U??^kLNvz6*sc4T@}@=N$kP!{i3z9?jv{Np7&GsZK8FMT8W$C7+0(d-IX#;<vN zTM<^B-(i5^{KngfzLfGtB3;q13@OW(x-xH3>`#flRP0+){rSJ@UzX%c$18nl5l5!( zOUoTWgKhGqyzVJ|X-~yGs8b^@7fedCZ=xvHvJiwLOy_bsd?O;<yTs$X*;FXaRnoi_ zor}ZHl$$_(9=<<3$I(}?5@d=riBR<z`GiE=_dpQO`o_#>Y-kKoLOzY=@&;!UoEFPR zeo`G5oh`?4g$R1WK!L{18<C&pJ87SJ)w8BTfSG6_yf0b#{x}7T<_SB?_5tz@OFM^o zI<e1Kcy^q4#2L#!1o`JM*Z_>!rHs}gpkoB1wF=A6&#h9Pa}^X46-|s$`NYQqmOn~p zEi_~Ki4UG%htcB%*k=sp3d4tKLHv~XM1n|8v|m6ZgAHYQGXXiB-S?6ZFHz8=E<Z;- zIs{tehXK-jWEa^`<fUH#gAbHwfun8`efG=~&!`XW!=8mm^w1yfFVSQ&c11erTlJhG z;*I7+ZZn(tjCXKV@sHAA5ll8x@ZV9!Wg{L3uhdBkR*pGzr-5-W=!WfMr)<Ts@yatH zqmfGIg%O`z_v<B*_)>;+-U9tqL7;bO;Q{OwTr9m0bCXeWCx%}GywSZx=)>;&NUESb zQ+zS(EHPBUp|Ev&ji<l?mnQUMdHA`8N*o%<=O&}G&Nw~k5;v5xR5((ij7a|z8J=Fy ze=SBI%?ll6X>>j(*@#3~&+c0Rq8dx1Id-0A#nMWWKiTGEmhXlTA&g+SRc({<DCX4h zhA@WFJs5cmn0|hOH5&@u1b<fEV3eoD(l<fp-H_Htwi<n|TbSQiNc{@Eu8<s`&!BW` z)cr-2t~tn1s!u0+@Hy{%z+2$iH)_vBKc9?r(Qh|al;H{Z#SC7)$xu@V$A=hJ(J`!6 z-B8n#!HTqm0&WSxRg>Qn+XSK|5$Q`QT`JE~P0vC)Kkp{KA>l~EeI^2ZPh%*JZz$41 z@1zJ%ZXup{3qxtuBK+Dn#2h=ykjAf}E)&{XU1M=BnA$lC>N+A@q_Of`CRa@+XVTdi zcHb56Ts4dEmxMA_JAyWy_!UI26Ydic)~KZQ#=RVYos9xGQLgH3EsZOQr+mPELVv_i zH$DV?J7d~-Ld^3S>EtuWS4qfc(4p$&Gy-u7V-&BeRF_&XdRM_(W-xk1c^R5v{~adx zcuzwE{X)E&c3j7z-pm2V^%mciWL_6@=vu%_^XE$umIKGP2=k#Anosw^vl4!;5V6n~ z;~)&hn0*mn$;hLA&L!z76@hGm?27D{bWU<4n<ZL^Zjzyqpe6gA@mJlvci%Q`Y=N8J zEv`mP?HfBAa{{$7GS=2e;a~enlx>%I4kr2CeiG(Kium2e$Va}5{2R?Rg$DThM&STl z@yuKDZ#385SJ5_mwnPGcC-9Dx#)A~M0Pa(a#<JUH#dLc|%1^dP=K`s>&m2#*;I7g> zclwpu-A|JG!XY*WX^!$Fcps%~pF6X622uvM6g7jltA@uZpEk2=@^h-VIgCUwVlX-i z7>U5kdM2qZ{LaQnbS8^xTPL>L<fqbe2>(kV9Nvxak&oi|LYUoh-&VZcCjU%rofXSJ zUeE!J!H_c9IzN-EQ2gGiZ8gmWeaG@l61obtS(!8+#LLvceP{N*WetP*hv6%$t){&z zEEude%Zmdbg~seYhPBnBA?K3X>RM>4$xqPFg~{AYT3>33^184&J6)tZuykK(O|;RC z@yv+j;hBaqnbUg-f|sy%ou^qq67KBWSF#WFbDgLUpv~}Z(I6RmBJU1H?<vTzAN1e^ zoT3axTjqX(WH*WBwE;{Wg}yNN$<m~(?IBriV)sGdMGK$4Rbg#^VtH*p<i_o$v-FPS zEpV0I_D6t@R91!|aJ$JOP$tjoBpnV9mWgs7V&{=3lD}2(6m9>hO(s0g7#;!rq<3ZD z%4N9J<tg_4S~2;xM}B^`ANAkHvNS`;iMRc|*}WYgj940-E6mf{v9ywKlYOVLeD8&5 zAqw&?-qw>o_c53oXzOc3gOeG4rC!6CUdf-gZ-n-*DeND9(NKG|p;mS7!>JviXQs`t z{|r6TnQADN8EP40s*|4OA&&{3tyFs^wlRC)jl_0#gaTJ;3(yXDsr(WqRO_KxGSb6r zgf&jtt*31ywZ*kI=5-AbS78Bz*V?$y!vVcU1}zO744NBs#c{p{+O=>rZyQ6ss^stZ zd)e=SHxaaxJh*Qmk3#o+d~%HGRI5~bB->hxwMbaWh80%buwKmFH^z4;t2aJKRh|_c zfpg4@`ySFMjX8GwM!w5Ns0r?=|JomUMH`ON7@~qFJdhoDtadIp)j#s784OQD)M1)) z=01%3y?~IYKz}UEn&cfC7(ON@nAUKS-xKZqi9~7dRzg?w=(kDGx+;8_NQ<Awc$IqK z8&KGh2EAfENMtm`V9e!LZattj-wgI(58w6!*+dQbEjrUZ6FL#kbf-Q=2GfJG|3i7E zig`@pEmZRm9W{{WB+JthJ!IY|uK|o#SQ?+F5X(*ho>f$~PW%+IJ+g1YpDCtSi9ctk zW5n!I%<~b?R#P6mgeC-^h5G`8HAvIerc{y#&cH?5YlO85SkbmA7IAsNz7@D?5-!@D z&>f)=7y3K|Ym78k1O={|CE-fJbB-(i1>x$A`(y+WSNsc(%Li!-5IC;*7pl1En)=#Q zkB<O`$wr#cn>y}NZ9|-dT}|Im)1puw1a}E=KN63!1i8o?r9Ve{I;Be!yj9c9;KO-e zJK-nd?KR*`k;ePl2|tPS5D$c>J)SA>oHmpiu(Cy8lZj{RP=<77AF;1pORV3jeQovj zi~8D~S=-0w5Xk>EWcN-&6Zn1d0p$C5TiC1!znWH%Gx~#uIy1Ww{aK&^lNgG=H%~i` zw2uh9?>)1d=;KQ2dlQd7$j|%UGvU6__x_>seeXNWfA2&~xtP%_$}b7H*E2oL)HBr8 zF6?{D6@Hs|AR1N!PNB!UqyzQ7H~C8nV&D4++S(F+Za{^7$bx0m-yvU5cD4b5_|w3< z2im`26T)T$(%lvW(l6N>wJ9a_)5ShHwJX#fkiW=4AbN>6lCuGD>mzK%J=KG42ol`W zS{bSX`htsWA876ey;5I(Iny`w<!zm9Kr8j-(fA3}7gp`d>mrT%x$1p+%0vCKQv32K zi~1|2_2p^a&58L-$Q5vOzf5tzN^yTgai0rENYC@t?q90htBwtxV_Zc)>^H;a?I?~1 z&Q!)T#s-m-ys?zno4j~o%Y@e<d=98^>JBmy*BJ((ee=dbM7}<c`fwaqE5J})!C8R} z_i%{|tWTM*u<c=WirOij&x+-vzWXtj&r8ydwOhPzA`uGn6}DMaCuu%}=eJ<(GWC6r zu>9VVrb2z}cekCDLvtH<S$b_oOBnPd5yTlT(lsA%A7n5Al5TiP_^Hpu@i#%sA@-9B zdB<8qnjN9Bu$!zeVE3{7V<a++ky@hsci0Gp+T*^3<u}Ew*=6i6*FXhdRN(knG|3p- zDbTU9sh_6(JM{%xEAAzNJ_dCX^bE+~4a0b^cWXh|4qG<VG&R)FG1M~vEuwFw=XB;4 zjy$IJtOM2S{<u#=kf@{u;64>WLy=aRZ?aUBncoKOA<C4>_o7!d3GWBAbhY)cLb57O zmDT_mC{h(iXXHx<{#(emLy=EkS`)o6yrN~Xu7NfBXc`7hkcNepQX`<z(E{?u23EK< z&;|dzkG9VYcHf-zCF+9uKwNC3L(;(xCbRzNwbm<D_R9R!7gOdZ`x(jdZx`C5RI&k8 z+aVu%4ZLWA7j~w(hWwhL7WE0S_LCd{(%G5jD(Od%{t;m|<`E1P>8kP(+c!~fgx?-` zc9LFk_B!cJ7xy*@yA)|+9(qRbNqENSF^C^cX-;&Hz-UpV^~Sv%fzg4q@@Tk5IEZGQ z_!fk70q!p$Fr13C)ws_?U^tOh8cva3(QZ94S;E^l`F7U69aGv&Mdy~fGd+z!Ju_qV zm*!c|v$P%<n=~y_58_Z>7Rj!ve2qw>>Rc1ml~YQZmXtNOMK&RWsx4Vr^_h)O*}QHV z7b*8SaPFpZW%79Sa>aYH=`z-Wx;8>t1JQogKuj{zLp{|;pn7e9Ky{JoGu17!8QKe) z^hSF>lf96>$VU(zBm=7Fq%Ugo8Zv)EZC+akV1ymZWIl-b8qz{P$I^of(+hnu=$6SM zkxt`^ev-oULLW`|;_#gOZ9j?9->SAv3$TX`{pO<X;ZqM5FGSm9#%L?IZ7Q6)qB`9O zbVxA%Qg53$E@j))m*E~MX{%_Pc)mjVnNF!~;`x+qQ!kcpw8W``Z4=M0Y@0k-eqTvr zv<=^@v`u4KI&YhXm(n(MVK70GF5pmXn>hZ8wN0)pe~3hexeQB`|3Rf~;^kYSZNhjT zV?AYCS9;qtpW(A-w9wcw<)pH0dJP+U0E^lKdn>7JqUY_=N7F$J|I&&4%M-xUeolre zX#(!;5vnNC#5$wiZ>F}1aLVyQY%j``%J)~eZE^+vsmQlak?()AZEDA4RJ3hUmwj1n z(_JR>qHU9CJJbfnftS^7(VnAzqpi6iwoUFxOGDu2$Sc#m2o`~zWv+lPO~#}n!k-KH z{iIiEd^1W*$NedU1Bx`!*NgDxkS(LfAl`@4X#Y4fq%m3)X%CQQiZn(C(#oSDPQ<Ab zZ$&sQa33S$RHU`XeIx?IiL}yiiu6+3L^kvsc@%Baj<0Q-&N4j}ZJWHA?u)ifRGzUj z_D?3+Rh9oJ(x^HXBN*C4O+iyiMcSq;R=%=r;&oHmHW5xbGx!jdE0fPuFIT*;Y}=#- zyxIs<uXPcqE>eA_x<xia=NgbL&^ZQVFJuGcBZv-?0o8NT7qv~Bn7oR&P2{WlNt8aG z+8An^c)HSuSF~*+f2-a$byK`k$?ZZd6Z)JO^HKLMA7i+gXqz$^ZF0rrZ{dhZoY;;Q zM@&?g={+`km%`@hXxzr<6FCk?c2DbR|6({VXejfD=y)DBr^jHrvVJYS`+dRg$G~6f zqQ6=Na_cBlAKOrQG*05>*|G9ye0G!Ny{JL+osrtarE<QL%Bp&b{5hZREU7HA!v>8g z-^37ntEE&3Qs`a5YQ$yDiRR*YMdn1QPu}4)(GrU{7Mdz~N}m6uaRAZp_6Oyuh9SHr z<C%Dvz|!d5xwyVSNw%n$o2)Dgz>uDRf#s=*IZQ3qF4{o<x+-fd#9j@(d!aE~b?|kC z;Yh=JWqR*H=@ORC%XeY&p?;If`-o!mrzUu=$I1=^{BXvD2{__7+<>=_EE#>LfDYJq z9d*YLn@-Z)=P3{%&X<B5;T6-fMq$5{@+2Y8Pn5@CXyI7xXWWx7r1?IANyhy95rWZ@ zAC}hEHZ;_nV5p&Ms7Yf?(LWesE`{ueucyE_EN!^0qKXP{nEf<HUjt(Yl(zu*-eGQ! z<1@f2I;@D+mYQIRc4N$w)}pC%ah#WmdCvEMCHV}-x&Z9f7UA!UUR`V?K35K8^0PrI z8;=2Zf8b6*9;y5Zt!2|8KE!AAbuN1rZ&B=7QsJ{Ih0nzHpp`-n*?^&WBz%{Vfzha@ z4*k)lKYE3?H0GszqE0>{57S9K`65-FkWJw%4WSm3jRi*X)r#aZ?xa}HP$hl=;iK>4 zNEa5a*h`;up%MQbR!m6iLLF6LK%yRw;#m<rfF81E(!&L2i!~MZ65$=Yugdgdg7VCP zo9RWwZ4iiIcTvSuMlbzQCdobqxE~;J*`FwsulP(8<+5i9+QpukiO=F67d{j9BHCwv zz#Jo)XvMEIurz3j)&J(C5PWJ_M5e)jV{1gJCoq|cI!Z-)Hs#ky@TIg++@~NUDAL68 zMEK_-eAR?Q#6ueHpD5s^35QU$t~SADBJBYJ&21X$CL9%Yq~2#0@p`!Nxk|%o3Fip! zYvgrDngsc!3Fm-UkKxrtnkxdstCw)OJiIA@RlG|$L3n%PJ{dur|4%qU?Q9>J57HJO ztR=qn5>AMGQ!LK;(mD$<5FhlOjEz~*E|&0f0|?$M2Fs{U6JDC{C0(yTAo|JP$p4Uk zA-kq^l(a5=DPqzU)tz4vNI#_GlIC(rPxSo`$w_ri*9<h#oG$eXB5_UaFPpzrw7+aj zT9~eEV<}yZboH?+^&?h;4{GaZ?pD36qi-p5iBB*~{Swu8e*>}3{WnXTmlGGsrdOlJ z@RxOBsnO~SG|T<Mp5_8{W!Ec(Gsrj4!Ph3xF)+y2*(uP5KA*I)!$<pp{!T${?E~Sf z#J&=>ZTNOcTw+qV29V~OjhNq1&P|)Mwh8m}$V1O3Deh@*n#T9yno-)zn0_lI0%m2< zPe(i-c@8o7GWt-3BYUz_zILFbeiX;!!2BD{|Gi*%1KD~MTC+jlvh%ew+$U1sfah_6 zjqvyAZ&)6GwC`H@CY|@A)W_jsKZ@tIVC7NYB%kGtz_&`p-y2g|)z1{|N2!-pRv*a* z@~TK5iTaNlSUKBRe@B_8>^{;*mZxYRscA0Js|VSL?RxQdyVS1SWO-@5pDmLG&4Gz| z$*<&f0TAjZf0x^V^-a{@<-TLGQ@+ckJhbmP%Tre_SAUml1e7MMTnp$*`R<nT^+!JT ze$qgGpL~}{L$H`$HQre@o#w*0e~b?y{}_sUnoAS?V|)nrk8-5ZyCw2thI;XZYsU#! zEzC<(dqeNR#31^{WQ-L``1NRnL~$(|;UwRv{vJ$x|3z}3vP<%R5;eakM|q;(JA!Mn zeRaQgyf9r^C&=&RB3*qPM1JO<O8FUodwXAJ#~>T~KpQ(}I|myZM_c@JwzF||v~l*c zho2!|Nj6=Yuax4QV}*TXxx2M+zch{6i_&jBR@{qz%YxZE<~0<4D_p2f<}D2CL4O6j z$>BdVdBSSQV;F<ScSE#&54lS37`FcoAM?4m#P~;JSp~Z@!(J58F=m!#-rkWhQI7VC z`)1-jB*J~0A>L_V_hk$uqrGjADvm{XSu)nvaw^pSnz3(QNr$?4M0om1lz7MwM=AKB z{oUzDb%=h%*E;YMS{gs1|1D%mkx&7y$Y0kfg(qH~QH6OTJnB4cQ}Fb$7h|PRNBGQI zm;s*TrSU}i!Y(z?QMf<edGdj}ih>GNV;vhF9Wo|7FaWy3XS9y?)|9nEkR@oD<Pi<J zO42c>mDY51lucEEX``?MYC|{-AGfOFu~op(_@2Yin#zu{X)1W^6fpEIlfy_0#|`uj zg!*w@it2xh+7^|ost2+;%1AVe=|nT7)7VuNp6H}>Go%x3B0SMXHo8Zl&%8bWz)!4m zq|ar5Pbp2GMQl`|QqfG6)vgS!RtC7ZVoBBx%}UlQr@3ssau}{xRXnPC<uGOImBT3Y zO7n*m)hm@N>Vtewd3sfaFHf&W6?)y*kEykYUelr1jiu?eoO)WUcB-p}*Vb~}Z@E|? z4ep=cm*UGf{anYYbxyVJau}{-RX?w)V-8ccjya4{$CatOM1M&-R;`Pwbyu|=DNn~c z6*^upptz3LLdS>xEgk<K>6Fu3cD>~=W$To~l&w<^^Y7}kG=E$fot{wWG;UCFoo<3o zb4$}{h5T{3^-kO|t-PK_xrnF&laFqMIsTH`Ud~6^^_RnNU90wKRO>H?DO=YZMycz{ z_-LZPGWA!r&s1LhJ)qFF=iuVH-T+<a|GT>WKhrIzyX<<*VanDmhbddP9OmEEZE5wm zGP<3t&~5S%u3H)-&=1pG!UX8Hpfueo+uumPsBwHSQ&NA5b&7d2Yf;$CYBADoR7Y0t zRQsx`;~HKr|IRZ8bcl6RwcX?}y1;|AZm>-o@W8$e1QRs&F0X$h?ukixs82(@tM*A% z`#MB}Sigt{>XXh^$nMfmk{G@7;Xjhy9KZ`_X`ZBnabOW2$i!DxCsTY@vJg>BS$#}S z1DE5hQsl^CxExa;!#ME6zPYHR94U_|N7X){svL<1bvY&|<alcsm!A%gAYr^C!aT69 zsvKj(L&nDjdIz(8ZM|a@n;OxiDtl4KN7@*`@zHn1pivIZ&HatCBtlGZNVIZ%&CAwd zb5pdJq6A-i(b${DT;j9x>`dHGl<@bHi1_)~h;a6k&=+Ldg4j=bGMo#5);iIT=ExgB zZq-%gpt_9{t9_N*5>yn>{}2t6TMcGcB47O7HK*0I+%bkI8^R&VhGZeOIdlLd{ZwUP z*a+VUmnsWIb@>;>@l}{WE7{T)v*NbIX|A|T2#2anf)r~Gjwoazj)7^69cV%4oH2jn z;~O3kJ}E3BHrkAqUq?s!`Uf_5aVcDb5E>F4BThw?kjUxx0Y3G*!10$q*CgtcaH!HB zuAo233k2h*O8)@BdR2mcg>F#Mi?Sf56MoV|?-Kan<y4#x!lBBC=&y1|Q7QCo6s>3A zHd=r>9;s@Z74twYF4HULuuAe*v}eLJR<<$oQMBfs(?WYm;2k^UPG|1X{54)s8|YxS z9(qYl?WZf!BN5ipGd=#!S!_eiz+3SjpZhVwJ3MOdC?CyJ6K>MK4bqDGJM6#2Xj9Ik zigP+1-W<EC9L?YlQdH&mKXg=u0{$Q3AxcU1>OPNTzeY{=oPI9*JjnLrXvMo@Ci}*P zvOk3M0tEivwp!ubo9g>uYGcf}nAH9j)dS&3fDY)rr>KY0d~3E3N2MzFs_?D*N|pOp zdBl=M|5d0;_N^rQU)5yKdEm0|4f~1%uM)_H+r3iuPDqbI__t(FWzf53QTC<z@H}5G z`woco5s*a)g`c^`WnUQ|KE0?1WF2#6qb2!pj=wsd^Y2-nu=40#WzjuY=sC&tGkdPb z;A#Jrm+YSQy5Zkjkd0C(-#)odD6LI+;#XWA!ypgSKP%p*iM}5OS5ze80~AqOo50Ia z%Eg+M%jKf}Eg;FIBYUoti!HnVdby~#G0PQgWxhX`i!P7w-2(dN@Qq$vF5-sq<-X~1 zaf!gO5We`P*9<Q!%q-B_(76PbEi5KPgaoKhqga=eh?b4Z&jIDD_YF8bIFJDA`iRzw z_K69XYTGLEeJy}WQ;w;K?>&GGD9U%at0DePzFkV-o6}Qyz6qBq-=h`!)(m27!+-D} z^^qI_8(Ng_O6c37OuccuMumE#`oYhjP@YjiV;vDr`CNHM1-)AmpMQ<s$yZVzR{cB* zdPk&w9)&0;!(c8SS}#KH*Ub<*Lr(Idaw>OgNTq!!<>Xd^o;hB9CMQ>vMPqK-XASEp zRrWb|!<qto56WoZ`!UtPy_mN$XE3n$bqtRgD~qpF5m%B@J>=gWa@@5s?iRm;<S^bi z`XP|f*;UpL`hhD|&_TPZ@IArB^<lKvDCx}!FvWjj|3W5n#Y2*fXty-h_duHZeskh} z$ragWo^a5xpRYww@<;0ce2{L23Lvh%7I~uap=by8AppWpwZ60ijT?*FK_&cz(hf?h z?;LOW^+kj$t-grQD_UPv{l(YR7n`wMPEB~k#w?2=r$cITDsP2GN%bWec+}eij#s(Q z%{5kzw9wC}uG=A7rZvMn53S!W`+YO<Pi+j9E81dJq>&Gy^+Q;n#^zH*8?he8nWla& z{Td-`Mc!L#yqC8Mt|Z<wO5mO2<@KM|hkq%7chxo6G=AcFq!s3!%2nr`aH{ieA4VJt z_(GWbNn{gx;E(1x)~^!#59MzASQ76ZCGgJi8ZtfiM_Fb0$?A*-zV9sgNii?^N&dZE z*=JOc-H@N;`DmXa@mmU|9})c|hiO_NKgnUapNs@uqMxLFM9DVE=N11c{Uq^CvJv$o z`nZz(qz_>EcPVA_N;rZ6%h#$Z`6E9`G?wNk2P)=P&BFnNUk?OoFWnJlHN>}b+zu4m zERP9{@s5oNa>8jvk@)C2ED|Sw`Gtgr#7x3nKp;D9hvs-oUvqB;ytG!1&Q;GwVC%PA zvnASWPF@^0i0k*ulV?@TFK7U#xHg#hr7~#EKhCZyvgV)K1@V1G`v?Hxr#iN!IR&}M zFRjh`AI=3}4i%>~g%T0?;(+&!OPUv0$jVgC$#5EI4Jp1$gI-=Els5h(`Ir$S#eUr0 zMEOwuvc~+=6?QO;j0HbcxzLzDy;Qk;)j(ZcG;G{OV`0^Hg2quh)MUfy;IeUr4y%LS ze?vB9jmak{WYa#1iH1!%>*KONLQB}p@ls_&W9`aLG%F2;`UWN0%QaS>8|&lI93C&< z7;|_XWz>Gt{&{!@5>2OfDY|(Kmip-&R>tmW&zj2&R}VJ-=LK0NjYs{5tw@^~SYQH5 zpL~Jn-<AS7(NxlzQLh*t9ae{FE|GAZ0<HwiGvV9-1ATm=BhDo*K>Be6uD4o+_$xD? zRSWf=Xd_w)50z7zebd@>>bsI`XwMaO*{J#j^B4f(M^n(G;{gcu8sQt4Je7BKMf}27 z+P_lGOr|B-z7s36Gt(96nbS})J#$#4o*fvjo=nfKu;WO)!(w`F&bHI8u%7!fJW4$i zt}Nh^KnLo2rV}MI5&lg*Q#qy8)r#nOw4yGj#zL|9nImW;G(gC~OC)(|dM^Da6ue?k z`grPN?5jt05NqCPPgCHfJ_h-+xePboKaBLr%c40VacstGE5Wlhn+%@zvhFB5z;Jqd z2Sr4M`G#_wYz(M?p)s2)E34%CxtPHz_iCcLTwdEjeF_`kBz~|CypSL2UsHYJeF{!9 z!BY7|XFrLOPO4iY6mu8X;sAi(4Fn90Sv=MPZ40AKUYR*fzVR|}knB|FG3om_lJ!A` zGe=m6uO>;JByV00-y?y4QyUnnI5L&NkjyzuUC5lDQS%eSlP#ox588(&4R$jOe6W3J z>T2ub3q)NhcDGmChDKXj17DN1g3Dvu(6kV@p+Pwn--pKZJo%gvsI#=6Cf@_dk)`#< z-ZU+kU62k0LAeJFeUCzZ{WnJUA)ymWTnsGK=L(pBwYC!#d$MSBq)+=<x*5{q5cs|` z%5*2B#USu~XL!2U7O47a@tX+3p8<Hj?~Hsl^<U(;--y8XosrKbSXFodvgG^D$a4rj z6R;l<_`WkdEgSa*2z=iec}{sWc#1f6<nsxqChq$q@O@`^nhEZEBk+A^<nv3zNwlgy zE3eKpL%T#{&$9MX;d`ePpYNtR<b=Gu53jUM)%gtbsig0sb!Z6cP$IL7iq#=;x*Lv* z?O#s#s2-`l3l;0pN`|*+J>q5Ydc^0Ql(dSzi^C}E(GLudvL4-n>{m}w?3wYuT#r7o zvWwQES{JBpm0yq6v%E#?QN|>UT_%frWGL%PFw%}7@I5k=>2jnULg0I3lwXes|7*bW zJu-MbI*$A22z-x>qV<U2Js?ZIM+UDm1%P!&8s8&>ry1hj6@l-OQFc8doM|FXMLp_G z_XrH9BFzW)DF}RzjDNo#m9_5!-{*nXBh~jKVm;z>hDzI1ZHq1`>JjxJ=_f@9K|Km! zc2Ti<q*&tS7dR#)oN!Pb8Uq}vV;E|8IL?aCTM-U%Za|gh1=FY$K0c?IXdVpM;7ZV} ztoxj7qIpmWG;^F4r<ri5(kzadyrvVSIOBsyY;M64W2R6}GhftDq(A*NV<vxJEMmbd z1lK`R;8)iHFHft&^Jj!Zl^=25z-9(#M3o<tMrbEX<>xEM2TGQhUDZGt>OAo>E6x+) zP~~ZaqAzSM=RB#7`DvZXR8^iTx=zJEG$I<49b{MP>*ZJ<nBi2;b?`Fyc-|he%|lpA zV@Aaqlk(bIaejmH(E1YUn^K=ueQn7iR<3ewNoNJ`w-mfnf0TSdHH3W_2dq}*U2XNC ziwkFx`sGp#9<b(*tu{nf@Xh<0Jik7(H&l%hetdpL>|+xitn*XB<19;8qgnh8FC(6# zQ?<e7u-7bAn*Yaj3fpA(ay_cgL6A@5WmUrV)asMyAEqW0=cOj>^iZk1d}V#&>@d4j zA8Qjoyu6C@LpW6Hk~pqRoLQ6~x;qYg$}Wwcvc{Dvvxiil`1(?O2MU~`opHRh=Wxkm zL>kkGFf>N2j=bvqS)#G{PdQ($i-&w2DleOCmhhA`))W2YutbhgwSBdQ4V)@X4qvrK zH6YM0b_^sK#Ab6zMkV=vUS`GHveJCN^{nDN)rGC*mdexD+NzQ*;;AIx&&#YhPwKvZ zh&U!!@TBTXs2`Nad8*8q948@he^F8&h~ukx{VJ^wlsud3K$TwV16`{Gy~;iiBboVx zlKMa#XT@n&?*obJar2Tm%{hpuo!N;H0h;qGL9?Q-sra-#B*;5F&>yo)zEO%kkLnx< z`37ohzcBo1g}#E9S5IZ$K)LrV<)OVV{4UbCi0{crdk!yW_xdV%lyeQ@9LYyk&L*5& zQkBgoq(DdcbHsTDm%@35B&6L!;PVX1^wmhahQQ|;c)F^O66XxWc>}_444EqC8E~9x zAK3%suZ}duJOkUOM-@I8&-h-n@=XM9g8Kjj#hd_3v&Ov-f?`f!Q)x7)&*7BUM`?^X z0UgqNx03f(Ep0x4`u<}T_0)7e5a5@CAllGK3(U7L{ZwqcqGI=aH<_Yl#Oi_S9Dry? zIjjt&9q}^Dwj;|+MeS%byD!_0vROGwJGum2SkDv3*-CrKos0D<Nay2hW%>i8n<Jf% zv&*+5!tVum#W<VUkqz#LAt=V#MeK;+Gx3a#vvs%~`QSbSK`|y~b`*pAjR=Y{@xN|I zrR{@Q+IX0cA^DyZxe7Z{ZI`i;mk`7Bqxcr7qJ4e54knwVHtGw;3&qAK3}?mLD8ixI zr*c%-e%3-N1^aIx=p!sa*bSQFIL-7@TDb`yp0PF)&#~t_UV`zy68Xa<20sVSc^{qU zug-iMpT~-hh>h|O1PTU2eJ2h>Ck*m=)maS3H>`}pJ?j8ZzL2J3KeOkwzClB120xPr zdAovs+OJAl-5^x4XI)Kk&$_y-EIubJzVoig`}33q7_R^?dw<?i`Tm^ddFh#%_$;va zv-aY%Ui6G8<#V#4zdH&)MLx|Hw3YDlXoN)Z{hRpSo%o|YxM=*<AJ6%kaxQ=BFAhT* zpN~<>nCw#2aq=QwlB!*<fDTPAlOK^6(=qjTQ<;vH?;1qC@;sWr&exg}Y-#!xVToT( zL9xFIe)*arDpU3ShS(P_iMPIrF{b7>9H(lZWk1FQrkpoE2U2W|Ni2tiPw)*53Gl|> z*uZk<E=ZoO6m{m3qD*ypnk(f=8<8>FFHMddwqkM=VgEPeDDsrGn9EVs5A1?IEYx^n z{>ZF&{dZz;%KFdq@%qo-2PtinY>DbWhf&sl2Zlqf{<l%q|84BKvi@I#9$Z29zh3{7 zQU8Ir#QKkCX5usT`j2Pr#b>3|f7+AtYwADkzbDpzK0Yp5|M`0jrHsj5T@?13Oimp? zv5wI7cIfsv*Da2RoDhO9)|7`A;yLM=>y4kJC)R(ShmVQ*bN|?=s6ckkhNxE&M)Y~K zcWHUHOT6i#T+RnCQ>_0yO<9gAZ;?xh8zpa4C%*-6xn=N1K5M)-*>G|H#`9^F;NO(x zi+qZ(<?%**5N}jw>HbZLpZF8k3}vPeckJj2q_U%n1X@dViSzd_&GAOVAL2k6S_a3b zA(;Nv=ccHgzst&P!rE+_+u?NZZ+&8*ivZA@0DY@}>tl{|AB57@6Hz-!ax^1mi~Yp; z68^ngd23Qs<@bCUN7e?BC_h?rWq5_PeI>~6E9Vu|M5y$W%5QT?esx&6O8Id*xcssp zpLEbGL0wmuUjWiqBm7(PqcTcc>p}7p=R*sYbNPwBgX&ic*q>{u^81>14C301;%l<V z#&}uW=U{0C>Mf0}#XP(%5n)QNi=qwjy2$%bTsNYhA>92WO57v|aV}LewYVH=!;U;k zmBZKC5&w3eB>N#*@bb!*g$PqoS*XspmL&^uUMou>3)=sSeg+7^7FY+sWl@=VEv7`` zwWN71j*rg!EUo`oRHvoQYXyJD$i&GS{73Y9f?lsm(5oEZi*{G?yFHGx;xwzzYqe7J zYh71xTE%)tcX6n9!JOvkm?+x2g8BqvJMBFvCMqO+4B*7Jn!|Eiq3=P^-gSuxkBN#1 zRgS?#7_qHRhVL#<-eP;k+ht|BqV4c+Pn2a*JremcSy`N~x!^03^EJ^wTFIB9jV{I) zhvj_jz{sK`zC;+2FFLQZqI@aZ>B4eFzNjp;--R+HzIuw|khJ1_>A=R~IA4l2-ij&4 za9<q6%}xiMfOXJ(``c*V=c2Qz#j~A7J#rkJUpl9{=o!x3|A{anzbDGnqu>hH#rl)F zh}F--2AhKVdDyDFJ}-e+E6^n`iC4BIGd>9|!YSuf^&D%FSB``8+PoBAMHrFSla=6A z{k%ZpmC8{)FOYbBjr3HEBVVKAU?x32ReQ*qJLjh_9hGdFcIAyxTa#@+AD*(}yB%HH z-s+Y1b0E&^YfEr{?e`0B?`HkQ(cxa~)7MoW?LYDD$CJx;kGis?=9~J@hoXV`Vn=Xk z4o6=MYB_!Wd5sUQp+6*<uRa>|A;59fFRkWgewsQra4q)QX80N>`@Vf|IXXrEiOKY) ze+*yc{lR?2(w2!$eRnh%+G=zSOmIxJC49D5ZJT~^{7#mUbN^x2-6=V~54UtotJC?; zFa6hN*6(#c5A$dY-?`L+AuT4fF{-=Fv{icgl`9wi4)NTf@pBce*jF(<68mRiZ5xA| zdcEJAX+t|LZT9h0*PI_LKGgZS^-js;q+g~@_^C>CtCh_J;U0q<G%?Ndxq<07eTTX1 zGAS6Y>(I|LTK8Pt>bq_K-fJ*s-ev3;Y)|w}n?7&dh4{a3+P4Y!Ie%xLb?U|%1%n&x z=@hi)%^$<<=SK;`TZYeSL|?~db>{Yba;it4dP93X`E7WEWyT5NZa4Rv#~m5iGZ<^< z8NL=DBp33mhD@(sZ*feu@3#zcOP{o?_u%_`+vfBg^W9DJ3xZJJiOJ>jwXu6zyB;1m zzf+pG+v@Koe(Ch&<=kUqPW>`9@x7)09YJtraIFSZ%kL=*&^~P3(JOoP$$>rF-k)l* ztylKs0-@mTgdDuQzsBU;Dk7&K*r&t0cw-}dmj{-1f69Mv_~7~YX3PFaki6U66Z7Ol z89p1&s=G#Qo|LohWU5w*%}tN0vv>E{o2t>>V&TTM^19dY{lplCZ|MB&9Mdk@x%Kbv z=-NN$$CtJ{p2)Y!*G;~?(Q4(K>1V-fFvHh8xo@(bQ%sss`q}$#+s_BonKyK8ck^Ga zp9?)_)7bnb^pVKm`uzQ-OXsUwYoFdOANJ#wPL7x29w$xfdv#*`v3|Pqe?1MkEMstI z25G){I(N;OHfJZ<t(m90_Ep<IIvD@_tfN)Ozt5cY^Fkw%$nA8``Y)aOw*B0!R>VaA z4xc<_TlyIpHoUTB(2U*REvT!ngE@1CZ$^#y+(njKYA(w9WHtSGjbQm$@1TBF&h>JW zt{FdS|6Q~_HyPY5;k$Fow+o%mStJ}vmUldJ?znSeL7Z;aHMjipOxG`!VvPVR_t?So zJ6-KQ=sf9{dON54j9yjTGUwN5ankavUDu1XBA>}nIh{$rZ*rF;$`cxYKgR4sw_z^J zMh>4J^SW`*e(82YKE=#xcHRneTnx_im4Qn^(BsEb+8$2MuHDMGR{q2t8$Ms?HGE=> z^FeLnUih|>!MQx$y>mtD7?0zBcNtm5=)1O0J?qyWtrsKR<+9X$rp`3f4{ru{K5B8z z!S@1cKZ@C-b9uwKXZKuJO&>Ss#nGv!A9vf?Bh6S4{$PG1eah^IO$s(xzdP~pr&+Im zv!2xDyrz-Gr~3C-G}|yn$M-VoFT=NJ+uMV6X8n`+z{b<RM;H5#gEyZKOTGI;bhqa1 zpJWu&9l_57GLsINcIi-CqYK}zIC1LnzCX5SwX+^sTmOBB>m3$0Z7?N!j4Q?u3}5;6 zGKaw#>UQgNXhf5Zvs(=f`JuJVb>q_=veNaW`5!kqTMkWWxea#D;O@VFUHet;&6}SF z#J4*=()`KYtFt<|Cfz<+%XH@q>ulqBm@jc5eQa12`J?rmRXIZwLp%2n65|K%8Z@}R z$1|NFwVfI*NZx)K^KuN%>P2!~_19W1^Io0kq1kTbdfx*JgV*((n){(?T&B<aSNiy# zxPov)7~JT^a?`(S?}+{J+fzfn=uXm^nfLMP@$;?kAB^!m_1<yCEJ2vg;9jQ${b&+< zu4lNH#w*FCdXwW`dhPH2>cYK8<1Kd$$+BLAJ<J%~frC$$pK_UGB!AWN?84L2$9@wv zPB&A-wMt-Kr<03EhG*k@cm}s;n^C~fn;u{67EGAq`@;5qRDr|t`*kFld6uF3jaLrt zjlD4#+|+odtd1IU%x`@%ZueK3>y42^`u}*VAbLoU<;1I7O~x1r!bJx6V1Dyj#y7K0 z$j?N^PX5w)q}!Ahvub`H^|IHpUVqKq>HQjK*E2ZdyugibG+sLQ_8k0XhS9e}J`Nn& zY-^g$cjw+*?sDQof7DAH&<cGV+}`8V$eAw9XZ7#<%XMG5#@fFQ+&(_(S>5Xc60+O; zumkIX-ZMXB+S=ZB)0lU^3e(q4i>WpB?x+<%ZaVP!`*W-B=jBYCXnP&+Y~YK`q(7X< z*N;u!|GeIj07;&^hiltbiP4d5?5EUQ_Pf@Tdvu;@C+5e~d=BN!NqqM3kH@(~1G5KP z+*o_QZlAd8ky~@O-4!%z{w@ed(Pp9@^jn=4^7PoVc^Xl3J!;P$y17oy=Dj0zEHXkS z4-cE?n~87c7$1-83=92inYv74>$NAp{rL9emL1;1_E%fd@KML<E~8SGLe3Ek?!=O) z(Y@M!>!^R^ps=ykT!*`Rhjl#uYwMn)Owz_yacuYx>JfwcZtLcklXEj8UaeXG+V0S^ z?ll{?GVFU#vq9BKU3?mcg!IIECk7Y%c9(<W+#Br&jCf}B+wTRZTOC_>#Qwr?`-Q)0 zz9^8+fWP0*;96|VxxD05tX|i_>uuh*Xdz3@T%DaU=d;<IknzU{eCZ8)zRloPru%;| zk7;GqxzY2d)%5Zo?W<bjL0-e<GYoEIv|2O1cWpuVz~Iico>*(}ANLdD<7+g$eyPFo z;kEnL@zS!+jmx)M82(R-xq?u;J<0Ezn7=&d`lS4r)HfvdlliV5PTdB$2ELxwEa>K- z(~r9Ddn5=B49@LBi-to_<loLP2z-5fu}hs~{l@uy`wx2lLqzAu2U{}EV(%hH!Z-C( zLZ=<iQf+@7apqIxpf*mvPY=F&Z@n;l!nrQ{y53%W2J5;RzPONe(uw}fELxd-oK<hZ zgP&~Q+z)gc^;`eGF-<S+oV#Qg-sLg4W8c2YY$DNiicY!}X&yiCZSzgD*GM*>9H8Yj zUjMJ>FPoyi1yQ-{6DJMxKX-3K!m9bkoujSS@7m{ntG{v8-+HG0HCcB1NjlcqFnkM# zEjgX?<Nk~1+c)d=Q<LE?`hQ=3s#~Ro!6X-BA1Cv<7!Tz!xCIX1xBN1<k7q>3KmPoj z;(s$eq1Tt+j^{Ku{mtLcTTS1F&hJVGD%W;u-{`GD)zcR=-22<@5eq+Lt;qObGSofZ z`g6SFqAw%s2*Q1auc^zGH`Si$j<4B6ViVNk(bAr`e`;|0^yY8x?f=p+|6_X$EDIRi zjP;hAHokei<KDuE*o&_-`&iYh*K5zO^CWlM<-8mptT7M!Zgrq?d+e}C&9XW(=x)J> z*n3y&j_UMb@+#-P{cqY0xRubS=lsr??_+Sw%_WP^)Qy!+dC)Q^Y}^lqz4uSu)!XCn zqnyjOXYXod*Tp(y1~>M=ghvOT_)WiZb={U0Hhq3*{rd6uYXU#TZ_@Lc)zEbW<_-KA zTosS)RW{8yx6S*)rVguSja|4r)-AEYmgT+19JiX;rAMN#AjC4bw6_m$|GwL6szZZ0 zUq+<f@!Rv|>Ht$ay)9|4$N6Pm`2+MVVsMkfaz`xLy=79vKJr&tXJ0OyIIpgkEVSR? zAK%$+-QU9FGrsj^aQ3^p?Y#L%+|VW)>&kjPsL?sN_O}f$N}`OM>ZFCt{_!`ozb6^o z$JP&~XKH(147m4NH^S_q!P2Y4n~r$#lVJKbyT=3jZ*OA$k->fUDgIqIxBmZx_#ZpC zee<$+?PgAGY}&c)y*uA+94$Org*HnA<2^I!xAp7jbaOuGSff{#&V-Y#<EIWfnL8?G z{=jbE46S2(@Kg`<4;b7lS<cTx2fCQFJMaDL$oie8b*a<(to@UjN7qb=|HZ{`gb&_1 zGds2F?r?d$N6T7onhu=%sF~}~b}svyf2dLSne)o4nVL7J!(JY-{!8R$|6u{Wj;*Vk zm451|=5*iIA8Os7H#GbFjcEN^FGGW#pnYTI_RX)g^UuCr&-{AM>+UWOyFI<^Kdo?H zHZ|ztV7)iz_PvY3oC<@RneMaD>)NrlZkg9}T6|jl_)NDJJ$KzWP`^d`oi9z_eS*&o zXK<!jxsw|$%5Fc&A*;;}-)<kPb!d^-?(C8mErx5=_sd>56#Y5|_sj6%kNqt(Urw_+ z*)BNxv_<sc^FhfWuHP>Wf4B77j$d?f-aCU!z0=n0-IH%_T+-c=@<O)HZj`~=PmQ~+ z+q%VNi}kI+(#v?a&FWG4{fL7M-vf=SOXt|$ZI?JH%jwx=&x=XbqGx&}WSly_dZbIn zkPRcTZ6|~KvzvX-#$BTq+Dgw}-51kq-r7mEue3QlDXFGz_%AtU+sucbWN;(nZ^kqq z@Fdsm%Kb~WkKP}3_WEc0(%@yuLH@%pHM-Xcea;%4$PVVTJU6Ds?oMV#i+0WmI8tR^ zjipPU?%VxxT;1HZT6Onkb;TKW4DLhBq+~tQ1>t=!Wu3{YdbaP@bFtlPI_h-&;rknJ zO#_~O!JH9;8+_^SPtt<RV<J8G<jy+pdEoouRu1hp*VXG3btiL)gf^5iV(sd<z3pr5 z$hojAZR(t`dZV^DJ=znL^SbAu-k19f`{HuE`+e-+!SJ0GcHF#O^GG+ZlY#rsBu@Bq z@!p#KglUsLIR*Um(A~>zu^?<=aIrIoj=imUv&;RhBOAQ9xvHbn#5wwsMe_6h1+T_y z4{vi`5Qeb!H}Us97H{j?cfQ^CaJ|}Zl1#@neKWx`%c<G!=gnIN2G8?`KV|srzdd@k zZJiK1gCmRYNYfu*b9g-4z-(1R*@-*Ck_3lt0qFlRxMPd9o$OOZV^5PhTWZ^X8hJLY zPR(%t=trAf2R+|m`u<lp^vBWnG?RvH{eDoJI_{r6+IRkxJ^#+sIt5c2{_VQde?{<# z*{N&#cw+p<;3BumnhEVZW7_XK`@PM*g?p}j>~-_!CQ@Su#~nfU4m4bfaU+B4{_0yx zBiWsG8MZsV*;Y59Pv)F!(|+|kJMiJDEh}5h*!CP}wJ^BgKNA-U+w3e_?+i?;79aF- z_cfo>lbc-)H1EGItB?EN7%%v-dO3RYC?iSGvHZ~VszE1v_FwU!-cieh@Z+;@?62v6 zbL*BJ*hh}x%L$7bTIbIAp|M+=dyEO4|8$(Z)+&!3In$T7xm*2hqniWp4IG23+qK=4 z-&+4>r8i=$(~21Z>n$G*dL6Oz<oxq<B0cUI-ye%LGmwp$^vjOppS*YfJbqZGGoeD( zF1;nIQ)iw%RB+o&Ye&l7(F;eT|H9z(KPKF(Z5LxV>_yn7ad%p`>G1ht`>>7^du{2{ zXT&%8dU}{+VQ`YSx>L^13t923?%DLtkt0oYy5C;Xsb7dza`T@IW5ZVZVvSfED!0b| zISXD~pWAMb--s!5Uqq%kbhv$IQAm%gSw5Zj=C89ng!LY*-T!gJ)9Ze-j-7aTOFB?K z`I2>&RnZHMCT_WG;<ar>LfDu~ScAjLec+xG71}vE?5%s(UH${EN&Z@S>hEboADMkK z@lD<IqdOL39TtNte>`)U!F^a`)6cWz$~ny@&fPh$<IaOiKE%ZrEKA?NamC5A+Yi4V zg7cyn+|wI%Z07YDy=;7^?=5aM=y*MBv|aGWA@6r-x7}ONBiL~T>Koc5Gim&%E1TO~ zpZ&CH&a!5IB<^Ywwdu_@tEdSfF8d9yt#Sx@DhOQ}oZt8}joy5?ZtOF=L)NbwVgjzN zUA?>310Ow;@s`u4>j$=gKV@*=9NitRz0|5ju1R=<HSMdI*o<#>cjMSWhxTsR+j?xX zc1JPq!{8c72MqY@TCU~wzn4WjEO<RS{gjo&q0QU_`_cvunlySV#<e*N&i2rw5iuuj zn7DYnc(k`(n5TAQm#SmTC-3juAj5r4wO$yfTw!pQvnQHO>FjzV^^>c6&*jG9Z(g0b zINa^VpD&xeopU#!{#MMFFgT}Zk9Uoxyqb}=SnELT-@e^l$J_V$>7?PkR_IlC9J;<Q z#sL`&ZvWB@*)EF-yOKw5U-s^*R!+;SzQ1oX@?L25_)L@W{ikQ)TkI|*Khv51jW6H5 z(Wc6s*1M}&#N0cSuiLrBu+Km59UHU#b#z1cQ#%HCx7u5+)z{6U$NjNuM^b=EfS=`{ z+?sk5Bu66tyu2~)n|OSq$NZmRvePy9Uuy+iOw6e+iys@)^g>7dC##xwf9(I+ckAjc zf8w1e!#8D_ZNhTTT^SG3tfS}juUGqbn;K)P*-UR^Y|*S~+fNR#<v9%QbE~MmKbT6k z%y4t8a%s+>$tQa({S>D;#k<#z_BUoP{%b$_ldN2aJEu?mwm9H`XM-2kQjH(ZF05sB zaO^+RzWrVHYD&-BBMu9~Q-)8{OuK5QCdaDeZ*Z_&Kk?L!^r&68$IN?IPjb(3LEDT5 z=-)SXC%LpsfBDwO!LeWP5$};TF7#-g{>1cGt3g-i9j-a|VS|)a==-@dxZojGI<|`1 zb2Ru>lkH!I$Nv`i!E~ecq$4`jehkuf3GQ?neu%+6@A3T41AUzJ*EsF`er`~J!-nqX z9nXdKlboyXzu467yCkeVU~oR(MpZIi^|C#ax$~IY>6HF?0d9xZ%FN>r8GMNEe&_HF zL3qjFx;2~|H(-6eho81g$)C7f<`Tc^+ZEcc9meJ^ZfIj{@3aB)VQAybq*oiA(3pNS zD*Lbci{vM?niVV_zAAjwLG!a=x?l2Lel~iK_abbZ=kH%n9&J4S=c7G0_xxec!!0Mb z9P7C7*A=gKOuBx(?|lD@Xg?S}qnWopT&enI%Z*dL+V6fhV!)_=J&sTNm{zln`Jht+ zIt;`3<1~|V*je}bkt4cW`H%ej?c?_wE#4elFl<%9hQ)8RHYXdsvTTBRGluWx>@VNG zsPSgfnUjwi%rYAL)4kmf<2(5M{BiN}BcX%i<DuIa26yPho+0tlf0mrs7}0m)uWLTo zzki?obn@M8SDUq)*Q9>mW3U4Tx2{Unf6hD%^Y7{Q_lj?0(u~Ik76gXgd^+l%c1L^9 zyGn1B4zYe+-1n`tjj9fc_-jqr_z_Eb7o7fUWTW2an)O&@F~n?D13k#E7He01`d!}K z=l32Bs}0-a*m?Ysc7wYNZ#-|=rfGu@>~gO1Aq4)u3A4Y4nmgRb?^$s2`pA{_Z{L0X z+t7@61@AvJjjUDB@kX7GH78@9hS4Vv``pxJ{?yRJAD1Ql89aB!5%*_dnI_NXwwzU8 z_EvMG6!S=ozC(s7zaL+lAKEH(|LN`%jd$vd9(Oh3$n(W6*Dp@)lwy#Ga~PQ&{5gDm z!<Gpj9DRo#44B#1ebL%;?!P!jCbzMgdw<TOsMsF`VG71(X3}Oy9ymP;@s4dKBp&Ga zN6QgSbAvYOb{uHp=zM0W!;YpWFz#XW-FY!P^>oxR*G7#m*ZWa_v1Pi$zCjVwu6)k# zJ0!c`W1kDyvz@i8Pjc>it?YKzui=etZil-ZcsBi>MWZ^u-#hu<In=6N^sh%T&%p4t zG7mWXG-0t}Qm;>g|6KF))6V(*F0|H(Ypm1UQ@{By_rPlh)*eMYYPs={+2Z~W_B^$` zc)+>#AK5)R?6B$?-}_~=sjl0MFwV1N{Z5%hT+G({Gp{<VPQSHCe^a9Y6Ixl%YT9v7 zSXh0Xx%s|m->kY3zl#%gPM@Y%e`JSH$FR%wUc~u7u6OURZ+wr1A89DptF488rzeBc z-mO37lh&R;>pFi*Ils11X0z$;j=|blE7JAG{vBa96aCIu1~;JPjldO>^U>3nYuH51 zU2<A_#b|o3`70d{MXq!{zWm28d@o)z>HM}!j{DVo>)7S9tk1^08EekQKDqd(d#eV5 z)%>N27oE|!+Qsm-_WgNm;E6@DLH9mxoKxjf-or&^&8y7HJ#pHq|E29Voi+=?IR=-~ z(m?)rno0OWhmQ}md!Ii2$fd`wm8Yct4Ak9wY`Vp_lQ7S~;B=Pl{V?m<gygE9w;!}` znEl(6`t6SDc6Ph6<-lHNw?R_0AG+O1E=Et+#+eSv4+}~Bu2ZdL-6mvi)Y$dScRH7T z>C$lD>?LDA;$1(33z%U2rlrM{W0rQCJBQS}9Y5axt;Hap?gs;JuhQ?+At^%;f*72k z-z4ezGsAAj^!cO3B%S?kojU$}+kM1@lz9hNo}5^7$uC&{&EWnTcdll%^!JCk=hk*v zXxwnspuHL`Cm)e%EbY+#Wy5hF;K$c6xQoZ)pEjEH!DO>#mczOq=DwYCrsw_bQ<lwm zHeuH6haEPdA9jnu4IABl{Hg`33sPd@uUJJ^51N$I$tQW;-TIc!{Wf@vb(Uj3%!Bx? zbKy?hvzGHL3Vw_l)3A2%+2Mwk_kyR5uHrIkXh=$mE&A;)49+9sXztuaZO)9(I_kXh z{La;NEq!Em9Uu0oHs!v?z%FjL;jb9n7qjX{k&E`#%i8m<!)t>RHFNwg?wgWjw0wWT z<&k@x*3HEHE`$50t<!#a)dq93rYv@D>~na8mA^DA!|2bw^&f^hulfDqeZ22saFP0x zcEktGaz1$U^Y?3~cBt=o=f*4h28+&y`^X-q4eawt5VkS6t1E4LE{i@MHc;@e@_N2u z;Hk+DJ6~UaWBtiv#7)<w$6?PG8Jt(UCa!xA4<4c2;r!>-5__ANsZRGZ_3v(<u&Ktf zms;QF<1AbTw`|#{*Qt-fG_{+a*J^pU#`jehW}NuNw|RWmDR!FruTxj!{a6sm&#(0h ztNASh+-;`KoYLT~_w)HjcRaDUV^Z)eX8e$!@2mp92CV-6lCHI{<|#*~w#UN!JRizN zEK5A(e`x09l$7@yhG#4v_YeFZgL6n7by0u(KAZJ(46fb!uB-XH8I4a2Ha-2U&FhwF zyBqgJKTH#2bTjGxJ?ow}iN8Oh+nySmT7ENe;F;Y$syOsmcV+v^0f{36Oi|D8GWr^N z{L^rw{PpTL<C`~HZ69B&?q$1eBMm)lWxG96YSq5j8|(9!-x%mR(SO6+K^JNTnss^` zd*=VK_a<;TZQuX+X^>Q?gb+e#LYh>Pq6n2JglL{<QcvVco(P#UPoW51GH1>;Wu8Lj z%t^>Kb;<mHuYJzLql=#V`S^Ulzt8vI^J=yB-e>K#*Is)(`<%5-gB5Mux9n-+`1Y)e zO^4yv6Sw1bhLziKy85aWJ6ng}?>F22Sizc4`~BM(wA)t{?9}zm%gs$<KXKe(M%P@W zdxMXeuQyD3n=v!5?UFHLd~V(<Zl98I?wzOYrk5AWIc^4{o1YrEabU7T+w|;CZ93Kr zw5zr9+(3sD7CJXJUu?2&b^!PdXY0(Zd*fPb?tW;zcB;Lzd8~)R`QbO39bad2Gkfig zlg)#j4Df9R4)<nQALvKlez>EGwMQQ79>QV`BqF@IF7Bi1fDYl6NT+aXMUMMej}Pyv z#=ql8>06bcYxMv8MjYos*@f^Bgz5cCO3#wxzYFYD9p{Ber|$z(cs;@gh42A{>0M=_ zN442^gC$}5RwsqyAy2Xpc0zcykk=mc^leSzsfRFqFO<S95MC^Vn;|?7Yl#>5%!NGZ z=tmTeM0lPQpSe<e=$pk7J~O2Fhy^|~kvBu&lY;OR(2$(Z5uPR$o{6vt(jy=PeFK?z z-XwX1up#K@NYTuf3NI1D37}6C=<gy--w>7XNfg4wXO$HF8maI~K~C~3THWkx-8rf7 zPJs`ajeRqf_)|Cu=~S;M<eead>1=S45U!4Jo)CTtdiu6A(WfI!XBv{c3PPCjRu{sQ zm%f8aG?bUV$u7xD-*Kfr)*XFMO^}oHEGHEvUj!tl8}gEW4@r2uAcL6b1)dbn5O{`x zC)xf;`UBY^N%{lXa!At2u0)bfYc7SU-N{CY!XyvbrAX4r=0uXd3F#)Fp?2Rc6{c_0 zO44@-VQSx8sqkK@a804U)OPYxVX{%8vM8PGOeEo#;H3+go=fj4()${?1|3mY3qZd% zc!6I+mo5X{RpiML=thGPwUIW`P7^cy{sg}U!07v8L*N&{5Q)>1=fu=DuMzhEegixZ zxEvVUS?(<`%?T8rEX0=se?oi>Fy<q17LWq)F<=$oQ^3UcE^uw&$H3~qDv%3~Y{WHz zDPCWQ8v)ltoW7^r7`PvBb6{^^;zN3%`kDN}>uVa)|CRdTn2ObJ5HQte3^3I%QHZAq z@fE<|s~;Ydu=-sDCb>$1seV}YSbel07uApIMfGbY#4UiSenWw&ej&hAKbqSl^|J?$ z-2Ht0Mk1Z+R}E>nZDYS^&{O-32gW6i;xw01d?4skfJsmG0P}-9pQ+#B(+PCMrw=gk zp*ZoOcm(JN023b?iw6$zd}?4Wr~cUn=^~`l4|Njj09yfLyUSSvcLBBqrhe5CnEI6+ zF!ig>zypLhtvwX?72<(HJPf!i(nkP00gnTA15N^l-!AbCVB-HfFzPJc0F1dxjK_&A zo&!7>@ts0^k8u4DAx?8TT`vYk-xAY0MtnX9aaGg}Z6t0A9005b915%t4Bd#SpHjRX za5%7~kdC^tbjVC|u-FrL1n>YMPV*_n0o*9yB;a`9*}!9f=L07I7Xpt3E(0cdYKJU@ zPv`ONa1#3hY6nxKry-qw)D9-V)DB+2)DDAzZGndZLpCw#m*SB^JQkSRh2}JBhY3QQ z^h@znA)X<`Nzc?STY;%v@_>5*(>S2^p|MHrQwuWn0VaJ>+!+0a;`jhKE8hi}^xYen z+O5A3A1K7Vg}4tewUfUPA0x!Yz}`roC!{YD;_HB^-TnZkb~^z~?Q{m1+AUv*Ujn9f zyDFsL6w)66Q@gzeCcQU>o++OJFtt~EU}~?9z|>y$zzM+9fT_K<154U#5p=QWINx5A zp$BR&97k}|0rZ1z*|?bttSiJ@08_lB5XW-J;@C36hZ-mD2|ORz6&Q1_co^_PU>YYV zkG10x;3UM;fDz^}hp}<68aM`WP@MV`$)}5sgd}bX{{1`hbpj8PkH$O6M{<&UA;2Wx zaA1;;=2wz$0x-!3VDjt+Ci!Sik;vzTaP}!)zFN>L$)^uGS{vwh4fNP5ad&|S0N)4p z7vfZI3F4!HvF3<p0zU=L27U#+S%_~F;yZ;n$wAlm0b?!~9}?n6h3hAT_!%LdFT@Lg zi5`82`ve?EGNM0B2UY-H46F>i6u3HYx)5J2#P<mC4(NAS8^v9LYXiFiYXJ`dt_$o3 z+yFQLxFPU#;Ksmdz)gTNfH7Bz_W-v8&IQIABt9v`i-1iKr}p0k$UV#Jm*gV-Y9Wnu zL_g9m>H99QJ22^YATa5b+LQDu1}42O1E%_)1g83vUa0;LfvEme9@Psb@vL6zz*Mgm zz*Mi+z*Ha1S*$+YfvG;!)>NM$V5$%G4~hJ`;OWJ_pNO><VcMtR@|S&61mvJ{bpiZ0 z&-wjTMLNuVU+DPnb63uf|K9WW>7@Db-wggfowR)XcW5i8<G*40eLCrK`R`#?PRD=a z5q%Rns;C!f`S@=bexFWKt_gVX-|RylN0{yhFl;$J0R3zgIWggmz?9wznA*n+pw7N~ zgLlUeru`1d;{u@HTC@-0bl_^h8NfAwR|3}rUIk3;p9x$SnC1~};4EMXfBxHW{~7+e zD2xAg8?SE~N7DVUnIH$z@!v-KIh{S|`0t8gZ-_AIk?L&@pkFuWO$iwHT4EI;PI{m? z>Caivt3AT}H?nv>q*rM^rI3sGJOw5`6em6uCq91ylm6@h{P&*zJwDFh!+#$MZI3YN ziORPH(66%~hdppT#2tW*fV%?II_L;&CB#WC;-|xW|Nk0(y5Q$6@T2}$u^roB{-JV- zj{hzV-%o!;XAe65yDeYu>!kH>0Dd6h41uXU;!ph=drQ`zCFRk$5({#*M3~x9dR&df zK3x&%ICBx}60NXrw?~-&4#vM%KJnzg9l@W|RIKk!6e-aQ|D6TCpZti9>Z8c~UGv{f zs8}DYeXKq>H)8jv*du-!$Gks%-p~Hu<_YMH^niUbecG8@58M=Z6L2fwEx`J~TY=jE zZwE%7;&uQ_`Z@1A{`>uW9O$UOih*kbWAD!9neo6hUXp<&e0V?W{~n)c@Z|lCV-Jil z)mIfb5I{fLKhwCS{c|lLPU|<tTL9Dk*c#X$xFc{NFx3}pDIL?XeQ{6VVTii}4+kds zsa)RwHFzNWuas+pd{i!tZ7SCZn9A)AO#AU(z*KG@U`e_52=hLj`89*el^!pBahb-4 z2Qba|p1@S!e!xwDu{ZhBPk2AXyq{O<hcvz<>k0aRxFO;Oz;l3&foY$NJ|V{5lkTa+ zIl}b|z$S=a2W}7i5}4L2-aqSqhQBWO2Qr^P7$;O-h4n;Fkb~%WKa)SFgZzTONM4_$ zSLyjf73}~LP7RpKs|if?q<kVl4r&Kk^Vx$oLCE*L^($0Zzi_U{#!)yht=AF2G>#&H zCFS#e0Qo&##r;Gp(2=}2?`C}TrSj$cMD91xAF|QeHOv1NSW;f@zmSjS6y8VNSN+N( zjp{-_j3F`MAyVb=KGpbktEg8`p*{KmQ#<vSY7gFT*+0vt3myeh^{UvPu%@v36J4PU zbXlO|ePQwbl!%`u($WC*!#HE((hV4UADU0tyi4O2ua9%MS7Y-K#*vuD<X~WTVA2zf zEz;8<V1HnQxd34Bpm~qnVRIqC(}6>Q7XXI?X8=b4{|+1pycL+rrFJEGd7n%F9rBt$ zUf!P&-_8~LeE|A7NVq^?>K{QuzjsEM_qW6Q`k{7_-e2v9KGZ>T0C*DcQQ)b-$AM=8 zp8}o(d>WYaMso1}UB1pQ((?w+K*b>8@_{M+yi`8kHw!-=D#~vp$Zrg+h<t4X`KdhK z56bt;+ar{>S12!6D39vR`x*Iuz1M+`>b)MA>b(V+>b(t^>b(P)>Wwo1R&RZTdH)u? z{G><e@tgoUkkIq7FM8trM0}-}*3$%mJ{g$mJ5k6-eVzBM!25onc|aLyG$!bWGhw#h zhyqp-;x&OOt^-WxOf<f5ro;9(vA{-%;~tsGMf`c+1OFNR)Ly(z{?~a=y535V10?Lc zgX&G^ACi8>+pqt#e7fMl+l!-K2v?lPS_pb2I^IV6=XBK0ylpfu2W={(+xfE~KN7$6 z3*P3Kr>Ez!()7(i2bT1V_6t34v&++0>_@bZBzoFMl3qw2-tP7L^b-a8Nx-?(Q93Ac zdVo83<hU{b*9-fSj;QlpInEjBB>|X|JK+AY8^`%#lazuREPE%!%`wg}2^ZiReK%Pf zI1ll>Ks;maim}%P_ga7tn3!o(^#L?w>ye8|Ss!H>_rP_e=Ycj2X{Fu4-x++sH^CR@ ze4r`ngE0hL&<S%A^2SqV?9IPJC-TO6Zh^8KV0&u?I(J;R0be`JO`tPDxr=aZ5yGXA z=_>MT1H4hLcYn~i;@Ooo^84Vv6y<0KAsux~MOithXCCOp;O_;w=MBX=jC2z$Mz$zd z7lSL$AN>e&JNAW6z{4E8?4dV%<kbcL_?`#@ltHJCx@mz=Civw+pC-_)H=qE#@=@k= zl$DHng`<ozEO6<lM+$VIk2G!6%?jm|fo2ivs1CUc&=!lpI~)2AMO$Pc?s*Rl3MfIn z%aPX;@+jJ)9l_rh^`p(RF6ijN>2b($+!Fb~(->{E8Tq0iBR%`nL0QJ&?FC(_LDmAu zk_|aS(JorhB?ozYas30XJ0mPcx*FoAN#AJCWa!2b<sXL*oc)j=paVJVksb<}63|bQ zQOC`Y%Nunm18+y@_W-Wjf{yGk%OQihFZ6+QJx8>i8S+BjG_)hV4`K!R<H5HGy3T=K zL(xxD0Mk*X6|V0>`8l|rjJ)B{VGj6sBhOW&Z-%TXsOx6vG6iL2Lk4wE)B)F?Lq92K zFLPX*j`VWqMjN`bLK)M+Hxu=Bp=;24I`Zm6o-FXUNBe7`{=U#vi5=>DUykzxM57)F z4v-Ua6`*f;q3+7iu?V!D(Cu;1?iz^x34YnQUI_Z<z(tTj5jqM-`HsNGpe={|+Tc}y zIz=O2DauMm-^+y@&X6G=_2Q7Og>>_-;ETSL0{sL+kI!*k4f?PL-)z*?8DnY}_-uw8 zi%^C-%1lPR@<CgK{t=HlmxDe9@+d?0)5uc-{`%lo1U-b}+8yXZ8?@1YeALMnvMEA; zi@-AwyhYGi9{R=s(Ak2o75YmaXnoPnCSK4ZczQt|b=08<Y2ly?MEEN75e*23Zs+Ag zUcdoB0f2nCeE?QJkA49#2RH*t!qC3J(ST&YJU|v;7oY@C4oIC19bCW|0PM<x48W;D zkOw?HAINc=P35?Fq-CKWT?IrVEfv>NkahqN7>x3*6gd%a0pcZq6oivAp!bWA39tz9 zY=AE43V;<u&{x1m7uPa@&4HZ(-T+5j3kCK9jt5QwECPfgo()_IdGdhc5ibBv0X`16 z3Mc_+7a$Iv#=zx>+XA}-^h43kfIx&r05KpQaTCatiEt*uCCF!wcn-pOfFgi$u^gvv zhBW|TcU;Q@ZD1<O1}*}W0kolKD}XI%eL=Gbb@xKp_7dbmdMI!?u+}h?i*Ppbrvh6c z?hHsrH~}~tkPA4C_-WumfC<VjLi{-(7x@yv_XE-uFGIJ0GNg%6rv7m71GoTmkuCx@ z0Zs<C1)c{Q7vMlZKDFr@$bj&4@XH5H4#Ib4Aa6KiMz|DUg0LgN3*d=9kp&*y73c;y z1!)Dqi-1o9iV(g7tcL4~b5XB@@*I6fF%XaiedGWa0Gx5X2sj*AEfVzso({+aaMp^P zI=~mO8DMXt$mIj{aHt&*$Oha2XyLHi1&{#P3{b>jw=bX^u*eSiI-{=wrrRrWCJu_+ zJOI~45%Y#3r`#2M03QJEj*46^z{?47fJ-;@1%NINd(!}S0D3s^4FzNao&(H#U<?2X z09HLw9^eDOu@`g#I1Ny90dK%&fR-!x1CjxE0QPR61C#(<dP7D)K0wzUV+fD~$On`H z^!g}rwg68+JRl9g^@TiuJb<2uA{PkA0vrHb1*my~rs`LvfhrADX`o62RT`+$K$Qln zG*G31Dh*U=ph^Q(8mQ91|F{O|j@+M<)1ZO_ZM>smy`%hxdHY2KTAByP1bIh<MGg;& zi3|$&4u}!OddK0vcWg|6H$H&Nf+D{dQCzflgov_H2A0!X@Ch0j;TIO!7FS?<$=Pbi z`Qm(stHaggf`SzVT!V8B3y6t|jS3d&>i0F!?Hw%&iwOG-&Te(PMny!2g$Kpp8MB^- zkI%>eA3qV?;QGgjf@1L<4Lyy}pz!FR80l1c?y0BYCkn^6pD7Py^obSuiGqA0{388A zgpXDeO{^%8Qvn_j78w{dDi(fq^)$Lg#YN(CcVSUD`ym<!___NTjV7n8u|XYYZ~X>% zc=q+d2`+u#Ls`Q>2k)l1IP~rA<kQ2=)2X{tU-D0@tkDALp6)(f9b8<xICSmh<K))A zN8jFVKK;%3e0Lh*jO^QNki$iTUT*9r`1|J+s1%%=0#pDv`r?#Y<BSzAw&Q6+KvYCT zR3seFMg~L#hDX}QMaG7OL<R-wvhQGlwjq29n*ight&u)~QE~p^K|UkmqDZC8x3H5O zo?~4mUe2fszOSxCw8R#lSo8@Gi$sCs&z1Q*XLPP;A6E^$d&LFH;~9Q;oSjuufoy{` zki;F<r)Onu8WI}VsBlAxM#bR^%^D{Ojh#j`l_&4x$HYgF%5nxHO;(l$^Yg2V^zZzf zn;}sX-;5#^ksLk%Dyt!<rZJb=sWH9(5)=_F8jW7TJ5(lruy%rO)r8|IPl34y@Ft9m za8~x;bSrTiU8zn<o(YUcC#KU8KhSAU)blq+*A4aHzheMhjH;-MSVp78bRmdZ5q+bJ z70_=wU@d@j@jws#uo7Jy5Oh&ZigPt1jyu5XA~4D)JSxBsohK|ZOcaKXt^CFh9FkiX zc`AN?0nIMt{rdd{=|1vf|IHk$i^MNA@s|G1f^_?Z3c?CQ1eEY;g8p}02AM~IwxY~5 zzWBTf=q3C&ab%T~_*Ils^35J)*8VuZ2MztI1C*iL)4ZG^_+Y~~1MX)!<?|^2WBGJZ z=8xpd`i^|&&||?*<ol8S_&onyzVGQzG6%Yl!tkpHpl+%Gs1E%V^76%oM#Y5(LWR+z zef%P$M4?zCX!`RD5MeRFPX&F{Rg>B~fXy$|H~GBPznPP$tx@go{aBx@g>Qe*TuQup z%LQPbQ~EMbe-LDp^hGM88<>^JC?gyH$n(8E$@BO%eX^V2<6KmOuVyrmWL??O8qbD! zd3~r;3a-tuxX`-(Z69rmHGn#_7Wnvf$NQ=(O3Dh=l++aJs<u##Qq{wEyNp%4BJ8gu zuU12`(m9jXp{7@4TZig0I({8;h76^EpRGegqYgQLv<~s>)sNSrTCBXEu0{5=7D>MK zCA}7rZuow}e^)M@l#O4-H7AsnA!d4KZq~o6b-Y6ky~m?2_Tb}3dgq{XE!EaaN(!2) zt&~(0szLXpb9}F?vbCT3>Nr+z<?GZ)M%PVP+kd=PMKQXcu2tXYN_wrL`jD>5AlI&j z7(4Ab_=~9W*IwnXo%%tQzxFDB?bHvd{IyT4^4E@jQ01@vU-j4iE||uVw&B*dIgej= z$Zx0W{doD!dfIhv*>*o+nQU0PF{gRpj^$PU+W)WnYp?RdUgd}Vf71_pm4Ef`f2XC& zzj~E_^(z1BRsPi_-;28DK>M{S|LRr#)u|s;`B(pM^RNED<q!Q=`!BEZBVOf4yvmPw zl^=15A8}c~8}Y0Cga0@9^ERi4eE89`K(YtNBV+dbk-{wyrsskb?uIZu_o8r5gkJ(u z0sQ+t{Chuitv1q<0rbOb9b$Tnh`h`n3i65ZiU;Qo+#0wKuq7~_F^XYo%KYYF3(5R( zxB|npllkF*=_vEl3Ug3#Kco)@hFK>EQ(3V;upe*`Fv84kJsx5H-5CD)CCQ~mX#o0> zT!cv;Ent!duQ)Mz+5nS0c=d_N15;9t%7@7*^9usASXRCxFqMzItbBSWM^e5n!u<Ov zU+w1QkVa+E4?1RY>LSd)$HDu*AvvY#>IifupyS`C;NQ(4I(jBbx}+c8HxLu94~$FX zTlour{ym4U`K0;d(IulJ{``9e{JRSk`8NZdB52Sbn4cq*`z0U$%>S$W(sH#19kMaM zM)aP6p;SKp`Tf^^Bb_e<bkuLcfT>-FN#*08KYwjk>3lGe6oZ`kTcP%dLcARBjC{`@ zL6t9p{|;XS|9|vBQ005zKks|Mq>du<Ki~}f|C$eif8u{Y+V=qY9H{7Lpfdjg65j&< zieCX~p917h;75K0zUM<Av*4@$0BOGg<TD@-*M8<N;8*$zkoFT$(MLdK{sAPu0VF;F ze&!E=d;yRj0P+Dqw*S(0|NqqHKOFYzX@ERHDL|_qZ0rG^05KpNPzd;M{*m;9e);?V zLGfXt|GV$~x5Ycu<FUDn$Hq~C6NSbE`Qg=gdL7z_D(-_oxW8Y(aG&6~$N=c~pV$dB zgq=V?Yy_RWx;nXg_JDOjU#G6U`#Mq|`*&>!jtcL3>e6NoKfDIXezccujrV6A;Sdrw z1iaZquwSgmCnz!?DljO}Co(QPJX#dvBeJoHg2{!SC@RKwWK>w7E@%UT0>brK#1K(X zS(+PvF*^v4iVQLS_M(BEE=$lC@){caquh|S7T(`g!KPXcx(|!xZ3O7ud0u{5-Zj=0 z-ro(yr#f(d(h`1YoT;5OG)O1JySE(Ao8CXXF4za;RKrF5=w5~Hzvv#OJ@n=xt+&{q zP@j-EzZg;*bp)m-yRUlFH?Xx0_lxik^z#X{G6@O_3a|_g4mN9V;U64i5zxN9g{hfo zu$ig3NsyVHv4qkx$lTw=I>6k@#MIQ^)Xc)f!m7QAdHX<%U`v0K0P_Gl-Bw?8FUbQk zt01!u9V{#?tOKkA{gJnWnWdSPsg-%4MUc6Loi5#DkuDW=|E^2EPW4fHNA`|0(HWtx za$IZ>EPmK~)4iZ`o=%6+kzVM%<u;5CuUj)q8oqs8LF>o#)STtTw;_bQby;3}A#XdD zHy}L7FA}Bjd3%6%D9fwM^7i?XSCi#M)1h2f4L$Vh5=>|oNKmU@my_5Rc%pqJHYh}+ zhIX`MG_AhS^b=?#c{<=az5lHX-hco3vUgT%!PbQO50yv!YH`&xVwjwqo{O6m>rZsg zNBWiYC+cIQC(>naIbN4!+hC70(pzu2uX>|&u;oZ6c)$FMPN+{73w<)31}}c-vPk9o zCB-k+tVUzmSFnNlFY1)7ZESqo<6m%Cq@D?M`fdNz<eW6{y%FZ4lCNWJ*5@kr8wnlh zPeNA@eT2S?rU;#}_E)N*R!x=f8$WJq_3_QYgWC2U(<!yBC5sn+iCcWr)^5VwA>Gz) z-)U>NAGEbwg|-eB+By~QdDE{IfSSD-pcDE=GV60<A6QMn-VF=UaM(QvvyWspsC)*o zV|x4z2Q+dV;}I4J{$ziJrA{bAhtYIInR49Meo8dG&?dYb+MsdO$b^8Q%9tzB0BQ=g zzKlOg7bD%8rB`R^k}*f$XRO@jf**6lmw3<^p)p2s_m=xAH>J}!BUz=#lpEI9UP$|% zvTSU8e8Np_Y$Q6XbbbbZ;@3|`ewEJ1;74OSQCO$%(BTYzWamOZm;rJIC@Wji-qhS| zoyHoBb=oI7Dl8H<F8tE`FRrgx6v#d%35^bKc&z<tZRN{UVR35f9ZUu_*4FdTFGY}* z)=@PDP0+vw3`RL}+(^IhxFD8?Z20!FJW8z1$rhmnRZ8B+CpIV`E+z~{c>z&T!^6JP zZ)5bzmD;(fU>*j0RzBI}C?ibr_m+$PMxW|*IEh~q9&s>%WBSZv<zW1L(I>y}`A_MS zba9rIss2U3ybLN#pGDARrm94r^<~l*t*56L&-(wizJ?0@?}MN(nrkFKFZ916X?>Al zP;^WbjB^76V}fF1|JM1w>;=&`4QR{3`qywA(#pYeGtC{;zj&Txe`Tl95&LR6E|^{G zC3TJF28kRM@E3b5YJ1|{TaI{ZXix^?*ISPGS!?j+z%CFACXKZ&LS0L0@*IV&F|J`< zZwgx?>AJGfMRN@HcC_iYrR^<0Z<>J?`%xG^2Z@N2q+Wb}1=g-GeCE;tk7=Bs0NN`V zV4T2{Z%}Mp_?LW?^d~D<j<tPd^_KL1;!E=$>44<Hp5u!=RM+2xb)>u&mHF-d-vRCV zoUf~7`m1!h`Z`lqN(z10Y1pHTihFjxOl77EcU`&;rD6dK3$$Z8r1qE4{8$hCeqOSF zr*b6wEz$?|0pi_T?kjI;eH<5h747NiN9yqbkMeKzQRx!;RUeg-GJOpEjz0J@YcpG| z!R)%Nu<`SWz!cBMk7T`-(2||@5S}&$oAa1Rft2WIUXaikg6=ZAZ?dJCE-vz0+g)_& z5piKLLC`$ke`%jB$t$bwsZJ8zHxYDC^?>gGR*#0bu8p!tc3l5P_O`gDi)$n=<*iI! z>Gr(J#?-g{yEDpA#)l5DCzkZ@N|*Pq?O7=)Yfn3rQL%sXW&XT>OK4=(F_k0H@z46V zWFJvT8#w$V^Elln)CUiBULX9rhu$zEF32YoJ4aY`i){JSP;|ODipThciDGdZ`wxhj zPHKHeCw#g5T+goqp`hjWkdkY%>Vo)7bRn7V`T0MT&F|xd`CSid0{xl+sQ&aEvH|jH z{|h=u{3l94IW+fG)C1kqHe+SiXLYAFke8(f#=fh@9kkhTtXrM1$5pMN8VU<eMUtEL z*7J~_2e896H6;zUM$r8&=}Z?ifB#A5N8UFA<?9R}-ZW>LAj7wMwAL_Svf<uSSSN=H zYe$KoM@e6zb+QBWXv^zSGPWvR5Tp-8NM6#B<#+lD&sQG%0^Xkl-KWdiH;A94Z_xZ8 zse?8i;L`6PfOJaO2DFaf)}hi#{Cjn<u22VRXII8|%a?ZM%c+5~`Lh*j(^BY_zUggG zZK`I-+Bq5VYyh22Q5v<e<Q#+OwQytLK-ZMIF!~(Osw0ixhdVKyes3Qh$K<JxJmgzL zj$6#)4Y?Y4dM_!X9`sFT!{q-WLVzwPt1aij&OTE^NO_f?eM-i45-UTUwVf`q{{6?F zsWil1z8Wr49b5sV52`=aQxo^#)$oxTcs<5FxGCM<v9!;OH{F-FH{;XzK22>QY5yiT zv!#A6#<)@70)&HFc$f(f5(Och_J(tLJ{+CxQhymH^m#p6r0}CTgZhgw1h}Wd8H=RT z|Dz7`^_U}EgmVr_|L%%<{&*boXAz_axmt9-!|H5KvQgUWFXs{MO(ki6*Vk9wNX{uL z(~b1lDG_ubJ^sz1XJytd|72~I93<--kgPQR%_@u?niF}xU&lY4<;gn!iJzqXsSb9+ zTHw-vO61#;a5aE0Xw~^T2uB04LE%9GI0B~=ecF;%UM`g(xu4L&yh%Ul`w468$+abA z(2l0!{e+L1&~A1b9e!{>!RM#@i67rPG-PGSRjMb+y#kd5J$-YpAn}QlC)7i@6@-5Q zj$6<g{_^>Hz_k+TCn!E32#%ZJc_=t6oO#)x`}=SV6!@?BdXWw(ke}uR3^9R++E3)< z*f}fhBb7l<{NS_XZ~RE_gM_v{K!X&&W&r7RUSC@8GVXN(!lPn&dB4AYw`V-RuHSqa zHPAM$8polxP{<;^M*nzRfBQT_vOfQ4ZMJ6ReqEa-eNF`bQuL$wiRNy)pUFU)i*((; z-O<_D2$iJ%v<CM<a(GHlJ3wS*?L=dc&#%JTNuMtK?Z?Yc{fXvS;?rABnvb=Hdj*+I zg}Jp1eUE;*06OO)?2obN%gZeIv!YH$*ZDp#hx=uAn^U1b@p<U{(LsZB5YKpIatqKC zD6bm$!siQrj?V6p_&Q=q5Xx)G>Rbm@$5>u{<aE>s#dXTB!tzVqrXZdAawv4fm(Ax7 z#hS|J=bwv2gRT|wlWyQk>u0wz;MYYX9#j)q`3sQ`{yor!<~X#XZ*(X$R@GMxf^QWS zcvJ~hs->W+q@q@%29qy^D$NB(#rlNeaDw-BL-Nsi6VI;&lb6<fUOq)Ok4$0tqOtks zvr!&u_oYmR)+|rYFL~OtJp%1fNv?U2%L#I+DaNWPs;OzyJRw=j=scIkf)!{)0RAjk zyp;ABbQVwPsQ`8sTunSnO`*n@{fC5q4z71&{6o|fmDQB-hociWjat~B(B88<t~mo} zY`IhQ|NgUYhO{QwSI~UW1GJ<^;z@E#&XH;T)WOHgg}sG2v7!4@Utl_;=`HtdpQCG` zxJG^I%d;7wPti4MbLuZ&^3mNp(hPBp+L!tQ^8K_gbi>(lICw}6f{I7fm2Npu4BF3H zV;pNsj+=_M=GUp(s1^DZDF?rv0MZZP0F=q=B8AQFQF!nh6a!a)<VcUs`f$t#GS=rN zfZvbCBhN#b^&jeDdQ87v*!@j8#(kPDK3#-1P*qk^S5Uznj{MhWb}mS#c9!%dYUdx% zpZq!@IR_)2^t>kcOM6<ewj`aCykFYn%lu)j;lyb1eF<oV^yMzZ+hU=jxQ`I;DCn=h zu-+62`lI=leze{<gZ@Gpy>O;1<9b6!hqMpUMgEHC2s}SUrUO>c-~LJN@%Xipcu4Pk z`~`W_oAVi^<!u4l@PAES$*HeTR50o3@9QMZBRp@}WtYAerM~JW$gag67<{{@T8TL* zT3Yss>l>X<hehH+L|C8?|2U#j9a5PRUu~sAnSG%)(wQqj6$^%lFEcDw@GKeV1DBY% zM(f1S=3z0*_jMlL&*Jhworf1N8UyH;=4CmK&r_Y%Lmy>+=O>(pTWkEr@_rrn5+7=T zdVDS#6I3sB0amZ$j9x79p@tV2zCZRQ<C4ZHjmw|OLHe{2*8AjEe7S>xXujzOp!uep zFIN;pPl00iUAJVaA)Wqgp5gP>VfvwYMzuE0<K3A~TT#Whh*&TUlI%UHPj+E6s>suY zJttIT@!psx>@*@+p1+B~_|sZy!f0y>aXGFNi`QdoT`2VG+Y<c*dQns2pLNk1Na^uN zccXO8R%~vQq~{^MH>ImPq5rsQBp`kOK<6_GPD)B@O8j%7RHWqs_&sIsFKZ>ula<Yl zt+4(nLlcs{r8{`{0Z_RlE0smE(c1N+d6M>bR^UN8#q$*@omy*XF&*Gta9pGL(ol%g za~6ts5aOg;igy>{lJlju!Wh@by#@Uw_ZxJdX@fc0lhLR6II*2z<$FP%UhT_Xq%Z15 zI%3TK{*UbusP4+R_PzC<`fy*#oG-{owDcnxLm{ItlTq><{>$MyPEUXMiWr+O6fh9v zIO%t-NJso0jOY2&XQ1E6PP}@{eankvm+03~pNYrqY}5o8Y)Wam#tzV6{<(VH~? zOo6}fIE}qyM*QO?{Q0f?KWZ0g{?6>Q;P3q-Md%*_d!|=v#~<xYc=})4KP2~IT86xi zsbA2K=DGgZN6Zs+fJGzV%dAQ_&Dh{c&Y@^da6ujK03Kni!)+g%S5gr#1h8j^EbYhl z|4Udo{If&J+`t6+`#;uqB=0d1Zz@x|uV-Pr($5w^>jYsdOtNW0U1EYl!eX&Itk}nc z;Fg(f9s`7zA(4;nG5Plje7Z_fCH<V|R|_=!bAWY>e;cj=?qX?9)P_#40@(Rzbw#zB zDl`Y+JrkrA0N5F+kWO_bAYD>E@~z6QE9o&^79vd%Y5X~<-j{h)vZm2FXJzjv&~vr5 zOh%KRt$$3v5<id?&ot?t<0|7p=b7y-p(50YpMUxH7ryF=+Qd+pf1HhplEx_is|G}K zB+rZO*(>e;JndIM&9aR1%H~H?LB8jLd==;LB39QFJY>WJUSXip+Wxa~%IEpD<Fpmd zf-xMqXyGhaa&uE*C^Em3?%4lb@4~^(-f+?=-7#J4Z!P+0@7QyJR^;nf=dKKNxOL%W zt2dJ$1UBA)^Lq>qU4_F7Uu|w7r(_kIawl3ZY3iHSzfa1LTX(8YHSZBB_nyDR_*!Z~ zbfyVzu^WQbGp9G*dGzj}8SitJWWU!Q;Fx6mDamr?=fOCmT-l%K&MrB>J6E%)&)Zf5 zC!T5%bM0Bcv@wJ8Pd;eqv8MkqpSSxsuDK)8b<BME#@E8Kcjy71!F4Y8Xq{QAbHvEw z#?*avr#xyhZv|v?WOSkZYudGq*>NcJRf|oZ2PPd2daskEH2OgG+N*+<Y(hJq!I_ag z@jDg~GoZo!5d-2jv~~^&pZ0XPxZVoqEyofUw11%frrGU2c%O&SHFWAY=4iX4Ml}X) zuv#)MaE;+(kFuz(r>0$+9PM1J^>7&cb`BtZo=5E`)ofz=^ku&ZXQImz7A={gy6g7v z;<EZ$v#$@1Hf#l3M<!plrc>hktZDS<<N7g0qZVk`B&}GuM5)YTSpMv$CR*lJYjGdx zK>R*$IsVaS`~DF>_6s7by?b3R;x{0{L1om9-sd{!NB65WB(Y8LTGJiPa=m*$eVd)0 zwbSAV$H{8%Zp8SRN9|n{(#A;Dv~XSFlBn2-^-k-iexBsF?at6@SNk66^orwR&8Xbc zV-LNTc02Fi^wvg)eO>oFODxuJ*5E|(sdv`lMvY>R9Ky2?#_v<~;BMtPM~`ZShrhEO zH)Ddsf=+kFUsDJlJG<A0j9YzE@f~hE;&-8&dC%rfu`^5+&fnN2>NR!c==#^&?;D*` zS2^<FvGeVxVV}p^E%ZY23~r;De!HzfDYcV=Uv4k-J@Z?u8$o*Rt8-i(|HORa!uoT3 z*lLAQ0j>1gYJZs6XnM&Xrmr6cISe`K?j~w^b?cNlkZnX)Dz|b!6m?iXD0C=W8{x6| zjE+gu?t8jAC)CN$&FX&m&6Q1~&X;zczYX$DX8b<2joG<eM{fN%2g{mQCwu&Ms>j@q z@rq-7dTp`2HEH&}-LPN9JdJ*!tF9S6b62CB9dA38sh+HREa1wnF*%wGc9&lpywhs+ z1diKcN_1+eR)vm7>IGg&KBlgbG)&a;vYkrliq_qq1bp(_kiPx`&Su!S)X<L?ZFo50 zhDCbjotY}XH|sO9t?|T`b{-KCjjK;7^2_D8S&W~>{WGVJ&JNt;+2n<>g8cIHGwK=b z9roAQg(oy#jp=!J5XNOjH!62phdIan>%Ot<`bonzt6*Hl`MA<67aZF*;f$uuO}=8? znd9mJbQLDIxfoJsduLtEnOi3Y9;i9B&fK|AcWr+;ykUNaY7KYhIAM>@=-!J)r`FJ! z9_e;9=Uh&$^KKh1#&xf2S>0**vRiL-0-t`yw@MjZzpH<KR4Bg|679Jof8r(2J<A3f zS#(_2utw*Y`<v&;VMEAyvwl@_Bk`>bH=~nylk1z=t6ak5UW8=St1H$I3P~AIHZ!_C z$Bkihtqzn}Jr47UYsDq+u{+ylP|N(_EM>dC+LqSm=2~oNd6MJivi68p8NDSbc%t>* zL!XwdOz70u^8T$?=1pdvkMz}el-AevBiaph(N(xT>GQ%DbzYA?cj|GIiJHUyDBk`k zsgwWy53?5>2=AAa1RaYQUGB*p{gV{_nsYKM%5Bt<jQ8g6-sL_0?ZL(ytvXI^(b(-U zzGvTo_$A!zJ$dYa&U0IRIPG+7x&HeG`z!j%&1C$<5uaMxOiKvg_hEj@h0rPE4mduG z*sT3*N}Gv|HQp!=R^Yh19f{x4%z*cLqP9j|nmvD7yGGIDUA5|z6f|8hPW4uH+l&z| zc!pe`jgMKPd!AE#=dDU{3yb@xx2=a&w?6hkWn)_f-}X53*lE{eynoF4!MrxA;wNLZ zBOh6OC{c1bbLO#4k8Mj&EBw`0dFSCo{e`1(56t+DTVwcp*6Xq@#WSMfu9R(dHEPtT z*N!7o<sNiA_Hsn1{8Y%t_*I|3^ZmqUBU5XA+O*faY2MM&#vKnScX7DBe$P&82M-0T zM;e`|9zC|`FUm1G=kcKYeO&R4hC@2P|80e}oBM6EK6l2u_MC>b&5_X!+cWa<-ctX> z>o-=fH!yKs-mdJ)vW%dQNx#?dp4ilW5cWH(SU-4tRx{|@l(%_q>stD&+`YSg-ENWh zp`;_pBRBe;sM&qXIJ5_&Ym}&-rC8%hZnyb+o-1r`9^S&}%Cd2_7F9RxQ`@(0=aINi zh-2lZy?J!^#CGolizbsl4_b8Jf5+z=eRRxftWPT&?!Wo^S;*%bLiK3t`1w)r#GN<n zKQ-z4)~1Hpv!otRcTO;#T(+%~VRZ4d_t+n^a^tc;wXD-&+H1chuCL$BN-%yA82*QD z(A}*ypKbp={NvU89QTgVEj*GIlYBR!bGq8GxQsa(&mYen`DDw1<Y~*7#l7s?seBp7 zJz(-J{+RT(n}hpbVF8EtZdy10ZN~`-&2_qTD89cqYbf`4g*D90Sikq~*usA2zJ7z0 zI$ipdE@y5cO0askS>?f|k-yiO|FYV$BD|N#`suBE<63L(erUXQs=c#$tcSw+;WwHc zUuSbOd+m*r&4Zn=$IoT!zPq#SisOBcx-DzdFZ}ZMZ6`dE6?(tx5Rw|1UbJbe;l!65 zx0tPiC632p!n?#qym55e7SN|q?%vYVe~umSSa;T_*9|idZJEt+rc8gEnhq-PG#z8t zuixxk6Qku<4}}kZwRR%cZ_CnFApvvE+Hu@g#&71vH+vgQ{42S{#515rSMv}3)?JEN z^k8{xx7HH>Q*{SYd#vAhX3SQ-<VkL`>*lDfewG;h@laHU@iRQPwKvRqe!HzUXjna_ zJ~%pQuff9niCdlO_Uzn0HPP;QR<{PH_Geq&)n2}-s0YW%>d&e@D>t<FV1u#NPqtsU zRM<DOL0JDka|V~pPF-7l`SR=)X>}C-z?lgv_xX%NQ*Nv7y>@r%#k`YE>Tx5+YD9+B z(Z8tl$}eftw(A!;ZW|j%?fmu+3pzPd!=v~^*5sNW3m(nXZC!I>{>d{&?pHUNbY6#V z1mloOS0SYBYW=v5Q^o||^)K1e@<fK(yndz+XX&hMpKMf|t<-pz?EcC7v3h)N(7fN8 z*0a)9wJt4Ow(o^v(;aF{8Y~#vyVxkSnbqX0V>xaVTW3sfn6~_ExmY9n*uzIo+vgqg zd$isztwERj2i@0fZrtl(0p1>E{5JJ>%w1CK)8kFkn!```X!2ymm1#*OtL`6H|2?V9 z)hs@T<BD1T^B9%p`CL_JmYbK&Htq6($`-vnW0fy9RNrp;=T6m-sn<Ae2IIHF*>UsU z%eMK;&P=iScy8PIwaxO!`p$Y*tKR3p{T*thUg5YmjGxgUH_KKHrt~a5-NUuffL^6X z2R50nH9pee_HMoS1ATjjVt;B*`ZIVhce%i*f1-M$*`nIZ)_XW)j-Kz*@8Ql4$J{~| z-`2Z~@yqI4xnJ+bR>aTrQ{k{3?d<pUoz^+c$02?3sL!2CUrsq3a{6FG@;k!-jB{&7 z*S1gXqMjOoO8d0zyz|me_3hc=VS@g~UU|QjbLDSF9&65V!QF|Un*V5pOXs}qid@ec zjIO@hp|jooyN-iK&YQY->8Vk5=N#m?NsR8^@QZb06;3?LzqqpN46UXsJa)>r`R#y) z{M=5qFPjd3zZ>`NjLvJQ?T8iA)63_HlCB#?s|Sxh*4a08^@GNS*1gv{53?5IIVaoi zKJW4T!X8&^l?<z`%ccYeTCD9}(Vx`-Ru2=;THA)K8+~l`sYTW1ncQ}+HEDZ~or~nV z>(9tqDQ<YPG427`Jmeg8D1XY#_UC@=m&SsvGY*#xnhrQwbT?ZysO<P`n+B;W&5PXJ zJ)SR*>JnYDKKnfSALI8|2dmxUT1}?pjG1lS+;`s~qX31RY|RTh8$SxS&N%VtA;*QV zb{jA)@0d>4y!^%wwm7*TTlLa(OR0FHc=d00vy7HbPCSo3P{R1lpFgB*(c=h3rIwef zwRuoyS*;n_ClC6yPI4L}@goz;>f1WiEwzS~C`~i-{6mLLmjWA19k8;y-ocv}!!MdN z*Sp;c_wblIbQN~*SpBp`(!)XBcGUU3&8$&<&u#Bf)1t@f>zkJLNgf=igZ-N40HRBl z+ot+_?j(mz`x@oyC`=3<(bi|-lR+OGqwj5hm2yA2DaWm2{XRZ&!YiZV$4wuu=(uWn zEv*~9dtSJ&y!Lj#?lVHxrxwh`zF1a&Gs&zTu7AGn+U3TE`e!zYy;fcCY<V^QNy=Ea z8>5mA_g0>E<P7@#DJGwKW5ZnI2_qBc*S=;m>*eN!ipM6@d}Y~XxA%#;DQY)P_k?{7 zyI)A#vF3AUw+^3L)r%Sx(CMS6#`=nW;6L+p7KdJVv`L(HN&dZk`0^CJ^h3e#11(n^ zY&&K1$Al?CE3sc=<F|RL-<x-aL+7cKYA3clJ8*^1d%Y!d+a$O2+tOq}+o5%Eew)PT z?(O!Ev~@84Y-v#(_q43m<J~70emFIM`;hB%>b`FLd_W7ltH$UqE-LSDFtWX7!}&UG zGc&JWzx-#I=N9?>HLJzF67@)S$2?@k=7X_`Q&(S3`t!DV`$*qQ_jegD%BoY|ugQ+i z!5Od54m6(@gM9>RkNOK8u6Ww07x$}ScBapugIY}+4QmtA!E$tN{eZ-`dowQK%!<*~ z_T9RA`e5_G_{kHdbQ#@pL;l>)a|@gNwy;&Ne8n~=qoL#4OfQG`X5M!)dtbe@_oBPU zx{vEs(_!<pItHf<&zm`2sTchW?c2$c`b*5?Hd(p4v)xN}JT<(s$GZO6ydIsl81+nY zdD$w#exv4aJTqbI$L#T26UWwQJh)T1WyG~cFX989G%CI~%kOaHfu`ab^{e4Q$JzG8 zFLTVKM=i?N8oxdH=#PnIM~z2!y`-qA|FQAIC9T$mRQJ1ve#-bMZC4rdvD%Ic4Xr=U z`@Vm%Ol#s-`8+;~(N(^l>(~%KqZg_1>SfhzroKAaL$Tx1HGX?$gs$$HkpI4A{AS;G zuT(hh7~`j=+^uu&pcYw^+71Z&zQ5W+M)&YtS^Zb}w{L&!lhpCdV7<}@H!Aw6-@(eQ z+;4jq8RhHG=!VV~>-<@NOWdl3r~7|a9$kGx!G{~iFSUEPSLAp4o#m2=9GA%G%H{>H z(vG{>GtyiBmE6@vzs0}w-rfDx<>JR947c^qF`kM2DQk~DZEgiEk-HR|xIo?{X3Cs1 z3fDCgdrezvnH#;-`uKuXxZirl_-PdcWxbYvY3<_K@AWv%h5bMD9o%X|n#tmeudj7I z`QE)c#~opG2}xEtcJh<;?tIkhcrVTV*5Ll`tL~J?_7653bz_5eh$i-@Y(CX#XKwm? z$lD`a;>xk2dI=APELrvYo=?jzravq=HfogVO*|tQMD4c2?u5>;+UrFPXSYhU8hWG4 zr$2i(YGC@fUEk{3wc?ZyB;t7nqg(&FaMG0EtCQ!?Zyw*Tt*(;&!bNlTb~HUZeyp6= zh1+8>H}_!oJx>~Vg?}<!G+%y0Vd>FTZ%(b>;^Vcu_ME1V?GkN<%$w_iXFQDV<eZqH zy*ezkR5`Gh%W6Bt;=xWYyW>aN^&Fy|Hms&))4y=;%GN>6rz_)iJc=U1k{5TbH^1A+ z%~|r>W-YFM^<dYgyC%&c|8W_N?#kh$r_Cn5*Is9sW3hVqlsA*l^?bN#%=~fBMoygc zsMGI#P!C2IIMVoa8~rhd4b9ed32SsWX+*#qeGlL6dxP$-P;u>)l8rNew$3!Td_VqK zo2mNct71Z$)(<^DP|dJ7bnMWYHbVx4&6{V6`(Ii8kZs1?p{vmSZlBS&^wpmD=mx8< zxt6;+x{hkwgNoNPcWEX)NPMsU5YJtho=vA8(CBft|J#&+x1+A*j@%U3_W1giCfPaK z^TyPe7ZHwo(7|loYOd0~!N<(k8z#NYn3>mh$(S)dH*XcUPsup<&eL|&%M0arF30w< z3Pb*^<C(Z^<*A+}T8R@aJOT`@V@>a$?qYFJ9H_IS4d$0?jPBgyybr}zTPE-N^w#C@ z$c=kGc&SAg&MB`q^KOrJVGHX$!#NTgmo`tgZ(Y((<b3?ku7hi8F7EKuvvK30HAD*A zZ00&ns6H0+^9&~6{M5jW1Ct%vre}9*)3IitU9FYp20EOu(7CbsVv}{V13q!wST;{4 zd>r3-%d<tMM+Tky812#C%J1pkSMQ8xM2@`Jb(hoK^mFhl#q?sgcC%~I5$~(RCVIpV zn{a>2>gl<QQ|q~9)%LNwbZPD;w8un7r&xR={n>>DjbDw)(0=&%xz37LTA7i}>kfIm z)>yA+(Y>`;w^)0;Z|}JH?daN1K3p8Bxw?Dd+pD(51N3ek>U>Jhzi64qyeD`^p6zpH zc+EL8Z`JNAmuy@0`lH1_8<jt=Jyot*M|HG~mamoG6wKo#Y=3Y6(e1JKVcR2_bM5PB zca97-tLu5xZpHgqBZh2B^BAde0d{0e&za8$UKC%sQrD657{5L!^Y^FMo^R1nZnU;e z=ibv-t>0G*&m&m5(=C>@`8>tdGs^Dlg-`PWZfB0~_4(-WV@=M?`ty0)#Es23?lt2# zYIVJ1#cS6ej#P2(*sI34LxY1vBiF1pYg$9WWogd{>n$9&o9V?S<57f>`Hee~Cu+-i zCls1_8V+$8``BXX;r7Z!OS%jShCeQL{-=|Z|68+}dA6f1a@ue4>-M2`Cxe2H=jXgI z7+9^bf8Gq}PGmv-x$=4ZA*)AAo9nM@KT{r2w}+fbaF54xd*1z{$(b|j78dXR+_dO} zEe`o_F!|K)>AhW2_Ts9Myl-jS&PPw~caYnCs#Euy3m0a#cB!Qhf#*t0zJ-k&RPSbe z%Cb(coa!S_wM$CyIF&y{G_7y9SpyoF?mdmZ_k!`;D?hrw!Ds{L%ZANQwi~|j_=M}v zKNn6vHNAja9;Ylfe=EmrWaIqCQq!LEV~<Dl<(!SYpRetE`ZtTMWj9|Ne{>#n+kWnG zjF0x6sJ;vI<Yu317^g6%q|LGK`}xntSp)WybF($J>5tr&I&{<gw>PRCYjeZz#70e@ z8AeaewHV=^i187?_|<gYRP*<77dQG`{=L(RiNj_rh;vA8vVK9YkmE)Zy7ox+gAHC+ z;`gBTn`-Gdbz_I0-L@qqP&?4y&?CQYjgfK(qApy^il3E)_X!}Qu0nv}yDLw&<&U;H z-{(`GG4+PlUhX;h_L4)Ya<%-A*qraw2=5Lv{k_sSwtqlh8|{vle2xrm+<9!*2JOz9 zmrgj8F(&DtjsGBDtRL*0tF2z(zNh17tEKe%*zZEd{-<4vdS7l=J-&JM)}AV@4;G`p zJZ199wNk3pxy9j{MQbe#*Ni%SD>G)>-H@qo8_5-0PVbQ2WHO#PvVBwZx&W`hUWZpV z%*i}`NHNi`-TQhErw+)wbSqY+-pladQas;e_cOjenl-au^)fxTdFx?^GxOXF0v&Q! zYUm~9s=iO^et+LBynDgw;Z{^{>jgKbb4M<EKiKAMwxgH%$0gSD6N0bwtMU5cuD3B9 zH@ze2W$}h}FMrG59Q7(=O_^Elv+i}9w^eg1R%}vhbXVWzVPV)8H)i#{(d?vr;-Q$l zdyQv`PgZMHK6~Jb$RT_6&POPJF0$FL`3~cV@iWLec5Tk-xEfCV)|k9AFwj`EIXy3X z@+aNNVIz+B`Rsyyjwjon1_U$`$7+q(f2ilWp38SUT7PQ&VY?YemXvK7ee<T<w16uZ zZ)_gA)~;}C4@>7P^LM)xjU7##JQl}H6D>XUvi-2}@qYxlu7>R)tM7zN-x=P8hdVfI zzIn{xWBQYG-3)qeyS1mWLFWC>E#H3Zz;W-Hd>7k|s@L!A!|_Q;Kl<Lte0E=P&O`CV z(<vDt?az-k%b2RX@>PekowW8pvoo^$^W1rV?-2NtVDkBwP9C~u{==Tz>P%EmH0)j) zXVJmvZsLhikEU2&xv16U6UX%(OnR>Osp+`)hxeJexu>h;T@3PH66wnM_BbfNZ(4z^ zQiB=T3(aDBUR|@+U*{f01oU+HbIC$cn%0P*@}ThBPlx=~@sP{Z8}x=nGOO>wfdiie z7;b(!*638n(AYEjvHLCsr-s=tn;ZFdZsC@L%DCTRbc^nH(0yAv>(*7}_48h6>@pjo zy7FW5ZmTz}w^?s|r=P+#oIf-9#+-jTbxm-?S(64A=MHl}f8&yW!}pz6WJLB<K4hBH z?fPsyk7E2v<ZsNKZ2F*M^5`6^XV*Nhq|}a`;5<J2^zrn;Hrf5xg4Y7Z&*ja0w?%9I z>RvF=XXLg1XHA|IpLwg7bzpVk@K5)A24tAve2CFq8$7*DOJDPMbN9Ts6=nLwF1_`! z10&jw2wB%XvQhrHG6U?3S$mADlaxQxaDCmGIUkJ@kJkwm5AzA`UGriu2Zf9gLv}x? z!*RD6-5qZ6#RZ$VE*JI3=cbD7&Rsliom?KT?38gQpg?EMTm_Ch$I3P6UKa0B6n?s1 zH{-jb`)^vd&2snHq`8atlwaOupZ)C9Fg#CZ`^4cpZR>40c6okU!sLkWe<y)s>;CKf zImzPj&6kDfzVGH`Gk@^FX`-^`J$q-G_5UcE*y@rI<`+h%^GemGJow3zF&*}$=GAYj zRj+8&mbITQ_Zm1#WW85Os~4WrG5OAI^zIb4Vfbz<liSuAULo}o+N4d|)!HoN^M+$# zk6Pcw%jb2ysb5W~-*3u|K6!D?Z=M}>ve{al$-!Nk-#&fMS2-qb=#rfoDAR|PTlsgq zX0myAbVUB3IosEdZt5z2m2>{(j8Rh?dTWID?zif#*@oQ)&gjn@7@hgHZd-4kjUUh= ztD#1(k~&>N>o072MJ`6uszF-Vq*X^zk5i29L%Wj1%}SnE0*lL(qjayR&b=|P<)9aT za5``DdX$*c_fV!Y`TC5#n%hD1^1>x2Pe0jpc2iDA<H7Y+-gUa!X-3N?WAZ}qOij^- z>brJD^eW@YD~=6F4#)SSlau;x^XS*u`C0Y;^{tvsPu+A4_rL7<TlZHB4K+3Hug*5z zGHYYQ@vfUE7mhvRf4=Xd)9aTSjNAAe?~Gthz`4bV9r|w?ns>SDwy#nB*C{%~TfQFY znPb&z`}5Xqf<mYIU|h0t_v|fQaN1_HrubEx^E1vQ4x1G-TzRv+ea)bP&ZlM%j?9Cd z9%~P|(ff20pZ2htHBao&y^YJ-jPoOoDW>OiSD!lXRO0+LFERfyI*ZUo_IaVfYx3MQ z6+J%WZT45pbbL15d6;2>L4iWnG3@K|I+J|n3lE*|&>+lA^}y`=3Ykv|EuKtL)m_n4 z<K%sA&UlM%fjA#$@|8?$T~F(F&PnmP=(yiLcNy$3#$aOIWic;%&F^(@%2uB;toshc z@9C`uCR1I9&L7cvnf{$7b~hu2nuUJo|8AR7hn?j;LM@kIf8UYl_HOENdhi6B))U>` z4&L+=%dfn*=kD>*&l=wBGd{2Va(WKo#MX2F5$Bq{et%QTcT%UEBWp#0H&&)^uUFz* zLwkf_VxmeA#_t|B-!DH|q!O39`+1`SfpP_o&h{PJR{Wk;664oIp--QCh53dz|C}Fd zF}-YP=4m52i}q9Y>`LqFF?#3*jNj(0eWN#MwBkB?ifnhCUuIG~V@KhKUbpwRP|&il z+!9>8r|DeSV6yg2^UW=ooc!$3*(dn}g7W(5-&%R8p=<oj=neTBA8?9wPvAX0wodCz z2xxxo!L9Z+@3-4tTVGV1Tcq5@!0Xfgox?<%%3_;hZt-X9^w4!fH06R17lmim3O?1- zeMw29Lx$rck59U_yKcbk4ePO=Jk0jHgCkw4XOG<xVxi?x(xYY9uFVz~RM(C2v(5>- zsjl{@7~|+Yn@<NP-4?a(Q=0E^{oz&9$L|hVd;hg*Zs`2f;DCWwn-zCPxlyd$R6dL^ zu5TtX^Li2S`|$hi+IRYN#WuojRIl}}u7hS3!9;<Z!|oSWt$ljaf8ybjkM1b+75{eC zxaNx3>4%cnU(@#9xMX}p$W@LLGk$V!l*gQ(8n)zF!}FP4q6h0#?|yeq=iXt}Qd|F_ z78kM95ASlb{&$|+a{F%G1Kqq&1?@hUJo3WqoppP2V@H3q3jE`dqqhUrh4qXsZo+_J zcNK4UeYjz8lNYyF*jbI5tRgp4d?}#()d;15?Jr?IW$l~v@%p;<Hzz%9d2D{Gv&q|9 z#Qgrc&?shPn9Xjr!W9<5PjODo_#K|P@sw*#`5i49tgmnWaq#)H26ZC?Vjr)w_rU$Y zyCbLr$NE9UhGib@8#sP)w(asUZ`%EY2IXU#{%JoqU`go7NsBV*yDkZAyd~7IY90C_ zHTvnTPmZnnHdPGonAByj!l_O##$~2jZrGiV^L8emRjl*dW@BEBOPgJ7PyM3{w>R+d zdwwQmV6P=L)GY_BajTB?h|!tmJ{}}Gc}v^I`NiX%jUqginpgZ@MkJ$~b!dB}(p)2h zeC^048MZaGO-8hOkTuLBcjwxj?S{4LcnI$~vGErAW}AiOlv}oa20ha}dZPSH+rz65 zm|q@fKI5q3i*ki=*eA|s_4u6jdf9`~JNg*?HM!2&G0g`Yo?hHHvDWDoyI+<#@4bEq zx_b@PlmO^Q??he2+W10_f47aoz2*7$R1aV*X)E&f8e-H7U5(ibP&gW4vf-dGhrIM2 zE75lcJ-yFL;f@H?d#w}>Lzv!gCH~F9pWY**a9xDy-7pF(B20Fs6n+byWFJC#_W{Vq z7lr=-kj;oBOn#&&Oh9%lk}$nTM|`5e6H_Xu3vguqBycW*FkM3tUu;Ps2lMr8k2Dv7 zj_ONv)qpWYv0ovoTo<96z>R_L0Jj1z0&W9b3{2(e19-nzyl*h#15r2~0R8TQ4nvaV zBYG1+vQRGZqk7=)i|^}P1zy$Ag}52g4+2Z_@xFoR-8Eib>3rpIxPWBRCzJa#uq0oe zP+pVo<Wqn?C?DE{)l)^#57kTJ!-bl@V!fIP`OwB+%He&m@bw{jY55`rdbE?6^fN-p zr;9M}cZ6>*(uZ_=A<p;{9q%K9x3{DIC{2gR7dqb0!}s~2Uwx66_kqB_S4`zf%WDhQ zqbQR4wwTg80Za7B`w!r4A1mhT20ChQj1O@mU}qtpF2cNx{nzrO<p&?eKMQoc-8yeC zPxaJ9S{i_UCx!lW8kqXQd0^@%m{!Gxz|>#60N)12^26N&9tuqTHUOCVEw;2YFNkSu zzXFa2{tI{-a5?aD;P=35fj<Io1pWlP9hmgI7w8G%qz_#HZ=cQEZC7lUM^bdWjq&&E z|4q9HHdIRBeH{B+>2{fp@{!D?0@HZK8#Z6tMaW0=75ks7(El*!vHmwu=zlaGc^g~) zU1ySCy1WIDA0*sDU{&B{LVfHJ=Iv0w_5<npBUI=Im=Bqc`EcO+$P)of{UQ=r(w}&{ zPkxT7*q`cyP7(B&pV>DD8VLD(k;dCX^0u5LH}yL#bL_VVa%v-V5ZD*^FmMR)3E<(t z$AF`R_$uIf(BtpG4S{ojwFSM}Bh1^EVGTi;%8{<;L?kIAeG;$%a0)QCp&a@WZ7;Z4 zz><3MwpEyGkY2H#0jL*}xj<mje~?g5Y9HRN>HGP{2>B9(d}F2Z@%Bo5dsZw@N66P0 znC7D<LOvP`yv-5r*Ab@r;^^(mw-&IK6qEc`z?6<#7S_JDz|^kxz|DcX0MmGM0=58l z0k#9~1Kb@L?Ii96j55Toz!<AcPwoiwwn6+_LFMC*a|F;2Z6>DjF?Pi`0_7mDxCQWN z;FiFNz|;<7fQ^910h9iTFK@rYzWc!HCC%3hbTr-u0#m&P0k;Ak0*tz{Z$xwg_Cp+X z;{1V$uRegc0r@(9<dG&>|JtG-A<DHA`V+M$Z)?HN&s0BZZ#^QyZzcE=MxUfhT&7ex zyzK=12Oym;N|)0~D927HhvedIAvkge_BVPff!<n*p0`!_emx8XdP9Mp>cQI?@a<Ev z9*qV1CcvcErb0ey2mT#={vChHNA+|B&<|r!tO&dwSXGEqJ5yW_cr$Q&;4Q$Gz#D)i z?ZCfl&cCl-Q9pWuJS_z|NI(2L-`}sVnLuw2tgV7|3=LlZ(6L7!M`sR2$4|guNcMnC z*lT*D6PJ0T9z!v<aorYlbk0$Zj->93@q=_dRPw4B@<Q;mK>oRq6$VE<_!eOR<e;;~ zFPG=C0fhjy74n=d;6L^K0Ou?6oE6HP4tX-s$z9Mm(+6-|I^@=ed|ACwS0BvFgVAR( zsg>BF{`ciLPe3&4mEZum`$I1s@og9ALIgU`0E}PI?ZQAR1+Q#eD+KLx;35nfMd&NM z3-knR4BB$kUmJW1pqo;Zk&X!=8u@b}gEPv{r%4xaEnGA23ceVGDbQ6Qbow0E1Ks7h z6oAfPMNSz5^S}(WC-iBLvQnWt7o>{-X@CQOB0x4KALm}+g)%ooW)lp47o;tMTwchh z4q4S9M>6!0k8+CK&@Py`%E31Ubx}s0PlLV$vgt#XBIqv^*X}@vMQHnQ;6UWpM!u`i z!vV+<jc`8XvqfDMyP+(U8;J4?aqR;@J6)a=p)K;vL67{lDAx*;Y98|Wf~TUlBBui| z2e<&NK<^8f2iOHD0%&KTzJPeZB0wJCIY4J6`VqhzkOJ5YxC2mICC`}yd;!UT96%v} z%arHz0p5UQKsKNN@ByH=8f5@PfHXiJ;5k5NjXdWJ5CPHwrvc>v<vr;4Yvnn2Kms5O zPypbv<T+!27a$o>fU%Pa91VSiqwiIH;|2W}eLV;LE3XG8IgAr8^pAN%F$R%tf_`BO zo#~=)<e|^HqhC6r&!u3znq%zPqYv97FTEQXkA7+oP^P}!9b*Z6GQlqo<Im)-9On%v zh3@k)k4;Be$rxARD5DHxG#%qE#Toq^Y1-(QRw$<oG>b4c)G_B3P+tb`Y>f3#^zSUh z|6lsX%e;KZ1~>pH04UDFH?Dxy&!b-go^Qh#0Com=F2+0#91TbY%mZWrb^%HN<$%=L z&_xc$&IRZeAo*U0J<_6)-yPT&WuyX&fTh3TaXJtB1x+EY9YEeJgad;y?;-xZ?|LY1 zm*-3X?ttT<Rlf*bgZ=<yE(EV^gz0-9B3xGtfjqdL`9O{{2X+Q{100ba3hV{!i#+iN zrvMfKLXnmYoQC|Rrg9v8|05US0zf>jl~NdK+z!kw0Qx3~EwC3rZwdNC0p@y?XAGQx zv~pZ8LY)^OY>PB^KrX@s0Q*qXmC}Gk!1<_y7&snr?Va*mCc^r_R~sXYv=Z>OLOciI z99+{qg8qtd5kR?Ejw=Ip#`Qd0qi>5OAY6cO5nvv|nE(;e%Mi~+_zpmE7wQp)J`B)7 z*cN=~+aqewzZb%`m!K0s)>5=JXtai5+##L~KE|L=Mc4{y&VbO(7#oNuARLZs*_5^y zWdWZ?`f1=oz&u>b1r#CeIUpCjt|I;c*Ay?KO#$3)$OVx8K1n*-${1<7xGowFy&>!i zFhM*Saa&-?_e$cCz6c=w-I5%{?_e#|4M%yPEd`h$><FN5mmJ6SLI8ckWY+<#3rMf{ z9g_m2mjFHh^bX2%fwTr4g$^RnpAe6xG=!6Z(*ZevEa)=_X;%?00CoodGK7l|-i11; z9|A9cEg&4%)FPon;OT%&fD6)-X`LIQ$dv<*4^`x}eQ<LEC;=GzDso<cT!5~hB9{y( z1$g=^a*F_k02ACyi2!MUJU}VHBv6s_2E+r>0e1k#xXB6xBm*`B3IHVly<kPo7T^g8 z1<V8F1Bw7#h$5#Ca0es+s(w`(sM0`{2C6hrrGY99RB50}163NR(!k#}Ks)83zx?}u z<ok%cYW&~*2H-#Wrr*E&-9Cw5l~UXm(k~F81?UYhMIiTzJcr|OxVhuCj%4_cveOuh zYxs^zSWGPW73BR%@w65~T#kFe^0t$r566f9c>hzq<RrX#`d)J1(wmSF9C>D?XTc5{ z<m>zf<7b3-0q8qG4jL{<Q@Tp>RTF3=Jend--$fuANtyvmtIU^~#4j$@58riR^`kT# zgK>PCqz={^Z<#!J)&g4cp(D|ym2iuQ<22?+#}v37XmpvZUv=q&dvelcw9(&n$<x+h zbs)cdW-Kqf^l*w&c_gy%evSA%yze+y=%x+J!|T5d%9rSqbVvF$Vb@!uj34`Z>dI)y zm#c$@1~e^^qZ)iC$*N1LUqxN=X%hLZH9E0!a5f<5vJBFuHpDqXd+1H!c!E;@jQf`o z=MG8LNxS}9vxD}={rko&S-hodhdaH}_Ct@d+7bS0`$bvpsAaWZl-1vatoGKj+C%<o zd+T3qM=h)UwygHdAsCeK%TuXcv8?vOvfAUy`hLBv_PD?L{cu_BSbz0<-?G||$@)IG ztah=o+Of*|p0=#^v%lKjRo3^zWwpos-?EF9^?h?$?R#ali<R{~a#`(hWqpraR(o7o z-y@gxz3=;YZlkNPFZ0o``P&{h-PTKU<=7Rs|5#{x#a(|-Qn&iE{&@F#ruLg(Z?`L} z-Ic8G1<Pu8br;V@W%0WttDTgr{+VR;has!ItE_(0Wc3#)s~xMXcBiuXAC%SpQ&zuK zvihTv)m~Fpzg4o@Ys%`6>VL})NmhSUvfA0oYELSw{im#UowC|P%4*O2tL+VCwU3t7 z-cVM*jI!F>{BQXSl-1twSKH;tY6mB)J=(9f-)U}7>sICVURI2*a=Sk_MpwCiPFd}} zG8n&K=g(Eof$Cei|J5i)SGir7toB|-?3|&_?#a_%+?>+U!++42DKDbaEIQr2KQpYy zjU3-DJBwBu=E`noCaeEES^eV4>c>u2J4ekfr02@*(VQ4v<#vv;+IuB2ewEuf9%FQs z+nHTwbd~#0e#7W0w{MfxPlK#>ld}40kkyZ@tp0Fi^>Zt$zgb!RIW%{qe)a48Mf)>; zmHV-i)jx!+exPOb`yi`7hhOcNR#txrE!a8NBgHL_BX&$bb#w62#&;h)KRO`$ZTY+R zEu-s|+udsLq3&;Z56g+#t#bdhvihl()&I1t{zPQ;n<lHDWm)~J$?7*vR)1cy`fZlg zf2gefe`WRSE302ES^Z`GYX6tA`t!Qeo%(a-ellhC=OwHEOIiJf%j*A9R=?M>`YV#v zpRla{G-dU3CaXV9S^Zzi>gP;We`B)xPkzba{Z;_~tdoCU>Q$Zp4hu{-*snIniRp2h zI<N(>CNMn<tP2ct7M4!WSL-8A{Ja4Cvpd+_QXKr0fn5OfYYsZ_;#vUL0d5K07+4<| zX`BIYYvH;Ha2v!i?UNgJ@l~ZNy9)AI|37J0L3S<w7wszkr|jYWQ?_rv((aAy&i-B7 zH?nz?*uTkY`zEn-t7y+gc5GzB_OIBlk<HqVY}I~dpC+-PWA<}>zqNxS8#swwS7r7% z5?dTu>~JdD;E>&ow7m`4*pPiqMcW#$&6p5j*CMf}k=W75Vng#i`x&yEA$u9Jl_47$ zX}cJ*iILdCNNiw41(=KhWcxyPFA{r~iuNrM+ZKsk3)!+r>{leVD-yevtFTug+m(uT zD?hSXA$ygIwkrQ0dv5|C<MsWIKQT!}jAddAQU*a1LH12V5}~nVL5L+fnaoTiWRpyY zrA##TrBRe>TC}m$zC=q)Tco9yq9{czwH8%0C2IS>&%N_ZCNYup`|1Dp{d_*(d0x3W z&vWP8bMHO(-2I$;jcrtn?Ndtf(Z9gv#1F17oM@9`$`-}g2IW=uCuDbG%I1V@OUR}~ zv?CF1NXUM~l)cDi*kBwm+hIVU&5xM_W)7G+VCI0C17;4GIq>hr0aAnh=k@>7)989n zuKkaDX@o$TMLg!)LIa$6qk*+9hqZ)=WL0K*R(hgV?$qB|9+ja@PE8)4oHjz<9XH}8 zr)V;<F5@UuD8{I8ovb!9IU!rC$%1aVqby02l7U-ijeKc+$5E!#rr_>Y3Zu%@Dzdb= zg;sw<d#WZ)%W<-_YUq4B%3_n#)ahfhpsVdD>zSUNrdDck1t`Y}!P%{^!ufxx|35{4 zuj;}YTy|*PiJqEpbD_6=_#xN-XIV~!`o6;W{^txWF6RvhNC&%=+Vsr8G3m)_xfA%K z)~HfkoSo>~IY?gK+eNNWAfS(z{&%L&ZVO#+3qhNdoW<<}=pJ<*w+(n7#_rCp{ElsT zcq^n=yla@weVovX*4_A>+eACcg3~5F{X{X(63QuGYa>XX^O5J1#(7RogRx1PGDVSy zOWqY3=_$#oab-Dna;_xLM2~d))lFZ{7pE^V<jWR#ZzEouu!AsMm!IR<Ku(6rzzX4K zWU#9Ii}|HE#r)O<4`}U>=to&(Fgt~_LOmI!uP@dH>A|uAwE1BV0QVm7&Ku`HOOvD+ zk*&;BYt#xAZdMKiLxRdNATULlnxIxHd_4Vp{rwaC)tUsQzmLk>Ez#HAO`}n&{Qca0 z{8Z{7R}s_011Je<ci#k+SEAC($4BX*R4IMbehBL4=cf*mw-aT=5Ju^f=&SZsC%CzL z_$T^$d%AmT5)wUp)ZT6?H$VSG_aHe|Q#j8zV8OJaEb%-wVLYdNQrRqEJkQc-v&;C- z@f;W)*?f>~#3F{LRPh>2VMAnOUvZ!DiQA&koy|OKBNjGTA9gVdt4h%*(+~>}OSTtx zS=cs=RzE{nI~F!v9~Mmto=i<vb_#o?c<tdMc|>)RY(pYsOCYp5E1ahQd6(8~WRRB_ z)B*9HYQiZ5&YKLUy#Z&S9!He1N%*~Tn~wP4R)|}yV-z3JtBZT4d3prgGwsLf9PyXR zK$JnzeunrRWx@GPcTooek9ZqpQN~;Hr~DJ&qAbezM)mf(UT*#LjTEXie7Wob2(#;3 zfiJpvef#{MBe?AY0^;5AFEKgI5zHgmG?rmIp@%FIGD3Xid926evZ8E>c*H*ukM1## z29pZVptJI~t|hgq&1IwVvaUY`#mCBaDdQ=Xtq=QNX!!OnSJsjG_SLwoBTbZbWF=)C zS)r`OHtL=&5`xFLjam!YuxE8Z_jilh7f*sp<CEZ#=%@1c^znChPxSZnO7!#a_fxC9 zJj>dsL^n@=Z?^=Mw~wE<hr7Q9uWAoBKVMB^g2v6=U1O?^^7QlbRC%fs6Mfvh)ZQ95 zl{elJ65P=Qdii^}tEy<Dc%I6)QH98>g;2hY;&|oTs8tNFtR9JNR7b|AvNno`E#F41 zVPVVa8il1c%7uk3YomDB>a|hbjM}I`)K^E8<7C$Um~Nv8Cmc9BhEsVPm5bjim)r7f z6vapMsEy+3sk)6KephUxh_|NNDB@dXZPa-wm)nYM)XM*18}+{~xPPOK;(6q4R7Ke` zZlgpzYNJX}_QBv8EC0XQMim*_B;H1CG<?6hjiR!y*hW!Vn`)yd9~IlEM16mBxGpd2 zb^tVPrhf8M;Kzt<l#=EPDe0<F3T2vp6jlA9P!MbD$2X^TfYC@+gFe+!J3t<X1H&mo zoEAd)Hh}DGIgUMWB4n4q<H9<EFoo)wq^@C%K>oYn{}%JF$^6A}K_2|5&N(4I6HmFZ zH_;^;)Q?ktMd^;RC`&i_)3}P#YFwux1shp0{1l3pnH3PAP^5SS1c*GVa-a$NMDP1* z(yMZ433`0qz{kzI>caz%ad{s{TobEN-c@%iuP$#M2QTlVh|^Sga~xjY#~_;vF}R=3 z%C)S#$$vfkXE6Wr<vkOA)h%zLOEjt~Z%S*$^1fKj@~N_0MOjdJ|5{CYRko#|N98?8 zKTj-XvnApQe@OS@HsUH2%bTjV(cBobL^f-rsnW}{VX_Gil8tFdWyj|o;i#h<8Lj%P zUenx{)3#-G_G`%7V5EWOwNgnFRyUi0MjJ{_4TU00qsq=q){axC($hyJYZwihkE~-f zo3OIvDSzodtGl*B5}RWZeVQ+#D;6ky;(T$uzMZpgz{A(plcAy6eej`}^FgehRnG3p zYI2pRNKcUL4&tadpW|`XX6@cx_IsdKnUJEPNg%b2)b5EmjX~pgj+2<3#-?%lxnhWn z_$1<y%<HpO0r2$&aehtd5$84}_Y{cI5M@!8hGy`mxf;a_|8nt?Y>7N|0-xz2p3_79 z2i=!+tUOPvtO8{`trC^-^d#b_$WtCCotqFOi<Z;xf%=9!$iPz(r@FkNcq;OWXoDvP z+Q$6wgOU_I#{Ad;8fVJ$qslIzj2~5^GJbq!f*(B2SMx)}sV+Y#p1;G7@WwCm;{<42 zD$kE9o3t{1REf&?@q-C|@Hk)14-u!j{GfRL4nGD%X^tLa`S=_(ZkFdqm0fxnKdMA! z{Mc!NA3V-i^Fzd`E<Y%qzr&9tYGm+GyFm}Fhm?TEz4H91a@bMEk1A0aKOUIi2amJn zE8Aodr@H*0cq;OvVp~h?$EW(fx)5uh^ceGFB50Iye(?2z?6l<3*&0QXMwvk?(WaMh zT{*6)^<S)i{zHTqFSRCk$<tetjTQJ=J7sH>;&0XEA<-9kD6R+dvuyZ!@aKBo*<-9u z4*`-RYKkWztWavS2k;N@Zqh%+JS2_A2Nn58YZtXxnq~N%pH0N`Pz&SK2-zCQ$T3XJ z>D=quwXADMEvXJi$QHuyFdXR&OKoZy)=6pYoz_yx5zpm__vNSj9t6=QIy7c*1F~@$ zki5R3A5+E1Ii<}=GgalqfFFV94xHzIV@xG(!Z<k-MdHf}6LQ7r${Al`5mz9KXO0Eo z^D~#kGkN$Lx9ejn`xx*oL`Lh>0~r2KxOb(o5GRB(I{k1y(U;7>5sR185zkKI=QIss zzuQ_!5RS@(&Sl!nXw%x17`G;k=C<N_Pbn;nkA<BumbEEtyep(>#$uqGjSV-VL+kK! z8QyFbE&_C0GrFIk{PM707bJVc#;q0ht@QEqNBAffUTG1JO9v?K{)YV2wP++<VsXnc z{>DutDVV;qxWzQav#^W6j}|OFy$t!XVY23c$`p+W!#t8H%V4QB2F)aE0{r^I@iBb_ z;{nBCA&gO`Wb-jR$#F8HFEPkpGlV6YYYa3!r4n1IgoX)3HwONN2D$@G(xq~YV{{w8 zM3*KxEUh(NrPj5j)^(&3DbZaInokXMqfOGK^SFjopiA|Q(i;!DZxat{=oUz=tQc=B z;TH!-b;a1<0e*wwSUuF^i)#_ab&=|$NdIf#>*;?c(pST87o48H!G9wBcEIWBGykgS zmjIvk6s7fY)1<ZR7_W=rcMp!0p>?iKY$L=pIknV>k>y56tsAm1rNDQDKQH%Or5Hvm zSG5>MlG|EZUn;eR>=Hd!_{WRkYUBn=C02&AYoX_HA%4%NG+O6cOKU?Y>PfAs9jEX~ z_-(luUXt5VDzP?%uZum#8o;aDp1W7gElKWaZq<*~F@@kQ)P~4Z+9n3K0$m@>FKIcH z@*Dv-A8DkrdIyfmhU9Gl9HpIjOy#l=j@r&(grjy$?7xiLPJ1GbN9^k<51WB|n59i8 zww+Z@h>UkLi5|5_n@qHwoNf(6zd-wE)$N0co~b;XH<5<|;GQg>hbkvArt<K<i9B$+ zWqF`|!s_OM=$XpHa@s7yV_Xg!fP21t9;%#pn99R?6M5it|7Uq1dZzNA=ABEqJS+q5 z)$)0$a<X754<DMy1E*V-hrc6BM9)+n0-bm{;9fH}mUxEGZNR-#J`Yt6@J;1mtBE{t zy1d_`w%_(I8Y|po^~ZQDA@-H-?DyRm{YZ>(%Ek%Qm$zp)XMthM`feJh;%2loRXQmk zq-Ce1V89L^8jsN0O)G|f8EbVlg^%E9t%t{*r5uA0d^AIKnvVnfF??(GO?#@b>^ooo zZ6VxX-_n=p@Kka-G;WGvcnes#SoHZkT$5LhHz*B*5H^y9eUF75WC+_7?HxZ?6F22y zjKfn-yrcEO`7DehcxTP>9*%H4?PCNfZd6M_-phwC<16*|b6I#NVDa!YX5-=4337~k z#PEEqBraF+{8Id*S$GPIz65o}5sTk^OcNrtM#ZNw!b!9xa`^MUtq<}SBr`Rp@ny8i z#xx?$9Fb;&PPEL)Xga}9YoOV~Bu$bV7e>?8(5F#<O6fc%(zMjAkV<M&x5wyCg#Td! zUEM}gX{CHG*5_O7r>U<cx~}Le`8Y{88-qHjq!y>n_yD?2_?`1Xx6Tx8DwBm3Xp4N< zg|Lgz|4Ahi4e51*-;OexQ%upM^r{%mx|PZZg>z=(%&es3L@jv1_mTRraDk8xPXiB) z$3#{2@h<4&YoT6>ef+yf|6(|?Z>N5p@?_kvQ=1~TV|4|88J98KMT{{I_48x&^HMiw zY6Hrz`Mia&mQViKd8t~XRjQJB|6g%VNo(>vKEB?=+a)YvLNhD_X`{ML{IAK<WL51x zwc@-`%yX~{%koQeap^yt=S&S$ld@>OVR|0jh{abnkLK~$Vs*$1<?<AcjiXJ>mtP?> z<@OyYd}Z_G0KE*{)boS%)aaqThwkVbob>#lEf}R%F*-XLyR4)jir=X{Bw4~a#rkD` zUQSe&Je;jzEVmnVqVjQ&5Zns%Xsw^t9f>B+vo+8pSryOzodLO|r(!z&%B7Ph@Kx#K z`2Sq`g7kc}?8ws>08ksw8*ViC7_LvBCI_2I&}-#dwhFeVLLo>#enZ}{XF%I5Ox}r) zJe(^y5XQ#p)c(x@UbrjnghIJWTQ@N9nD!Ov_Y(Z>gx}eoq@^osZ>a4f|1kKoJxQx3 zQcLVdi|wvRHy*#gM|5p!v)`!9Xg}G+!^*4~+9fOe*ejfeqcn+omg4+^@`ZMY<%{+a zU*H=u^fDtVZbVl(lH%={$oorr-lG|354s7)`#e4G>5T1UWlHk+3hb|p_dHztSB{g! zcIg8aN1bZOc#@3tw#9aw+HhlCT4P?3+=uGrYIA3vC$Jf1%<h5}av)dh^?A$Gj7ZLc zCaow~Wwobr+2Ub+nQTQfy5hcRS!l{1%||(|C&L{KT#~1&;P=T+g77}ci)AyZgOu70 zu1`xk4J1<&@p};**M|r&$Rhb4gJb#-RxVPBkt~X|@8S0XqHSX*wE=CCRg%YG#Bbtx zNggRIrA^eCAbF&G8uOUi9Lf*hk1fl0f5@o~>Vl#&##WTos<&E^erurwahcEEZuj(X zkNqDyJ!$$?=dBjwXY6@%%$IetI=znyYd&{7;HHb`54!JK-n=)u-J<WOSUg_adphP( zXoTewx0t%yhOZsBf90ViRtw!OhS#08z1L?;YP{|=cg;t-W<O*7(0uN8zAotKi39$5 zr8zb|R$Nk@bXc`Og7JbU@o(Q3g;#obKB;*pYRTpOuTSn%CuH;N2F{0Ej(hev-8kcS zT7&i{yobl$$<s|~{lN(Nlb(YE77ZIRTU*k)cT}P0pl8~t?MQ!s?je>-9R8>sP?~uA z_5|PE`Nd5-HEeu!?3UHff9x}4tk(Yv>xO*<!F=xahn?MiZg`|?QDH5~)u*5MyTmT+ zxDjhtjDI)&Drxe^v5Oa<^~>#YWSHZfYv-nR4W4oNP-BO!lU<7&&cd7k11Y&=^|FkQ zU8gVGADfpF+DpjG?Z0inz}LcmuQ{lRU#mI!n|{K64#VqkKR>5_iB-U?KMwY??DGC9 z<>zygR`#BF>`B|4&GCQzfkCbL-0kr%LWhM+aGu)egUkng7WMgM=2itdrT><5x0_&o zDVH>U;ryxe!F%r)KHT6n{;&4Sjy4~6<?e)MzYl+Ik(jf#_HX8Mw;Qzl`Amy<hct<7 z8fWEtEaz&6xoLko&%~KYIAlpKd0YES%*^<OAJ2$P&VJ^&t(RZVe!-fOH`^s%9B|}T zj~%x#uVHv0KRUOJJ$Uu<`r4Y31M>r#=G(Tu8W}y{-iPU-88_FhKMtD+AEGz$*_3Wu zeqZA8&CsLIG6uN&DS!LokH1{!rj0q#eMgVW%a3BOj?v3WUMU%?YUk9+{^``_b8dd= z@$iNwWcatyk=nLrw$6M912yxx+t<%E8{X~7_+|c)(HA}YU78Zndv>TGn9to#m!Gb^ z;M|b5L+^hnI6Nxub<=C{ML{s1yS+u(^J%@V&L_JZf9JmQ5UbY`is#1S9HStrmwSc` zxvg^9{NT+Fhq@$X9dXLqeJU|OIrxJGX^$72-?9gbF>4v#k}JOQ$9LYoaK>ic!uzrv zp2KT@^sIHyl^fOttaH6IP=fx~eD3ztQ!$@^Fr<Tbm$l7mb<4c6`5g;7AkKX5cJb^h z6PuP!Xn8kyfof^e!D&lYM8x3Cy<n0*^SRqg-a5Xk^s?M)%fipznEM7aU_yv5=5x1m za!VH#?p(9<(D6;X{~826c*d9CE;MzU74gQR(cM09y3``*=hQbmlb#OxYn!$2XQjQ8 ze3qiVp)WL_yWLcwymw^AkUmRm)%S^A6<HJOcZ@GP7p#|Ua~iWP|BX$H9-p(?-|?LC zyNz~=xgBmFZ8JK0QW5k{x)c8#-cq&x>DmSNI#)Vxujiz_zU!(@sPo|GUwt-GyQw6r zCDtO$=WaLnu~+-TI}YD;7;tXZ?nX0zZLx3}#;{>w#J{9Lb%Hu&e!4g5k2afL49Wdg z^Tc6|^|-HV*84coIv}ar5kW{`c;<7r|0@1%{I!ke+I5-L=C#Ou&|B(3{99S4?w?10 zO;z;{xw~|+wxHo?O{pg3;%~$M?6SA-taD^VVm^0!p6w^C`i<%2I<;-kfYj92YR<f> z+$9L+bGN-(7Jqx^wJv*YLPO53`}{NikO7hn*xP=c<jU^1k8&IaTun{Rd#_vLMLoxC zUQ=V++wavpv!{E@9n;<!`4ngUGCcJd*M}XQChT+ZTpOC){BrJS)gz|?@vncOxxCCa zqU((Hf?z&(yQKEPM*CH#cT6a<dv|B)Ps2X*TltnCn9tqr`1aWTN4NK?<K1iJ*-h{F z%NwS4K)w8TKX>~fmcD6kiXPgVT;3F8F6{f!9vYpOy%7GiFHG;(@lN`sgp&pw(lMp? z8F(js6ncM*chWbdcgq@lk5hc7J-M6M#N3T_c{=BW-oL~<?bC_xbe0Cae+_@yBNX3B z$3>)1d(Grebm%MsF)Zyri|=IbE{3IjZ}FXUB8W~D()j@Sk;C!xkhmTU{f3{|UCjVO zqZ<4yaVNa<vxCa;kUhbHknlj~O-B%P+1cZ?U(3&};b&|RU2FIS5)z(oVUkaFAm0IE z`$jkn*dFj0Af}IWq^`~l@FXCmlj7%Rj|kY8=6NuVA43aWE%;M-!l(G{nQhKL7e7B& zpnCCB+PQr^x92AQqqqb|IC^$T1RX?*%23w|a1S7*o5FEB>%SkaP@i9@g0nI<j!%Me zgg40~<F~E8T;=fNcB))&gXG+}{2~7=U4+MNG<o?`evI)TuLis``gGVJOhr7%y8(~e z^qHn-jK^)=Oye2H%Wc58zHr5Spza#@%k7*v9?7LKpHzA|P5>l-wO*d7T)3?dw_~ap zE){qre`pt&T&L^9$-yLU8-q1myi>Yb0k0u356?iP%N`I@Jsq~)g<*i$vV#qbp!3y# zch!Ff0}h8jhR_VJxBfd?|2+VZ!hx0$52yf40E83NfZ2dafRh2!0P_Gd06zfK0)7NI z25=SNSin7i;{gu>P6NCTI31AMOwiC-BM)-{TLZog*jE4DN&ijyllkzcwsJn;9KZ#D z3jrqrl1-Aad~rQ^UM>~o#<-lhuDNMEW4Yn_+*RXoooUl}V!Sp;E7wbg4hY_<9I2i? zg`;N$@<Zha9_rcw76MW`wi+-5a19`a`0Sh7Ci;#9`~(nXChP<p1-Kg!ykYGkl@oZc zo1*`o3P|nbY{2gU5vPDH1l>ygH)yi&b^7m(`tL1(KLGCwKx$9-0G<Ne4|p07ZLn|_ z5VVBzfENHS1Kt4q1(3@93g8n!u^wS6tk+vC>klm9M>0&$c*sA&34m0OCIW(G!X$mY zpzvJhudF^9ho25Ss!!-!buz%2fYe{i(ua4#JJ+@2I&oAUHQ?s}M^9&@mmumbtM`P@ zb>B?myXf&d=<yLwuY*QsLGtpZd^p0<vkZ8(0ha@M1A<p9o+P|;{VC|2<DJrF3rJ;5 zj}Pz&qHgP~0Q~`N0Q&$^e!BspX%)f%(KHD?0Vz+f1Ihuz0VxfHFZLH)M~U}&6rXWA z(Izl@F@T{6w+K)ToJ*H1gc3L+l-C7iaoIw+slvDi3G+jw@dLqoBqq2AzP*s|SjY~3 zJBbF!9<UhS#cI&$4mkkfFu12^yo4cuz@h!BT|-eupzqoXzr(*6xCQXLgUrMuBle&> zF&_GSz`5EF=iLLI?25DO5jJNqXhrdL1udA@5KO)lg0UI|=Rh=mN1?a|VVnd!H^jRH zzb(Q09i-_D!rQ~eA>KGNhOQB?rvjrdDWL0&c<eRsN8bJ&@9y{-4XPh_RD!fGK|bpv z?I%$lOL}813p`Ikd91<rP2{;0Jd8oUEQ3*g$WJ`-MvaUdzvJK%;Q)Ac00OrLv|Ld> zn}5N{AmIHH;5Z--SI`^`K1osTC&AD4;Byknq#^Mhe2&NOPw{&=-gWSo;`=c18fBT+ z7iEL^4}ibnN`!}VKstiqpM*3`gpA}t_%<V5amYgnXotOl^1|<dz#~19Qlz1NJkH{W zzas?xj3>e(y#**ky8p)y>CXY(tB}Pa$dvj14)ArPrO*&%RRHLP`t&v64%C?$;E@`< zyoWmT?|hes&FBB#_j%C7!+e(q>iH?Skr)ra{S$Y2<a~kl_D9s=>lQ*0;3c$k@)Xp0 zyx)Oy!+RK94BF;@>OPOFs2kCvEQJENxD-plHPuqM1Gg*9Qjn&@53T@C$gmXDa0lRA zM_UT{a3ydHGf~H~EQK7nU2uZdQV4^a0e2YAHQQ2{1GgFOFx)*j`!S#uT|<}wXMW5a zFmu4n0W$~wSq`8j{+G`GS0|^(rE25S6Gr0f^*Cj!+Q%zSm6D#N!7=3K^Z$Fi-lIRQ zZP>`#IG{g{R&)>P+cz|%dmlxQ$U(jOM@1?IVVvF=zh7z&{l$>}ulG>&ij3jG1Z$zM zj3(-$-I`Xy%YF-hE!--&L73o9oF)-4l~*K+jE6t76$FH}DLV^=Y`^6AqH_(k<Sit_ zwkAZ@5O43Z@Z$taAq#Pa$sFNFb~l9<n4h5Q?TfjJ)Fznu+2fn;A&4M93HNiwcRt*& zZOi<E@jVCbmcftPv{pPTU52>6V)2*R8jJR1jbR5w@=50(EUwSb*C!i%vdP=r5<lQv z#f;?i1iZ1lkZtF6MynI@--P**{o4`d=YjmWFxx6O3h>esT+a4~(jAFBQr;=Als7w^ zQQUAk@tV#kc1OvPpN#R9c#3m|^=ID57!SE$GScENyUWsmwWy}t-pogTwoqTnARc&w z_f&5DnFEWsa%Jks4<4^ruHsp}as=aH>Kg2)#PbU1x0fG&emLc6DT|Bc$(``XZ&8^a zW0!G0amMaT`HZwk#+nhgO}YtLKOKxQsYF<QcloBA%vh@*ukU#_tnFsMxLs$5w6<*g z>z=8}cANY&1fjZjx;|y}ynA0f^Htn)=_&i$2b`y7=WgjT`O>^)PQ&dcq?{Txx)tWd zCCGtXa$utMpcPk6O<FKK-=W~_LpxvljbH7au=Kqx-F+|hDfmhw2)US3%O$_;Oh^k1 zaed+AeLefPlDfBc9$ftN(4y_b&%V>>;cNF|+X%u7l(Jk>;Jx?$fR2-9pQ`aBIOW3` zj?4EZK2iHD+tX?0=4TUUYCghRETh*tU-{@Smp2yL-m#z5_WL2r6i*zNF6fxoR=K4` zY^OIGG=t7~2+=z=rp2%O+zWOu_n5i*-NYIFM^7I&?gO{g*2x8DFMqvy!BVUldk~(- zIghq4eBP6--+$xR9@`i0SN^&#sGw=+l|9j`How;A#!0L*uy{`_DIMfI#@(*jB8N_e zg=f$HcsDs_OO3DUSY`jA?Uff@ggqjLH}U7F>2Jn%TVS@G!eMh`_P55IjPbcs`u@_S z_^yw08`|0ad)ZEHz`BH7^2mDo#c9WPKX83MciQ=Jv)jg9-rc_GsUH+?_iD7L=Fkp% z(Z(^n)Z<~VWek12gKF5_N4Ni4<Mi;0IfIv#uAcwUYHhyVA1;vRNr6P~;M-kJHg;cg z`}naJeJ=YfdH3whLlbts<KZ-Kf1SPE&MnMFpTy)PKI*5n5#RM{S#R(sKB1$(?lQ3Z zkk+#nee&kO&$s#4d6GO*5cY);y&s0GYT0qh6CY*l7wWen!{&W-B5aROM!tK8nK!22 z%FO;4>sMI!l1n1)KI|TPZbOqJn{<OeKHJUbOwR2YZ$_RQo4YT{X7)EnFn3+V@Qx0! zy#L$G6(ih_kMmqH%jTm$e82D7@T=d0It1N4dORU+1nBX4`RS?`-6DOTw`-g}R@L=c zjBH($owViIbps}Ee{W7R+nR!~pV6D#AotijmvxQi6+P=P=|F=d-AF}ZRGkxjLL@6j z58rvMfgoIDc$b9tPQ1HG2tDC6WtZ6oO!*VqA*?ORCG$2u`l9L7Kl5(7#i)99_j)>T z?Wxoy*FMbZ**@^j`qE}Y(f2UCes7-H<!krj;-v=<-`?^4rlKyc!<yLs)%EADbKAC< zP&@){cp<|ZFt#A(UTufBBL@d;vo9TD;~f=~Wpkog{p}uiKdU`r7UJE{@T4|9yX_j< zX3extvB_o|FxPq58w{ZG`234I?;Z{qXQ%t4<MFviCXIYMbCk{I8o_lmC%YY*KP;^n zXWKKpPdD1BV=sok@SHPdy7Ioqjm%Q-cW*Sc*nH9@WoN_p2V(vB8-_PA*RLq3#&pL^ z&l-05r6BmiutCuuUn<QSl;|?{+y?s*7-ODhcsFOaZ`|-=(LvqOjO_nR8?a?b#J^F_ zO<K5j*}H1@<KDKnT>U20kc39ADT%!$yX*MX)TCgH$-1%juONQc$?18&|N8yyW3igz zfle1bI@K&9=jV(K$2MLQEE|3I&)b02_M!CcDYV+r=&+BU@4nQ8m|tZ>7v=3z?Rsnc z!i9gW9<u)3QGcSobs@a>HmrRx{@CX9KUS<N@!a+M>y27>l15&)Y*BYy_xRSy$r!f= zdJ|s%;IXRJj|TkMSR?QDDEnyBWgVlpeBL7L@%McLd`F#~v>kh?j9${CZQedJF9h}* z`n%n?-<2Nev~T6tUOx`;n)|Kg{Zh%~>DXIkc+P9~|Mbq`>{>kru5$a!*;%$^^YY^L z)1S+yCyzeR??qo*?0GW0_X|}|9JQS~gtof(TfJIWZ|$ht;O5De?@q3LVST3+qx&`y zgeMH|MCY-M2Y!EJN^Y*%rp(WA<|ym|v3`1v_Xizc%#4Uh5BmOx=L=OA3#asX@$G^A zEsnf>_g<$-8(U%S#>&@YVr15a#QKGET7LHJ<)L$*6fIr<#6C7G*Y$a>&%77Inqt4O z2g!lmTbG`kt^07@g~NRUw?7`*Z+KL%18+VpXw=kkz~O#f2j9ZpD~q>nz}biOezzIj zsF#IXVy{~ZdSCvs#gQXx7hm7`qUF`6fl}-@F}%sETs~Rzuw={ix#`)bOEyPzXx_Zf zr{B!7xYlL=gV9MfW(k4}`zdlsuPshXiaHz}aIN%7w%PXVTkOpqVtjep`R1g})-k8m z*Gp{7wr9`K=B5Rayf_pc8{cYPao{-bB6qXxSvQPL8({BOE}7o(#E1slyUFe5ZJnzA zy3VWy3l{vgWBY?q&5rq6HT$dxb-XLXd!ikeU&~=mTI89cqeXR(M{YQg{dyyxnms=J z;KCyZ^=~iup1oW$@XXz3lG2|>WW;=W%xru14d&(oTW3h!@WBB0reV*+14EygZO?9u z#DW)Fw|KGTz%#}6uSO5<b~HsO+E(kG<!0M6s+UhzxJAWue1Ceou`{>M3flU`J5T;w zZO^J}1GYbu_~Nna)==%i3-$rw_iugHJT=C;bwJ$_j^lSmwpbswqF$e=(3N9&F4M-! zCxixHSn@15toOSO(;ohD^z@LB3qL$)_h|Yx^=lh&o*TpS%L;$oYQi6r3+7vW-sIcG z+h4X(tFBGi61IMzdU84~y{F^ihYJ(ucyHf$=wWHTh1G{U=das;t&KEp<=yJrvTb4O zNYZ@2^I_jKR-ew>Utg9xQrq^&Alp03+P{8V^<24O`MMu)mKa;7nXt%X%DXY!*552} z&6*zFyvcWN4Mx;+o8;cmsa;#&XWm%DoX+r`cgp<iLkEj>lS6#!oS8mg{Gnb8p5<6h zQ1sancwyT7Uv^?X$l~?Ba^�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%0AM@MI9Gkv_&ZKPivDW{n1u8(aurt8>_ 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%0Ah#zwKtBr6XXi(SUH+TxpA6`f01hjOb|vCbQL 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≷a2!K)cR^8)cWdqsP)xm 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:!GTdh!G6(E*wPyu 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ʒ{53soQ67%V%Ol%V7otheY5qby7v-V# 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 JU4W30+a&1b}Q2g?MH-sRWCs;ERy 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 zo0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczv zwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$ zS(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~ znzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=* zsaczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA}o0_$$S(}=*saczvwW(Q~nzgA} zo0_$$S(}=*si(Pb_r|<W$+b`YSjx-i^fqg6v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP? zZ?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ z_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC` zYj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8 zv-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mm zHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP? zZ?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ_BLy8v-UP?Z?pC`Yj3mmHfwLQ z_BLy8v-UP?Z?pC`Yj3mmHfwLQRnD-N=QK5IQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWT zYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ng zvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l} zHEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wr zQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC| zHZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWTYg4l}HEUC|HZ^Ngvo<wrQ?oWT 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 diff --git a/venv/pyvenv.cfg b/venv/pyvenv.cfg deleted file mode 100644 index 7eaaa3b..0000000 --- a/venv/pyvenv.cfg +++ /dev/null @@ -1,3 +0,0 @@ -home = D:\Python -include-system-site-packages = false -version = 3.7.2