From fe3550b98b4cda5a1f3b8c3eebd5c597467b8b70 Mon Sep 17 00:00:00 2001 From: Keith Irwin Date: Thu, 31 Aug 2017 14:43:57 -0400 Subject: [PATCH] Removed virtualenv environment --- .gitignore | 3 + env/bin/activate | 78 - env/bin/activate.csh | 36 - env/bin/activate.fish | 76 - env/bin/activate_this.py | 34 - env/bin/chardetect | 11 - env/bin/easy_install | 11 - env/bin/easy_install-3.4 | 11 - env/bin/pip | 11 - env/bin/pip3 | 11 - env/bin/pip3.4 | 11 - env/bin/python | 1 - env/bin/python-config | 78 - env/bin/python3 | Bin 3693512 -> 0 bytes env/bin/python3.4 | 1 - env/bin/wheel | 11 - env/include/python3.4m | 1 - env/lib/python3.4/__future__.py | 1 - .../__pycache__/__future__.cpython-34.pyc | Bin 4178 -> 0 bytes .../__pycache__/_bootlocale.cpython-34.pyc | Bin 1054 -> 0 bytes .../_collections_abc.cpython-34.pyc | Bin 23956 -> 0 bytes .../__pycache__/_weakrefset.cpython-34.pyc | Bin 8472 -> 0 bytes .../python3.4/__pycache__/abc.cpython-34.pyc | Bin 7884 -> 0 bytes .../__pycache__/base64.cpython-34.pyc | Bin 18302 -> 0 bytes .../__pycache__/bisect.cpython-34.pyc | Bin 2865 -> 0 bytes .../__pycache__/codecs.cpython-34.pyc | Bin 35147 -> 0 bytes .../python3.4/__pycache__/copy.cpython-34.pyc | Bin 8062 -> 0 bytes .../__pycache__/copyreg.cpython-34.pyc | Bin 4614 -> 0 bytes .../__pycache__/fnmatch.cpython-34.pyc | Bin 3153 -> 0 bytes .../__pycache__/functools.cpython-34.pyc | Bin 23615 -> 0 bytes .../__pycache__/genericpath.cpython-34.pyc | Bin 3500 -> 0 bytes .../__pycache__/hashlib.cpython-34.pyc | Bin 6376 -> 0 bytes .../__pycache__/heapq.cpython-34.pyc | Bin 13917 -> 0 bytes .../python3.4/__pycache__/hmac.cpython-34.pyc | Bin 5153 -> 0 bytes .../python3.4/__pycache__/imp.cpython-34.pyc | Bin 9874 -> 0 bytes .../python3.4/__pycache__/io.cpython-34.pyc | Bin 3464 -> 0 bytes .../__pycache__/keyword.cpython-34.pyc | Bin 1953 -> 0 bytes .../__pycache__/linecache.cpython-34.pyc | Bin 3029 -> 0 bytes .../__pycache__/locale.cpython-34.pyc | Bin 37272 -> 0 bytes .../__pycache__/operator.cpython-34.pyc | Bin 12785 -> 0 bytes .../python3.4/__pycache__/os.cpython-34.pyc | Bin 29665 -> 0 bytes .../__pycache__/posixpath.cpython-34.pyc | Bin 9816 -> 0 bytes .../__pycache__/random.cpython-34.pyc | Bin 19066 -> 0 bytes .../python3.4/__pycache__/re.cpython-34.pyc | Bin 14557 -> 0 bytes .../__pycache__/reprlib.cpython-34.pyc | Bin 5879 -> 0 bytes .../__pycache__/shutil.cpython-34.pyc | Bin 32779 -> 0 bytes .../python3.4/__pycache__/site.cpython-34.pyc | Bin 22625 -> 0 bytes .../__pycache__/sre_compile.cpython-34.pyc | Bin 11942 -> 0 bytes .../__pycache__/sre_constants.cpython-34.pyc | Bin 5588 -> 0 bytes .../__pycache__/sre_parse.cpython-34.pyc | Bin 19839 -> 0 bytes .../python3.4/__pycache__/stat.cpython-34.pyc | Bin 3585 -> 0 bytes .../__pycache__/struct.cpython-34.pyc | Bin 354 -> 0 bytes .../__pycache__/tarfile.cpython-34.pyc | Bin 67753 -> 0 bytes .../__pycache__/tempfile.cpython-34.pyc | Bin 24642 -> 0 bytes .../__pycache__/token.cpython-34.pyc | Bin 3622 -> 0 bytes .../__pycache__/tokenize.cpython-34.pyc | Bin 19609 -> 0 bytes .../__pycache__/types.cpython-34.pyc | Bin 5387 -> 0 bytes .../__pycache__/warnings.cpython-34.pyc | Bin 12271 -> 0 bytes .../__pycache__/weakref.cpython-34.pyc | Bin 19904 -> 0 bytes env/lib/python3.4/_bootlocale.py | 1 - env/lib/python3.4/_collections_abc.py | 1 - env/lib/python3.4/_dummy_thread.py | 1 - env/lib/python3.4/_weakrefset.py | 1 - env/lib/python3.4/abc.py | 1 - env/lib/python3.4/base64.py | 1 - env/lib/python3.4/bisect.py | 1 - env/lib/python3.4/codecs.py | 1 - env/lib/python3.4/collections | 1 - .../python3.4/config-3.4m-x86_64-linux-gnu | 1 - env/lib/python3.4/copy.py | 1 - env/lib/python3.4/copyreg.py | 1 - env/lib/python3.4/distutils/__init__.py | 101 - .../__pycache__/__init__.cpython-34.pyc | Bin 3163 -> 0 bytes env/lib/python3.4/distutils/distutils.cfg | 6 - env/lib/python3.4/encodings | 1 - env/lib/python3.4/fnmatch.py | 1 - env/lib/python3.4/functools.py | 1 - env/lib/python3.4/genericpath.py | 1 - env/lib/python3.4/hashlib.py | 1 - env/lib/python3.4/heapq.py | 1 - env/lib/python3.4/hmac.py | 1 - env/lib/python3.4/imp.py | 1 - env/lib/python3.4/importlib | 1 - env/lib/python3.4/io.py | 1 - env/lib/python3.4/keyword.py | 1 - env/lib/python3.4/lib-dynload | 1 - env/lib/python3.4/linecache.py | 1 - env/lib/python3.4/locale.py | 1 - env/lib/python3.4/no-global-site-packages.txt | 0 env/lib/python3.4/ntpath.py | 1 - env/lib/python3.4/operator.py | 1 - env/lib/python3.4/orig-prefix.txt | 1 - env/lib/python3.4/os.py | 1 - env/lib/python3.4/plat-x86_64-linux-gnu | 1 - env/lib/python3.4/posixpath.py | 1 - env/lib/python3.4/random.py | 1 - env/lib/python3.4/re.py | 1 - env/lib/python3.4/reprlib.py | 1 - env/lib/python3.4/rlcompleter.py | 1 - env/lib/python3.4/shutil.py | 1 - .../__pycache__/easy_install.cpython-34.pyc | Bin 289 -> 0 bytes .../__pycache__/update_checker.cpython-34.pyc | Bin 8575 -> 0 bytes .../update_checker_test.cpython-34.pyc | Bin 3651 -> 0 bytes .../DESCRIPTION.rst | 49 - .../certifi-2017.7.27.1.dist-info/INSTALLER | 1 - .../certifi-2017.7.27.1.dist-info/METADATA | 71 - .../certifi-2017.7.27.1.dist-info/RECORD | 16 - .../certifi-2017.7.27.1.dist-info/WHEEL | 6 - .../metadata.json | 1 - .../top_level.txt | 1 - .../site-packages/certifi/__init__.py | 3 - .../site-packages/certifi/__main__.py | 2 - .../__pycache__/__init__.cpython-34.pyc | Bin 229 -> 0 bytes .../__pycache__/__main__.cpython-34.pyc | Bin 197 -> 0 bytes .../certifi/__pycache__/core.cpython-34.pyc | Bin 1120 -> 0 bytes .../site-packages/certifi/cacert.pem | 4834 ----------- .../python3.4/site-packages/certifi/core.py | 36 - .../site-packages/certifi/old_root.pem | 414 - .../python3.4/site-packages/certifi/weak.pem | 5248 ----------- .../chardet-3.0.4.dist-info/DESCRIPTION.rst | 70 - .../chardet-3.0.4.dist-info/INSTALLER | 1 - .../chardet-3.0.4.dist-info/METADATA | 96 - .../chardet-3.0.4.dist-info/RECORD | 91 - .../chardet-3.0.4.dist-info/WHEEL | 6 - .../chardet-3.0.4.dist-info/entry_points.txt | 3 - .../chardet-3.0.4.dist-info/metadata.json | 1 - .../chardet-3.0.4.dist-info/top_level.txt | 1 - .../site-packages/chardet/__init__.py | 39 - .../__pycache__/__init__.cpython-34.pyc | Bin 841 -> 0 bytes .../__pycache__/big5freq.cpython-34.pyc | Bin 54675 -> 0 bytes .../__pycache__/big5prober.cpython-34.pyc | Bin 1103 -> 0 bytes .../chardistribution.cpython-34.pyc | Bin 6660 -> 0 bytes .../charsetgroupprober.cpython-34.pyc | Bin 2393 -> 0 bytes .../__pycache__/charsetprober.cpython-34.pyc | Bin 3596 -> 0 bytes .../codingstatemachine.cpython-34.pyc | Bin 2928 -> 0 bytes .../chardet/__pycache__/compat.cpython-34.pyc | Bin 332 -> 0 bytes .../__pycache__/cp949prober.cpython-34.pyc | Bin 1110 -> 0 bytes .../chardet/__pycache__/enums.cpython-34.pyc | Bin 2692 -> 0 bytes .../__pycache__/escprober.cpython-34.pyc | Bin 2763 -> 0 bytes .../chardet/__pycache__/escsm.cpython-34.pyc | Bin 7878 -> 0 bytes .../__pycache__/eucjpprober.cpython-34.pyc | Bin 2558 -> 0 bytes .../__pycache__/euckrfreq.cpython-34.pyc | Bin 24061 -> 0 bytes .../__pycache__/euckrprober.cpython-34.pyc | Bin 1111 -> 0 bytes .../__pycache__/euctwfreq.cpython-34.pyc | Bin 54684 -> 0 bytes .../__pycache__/euctwprober.cpython-34.pyc | Bin 1111 -> 0 bytes .../__pycache__/gb2312freq.cpython-34.pyc | Bin 38326 -> 0 bytes .../__pycache__/gb2312prober.cpython-34.pyc | Bin 1119 -> 0 bytes .../__pycache__/hebrewprober.cpython-34.pyc | Bin 3177 -> 0 bytes .../__pycache__/jisfreq.cpython-34.pyc | Bin 44470 -> 0 bytes .../chardet/__pycache__/jpcntx.cpython-34.pyc | Bin 24782 -> 0 bytes .../langbulgarianmodel.cpython-34.pyc | Bin 24890 -> 0 bytes .../langcyrillicmodel.cpython-34.pyc | Bin 30577 -> 0 bytes .../__pycache__/langgreekmodel.cpython-34.pyc | Bin 24568 -> 0 bytes .../langhebrewmodel.cpython-34.pyc | Bin 23388 -> 0 bytes .../langhungarianmodel.cpython-34.pyc | Bin 24864 -> 0 bytes .../__pycache__/langthaimodel.cpython-34.pyc | Bin 23367 -> 0 bytes .../langturkishmodel.cpython-34.pyc | Bin 23385 -> 0 bytes .../__pycache__/latin1prober.cpython-34.pyc | Bin 3272 -> 0 bytes .../mbcharsetprober.cpython-34.pyc | Bin 2364 -> 0 bytes .../mbcsgroupprober.cpython-34.pyc | Bin 1122 -> 0 bytes .../chardet/__pycache__/mbcssm.cpython-34.pyc | Bin 18888 -> 0 bytes .../sbcharsetprober.cpython-34.pyc | Bin 3196 -> 0 bytes .../sbcsgroupprober.cpython-34.pyc | Bin 1674 -> 0 bytes .../__pycache__/sjisprober.cpython-34.pyc | Bin 2586 -> 0 bytes .../universaldetector.cpython-34.pyc | Bin 6480 -> 0 bytes .../__pycache__/utf8prober.cpython-34.pyc | Bin 2062 -> 0 bytes .../__pycache__/version.cpython-34.pyc | Bin 390 -> 0 bytes .../site-packages/chardet/big5freq.py | 386 - .../site-packages/chardet/big5prober.py | 47 - .../site-packages/chardet/chardistribution.py | 233 - .../chardet/charsetgroupprober.py | 106 - .../site-packages/chardet/charsetprober.py | 145 - .../site-packages/chardet/cli/__init__.py | 1 - .../cli/__pycache__/__init__.cpython-34.pyc | Bin 138 -> 0 bytes .../cli/__pycache__/chardetect.cpython-34.pyc | Bin 2753 -> 0 bytes .../site-packages/chardet/cli/chardetect.py | 85 - .../chardet/codingstatemachine.py | 88 - .../python3.4/site-packages/chardet/compat.py | 34 - .../site-packages/chardet/cp949prober.py | 49 - .../python3.4/site-packages/chardet/enums.py | 76 - .../site-packages/chardet/escprober.py | 101 - .../python3.4/site-packages/chardet/escsm.py | 246 - .../site-packages/chardet/eucjpprober.py | 92 - .../site-packages/chardet/euckrfreq.py | 195 - .../site-packages/chardet/euckrprober.py | 47 - .../site-packages/chardet/euctwfreq.py | 387 - .../site-packages/chardet/euctwprober.py | 46 - .../site-packages/chardet/gb2312freq.py | 283 - .../site-packages/chardet/gb2312prober.py | 46 - .../site-packages/chardet/hebrewprober.py | 292 - .../site-packages/chardet/jisfreq.py | 325 - .../python3.4/site-packages/chardet/jpcntx.py | 233 - .../chardet/langbulgarianmodel.py | 228 - .../chardet/langcyrillicmodel.py | 333 - .../site-packages/chardet/langgreekmodel.py | 225 - .../site-packages/chardet/langhebrewmodel.py | 200 - .../chardet/langhungarianmodel.py | 225 - .../site-packages/chardet/langthaimodel.py | 199 - .../site-packages/chardet/langturkishmodel.py | 193 - .../site-packages/chardet/latin1prober.py | 145 - .../site-packages/chardet/mbcharsetprober.py | 91 - .../site-packages/chardet/mbcsgroupprober.py | 54 - .../python3.4/site-packages/chardet/mbcssm.py | 572 -- .../site-packages/chardet/sbcharsetprober.py | 132 - .../site-packages/chardet/sbcsgroupprober.py | 73 - .../site-packages/chardet/sjisprober.py | 92 - .../chardet/universaldetector.py | 286 - .../site-packages/chardet/utf8prober.py | 82 - .../site-packages/chardet/version.py | 9 - .../python3.4/site-packages/easy_install.py | 5 - .../idna-2.6.dist-info/DESCRIPTION.rst | 213 - .../idna-2.6.dist-info/INSTALLER | 1 - .../site-packages/idna-2.6.dist-info/METADATA | 239 - .../site-packages/idna-2.6.dist-info/RECORD | 23 - .../site-packages/idna-2.6.dist-info/WHEEL | 6 - .../idna-2.6.dist-info/metadata.json | 1 - .../idna-2.6.dist-info/top_level.txt | 1 - .../python3.4/site-packages/idna/__init__.py | 2 - .../idna/__pycache__/__init__.cpython-34.pyc | Bin 203 -> 0 bytes .../idna/__pycache__/codec.cpython-34.pyc | Bin 3388 -> 0 bytes .../idna/__pycache__/compat.cpython-34.pyc | Bin 581 -> 0 bytes .../idna/__pycache__/core.cpython-34.pyc | Bin 10077 -> 0 bytes .../idna/__pycache__/idnadata.cpython-34.pyc | Bin 26983 -> 0 bytes .../idna/__pycache__/intranges.cpython-34.pyc | Bin 1875 -> 0 bytes .../__pycache__/package_data.cpython-34.pyc | Bin 153 -> 0 bytes .../idna/__pycache__/uts46data.cpython-34.pyc | Bin 230858 -> 0 bytes env/lib/python3.4/site-packages/idna/codec.py | 118 - .../python3.4/site-packages/idna/compat.py | 12 - env/lib/python3.4/site-packages/idna/core.py | 387 - .../python3.4/site-packages/idna/idnadata.py | 1585 ---- .../python3.4/site-packages/idna/intranges.py | 53 - .../site-packages/idna/package_data.py | 2 - .../python3.4/site-packages/idna/uts46data.py | 7634 ----------------- .../pip-9.0.1.dist-info/DESCRIPTION.rst | 39 - .../pip-9.0.1.dist-info/INSTALLER | 1 - .../pip-9.0.1.dist-info/METADATA | 69 - .../site-packages/pip-9.0.1.dist-info/RECORD | 501 -- .../site-packages/pip-9.0.1.dist-info/WHEEL | 6 - .../pip-9.0.1.dist-info/entry_points.txt | 5 - .../pip-9.0.1.dist-info/metadata.json | 1 - .../pip-9.0.1.dist-info/top_level.txt | 1 - .../python3.4/site-packages/pip/__init__.py | 331 - .../python3.4/site-packages/pip/__main__.py | 19 - .../pip/__pycache__/__init__.cpython-34.pyc | Bin 9303 -> 0 bytes .../pip/__pycache__/__main__.cpython-34.pyc | Bin 424 -> 0 bytes .../__pycache__/basecommand.cpython-34.pyc | Bin 7975 -> 0 bytes .../pip/__pycache__/baseparser.cpython-34.pyc | Bin 10062 -> 0 bytes .../pip/__pycache__/cmdoptions.cpython-34.pyc | Bin 13922 -> 0 bytes .../pip/__pycache__/download.cpython-34.pyc | Bin 22363 -> 0 bytes .../pip/__pycache__/exceptions.cpython-34.pyc | Bin 10968 -> 0 bytes .../pip/__pycache__/index.cpython-34.pyc | Bin 32728 -> 0 bytes .../pip/__pycache__/locations.cpython-34.pyc | Bin 4306 -> 0 bytes .../pip/__pycache__/pep425tags.cpython-34.pyc | Bin 8278 -> 0 bytes .../__pycache__/status_codes.cpython-34.pyc | Bin 354 -> 0 bytes .../pip/__pycache__/wheel.cpython-34.pyc | Bin 23853 -> 0 bytes .../site-packages/pip/_vendor/__init__.py | 107 - .../__pycache__/__init__.cpython-34.pyc | Bin 2914 -> 0 bytes .../__pycache__/appdirs.cpython-34.pyc | Bin 19788 -> 0 bytes .../_vendor/__pycache__/distro.cpython-34.pyc | Bin 33753 -> 0 bytes .../__pycache__/ipaddress.cpython-34.pyc | Bin 70870 -> 0 bytes .../__pycache__/ordereddict.cpython-34.pyc | Bin 3892 -> 0 bytes .../__pycache__/pyparsing.cpython-34.pyc | Bin 212841 -> 0 bytes .../__pycache__/re-vendor.cpython-34.pyc | Bin 1183 -> 0 bytes .../__pycache__/retrying.cpython-34.pyc | Bin 8725 -> 0 bytes .../_vendor/__pycache__/six.cpython-34.pyc | Bin 26448 -> 0 bytes .../site-packages/pip/_vendor/appdirs.py | 552 -- .../pip/_vendor/cachecontrol/__init__.py | 11 - .../__pycache__/__init__.cpython-34.pyc | Bin 520 -> 0 bytes .../__pycache__/_cmd.cpython-34.pyc | Bin 1635 -> 0 bytes .../__pycache__/adapter.cpython-34.pyc | Bin 3101 -> 0 bytes .../__pycache__/cache.cpython-34.pyc | Bin 1805 -> 0 bytes .../__pycache__/compat.cpython-34.pyc | Bin 594 -> 0 bytes .../__pycache__/controller.cpython-34.pyc | Bin 8493 -> 0 bytes .../__pycache__/filewrapper.cpython-34.pyc | Bin 2233 -> 0 bytes .../__pycache__/heuristics.cpython-34.pyc | Bin 4951 -> 0 bytes .../__pycache__/serialize.cpython-34.pyc | Bin 4881 -> 0 bytes .../__pycache__/wrapper.cpython-34.pyc | Bin 560 -> 0 bytes .../pip/_vendor/cachecontrol/_cmd.py | 60 - .../pip/_vendor/cachecontrol/adapter.py | 125 - .../pip/_vendor/cachecontrol/cache.py | 39 - .../_vendor/cachecontrol/caches/__init__.py | 18 - .../__pycache__/__init__.cpython-34.pyc | Bin 577 -> 0 bytes .../__pycache__/file_cache.cpython-34.pyc | Bin 3001 -> 0 bytes .../__pycache__/redis_cache.cpython-34.pyc | Bin 1762 -> 0 bytes .../_vendor/cachecontrol/caches/file_cache.py | 116 - .../cachecontrol/caches/redis_cache.py | 41 - .../pip/_vendor/cachecontrol/compat.py | 20 - .../pip/_vendor/cachecontrol/controller.py | 353 - .../pip/_vendor/cachecontrol/filewrapper.py | 78 - .../pip/_vendor/cachecontrol/heuristics.py | 138 - .../pip/_vendor/cachecontrol/serialize.py | 196 - .../pip/_vendor/cachecontrol/wrapper.py | 21 - .../pip/_vendor/colorama/__init__.py | 7 - .../__pycache__/__init__.cpython-34.pyc | Bin 420 -> 0 bytes .../colorama/__pycache__/ansi.cpython-34.pyc | Bin 3476 -> 0 bytes .../__pycache__/ansitowin32.cpython-34.pyc | Bin 7951 -> 0 bytes .../__pycache__/initialise.cpython-34.pyc | Bin 1818 -> 0 bytes .../colorama/__pycache__/win32.cpython-34.pyc | Bin 3975 -> 0 bytes .../__pycache__/winterm.cpython-34.pyc | Bin 4986 -> 0 bytes .../pip/_vendor/colorama/ansi.py | 102 - .../pip/_vendor/colorama/ansitowin32.py | 236 - .../pip/_vendor/colorama/initialise.py | 82 - .../pip/_vendor/colorama/win32.py | 154 - .../pip/_vendor/colorama/winterm.py | 162 - .../pip/_vendor/distlib/__init__.py | 23 - .../__pycache__/__init__.cpython-34.pyc | Bin 1046 -> 0 bytes .../distlib/__pycache__/compat.cpython-34.pyc | Bin 34630 -> 0 bytes .../__pycache__/database.cpython-34.pyc | Bin 45094 -> 0 bytes .../distlib/__pycache__/index.cpython-34.pyc | Bin 18481 -> 0 bytes .../__pycache__/locators.cpython-34.pyc | Bin 41724 -> 0 bytes .../__pycache__/manifest.cpython-34.pyc | Bin 11212 -> 0 bytes .../__pycache__/markers.cpython-34.pyc | Bin 6595 -> 0 bytes .../__pycache__/metadata.cpython-34.pyc | Bin 30018 -> 0 bytes .../__pycache__/resources.cpython-34.pyc | Bin 11822 -> 0 bytes .../__pycache__/scripts.cpython-34.pyc | Bin 11013 -> 0 bytes .../distlib/__pycache__/util.cpython-34.pyc | Bin 49178 -> 0 bytes .../__pycache__/version.cpython-34.pyc | Bin 23092 -> 0 bytes .../distlib/__pycache__/wheel.cpython-34.pyc | Bin 28072 -> 0 bytes .../pip/_vendor/distlib/_backport/__init__.py | 6 - .../__pycache__/__init__.cpython-34.pyc | Bin 436 -> 0 bytes .../_backport/__pycache__/misc.cpython-34.pyc | Bin 1107 -> 0 bytes .../__pycache__/shutil.cpython-34.pyc | Bin 23103 -> 0 bytes .../__pycache__/sysconfig.cpython-34.pyc | Bin 17763 -> 0 bytes .../__pycache__/tarfile.cpython-34.pyc | Bin 69535 -> 0 bytes .../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 | 1111 --- .../pip/_vendor/distlib/database.py | 1312 --- .../pip/_vendor/distlib/index.py | 515 -- .../pip/_vendor/distlib/locators.py | 1283 --- .../pip/_vendor/distlib/manifest.py | 393 - .../pip/_vendor/distlib/markers.py | 190 - .../pip/_vendor/distlib/metadata.py | 1068 --- .../pip/_vendor/distlib/resources.py | 355 - .../pip/_vendor/distlib/scripts.py | 384 - .../site-packages/pip/_vendor/distlib/t32.exe | Bin 89088 -> 0 bytes .../site-packages/pip/_vendor/distlib/t64.exe | Bin 97792 -> 0 bytes .../site-packages/pip/_vendor/distlib/util.py | 1611 ---- .../pip/_vendor/distlib/version.py | 742 -- .../site-packages/pip/_vendor/distlib/w32.exe | Bin 85504 -> 0 bytes .../site-packages/pip/_vendor/distlib/w64.exe | Bin 94208 -> 0 bytes .../pip/_vendor/distlib/wheel.py | 978 --- .../site-packages/pip/_vendor/distro.py | 1081 --- .../pip/_vendor/html5lib/__init__.py | 25 - .../__pycache__/__init__.cpython-34.pyc | Bin 953 -> 0 bytes .../__pycache__/_ihatexml.cpython-34.pyc | Bin 14460 -> 0 bytes .../__pycache__/_inputstream.cpython-34.pyc | Bin 24959 -> 0 bytes .../__pycache__/_tokenizer.cpython-34.pyc | Bin 48234 -> 0 bytes .../__pycache__/_utils.cpython-34.pyc | Bin 3623 -> 0 bytes .../__pycache__/constants.cpython-34.pyc | Bin 74454 -> 0 bytes .../__pycache__/html5parser.cpython-34.pyc | Bin 106860 -> 0 bytes .../__pycache__/serializer.cpython-34.pyc | Bin 10373 -> 0 bytes .../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 - .../_trie/__pycache__/__init__.cpython-34.pyc | Bin 395 -> 0 bytes .../_trie/__pycache__/_base.cpython-34.pyc | Bin 1556 -> 0 bytes .../_trie/__pycache__/datrie.cpython-34.pyc | Bin 2112 -> 0 bytes .../_trie/__pycache__/py.cpython-34.pyc | Bin 2403 -> 0 bytes .../pip/_vendor/html5lib/_trie/_base.py | 38 - .../pip/_vendor/html5lib/_trie/datrie.py | 44 - .../pip/_vendor/html5lib/_trie/py.py | 67 - .../pip/_vendor/html5lib/_utils.py | 127 - .../pip/_vendor/html5lib/constants.py | 2945 ------- .../pip/_vendor/html5lib/filters/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 151 -> 0 bytes .../alphabeticalattributes.cpython-34.pyc | Bin 1097 -> 0 bytes .../filters/__pycache__/base.cpython-34.pyc | Bin 841 -> 0 bytes .../inject_meta_charset.cpython-34.pyc | Bin 1850 -> 0 bytes .../filters/__pycache__/lint.cpython-34.pyc | Bin 2646 -> 0 bytes .../__pycache__/optionaltags.cpython-34.pyc | Bin 3400 -> 0 bytes .../__pycache__/sanitizer.cpython-34.pyc | Bin 19205 -> 0 bytes .../__pycache__/whitespace.cpython-34.pyc | Bin 1345 -> 0 bytes .../filters/alphabeticalattributes.py | 20 - .../pip/_vendor/html5lib/filters/base.py | 12 - .../html5lib/filters/inject_meta_charset.py | 65 - .../pip/_vendor/html5lib/filters/lint.py | 81 - .../_vendor/html5lib/filters/optionaltags.py | 206 - .../pip/_vendor/html5lib/filters/sanitizer.py | 865 -- .../_vendor/html5lib/filters/whitespace.py | 38 - .../pip/_vendor/html5lib/html5parser.py | 2733 ------ .../pip/_vendor/html5lib/serializer.py | 334 - .../_vendor/html5lib/treeadapters/__init__.py | 12 - .../__pycache__/__init__.cpython-34.pyc | Bin 427 -> 0 bytes .../__pycache__/genshi.cpython-34.pyc | Bin 1662 -> 0 bytes .../__pycache__/sax.cpython-34.pyc | Bin 1501 -> 0 bytes .../_vendor/html5lib/treeadapters/genshi.py | 47 - .../pip/_vendor/html5lib/treeadapters/sax.py | 44 - .../_vendor/html5lib/treebuilders/__init__.py | 76 - .../__pycache__/__init__.cpython-34.pyc | Bin 3177 -> 0 bytes .../__pycache__/base.cpython-34.pyc | Bin 11980 -> 0 bytes .../__pycache__/dom.cpython-34.pyc | Bin 10016 -> 0 bytes .../__pycache__/etree.cpython-34.pyc | Bin 13019 -> 0 bytes .../__pycache__/etree_lxml.cpython-34.pyc | Bin 12973 -> 0 bytes .../pip/_vendor/html5lib/treebuilders/base.py | 383 - .../pip/_vendor/html5lib/treebuilders/dom.py | 236 - .../_vendor/html5lib/treebuilders/etree.py | 340 - .../html5lib/treebuilders/etree_lxml.py | 367 - .../_vendor/html5lib/treewalkers/__init__.py | 143 - .../__pycache__/__init__.cpython-34.pyc | Bin 4100 -> 0 bytes .../__pycache__/base.cpython-34.pyc | Bin 4984 -> 0 bytes .../__pycache__/dom.cpython-34.pyc | Bin 1819 -> 0 bytes .../__pycache__/etree.cpython-34.pyc | Bin 4030 -> 0 bytes .../__pycache__/etree_lxml.cpython-34.pyc | Bin 7265 -> 0 bytes .../__pycache__/genshi.cpython-34.pyc | Bin 2072 -> 0 bytes .../pip/_vendor/html5lib/treewalkers/base.py | 150 - .../pip/_vendor/html5lib/treewalkers/dom.py | 43 - .../pip/_vendor/html5lib/treewalkers/etree.py | 137 - .../html5lib/treewalkers/etree_lxml.py | 213 - .../_vendor/html5lib/treewalkers/genshi.py | 69 - .../site-packages/pip/_vendor/ipaddress.py | 2425 ------ .../pip/_vendor/lockfile/__init__.py | 347 - .../__pycache__/__init__.cpython-34.pyc | Bin 10304 -> 0 bytes .../__pycache__/linklockfile.cpython-34.pyc | Bin 2453 -> 0 bytes .../__pycache__/mkdirlockfile.cpython-34.pyc | Bin 2871 -> 0 bytes .../__pycache__/pidlockfile.cpython-34.pyc | Bin 5085 -> 0 bytes .../__pycache__/sqlitelockfile.cpython-34.pyc | Bin 4072 -> 0 bytes .../symlinklockfile.cpython-34.pyc | Bin 2328 -> 0 bytes .../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 - .../site-packages/pip/_vendor/ordereddict.py | 127 - .../pip/_vendor/packaging/__about__.py | 21 - .../pip/_vendor/packaging/__init__.py | 14 - .../__pycache__/__about__.cpython-34.pyc | Bin 704 -> 0 bytes .../__pycache__/__init__.cpython-34.pyc | Bin 544 -> 0 bytes .../__pycache__/_compat.cpython-34.pyc | Bin 1020 -> 0 bytes .../__pycache__/_structures.cpython-34.pyc | Bin 2940 -> 0 bytes .../__pycache__/markers.cpython-34.pyc | Bin 9560 -> 0 bytes .../__pycache__/requirements.cpython-34.pyc | Bin 4237 -> 0 bytes .../__pycache__/specifiers.cpython-34.pyc | Bin 21210 -> 0 bytes .../__pycache__/utils.cpython-34.pyc | Bin 466 -> 0 bytes .../__pycache__/version.cpython-34.pyc | Bin 11476 -> 0 bytes .../pip/_vendor/packaging/_compat.py | 30 - .../pip/_vendor/packaging/_structures.py | 68 - .../pip/_vendor/packaging/markers.py | 303 - .../pip/_vendor/packaging/requirements.py | 129 - .../pip/_vendor/packaging/specifiers.py | 774 -- .../pip/_vendor/packaging/utils.py | 14 - .../pip/_vendor/packaging/version.py | 393 - .../pip/_vendor/pkg_resources/__init__.py | 3052 ------- .../__pycache__/__init__.cpython-34.pyc | Bin 101968 -> 0 bytes .../pip/_vendor/progress/__init__.py | 123 - .../__pycache__/__init__.cpython-34.pyc | Bin 4049 -> 0 bytes .../progress/__pycache__/bar.cpython-34.pyc | Bin 2632 -> 0 bytes .../__pycache__/counter.cpython-34.pyc | Bin 1645 -> 0 bytes .../__pycache__/helpers.cpython-34.pyc | Bin 3181 -> 0 bytes .../__pycache__/spinner.cpython-34.pyc | Bin 1270 -> 0 bytes .../site-packages/pip/_vendor/progress/bar.py | 83 - .../pip/_vendor/progress/counter.py | 47 - .../pip/_vendor/progress/helpers.py | 91 - .../pip/_vendor/progress/spinner.py | 40 - .../site-packages/pip/_vendor/pyparsing.py | 5696 ------------ .../site-packages/pip/_vendor/re-vendor.py | 34 - .../pip/_vendor/requests/__init__.py | 88 - .../__pycache__/__init__.cpython-34.pyc | Bin 2405 -> 0 bytes .../__pycache__/adapters.cpython-34.pyc | Bin 16680 -> 0 bytes .../requests/__pycache__/api.cpython-34.pyc | Bin 6047 -> 0 bytes .../requests/__pycache__/auth.cpython-34.pyc | Bin 7814 -> 0 bytes .../requests/__pycache__/certs.cpython-34.pyc | Bin 807 -> 0 bytes .../__pycache__/compat.cpython-34.pyc | Bin 1513 -> 0 bytes .../__pycache__/cookies.cpython-34.pyc | Bin 19515 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 5114 -> 0 bytes .../requests/__pycache__/hooks.cpython-34.pyc | Bin 1012 -> 0 bytes .../__pycache__/models.cpython-34.pyc | Bin 23911 -> 0 bytes .../__pycache__/sessions.cpython-34.pyc | Bin 19280 -> 0 bytes .../__pycache__/status_codes.cpython-34.pyc | Bin 5231 -> 0 bytes .../__pycache__/structures.cpython-34.pyc | Bin 4531 -> 0 bytes .../requests/__pycache__/utils.cpython-34.pyc | Bin 20129 -> 0 bytes .../pip/_vendor/requests/adapters.py | 503 -- .../site-packages/pip/_vendor/requests/api.py | 148 - .../pip/_vendor/requests/auth.py | 252 - .../pip/_vendor/requests/cacert.pem | 5616 ------------ .../pip/_vendor/requests/certs.py | 25 - .../pip/_vendor/requests/compat.py | 68 - .../pip/_vendor/requests/cookies.py | 540 -- .../pip/_vendor/requests/exceptions.py | 114 - .../pip/_vendor/requests/hooks.py | 34 - .../pip/_vendor/requests/models.py | 873 -- .../pip/_vendor/requests/packages/__init__.py | 36 - .../__pycache__/__init__.cpython-34.pyc | Bin 1584 -> 0 bytes .../requests/packages/chardet/__init__.py | 32 - .../__pycache__/__init__.cpython-34.pyc | Bin 697 -> 0 bytes .../__pycache__/big5freq.cpython-34.pyc | Bin 113792 -> 0 bytes .../__pycache__/big5prober.cpython-34.pyc | Bin 957 -> 0 bytes .../__pycache__/chardetect.cpython-34.pyc | Bin 2646 -> 0 bytes .../chardistribution.cpython-34.pyc | Bin 6586 -> 0 bytes .../charsetgroupprober.cpython-34.pyc | Bin 2211 -> 0 bytes .../__pycache__/charsetprober.cpython-34.pyc | Bin 1798 -> 0 bytes .../codingstatemachine.cpython-34.pyc | Bin 1529 -> 0 bytes .../chardet/__pycache__/compat.cpython-34.pyc | Bin 489 -> 0 bytes .../__pycache__/constants.cpython-34.pyc | Bin 326 -> 0 bytes .../__pycache__/cp949prober.cpython-34.pyc | Bin 964 -> 0 bytes .../__pycache__/escprober.cpython-34.pyc | Bin 2069 -> 0 bytes .../chardet/__pycache__/escsm.cpython-34.pyc | Bin 7220 -> 0 bytes .../__pycache__/eucjpprober.cpython-34.pyc | Bin 2425 -> 0 bytes .../__pycache__/euckrfreq.cpython-34.pyc | Bin 88783 -> 0 bytes .../__pycache__/euckrprober.cpython-34.pyc | Bin 965 -> 0 bytes .../__pycache__/euctwfreq.cpython-34.pyc | Bin 61181 -> 0 bytes .../__pycache__/euctwprober.cpython-34.pyc | Bin 965 -> 0 bytes .../__pycache__/gb2312freq.cpython-34.pyc | Bin 68799 -> 0 bytes .../__pycache__/gb2312prober.cpython-34.pyc | Bin 971 -> 0 bytes .../__pycache__/hebrewprober.cpython-34.pyc | Bin 2956 -> 0 bytes .../__pycache__/jisfreq.cpython-34.pyc | Bin 84015 -> 0 bytes .../chardet/__pycache__/jpcntx.cpython-34.pyc | Bin 24690 -> 0 bytes .../langbulgarianmodel.cpython-34.pyc | Bin 24858 -> 0 bytes .../langcyrillicmodel.cpython-34.pyc | Bin 30504 -> 0 bytes .../__pycache__/langgreekmodel.cpython-34.pyc | Bin 24545 -> 0 bytes .../langhebrewmodel.cpython-34.pyc | Bin 23374 -> 0 bytes .../langhungarianmodel.cpython-34.pyc | Bin 24843 -> 0 bytes .../__pycache__/langthaimodel.cpython-34.pyc | Bin 23360 -> 0 bytes .../__pycache__/latin1prober.cpython-34.pyc | Bin 3139 -> 0 bytes .../mbcharsetprober.cpython-34.pyc | Bin 2129 -> 0 bytes .../mbcsgroupprober.cpython-34.pyc | Bin 1094 -> 0 bytes .../chardet/__pycache__/mbcssm.cpython-34.pyc | Bin 17469 -> 0 bytes .../sbcharsetprober.cpython-34.pyc | Bin 2950 -> 0 bytes .../sbcsgroupprober.cpython-34.pyc | Bin 1723 -> 0 bytes .../__pycache__/sjisprober.cpython-34.pyc | Bin 2459 -> 0 bytes .../universaldetector.cpython-34.pyc | Bin 3740 -> 0 bytes .../__pycache__/utf8prober.cpython-34.pyc | Bin 1894 -> 0 bytes .../requests/packages/chardet/big5freq.py | 925 -- .../requests/packages/chardet/big5prober.py | 42 - .../requests/packages/chardet/chardetect.py | 80 - .../packages/chardet/chardistribution.py | 231 - .../packages/chardet/charsetgroupprober.py | 106 - .../packages/chardet/charsetprober.py | 62 - .../packages/chardet/codingstatemachine.py | 61 - .../requests/packages/chardet/compat.py | 34 - .../requests/packages/chardet/constants.py | 39 - .../requests/packages/chardet/cp949prober.py | 44 - .../requests/packages/chardet/escprober.py | 86 - .../requests/packages/chardet/escsm.py | 242 - .../requests/packages/chardet/eucjpprober.py | 90 - .../requests/packages/chardet/euckrfreq.py | 596 -- .../requests/packages/chardet/euckrprober.py | 42 - .../requests/packages/chardet/euctwfreq.py | 428 - .../requests/packages/chardet/euctwprober.py | 41 - .../requests/packages/chardet/gb2312freq.py | 472 - .../requests/packages/chardet/gb2312prober.py | 41 - .../requests/packages/chardet/hebrewprober.py | 283 - .../requests/packages/chardet/jisfreq.py | 569 -- .../requests/packages/chardet/jpcntx.py | 227 - .../packages/chardet/langbulgarianmodel.py | 229 - .../packages/chardet/langcyrillicmodel.py | 329 - .../packages/chardet/langgreekmodel.py | 225 - .../packages/chardet/langhebrewmodel.py | 201 - .../packages/chardet/langhungarianmodel.py | 225 - .../packages/chardet/langthaimodel.py | 200 - .../requests/packages/chardet/latin1prober.py | 139 - .../packages/chardet/mbcharsetprober.py | 86 - .../packages/chardet/mbcsgroupprober.py | 54 - .../requests/packages/chardet/mbcssm.py | 572 -- .../packages/chardet/sbcharsetprober.py | 120 - .../packages/chardet/sbcsgroupprober.py | 69 - .../requests/packages/chardet/sjisprober.py | 91 - .../packages/chardet/universaldetector.py | 170 - .../requests/packages/chardet/utf8prober.py | 76 - .../requests/packages/urllib3/__init__.py | 96 - .../__pycache__/__init__.cpython-34.pyc | Bin 2785 -> 0 bytes .../__pycache__/_collections.cpython-34.pyc | Bin 11279 -> 0 bytes .../__pycache__/connection.cpython-34.pyc | Bin 9147 -> 0 bytes .../__pycache__/connectionpool.cpython-34.pyc | Bin 24052 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 9335 -> 0 bytes .../urllib3/__pycache__/fields.cpython-34.pyc | Bin 6134 -> 0 bytes .../__pycache__/filepost.cpython-34.pyc | Bin 2815 -> 0 bytes .../__pycache__/poolmanager.cpython-34.pyc | Bin 11494 -> 0 bytes .../__pycache__/request.cpython-34.pyc | Bin 5760 -> 0 bytes .../__pycache__/response.cpython-34.pyc | Bin 14839 -> 0 bytes .../requests/packages/urllib3/_collections.py | 324 - .../requests/packages/urllib3/connection.py | 330 - .../packages/urllib3/connectionpool.py | 866 -- .../packages/urllib3/contrib/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 168 -> 0 bytes .../__pycache__/appengine.cpython-34.pyc | Bin 7136 -> 0 bytes .../__pycache__/ntlmpool.cpython-34.pyc | Bin 3558 -> 0 bytes .../__pycache__/pyopenssl.cpython-34.pyc | Bin 10938 -> 0 bytes .../contrib/__pycache__/socks.cpython-34.pyc | Bin 4780 -> 0 bytes .../packages/urllib3/contrib/appengine.py | 231 - .../packages/urllib3/contrib/ntlmpool.py | 115 - .../packages/urllib3/contrib/pyopenssl.py | 358 - .../packages/urllib3/contrib/socks.py | 172 - .../requests/packages/urllib3/exceptions.py | 209 - .../requests/packages/urllib3/fields.py | 178 - .../requests/packages/urllib3/filepost.py | 94 - .../packages/urllib3/packages/__init__.py | 5 - .../__pycache__/__init__.cpython-34.pyc | Bin 319 -> 0 bytes .../__pycache__/ordered_dict.cpython-34.pyc | Bin 8904 -> 0 bytes .../packages/__pycache__/six.cpython-34.pyc | Bin 26483 -> 0 bytes .../packages/urllib3/packages/ordered_dict.py | 259 - .../requests/packages/urllib3/packages/six.py | 868 -- .../packages/ssl_match_hostname/__init__.py | 13 - .../__pycache__/__init__.cpython-34.pyc | Bin 497 -> 0 bytes .../_implementation.cpython-34.pyc | Bin 2502 -> 0 bytes .../ssl_match_hostname/_implementation.py | 105 - .../requests/packages/urllib3/poolmanager.py | 367 - .../requests/packages/urllib3/request.py | 151 - .../requests/packages/urllib3/response.py | 530 -- .../packages/urllib3/util/__init__.py | 46 - .../util/__pycache__/__init__.cpython-34.pyc | Bin 1167 -> 0 bytes .../__pycache__/connection.cpython-34.pyc | Bin 3513 -> 0 bytes .../util/__pycache__/request.cpython-34.pyc | Bin 2054 -> 0 bytes .../util/__pycache__/response.cpython-34.pyc | Bin 1924 -> 0 bytes .../util/__pycache__/retry.cpython-34.pyc | Bin 9628 -> 0 bytes .../util/__pycache__/ssl_.cpython-34.pyc | Bin 9287 -> 0 bytes .../util/__pycache__/timeout.cpython-34.pyc | Bin 9024 -> 0 bytes .../util/__pycache__/url.cpython-34.pyc | Bin 5327 -> 0 bytes .../packages/urllib3/util/connection.py | 144 - .../requests/packages/urllib3/util/request.py | 72 - .../packages/urllib3/util/response.py | 74 - .../requests/packages/urllib3/util/retry.py | 300 - .../requests/packages/urllib3/util/ssl_.py | 320 - .../requests/packages/urllib3/util/timeout.py | 242 - .../requests/packages/urllib3/util/url.py | 217 - .../pip/_vendor/requests/sessions.py | 712 -- .../pip/_vendor/requests/status_codes.py | 91 - .../pip/_vendor/requests/structures.py | 105 - .../pip/_vendor/requests/utils.py | 817 -- .../site-packages/pip/_vendor/retrying.py | 267 - .../site-packages/pip/_vendor/six.py | 868 -- .../pip/_vendor/webencodings/__init__.py | 342 - .../__pycache__/__init__.cpython-34.pyc | Bin 10088 -> 0 bytes .../__pycache__/labels.cpython-34.pyc | Bin 4651 -> 0 bytes .../__pycache__/mklabels.cpython-34.pyc | Bin 1984 -> 0 bytes .../__pycache__/tests.cpython-34.pyc | Bin 5946 -> 0 bytes .../__pycache__/x_user_defined.cpython-34.pyc | Bin 2741 -> 0 bytes .../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/pip/basecommand.py | 337 - .../python3.4/site-packages/pip/baseparser.py | 293 - .../python3.4/site-packages/pip/cmdoptions.py | 633 -- .../site-packages/pip/commands/__init__.py | 86 - .../__pycache__/__init__.cpython-34.pyc | Bin 2214 -> 0 bytes .../commands/__pycache__/check.cpython-34.pyc | Bin 1378 -> 0 bytes .../__pycache__/completion.cpython-34.pyc | Bin 2749 -> 0 bytes .../__pycache__/download.cpython-34.pyc | Bin 5813 -> 0 bytes .../__pycache__/freeze.cpython-34.pyc | Bin 2783 -> 0 bytes .../commands/__pycache__/hash.cpython-34.pyc | Bin 2051 -> 0 bytes .../commands/__pycache__/help.cpython-34.pyc | Bin 1156 -> 0 bytes .../__pycache__/install.cpython-34.pyc | Bin 10652 -> 0 bytes .../commands/__pycache__/list.cpython-34.pyc | Bin 10560 -> 0 bytes .../__pycache__/search.cpython-34.pyc | Bin 4517 -> 0 bytes .../commands/__pycache__/show.cpython-34.pyc | Bin 5914 -> 0 bytes .../__pycache__/uninstall.cpython-34.pyc | Bin 2699 -> 0 bytes .../commands/__pycache__/wheel.cpython-34.pyc | Bin 5802 -> 0 bytes .../site-packages/pip/commands/check.py | 39 - .../site-packages/pip/commands/completion.py | 81 - .../site-packages/pip/commands/download.py | 212 - .../site-packages/pip/commands/freeze.py | 87 - .../site-packages/pip/commands/hash.py | 57 - .../site-packages/pip/commands/help.py | 35 - .../site-packages/pip/commands/install.py | 437 - .../site-packages/pip/commands/list.py | 337 - .../site-packages/pip/commands/search.py | 133 - .../site-packages/pip/commands/show.py | 154 - .../site-packages/pip/commands/uninstall.py | 76 - .../site-packages/pip/commands/wheel.py | 208 - .../site-packages/pip/compat/__init__.py | 164 - .../__pycache__/__init__.cpython-34.pyc | Bin 4296 -> 0 bytes .../__pycache__/dictconfig.cpython-34.pyc | Bin 15152 -> 0 bytes .../site-packages/pip/compat/dictconfig.py | 565 -- .../python3.4/site-packages/pip/download.py | 906 -- .../python3.4/site-packages/pip/exceptions.py | 244 - env/lib/python3.4/site-packages/pip/index.py | 1102 --- .../python3.4/site-packages/pip/locations.py | 182 - .../site-packages/pip/models/__init__.py | 4 - .../__pycache__/__init__.cpython-34.pyc | Bin 233 -> 0 bytes .../models/__pycache__/index.cpython-34.pyc | Bin 886 -> 0 bytes .../site-packages/pip/models/index.py | 16 - .../site-packages/pip/operations/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 137 -> 0 bytes .../__pycache__/check.cpython-34.pyc | Bin 1541 -> 0 bytes .../__pycache__/freeze.cpython-34.pyc | Bin 3142 -> 0 bytes .../site-packages/pip/operations/check.py | 49 - .../site-packages/pip/operations/freeze.py | 132 - .../python3.4/site-packages/pip/pep425tags.py | 324 - .../site-packages/pip/req/__init__.py | 10 - .../req/__pycache__/__init__.cpython-34.pyc | Bin 428 -> 0 bytes .../req/__pycache__/req_file.cpython-34.pyc | Bin 9156 -> 0 bytes .../__pycache__/req_install.cpython-34.pyc | Bin 33395 -> 0 bytes .../req/__pycache__/req_set.cpython-34.pyc | Bin 22587 -> 0 bytes .../__pycache__/req_uninstall.cpython-34.pyc | Bin 6860 -> 0 bytes .../site-packages/pip/req/req_file.py | 342 - .../site-packages/pip/req/req_install.py | 1204 --- .../site-packages/pip/req/req_set.py | 798 -- .../site-packages/pip/req/req_uninstall.py | 195 - .../site-packages/pip/status_codes.py | 8 - .../site-packages/pip/utils/__init__.py | 852 -- .../utils/__pycache__/__init__.cpython-34.pyc | Bin 24007 -> 0 bytes .../utils/__pycache__/appdirs.cpython-34.pyc | Bin 8099 -> 0 bytes .../utils/__pycache__/build.cpython-34.pyc | Bin 1423 -> 0 bytes .../__pycache__/deprecation.cpython-34.pyc | Bin 1871 -> 0 bytes .../utils/__pycache__/encoding.cpython-34.pyc | Bin 1124 -> 0 bytes .../__pycache__/filesystem.cpython-34.pyc | Bin 645 -> 0 bytes .../utils/__pycache__/glibc.cpython-34.pyc | Bin 1483 -> 0 bytes .../utils/__pycache__/hashes.cpython-34.pyc | Bin 3412 -> 0 bytes .../utils/__pycache__/logging.cpython-34.pyc | Bin 4195 -> 0 bytes .../utils/__pycache__/outdated.cpython-34.pyc | Bin 4590 -> 0 bytes .../__pycache__/packaging.cpython-34.pyc | Bin 2144 -> 0 bytes .../setuptools_build.cpython-34.pyc | Bin 329 -> 0 bytes .../pip/utils/__pycache__/ui.cpython-34.pyc | Bin 10268 -> 0 bytes .../site-packages/pip/utils/appdirs.py | 248 - .../site-packages/pip/utils/build.py | 42 - .../site-packages/pip/utils/deprecation.py | 76 - .../site-packages/pip/utils/encoding.py | 31 - .../site-packages/pip/utils/filesystem.py | 28 - .../site-packages/pip/utils/glibc.py | 81 - .../site-packages/pip/utils/hashes.py | 92 - .../site-packages/pip/utils/logging.py | 130 - .../site-packages/pip/utils/outdated.py | 162 - .../site-packages/pip/utils/packaging.py | 63 - .../pip/utils/setuptools_build.py | 8 - .../python3.4/site-packages/pip/utils/ui.py | 344 - .../site-packages/pip/vcs/__init__.py | 366 - .../vcs/__pycache__/__init__.cpython-34.pyc | Bin 11854 -> 0 bytes .../pip/vcs/__pycache__/bazaar.cpython-34.pyc | Bin 3959 -> 0 bytes .../pip/vcs/__pycache__/git.cpython-34.pyc | Bin 9638 -> 0 bytes .../vcs/__pycache__/mercurial.cpython-34.pyc | Bin 3878 -> 0 bytes .../vcs/__pycache__/subversion.cpython-34.pyc | Bin 7882 -> 0 bytes .../python3.4/site-packages/pip/vcs/bazaar.py | 116 - .../python3.4/site-packages/pip/vcs/git.py | 300 - .../site-packages/pip/vcs/mercurial.py | 103 - .../site-packages/pip/vcs/subversion.py | 269 - env/lib/python3.4/site-packages/pip/wheel.py | 853 -- .../site-packages/pkg_resources/__init__.py | 3083 ------- .../__pycache__/__init__.cpython-34.pyc | Bin 102999 -> 0 bytes .../__pycache__/py31compat.cpython-34.pyc | Bin 708 -> 0 bytes .../pkg_resources/_vendor/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 151 -> 0 bytes .../__pycache__/appdirs.cpython-34.pyc | Bin 19805 -> 0 bytes .../__pycache__/pyparsing.cpython-34.pyc | Bin 212858 -> 0 bytes .../_vendor/__pycache__/six.cpython-34.pyc | Bin 26465 -> 0 bytes .../pkg_resources/_vendor/appdirs.py | 552 -- .../_vendor/packaging/__about__.py | 21 - .../_vendor/packaging/__init__.py | 14 - .../__pycache__/__about__.cpython-34.pyc | Bin 721 -> 0 bytes .../__pycache__/__init__.cpython-34.pyc | Bin 561 -> 0 bytes .../__pycache__/_compat.cpython-34.pyc | Bin 1037 -> 0 bytes .../__pycache__/_structures.cpython-34.pyc | Bin 2957 -> 0 bytes .../__pycache__/markers.cpython-34.pyc | Bin 9586 -> 0 bytes .../__pycache__/requirements.cpython-34.pyc | Bin 4272 -> 0 bytes .../__pycache__/specifiers.cpython-34.pyc | Bin 21227 -> 0 bytes .../__pycache__/utils.cpython-34.pyc | Bin 483 -> 0 bytes .../__pycache__/version.cpython-34.pyc | Bin 11493 -> 0 bytes .../_vendor/packaging/_compat.py | 30 - .../_vendor/packaging/_structures.py | 68 - .../_vendor/packaging/markers.py | 301 - .../_vendor/packaging/requirements.py | 127 - .../_vendor/packaging/specifiers.py | 774 -- .../pkg_resources/_vendor/packaging/utils.py | 14 - .../_vendor/packaging/version.py | 393 - .../pkg_resources/_vendor/pyparsing.py | 5696 ------------ .../pkg_resources/_vendor/six.py | 868 -- .../pkg_resources/extern/__init__.py | 73 - .../__pycache__/__init__.cpython-34.pyc | Bin 2530 -> 0 bytes .../site-packages/pkg_resources/py31compat.py | 22 - .../praw-5.0.1.dist-info/DESCRIPTION.rst | 158 - .../praw-5.0.1.dist-info/INSTALLER | 1 - .../praw-5.0.1.dist-info/METADATA | 186 - .../site-packages/praw-5.0.1.dist-info/RECORD | 116 - .../site-packages/praw-5.0.1.dist-info/WHEEL | 6 - .../praw-5.0.1.dist-info/metadata.json | 1 - .../praw-5.0.1.dist-info/top_level.txt | 1 - .../python3.4/site-packages/praw/__init__.py | 14 - .../praw/__pycache__/__init__.cpython-34.pyc | Bin 664 -> 0 bytes .../praw/__pycache__/config.cpython-34.pyc | Bin 4324 -> 0 bytes .../praw/__pycache__/const.cpython-34.pyc | Bin 8521 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 1715 -> 0 bytes .../praw/__pycache__/objector.cpython-34.pyc | Bin 4689 -> 0 bytes .../praw/__pycache__/reddit.cpython-34.pyc | Bin 14816 -> 0 bytes .../python3.4/site-packages/praw/config.py | 109 - env/lib/python3.4/site-packages/praw/const.py | 187 - .../site-packages/praw/exceptions.py | 35 - .../site-packages/praw/models/__init__.py | 31 - .../__pycache__/__init__.cpython-34.pyc | Bin 1895 -> 0 bytes .../models/__pycache__/auth.cpython-34.pyc | Bin 5547 -> 0 bytes .../models/__pycache__/base.cpython-34.pyc | Bin 1686 -> 0 bytes .../__pycache__/comment_forest.cpython-34.pyc | Bin 6234 -> 0 bytes .../models/__pycache__/front.cpython-34.pyc | Bin 698 -> 0 bytes .../models/__pycache__/helpers.cpython-34.pyc | Bin 8016 -> 0 bytes .../models/__pycache__/inbox.cpython-34.pyc | Bin 8159 -> 0 bytes .../__pycache__/modaction.cpython-34.pyc | Bin 769 -> 0 bytes .../__pycache__/stylesheet.cpython-34.pyc | Bin 427 -> 0 bytes .../__pycache__/subreddits.cpython-34.pyc | Bin 5283 -> 0 bytes .../models/__pycache__/user.cpython-34.pyc | Bin 3707 -> 0 bytes .../models/__pycache__/util.cpython-34.pyc | Bin 6818 -> 0 bytes .../site-packages/praw/models/auth.py | 121 - .../site-packages/praw/models/base.py | 41 - .../praw/models/comment_forest.py | 178 - .../site-packages/praw/models/front.py | 11 - .../site-packages/praw/models/helpers.py | 194 - .../site-packages/praw/models/inbox.py | 235 - .../praw/models/list/__init__.py | 1 - .../list/__pycache__/__init__.cpython-34.pyc | Bin 200 -> 0 bytes .../list/__pycache__/base.cpython-34.pyc | Bin 1945 -> 0 bytes .../list/__pycache__/redditor.cpython-34.pyc | Bin 498 -> 0 bytes .../site-packages/praw/models/list/base.py | 43 - .../praw/models/list/redditor.py | 8 - .../praw/models/listing/__init__.py | 1 - .../__pycache__/__init__.cpython-34.pyc | Bin 223 -> 0 bytes .../listing/__pycache__/domain.cpython-34.pyc | Bin 971 -> 0 bytes .../__pycache__/generator.cpython-34.pyc | Bin 3089 -> 0 bytes .../__pycache__/listing.cpython-34.pyc | Bin 1632 -> 0 bytes .../praw/models/listing/domain.py | 17 - .../praw/models/listing/generator.py | 79 - .../praw/models/listing/listing.py | 35 - .../praw/models/listing/mixins/__init__.py | 6 - .../__pycache__/__init__.cpython-34.pyc | Bin 504 -> 0 bytes .../mixins/__pycache__/base.cpython-34.pyc | Bin 4947 -> 0 bytes .../mixins/__pycache__/gilded.cpython-34.pyc | Bin 928 -> 0 bytes .../__pycache__/redditor.cpython-34.pyc | Bin 5865 -> 0 bytes .../mixins/__pycache__/rising.cpython-34.pyc | Bin 1318 -> 0 bytes .../__pycache__/submission.cpython-34.pyc | Bin 1050 -> 0 bytes .../__pycache__/subreddit.cpython-34.pyc | Bin 2777 -> 0 bytes .../praw/models/listing/mixins/base.py | 125 - .../praw/models/listing/mixins/gilded.py | 18 - .../praw/models/listing/mixins/redditor.py | 137 - .../praw/models/listing/mixins/rising.py | 29 - .../praw/models/listing/mixins/submission.py | 18 - .../praw/models/listing/mixins/subreddit.py | 66 - .../site-packages/praw/models/modaction.py | 16 - .../praw/models/reddit/__init__.py | 1 - .../__pycache__/__init__.cpython-34.pyc | Bin 202 -> 0 bytes .../reddit/__pycache__/base.cpython-34.pyc | Bin 3531 -> 0 bytes .../reddit/__pycache__/comment.cpython-34.pyc | Bin 6575 -> 0 bytes .../reddit/__pycache__/live.cpython-34.pyc | Bin 23909 -> 0 bytes .../reddit/__pycache__/message.cpython-34.pyc | Bin 2329 -> 0 bytes .../reddit/__pycache__/modmail.cpython-34.pyc | Bin 10206 -> 0 bytes .../reddit/__pycache__/more.cpython-34.pyc | Bin 2969 -> 0 bytes .../reddit/__pycache__/multi.cpython-34.pyc | Bin 6116 -> 0 bytes .../__pycache__/redditor.cpython-34.pyc | Bin 4057 -> 0 bytes .../__pycache__/submission.cpython-34.pyc | Bin 15456 -> 0 bytes .../__pycache__/subreddit.cpython-34.pyc | Bin 79016 -> 0 bytes .../__pycache__/wikipage.cpython-34.pyc | Bin 7492 -> 0 bytes .../site-packages/praw/models/reddit/base.py | 83 - .../praw/models/reddit/comment.py | 181 - .../site-packages/praw/models/reddit/live.py | 649 -- .../praw/models/reddit/message.py | 59 - .../praw/models/reddit/mixins/__init__.py | 84 - .../__pycache__/__init__.cpython-34.pyc | Bin 4279 -> 0 bytes .../__pycache__/editable.cpython-34.pyc | Bin 1319 -> 0 bytes .../__pycache__/gildable.cpython-34.pyc | Bin 708 -> 0 bytes .../__pycache__/inboxable.cpython-34.pyc | Bin 1533 -> 0 bytes .../inboxtoggleable.cpython-34.pyc | Bin 1088 -> 0 bytes .../__pycache__/messageable.cpython-34.pyc | Bin 1982 -> 0 bytes .../__pycache__/replyable.cpython-34.pyc | Bin 911 -> 0 bytes .../__pycache__/reportable.cpython-34.pyc | Bin 830 -> 0 bytes .../mixins/__pycache__/savable.cpython-34.pyc | Bin 1086 -> 0 bytes .../mixins/__pycache__/votable.cpython-34.pyc | Bin 2410 -> 0 bytes .../praw/models/reddit/mixins/editable.py | 26 - .../praw/models/reddit/mixins/gildable.py | 11 - .../praw/models/reddit/mixins/inboxable.py | 35 - .../models/reddit/mixins/inboxtoggleable.py | 16 - .../praw/models/reddit/mixins/messageable.py | 45 - .../praw/models/reddit/mixins/replyable.py | 16 - .../praw/models/reddit/mixins/reportable.py | 15 - .../praw/models/reddit/mixins/savable.py | 20 - .../praw/models/reddit/mixins/votable.py | 46 - .../praw/models/reddit/modmail.py | 267 - .../site-packages/praw/models/reddit/more.py | 69 - .../site-packages/praw/models/reddit/multi.py | 137 - .../praw/models/reddit/redditor.py | 95 - .../praw/models/reddit/submission.py | 418 - .../praw/models/reddit/subreddit.py | 2128 ----- .../praw/models/reddit/wikipage.py | 181 - .../site-packages/praw/models/stylesheet.py | 7 - .../site-packages/praw/models/subreddits.py | 103 - .../site-packages/praw/models/user.py | 86 - .../site-packages/praw/models/util.py | 175 - .../python3.4/site-packages/praw/objector.py | 137 - env/lib/python3.4/site-packages/praw/praw.ini | 19 - .../python3.4/site-packages/praw/reddit.py | 484 -- .../prawcore-0.11.0.dist-info/DESCRIPTION.rst | 94 - .../prawcore-0.11.0.dist-info/INSTALLER | 1 - .../prawcore-0.11.0.dist-info/METADATA | 119 - .../prawcore-0.11.0.dist-info/RECORD | 23 - .../prawcore-0.11.0.dist-info/WHEEL | 6 - .../prawcore-0.11.0.dist-info/metadata.json | 1 - .../prawcore-0.11.0.dist-info/top_level.txt | 1 - .../site-packages/prawcore/__init__.py | 13 - .../__pycache__/__init__.cpython-34.pyc | Bin 732 -> 0 bytes .../prawcore/__pycache__/auth.cpython-34.pyc | Bin 14389 -> 0 bytes .../prawcore/__pycache__/const.cpython-34.pyc | Bin 461 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 5463 -> 0 bytes .../__pycache__/rate_limit.cpython-34.pyc | Bin 2810 -> 0 bytes .../__pycache__/requestor.cpython-34.pyc | Bin 2493 -> 0 bytes .../__pycache__/sessions.cpython-34.pyc | Bin 7086 -> 0 bytes .../prawcore/__pycache__/util.cpython-34.pyc | Bin 839 -> 0 bytes .../python3.4/site-packages/prawcore/auth.py | 328 - .../python3.4/site-packages/prawcore/const.py | 9 - .../site-packages/prawcore/exceptions.py | 122 - .../site-packages/prawcore/rate_limit.py | 80 - .../site-packages/prawcore/requestor.py | 49 - .../site-packages/prawcore/sessions.py | 184 - .../python3.4/site-packages/prawcore/util.py | 21 - .../requests-2.18.4.dist-info/DESCRIPTION.rst | 1645 ---- .../requests-2.18.4.dist-info/INSTALLER | 1 - .../requests-2.18.4.dist-info/METADATA | 1680 ---- .../requests-2.18.4.dist-info/RECORD | 43 - .../requests-2.18.4.dist-info/WHEEL | 6 - .../requests-2.18.4.dist-info/metadata.json | 1 - .../requests-2.18.4.dist-info/top_level.txt | 1 - .../site-packages/requests/__init__.py | 121 - .../__pycache__/__init__.cpython-34.pyc | Bin 3475 -> 0 bytes .../__pycache__/__version__.cpython-34.pyc | Bin 514 -> 0 bytes .../_internal_utils.cpython-34.pyc | Bin 1302 -> 0 bytes .../__pycache__/adapters.cpython-34.pyc | Bin 17376 -> 0 bytes .../requests/__pycache__/api.cpython-34.pyc | Bin 6477 -> 0 bytes .../requests/__pycache__/auth.cpython-34.pyc | Bin 8566 -> 0 bytes .../requests/__pycache__/certs.cpython-34.pyc | Bin 581 -> 0 bytes .../__pycache__/compat.cpython-34.pyc | Bin 1673 -> 0 bytes .../__pycache__/cookies.cpython-34.pyc | Bin 19596 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 5562 -> 0 bytes .../requests/__pycache__/help.cpython-34.pyc | Bin 2911 -> 0 bytes .../requests/__pycache__/hooks.cpython-34.pyc | Bin 1005 -> 0 bytes .../__pycache__/models.cpython-34.pyc | Bin 25980 -> 0 bytes .../__pycache__/packages.cpython-34.pyc | Bin 419 -> 0 bytes .../__pycache__/sessions.cpython-34.pyc | Bin 19771 -> 0 bytes .../__pycache__/status_codes.cpython-34.pyc | Bin 5239 -> 0 bytes .../__pycache__/structures.cpython-34.pyc | Bin 4524 -> 0 bytes .../requests/__pycache__/utils.cpython-34.pyc | Bin 22175 -> 0 bytes .../site-packages/requests/__version__.py | 14 - .../site-packages/requests/_internal_utils.py | 42 - .../site-packages/requests/adapters.py | 525 -- .../python3.4/site-packages/requests/api.py | 152 - .../python3.4/site-packages/requests/auth.py | 293 - .../python3.4/site-packages/requests/certs.py | 18 - .../site-packages/requests/compat.py | 69 - .../site-packages/requests/cookies.py | 542 -- .../site-packages/requests/exceptions.py | 122 - .../python3.4/site-packages/requests/help.py | 120 - .../python3.4/site-packages/requests/hooks.py | 34 - .../site-packages/requests/models.py | 948 -- .../site-packages/requests/packages.py | 14 - .../site-packages/requests/sessions.py | 737 -- .../site-packages/requests/status_codes.py | 91 - .../site-packages/requests/structures.py | 105 - .../python3.4/site-packages/requests/utils.py | 904 -- .../DESCRIPTION.rst | 25 - .../setuptools-36.3.0.dist-info/INSTALLER | 1 - .../setuptools-36.3.0.dist-info/METADATA | 57 - .../setuptools-36.3.0.dist-info/RECORD | 155 - .../setuptools-36.3.0.dist-info/WHEEL | 6 - .../dependency_links.txt | 2 - .../entry_points.txt | 64 - .../setuptools-36.3.0.dist-info/metadata.json | 1 - .../setuptools-36.3.0.dist-info/top_level.txt | 3 - .../setuptools-36.3.0.dist-info/zip-safe | 1 - .../site-packages/setuptools/__init__.py | 160 - .../__pycache__/__init__.cpython-34.pyc | Bin 5969 -> 0 bytes .../__pycache__/archive_util.cpython-34.pyc | Bin 5506 -> 0 bytes .../__pycache__/config.cpython-34.pyc | Bin 15403 -> 0 bytes .../__pycache__/dep_util.cpython-34.pyc | Bin 863 -> 0 bytes .../__pycache__/depends.cpython-34.pyc | Bin 5682 -> 0 bytes .../__pycache__/dist.cpython-34.pyc | Bin 37878 -> 0 bytes .../__pycache__/extension.cpython-34.pyc | Bin 2059 -> 0 bytes .../__pycache__/glob.cpython-34.pyc | Bin 4162 -> 0 bytes .../__pycache__/launch.cpython-34.pyc | Bin 883 -> 0 bytes .../__pycache__/lib2to3_ex.cpython-34.pyc | Bin 2567 -> 0 bytes .../__pycache__/monkey.cpython-34.pyc | Bin 5495 -> 0 bytes .../__pycache__/msvc.cpython-34.pyc | Bin 37232 -> 0 bytes .../__pycache__/namespaces.cpython-34.pyc | Bin 3859 -> 0 bytes .../__pycache__/package_index.cpython-34.pyc | Bin 35616 -> 0 bytes .../__pycache__/py26compat.cpython-34.pyc | Bin 1066 -> 0 bytes .../__pycache__/py27compat.cpython-34.pyc | Bin 816 -> 0 bytes .../__pycache__/py31compat.cpython-34.pyc | Bin 1989 -> 0 bytes .../__pycache__/py33compat.cpython-34.pyc | Bin 1292 -> 0 bytes .../__pycache__/py36compat.cpython-34.pyc | Bin 2379 -> 0 bytes .../__pycache__/sandbox.cpython-34.pyc | Bin 16958 -> 0 bytes .../__pycache__/site-patch.cpython-34.pyc | Bin 1677 -> 0 bytes .../__pycache__/ssl_support.cpython-34.pyc | Bin 7184 -> 0 bytes .../__pycache__/unicode_utils.cpython-34.pyc | Bin 1212 -> 0 bytes .../__pycache__/version.cpython-34.pyc | Bin 297 -> 0 bytes .../windows_support.cpython-34.pyc | Bin 1032 -> 0 bytes .../site-packages/setuptools/archive_util.py | 173 - .../site-packages/setuptools/cli-32.exe | Bin 65536 -> 0 bytes .../site-packages/setuptools/cli-64.exe | Bin 74752 -> 0 bytes .../site-packages/setuptools/cli.exe | Bin 65536 -> 0 bytes .../setuptools/command/__init__.py | 17 - .../__pycache__/__init__.cpython-34.pyc | Bin 737 -> 0 bytes .../command/__pycache__/alias.cpython-34.pyc | Bin 2613 -> 0 bytes .../__pycache__/bdist_egg.cpython-34.pyc | Bin 15066 -> 0 bytes .../__pycache__/bdist_rpm.cpython-34.pyc | Bin 1831 -> 0 bytes .../__pycache__/bdist_wininst.cpython-34.pyc | Bin 994 -> 0 bytes .../__pycache__/build_clib.cpython-34.pyc | Bin 2593 -> 0 bytes .../__pycache__/build_ext.cpython-34.pyc | Bin 11004 -> 0 bytes .../__pycache__/build_py.cpython-34.pyc | Bin 9286 -> 0 bytes .../__pycache__/develop.cpython-34.pyc | Bin 6989 -> 0 bytes .../__pycache__/easy_install.cpython-34.pyc | Bin 70302 -> 0 bytes .../__pycache__/egg_info.cpython-34.pyc | Bin 22875 -> 0 bytes .../__pycache__/install.cpython-34.pyc | Bin 4245 -> 0 bytes .../install_egg_info.cpython-34.pyc | Bin 2607 -> 0 bytes .../__pycache__/install_lib.cpython-34.pyc | Bin 4275 -> 0 bytes .../install_scripts.cpython-34.pyc | Bin 2451 -> 0 bytes .../__pycache__/py36compat.cpython-34.pyc | Bin 4944 -> 0 bytes .../__pycache__/register.cpython-34.pyc | Bin 584 -> 0 bytes .../command/__pycache__/rotate.cpython-34.pyc | Bin 2767 -> 0 bytes .../__pycache__/saveopts.cpython-34.pyc | Bin 955 -> 0 bytes .../command/__pycache__/sdist.cpython-34.pyc | Bin 6667 -> 0 bytes .../command/__pycache__/setopt.cpython-34.pyc | Bin 4957 -> 0 bytes .../command/__pycache__/test.cpython-34.pyc | Bin 8700 -> 0 bytes .../command/__pycache__/upload.cpython-34.pyc | Bin 1427 -> 0 bytes .../__pycache__/upload_docs.cpython-34.pyc | Bin 6700 -> 0 bytes .../site-packages/setuptools/command/alias.py | 80 - .../setuptools/command/bdist_egg.py | 472 - .../setuptools/command/bdist_rpm.py | 43 - .../setuptools/command/bdist_wininst.py | 21 - .../setuptools/command/build_clib.py | 98 - .../setuptools/command/build_ext.py | 328 - .../setuptools/command/build_py.py | 270 - .../setuptools/command/develop.py | 214 - .../setuptools/command/easy_install.py | 2301 ----- .../setuptools/command/egg_info.py | 697 -- .../setuptools/command/install.py | 125 - .../setuptools/command/install_egg_info.py | 62 - .../setuptools/command/install_lib.py | 121 - .../setuptools/command/install_scripts.py | 65 - .../setuptools/command/launcher manifest.xml | 15 - .../setuptools/command/py36compat.py | 136 - .../setuptools/command/register.py | 10 - .../setuptools/command/rotate.py | 66 - .../setuptools/command/saveopts.py | 22 - .../site-packages/setuptools/command/sdist.py | 206 - .../setuptools/command/setopt.py | 149 - .../site-packages/setuptools/command/test.py | 258 - .../setuptools/command/upload.py | 42 - .../setuptools/command/upload_docs.py | 206 - .../site-packages/setuptools/config.py | 554 -- .../site-packages/setuptools/dep_util.py | 23 - .../site-packages/setuptools/depends.py | 186 - .../site-packages/setuptools/dist.py | 1008 --- .../site-packages/setuptools/extension.py | 57 - .../setuptools/extern/__init__.py | 4 - .../__pycache__/__init__.cpython-34.pyc | Bin 303 -> 0 bytes .../site-packages/setuptools/glob.py | 176 - .../site-packages/setuptools/gui-32.exe | Bin 65536 -> 0 bytes .../site-packages/setuptools/gui-64.exe | Bin 75264 -> 0 bytes .../site-packages/setuptools/gui.exe | Bin 65536 -> 0 bytes .../site-packages/setuptools/launch.py | 35 - .../site-packages/setuptools/lib2to3_ex.py | 62 - .../site-packages/setuptools/monkey.py | 197 - .../site-packages/setuptools/msvc.py | 1302 --- .../site-packages/setuptools/namespaces.py | 107 - .../site-packages/setuptools/package_index.py | 1115 --- .../site-packages/setuptools/py26compat.py | 31 - .../site-packages/setuptools/py27compat.py | 28 - .../site-packages/setuptools/py31compat.py | 56 - .../site-packages/setuptools/py33compat.py | 45 - .../site-packages/setuptools/py36compat.py | 82 - .../site-packages/setuptools/sandbox.py | 495 -- .../setuptools/script (dev).tmpl | 5 - .../site-packages/setuptools/script.tmpl | 3 - .../site-packages/setuptools/site-patch.py | 74 - .../site-packages/setuptools/ssl_support.py | 255 - .../site-packages/setuptools/unicode_utils.py | 44 - .../site-packages/setuptools/version.py | 6 - .../setuptools/windows_support.py | 29 - .../DESCRIPTION.rst | 43 - .../update_checker-0.16.dist-info/INSTALLER | 1 - .../update_checker-0.16.dist-info/METADATA | 63 - .../update_checker-0.16.dist-info/RECORD | 11 - .../update_checker-0.16.dist-info/WHEEL | 6 - .../metadata.json | 1 - .../top_level.txt | 2 - .../python3.4/site-packages/update_checker.py | 250 - .../site-packages/update_checker_test.py | 81 - .../urllib3-1.22.dist-info/DESCRIPTION.rst | 995 --- .../urllib3-1.22.dist-info/INSTALLER | 1 - .../urllib3-1.22.dist-info/METADATA | 1031 --- .../urllib3-1.22.dist-info/RECORD | 79 - .../urllib3-1.22.dist-info/WHEEL | 6 - .../urllib3-1.22.dist-info/metadata.json | 1 - .../urllib3-1.22.dist-info/top_level.txt | 1 - .../site-packages/urllib3/__init__.py | 97 - .../__pycache__/__init__.cpython-34.pyc | Bin 2759 -> 0 bytes .../__pycache__/_collections.cpython-34.pyc | Bin 11192 -> 0 bytes .../__pycache__/connection.cpython-34.pyc | Bin 9592 -> 0 bytes .../__pycache__/connectionpool.cpython-34.pyc | Bin 25124 -> 0 bytes .../__pycache__/exceptions.cpython-34.pyc | Bin 10866 -> 0 bytes .../urllib3/__pycache__/fields.cpython-34.pyc | Bin 6115 -> 0 bytes .../__pycache__/filepost.cpython-34.pyc | Bin 2790 -> 0 bytes .../__pycache__/poolmanager.cpython-34.pyc | Bin 13510 -> 0 bytes .../__pycache__/request.cpython-34.pyc | Bin 5685 -> 0 bytes .../__pycache__/response.cpython-34.pyc | Bin 17457 -> 0 bytes .../site-packages/urllib3/_collections.py | 319 - .../site-packages/urllib3/connection.py | 373 - .../site-packages/urllib3/connectionpool.py | 905 -- .../site-packages/urllib3/contrib/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 142 -> 0 bytes .../__pycache__/appengine.cpython-34.pyc | Bin 9319 -> 0 bytes .../__pycache__/ntlmpool.cpython-34.pyc | Bin 3480 -> 0 bytes .../__pycache__/pyopenssl.cpython-34.pyc | Bin 15103 -> 0 bytes .../securetransport.cpython-34.pyc | Bin 19492 -> 0 bytes .../contrib/__pycache__/socks.cpython-34.pyc | Bin 5082 -> 0 bytes .../contrib/_securetransport/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 159 -> 0 bytes .../__pycache__/bindings.cpython-34.pyc | Bin 11470 -> 0 bytes .../__pycache__/low_level.cpython-34.pyc | Bin 8012 -> 0 bytes .../contrib/_securetransport/bindings.py | 593 -- .../contrib/_securetransport/low_level.py | 343 - .../urllib3/contrib/appengine.py | 296 - .../site-packages/urllib3/contrib/ntlmpool.py | 112 - .../urllib3/contrib/pyopenssl.py | 455 - .../urllib3/contrib/securetransport.py | 810 -- .../site-packages/urllib3/contrib/socks.py | 188 - .../site-packages/urllib3/exceptions.py | 246 - .../python3.4/site-packages/urllib3/fields.py | 178 - .../site-packages/urllib3/filepost.py | 94 - .../urllib3/packages/__init__.py | 5 - .../__pycache__/__init__.cpython-34.pyc | Bin 293 -> 0 bytes .../__pycache__/ordered_dict.cpython-34.pyc | Bin 8878 -> 0 bytes .../packages/__pycache__/six.cpython-34.pyc | Bin 26457 -> 0 bytes .../urllib3/packages/backports/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 153 -> 0 bytes .../__pycache__/makefile.cpython-34.pyc | Bin 1403 -> 0 bytes .../urllib3/packages/backports/makefile.py | 53 - .../urllib3/packages/ordered_dict.py | 259 - .../site-packages/urllib3/packages/six.py | 868 -- .../packages/ssl_match_hostname/__init__.py | 19 - .../__pycache__/__init__.cpython-34.pyc | Bin 587 -> 0 bytes .../_implementation.cpython-34.pyc | Bin 3529 -> 0 bytes .../ssl_match_hostname/_implementation.py | 157 - .../site-packages/urllib3/poolmanager.py | 440 - .../site-packages/urllib3/request.py | 148 - .../site-packages/urllib3/response.py | 626 -- .../site-packages/urllib3/util/__init__.py | 54 - .../util/__pycache__/__init__.cpython-34.pyc | Bin 1317 -> 0 bytes .../__pycache__/connection.cpython-34.pyc | Bin 3300 -> 0 bytes .../util/__pycache__/request.cpython-34.pyc | Bin 3348 -> 0 bytes .../util/__pycache__/response.cpython-34.pyc | Bin 1951 -> 0 bytes .../util/__pycache__/retry.cpython-34.pyc | Bin 12994 -> 0 bytes .../util/__pycache__/selectors.cpython-34.pyc | Bin 17855 -> 0 bytes .../util/__pycache__/ssl_.cpython-34.pyc | Bin 9490 -> 0 bytes .../util/__pycache__/timeout.cpython-34.pyc | Bin 9012 -> 0 bytes .../util/__pycache__/url.cpython-34.pyc | Bin 5592 -> 0 bytes .../util/__pycache__/wait.cpython-34.pyc | Bin 1689 -> 0 bytes .../site-packages/urllib3/util/connection.py | 130 - .../site-packages/urllib3/util/request.py | 118 - .../site-packages/urllib3/util/response.py | 81 - .../site-packages/urllib3/util/retry.py | 401 - .../site-packages/urllib3/util/selectors.py | 581 -- .../site-packages/urllib3/util/ssl_.py | 341 - .../site-packages/urllib3/util/timeout.py | 242 - .../site-packages/urllib3/util/url.py | 230 - .../site-packages/urllib3/util/wait.py | 40 - .../wheel-0.29.0.dist-info/DESCRIPTION.rst | 325 - .../wheel-0.29.0.dist-info/INSTALLER | 1 - .../wheel-0.29.0.dist-info/LICENSE.txt | 22 - .../wheel-0.29.0.dist-info/METADATA | 357 - .../wheel-0.29.0.dist-info/RECORD | 82 - .../wheel-0.29.0.dist-info/WHEEL | 6 - .../wheel-0.29.0.dist-info/entry_points.txt | 5 - .../wheel-0.29.0.dist-info/metadata.json | 1 - .../wheel-0.29.0.dist-info/top_level.txt | 1 - .../python3.4/site-packages/wheel/__init__.py | 2 - .../python3.4/site-packages/wheel/__main__.py | 17 - .../wheel/__pycache__/__init__.cpython-34.pyc | Bin 154 -> 0 bytes .../wheel/__pycache__/__main__.cpython-34.pyc | Bin 605 -> 0 bytes .../wheel/__pycache__/archive.cpython-34.pyc | Bin 2249 -> 0 bytes .../__pycache__/bdist_wheel.cpython-34.pyc | Bin 13613 -> 0 bytes .../__pycache__/decorator.cpython-34.pyc | Bin 874 -> 0 bytes .../__pycache__/egg2wheel.cpython-34.pyc | Bin 2572 -> 0 bytes .../wheel/__pycache__/install.cpython-34.pyc | Bin 15495 -> 0 bytes .../wheel/__pycache__/metadata.cpython-34.pyc | Bin 8959 -> 0 bytes .../wheel/__pycache__/paths.cpython-34.pyc | Bin 1159 -> 0 bytes .../__pycache__/pep425tags.cpython-34.pyc | Bin 4820 -> 0 bytes .../wheel/__pycache__/pkginfo.cpython-34.pyc | Bin 1594 -> 0 bytes .../wheel/__pycache__/util.cpython-34.pyc | Bin 6075 -> 0 bytes .../__pycache__/wininst2wheel.cpython-34.pyc | Bin 5293 -> 0 bytes .../python3.4/site-packages/wheel/archive.py | 80 - .../site-packages/wheel/bdist_wheel.py | 453 - .../site-packages/wheel/decorator.py | 19 - .../site-packages/wheel/egg2wheel.py | 73 - .../site-packages/wheel/eggnames.txt | 87 - .../python3.4/site-packages/wheel/install.py | 480 -- .../python3.4/site-packages/wheel/metadata.py | 317 - .../python3.4/site-packages/wheel/paths.py | 41 - .../site-packages/wheel/pep425tags.py | 169 - .../python3.4/site-packages/wheel/pkginfo.py | 44 - .../wheel/signatures/__init__.py | 106 - .../__pycache__/__init__.cpython-34.pyc | Bin 3180 -> 0 bytes .../__pycache__/djbec.cpython-34.pyc | Bin 10109 -> 0 bytes .../__pycache__/ed25519py.cpython-34.pyc | Bin 1815 -> 0 bytes .../__pycache__/keys.cpython-34.pyc | Bin 4280 -> 0 bytes .../site-packages/wheel/signatures/djbec.py | 270 - .../wheel/signatures/ed25519py.py | 52 - .../site-packages/wheel/signatures/keys.py | 99 - .../site-packages/wheel/test/__init__.py | 1 - .../test/__pycache__/__init__.cpython-34.pyc | Bin 135 -> 0 bytes .../__pycache__/test_basic.cpython-34.pyc | Bin 7370 -> 0 bytes .../__pycache__/test_install.cpython-34.pyc | Bin 1910 -> 0 bytes .../test/__pycache__/test_keys.cpython-34.pyc | Bin 3055 -> 0 bytes .../__pycache__/test_paths.cpython-34.pyc | Bin 449 -> 0 bytes .../__pycache__/test_ranking.cpython-34.pyc | Bin 1640 -> 0 bytes .../test_signatures.cpython-34.pyc | Bin 1227 -> 0 bytes .../__pycache__/test_tagopt.cpython-34.pyc | Bin 7044 -> 0 bytes .../test/__pycache__/test_tool.cpython-34.pyc | Bin 1923 -> 0 bytes .../__pycache__/test_wheelfile.cpython-34.pyc | Bin 3991 -> 0 bytes .../__pycache__/setup.cpython-34.pyc | Bin 1083 -> 0 bytes .../test/complex-dist/complexdist/__init__.py | 2 - .../__pycache__/__init__.cpython-34.pyc | Bin 254 -> 0 bytes .../wheel/test/complex-dist/setup.py | 30 - .../__pycache__/headersdist.cpython-34.pyc | Bin 151 -> 0 bytes .../__pycache__/setup.cpython-34.pyc | Bin 646 -> 0 bytes .../wheel/test/headers.dist/header.h | 0 .../wheel/test/headers.dist/headersdist.py | 0 .../wheel/test/headers.dist/setup.py | 16 - .../wheel/test/pydist-schema.json | 362 - .../__pycache__/setup.cpython-34.pyc | Bin 703 -> 0 bytes .../wheel/test/simple.dist/setup.py | 17 - .../test/simple.dist/simpledist/__init__.py | 0 .../__pycache__/__init__.cpython-34.pyc | Bin 158 -> 0 bytes .../test/test-1.0-py2.py3-none-win32.whl | Bin 5226 -> 0 bytes .../site-packages/wheel/test/test_basic.py | 176 - .../site-packages/wheel/test/test_install.py | 55 - .../site-packages/wheel/test/test_keys.py | 98 - .../site-packages/wheel/test/test_paths.py | 6 - .../site-packages/wheel/test/test_ranking.py | 43 - .../wheel/test/test_signatures.py | 47 - .../site-packages/wheel/test/test_tagopt.py | 176 - .../site-packages/wheel/test/test_tool.py | 25 - .../wheel/test/test_wheelfile.py | 142 - .../site-packages/wheel/tool/__init__.py | 360 - .../tool/__pycache__/__init__.cpython-34.pyc | Bin 12230 -> 0 bytes env/lib/python3.4/site-packages/wheel/util.py | 167 - .../site-packages/wheel/wininst2wheel.py | 187 - env/lib/python3.4/site.py | 758 -- env/lib/python3.4/sre_compile.py | 1 - env/lib/python3.4/sre_constants.py | 1 - env/lib/python3.4/sre_parse.py | 1 - env/lib/python3.4/stat.py | 1 - env/lib/python3.4/struct.py | 1 - env/lib/python3.4/tarfile.py | 1 - env/lib/python3.4/tempfile.py | 1 - env/lib/python3.4/token.py | 1 - env/lib/python3.4/tokenize.py | 1 - env/lib/python3.4/types.py | 1 - env/lib/python3.4/warnings.py | 1 - env/lib/python3.4/weakref.py | 1 - env/pip-selfcheck.json | 1 - 1247 files changed, 3 insertions(+), 174668 deletions(-) delete mode 100644 env/bin/activate delete mode 100644 env/bin/activate.csh delete mode 100644 env/bin/activate.fish delete mode 100644 env/bin/activate_this.py delete mode 100755 env/bin/chardetect delete mode 100755 env/bin/easy_install delete mode 100755 env/bin/easy_install-3.4 delete mode 100755 env/bin/pip delete mode 100755 env/bin/pip3 delete mode 100755 env/bin/pip3.4 delete mode 120000 env/bin/python delete mode 100755 env/bin/python-config delete mode 100755 env/bin/python3 delete mode 120000 env/bin/python3.4 delete mode 100755 env/bin/wheel delete mode 120000 env/include/python3.4m delete mode 120000 env/lib/python3.4/__future__.py delete mode 100644 env/lib/python3.4/__pycache__/__future__.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/_bootlocale.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/_collections_abc.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/abc.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/base64.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/bisect.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/codecs.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/copy.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/copyreg.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/fnmatch.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/functools.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/genericpath.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/hashlib.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/heapq.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/hmac.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/imp.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/io.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/keyword.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/linecache.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/locale.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/operator.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/os.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/posixpath.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/random.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/re.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/reprlib.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/shutil.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/site.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/sre_compile.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/sre_constants.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/sre_parse.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/stat.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/struct.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/tarfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/tempfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/token.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/tokenize.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/types.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/warnings.cpython-34.pyc delete mode 100644 env/lib/python3.4/__pycache__/weakref.cpython-34.pyc delete mode 120000 env/lib/python3.4/_bootlocale.py delete mode 120000 env/lib/python3.4/_collections_abc.py delete mode 120000 env/lib/python3.4/_dummy_thread.py delete mode 120000 env/lib/python3.4/_weakrefset.py delete mode 120000 env/lib/python3.4/abc.py delete mode 120000 env/lib/python3.4/base64.py delete mode 120000 env/lib/python3.4/bisect.py delete mode 120000 env/lib/python3.4/codecs.py delete mode 120000 env/lib/python3.4/collections delete mode 120000 env/lib/python3.4/config-3.4m-x86_64-linux-gnu delete mode 120000 env/lib/python3.4/copy.py delete mode 120000 env/lib/python3.4/copyreg.py delete mode 100644 env/lib/python3.4/distutils/__init__.py delete mode 100644 env/lib/python3.4/distutils/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/distutils/distutils.cfg delete mode 120000 env/lib/python3.4/encodings delete mode 120000 env/lib/python3.4/fnmatch.py delete mode 120000 env/lib/python3.4/functools.py delete mode 120000 env/lib/python3.4/genericpath.py delete mode 120000 env/lib/python3.4/hashlib.py delete mode 120000 env/lib/python3.4/heapq.py delete mode 120000 env/lib/python3.4/hmac.py delete mode 120000 env/lib/python3.4/imp.py delete mode 120000 env/lib/python3.4/importlib delete mode 120000 env/lib/python3.4/io.py delete mode 120000 env/lib/python3.4/keyword.py delete mode 120000 env/lib/python3.4/lib-dynload delete mode 120000 env/lib/python3.4/linecache.py delete mode 120000 env/lib/python3.4/locale.py delete mode 100644 env/lib/python3.4/no-global-site-packages.txt delete mode 120000 env/lib/python3.4/ntpath.py delete mode 120000 env/lib/python3.4/operator.py delete mode 100644 env/lib/python3.4/orig-prefix.txt delete mode 120000 env/lib/python3.4/os.py delete mode 120000 env/lib/python3.4/plat-x86_64-linux-gnu delete mode 120000 env/lib/python3.4/posixpath.py delete mode 120000 env/lib/python3.4/random.py delete mode 120000 env/lib/python3.4/re.py delete mode 120000 env/lib/python3.4/reprlib.py delete mode 120000 env/lib/python3.4/rlcompleter.py delete mode 120000 env/lib/python3.4/shutil.py delete mode 100644 env/lib/python3.4/site-packages/__pycache__/easy_install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/__pycache__/update_checker.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/__pycache__/update_checker_test.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/certifi/__init__.py delete mode 100644 env/lib/python3.4/site-packages/certifi/__main__.py delete mode 100644 env/lib/python3.4/site-packages/certifi/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/certifi/__pycache__/__main__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/certifi/__pycache__/core.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/certifi/cacert.pem delete mode 100644 env/lib/python3.4/site-packages/certifi/core.py delete mode 100644 env/lib/python3.4/site-packages/certifi/old_root.pem delete mode 100644 env/lib/python3.4/site-packages/certifi/weak.pem delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/entry_points.txt delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/chardet/__init__.py delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/big5freq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/big5prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/chardistribution.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/charsetgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/charsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/codingstatemachine.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/cp949prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/enums.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/escprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/escsm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/eucjpprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/euckrfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/euckrprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/euctwfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/euctwprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/gb2312freq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/gb2312prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/hebrewprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/jisfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/jpcntx.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langbulgarianmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langcyrillicmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langgreekmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langhebrewmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langhungarianmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langthaimodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/langturkishmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/latin1prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/mbcharsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/mbcsgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/mbcssm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/sbcharsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/sbcsgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/sjisprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/universaldetector.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/utf8prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/__pycache__/version.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/big5freq.py delete mode 100644 env/lib/python3.4/site-packages/chardet/big5prober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/chardistribution.py delete mode 100644 env/lib/python3.4/site-packages/chardet/charsetgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/charsetprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/cli/__init__.py delete mode 100644 env/lib/python3.4/site-packages/chardet/cli/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/cli/__pycache__/chardetect.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/chardet/cli/chardetect.py delete mode 100644 env/lib/python3.4/site-packages/chardet/codingstatemachine.py delete mode 100644 env/lib/python3.4/site-packages/chardet/compat.py delete mode 100644 env/lib/python3.4/site-packages/chardet/cp949prober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/enums.py delete mode 100644 env/lib/python3.4/site-packages/chardet/escprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/escsm.py delete mode 100644 env/lib/python3.4/site-packages/chardet/eucjpprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/euckrfreq.py delete mode 100644 env/lib/python3.4/site-packages/chardet/euckrprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/euctwfreq.py delete mode 100644 env/lib/python3.4/site-packages/chardet/euctwprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/gb2312freq.py delete mode 100644 env/lib/python3.4/site-packages/chardet/gb2312prober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/hebrewprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/jisfreq.py delete mode 100644 env/lib/python3.4/site-packages/chardet/jpcntx.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langbulgarianmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langcyrillicmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langgreekmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langhebrewmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langhungarianmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langthaimodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/langturkishmodel.py delete mode 100644 env/lib/python3.4/site-packages/chardet/latin1prober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/mbcharsetprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/mbcsgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/mbcssm.py delete mode 100644 env/lib/python3.4/site-packages/chardet/sbcharsetprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/sbcsgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/sjisprober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/universaldetector.py delete mode 100644 env/lib/python3.4/site-packages/chardet/utf8prober.py delete mode 100644 env/lib/python3.4/site-packages/chardet/version.py delete mode 100644 env/lib/python3.4/site-packages/easy_install.py delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/idna-2.6.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/idna/__init__.py delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/codec.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/core.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/idnadata.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/intranges.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/package_data.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/__pycache__/uts46data.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/idna/codec.py delete mode 100644 env/lib/python3.4/site-packages/idna/compat.py delete mode 100644 env/lib/python3.4/site-packages/idna/core.py delete mode 100644 env/lib/python3.4/site-packages/idna/idnadata.py delete mode 100644 env/lib/python3.4/site-packages/idna/intranges.py delete mode 100644 env/lib/python3.4/site-packages/idna/package_data.py delete mode 100644 env/lib/python3.4/site-packages/idna/uts46data.py delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/entry_points.txt delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/pip-9.0.1.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/pip/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/__main__.py delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/__main__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/basecommand.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/baseparser.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/cmdoptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/download.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/index.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/locations.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/pep425tags.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/status_codes.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/__pycache__/wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/appdirs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/distro.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ipaddress.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ordereddict.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/pyparsing.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/re-vendor.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/retrying.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/__pycache__/six.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/appdirs.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/_cmd.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/cache.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/filewrapper.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/heuristics.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/misc.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/shutil.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/database.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/index.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/markers.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/util.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/version.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/w64.exe delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distlib/wheel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/distro.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_inputstream.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/constants.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/html5parser.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/serializer.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_ihatexml.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_inputstream.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_tokenizer.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/_base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/datrie.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/py.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/_base.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/datrie.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/py.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/_utils.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/alphabeticalattributes.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/lint.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/optionaltags.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/base.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/genshi.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/sax.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/sax.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/dom.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/etree.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/etree_lxml.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/base.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/dom.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/etree.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/etree_lxml.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/genshi.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/base.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/dom.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/etree.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/etree_lxml.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/genshi.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/ipaddress.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/linklockfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/mkdirlockfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/pidlockfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/sqlitelockfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/__pycache__/symlinklockfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/linklockfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/mkdirlockfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/pidlockfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/sqlitelockfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/lockfile/symlinklockfile.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/ordereddict.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__about__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/_compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/_compat.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/_structures.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/markers.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/requirements.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/specifiers.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/utils.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/packaging/version.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/pkg_resources/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__pycache__/bar.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__pycache__/counter.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__pycache__/helpers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/__pycache__/spinner.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/bar.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/counter.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/helpers.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/progress/spinner.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/pyparsing.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/re-vendor.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/api.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/models.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/adapters.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/api.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/auth.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/cacert.pem delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/certs.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/compat.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/cookies.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/hooks.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/models.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/big5freq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/big5prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/chardetect.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/chardistribution.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/charsetgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/charsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/codingstatemachine.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/constants.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/cp949prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/escprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/escsm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/eucjpprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/euckrfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/euckrprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/euctwfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/euctwprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/gb2312freq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/gb2312prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/hebrewprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/jisfreq.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/jpcntx.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langbulgarianmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langcyrillicmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langgreekmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langhebrewmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langhungarianmodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/langthaimodel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/latin1prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/mbcharsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/mbcsgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/mbcssm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/sbcharsetprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/sbcsgroupprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/sjisprober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/universaldetector.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__pycache__/utf8prober.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5freq.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5prober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardetect.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardistribution.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/compat.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/constants.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/cp949prober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escsm.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euctwfreq.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euctwprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/gb2312freq.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/gb2312prober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/hebrewprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/jisfreq.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/jpcntx.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langbulgarianmodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langcyrillicmodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langgreekmodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langhebrewmodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langhungarianmodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langthaimodel.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/latin1prober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcsgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcsgroupprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/utf8prober.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/_collections.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/connection.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/connectionpool.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/fields.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/filepost.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/poolmanager.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/request.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__pycache__/response.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/_collections.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connection.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__pycache__/appengine.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__pycache__/ntlmpool.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__pycache__/pyopenssl.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__pycache__/socks.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/appengine.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/socks.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/fields.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/filepost.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/__pycache__/ordered_dict.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/__pycache__/six.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ordered_dict.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__pycache__/_implementation.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/request.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/response.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/connection.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/request.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/response.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/retry.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/ssl_.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/timeout.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__pycache__/url.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/response.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/retry.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/timeout.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/url.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/sessions.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/status_codes.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/structures.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/requests/utils.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/retrying.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/six.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__pycache__/labels.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__pycache__/mklabels.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__pycache__/tests.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/labels.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/mklabels.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/tests.py delete mode 100644 env/lib/python3.4/site-packages/pip/_vendor/webencodings/x_user_defined.py delete mode 100644 env/lib/python3.4/site-packages/pip/basecommand.py delete mode 100644 env/lib/python3.4/site-packages/pip/baseparser.py delete mode 100644 env/lib/python3.4/site-packages/pip/cmdoptions.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/check.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/completion.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/download.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/freeze.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/hash.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/help.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/list.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/search.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/show.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/uninstall.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/__pycache__/wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/commands/check.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/completion.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/download.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/freeze.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/hash.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/help.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/install.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/list.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/search.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/show.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/uninstall.py delete mode 100644 env/lib/python3.4/site-packages/pip/commands/wheel.py delete mode 100644 env/lib/python3.4/site-packages/pip/compat/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/compat/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/compat/__pycache__/dictconfig.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/compat/dictconfig.py delete mode 100644 env/lib/python3.4/site-packages/pip/download.py delete mode 100644 env/lib/python3.4/site-packages/pip/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/pip/index.py delete mode 100644 env/lib/python3.4/site-packages/pip/locations.py delete mode 100644 env/lib/python3.4/site-packages/pip/models/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/models/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/models/__pycache__/index.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/models/index.py delete mode 100644 env/lib/python3.4/site-packages/pip/operations/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/operations/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/operations/__pycache__/check.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/operations/__pycache__/freeze.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/operations/check.py delete mode 100644 env/lib/python3.4/site-packages/pip/operations/freeze.py delete mode 100644 env/lib/python3.4/site-packages/pip/pep425tags.py delete mode 100644 env/lib/python3.4/site-packages/pip/req/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/req/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/req/__pycache__/req_file.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/req/__pycache__/req_install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/req/__pycache__/req_set.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/req/__pycache__/req_uninstall.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/req/req_file.py delete mode 100644 env/lib/python3.4/site-packages/pip/req/req_install.py delete mode 100644 env/lib/python3.4/site-packages/pip/req/req_set.py delete mode 100644 env/lib/python3.4/site-packages/pip/req/req_uninstall.py delete mode 100644 env/lib/python3.4/site-packages/pip/status_codes.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/appdirs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/build.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/deprecation.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/encoding.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/filesystem.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/glibc.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/hashes.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/logging.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/outdated.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/packaging.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/setuptools_build.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/__pycache__/ui.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/utils/appdirs.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/build.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/deprecation.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/encoding.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/filesystem.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/glibc.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/hashes.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/logging.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/outdated.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/packaging.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/setuptools_build.py delete mode 100644 env/lib/python3.4/site-packages/pip/utils/ui.py delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__pycache__/bazaar.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__pycache__/git.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__pycache__/mercurial.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/__pycache__/subversion.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/bazaar.py delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/git.py delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/mercurial.py delete mode 100644 env/lib/python3.4/site-packages/pip/vcs/subversion.py delete mode 100644 env/lib/python3.4/site-packages/pip/wheel.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/__pycache__/py31compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/__pycache__/appdirs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/__pycache__/pyparsing.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/__pycache__/six.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/appdirs.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__about__.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/__about__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/_compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/_structures.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/markers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/requirements.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/specifiers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/__pycache__/version.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/_compat.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/_structures.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/markers.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/requirements.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/specifiers.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/utils.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/packaging/version.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/pyparsing.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/_vendor/six.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/extern/__init__.py delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/extern/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/pkg_resources/py31compat.py delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/praw-5.0.1.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/praw/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/config.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/const.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/objector.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/__pycache__/reddit.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/config.py delete mode 100644 env/lib/python3.4/site-packages/praw/const.py delete mode 100644 env/lib/python3.4/site-packages/praw/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/auth.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/comment_forest.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/front.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/helpers.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/inbox.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/modaction.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/stylesheet.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/subreddits.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/user.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/__pycache__/util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/auth.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/base.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/comment_forest.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/front.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/helpers.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/inbox.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/__pycache__/redditor.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/base.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/list/redditor.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/__pycache__/domain.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/__pycache__/generator.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/__pycache__/listing.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/domain.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/generator.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/listing.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/gilded.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/redditor.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/rising.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/submission.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/__pycache__/subreddit.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/base.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/gilded.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/redditor.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/rising.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/submission.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/listing/mixins/subreddit.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/modaction.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/base.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/comment.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/live.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/message.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/modmail.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/more.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/multi.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/redditor.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/submission.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/subreddit.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/__pycache__/wikipage.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/base.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/comment.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/live.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/message.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__init__.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/editable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/gildable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/inboxable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/inboxtoggleable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/messageable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/replyable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/reportable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/savable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/__pycache__/votable.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/editable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/gildable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/inboxable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/inboxtoggleable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/messageable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/replyable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/reportable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/savable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/mixins/votable.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/modmail.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/more.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/multi.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/redditor.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/submission.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/subreddit.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/reddit/wikipage.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/stylesheet.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/subreddits.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/user.py delete mode 100644 env/lib/python3.4/site-packages/praw/models/util.py delete mode 100644 env/lib/python3.4/site-packages/praw/objector.py delete mode 100644 env/lib/python3.4/site-packages/praw/praw.ini delete mode 100644 env/lib/python3.4/site-packages/praw/reddit.py delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/prawcore-0.11.0.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/prawcore/__init__.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/auth.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/const.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/rate_limit.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/requestor.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/sessions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/__pycache__/util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/prawcore/auth.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/const.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/rate_limit.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/requestor.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/sessions.py delete mode 100644 env/lib/python3.4/site-packages/prawcore/util.py delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/requests-2.18.4.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/requests/__init__.py delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/__version__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/_internal_utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/adapters.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/api.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/auth.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/certs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/cookies.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/help.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/hooks.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/models.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/packages.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/sessions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/status_codes.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/structures.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__pycache__/utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/requests/__version__.py delete mode 100644 env/lib/python3.4/site-packages/requests/_internal_utils.py delete mode 100644 env/lib/python3.4/site-packages/requests/adapters.py delete mode 100644 env/lib/python3.4/site-packages/requests/api.py delete mode 100644 env/lib/python3.4/site-packages/requests/auth.py delete mode 100644 env/lib/python3.4/site-packages/requests/certs.py delete mode 100644 env/lib/python3.4/site-packages/requests/compat.py delete mode 100644 env/lib/python3.4/site-packages/requests/cookies.py delete mode 100644 env/lib/python3.4/site-packages/requests/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/requests/help.py delete mode 100644 env/lib/python3.4/site-packages/requests/hooks.py delete mode 100644 env/lib/python3.4/site-packages/requests/models.py delete mode 100644 env/lib/python3.4/site-packages/requests/packages.py delete mode 100644 env/lib/python3.4/site-packages/requests/sessions.py delete mode 100644 env/lib/python3.4/site-packages/requests/status_codes.py delete mode 100644 env/lib/python3.4/site-packages/requests/structures.py delete mode 100644 env/lib/python3.4/site-packages/requests/utils.py delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/dependency_links.txt delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/entry_points.txt delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/setuptools-36.3.0.dist-info/zip-safe delete mode 100644 env/lib/python3.4/site-packages/setuptools/__init__.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/archive_util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/config.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/dep_util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/depends.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/dist.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/extension.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/glob.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/launch.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/lib2to3_ex.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/monkey.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/msvc.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/namespaces.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/package_index.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/py26compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/py27compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/py31compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/py33compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/py36compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/sandbox.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/site-patch.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/ssl_support.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/unicode_utils.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/version.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/__pycache__/windows_support.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/archive_util.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/cli-32.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/cli-64.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/cli.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__init__.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/alias.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/bdist_egg.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/bdist_rpm.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/bdist_wininst.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/build_clib.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/build_ext.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/build_py.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/develop.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/easy_install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/egg_info.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/install_egg_info.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/install_lib.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/install_scripts.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/py36compat.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/register.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/rotate.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/saveopts.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/sdist.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/setopt.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/test.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/upload.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/__pycache__/upload_docs.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/alias.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/bdist_egg.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/bdist_rpm.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/bdist_wininst.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/build_clib.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/build_ext.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/build_py.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/develop.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/easy_install.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/egg_info.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/install.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/install_egg_info.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/install_lib.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/install_scripts.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/launcher manifest.xml delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/py36compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/register.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/rotate.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/saveopts.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/sdist.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/setopt.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/test.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/upload.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/command/upload_docs.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/config.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/dep_util.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/depends.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/dist.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/extension.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/extern/__init__.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/extern/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/setuptools/glob.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/gui-32.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/gui-64.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/gui.exe delete mode 100644 env/lib/python3.4/site-packages/setuptools/launch.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/lib2to3_ex.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/monkey.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/msvc.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/namespaces.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/package_index.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/py26compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/py27compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/py31compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/py33compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/py36compat.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/sandbox.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/script (dev).tmpl delete mode 100644 env/lib/python3.4/site-packages/setuptools/script.tmpl delete mode 100644 env/lib/python3.4/site-packages/setuptools/site-patch.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/ssl_support.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/unicode_utils.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/version.py delete mode 100644 env/lib/python3.4/site-packages/setuptools/windows_support.py delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/update_checker-0.16.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/update_checker.py delete mode 100644 env/lib/python3.4/site-packages/update_checker_test.py delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/urllib3-1.22.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/urllib3/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/_collections.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/connection.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/connectionpool.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/exceptions.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/fields.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/filepost.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/poolmanager.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/request.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/__pycache__/response.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/_collections.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/connection.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/connectionpool.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/appengine.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/ntlmpool.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/pyopenssl.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/securetransport.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/__pycache__/socks.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/bindings.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/_securetransport/low_level.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/appengine.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/ntlmpool.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/pyopenssl.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/securetransport.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/contrib/socks.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/exceptions.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/fields.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/filepost.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/__pycache__/ordered_dict.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/__pycache__/six.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/backports/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/backports/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/backports/__pycache__/makefile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/backports/makefile.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/ordered_dict.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/six.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/ssl_match_hostname/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/ssl_match_hostname/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/ssl_match_hostname/__pycache__/_implementation.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/packages/ssl_match_hostname/_implementation.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/poolmanager.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/request.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/response.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__init__.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/connection.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/request.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/response.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/retry.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/selectors.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/ssl_.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/timeout.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/url.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/__pycache__/wait.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/connection.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/request.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/response.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/retry.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/selectors.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/ssl_.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/timeout.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/url.py delete mode 100644 env/lib/python3.4/site-packages/urllib3/util/wait.py delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/DESCRIPTION.rst delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/INSTALLER delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/LICENSE.txt delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/METADATA delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/RECORD delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/WHEEL delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/entry_points.txt delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/metadata.json delete mode 100644 env/lib/python3.4/site-packages/wheel-0.29.0.dist-info/top_level.txt delete mode 100644 env/lib/python3.4/site-packages/wheel/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/__main__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/__main__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/archive.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/bdist_wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/decorator.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/egg2wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/metadata.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/paths.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/pep425tags.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/pkginfo.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/util.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/__pycache__/wininst2wheel.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/archive.py delete mode 100644 env/lib/python3.4/site-packages/wheel/bdist_wheel.py delete mode 100644 env/lib/python3.4/site-packages/wheel/decorator.py delete mode 100644 env/lib/python3.4/site-packages/wheel/egg2wheel.py delete mode 100644 env/lib/python3.4/site-packages/wheel/eggnames.txt delete mode 100644 env/lib/python3.4/site-packages/wheel/install.py delete mode 100644 env/lib/python3.4/site-packages/wheel/metadata.py delete mode 100644 env/lib/python3.4/site-packages/wheel/paths.py delete mode 100644 env/lib/python3.4/site-packages/wheel/pep425tags.py delete mode 100644 env/lib/python3.4/site-packages/wheel/pkginfo.py delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/__pycache__/djbec.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/__pycache__/ed25519py.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/__pycache__/keys.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/djbec.py delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/ed25519py.py delete mode 100644 env/lib/python3.4/site-packages/wheel/signatures/keys.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_basic.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_install.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_keys.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_paths.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_ranking.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_signatures.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_tagopt.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_tool.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/__pycache__/test_wheelfile.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/complex-dist/__pycache__/setup.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/complex-dist/complexdist/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/complex-dist/complexdist/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/complex-dist/setup.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/headers.dist/__pycache__/headersdist.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/headers.dist/__pycache__/setup.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/headers.dist/header.h delete mode 100644 env/lib/python3.4/site-packages/wheel/test/headers.dist/headersdist.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/headers.dist/setup.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/pydist-schema.json delete mode 100644 env/lib/python3.4/site-packages/wheel/test/simple.dist/__pycache__/setup.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/simple.dist/setup.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/simple.dist/simpledist/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/simple.dist/simpledist/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test-1.0-py2.py3-none-win32.whl delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_basic.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_install.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_keys.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_paths.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_ranking.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_signatures.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_tagopt.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_tool.py delete mode 100644 env/lib/python3.4/site-packages/wheel/test/test_wheelfile.py delete mode 100644 env/lib/python3.4/site-packages/wheel/tool/__init__.py delete mode 100644 env/lib/python3.4/site-packages/wheel/tool/__pycache__/__init__.cpython-34.pyc delete mode 100644 env/lib/python3.4/site-packages/wheel/util.py delete mode 100644 env/lib/python3.4/site-packages/wheel/wininst2wheel.py delete mode 100644 env/lib/python3.4/site.py delete mode 120000 env/lib/python3.4/sre_compile.py delete mode 120000 env/lib/python3.4/sre_constants.py delete mode 120000 env/lib/python3.4/sre_parse.py delete mode 120000 env/lib/python3.4/stat.py delete mode 120000 env/lib/python3.4/struct.py delete mode 120000 env/lib/python3.4/tarfile.py delete mode 120000 env/lib/python3.4/tempfile.py delete mode 120000 env/lib/python3.4/token.py delete mode 120000 env/lib/python3.4/tokenize.py delete mode 120000 env/lib/python3.4/types.py delete mode 120000 env/lib/python3.4/warnings.py delete mode 120000 env/lib/python3.4/weakref.py delete mode 100644 env/pip-selfcheck.json diff --git a/.gitignore b/.gitignore index e69de29..24cebed 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,3 @@ +# Virtualenv +env/ +venv/ diff --git a/env/bin/activate b/env/bin/activate deleted file mode 100644 index c9f4528..0000000 --- a/env/bin/activate +++ /dev/null @@ -1,78 +0,0 @@ -# This file must be used with "source bin/activate" *from bash* -# you cannot run it directly - -deactivate () { - unset -f pydoc >/dev/null 2>&1 - - # reset old environment variables - # ! [ -z ${VAR+_} ] returns true if VAR is declared at all - if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then - PATH="$_OLD_VIRTUAL_PATH" - export PATH - unset _OLD_VIRTUAL_PATH - fi - if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then - PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME" - export PYTHONHOME - unset _OLD_VIRTUAL_PYTHONHOME - fi - - # This should detect bash and zsh, which have a hash command that must - # be called to get it to forget past commands. Without forgetting - # past commands the $PATH changes we made may not be respected - if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then - hash -r 2>/dev/null - fi - - if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then - PS1="$_OLD_VIRTUAL_PS1" - export PS1 - unset _OLD_VIRTUAL_PS1 - fi - - unset VIRTUAL_ENV - if [ ! "${1-}" = "nondestructive" ] ; then - # Self destruct! - unset -f deactivate - fi -} - -# unset irrelevant variables -deactivate nondestructive - -VIRTUAL_ENV="/home/ubuntu/workspace/env" -export VIRTUAL_ENV - -_OLD_VIRTUAL_PATH="$PATH" -PATH="$VIRTUAL_ENV/bin:$PATH" -export PATH - -# unset PYTHONHOME if set -if ! [ -z "${PYTHONHOME+_}" ] ; then - _OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME" - unset PYTHONHOME -fi - -if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then - _OLD_VIRTUAL_PS1="$PS1" - if [ "x" != x ] ; then - PS1="$PS1" - else - PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1" - fi - export PS1 -fi - -# Make sure to unalias pydoc if it's already there -alias pydoc 2>/dev/null >/dev/null && unalias pydoc - -pydoc () { - python -m pydoc "$@" -} - -# This should detect bash and zsh, which have a hash command that must -# be called to get it to forget past commands. Without forgetting -# past commands the $PATH changes we made may not be respected -if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then - hash -r 2>/dev/null -fi diff --git a/env/bin/activate.csh b/env/bin/activate.csh deleted file mode 100644 index 9aed3be..0000000 --- a/env/bin/activate.csh +++ /dev/null @@ -1,36 +0,0 @@ -# This file must be used with "source bin/activate.csh" *from csh*. -# You cannot run it directly. -# Created by Davide Di Blasi . - -alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc' - -# Unset irrelevant variables. -deactivate nondestructive - -setenv VIRTUAL_ENV "/home/ubuntu/workspace/env" - -set _OLD_VIRTUAL_PATH="$PATH" -setenv PATH "$VIRTUAL_ENV/bin:$PATH" - - - -if ("" != "") then - set env_name = "" -else - set env_name = `basename "$VIRTUAL_ENV"` -endif - -# Could be in a non-interactive environment, -# in which case, $prompt is undefined and we wouldn't -# care about the prompt anyway. -if ( $?prompt ) then - set _OLD_VIRTUAL_PROMPT="$prompt" - set prompt = "[$env_name] $prompt" -endif - -unset env_name - -alias pydoc python -m pydoc - -rehash - diff --git a/env/bin/activate.fish b/env/bin/activate.fish deleted file mode 100644 index 7829923..0000000 --- a/env/bin/activate.fish +++ /dev/null @@ -1,76 +0,0 @@ -# This file must be used using `. bin/activate.fish` *within a running fish ( http://fishshell.com ) session*. -# Do not run it directly. - -function deactivate -d 'Exit virtualenv mode and return to the normal environment.' - # reset old environment variables - if test -n "$_OLD_VIRTUAL_PATH" - set -gx PATH $_OLD_VIRTUAL_PATH - set -e _OLD_VIRTUAL_PATH - end - - if test -n "$_OLD_VIRTUAL_PYTHONHOME" - set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME - set -e _OLD_VIRTUAL_PYTHONHOME - end - - if test -n "$_OLD_FISH_PROMPT_OVERRIDE" - # Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`. - set -l fish_function_path - - # Erase virtualenv's `fish_prompt` and restore the original. - functions -e fish_prompt - functions -c _old_fish_prompt fish_prompt - functions -e _old_fish_prompt - set -e _OLD_FISH_PROMPT_OVERRIDE - end - - set -e VIRTUAL_ENV - - if test "$argv[1]" != 'nondestructive' - # Self-destruct! - functions -e pydoc - functions -e deactivate - end -end - -# Unset irrelevant variables. -deactivate nondestructive - -set -gx VIRTUAL_ENV "/home/ubuntu/workspace/env" - -set -gx _OLD_VIRTUAL_PATH $PATH -set -gx PATH "$VIRTUAL_ENV/bin" $PATH - -# Unset `$PYTHONHOME` if set. -if set -q PYTHONHOME - set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME - set -e PYTHONHOME -end - -function pydoc - python -m pydoc $argv -end - -if test -z "$VIRTUAL_ENV_DISABLE_PROMPT" - # Copy the current `fish_prompt` function as `_old_fish_prompt`. - functions -c fish_prompt _old_fish_prompt - - function fish_prompt - # Save the current $status, for fish_prompts that display it. - set -l old_status $status - - # Prompt override provided? - # If not, just prepend the environment name. - if test -n "" - printf '%s%s' "" (set_color normal) - else - printf '%s(%s) ' (set_color normal) (basename "$VIRTUAL_ENV") - end - - # Restore the original $status - echo "exit $old_status" | source - _old_fish_prompt - end - - set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV" -end diff --git a/env/bin/activate_this.py b/env/bin/activate_this.py deleted file mode 100644 index f18193b..0000000 --- a/env/bin/activate_this.py +++ /dev/null @@ -1,34 +0,0 @@ -"""By using execfile(this_file, dict(__file__=this_file)) you will -activate this virtualenv environment. - -This can be used when you must use an existing Python interpreter, not -the virtualenv bin/python -""" - -try: - __file__ -except NameError: - raise AssertionError( - "You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))") -import sys -import os - -old_os_path = os.environ.get('PATH', '') -os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path -base = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) -if sys.platform == 'win32': - site_packages = os.path.join(base, 'Lib', 'site-packages') -else: - site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages') -prev_sys_path = list(sys.path) -import site -site.addsitedir(site_packages) -sys.real_prefix = sys.prefix -sys.prefix = base -# Move the added items to the front of the path: -new_sys_path = [] -for item in list(sys.path): - if item not in prev_sys_path: - new_sys_path.append(item) - sys.path.remove(item) -sys.path[:0] = new_sys_path diff --git a/env/bin/chardetect b/env/bin/chardetect deleted file mode 100755 index 14304c9..0000000 --- a/env/bin/chardetect +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from chardet.cli.chardetect import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/easy_install b/env/bin/easy_install deleted file mode 100755 index 66fe08b..0000000 --- a/env/bin/easy_install +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from setuptools.command.easy_install import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/easy_install-3.4 b/env/bin/easy_install-3.4 deleted file mode 100755 index 66fe08b..0000000 --- a/env/bin/easy_install-3.4 +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from setuptools.command.easy_install import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/pip b/env/bin/pip deleted file mode 100755 index 6eefeef..0000000 --- a/env/bin/pip +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from pip import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/pip3 b/env/bin/pip3 deleted file mode 100755 index 6eefeef..0000000 --- a/env/bin/pip3 +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from pip import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/pip3.4 b/env/bin/pip3.4 deleted file mode 100755 index 6eefeef..0000000 --- a/env/bin/pip3.4 +++ /dev/null @@ -1,11 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python3 - -# -*- coding: utf-8 -*- -import re -import sys - -from pip import main - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/env/bin/python b/env/bin/python deleted file mode 120000 index b8a0adb..0000000 --- a/env/bin/python +++ /dev/null @@ -1 +0,0 @@ -python3 \ No newline at end of file diff --git a/env/bin/python-config b/env/bin/python-config deleted file mode 100755 index ba5f7bd..0000000 --- a/env/bin/python-config +++ /dev/null @@ -1,78 +0,0 @@ -#!/home/ubuntu/workspace/env/bin/python - -import sys -import getopt -import sysconfig - -valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', - 'ldflags', 'help'] - -if sys.version_info >= (3, 2): - valid_opts.insert(-1, 'extension-suffix') - valid_opts.append('abiflags') -if sys.version_info >= (3, 3): - valid_opts.append('configdir') - - -def exit_with_usage(code=1): - sys.stderr.write("Usage: {0} [{1}]\n".format( - sys.argv[0], '|'.join('--'+opt for opt in valid_opts))) - sys.exit(code) - -try: - opts, args = getopt.getopt(sys.argv[1:], '', valid_opts) -except getopt.error: - exit_with_usage() - -if not opts: - exit_with_usage() - -pyver = sysconfig.get_config_var('VERSION') -getvar = sysconfig.get_config_var - -opt_flags = [flag for (flag, val) in opts] - -if '--help' in opt_flags: - exit_with_usage(code=0) - -for opt in opt_flags: - if opt == '--prefix': - print(sysconfig.get_config_var('prefix')) - - elif opt == '--exec-prefix': - print(sysconfig.get_config_var('exec_prefix')) - - elif opt in ('--includes', '--cflags'): - flags = ['-I' + sysconfig.get_path('include'), - '-I' + sysconfig.get_path('platinclude')] - if opt == '--cflags': - flags.extend(getvar('CFLAGS').split()) - print(' '.join(flags)) - - elif opt in ('--libs', '--ldflags'): - abiflags = getattr(sys, 'abiflags', '') - libs = ['-lpython' + pyver + abiflags] - libs += getvar('LIBS').split() - libs += getvar('SYSLIBS').split() - # add the prefix/lib/pythonX.Y/config dir, but only if there is no - # shared library in prefix/lib/. - if opt == '--ldflags': - if not getvar('Py_ENABLE_SHARED'): - libs.insert(0, '-L' + getvar('LIBPL')) - if not getvar('PYTHONFRAMEWORK'): - libs.extend(getvar('LINKFORSHARED').split()) - print(' '.join(libs)) - - elif opt == '--extension-suffix': - ext_suffix = sysconfig.get_config_var('EXT_SUFFIX') - if ext_suffix is None: - ext_suffix = sysconfig.get_config_var('SO') - print(ext_suffix) - - elif opt == '--abiflags': - if not getattr(sys, 'abiflags', None): - exit_with_usage() - print(sys.abiflags) - - elif opt == '--configdir': - print(sysconfig.get_config_var('LIBPL')) diff --git a/env/bin/python3 b/env/bin/python3 deleted file mode 100755 index d127559a92ee8db003c72b2fd0cce96dbc0b7263..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3693512 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

Q`(BgwO^r^l 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¨UKY?xQ?bZWgEuf`c~Qk8mmIo4 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%0Dkd`8AcvZ%MthCkn zIERG|@OWx|=0U;D4K_Il!3hT#9JFr3`O4wLo@%W6wH~c2?S?v3o-XGC55wX|EZQ92 z+WDO0rs6!T^I;8ey;$0ZYtw}qf>pv=coKq*{|eN{1L*(5+M9qkS!@CSDKt=^kfMN9 zK!a8+Dq0kT0+AG2NufxgEEN!|bwP1KNmyhnrqzbrDstU$#Vgl+y?Pb6niL8YQ4vrS zaiJo@gs_Rq4*CDi%$v3>`hCy${COUl_dRpw%=*rpIdhigZS+{PNI6P33&#^!7J7C? zk?z8uJ8RaOj<8|C6kAPgafoboBuCjtU`L*kEERptnKnl(+-o~IFWAkwj{s{yR}+3v z-*Y=2TY>(TKv~R&cy>|0Sc}Gg+*3Q?nlXqWpHLV$n zZlA^?eWdz5WrBgRW`NG&ZCx@Y!M2j65+0(mL`RpyYe-fJdUD=mcj>M{j+{TmL}M3| z=z-5T+qcf-@LtWg`!lB>cJdZ%T3tRJV*5lyRMC!$hftp`>jS$71r7}g?3K^&^>#;N zlyBC4%v1GOxjTHFRQyR4eV9n$lKw;^eO-d^$&9Pl85Dbg6#IM+tJpj0ie0iQUTmku z#ZZeEszV+~$r&e>e6>~bolx z8CqOh`1@^7X!cS%K2$iii01B5YtM`?6yClv8Vf|H1MZ@uyj;0RPjW97UR+h5E)rvI ztc4H3z%_792UrtS%T$J&UR?7pW^DE+DU8ch%u?X6S_@cWL#jbU(UUbD^&GUVSH%Z} zsduqBMqee~5-PE%ml?}cgjE&26R2~BPL4J*9~`4mwr40+jd@cALp2`m5Y38Yjv?bn zkbmF|IRWRFVYN72EgUv9oxS`?VRg3(1#fGudhdvv4p}7&XTv7cjFph>$J9zR#C4(Y zGl5m{1w*SP8m0RJz55T*lU*&hW_nVr3TvgrXhf`6VneL$b-8yuO|w3WJ?cq=%;%1K z1P1CrcRrJfF=ceG1WWOB+U;3-yn!lduE&dS-gl<1cE@_v=Ac=O!N7KP&I{~Ay=;Ue zs2HD^6kcO`n~fB&h~BASLvBz3{;>4=zgbca085WR%_1X|7Jf}vh>0pY#R?yDC07Xr$SNsVmat<;mBkE94 zSD+DbDmT@lTv>;LPDMSGJ8Mx=>QI~~pvZP+3fgs5ZC4=EuSeyLT9nmwC>bZ9d|r$4 zN*zj(K^bZqeU_l?B8sgltwXW;#X{*&i*jQfifMGoa6{!Y)+0mZ>N*rdMf*Boa8rd! zUm4uC^-yG~NE8Pt$SwCjq|YNhkoUscBJ2fuHkPps7A7o5Y{cZnzIXN!2{!EQ9+G!iK1UI_ffc@ENZnYOeEgY!U^knkQP=Lc3~-^nnNy42f;f_1_(s z;8l89VN&wd#?H-bqiC(;1>x|kIAr%v3VHHbM1!tpm%%?7uJ*UKa=;p8rJGZ|YkFP! zI?|<*GJ|Iog?fz|Z;O0#nXoSLw|7o>dy%)uQTcP*SQ10Y8N2FtD2@yImZ=tsC) z6Y>(7fIZlMdNesWc?y)Bs%eHSGP?r(rsJ|HUq&oPmQGJ#e7 zI_=5Dk|e3*LfnLv-3cf+cxRe(Nn@dQBQuKed`+_rySzD!U6D*Gj_I{RI`8FrD+_E6 z-7fQQhTsN$MPwV>C&3CUBq;!HBrV!Cqw+s7^cYeLbkPK>;|JcpG2TV_m zF%%vX3Y8)xi67;3uE_P88vg!+Zar68dHjnOQL@e3bg}$KjxfrL)8*+mp0XBw0KLVs zfGv4ffIoB*;35I;6`%-DBGnog5@3-4R|)2S0Mbp(pPpS{3wA4QHrQ4&^+H>q+p_Xp zn=iLyY8v~Vf8`ZjDl_kO&g>N~kxyglZ4x6g%ZYc-%#}0XqYkq~O#OI>jR?Hifh_0B zth9vCtAe@wEPeLT4XhfXayUvMdw~VA-x0E8FD6aCYt>OsTES@u{&aM{#6gQhm6F#L5w*&x{8*#-u-~J%0DX!);4@lDzW-j7U=ydse3cM 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%0DFSztPku3^S=h{@!p^sPggmg+?)p< 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 oCDd;^jeh-q(nqy4 zKu$U25!X*gU65$gmu^TW{|tt2OC62f1qJ#gWY@wcvbVz3>5~f-(qZh8wiW(~XKBS* zZBty&qRZZ59J{;eX318O%W_&&--Cm`oB3^p{g>?6s{_h;KpD)CUH<7bNkbl`88=Bu zg&OcD&<+Yg!7nNV{{T%HgbluPQ+FI=SCn?LZqReaLRXN$Ovq~B9$6HsyYvsu6 zA^a~HOG?Ivh(nM2y$P^%2n2D<`|I~%b~24 zpN&NTe~{0sb&XW6K{e1C44;R4#SB!eNFg)dd+SiQEOiVPNn9<#!+Z#z`3;wGZ-KS@ zx|Z){Yfb9̓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⪻Iy3OpT@4%V>Ys1Bj3Wa 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 z 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¬tl0$cK?vcFmseW0$00YyB87{Op0V(Dy8 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 z zlJU(44}@Mncpy^crf_7z!2_Dw2PYgnU^p+WH=pDV9;n!mrm0#Dg|H6ZfwizEO%p5t zo~ab%c|^gNfaeee|C6R^y$NoHTOb26L6@cp@x-RkIrt5Dl2hnBl)ztf6=T_PQY7ahZFPvR9tmEBbfhBgYa3T#uEo-vUrV!3m*#LwGfs`BE|bRh zHg@3rM72ypywJ!Bp@x1!&03+A2ZV-J3avZJguHg}K;sn8CMM)gp`33J<|cU#Y=Lb+ zUy>=DOx4N9;B@NRx{2^;>e{jv@PRjVZB;M0mbeVgrLGO!1KBVX2B)rV{t!NZ_uzdf zg7xrU*p#|9k`Db-r_@`)nL34gqoqlBd`>j`c9%foq{Rq(U!9 zfn-R6o^TEP1A4&K&>gOVE8z<02A4x3bcHUE0P&!KI8flSZry*s2odOn4hTaC+93#S z&m1uj4hn85_qV1z2DgbFAJ z1C+se_zixAb8r@Zfiv(koQ6|y5>CKzI0i@IC-@PLz+pH9Kfpma0Q=#4_zw2Lx3Cw! zfl~MyzJfjQC42#&LkWBapTchVAAABI!!FnfJ77C(gRSrpY=OwDwexQS!;6~8G4e(F69{NHWTnByNTIda_ z&R}0@Q#ROi&F*sDetU zfO0TE8JvgT;8!>YXW|%7 zd*K@>g|Fc&*aKg}7w|chz-RC&?1ulrC-5=sf}OAfw!=2q3Ln81*bJMX7>ZycY=95p z19%_agZ1!Vco){eT6hNvVGX;`yaF%7OYkE62MS;* zyZ}q!c~}gKARiXObFcvB!?W;jmtpwB7G zbn#PtAJeBF#P?|!R-Y*?a6y{Kja7UT%QS4Au9Ugsyt}5`x_k7MS4{6?=u+k`bK6>` zE0Oh`pH5c{ZIM!;!Q(=`0imADgu0#-+P~p`VYO1LZx*}F7&u+2=@nPgt8KXq%-do? z(3tX9Ch`BH>P+CHs;)oo*r1{yxFE_JZKW#Uf{NOTMHHB5aA_a^l2pHT# zMZsN^7D2RiYn!^@zAJ*Lpd=xgNhXubo|&M+WF~ti|L^a-7wrGj{(ir6&%5s~=bn4t zn_x1If8M_8Y~H?&mx|-BUFYdOcHj1z>pZC)CheO|_O#ly>KrRo++gBua!N^)dYi4- zCEXSxM0X?mzHJ>i7QVs1JsF(ZfAGRrG5B_t{)3mxTJBi-c04P|;F`X;#TZ-PNntnc z{K#(I`4OeSuKt5_eEB%wQwhLT8h-RDbsxRTLUNS`K3neD@`iqr8Tv_f#ZK83J7v#y zhg!XleAWBNm%P-eEp^Jy9mz|bd!AF(=XB*cb@iNjs{StdY4Xx}@y+t=EpTP{CG@bb zmeRGj&#|&Sd!5;yz22(Pd%abo_j)xE=Pu30v22ii=3cK2)$!VB9aBSgt-Uoh_~8uo zQfGwm&8qXiW!3!OvZj`P?GmaV-p`#|P^*EuHL$G4(@tAYJJ%OG)fYRZ zMN# zi}w0Vf5E=(pXe$^QV$OqX+0HWw13ujsme9nwroo_+_-nIR_H0H@howkZk>zFlb@m?$Wz+Q98UTaTC zCTn4LpjIDsYGYVk)Tzk=SWVPwqE1Z=tBE=_wIFJn)4>rdamcB}At%ux=c<);xT&ne z%~hv$9d2^yaC6nUpi@o`opP>P1v}+jhgHxir?O5rsZKXnt*p~cWu0zPQpC!r-G@3o zVps)o$1b2&CPC~5)cmM(14cq`Qpzc-Ny1o7)M}zmO^m(@P7FDgbR)--BThB)N<~t| zuA+7sb*^LdRdAZo>7zSz`nXDN$-2b3aEa4`P94W<)h=;Y((-7^-iPg;kW6KUtBykn zAcrM@3?+c8P7N)h9H`^)pW`@C$6=vT6@^Nwh)6XhSDl({0+lsHDaTs6+%?)ibB$z` z3>Kcvq>~QIj#`%9^x?yCFL1T_V8;;>jTBm|0Ep;aCTIO*k zEsrKGbtdgv=Akc!Cl8i+Y|?TtY02I*)jd+3N$ZLxEp;aCTIO*kEsrKGrS+#>UF>S| z0oSn8&L%B~OO7Io+c*7h4MKYQA)(b{L;HtTj|=TjO^!^b7c9;{)p9KDHM49CScI(4 zbhkcEclVp+%!lUowJ@2XRya@lmdD;!)Q9HcY;P?06f?_RQEayv$5K0HSrE;#&^wl{ z67t1P$ByOtIFH=$GmM`tT_s#@UT6)NpL{T z*XIOJS1qe_#ydA-x&1hn?l8-Z1v|jKZkF9`mV4b!f2S$eR0}%#opG3D!_=YfR5Z(4 zGRtiV+kLV)mZpZ)H%r%4>zHoqjwK%sXGvw)Y-Ly{Buw99!c8{?xvzF#W~r7FdOZxB zt7chadXzZLn&l1|+YO^*X&`3(eBBK=-o5F^3GKwe4BcaI70zHuW;ZX)avQ>CoHiTB z{MqkzfO~HTN`9-$y!%cm`P`dGTN-lyE}EZ9X1}PU}1(`wX`~ z=H+;7)vY!YcdI)&;jW(>Ov^N@r{|h;uLW@LW8LxDIBX%TUSB@_Z}8o1?{-EqICpAU ztpmNCI2O@%YdMW+NDPGQvIq#%kmbawZx(Jdf&HrQ?rG(3_}<@7PnyQd|6eityqwuj z#WDTBYj{9EZX4e4xcT)Xr{Ptnn14Uxe%ZIGPUfk;vfgEk{Ts*oUm0Kj?D+b}$JhULeErh#^$W+>-#otl&y8QEM~ptN zBkU+&CEyzRoeK9_(oz32j`Dj3j=?WlIEH;ifMe>50=oX;*xzLSHD>tO)G=d*kAqJ0 zUM(9@DgL7h@gHS(Y>WTk+_CVtiE|t)^K!e}N@jhZb!StZbFnISugUYk@$pP>jIn%o zz3bX*Ip1gCdhKiE-MaRb2NnV6+YijNZ%S}0>-!Six_d2sn}X}(yA#}sdoBA`1=p$X zR`8d#-F>0Rz2$_yJ5E^E{z7O;=f=>Is@%|$(?snrFtN^!kWDeCBb>vEQ=oPr5CyUTMDLnh>;R!qp@ zKb+6eHQk=03i=DM`~^I%YxSe(+LN$6Z)54_>IwVdp&1;>c$}XmN>#2J?K;eGYjmIL-28U; zsq*MOSq^DmnH^?jbv4gw>q__UWOo0~u~n!0cdFs*AAeO>q`Kzo@01){^?dzR&-=Oj z-p}RtelEZFbNTh+=+O&?N6&DN-dsF-iS+2$@aVMh=q<)$FO;yn_B4RyZ~s=6+rPDT z&GwpYFO?qq6zi$5Y1ju@PyH*ZU;m2g*T16X>t9hj{&VE_pCiBj9Qpm{$R8Lfe_*8i zfsyhDMq0l?>o+KWdrmsa@>eX7zhZ&>+3oUYx67a1 zE`N5r{HbpFQ{D2Xy5&!G%b&J@r7dD<3t8G?)@VQ4ZL}ZlHrkJN8|_EC%^tPW>`^<- z9<|f#Q9Je%DOi5{tOv`l_jQksagUB#k6sk{Nx7W%*&UWUa=!d~Lh|nkskXhG!t&eC zW?}hxnyHfWQ1j^Hf=36p$9^Ds3AOEq5pFW?wW;CQmY#j)&t6Mo*KL_>HjSGecSyw_ zD>ISlb%&R-pG*1jl+uY4O4*U6?8wsW^3v?NrR?ug_IGJdV`;&J(vEQH?($Nd1*LT- zm+~JBl@6I-I%H1ikaeX)Hk1zexOB)Dr9-xq4%t*XWNT?hvef@fDLcND-CoMBFXiMY z)kZJnS6C*AdR`QFO%r#VFU}KX4i>lU5U0))TaD(`GMh(=*NQ$D#YTyzi$e3njW>$d zhyvG&eP&OUSv^Nwb%VI_4dXk+73)jKp0KP`M^foH4E>T%DQ945>QM}SJ%{1)J7Nr% z-`rs^{Du<4&CziA1tx~eFYqv2zL$~V=4iP5_7KB`8E%e-o1@|KYfKE6Z!i^Uxcpug z!_Cof`5hvL%dcvh&2ah6CWgx|S}|O{50c@+442;xWw@NRrROn19lE9OmX5tpD+SH6 zFXEY{Z`hfouh^Nz@jc7FXk*ryd?yE#Gf6Z}G*y%*nlAcOR8eJ|7T1)_a=)H~l5W#o zx=Huwme)Y?1}M=W>qF5o&~{Mw8B}{ERR4~OXG6ZZkhd73X?>pwv;b@dksqOO3W~}V zxfFUH?D+uN9hH?4T@1YsV$GsLC|)4zMMyKS2~=qO+d#t@DDbeX`(*8es?LRCqh|4a zBYgA7tTXM~U}o_>7qj@XiOEo{Pu5vbBrb}IB9QlHsCGNlFj91+Xo%=wQGZd6Xpm?) z6bnGX8=%^1S$~A;R;ySE?fM>9so@%?R=O08J|$fSFe}Ge<(?RB3?9<4iDa%1h4k{f(; zCF^}dC5ybpl4otif2t`_;g+g%CHYlHNbacYloVBlB@b2HF1e!OI>`eS*2sOm*79w= zSIBu$&sUN^v`&;vZ9QEwFZ_mNS>w}^nT>y!T;A}JWJ!a?d`6&3r9b;_kz80~OMCvD zbIuyv^Pp&jXt`*y=r5vMMYBYVXK>H8BJLa9bFql!9o$102lrfX&RKJN&WnF6nNnFV zIk!DuGC4zcb9;Ul|A*w9T9Zi`!acX=?1r_H-})y@ezPYnIje5CCl>AZd6GH*X_{v?9adv5J_9)X6 z;$-IBp5wb7mK>M*kL1^)F_pw>ZqKozUx|LXyH`TG&h0r`lxr=Fs<}pmk)jcz;hi?Z zVY2CDZqJb|H%W$O2S`})xjjQfhl|L|xjl!94iOC&4H6wJ8W?*>VmBUCW8*(ij{c$p zMEi^O6ZI42h<+imL3m^-Hr>5@Y9-0E=F%PSUMdOI>Gtj*OF6f@QPkl3L85?lYYn^o zmD$cGWYjrQ+xcYLZt_)GyIx(ZQ6##n+qSE~UYXmi*mYNkv_Re8i@s}rNn(}QWplf~ z6@4T68ru1O&uEkGtRp>+bUV`J2s?$E-5rj!JJRMzt0NglluFcWaU|u)9!GXN@{=P! zI-;3#gQAQyJCbmu$r18O*Ej_w5l7gyDk)i!t=WvexV5Ry(YCv@na&3<&1NRf2XnwW zumOAwz5rXmCcupoz3ouVMY3Li(nCdyp}K{TzZlAV3PrwxmhASy3yqf>rw?;vhDqHr z6aP|^%vO`gHj^dZCv~s!a^v)2j?6HrTV~>4YLeM%64_?r?J%jC=9KJIB2)blmJzUye}7)M)gHT~E)z1R@~;u_v39fNVY9^d(9cspDpy~H(^?5^!|&Dd)$ z@jkWJ`9EguGj1cUkzV2&G}7mykv^yQDc2&FeP)`b_j+Tm(B7V^B|*)~`}Ta5z87Z} z%rTF+9NOJ0}&`l;iE z-j^o~Ti!Ty!m!Hm6NdSwP8ilYZ^E!p=Y(MkLmgZZr4KWnA&wt6VOZjY?gu6eYx;_M zf91aQ6NdG4O&FFvV8XD}(-Vf(e4wipf1D8b%3lOkzbETa(L$)L-lXnT?Dk1eV}D(` z4{ALh>S={K-<%M9ylqRrpx2S%ds1fjPIQgVUMqLbGpVdM*;8xMa*c`i4wH+GyIwc( zk2dM(Hi>`a$SRY1=kBH!D|Kx$>HH};#*8+nQb*iMbu&ylnoPPcH1Qv5vfCNjp7*TO zwJ33d8J$kuhP778{AkizWKuKNqJb(51P*9PrRMWUw1o~&u38gaHwSm)NwvE4OHC#Rjh}+l~D6) z(MYKAMrbYg9K=S6{sl#Dho*wiJScfOv<3vOg?zGVo`bUYL78<>>O83Ojn0f`5(v$N zI?jjIg6i9$H6S5R@0C#FjZn{v(C1(}Xpcia)$-33&4B{fLR}X@Q$a+{SQoKTST*aR z&^)L%0!;&Xpn4(HJW_Nx6#ct=#Zb!*(W6l9tD;w+sK&DEIH>FQP|b5tbrBSJ8;UO% zm5J^b-3KMkgEA?o`nEH2J(EE96;Sd+sQm^g5A5uPDz1a}WFYS*Xc~A8WZo9NBw8oZ z-P1v^5%Ql4B^sd2O`@wI-%x0(O7B6zhoIzLDprWDfjZ^ebsSV(d`2!`^(y*UcYTYTv5fQMsdS;~Bw!_nRb|CYmaGO~hirEf0%Ri^P@x6n7mjZhpe}HnDH6xTZwh z9yLBl-1-NxcZc{BQTG;c`djg4Q8*=jUleOLE);(%sva)hX=B+YGhjnWtdhN5RB^l5 zKU-WI6hANO`P}$3V{59??ri^Fp7!s=-EWAyu7%wgOq`EBagK=Gfom=j@Akd5pXaM- zqCC+gQMOh*T@?BNuIo{Sx*pZ2>rs`u9;;K=qe^u>R;%Z~*r7#Gn73LqL)PLM2|zv2!9W{ zpvoYWlGXGi6#E?7brO`>0rmU@_3i_OzJe+>jL>o@TMGp$pzvlWqgJvF(C%WW`UNPw zFBIA+3P3$?K-u9cJ}+x4l+iG<{bV&myYGT32ZkQ=WZ#6kw?MwRQ1cT|0m18&4)5R zDD*+-F@6{f%?ES9IiZzQ~6cs|7L39BW`B8K!6iz{(fMBC&zUVNhaSgN$G~6c| z0|j=99)`Aq`gfqZ&qQZKwO2yExuT(vw-{1SH6>8hxuPSW%1%*O^iPq7TyeW-=&l2@ zzw~5ZH|ajwB=x;X`zDh;8I!6}CKcB^&aX|pVaM5Il8l=qZZwHsU=rSJQqOls(NWK< zCPBW6iBe#gN#n654bBbzBdp{zXZ?RCs5EiD@f_oI#@=?5nu|<$nRnFtq;r)|a>2!( zY&q2ZE2!mmsC_cDCj(U-3sw9@#cv^RT*U;`ybqL^1H~_Z!kZ!g<4|@R6l{b7!=c6# zWPJkpkAQp>C(Z}ncBtkeh#|qWG;v*UF&~^CYMRXJ;bgrUPS#uDWW5zm=528@KU{~V zfyz4|-Ulc1Dma-}!O40RoXnpHp3H0CWZtkKUi&8VN;sJx_CvfkPWJFRI9YFkll3OZ zg>_KVc@VFUllfPIrpYx8m&Q-u^Ok3lah~xss*Wr?2*?3WImP z>c}hc(>rd~oM7ezGbfli!ORKPoDj_kVKOk2ftd`fSs)A_*0>Rk8_~EC#tmmjJF04a{d!pXyO%pe|<*yx$U*Krtv5r=aa@2o>qYdu$?xUTu z&#hM7o=r(IqJHBEk6W_o{fre~vP66no`vX{#`Ue4_YRhOS)dF>HhMMn(d_y7cCaC=e(NR#%Gf=P*N~@Lb zD?~>?QMD3Di!|ow0x0~PihqIP1<;-)P{oT-~-xe)=web-=f##wmfgfZdMHCw!X%2?= z<;iE#eY8pHdz1D}CVMg_RijKQu6LYYn|Q;Hv&keGH%Z)R62HJCyxF9_%cSR3lVGDs zV3@V=7Ur7$@AEJ@;nuqPoBr-ljpJd~5!YyGiIxliiCPX9H4sY(~OZPPdXtXif8nRx)7@FIdThnx{B5C6sB%@H&6e=U zS$V7p1H8gYCS0p_u1UB(X(bandeofVWr2H!%m;J8IjKv>2*e2>FYl%%@P~D~P;;`PT!OAMV2X*8>SZ&qegF2Z;Xl0MWl5Ao`(5;2!>H zX6hJ|#v@ILZE$&ynq1ZF2m{YjeGp(32wb(PYm=m>_ zKlum(Z$oQA(QSg~h%F@Nf@*z;O3kMm-l=3t*<{-#(l&+}p)=fynD!J=Xw z=*2wG!DGcd&B3x_p5?_n%8PlDQ;ve8i#?l*Jv1L&UCc8a3@i4$U+np`*t4ye$2X%H zUd+S0m}hsfXM3^d`C|UmW3lIqUp2iY4j4zSFVGlJKO zm=mupfLZbC0+`p%XNue3FXr!m73--Eoo3urhsh%yZo0F0;{4)?bBZUfE1tNac;d&! z6Tc{)xTSdFrs9cPi&^Ai));-Em=y+#i&@`dmbaMIEoO0xwYHG=$znd_6%UzTJY-Js zkafjFHWUx}xOm7H#Y46f57|^aWNWgM<$`#L>eNeACvRSzEEO~j>^csb3aX2tJdmw` zrh}fZpw|FzT%CI3g7$&6%o$&_akBz@D-eSDTcx&f+k_F0M0quOE zb3KUyO#@Rw9%vp6C09T#4?(G3D0(^6bsW_B52*QZQ3(`&8LC+;dK7AZSX2r{Zi9R` zL*DP@i->ZeXbcKn3k9Eoy1x`11;tZP#Y<4-El|S;P+}!iH5m#V4W&-+Tz^!*Ng_t9 zL=ZD@C4!joD-p!gMLl1MLk*qlAHB45ea}{C=QEw_M z0Rl#uR89!XJ=4nBY2}`&*Jd%Gq<}Y&oz`IUBB={Z`I)D`&TXMdj?Za<&?HtelMomX))) z%Gq1xY%R)BaCEt6bGe7+gR9HgRA5-S=lycer{$h)D1=PT$nkbDqod04a$6xF?5$3va}gqoiaErPb9)sE+5iNrvMUZbU z0dDwGb2S+ z%$yWgF|$$(#mq}l)NRi|VTMDzp!r}9SO+$MkHHs!F%8)SwhrnyX;8o0M;Ud$E3;*R zcenI;(XJE3iN&c|(%2MnVCbNJy;p)`z%NJj{9w|0vFcE6xyuo2hBEEIyT-bgcMZ03 zVu^`=g30WH*#%Q&S*2X8qepeWY~l=ua{T&&%sO-VZ#MB=gd8xaU-k>IX;fyWiGM&r z>PxH-z=xw;X=}8SUHDKV;!<-zljIF1{&P*LOA*45eI2X>t47(C`!Me>%9hsyW%)Sw`X^Ae@BaYcGnaY)$l+5A392x za1}X~&Dz~j_CG#?-IE-|zr6s)+5IN?FL(vKT4X}p?xpl3I2a7l;=(Prm^cg3RW_(! z*YcvS zKI4&}>!*m8T}^%4XZ*!ASQfj|{C=PDK|vFPHfOTkH4>{_WACM=*#+^Z`|d`E11 zQjQm>+)?IS4!!KCayfH7U{h)AnM1*0$|U&qf&^>k81qNDw)O@tB_-m_$uVqNn5-|H zI#aX6a1s$CxzozYYU}i{Q3+B6w-#Emw}+-Sb7`bsA;ONp!7++{ZdHrmu%R9~LM) zT-r^hB2IKMn*UR%7DzYW~E9L_oWi8S&u)L^c zdCTk~WxFj=>HqUA#k&|R1Z1}x+66^Ufo9~?tsKrRBz4PJ;2h2hdnz!B%?2}~RG_2G zd<-k)FVb?P{J5lE@GaP;OiO(Yz9G|;Rv1pF7;c%haxEg1+5)}=n`z3_QY^K3lwy(E ztVcm=5xA4<(qd3DN~cOwHG>)R@>VCPk_FO>FJd9KhUD zv+eLovE(U|KlNvD^`L%ij?|gfy=_b7)t(Q)hqfssKUhgSf|3q8L~DX1|7fByQPQd- zQwR0i9R;M}?$9Wu6QXtzjH3L(XI=%<;>8buxmUx z0gTmIylZU37;(|AvHrnD{=wD$A~oe?{H|lLcnPt6w(DpLL&1?2=v_y4lsU!F%Z^&( zgQ>9JpniJnH2-^0zt<2u>0rHHNctD(P{L9;5QRg+GY`4fDI9E~6BC~{Dx#xFa+f1E zDwSCg$?O9EE!yeW$~p-dCfQt|&19C7GcrjH3G0U_AQI+>C|4vmIN}UKM*>crn21h# z$@R9?9Lwz$pU-JW`h2mL?}*cbewNTLYr-73j6 zg^aCJGSg9JMV_9?J%A)kRwtH@nq34jh-7uq|1ZCQk2of8bnd^=D&1&9)RC#QPfi2u z-Qw)|m2z52%`b4R=k2Pt zEtQy(mLJR6V=~AV$&q@@I)<_gOOcZhB*dnVXv&DUfCrT`C3k*03%KIm-1KKFDN}K} zPaiCO@IaJ{2oDxLN@Ve}zqvqLuCJi844bd_F$op8mV1NmD)Z~urIzo=g4+vfuPSgR zM=Ic(?T*j=NP>rVL_I!bX(17EGqF@>N8(Pf*p5DlJ1+aQ#Al|Pi$vNGi93K|?7Yk* zZpEBu2essz0_`Vl)}|&907OM0X_{?|*hH>0-E0euXju`RFp|qPWen%Y!(h4GDq1BR z+AxxSj_haC!J(x>5)bz|v?e&*xML~cNSLjI)P3GpvF^13eNMoq$57MF&Ja4voPma3 zc2p5+x>;|*O*a7+wdwjIN2p>&yLcTJSokL1-J7m1>XWP82R_GgJZdC^Oe&>~rmobF~)_vZ5nunW|A%PM-v$f#xmZQFRdoMV}GP%}1x`&M+$%tpb&R z&_)-kO<0K)U8rD0egr@1g(Sl15&0hMaF;h+*Bip&~o$Yx<=_%Q5>w~3TjIfYy z_3vycacLtXN=nI;g4=a&IHubS&YxRylb;I8`p6f9_^oEjOZpr$&au~ z@HAt+y-=VjSe*nHbd*^WXJVfgJ=sNiYcO%K=d?5^sxug=p;c$zI0@@BP>wh z$Rek2<+inO5T~AAed>9B>T$1Uy?zSgzeU4?b>JX+xkVIpL`N^84*>{~f$ezp)2?6M z%K(|^pQ2Yr|CA#Cl>dFPH-~R#k#DAZ6!?Ebt<%8-a0)mPFg5?tHjJa~vE(0yW4Jkn zkJ1lBDCj2{h(5L>N?1fMP!jve6h=aWA3jP)5fbCvKs0^-;b0ILti-i<&aT2Dy`lO! z3G|9n7b$A~$_%Dl*9blXpDTWKM5gX-@J>Zq3hf=rC57dk!FiEyWzB= z*$oUvDXRR`cB%GjWvcy_WQb;uxDRO8nyrCX`yJLnTJ86r?A%d9K@DskrRN*Mv8Ye* zSju5!D!d7N3O=(>Db9PSekNA^iM6>J>*NUCkW@bb9tDqphrmi@Ev#b?xz|`fCZeDhHpyL%*e3~<$z?ek=gbth+#{BtiUZiXyM|Rs9t8nT{cQ@z7%v0 zAt z4|8OON!>CN|5B68R+Gp!lk{OzRey%KZkgD>RGir=j%*VzX&DbMG+u6;KFpCBCUwh9 z{7X$TTTLR{OqR5qVE2lbo6Wr{q-Qu+I5xTB^5yzmq2XIOJ;S7KnTda?NoK1_WShwn z|Haf_XuRCzyuFR+8jVQ&myc>GEpXysCP~B0x^B_!#>-uv-FLf{(=!}*^?>wSclkwV=vRqxq_>0c^y*Px%xLsZ>$A7a%rTUDp}PW-O9 z2s5(H?i~HIIqGL~51UG=|K>?Tv zt^?PCYrvnu)nEqr6Zj+e1Gs9yz#ih)L+pBpTMseoAznSitA|+i5T_nu)I)r_E&x-( z`QSV-1)K{egWrL3z$9=s_$~MiI18K!&Hxj^>EJYQDwqIH0Vji#z=>cy7zf4<7}!A{ z9rV#bA0713K_4CT(Lo;_^wB{d9rV#bA0713K_4CT(Lo;_^wB{d9rV#bA0713K_4CT z(Lo;_^wFU{P5{S)tKC_6Pfcejo?@0_+PsV4nd4+j~J4^nh;A1v)_oXa{Ye z6=Xmfw15=Y19pR-z>nYuunRPUBuId!0Rvl^Un}!#Wqz&9ua)_=GQU>l*UJ1_nO`gO zYh`||%&(RCwKBg}=GV&nTA5!f^J`^(t<0~L`L!~?R_52r{92h`EAwk*eyz-}mHD+Y zzgFhg%KS3SFT?yY%rC?IGR!Z-{4&fh!~8PLFT?yY%rC?IGW3(7pA7wE=qE!z8T!f4 zPlkRn^pl~V4E<#2Cqq9O`bpDIntsyslct|E{iNw9O+RV+Nz+f7e$w=lrk^x%OcTd6 zaZD4(G;vH5$24(F6UQ`hOcTd6aZD4(bR5J$6huH6gg_89f(8%(^}rA6KrQeAFQ@_4 zU?->om7oIb0N;b}z;>{0z`z#DEtFd*x2XIr_y&9pwt}y~7O)w72{wT*z~|sI@G1BN zd<;GUAA%3S``|tBE_esL4c-D9!JFU>@H%)6{1=pi|A2pke}PxQE8u1D5_l2(6Z`|b z0G22X(}!4u$d@YsNXsdK?(@H=o0m;}xSzXiVm zXAKy*n|iw+1&@G-!78v4JOmyDE5HNbuV6VS1NVdbz`fuea5q>sU|{nIFdPg6M}Z^3 zP;dkoGGJhW@g^8=g7GF8Z-VhA7;l2{CKyM8aU>W=(?oDOI1QW%CV*4G$>1b#A{Y*p$0fWIHa4;AM27rUWfuKJ)0PGL;1N}e__yyP(c)&gb2F80q7W9B_&;>d{2WSUv zpcP~W42&_h7-NeuwisiJF}4_Ei!rtsV~a7i7-NeuwisiJF}4_Ei!rtsV~a7i7-Neu zwisiJF}4_Ei!rtsV~a7i7-NeuwisiJGPWpVi!!z-V~aAjC}WEv6dmI0_sI$g41U6(+C3;%5wJ!L ztWg7N)W8}wutp86Q3Gq#z#28wfNHQ4RDnuR0d|1z!FOOg*ap4@-+-^dR`3SHa5b0#{sjIA{s685SAr`*KDZo^D*6ZmgEr6#G9V3FKnm;uyTMQ3NALsK1)4z;BtR3G4Q>H9gIVAva3i<@ zTn`GsOmH2z7F+}V49LA|a<7`)tNtVS1GoxY39bP7;Bs&oxD-qWmw-HQF_;D}0>1|r zf(yV@K<-tOd)4G#HMv(!?p2d})#P3^xmQi@Rg-(w+H|E>*;(invq}mnz~?MO>1RqzUU8N38u1V!LBun;T& z^TA)hJa8*095AqA9e5V31%C&B18cxD;AyZLJO!QvPk_h4W8hKn2zVH*0xQ8o;6bng zJOKU*mV+{IKe!Lv3+@4TgJqx;+y$0`C15eQ6D$HHpqS6S#I2XO^%A#U;?_&tdWl;v zaqA^+y~M4Txb+gZUgFkE+6OiyN@myqf#fQ-#n)*q;o^TeayBCTdEczuB z`zw^}g+kXQG>quqOoAJ*J5p+p;0_iHHrM(}3DuW^LCHm={^5Vf3b*->lSc21 zd?Zcn5(iHc*DQ*#y7V0*5Y$lMl48#u-8KX_Znxh?7r<6RaF<^@w-A zEsh=vBqN(L=4}N;#wPd{C3%~2gTu+#Eq-O@uQ<; zS8!E&xs`|@HsNP1>&=snyy5EKq=`es(X+)7(l@y3eNpl> zQN;jOXqi_;9~LpH6{%Jzz6ff$5(+;W`){13UJ=g3=j+NHQ1CZUbeW2GcQLUQ$)}(c znYJRi7OL18yBrA@LGd|IgwYDNG$_j z5gn&RU9s~m+22C(bW(M+tyV;T4JEFVccF-&uL!q8UN017ZCAAHmPI^QLA!vQ;&QIC0M}~-gBXFZ&U$`Y=pGYRz$}`+6yb(<;r(u zogm-7P`DFH?9g^v5!nZdDn{|N5^zPO?vFkR)de8`-BA2CkrqfhZAEgmEDbgJH(7TF z)p5m}P~u_Y}rwLsh3jIywt= zkQPS%4K?kN^}1*P6#Xrv_!m}wuHwOv|97&Ef|Acd-dg!MnF=HCLCWYt1+1|0&rqTQ zs^100he6Smve+PnIw=eNBv4@`YgiazR)xtm@j@i3(dZ;7OpzspQ4W{F^j~EW$-+3% zD@@22Ernvw$k!igB&iGI`-_G`O*5cKj*99f@jj%pt59cGq0X*Cg|bkwEo}G?1H6BENu=YCd?5NcV>CgS5>GwaW_QibC`ls6ulJsaWx;e5`b#j*!CId?-;Z-zlQQ zpqg7CZK=YQ)F^sq5*37V`wMh`y=GlsCDcX z22xPs3@FaNE!2YPNmdvug#05#3Uy)w6jt53u&gd9r~yWPlrIZ4vK@_7&i4|Qd>sz?+K~A>$>{th;*}q|7OFc5YEZq%0Z^3X z&2L-{`F^M3a45k@@+&`p>i;d@1W1pUeD9%9;(Ms+F-T9F{3xrFuSZUP^l;I>P=ui6 z2Z&O>_D6n@8080!hN8cO;+#PFDaM>1B|q{b>L~s?)I@&dM~Pd0^nS?q2Q6H_{~oCE zae1GqJ6$qX8zH|k2TC%Bjr~Ha9 zp~L`4CtiNbrBHMrq|KNgkEl2dO6`Htrpl~--sfCOF3JP5p{1|CTbt(4g@lfO~ zXcABc=T8S}FmVk;Z4K3Tvq(KepNai?w+610F29mvC_kbOD!vwleY#W;?)bYz>sq04 zB%g$We}f`#Xa0gTJ^@v-KlAkz&DYCGzRvOdn3l6)qNp5-bV1R4$j`x&uPwpI8)hJz zL2y2#jgg;Z>*vRn!0*e@z1{$nya9@-4{tk^ejQ51cnYs1FM}(minNh~D>E!@aAgB6 z23Kl32Ult8q2iTg7te0I866+KQt|Th7NMM626*4Lkgy2d=3s1FJk4ftMC|0m&_+R2ENe8o( z41s_JS88JiS8A1mE33{GH?ofW7y_x*p9`$OTg;bK!{>V(v z=9!*I3SWfAvZGbPh|HSFZ|=?XG)+Ns(2kiN?^!cFZ5z;2(C21)UYp4;6>=lm_-8P6 zCcjz;j#fLeo}bB|_M*~0Gd-yU9lkiz(|XKIe$5d4jWRd39S1ihcRLs~)3c)mG^jJPYA6L}@@IVT)XwB@@-UPyXZGuf&Ft4O zZ)cepo8N#1z4=hKT6CXi2{avqK7cC2P}L1k9>}Z{Jr0F-LDRtQQqf(arBL%GXxDk7 z<5YZJ^dmGCR7XV-k(#Y87FCMgfGY109ROv!MeR`LIw*cH1Va^N?im;kYdhAJGn!z8FWNyQ`1HP|a6%IrA>I?@hCP|HAJ4ljFY)yWVNI@@ZSCnlEuR zz5vy16>U~gNm8>(mRe5z6UrU|WzIJV&9~OPA7?JXiD=oppJp$VyqE0BYNW|+Q057! z@}T6`CKjGrxsv0|ZgUbbk+y|F6pcjMTF+kK$nSAk{?=4td4sz9096~4dARdZGg>Ef zUS>wkPS@}@yT-1AtxoDicTG|+hWcd>rLv6nV=>y4WNk^@huJV4(-|IKt5c)>mK_T1 z8lu`+75%|qWREl>D`(d4mg2v*Qhb6*%C@0D^$#lre_`eL+Qyf6Yc1kyv(N1{+kds! zx7V!M?)qwKt-3ermc7x$@vgbo2%cb`=GVO4yNlG{`L2=P=nYX$Z;U-@()Ob@R(+t` zLgP!W5j?@|AoYA~w5_L%Hf@&7+GI~l%g&{kyABsAifqSG?Z4c;(9E{(Ph7R#)zT9E z#+q$uY3pu3$S&2*ZtHT*w(jJIZuJU9R<$BO*%COWEkR35d{gJ;HeSbcW^ixa?9R)p z`@3y+UhdmyX7pyHGk-^iN%91fI;ZR18!8X<#;jWA+3a-~l?T>nbG5a)VprQ*vlq2a zXj785wZ%-O+*_9(`s%iv*_Kh~XI5&|Z9UnG zV&A$(e7YHy2YiH^td&8daOoUyv6eS zhtPvmtbGW|4$=x`2iYoS2emwGC0mf}AX|>?AX|*=pomgLXIfmxvCcHdz+-D9k7JB8 z(GE*~%>bY6eq_Yp(?rLK8csK9e?f)19`V?Q%O;E%JkGe`vbItlg5TEv6OMIxIG(UN zQrtK_U1D5pd|T=M5qYCKAu`BGfBNbKEU_5v~A3Q%*QjLJ77Cyy9hAnF|F6i$eoQrRAr;_fMR<`;KQ2^PyQ z9@9G%swFwccz=@hG89)a{vy;%ij8TaUUom_MRq^s#h5mB#+ZNxnVtgGX$0LTLZ^8T zhij@Nfgjn)jHqHg?;U^P`7w$)97WI`XZ!qtr`ofT)9bExG;*0NFI%c+Ca*JJiE9ev zt0_>wp=WAm8_zPn$@oU&8;q$*odRR-#lFt?7UP>o4BpdChBJ!H)01oe$^b4^<71X~ zy$&xjPVJ9bH#NvSf^`HoShom%!R*vW8b#_O&3@nXt=#`1_$Z4r{vfYAwAl4D+h(nj z&A(Q;5c>#xEX%*zysKrmgk`scWj8$#d`HRO^uVrzq+QR5{cFXskIh~!_I3u}>L_Y_ zJ^1#|_O1hewuA4q)v2_r|If7?+o|Q+2mNoYT?e(*{(KK59}7borplaSB~|7eEGP7k z1v{Bq@DR4@)Tn*BDnDe`frt@h8R~8-Fycxn83c z*BO6p{JHT5#_t?% zj_%qJTE1~~`{l2<;cR<%|IqthpC z9G&gu$~EBpjiWPBYUA(VdS>;;(XD6G?HU@qdgJJ!4d>CvRU1bqj>EYhyjkpU7#%~6Ip z0ldt8UalXzakQW7wM;nGpSIQ3FX-+)rdv*&@u5NJkV^_a$b&IQ;T-_@5rk!?BYX`McHQorV0fB2FpRB2%dJa@|1628j z=nkl2{Xs)>=s8C{=cwl#^_)Y`IqEq_J?E(B99>h-IqErwo^$9qM?L4zbB=n>QO`N_ zm!qC@)N>9!=cwl#^_-)gbJTMVJ?Ap#T+KOGbI#SAbD49l=A5fJ=W5Qm%sE$chDJhb z!RLUUbD49l=A5fJ=Q8J9%{f3|M2b6tH+;+nAIE78fyjpvXWPlcj=!gK1;3Y*2h~C?70Bu*PI5VL`&S zFqBSqkgiDxjiKbhkH80U*p*tX^ zTEa|AwB{w6XNlIlL=!C0%u1M8iPjsU6J}Myq)IfW63wPWlPO^?C7Mc!*1Cj=lxQ9$ zTI&+c0-`fpYfWNkiLJHG1zT%fqO~ruwYG_2E3PG4Yn!B)xRz+GOSINDVVJnulwpPf z6IYu#thLtMA+5E|9#&j!{;<|s5rC9`76aJEq_wtCz}oK?5m;lgEpI`=)|j-`78h7! zvbDDGU~3$<))pabjmg&9f`n~jvbDB2l@X>gMX5~TDI+>%3Qn08y-bS^jfB>M&jIUE zMkva(_+<)2nHIlH5hx=7WtxAP7QalhhweD2j9Hgy(q&rrGEKRR8JB78%QW9IB|sUo zEz@KnI%KM4%(P4iQ1*Z1-3NFRSG(wYT!2tQ@6{mFnb3PPozMxz6w?Wz22)H41aRmm zl!VYb1VT%I012Ul8Uvvu;1RZEjf-%REdsVIV@tBl{jVkY3n%-#XYYOPeeONaz4Ls( z_kGuBH1p1yC0il+67F-2xXm?U5v<`R*NA&uBNo9L?r@E`!8KwLtP!_I5Eo^__1v6Z z+?-zAoSvK0i<{Gno73~e_2LEz)d~A>8w0_~_2Q27+>u_~kzU-9UfdBOq?n#N(u+IN zi#yVbJJNGUdT~d3aYuS_M|$o^FYbuI6}Tfkccd40r00(G;*RvxF; z(u+INi#yVbJ0ggSiX|kT7lCUNxj2!l6Inv?$q{LQD3{u9wdP!Bp)S_ zB_tmvQ7r2)N~9YiOGrLeA`KDgNJM^#tdYxFJm8A*2@_>ca#@Rq%ns&+D0`AW z!o-7S2lFDL=t(SV@vsTZ4N>$Ym$iK0)S?f$tmQMO7Cp&jEgw6z>`5+b`Q&v>lTOT% zPE3+c%#n^M(uv2f6BDEp^P^*WbYcwF4Vr}TeROrM^=$HtdmHJXhVLVA<~HaMne>>R1~uyztj*#H{xpzLG&ZP*bqfWL|T&H zZFJ(x4MFxKCq#a~VUOrZ&WZerLoIs}(^65+3sLkWW=4F`A&9vVUv&s#cI1~GqUb|T zP(?XI;tLNuWKVLE__`x{lG7x=_2|Uc0D|aAehnasc@kd(2x6Y(*8rmENqh|;h;~NT15#`f!PZcA%rsQNXkgLi)U5w;2loQ54t}OSIF%r*FP8v}@NjYr{ zU@)-MSZ>dluO#mYaJXN#avT za(642oO>?WCl{TZO$K7wx#yE47M^=XN%G?$=ahk%RFb<}x%}Mo%0BTaCAqtGFF`rC zNn4m&0=*LXK|y3*iTy=jR*AGpq)Vbaf*GZxMdCgYZi~Qd5(kRFToP%HxLX8TBhneM zrwGgrJjdlC~xO;3KlSu4a}2xP6`Iu#4$?Ih&XCS=SbWOpWH z<V;E~?&y$cqH)O+sn{A!QmNX(r)?jS#+{V17u5pF@bPPl&t}NQ}Nfh-yf9E{=&` zPjD_I#C=OJKQ2}=(ac{pi4J^42fm^MU(tcD=)hNW;43=t6&?7B4tzxizM=zP(Sfh% zz*ltOD?0EM9r%h4eCvyg`^q3X@D&~SiVl252fm^MU(tctD=WQN#mw3CE1OPDq>A4_ zh;1OM;6VQBiVpq69Py!?N1#JKrLzchNY$G_hkPz?66nxR%n_f-nFKoIGqs;Uhkjy? z{KOpb4(7;D%n={Th6Fm~<@E$Qi2V#!+K+=JjBR@Gu zeqxUNWYc1f{KOpji8=BUbHon}@fhVS5ygX)^F$PnQqGj9d6;sph~ja|*&>PuD(8zR z9;uu$qIjrs&WPf%x@V0f9;}=A z&g3K##Y&UYNEB;LP9#yRHaV3(@B(TPEIHTvFhZM62-cclS&jTPflw^ z_qsF}p`lxrwd_sIF174U%r3R;P0TK}>`l%t1KFFHU255zm|bewo0wf{ z*_&LoI{DGo$1LhDDOM zB3H2($(xbuSd8TD$dxQc@`mJE79)8}?$s=Y@}}f^79)9Eaz%@gyfL|^#Yo^Q%_uR{+Eq2P;my27B4;4>CE_RXR^N`D(k>`oX1<%mE*yNIDBz~Td#7`745BWJ14%Bm?o&)t9sOLaE2kJRc&w+Xl)QJOi9H`?! z9S7<-P{)Bf4%Bg=jstb#KzVJVSc&3Tad`qqiv|cBFIph*4$(x?7IAXo91+Bq1KvV7 zEW)oM+!5iP2zNzzP^4Jig(AgrIu|Ks4J}eE`(cq{YKN z#kISNH+B_Q?-BpV+?lBtjOXlmX+eET2_jlEGtD%mX+e!T2_kAEGxw` zwyYFS*|Jh}X;~?{w5$|eT2_i#v8)tbT2_iKEh|NroRcmsE8XW8U0PO(E-fp?leerC zy>cFUwX77qT2_i)spWM=$6S$)xgs6wMQeJ|nO-!e7ai$ELweDVUbLeZ-RMO#deMts zw4xWC=tU!X(T85Np%-1~MH70_gI=_t7aizD1A1|Ny|}zyTwO0NZa&k^`!nw-E@VFQ znRoWX9gy0-VFs6%8pOAZ%5N;t@dk}JNt{U-Bg!JZU zhNftO51^ni8lfQ?pg!uMF6zJ^I@Crj_@O3hpgO9dDypC|Dxo4OpghWazwi=Pq#^|tBqIrlNWcr25sx^;A_f{v zh=vhSh(rXQ!vGcGc!sC=6Mx_d9^(-n;&(j2ecVGBe#2ed!EM}v==}zMjrVuDa&C(F zwoE{DX;IAea2Ko#cfrDN7m*H6Vg1Teq}K5iarswD9q!q~ zwbL!`YrFGW&zNhwcW`ZY!L{85*LD|N+g)&NcfqyY1=n^LT-#l6ZO@+Jo`P#(yP zo!5HCT-&{aYr6}s?Jl^syWraHf@`}AuI(v6$Q}1xPTX5&K z0q#r-o??`zpau6HT5uP%;4WyvUC@HNpapk93+{pzJbQ+Fir&^9<(~y+yfm&NIbM`s zin&+|dsz`i5u#TROv?zF4+sg59WO=}F67logxupIy84Rf=pkZ%5i(1NnDJCZTXzxV z5!M}|v{n~!p9r@_NU9;?KoQKdMU0y);%*UQ#)=pv>z<-~K3zn0l8E6y$`~TzvxAX^ zO>JDqC}YOf@guqV%Cx(V^Io0si$Uz^Btq_S5nX*nbo3ChzX+KnM9g?9qOH4#@(Ak= zQCh2uxKD)JA|%xiai9q1*&@bG7IC)-F=IuHl66l}KA$e4I!VOvA7u;?@!7$kv_FHA zS_f&r1Q`>8;+{%NR3OrYQHQryM+=E|WS*rtlx#DMY4c2V)N5`W9)ojPxxA z^es|P8R=UL=vyTEmMKK0X9peYWg$+Mws=?2ja@-cb_Knyy^9CXFzZZ^vu2Rv#~{0J zP+D+M;+UYsVL@hNP;{N3#on3q1_c=w#m=z4DdpA4opO)6v#YN=J9@Zte|O3(;m#RP z-PzXNojpfecesbv>h8SHoo>5RQVn+==uYO@?i@GSop-xa%vg7h@{D`BhtH?GvpUJ0 z!+-ST5O;odu;HfkUO{bBD+RTE5>)j0`B&{^>?C8)ptjkQWYu5BE;8z5>?~tH8Jo%2 zP{tNA_K~r@jD2NnF5`zX`peir#@aFl$kPuMZYk@O z5$;!7%Hs%Yc$>F9%>51u_W=~*T_j^Yg6)d&fXT~vz`0C2mDwcXWp+@+OLLcqmo8nz zr_SXrW6Z7eE5nJ+Ueo;vMC)MdC6x}I@m9#bV%uFZ}YNn`0J!Dk-FS_ zwjIfR)Ou0vQ~YxF$9IjLm)F_0Hm`HMDPD7~FfOpwhz<&fZ;~8je&G5&&XUqFR_E9e ztIPS$aVfU8r~lXj@KW*Xg*w0_+VO7wmo&QtL*Q3s16@ ziz(syrGn$r@V{&~92vG75x3t=%ITFf$yt&(G3So!a;$&&gSaqPhO3%&t8;k7OZzG3 zF#A;dC($Kxj>qT4WjWNG@1i&PZBo_||z!d!U(Z zdtE-x^t2rNMzui9?+&|tTztU__DM;Wq`9s#&L-)va~3&N`79k@K9@T+iY! z=4KntWQ1frPCptwBKfr|H)CN|w(AFbN4_mMswK2c8eJ`+iT2z!qgv{gh#Q7I)wJ6& z%T4clYl)GWv6m|3d>1{lLi9}6ot#w_(%U*$+J{7UjagxQKjKbWZtPEa8|?LBHrne& z+0tyT6=^o_jE~JJt`*h|aW=Chv!#e>uAJSu*CTV2U#DeRLejDvmyIj5``ImwE9}>- zdsD_+H#k!>TRKx?wX%EZ# z${rR!fJM#NR@ELB9%m2B8DtMLHxv64+Q+|)yPjD-)0)seX?|q6-izal=KN}P^j_x4 zjXb%rJKKY76`QNI2zO`0v-W)n9wh%7uGxP|zEL4O zCcV3@^xWhCnZlz*iuX1rhsSuk=4Gb1wtE}i#Gm$dnQRS`Z+P26;)9bfP((~JtI5Bb z)o?B6wj(V3aokPo2J;K+2HQDXV$PksC7D(7PUf9T+Vrw`^i=EX?1u5DY{A)AEq^3N z#(UZCC2zCU&-psuH|k7$&(vOnEFmeSVqRu+GOkJO>AK+9=bfIamdzQEp6c3?o;o+( z5?wq!)wUu%HQnmn&lO3%Ha#`GVR~xZD!DJ#KekD_CEc1mD%;C6%zHrxYfR?FTdrk! zivwK`qsIk0UIrSoqa1;6#%3Q2jPDf?mt*glQ!MNI!03WG$0K*-9Pe%KkYA0Nk^n> zTha}CK-Mkuv8=E+?dkWIcK}` zD`$zgcm}x)&9c(k`KSLJRNgk&eC2_gwcMx$fK6y6(FoUH8q0 z$-gB&%lTQmmfSVUJ9fEwp#8h#*IInu#JF$X7PKsKu1g+ZUK8>9rBB3b^N2TofiDYW zuE<=;6$dwUzL)&i+cMWaL>94!>_Z;0BR`85;$Fw4rM*oYmGo`=Vl45VI5;;VrKRC) z(or!qrzQ+0FUp(bowLDJ#&E_}Ch~3UIm79QjuUg=I*U%M@Z}?C+83oTZr;<7=ceO^&qPh;fQ& zIpA%z#Q*Mmk0Nzz>Q>ACN0$9LEpu9l6S%@G&jMr5yT;|*^8Rvg)6AVBnji3e>Razd zjR!Z4Zous{jV#F%9NaWv@Y3g(Gw%haZstFNZZ1``aG{ivGW)voi-%$qby@C9DQTaU zc`>qR_&r;-7gs8{9;bg8-zq6Ns(|A&e*Ue9FK#^Oos^ih(z>Bk&77_gTIRRI8@k5z zM#`AjdCo>DV_cCUnh$3e5OsC|Us3vs>iLn_c@gF}b47f9#MeELsg6S*_tv40FW_yf z)k4$>ts9y4daun|?ksMa(=vC?eBjOrkKH-a;n{!A zog)Ugv-z$#cSKteBR7d?FDYZ7h|x<$G|8BGU(^YYM2yT5G4lrzBl;zMmho3)ok$N4EVYN&9l3EqYEMdcld^EWC%ZL{iY&)&QuzwuDVY`XYtdEKeSQHvvWMj@ zu!qGZalU2z68K(T#u7@{6VqGqc(rW?3xW z={_cno@BM4f@sx#PrLcDu>EkZ#_o2!Z5+RY*{GaAI7cAd)}s+~^Sk^VAi zM|9Do9k$}}r(+K;wN((wb;VZZWnt&l_|qBU7l@b%lD(O&bj;&)&G?mNZ|pH=PWs6R z2b|un&l1{4IFjq!ial=J8Icu{?aXmaF^9RPMEvgh*tja`X5L2o^vti~y`4GcFcG6_ znZu%LTH^B0dlm7O$b`Z15zbkT)ybU#!;OKlopbI4M%Gmu zI15I<%vqkZEdGt-7st4q^UfNLEaPXDsu@>^koSOKpGL?`CaCqrz7`_1jGg69Gi5St zai`5B!+sI=iLjSoR0#1aWg0GHaz|qy_K|wKQ!kS9144`sA>kImut|h3#l9zUFUgyc z?R!G>34-;qSzL%DF6G!9VEvgKJI$RP=iIOUB$M&O0LNMPQUA(6i1E3+F{BvZ08hn% zVjzw+WDp{U%lD^rktuI<{@LLRg4i!#{8d!f33*==%rOL`lMp$S zU=x>Bs}bT739br+h!F&5UXnP!_9(#GNxV=?ykH_2_sL}0Lml0o@LW97wA?r1iRD@e zaev9=+9B!$nexQbH!d<(H7?9ALPXJ19P*HmB^t~U{bq@Nl;HS6gisO0O*=$W zj^%{B9|<`t0+K}|uv2n@$C48=zng25Psff#`P=!d@e5Pi@az0eaq z&>h{-6#?ji&gg`W=z#WUhqh>g)@X&6Xo2QvhNftO51^ni8lfQ?pg!uMF6zJ^I@Crj z_@O3hpgO9dDypC|Dxo4OpghW+>#up7Iu6FaaS z-(VZQ##h*iE!d1r_!4?-#0IR#I;_PSti~#Qfl#c(3M|LxScawe3`?*Wi?9$OSb+JM zhq(yG9DIt|n1z{`f$5lrPcRi9V+tl?5+-5-#$z1DA_!wJ8lx~0ff#||7>1$v2tzO! zgD?;S&>#KK7ayVzdZQP5q6fO88@eI@UC-aP4EE} zG)5ydL<7`EJ=8@V_(O-7j|L?w&NRY!`JuA_NOCAM-F5!I*nqyzmF@b< zc70{LzM@@UFVQZMc6~*=zFxHJE8F!I?fS}gePz48qFrCvuCHv@*Nb+2WxKwzU0>NQ zk#>D$yN;PFLc7ypV^Lgom53UyXoD54r=qo2v=09t~drI`Lw zOfMBvs$xn}OcuqIteBD%Q=(!@P)sirlUXsvE2db*6r-3l#bi=U(Td5an4%O@q+*It zOwSdQs+htR(=)~NR5AUjnEp^qPZZN*#q>xqJyc8&6w`ghbWbsbDW=~P(_O`MM={-2 zOt%!%O~v%9V!E!Ft|_Lgis_1C`b9BaR!l!Drk@nkCB<|>G5x5R&MT&Kis`Ik`av;$ zub9p#rqhb)lwvxen7&g?#}(5t#q_OWI;xnCD5k@T>5yVNsA&5XZLgy3QMBEPwoB1= zD%uW3+pcKeDB3nf`%2NaD%uuB+pK7t6zxkz(<|CWMcbfg>lJOSqODQ1)rz)C(Y{c$ zP(@p*Xe$(LxuSipXiF9CGeujXXp0qXk)kbBv=BvGplI_IZJwe9E7}}I`&7|pE7~kY zo2h6s6m7bqO;fZ_6zyY0o1$ow6>XBDO;ofAiZ))+#wprZMGI22(TX-o(MBp-prVaX zG#=kDMH{MUA1T@pMH{4O0~Kw6qV-p_eu~yt(LPkPK8n^`(RwLb4@K*)Xx$X8tD*%c zS{Fs@tZ1DSt)rrKP_%Z6)>hHlC|YYpYo%x{6|IG$HCMD|iq=%o6h&*SXpI!Dp`tZV zwEBuxPtocsS{+66SG3xSR!h49ZC~Sj72DRa(^SK}*0OI-bVpN-mxV0*_$Q=pWgoOW%N(9{G`pVT z%AD-&B2CZ!Mx+DT+eA8?{q?T5r4pY<{rIwH)FshLrc2B0<$B*$l0ou_%!S6z#zC3G zGe=loo4!13pKsDL!t0T5<^nO!~ z>CtVJs&sWbOd=a-xl+y{JaXa}pdS@7S8%MiJICnUslAEd> zlA6+_Z5~bT35YwHS0%avy^1kOj5Fu+f^lYao#_3xZ`N6VH_eXTPtxu>u9!Ahe|Ib~ z&WilYc*^{J)Cq^#{B_*baUK$4D^-g5^k;Z(Yfzg0`5X+}Oq$u^BNLT2k|;uBSOq^DHxC zG|TLm*!UNg88N1WIZ3C&6D_l1VlwRUX0>GIsf?7QRP%%9YXg%~`8yo%`B=Xl6!)9G zTFvf_d#6-cVOVG=tlm*CtKX|f)Sc>=YN#Q^FvBq3FwF3wp|hcdYmoWiAlIX(x%}6Q zBgB6>^F_q`7ZLJ5L(9M5DI>%EZ`3l>H&i#2F%(i=YMPp;8r474duo{an|fEht=>{^ zsyEbM)$8gt^{RSB{YCv*{Ykx~UQ{orKdR@|bLv_32lb44T0NznR8OeismIl0>bL4q z^{{$KJ*XZ~_pAHVz3Luyx4KK+p>9{dQMajIt6!;G)h+5~b(5-BH>w-d_3Aoxt-3~C zt*%nPP*N0hy`kA^!U92uLEHKPB%rne21RLfUJ~hlX%reY0OgBt3d}5et z_}DPTFxfE4Fwro=waw?=w|3@2rzUpbTV`_bTG6xv@^6dv@x_cv@*0bG&eLeG&M9ad|*%v zjSY+2^$7@1rW@m3H`F4g8N~hd!Lg*DGVDNo_q zli!rwo8MIaK%C(3ny+5t@=uaq74n+)uj}VmVp7bB^6H+#v*$9WlY1`98}uA=$bGQ5 zJ@$xWJcZcfxeHI>+2cNjmqfu`Q^_abF2%{IJZE=T@-+FoJ@4WGc?!OL?(`P>NS+-j zd*u$93VB)D$dOEiykcL-kxb(5J=gIRo;~7pa*t?6&Wo5zPvP0)K8DpJio9HJc?*xW z{ws@jM2ver!@WaRVwV=?-a!__^!E8XWVN}7X~O{TpZa+7kBNIK{sC-HH9PsY{L=g? zzv`J^JX7#!_=lKh`-j~24+#(P4`I(f|B&a?{X;B2;f8-m3^`#EC)wd2Vw&L}VoYG)SpN`P zcmI%-SN=ZMQvN=vlQ7EPCnXlQsjuNGa!?!Mm48J2+eM(o61ti>Aap}%>Ug2@<)kMJpGV=jhc7=rzMqNe)$L@vZM-n$6A7F7|& zG1%XSLn6yiHstnbIf1E5Fwl|>KeLb56K5fc{e#ex`li2+d91%r{2cW4_let$?@ zoY(r1%d(GYj^}*IoGZzSCzuJQFL?rJCHYUr$FYI>OMjp6Pw<|<&$G8safxvgGzPc% z%#K9rHvT@bS5epBCx-LKY{opst3Y3|CmC}eG54tTJbun?$wCUahGii80?-!o86UwK zYNq6Q6@MSYIj~P%0H)PIKL#hSF?9wWn_&fYLEdu_XYm70;}p(=_ggODdz`_KxQ@$U zUM=5&`?g%cFSrJJwwwU>6~lRB#62*Mp^q4rKn&-M;aV}AH-`7e@ctOio4{NqjKOFG zVgz_T2|*Z-Q5cDFd@Q~O^JL{YSlgiv^!G9H?2Wg<$H2%lGt!sw9>Nd{?$gM98XwSeEzWfd%#(2#m`9B{(U_+g z)=hLrG-Ry#``B9f`=m1;>C8hK&pquabtdS?)`;8>9G{-cv-=A#k&Gm8Oo|yPu)qq= zk&=K^u90#!q+oatLhJz%hD`E`sMaf_pd@0XM)v_Jn|f8|M&rixvN~l^%TvTm%`e91zto3A&3_W! zHrnKsQ#kP>8T~{|$dz?Z8H==)ugd5rVnVL0d&Rq$rBMMjPzR0B9PQ8*eJ~g!F&0xW6LYZ`%drOQu^HR37e{as=Wq$v za0d_YC!Rw?B2r<418-4?56b%}k81EoV>ClsbU{z_$43~2AWXt^%)vr@j@8(JudoXT zaU9>{BCg^#9^fgW5RVk3!vQZ}<_e`y5j9W;jnM+_(G`6#2qQ2SA7eH`@Hy6C6SiYN zj^TS;#8uqJ13X0(;*o-MIN()~&j^a6G%BMO8lV|kqZ4|dKZYR)Q}8JkV+Gb?6TZPd ze2X)1IzFcH%+7fTR|4cLmE z*pH()h4Z+K8@Pu*@EjTvU_}O8@F`3mD2pnng$8JbcIb-U7=WP|jft3wnFz)rEXNvr ziEpqEM{yEA-~z7T7VhIQo*@D;NW@EIz=;Cy@jsM771Tm~C}@s$2tW^fh=CZ2F_?mx zn1`kK0voUy+p!NvaSG@06RzVf9^omTBN~ZF!E0o~1uuRH6+s2mfDQ_pqYb*E7Y1M$ zf-nU$F%L_y5*zUi_TxCt;R^2J2~@l_LE!cs*ID`{8hby>?hj@l)B;Y0N$VDN30hd4p)I@zWLwoeVK#agRe1c#s!58=v zJ8%HUaTb?x3%?^ACd4BNukZ#1inAW@KFXjn{7?@cpcOiz7Y1WAreG%KVHwt9Gj`wr zj^hVh!ZqB%1N?~y#2^{zaKZb1o;ymS9IB!g>fr;lLIC<=2u5N&reYT6VlkFu74+DK zJvfA8ID_-Jj9d5};V>c&NwC5O2gDbl!YF~VsDxT*faYj}PUwR{2*dXGNtGJCv2!{~~u)+oh-lAYB+CnwdLVYM`hBgR5Z}i6y4993pz!c0t zFcxANR$~J;V;gqi01n|8PU0*s;VN$89-cr&G+w}pG-SeoJcuu|-YAH|D1s6wi^`~h z+Ng)dXoU_4Kri&e5RAe^e2nS%6btYfR$?vm*oJ*LhLbpppKu*_@eqGNMHFK20v4p= zFQg#@Z{R>Kyvoo&ilQXSqbh1ZhXzp40`1TRJ<%6~Fbshhi%IwdGZBo1ScVl?g>}$l zGrqzO?7?9i!)ctwCH#WxxP>r0#4|)97KyMT9d=|R2XEn1mY+R%AEi+qRZ$Z<)W-*C zfp+MG9{3OgF%%;)4ioV)W?&8$V>wn~9lpd?Y{zcw#}OREX`I6)T)_?8#RL2S1ELX! zL|BoIEabqe9QT2eD2vMQL;hBex*=MiBYNZCZT;9k5JNEr6EF?I5Zhu;UP)e$t=Nl0 zIEGU=i;MULzv2$=<1wBg0w%;G308VEX>71EX7K!!A5MsH`t8>IEs__0T*x?*Kr&7@CYhQNWe?j;Xp3DDlq>jgKF@D zKkDNHv_d;{MmO|EKMck&jKVlf#x%^vJS@U8gkml9*oy7ggM&DV@9;g&<0o9hT|B@O z7+^#!lJFYY@TtgmM3h2#R6#A&MPoEWYji*WdZI5r!bpt8L`=m@1S15WVFgxWJvQTO z?8H7C#xb12SzN>~xQ^Qh!$bTD1B{46BCL1~JF<}juS$G(K{1pfrj1VlvO0303Y{53{#UUKSDV)boxQ1H@!$bTD1B@`kg1=xx z7INTKnV+$EALURL{!q{o9nb><@DTzLgo&7nnFvM*Rzi=h*p7WTiqp7&%eao)xQB=M z1L255EM6cLui=1C6+V+FiHfL+dT4^y=!9Mvgg}hPCzyjpSb=ref*sh8qd1B4_ysp{ z4}T&Gu}H*U$V4s*@&`i2P#Tp{3k}c=ZP5k2F$jSek13drU@Sr?^w@%(IEdr;9+z+( zckvM6h=v&{NQVP?C|HfJuqcZv@IzgEfY#`M0QA9NjKl;?LogO$Io4t`cHjVx;S7Gn zW!%E=c#25GA_;%N4i~)nL$abMgDR+vhG>qC=!F3ohB26g=?KOmEXNvriEY?}!#IJn z_zBl>7Z33aQHVn_ULgb7$c1+e)-#HuG%BDf{7@H-(F&c>8-pI13;S^d-{B0-<0o9j zP5g%6@dv^Y2@Pf><0aDZ1}+rvV_idR#r=48_~%y6v#%1lI%=aHK0qt9M;G+KhZu;V z7>V(if|;0yMOcniSdUHk2D@Za$fL`d2q4>|X(Ht`llQ0!C@G0hDAwI)$e1Ub)V++2)F6_r)9K%WcfFJQQ zuHpvn;2!?n_K^M0U_?BU@ZZ_29RCV7WWfcoy(Jf{&CghrKzY7WnxF+bpeuS~ z5QbtTCSw|AAs7p=2x9w;9Evs2V+(d*ACBTA&f)@o#&z7nZ+L*mcnSlepdlWKNWou7 zM`N#7}GElpJFaTuoz3R5^JEx zW^Bg+9K{Ko#YOyr>$rvA@BokT6b3{=Lp+jTg$>!rgRejLh0>^u8t_L$G(~H)M`v`y zhZu@LjKO$(jMrxQtu)4UeHB8VPufEV$rXhtD1=!XJ&% z5*^V4eK8cHF%DBP19PzipJNp^;wx;&ejLULoWVt0#!cMEABaFKlJF8~$iiC`tjo_f zltpFKMng118+1TtbVDBu#xRV=1bl)|F&B&RIo4n!He)YN;0Ij772L#ccnAYbNW^Po z!il%=smJe46h~=PL`~E~bF@JKKEz;*KoBNj8a~AWe1?@+i%s|jdvO>i@gpwd2EyKEeo$#yCvERLsPu zn1{t!hLu>2_4pEBV;2tK2#(`4&f)?t;~H+_9-iPCo+BEuc!4BX@e1j90~g-HrvaZU zltdZiZ{?}0q893*89L!ZjK);V#S*N99(!;Mr*RS2a39ZLL=yf&CcGN*?D0OzqdMxK z5n7=mdSNieVkVYg6*glxj^hGu;W46+gbchz@kX2*)lnPu&=}3o8XXXTp6H7~7=}?8 zhsl_R*_ek#ScXung&te69eZ#P-{K^Gzy(~!b=*Q29^y|JU_=beNJ1)J!G_?Q?x`o{JX6a`@5kx z`eO)2U<@YUW6Z!DEWi>h$11GHCVY*Z*oVV7j?*}YOSpm?xQ8cD5rueI@Cuo5LHv#U z!YF}qsEiu$M+1C-mdM}QQFlR4^urJYVk{#k5g6Wurd033k@dY+uGqzzT_TnIp;yawiSzN$nT*qzP z$3y&qa6Cs8Oo)XUiLk(mSFpi>Ja{+f9#Iq}Aht5(3aEk_sEzt)46!vOw?tddxFfj> zx}z8RVgQCQ4$zd5E6`A zJoPN{T!i2=EXO~$RqR{;&i+l*Ut{Mx`^0l^Bm;$qxcS|J;$E)$o{C0MreW-XoC*ug6`;zei($I2*enS$7FnhnV5t55ZglX5`2zOtigKdA-2ur zuRZk+@*W((5gbGQc7pm0&fyY%!LPWDdw7Ir5L+bKgm}+5nQTRxXDp7fzf+6xe|O8` z{WpTLaUPc-w#($JxPd#khu`rS zV*8VQ}HK3oaCB!}>-MltBJgj=Iu2}&7Y-(2 zd5%9xK7(_(fS+*%?{2>`zJ=dB`yY@W;ZLZZefh^nFpl=@i}mCewoOa zVEhKof9%f{>ofLf)NKh(GWQ&tZhvV#x7G^o&!;FOdd2vf#p7__X8qK8m3v%Az8w zq9$~xhel|E7HESG=mN2IBlpCI7=R%dhCqzQI81`rrjlpiQ_MpM-rW{6UWQPt!A5Mx zHtd4f4v>%FJJ0wG`5Z3cif5nu$p09B<@MX1WA2k5{ZEenlh+I|BKDo*5~)-060c!H zCbHo|9=zKB$7}y{k1xlRMs+kmD|E#Gj6(i4mU^OR{4seNW?>HIVOmj!5P^^+ZPkLP&*Mb9}dlds|i zZX*m2@EA`aHUl{lCeJvI`~u0a;uUOo11Iv}-H~U6q9}nfsDLV{f!e5xhWG%@(Hia0 z2?6MVKIo4@_z1%>3S%)5A7eUZV=fk85%RaC)GM$W>#+%6VF&g?Y=_CmaLO}2OTK{1 zxQ<)+&$h7t!ZD9H<|&>d`kmwBsS{y=6|ayEJF?(JE(&zwy9B9O!Nt8!b)IvQdXn}UU zWW7_1@w;120N+cx@;OCuh^;KS5~`y%8lWlKKy01K-O}j7W*DhKY@xU#6oO|o@^!C;1J_(e2+zO@ z%cC-?qZaC*0TeVtE97tOsJoyi`oFV3|MmZ;^H6#S#3ancN^Hb-9KrXvfUEco4-t+C zXm|lDGLeg--T8A1RDvHGqXjykJNjWL#$YmLV=fk85kAA`Scz3wiw*b^Tk#EcVIL0R zTb#fdoWmtt#cv3Qh8IXdIvnuo!OuICM0r#~HTc0F_0bqjA-0y}w&;ie^gti<$6yS@ zNCaU#CSfXO;8V;+2$tY;gklXgU=zN=H`s~2IEbS-j*~cpbGU?G@Xzf!`)(r)5Ag?7 zL?IRlNX08;APYGt)RVQ0GN=q48bCoav_U8IL_ZA07)-`&gkS|$V||o8g@8Qpcg%&7)qleszZkcXo6PgfB^JFKMX-2f-n(NF$)W@ z6k_{=ya79~AK&5(F5(JqA`E}RfM_J*HN@s1`}C$aRD=!<&<4HG4}&oh6EF?`J8r@B zH6M$x6f3X_>;4b+?lMS^D@_-zEV*sBn3*iHSQaz0WHB={Gc#Gt%*>1ylf}#`F++(N zOJ^y@j`8i7J~JKX&WRgw=ZRQ)cT#;{?#$e|tNgg^bmH(MNk~o_(vyYU6r>m>DN9AF zQj>Z#rX}s@Om}+GmjV3BP)0DCaZF@7vzgCgmb04m{KhtRvya1^;2f8@!95=HlJ^8F z>U}~uq7k2DWFQwsC`U~i)0XZGWE4}F#|k#EjXfOVIA^)U4es%nm%Jm0Z;R<$!V`r! zBqBL!$x3btQk*hWp$^SxM>qN~kfDrXJX4s-JQlNpb!=uQ`#HiX&U2X?+$E4_yygR6 z__nw)o3KP8I&nzAPoyL*naEBa3Q~+xl&1hYtIjaCOnaePHf_nh@_(*#wpGbz*TN?mxnyz1#kF35W!13e?k(Lh(skOaY;ZDl9QTr zWFi~6$VVZHQIfJ$q$)M2Lj#)7f;M!Z3q9z=00uLh(Try@)0xeD7PFkytmikjvXi|W z;0Px;!v!vLo!i{!5zlzVJ3jJ-5M{hC2}L*}5sjF{B>_oDPHNJTiEQK|AB8AJNy<`@ zs??+|4QWbC+R~A)>8kdmF9ZKr_jUac?GcP&0#lg59KL43A9abkf;DXTW8K&7o3*#I zn|&PO7^gT#09U!mT^{m;7rfyEK?E=B{vae_iAWS;5QiU0OfpiDmW*U2CwVDIQA$vT z3RK~1YN&N+K$Ab#eO=!|yEX0UOm}+IpI;fqD8?~~Y0P3Ci&(~LHn4?V?B@t4IZpsr zxyfA~@`M+>;cGsqK?E(*#wpGbz*TN?mxnyz1#kF3 z5Wy?x3qlf>h(skOaY;ZDl9QTrWFi~6$VVZHQIfJ$pb9mpLj#)7f;M!Z3xB4E_CSU) zn(<6xIeqsAyaz6yb&GRHQ1kXhbVI(v98> zW)u^d#vB%~gcYn|1Dn~-ZuW7A6PzW0E8O4?4|&2%-tviHRs5ZSzY~^-L?agQNkVec zkbx}ZAP)s7OmWIkk!sYU9*t;DYdX+{p7db=gBigXCNh;-EMN&MSi=T3vz^`S;}FL< z#RV>Lja%I35zl$e2Z9Ju)w51$!V`rU#3d0)Nl7}gkc$Eo;TK9%p2}3GE)8i)OWM(i z?(}8=gBigXCNh;-%wsVtS<7#1V;8@3kfWUBJONzgCie*B8LxQHXM$Jr921IgL?$|M zNJtWrlbZBoAqROVKoNeSG!>~r4eHR4rnI6Ro#{zm1~HV8jAbHInaNxhvz*neXEWQ` z!+wr%g0o!YDmS@DAkTQoTR!rI5Y=5vLJ^Kg#2_~DNklSIk&aAcCpQHsLJ7)Hk*d_9 z0ZnK{JG#(|0Ssj{6PeCj7P6F;tYsrx*ufqSaD>oYr)t8+{nSP)0G1NlarF^H|I>R9~=O9Np$yqLPg&W-A0grjX8$J-Mrm>Wege5Z3iA{VGk(5-VB_mnMNnQ$4loFJo z0@bKPBU;do&h(@|Lm0srCNPB=%wYjbSiu@Lu$k@b;Q&WD$yqLPg&W-A0grjkYd-Q# zE%zy5h(rwHk(d;uAw8MNPHys3m=ctu3bklJGuqIJ9`t1p!x+s(rZbnttYke~*vUSQ zaEkL>;T8{g!b{%qnc%g3cR~|^sKg>ZiAhFk(vyXp|!5>Il);1xW;WB@PwDV z<1@kQx;BI+0#S)Yd=itKG-MzvxyVluN>G+cRHqINX+~>0(3Rc{UB~??GM33qXEuvj&U&`6i~StsJXg5E zLmu;zw|pje1Lr|_q7s`#BqufL$U!~|QJRWWr6vt%P8&MXi+&7ZC}Wwz4Cb(aC9Gf# z8`#WtcC(MeoZu`Mxx)WRZaDr94|vRT-tduN4b6-BJ7I`ORK6yr8jnOIB_(Oe#J`g4 z_Rmdz3R9fYRG=!gs7E83)0*~lrU!i)$Ph*{j>*jAzmj?OTf{O}v5w!^&K?eMgcF?Q zB3HP^Q^OWyIX=CfnIX{4X|J7I`OG-C53iAhFk((yH!)a>N>W4VA@^pEzx?eSmx zx1?jrP=PAcpbiaaLJQi^fiCo*4+9v?a7HtZNlarF^H{_(RASI|k4I0pbf0homb*39V>Bm5ZGKMM4WC4p=#YVRCHM`Y)9OMYcImKBnaEYt@ zv)r)lHureQW1jJfcYNXtA)0#E6Oyn*BnmNzO?(oOl$88TdNPrXT;!!7MJYiUDo}+Q z)S)pgXiF!$)0bZv!8j%}lld%R6&u*fZVqsi(_G*xw|U4j-tduN&D_(3CIZojO#*%* zCF#gQE(%bL(p026b!kjX+S7%e^kXppSw`At60=#%YPPV4Bb+9H8$94S@A;;=@rnq< z;75}3Gg-((5lT~)`n04oeHq3CX0e2IZ07){xXf)H@rEG&qx{f9{}GeQw_O=(GcI@6QB{K_y!F^)-0V-^co#u_%UjXfOXIA^)U z4es-Vm%QT>U;oDw-|_>Y2~T8V5}zcbARU>>K|Tsok_!A+Q{BFGX-G3#(}Aw^qCbNf z!B{3SojELIDJxmWZ)|5b`#8jL&Tx^d+~lvhYdMf-yyhd{wDPPIhKNKX4hi|kB)2XN z8Ocsw3Q?TWRG=EQX}~|G=|8M%Ww||F=t*A&GK3L~VFFW_!5kK{oVEPMcJ^?P)aub=e*$)!CSl5gdrl)h(kh>lA82nB^L$wGsUz^Q<3V_B-7JOK#f=QjAiRrwTQx zM`K#hmcOR6<(~BCS4J?7Da>L4%UHuEwzHQ*oZuXnxyfA~@q%{*@ohWjM0lbSn*<~! zH5tf89tu#Dl9Zzo)u~Mbn$n7PbfyP=8N@I~F^IRN>QGFmMXT@q#liFL0dY}n?Vd?G!vN0EdD3|@ASZYeYup?tmikjv5Wm2<|Jpi z#0?(sl(&533n4n04-%S)L?t%yNkno|lYuPcq7WsiNOfw{kfyYz9UbXTZw4}$VT@!f z6PeCj7O2%BMlkJ&OauvbpHTKHK#OWft>U!fH0MjXfOXI2X9VJs$I#&wSU#e-|Pe z@kmNq{+g_obCQ>W6rngJDN6+^Q=MAWqY=$$MLRmtjb8L)AcGmsXvQ;%smx#w3s}r@ zR|iekImT%&aD^M(A&?im;R8W@)73kV?+Hm5!V`(8#2_~DNkmdok(P{PCpQHt zPH8GpjXE@-8LjC=Px>*0k&I&!Gnm67R|`H@IKf#0xWQcldB$tr^O@k?oDX4% zObp_an3SX?8+j;1G5)iZv`-~!(tzf)q8**+Mlbp?h@p&REEAc^Oy)43#Vltv>-mjs z>|`$oIKl}|bB+M6aDzMC=Mm3%$vZw1yt{jtkc1-=(TUBEBqkZDNl#{Ske5OfQTiC-PPH>*9 z+$NA0yyG(=dVAjzi5SEqF)2t-W^$6BqLiWn)u=^%n$VgKbfFjh8O(6TFp;UuWFAXd z$vS>x8@t)ZVUBZ_0B&%XK%Vl7_XO+X_gX>`p2)-?4hcxc&txPUxhOy}N>QFF)S^C3 zX+;OR(T86d$poe|kEN_)6T3LXX)bezCww48U-K}c5St%K%FkpWH-#ucd8*TZmUN;w zgBinA=CPa&?BD<=3E(DyydjA1`oG05i=dRP)oDNrI?#gwjAAMaSj{#La*~VO-~liA$hU*t z=R_e6iAhC9a#Dy=RG}VCX+szKFqqLyVkQe&$wqdtpW~e88uxh0TfXr95PeKE;*pfJ zWFsHNDNhX=(wZ*xW&pz&%T(sFjP>l`AZNJ7eV+4?zYR4nCK^AIf=uM480DxzBU;jd z9t>b8qnW~7ma~!F9OWF>c)&|O@wZ|6m?*?1At^{t4hm9=D%7VHo$13+#xsM3tY!=Q zI7tAvc+6XZ_}g%wM-<}n6KTm#A<9sddbFSuy%@wuCNhh~tYRbE`JE%2<`TCE zGE|`s&FMs6hBJw|EM+a*Imj8V@sQVi=5M3CtBFMt(vpM1l%f)KX+dZHOh4_RjAaIk zS;wE*p}n8u1aOCEeB`^)|F&0zKWdCWYN9`C8Z{gFC`JWp(~OSvVHo3>#zNMxjRTzK zDtCFp8-n<5jAw(W#3c!-$wV#+@n=eESD`*_>CFhHv4lpmd?smMYh z%2Sut^kf(lnZqi!bA$ly^M-H6nXeF&q-3H1WvNXwI?|sp%wh#wIm9UfxWi+<=H1si z-Z)GoVv&#(q$d+u$w6)kQku$qO+B?49qGwHMlgXH%wq|w*u+i_^JmU!U*!SMdCxZ! z{%z~u)o?^1770l~Ch}60GE|{H&1p|}`ZJ6%OybW>)n34gKi2)G?&1h%xXf)H@rt*6 z%?CAz;1gX_LK2pUL?tG1Nk9@(l8!87Cl`4rKoNeSG-atsRch0a7PO}eJ?YO7hB1=S zjAt^_nZ-O7v5Zx$V>8>?%>j;bhI3rx3OBgRBcAYBvkD@=}Oml%xz5s6uTT(1aGWr6XPGMSp%}7^4`&M5Zx|c`RZXU$aVG$0oM3mqVQ3 zJXg8JeID^=UTDAO9Ulqeo5|(~{6J_T5S3UYAPLDxNgC3Tkt}2<7kMd2QA$#duc@ro zq&`h)LuYz1kYS8rGP797U$esUYSyult?XbozjJ`Y9OD#cxxgi^a)Y}(;1N%G!D~M7 znP5|l|NM6(q@Np($iyNcNl8UoGLntF6yX=jP?2iXrV-6)Lq~cskl~DG0@IkyB384R z?d<0NB>NnHh*O*+fNR|19)UdOIj?z75W%M!F9=Hnq7a=}{77PwlA3g6A{#l$O96^d zj1rWlJQb-*4QkVXrnI3wo#;ky`Z18f3}+1EnZy*PGmE(_WEm@2%SN`agS{N$IA;jp z8n?O6BcAh`_k1FV5Yvn!geMwtNlZ%8la0I-r8JePMMGNBk#6*607DqbI3_cLxh!G@ z>)6ar_H&$bT;?YCdBQ6`5Nx_@L}(%rlOIXS&txSpzfhj)G@v;h=*d7v^3O8Sw#iIm z2D6#RLYA?b4Qyctd)UumPH>J(+~6*OJmU=?`DTXknoxuzGBJotLXz?`S;#{XN>PcL zG@vD2>CHe!FoBsYVilX%#UYM!p3B_e9*=mzdxFh0o)C)gL?Rk7iAw^Kkdky{As6{5 zL@`QIo~qQO9*t;D8#>a39`vR^LmA5q7PEqlY-c|wI70w8xl16=c*7@x&vMTah6qF@ z2C;}oLQ;^1w4^69xhX&~%2SQn)Tc4cX+>K)(1jlKVE}^}#wf-yk;zPB26I@zB37`P z4QysRJK4=%_H&ryoaQ{2xWPRh5XfVm@`6{q;{!o_GuwSdD8dnuD8wKh2}wm}vXhs> z6r&_%s7O_6Q=is!raQeE$Pk7zk}*tR3bUEdVwSUt^=xJbdpXE4&T*BS+~q!xdCqG- z^S3$9g$TqXAxTL^MskvyycD81WvE0A>d}a1w51EZ7{Ev-Gn>UMWhHCb#5VSFm}8ve z4Ce{p8n?L5W1jJnH@xQ)!R8uI`HsI6ny`c?B9VzrB9fDu4CJB!#VAc>YSWBXw4(#v z=s_>~(2v0kV+@m+#w_Nskfp3-HJjPP0giH-i(KO-ceqa=k9omcJ`sGLxfkJyPFxa^ zoS(@`K8jPG8Z@L8o$136#xR3LY-BS#_?^R?;yO=x%}0XI_t}IeDhWwTCUTIULKLMq zB`HHWDo};$)S@m8Xi6*E(}kY&p&tVn#85^umdVUu7IRq0GFG#JE$n1BdpXKUE^?FG zJm3j$_`oNEEpUE(M@YgFo`^&y7KunjCUR4RGE}7=&1gq=1~7t&%w!>}_>J8h;Vjp< z&kH{Cw}r+KqLY9WWF!|wC_`21(VPzS;#Wp9g?TJz13NgtDK2w|C%hquzb!I;6O|uH zPI_{XpJJ4uD)nei2fEXTA&g`UQ<%;i7P5rptY;J3*vWp5aE9{)aD|)P;~|fE%{#vE z-D1~;utXv{aY;xr(vX2{3q`6xgU{?(LnOgXAjhsLy`9i8Y#FZwftk&I_5 zvsuVWHn5Go9OeY)xW+9W@`M+>BZzO8xjzU?M4}L#*d*ltMw0uSRHP*%*~v>`N>P!j z)aAb;jr`oEw4gQZ=tvj3(~G_gWC$Y|!vv-H9^)TIfn=|oTZF_@8zX9}}ez%o{| zk!|c|KSw#m1+H?72R!8!9|*R>^FnAM5{)<{BpIp6KsNGFkm8h~BGsrvLz>f;PV}H3 zzcPYxOkoxaSjuWPvW?vw;23AP$TjZpkf*%n1Ho4M&V(WY(TGg~l9HMXWFr^(DMAU# zQixX*Jw@Xac7G$Ih4c>F{f zGLe&ll%PD-s7Eu}(uF<@VJuUb$8y%Og*_bMELXV8Q{M2I?^b)~5{-ByB`sOVO%cja zg*r5)9bM_e5XLfA|+R>GM z3}p;cnadK^vW49o<}?A^B9Iq+B*a={CXt9uVp5ZXVw9mG)u>Gan$n8)bfFJ}8O>y7 zFrQ_tWfMEu&v8x@z;*5s$aCKEnQzt^%lU!OL?Q<9NK6W{lAkivq5-YwL2vpogfUEH z8uM7iR`zm$BOK=x=Lp~m*SW((p7Dl{1Y7T3Av6()N-W}&gp{Nu6FJC7VSb?$WvNCD zYEhSlG^ZtP=u9sLF_OtFWErbj&t`UWh|^r=4o`T=JA(LjgX>FpA`ydlBqKf9$)<(PIHzET;dAXxWOGB5XfVm@shWECd5W_ zQ$iD-D8wW-Nk~aLvXF}c6r&VnsX%3_Qk~k=rwJ`-M@PESi@pqGD5Dt96lOAy#jId0 zo7l!~4seV!oZ}*wxXN{Ia+|x{=OK@H!ZTj*iZ{ID1D^;Y*d~2INWu}B7{nzZNl8UI zGLwV66rwn#sX$d~QJ=;%r!^hvP9Fv`lu?Xl3UgS(8aA_=L!2Uj>)hcXPkF%`J`hCk z-#jmbBm&WiPf}8mj;!RNFeNENd8$y2TGXc@jcH1A+R&bkbfYhW8OA8aGle-UVg;Mo z#Q~0TiVIxgDz~`90|I%>Q=apZ*L>g;K?K|E9QlqP2t|0J5R-T$CIzYZnat#(Aiq$W z@>HZU)u~G(n$Uud^kg8z7{f%SGl%)CWdmE-$v#eSiVIxjCJ%VbQ=aphj|AJ|JotgI zgeNM|iAg+uBr(ZJNm??Ijl6tKakUKPsY(s%(uiiXpcU=tL^pcTpMeZz1fv~M%2S1!)Tar}X-#{&(VxMLVJfp($TC*5fi3J}KgT)G6>f2#$GqYr z-|X^z`JPaOBNEYxOCnN`j?82yH~A?{aY|8+N>rm3^=L#hTG5V9bfXvj7{pLUGM0%< zWhQf3$Wm6amW^y-2YcAhVUBZ}^IYN@x41_jPkG5(KJtYSyPY$k2uCEM5sP>vaehO2ZQk0_- z)u=^18qthaw4)Q<=tVyUF_e*vWg=6V$y^q)l$ESyBU{+P9`$EJ(d}a1w4xoI=teL4 zF^HjzWGoYz%1q|6kfp3-EgRXw4)(C0!yM-{=efi+ZgG!5p7N5neB=uues}(aA{>#3 zMl9lyke^6F8q$-QTomFL%2I{eG^9Cg=}Zs$GKgV}VG^@g$a2=Qg}of+EZ4ckT^{m; z*L>ppea2H_lY~@cAUpXeL1pUElFsyH1XGyLDz0a|Jzx0t zsIh=>L?Jq{Nl0>1l9~);BM(I>OBHI)FL2PH>*f+~6*O zJmUrL33kjFKv<#>hlC_0H5tf8UJ6r+O4OneEoo0z`Z0)6OlA&CSiw5Bu$z4x;WQVx z!Y%Iem{)ux*m2jLFhn69$@rPfWG6SpDMKZyQ-{X1q66LN&oIU@l{qYCB^%hv9u9Gm z3tZ(Ek9fmpzB}RBBLY#0PZCm+j%?(n5GANgEgI5-_H?5!gBj0kma&n&oa7vrxXoi; z@sV#&>JOq2hs2~JGkGaR4I0pbE(~Be{LUecbDk^QB9NB^JLNNpKonw= zkmRHz8~OQ#vQ(xP4QWApdN7c|3}ZACn8q9yvx?2^Y+(m`ILJw^a)(E}m>C`)B(QlF-@qzxVDLN5j|l+lc5GP7973f8lgJsjmcSGmJuUh|$H zLY(z3BODQlLUdvgk3=LRHR;Jh4)RcdBK$&W%2Sn^)Tarp=}a#MF@g!qWC5$#!Y&SR zf{WbbK2LbT8@}+vIp3A2#N)3?YB?2Y$w)SGQ-EJ6PbK~*|I-8iU+jTu?#xWY~D@rdWV;UmG$d(RSz@I)mZiAYI$ za*&ro6sHVdQ(3J+T^iAxHgu#Ly&1p|Mlp`b%wR5ySk4+YvXx!z<1i;UO90on%>$nB zl6QP2_yywxVTeR*ek2(`la*ZLrwAqanhI(S8qkss^q?QZ7{@f`v5a+WWfuoH##yd# zn?PRjo-cfN(RU&mKa!L*WFQwsC_z~&QJp$8q#3R0Kv#OvpTUe^ER&ed92T;S)ofr3 zJNcbM9On!dxynuM638=N^MNmX8{i#5SRxUfI3(aFQj(TTWG4@WDMC9mv%UH{1 zcCeR&9OEP4<_gF8InF<N7PO%QUHF6a2bogfK)V7Kunf2C|TYd=#N16{${b>eHB(w5Ky&=}CVEGK3L~VG`4s&3u-y ziuG(}2YWfpDb9158{8$3XT0JaU-<5ZXPodvAsVqr$WNpo4e7~BZt_!<68um8pFL1U zpH!d;i;y#af z&KtfE;--6+P(&muv4~G1l9HPAWFaT{C`2(zQkIHTqc-(vObgo5iEi|wKZ6;`cqTKG z`7CB7>)Ff>_HdA+oa8)LxXC>NdCFTp6XKS!hpr!mcGO?x`io!<24SB5c)aZF+wvzW&sma&R;Y+@@r*~j;3_w{%R`>25sM_GCNp^`Mn&qpIbuUi4)!!x_zZCNrHmEMzGwS;uc|XAk>0 z$Z^gRz%}mjnCHCaJ>T5-y$MSsq7#P%{6tF9l8Nl(p&-R5MR}@Hi+VJnJv|xDM5Z#I zrL1NnTiL;04)8U{)Ki@0BA2<&E$;DQH5RHrueX+$$x(w2^Nr6+wDz^@Er6yuo0G-ff6MJ!_#>)6B=cCd&2 z9OgKuIL{@nbDMhv@|2gnH~ftG~tO%bpA{n?Zl)a1KG(< z8q?r@(+Jmn>C z`N$W72O8V>J7I`G6k-sEA4yCyQjwO7WF-fAC_oW@p)}>FOm*tefW|bZHSOt45Be~G z!3<|Kzh;ExF-%|zGnm5ymau{~Y+y6n+08x< zag0-(BY>;iYNBkI3g2+xFjSgsYpj=a*&ro6sI&5 zs7fvB(}b3^qcc6|%OHj^nhE@?nd+EX%x4KJSj$GXvWtBj<^*TB$W?A}pGQ3774P^& zuxG|~ejqgAiA;226Q9H+Ck+|MN-pwKgc6jc64j|gLz>Zsuj#CIqbGgn&me{{oKcKr zB2$^kTo$sFm8@kWTiC%K_H&ryoaQ{2xW+B+5y(?s@|KT$A;fcY6G9P===?}>(vyRN zl%x_>sYQL7(2{m^rU!i)#85^to+->^9*bDUD%P=yt?Xnk2ROnB&TxUt+~6*OJmWPV z_`{l%^b&s75X7(THZWq8**+Mlbp?h@p&R zEEAc^Oy;tXrL1Hv8`;7R_OPGB9OpFWxx_VYagRWr@{)IaCiqL&j!=Xr3NeXCB9f7s z^kg9i`6)&jDpQMww4goR=*wV6F_sBTW(KpF$3m8{oK>u26IDWR6892KcTb!t(U z1~jG_Eono0I?BT`qH043}rZFTF{zybfgO(63)l; zV<1ELgh)m*hKWpJ8Z(&9T)t!xONn76YgordHnWXg?BfteIn5<*@{ptt9BWdOnOqd2 zBo%m|j87TE1g0>ZSe7&=wBUW((t$2?rxzd7pTP{{Q^qiX zDNJV;bD7T~ma&30tY;J3*vVe@bC4f7!f{SW>R{V(?BP4U=Lde`7(eq17xmX2qcIyRG>1!)Sx!?X-o*Agwc*p zbR(Py`ZAEAL^6tTOd^UIL^F>CEFp$ftYsrx*v@WZi6fo_5;@5k&U2Y-+~OXOct)}$ zNs~NJ3R04W^kgQ0oaCVZMF=E_GE|^4!PKBO^=V89p@h+nPIM!j2>LRRp+qu@u}owt zpD~-y`I5yfXC+^=fz5o&F7|PNLmcKPCpgVHE^(Ec+~pxpNt!filE3gGuaKH_WFi|m zc!T^DrWhr8i}F;WD%E+9dNiULEosdMbfhai_=r9XUbmCu;X=X}Xxma~$t z*}!JLWf%K6z#$HEloOoh9GAGtP44oLrzB0L|Gda6q$VAi$VLv{AU}mEMoHeHJe85>Mjc7(oTJr%N=}Heiq7VHU%rHJ>3=^2bbY?M^`7B}?D_FyNHnEMJ>}5X(`H>?W z=M-nT$Q5pIhX*_%N%Evgp5p~xCKYMPNLF4aH~A<;QA$vna#Z9Us!@x&G^8mlc%Qa( zpbOpU#mDq#FvIwiF-%|z)0xFw=Cg=ptY8i6*~B(>vX}iFon$)2IO=wOl+R&cPd`M4v(~m)X!U#q) zp2;#FQF z16jyUF7i^4Hz`gj%JMcgp#e>3PAl5bp3ZzoPkPgjL43jpMl+ttOk*Z<_=1Hj zB zvb;?d-lZmWXh0L1(~35uYT;eJ> zxywVIlJo`r=S5y2HR;GiHgfO=`6)~>O7a%vsYF$(^B(nRL^E2_nh)qmS9J@|+|3}6Vu8Oc~CGKJ~PVlMMp z#4=W}hV^V>8#~#{eh%^@M>x(Y&T^3}+~5umctVmC?g6~O%cLSL8Oh4)G||ROB71QH#1Xq$w?U zpSE)Z1&T)yW+~h6~ zc}mh(UH5sBmq|rhGLn_o$xS{AQIrytrW_S{hicTKE)8i)3*M(K9q2-Ldhs#+8O$&~ zWegLT!gOXahc8&j5@J}zS~jqmZ`s8@4seLW9OVS3Imacga+5ne;0eExJeB7^UgA|= zBLkVqMh@N}KZSUc;*_E+Z&QVLsYx9g(1hl+q7Cio%!l-(H~kpICyZb;~#>B&q0Imtr-iV#Q; zWvD=9f~i4m>eHBJw4^m3(2=h6;3N7lfFTTLBx9M#R6b)CbD7T~ma&30tY;J3*vVe@ zbC4f7!f{SBvb;?d-lZmWXh0L1 z(~35lIHod-FId6~ z*0Pnod`|+Wxx!8E@s#J%I@Y8i6R(q(B9x#E6$$1&8q$oGw52oQL@ zna?7Y62ofNvzhJeVLyjR;25X4#4Yaggrw;lBVHmE>BvlWa+9BbE=8;_K`F{mo=Q}u zI`2`JhBTo$p@h+nPIM!j2>LRBAq;0EW0}ZQK4UhY^CgQ}&Pu*!J)79ZPWG~&gZ#)5 zj&q8$T;vKjxWfaUkR-k1$qT$pD$f-orayxi%5eUrjI_-pW-_1UtYs^EImA&;agpoXCus)PXVQ|5yu3*e6{yO4)Taq8 z_<+vz;A4g`l8JoATow|;*KA}fJK0AZKX8N-oZ~9DdB`)8XEg4-LK-rVl^o=!7(tY! zDs^Z~OWN@v{TRVmCNq;SSk5}Ou!~r}=NK2b&V7<*a!!zeToj@t<)}gp>JdU4I?$C~ z^kXO^nabxZU@0s3nvHB_C;K=+JU?-q)12oDH@U}Cp37{%NJA!aQjlVlqC8coK|Pw% zigt9O2NCpRD8FaCavF13@JHLfH0S}x<4i9-o@@(cIFOiCLWFmlE)66hV)>o~j&quSDHm+>E7!TjJs$FuBmu4&yud4@COw(RMhMz*n={ls&Glbq#OZt;-c zc>Z;BgS2EJC;2EsNy<{0>eQhTEoeh0y3?D13}ZACna&)(WGSmy&sKKxJqeuPH0Sx1 z8{Fj~Pf3=;KJpT&NJl2Jk&`?WeGZ4w5A=M38y!| zXP|Nj!}*lajAJ5Gn8pld^Y@vnZQ(y?|NHI!qnDT2hp$-0*Q{p~TiMQTVu>T31QI#P z8P0Q=Yuw@ks6{;*6GAK6(1EUm z6G2}F@vq4++l^!#llhEjzF-l{S;bm5vX!0unOOBW4)G&Dk;n;7@eAkqGndq_ahr#~ zx4&VGc$qY0B!Ju$peR9CEOl1ah`1>r>ww%>$U@N=$ zjzj#!34Y-c*SX7MlIHO|#4Ef;CbE;8{Jcp?%2J7Ud5;D(qZJ>}nI80J0G}|D@l0hV zpRw|K~J{3X9< zGE$R)Y~&(8g(=RTc}u+ll?kQ>wW&{ILI~x*YQprb9i8Y#I1%(^AVY~{6yumg6f=ls z9t&7P469hnM*coqv~6cMvBVKi0*RdD4ClGbHEwZ_M?5200rz`Skdic{Co=)$Bo75B zLLfnup#qf&rUtdCPh&y|C5(1-q8s5v(3gSyeTHg_WEA6=L=-cKW*!SzLJX@|%SN`a zo!!I|M?486a*{Kg=Q7v0#XTPJjAR9k2PsHN8q$-Q0CJLt0u&*TAj(jI$^=t`+SI2p zA%qe}J37&ga3bi-K!y^@D8?~~C}t4NJQlEo7*?^Cjcj2%yNM-^coInDBxg9!Wv+3H zdpzP9$qMN|DM(2g(vz70a*~Gv6d{lx%20vI1XF|B)Tc2agc3$OI?;`ABIwINh7!pr z#xaQ~W)RIh7O;dERQ-j*nr!gUf5=J{Z(T#8-=*vKc63HmWF^MQ<5Y0Rmu!I;^v6hW& zVLQ8tC60I!NaQ4EIL~FSaf^FA;u*<`=szh)NgC3VnE-NxwL6o5al?kQ>wW&{ILI@>{c66c};Y84vfea;* zQH)~}QOqEkc`RTFF|1-O8`;8kb`wh+@g$JQNzQPd%Ut6Y_jtrJk`>i|Qjn4~q$e{0 z2K`e(j!q5Dk^UAB-;R(r$|Bv<*f0U_}8ULtfSLXerUPM`va#W!P^=L{f+R>G8 z`Y@PC#xRNLL^GcytY9sh*v?+!_>n|Tah@yO;sMWiu7q=fRHP>>Imt&6N>GN11XGLp zG$oX_bfP;E^k*oaGL9+CU@i+-#wymcg`LE5kOYo%hKpR|4v$Du()r8Fq#+{#a zaY|91e~(o0J=Lj0BbxI*AJCZ|^kx9V8O=mK<8v0XlC^xpHg*xu&s^d*&v>zvKT9P$ z`6*5Xs?(5GbfhN(7|U#yvxaZj&OUzN1Q)o?Q~pxgpUIG(0P<0k(p026^=M8TI@6N@ z3}+0JnZf5QW+fZ=mVLyN$Qdqki$^4X%lj{{k%e3oq&Q`%LQNXbg0^%cf`LRbf$7X; z5i8ihc4GOFCGTUGLh-bVIeWBV+(tU z=LF}u&I6K`b)J)!>=d8`Z&Q;-gwmc5`Iw=MVluOs&vMqWmAxF|C}+6B9iH)gIoA|2 z@;dn`Mp>#*lSZ_pEuHDb0ERP;>C9y*tNDiQ#PS1)oaGu1NnYN)o%95dmp3U*MXFJc zW`xm+9(>FoA{j>%(JbIA*0Ghn9OMY6xWr8!lC*+zhSX#t2l**R87fnQ`h*ZhXL`|} zVT@ravsu7$*06~ke8&$Q=PXyb%TxaPw!V{&Y~-d8K~$nT^$DR3o#{n?hBKBZ=CF{j zSjRT@@I6O3&1LTJgy$>zT{7}I1qh@Z@9-WCX-QkU5y4;3YCD#tpk)6C0<1H#vo%%GR4W0Rj0gPZg)0o2|R6U`!4v6G||R3ey~)TIGU_&qI@tq7wXo%oQR^rk;U_>}QXVk*;_Ni_3V!0%b2{EF4A`=jmu zUGc|%Hfj5oy&NE(-}965IHx(!uiW4+kNAz}YB)BeBm=LLkD|OqWopup7PO@cz39V0 zhB1l>L=nvbma&TUY+)y{93+8boZ=jpxy~IP@{H$dIu@iNJz2>~K8jF+GE^j(TGXd0 zp|qtF-HD(-L-~|(OkoCdS->(@v7RmLB$k6DaGWz-;;3Q&|F z%2AnW)TSXJyiYqi)18m#%U~iI!z88?&3u-yg0*aBC;N!w2aa%-8$9Ou_v{-1xq@E^&=JJmfe2QrmnX73s-B4)Ri%;=Dz9Dicgi>d=s8wBiFg)13(V zGn5gGWir#5%@-^phBa(pE4zs0APF4j3>Ue|P44l4rzET6|FPs1(vY64LOY;f!P)lbOzJ=CP1vtmJDpu!SA$&ug!wE9G*F`F+~%nH`A zg zvXB_o@D1D9$3cGLBo|MXTf7G)ob5Vd|l;&-Md5?xPCyb7Cr#A!n zGsDzJGLFeiXEyU#$TC*4mT%a`F8;G5*1jC#2tRY4tK8u+$r^e_AQc%1;0+2BC?m8Oaeu_|>(p2CbYEX}+w4xnd=|x`#6UkVnFq3&K zW(Dim!Y=mn1BsmGB7d9fmhbZ$e{JesLj!Gv22o;q+q|V~JueOZl2@ z>?59IoZ|+M_)9b6LMC#Mm%pdw+Lk6;vgFFa%HIUVhPSHkH{e+Dz0QH*B_)0xHR zEMO@sSi=Uku!FrEAf5z{af)+X<~nzH$nSZkOdjf4nw0#nCauq8B7j`vqcDM#q8yb7 zrY3c1LVF|+k+9t&Be84NgwcU+^rA0=iDV3un9gjzU@j;0ian$7B4XtV#Yt3SK2GnFt^k z`6x^vr6^Bjs!^MUgwUGybfYI9Gk~FtUk|lh_8aA+n9qi=*@%+SbPII1L zxxrl?@f**DnJ1*=H8PTooaCht#R#G-6{$)M>d=s8gwlo%bS0eL^k)c>jAjB;nZX?9 zvzQoGv!2atXAk>1L;}Y+#W^l>ojW|_8OhtY9`g#RNk?X~lbie$p*W=}Pi5Yv7IkSz zQ(EvoZRtQ)!ud13)%!D;VSLIMCNPER%;LZEA2R}TjqQ9Ev5Xb0;m>UNqrOGCojvU5 z5D6UP6z90ib#C*3rzC6Z-HVq~K5%gsc z!x+gpe$Qm(^grr<_Gk9rEYDM4NDN=Ii5WHb|)$_(Z(pT)$mn)PgEJA2sAArd&oDb8`3>)hr6 zPf6a+Jm7EhlI7H-BQx2_O+E@!j3CPLHdUxbE$Y&U5JG7~2f7kYZ~8NYNd8eq{}b*1 zXxsm)Z4-<^6tkGeB4YTOP3&MF-*cGb{K92!aGz)VrM>rA(vXSQ$wOgEP?pM6rw)y2 zNn1M6oe26fl#xszidoEKF<-Hk&FmzWc#iTj=ef!q9`R2lX$R*p|FL!S*lQj z`h*Zl8#>UHaC+09Aq-~}e`W+&ef&rwcs zfot653CX*7XCXBi$xa>$Q-VKJR=pDM@*WKcp*0=p!N&|DlCex-Ci7U#3f8fOUF_!v z5;@I9uJey_Px}*+bv3_9NjkEUn?eLqnzyM+P3qBvP(GjwJ?YC3K4m;n%w|4IS;Ypn zv4=PgbDUqe%uOEf8_#$1oj`N*Eu|fi85X7rp7r0ERG}k&I;mlbObBzF;vi ze9Z>7u$?{ZC!U`;!D-HOnd{u*E)RLeb3OE#SNZ#-)s}(GWaD*mk%#;g;!TQEin6>- z72c&Lb!b3STGE=fw5JnY=}u1~=)=D?{e8y}A{otirZAn^e9i)v@D;0B&nCWQH{WrP z!zA)EXSu{RZu5YrBn$T*$jhWAJz032+~lJ$fs~>wZ&QV8yhnYS(41C$KqtEM5&alU zB%_%~6f>F2mnBAs~Gn$D^V>Vy#Pi3)nF|1}ioB5Vq>?4jJIKm0eaDgk_LL{S^z*J^1hxsffhSjWR6WiEDEZ_43KXHsxoZ~XrxW#>*khHgB z!^@;01KG$)J_=Ku()>#)Z=1>lQ-j*nr!gUf62^bkw9~habfXvj8Nvw0GnJXl;R}|q znvLvWAMqUJ6c@P3eIAqSW9Ja*$Vx8qQjkE(QIU74O(U8UMn}5Sn|=)96GkzPsmx*t zt69f4Y-KmG#1T&-XSmC6yw=COAq&~bMP3T>CP9>;Je8N+){Kn|=)96Gkwa@kB9$Xcn`a zm8@qAJK4+k{J>8f<7a;10#~`qL!OePpZ9fAk(SrVOA$&^j>-g6gWA-m8DVs!2YndC zCyZb;+d?iYh)$|`6xsnK~$nT^$Fzzx)8wtA{k2* zvzbo}U$cqb9N;KtxWogf`G#9zWL!R=Nf!;|-M<()8kT)q#Da!K>wWv!&n$m(cw5KaQ>Bk@<8OJ1|n8jQc zvx*JuU>^rK#8FOhfveo)Ay0X3kaotNpb5=sMH|}Dg>WM1%Md>-ZB9On#|xWPk`40WC2C0-)~S;$T<@=}CA%JMeB)TTa-386i` z>Bk@<8N+0zF_Srb!9rqK#ZLCJpC9;%W1Qw3m$=DY9`cl=pV(*8kcHe7B#`pFLrv<_ zjQ43zH$G+{!x_(X=CFuWY+xIEh$E5HT;w|Uc**(pS6-ljTrX+kJn2&XT@ z7{^p*F^>f-XC0e~C60KGa)Ps5;}-XL#50l&H@|s>v}7SC1t~!Vs#1#vw4^QF_=rJ7 zGL~t4&LU!1%NBMLOC0eWBGm9@+%raK6hK=mtJHF>IM>)Z1E^v)IJm4A0M%aH|B@5ZfLt#o$ zfg04KDXr*4FNQFhNklP&Xy&n$HEbr1pE$u;uJDkjJpZZRCL=j0L`f>}E_G=}7+v^~ zp7f?4gZPAzOkf((%x4KJS;rQ36U!lv@G}><%r$OtkB9t5@{x`!smMS!a#N5%-l8J! zQkzD!pbeeq!N&|@I3t-v6f=ls9*g*jwQOc5-*JeeoZvL)xWsjmjB;%!9ht~R4&ER? zZxTcqD)KJ1X+#U!(1o7#WeA@#h6zM5j|D7YHS73>t?XhS2S^~1lbqoaSGmbu9`cl= zquuLykylAiHgb`d(o~=_)u>HFLU^BcbfO#Kd`y3a63HkgGM&XNXC+^=fz9k=KZi)* z9M^fwZzLb%I>#%dB@1s*j8c>*m>Sfk5v^!P7rN7nehgtaqZ!XMX7f3VS;=~~u#5d9 zaEh~BkQxfkaMok?Y*!3CYI$dr4j;Jz2>~K>~S;io8p08qu8A zw5L108OTVcFoU@);49X$nLQlhI2X80k_nz=NKa1QqzqN5OLN*0PG5#HnkmfY3l{Sg zYuUyg4w1kyPIH0l+$YIIze#!m$itib@1(TPRiOs;|2MuP#AiYYqaB^-MmQ1lWgtU| zWEA6=L=-cKW*!SzLJX@|%SN`ao!!I|M?486a*{Kg=Q7v0#XTPJjAWCX6Qm#|X-H3I z0?0`o3Q&YVf+#};Dicf%YEz%agb+#??dU`|!ik_S0~tyrqZr2|qL@K6^H{(VVpzpm zHnN57>?W2t;z=Nplbqo^m$}9*?(v9cB%7@Nq#z|}NKa-0$VnawP=r8&C_@D*6HEFh7{?@{m_ao2SilluSjAd4vW4yJCYCtjNg$DvoZ&o| zxyCK-@rY+6o1*`uASG!?Pi6whNgfJNgg}BQLj@`mObu#NpT>j`N*L|vL^r~Tpf3X% zN+hEg$0VYdK{WGNz!G9u#acG9h3)JnmN?=`Ad!=t;XIeQ#x3sgh-W05s{f=QC22@c zW&+4b9tu!|K!PYk1u7Fv4Qf-L#)J?`813jpH^PaaF9R7$B%>I|B%+u>H1k-%5@J}z zS~jwU?d&F&IO0hlk&~R^JeRq~E$;D%XC#Z#e^QW=G^8gp0puhP1t>xwL6o5al?kQ> zwW&{ILI@>{c66c};Y84vfea;*QH)~}QOqEkc`RTFF|1-O8`;8kb`wh+@g$JQNzQPd z%Ut6Y_jtrJl1C6ZB$V-iu!AewnBUI|B%+u>H1k-%5@J}zS~jwU?d&F&IO0hlk&~R^ zJeRq~E$;D%XC#}U|D+%#X-H3I0?0`o3Q&YVf+#};Dicf%YEz%agb+#??dU`|!ik_S z0~tyrqZr2|qL@K6^H{(VVpzpmHnN57>?W2t;z=Nplbqo^m$}9*?(v9cB%7)Kq#z|} zNKa-0$VnawP=r8&C_@D*6HEFh7{?@{m_ao2Sillu zSjAd4vW4yJCYCtjNg$DvoZ&o|xyCK-@rY+6o2CDxASG!?Pi6whNgfJNgg}BQLj@`m zObu#NpT>j`N*L|vL^r~Tpf3X%N+hEg$0VYdK{WGNz!G9u#acG9h3)JnmN?=`Ad!=t z;XIeQ#x3sgh-W05t^cGTC22@cW&+4b9tu!|K!PYk1u7Fv4Qf-L#)J?`813jpH^Paa zF9R7$B%>I|B%+u>H1k-%5@J}zS~jwU?d&F&IO0hlk&~R^JeRq~E$;D%XC#Z(e^QW= zG^8gp0puhP1t>xwL6o5al?kQ>wW&{ILI@>{c66c};Y84vfea;*QH)~}QOqEkc`RTF zF|1-O8`;8kb`wh+@g$JQNzQPd%Ut6Y_jtrJlFiY7Qjn4~r2l`|yAyaF>wZ!A%c2r8 zPnj)KhRm7DoFQ{&%9s!`WhgR4giIl`70Z~AkdRE7$&^_kQ^>3&r1yJS_j4& z^q?1g8NgtMF_JNiXEKpQF^BmqVhPJx#TquSneFUi9|t+gaZYiLi(KIbx46T7!lx@g z@kmHgQj&%YM39|aesOjBCYns#)gD?R8%Uj{IkVT@!9sa#W-WHKu01Dn~- zF7|Pdqa5cH=eWofZg7h`+$TIr`H4qDlJY42`5H*69@CSRXDLES%JCAlXhbVI(T(2p zXAr{}#W*Gr$xP<4kR_~S9h=zBZuWDGQ(WXKx428#OrLcVk3^&-JrU#}4+SW~^OT_i zRj5f_8qt*3Xv>>)r6=z)kRgmbmeXOGMJH!V=A*)z!FxlhK+1z4~IF)IWBR7+uY~z z+44kEQj>wKwWagwuK}kdm}yA{)8LM`4Onh6+@nCUt2< zbK1~>F7%)`{TakCMlp^_L^6|kEMy5^v6}U4W(RvXz)?oYS1=GB^00d&HV=d=Q_+q#z9$$x2T0Qix)d zq#Tu~#>>>_6`J!p?dU`|-k~o88Nvw0FoCJeU>*xu!b;Y$iS6uWKSwyuY0h(*8~n~a zVtu9@#3wN+NJB=ll9Rj?q8KH4k(a1J9U9Vvmb9S*UFbn?`ZI`OjA9&c66c} zz3I;&hB1n9Od^t*%wr)-_=+`bU<*6h%R!EEf-_v;3OBjUpM)u;B6;O0 zl98GWWF;5*DZ-=pf3JZT)K6*3Q;Dk7pf(M7g=V})8`{&E?z}@E`tv?R8Oa#NGnq)D zn8SP)v4rKUZgGeE#QxlTPC}BBk~Cx>g6!lbF9j(= z2}hh07L&v{Lb6V4Z&UB|2{dk`tj9?5Cn8I{sGoM8)Wd+}`fi3K0F9$iw z3C?hVE8OHZe-ggfcpw2uNKJaOl9Rj?q8KIlXQP~JRHPa;sZD(v)0CF9rX3yWMlbp^ znBhE%e{Btn(FPM9wZp%*5&ngDpQi1jn9Bl|vWoR==zaAxcn|%2cN|jc86AI`S58(}(vN%1FjCnVHPzbC$7^HGIof_HvjXIm0hp z<2UXQYl(MFo+3FN; z$zBd~f^+=BHGbzFv6p(Lk%;7^C4wB}p#VjAo-$OR3N@)u6I#)puJooqgBZ?OCh`e$ zSjaNIW&>N;$zBd}j5A#37Jm_Unf4|PS$Kv*l%f*Vc$xaVLMz(Sm3QdR2aIF_)A@{L ztYs^^Im~G;@f-Jf;!DqaQjm^pN<#Xb)411CAd&s^pv zfAANNt?)A*Nk~O{a!`Pxl%x_b(}0+0V)=F2(TVQ#<~=@O1Y?=Z4Cbb?)#NkFQc+BqjxE$xIINQix)dq#Tu~P8}N2jMr&T7kct8?=hGU8O_H`<`ZV~ z8H@RnRjg$r+u6$jj_@Ntah3~Q<~n~6`)gyA_#`0}>B&M)^6?zcQ1%1O>~i5uJ@e6_YGA<0QYb_!C4YBZ!Z z-59`NMlzl$e8NoT@)@7Al&|=PZ`sEGEwNi(4seX0_?gSxE~Px>&Bp^V~VrZ9uKEMzGwS<5DNu$M#p$Z0NcmEX8atTp-^ zPmzqL$w)SGQ-GqBq&zQClX|>Db6%$%|6QV^vc5$x-eU-(7{^2+iDC{5Sj;k3u!c=+ z<2&|pfFu0KX@2Gxu5y##xyxU~UaP%`Pa=|$nsj6$E6F9R6Na7Htp$wU&x9Oko#B`jwZYuLbMwzG?U9ONj+ImJb;aD)GuxaGL} zJigAnLrOA`oxBvG6cwpKeVWpmj`W}}|En?Bxx*O6I3_WTDCV+&#eB&s*06ys>|hTE zIKpvG^D~#Y&Moc|w%+HXJV`>5k&1L=COf&vM`4Qb0%fT{6>3t4hBToCt!YnZy3>ok z3}gr+_=xdLVLG$;ltnCIIbXAujcnsP_Hl?~oa8JQxyrBH=1;;m=*Pq-F+rq|K1~L) zkb~Uhr!d7SML8-_jat;BG0kYj8+4=_z39&%KI9`NFqJ6gv5+OK;2XYW8@t%gQBH7{ zU%1Zi{7Lw?o_{1HIZu<3Y~&_CMRPx+iLS;aawvxB`H;zv$% zfh+vV9l|y#1Mx{hD$)_bGdxQ{icymCyhIJ^(wJtvPJ6o0lRmsh5QC*3GKz7bZNc_Q zmLr+TTs~tl%UDSeYoy<@m7VP6Ajb&er1T6IxWY|-=N_>(n-7UcB9fDubYvzQxyVN$ zicylXRHQ1ks7GU(62xoLwsfFNXj>0yFZ%I5LkMDcD1ETvkI~jYW-^h?WF89%Vu^G) zU$c%)Y-1PSbC@6aiE~`!3OD(kd&JtJO^HV$l98J9M393#6rd<2DNki;P?yFu<8|88 zneOzaKZ6<0M@(QEQOsiz%UH!aHnD@f9O4H~ah@yO zC`V;#P?v@@p(Sl-PiMN*i@pqG2*Vl8$4nxUnapJYU+^WXSj$GXv5S2i;s<`>EEl=T zuiWNO!nf&v#3K>ONKJY&lbzh;qcFuOMR_VyojNq48LenXXL`_^_xOO}e8dE%62&|g zvXqsqVI$kw!$E%FCw}HKH@VGy;%t|95|M(mWFi~6$xjhppe&WBPHh^}lvcE(Gu`RU zdwjrf#xRjcX7VYYvy7FjWh2|!!vT)*6X&?Z4Q_LvI6L$o5|M(mWFk9xC`eICQl83G zrw$EiN-N%=6W!@We+Dz0F-#uJ_>H@S@03pxk&^UeAr}QG zMrkTijXE@@1#Rd^civ?HLmAC@rZSUHSe7g2yiPkh(}Q;zzz{|-mPvfVEatPA<$TS0wy=}E9O4H~ah}WE zXP3T8Vp5Wh2x20q<-8Q47$qr3C93f<^?8NnyiPkh(T#WL%liyvBx9M#G@_Wx zXDsGRR*lzO%@kvYy(vXp?`2rU9?g zg4VRBGu`P$Ki+33BN@v?rV+(F7P5q|Sj~DivxD92=Lp9+&3P_!gWtJFtUby?d=is_ zG-MZMes7XCup#^Ptleg$ae+Dz0F-# z%Qkj%fMfi`&s^pvfAANN?Nh%bArPkH$2k6>rdyw|JXA3}gr+7{dgnGJ`pM#$uMSg4G1EPP&n;>|_u7 zIm{27_;-Iy{15g;hPKTLrSn7SV(D^Lht@Ypw}zH? zh0@^i`$Nk|L+Qy-dM=b+38lBB_d?6zhoZ|7oFCV6LXwjvv^|qFJ9#KbF-q|wK~#~} zqCT&NwzZVDr6b)!+ujYO?@NaX~{?ya*&&R6rw24 zQ=0NrqAE41Ljzu+8L!cX_H^PcdeWPI4CDhoWE5kWz!W}VCUg0W&soL_Rg7aJ_Chk~{{eyNU8R^JIUW!tNm#EDv zwBk)-qKD;ve84CsGK2XnWi^}F#UV~|fg1$zhcx_0V}qomB`eQTgwj;zWg7Du9q7)# zI^LCsfec|dqZ!8}BALlN7V;m(65GGx8@^>5yV%cBPI8uCxXvx^66?74HxiJPRHP>h z&ybhGl%Nb1d6|YZr3FE>lD4$ToI!fTNt`9GAGk zZSHcPSSO4vo**8HNks;-k(+`PrwkRTPF)()oHo2kH+u6PLm0)!Ol2nX`GOUE!{5gS z+qSZsgZ#*8E^?jQ+~={A>YAjaCL`I%Lm`S&hDubYF0as%H|Wee^r1fk`G5}@$w!Q1 z0+X4>bY?P#1w4xX`5O3KeJy7Vo7u$ye&j5d`IURb`N`ZzQqqu_oD`rKWvEO|8qkb3 zbfPD{>Bs*{3~=5MMlz0xL^6x{EM_^Y*}ztIv7e)y;hiL7Mj8S+q&!W5wxFHnK1)T9peXh36Lr76v6MQhs8i7xcuT?X<2A2N!u zOyc2~X8jXpGM7(T$QLZ-D^~Ii>)FIMzGE*3IKl}|^N+^Q&iRF_+~f}T2s`VYia5k2 z0f|XUO45*l2(t4GdB{s)it+-bC_{NFP>CwMOhcN{ing?)13`3@cBUI|^Dh4FdbNP&ge8Ez_;%okySnK@te9I=bv4ii}&0fCe0EaljF@EF(KXIC~ z{LBS@;WAgb&P{&f5AO0Oe-Znfal(_t=P8nqg0!S3BbmuU4s!D>1$d6)l%y;bc!}z~ zOg$RWgciKc8@x#ug6JMfdrIG-H+|^G2aI9@pD>G0S;P{S^EGQ(&nC98jU9Z)Zuas$ zhd9D9e&i?4a)HZS=O%yf7qNa;M?A(8JV{cXCKFl7O@4|}h6=nyb!t+FdNiU5&3KJA zwC7Da(Vd>WLvQ*qkU%vX!0e}a?N+eOtVLl63#FwmOHS5^OR<^T?J?!Hkhxvh%oZ})_xWTXd&RxPU7$YPn z9a+gvF7l9{=P6AEs#1#}YD??Wkj9~H4|e$DRqHKiPcH^DhVe{hI#JAL3Cmc)8aA?n zeeCBTM>xh$oaP)CxyCJGUDTIJNJ`QWK`!!Bgp!n|JQb)!HEK|c+SH{Xuki+N(uMBy z<~=@O1Y?-MG-fiNnE1l-a@Mfnq3tpI|3~Q#=j`JMCpphGZWH#4{z_s}lZj`@OJPb- zhKf|9HVtV?E86iW9@W7At{Uj9KXv16`Y?d^8Nx?QVg`%&nyu{SAV)dPFI?p|e-ZnV z@l1RYk&-lIAcE{XOA$&_k=it+C9P>kN4nC3z6@q0V;Ik5B8g%S3s}N(*0YW8*vkQq zaDsDO=Pr+3HWqoBtmGm;e;-9`D@{eJQH#1Xqy=x%g}3?td-PL=_ZY|re8?y!GMTA- z!VG3Imrq&9=Pcz*zT#`vvWYG1;5+tmfFu0K34Y=%7r4xIZt@$ybB|b8y#JGc+v6e0DWG@Ff#!1d{k*oa5AKWMQHJ>k$h~%Ut6WPc`J_=KuQk17M)u~Mbn$nu~ zbfzco@*aa3!5AhH$!zAcl+~BvlW^6-yF zLFW{q1f?iPMXFGP+SI2pO=(GM+R>4&^q?1g8NgtMF_JNiXEKpQF^BmqVhPJx#TquS zneFUi9|t+gaZYiLi(KIbx46T7!f*I{1>%vAq@*Mb8HgY|xyVaFico@5l%pb5s6lP& z)0n2Tq&4m6NLPB$i@pqCFvA$h7{)W1NTQg-d={~U<*Z^28`#WtcCn9x9OXEtILAe< zaD!Xi;XdIvm7jPdBq=FLLk1$qPA>9NkRp_z6y>N$6>3nM`ZT5~Eon_VI?|OM^r9~V z7|bw6GKTR?CXy)TFrP&%VL7WOO?qzW~tO??{El$Nxn9UbXP4|>s;0SsmsBN@YZCKE{%bC}N} zmav>vtYHJ2+0HKZagd`N=M?9-$Q5pIi#yyW{5Rz%9tlZGO45*l2(pulycDDeB`8HX zDpG|S)TTa-X-Z34(~gdGr3by}%K!#5jFF6CJd=qeiaE?@5ldLkD%P-p&1`2E`#8u^ zj&q80T;vKjxWygr6MjqiiAO?`l9DuJAcE}VA}<9gLJ3Myj*3*F2DPbAW17;E*0iG| zUFktD`Z9pQ3}Yl?7|&!PiDC}(S;P{Svx+rrU^Cm<#Xb≪fP@92dF54Q_FV`-K0l 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¥H>!@E5hjt- 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

  • _ec1J5rNc(GUe&{Y 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 z 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 Ii$l);0QPHW^#A|> diff --git a/env/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc b/env/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc deleted file mode 100644 index a6980f958e90855ed6827466d2fd03ef93383764..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8472 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 uy)eOg_I7bjVd)NGtjspFKKBG^eL~ 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 E2j=o)=Kufz diff --git a/env/lib/python3.4/__pycache__/copy.cpython-34.pyc b/env/lib/python3.4/__pycache__/copy.cpython-34.pyc deleted file mode 100644 index 0ff548c2fc5aca683d8e04667dc25495acf50c48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8062 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 Wf%+VNwI+C>?cle#@HN+Q-TwohA711D diff --git a/env/lib/python3.4/__pycache__/copyreg.cpython-34.pyc b/env/lib/python3.4/__pycache__/copyreg.cpython-34.pyc deleted file mode 100644 index e871e5c318c99311ac744a4a0f4e1dfbd6c08e3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4614 zcmZu!&5s;M6@UFPy)(13A0B_laohBHfQ06gP!%hLppE3Y{7~b;ycm zDQ?Leq`gGzAYGt%QAU~+pP;xceUP1`_>}Zp6rZN}jP&P3w|Qw7q+O)=EbGsTf&CnB zg!^rZ&-0GB4^bYib}o#5`>9F?O8Z6b4|M)GiIuN*3zeCqo1{sx=l62$50a>#s-bE9zQ5qVf%u=)TDhAY*C-dY+Rh)VLnEi7RE7Fr zAc(?fQ>{b}e9a&J=jRhV=6h%gqJ4{=T4XLzfiRH%Pc6!1ys&AX=;}V=fT-Uf{V^2| z;S~%PNHDtEu~$Z~YZXJo1pDp{GwB$AduR&3tNbWT)3BSWj$76z{jzZv_PM1sHZ>n7 zW)K$9W>7GhwxL$XS)a+f0UL3Bp|V6Uk-R>C$Rt7D{T=BBSpN6!@@BrRmWSP8Rt%SS za@~j6NG+@E@p77Umj`>rW}dyf^xkrm5B9X$SVC)olQY6J(U8@$7ObY*vLYVm5C5}5 zVz5i-u)*lX2Af#p;vxNBUZX zN~0}{_1dzjC%@H>wbF6QnJC{Lq-wWxwF=YHO}4`gENVr^)+^`7Mjq3@#!K_Q$c}_$$=t+&%vLBIKGzFg9KxeC%-hB%23y%KPpnbI{X?XA~v3IW_t zVIh5*S93$XVaobs7p2Qw#{;{Gzy{_r_`eS(^EMiiaK32OZ4cqyuotW|9Ojl|&Eea& z7VN6GXg4g+nzQw{z!OcNj-A7){R2FPlb!=hTEzV?tSTcd%^A_L^-28cH@V@QsTxME zvMI?5M+U(f-X|z>1^p?C@G>qQ$t;$1cqv5kFJ-mS7xxU#&hFkMK*Uf{p8D@y!HH@L z6~=sm9xNy)bDHKmRmk9g<>+Yo`1I8tj)eFvImcn(;kL>O!wd(p;YYa!TomcvlJIoK zyLAqBTYCK+cF*x$&rOw3yFq}OYP@k*FQGrRaSbnQFWLAaLyFiK*kY2!8Nq8UuP{n+QvcJ&opM}|>n-71_U@}GtU@#}57P$&c z`iTHVh0sL1DZk!)7&34mcTwT7fUoG$&-jOtEtG&B!-M{(yaJHqwZ-p1J``~?vRs3w zk?ssr7W2v^#>Ve!k8TovYYZ@QS_Mr2OuecZ0VurNP9yv^%yLH+L!J4dpC%|G;A2Ju zpVQ4qofY~U$zzpOZbp^H9+pZiQz{m(qV9@?>!1ijAQhXaN4UoFLrf}%CS3fREzT5#E1HXVC3g}%{Yn$B#+=K$)o&tka3Dw~O!RLG@++P7>1 z&2?com&>}!;;QF`g8^QUCSY7f)2T_GmNijLFJNfBCdWwW^3d^|Z6567$DlO~QPgS! zGF``Guyhtt4$c8aTWDLBXJ4`|+UFbwQOBy;`rDwNVjANar?;f`KhQyi04PK3b8;fy zZE~HyMfo@Q3WZK)lWmy~r0hmsPmW(80uljf#CeP20f)cLg1?XKeZ|jWNQeuM-OYRhBITS9zt*%;>@$wSnA} zfS%l+Q2s}Gtd{gSY(IJa{P`E76FlJa`HaZcVYZ=GMjc?WkHa3fsxU=e8grgi!T|T| zWf23C(d)u~ls3uu&Ll8U3F_2JC&`Mk`FWTQ$A|98LwBG`xZcz6K&`Tk67n&Qe-+~d z33v*WgD9SMx- zVYdUeBOb0w=BbArGVhDqC14N~>|s=CpK)EuQ6!!};!Tb-hpzDnVbitBlk8hF_SiMP zsG$h!IHR}kWfMyShmO0=_rH&uZ=p=VWfUKjOQXvNzT!G+!hOt7D@eVo*qK;ZU*q0K zXv)PyUWoW6+HrA(#4MXxf0vu<+#D?-G+XNrcu;2J11qzAJyhy5_~I(WqmvI;FOqWe z=)e>>N}r+-in-#%70A{%FkaT=UVLaBSy66UoU?z$GcHsTzV3BSaU~e%QB@M+0*j)p z4kEcP%H>S+Euw6!09T}nlxva{cKTH&+mAw%KFtR wE diff --git a/env/lib/python3.4/__pycache__/fnmatch.cpython-34.pyc b/env/lib/python3.4/__pycache__/fnmatch.cpython-34.pyc deleted file mode 100644 index 8b057b0371337e1cc594380c4eb04eb097263194..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3153 zcma)8L2n#26t-t~XOqpg2`!LTD#9QN*{a=u3aC^SZGj>cK|nN6v~7u;8E3Lg5S-?v=QJxFT-+2_z28l~XVLfE*Ct^UO|{st0D*9(&&B=jZ3|J^SzWk=C!D z|9SIPo3X#x%+o;o3W|AvDrBsOnzPVjF=stAinhmk-n3m~z1p;0XT3TL(M8>0q0hGP z1&t>Ky;Lp5FVICQblcmmq;hI7s#X= zou}jvoU!+#SS50(#8BE`5G7mUUStQt3{)J8k+fFn#B^J&e&PTt?_dA$+S=8RuALR1 zTwPzk_UT%u7^#eqL6GW@RM=G5ff8{V$XEnva#tlbN|WwXOCXJUk|r77lVc;S+<`g* zi70Vuv&6!Nb?EG8NkF=cNJmObtHkD5SS=G1OY7zasI(iSVTlx4ZDq04Ewwk&${4al z2q+t4jsS47HAsgexFVc_#Urp0{ZtDxQYw7Rh-zZBQh7rwo55v|rk&B$f`eeeC{3nr zDu=T2sW{`-0w#*b|Y_=Taho64RTaIKlOnMJi_ClcMauT z6!RJ?%h)z&+aB9@WI34q!ihcyoY@*l_t7PeaQPcJvaXC3_XY}n(qc-0YTKtvXte~M zPfE%Nsg?LFiS|k=89R>E#R7ANfOs6Euwr#r>9Hm9ITe=+X(g7)SQrRn?9xDL8Ndq; zc+05WJ2QF+SRsfykQcxg3gmRcDbV@4#5v&A1j8a5fwo{*l!m0GT5(it4ww)C(RCx< zNf9j-LMGufE}R4Uk%sGNgU%(X9?CeHsL+jz`i^!5iHWynY^)lBe!E!&j?mUS;Pt*3 zrx~b`yn;=TiN(0coD~_OV}<}v2&ZCvr=EMM$?J%TK|V)TkU6>zK6JdiPO+cYApD8x z1$;X^zdA^VYBk$L%w?lQ@4CcLx(V6Tb&p+;Uq!+EW!a2~LHX`>vy0XSvP zm+{q*hU#45F^ z$$#(Nd66B|Y5Dtg@_@cbz9NUXF5kV#@V}Y7#rEDT@ZA#sXflVSvD=T0-DbPn>?ZUf zF-*>X>Jpt}vB@@#vLY=w9Y^3ioe?)6l(vXt3X5*X*F+HAq-u^Tazj2pN=>xq2r%mv#6NogMV$l=p8}5jQRwBnpe&y z))C%0`xF|)yeYS^ICv3@2lIC3i9M5V|5y4ui%b#3nak@GU^po#jjbbA1^!YX$I;0{ zPAUUurGumz1p}A%DZ2lgCyF#-F;;J7L!6*EhDqgGr(jQ~R=9$=S$O6#rx2sApcrZ} zzs-Yb@R9#3zWsu)SS@+Mt=vPnfqb|lAe#2RLHKx(8u)BYN(#7-*rcZEM!a`x`kL7wH{>Eb`adsAWEy_E7 zr2-!C$$?Xg6~`5fK0(o<8@LQ~@>~Tw>g@fBLm6OBh#gpRLF===$DS?yhZslfPD8o$ z>P<56DYks0b8OOIFE2g{1S_s=r{GWE=xhgEXIyb++Mdj4o}tq~p#}cXG^_>Eh5G26LB&X_&?8ZTe)MCVOFy Q`*}D9j=$7uFST3$0#D)nHvj+t diff --git a/env/lib/python3.4/__pycache__/functools.cpython-34.pyc b/env/lib/python3.4/__pycache__/functools.cpython-34.pyc deleted file mode 100644 index 3308142ebd52636dca49f9b59b836b1f01c2b32a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23615 zcmchfU635tb>HuN?Cke0zDNKhL^VN*#Dc(rA}G=(L6{T(QV_`{garwDEO;_I-Mbj> z?96WWEP)*ou_RC;7(1d>iOOYJaU5HDkjoX@aVnLn zdB}?@apm_vx4UO|0ZPdh6birGF1WYVYRa{S+)Bk&E3TmHY1bNdDq*CbSqP?I;DXgRQIohdtJECeE`h++|8nH`4PY5s?#pK z=&HM1H0`2YE__ha`hX_8vzkMirE2!L@KY{)NZnNF@6#>}tjzo#cHvQp*&E{7L@-bC`nQN3tBBb^lLV^<;h%TmDHp!r!qYDNCAU;ITtDhw314*KOZLD^F8Yi; z@R&X6++x8+kGtrIi)LJO)Px5J=OZ?)UO&IR;?3#MDZ zt6i@HIz3#7JJ&ZZZLF$p_vNU*{A#puw%O=1`+B@V<8$ldJ?QUFecY_v#*g`C(E*62HmT1R1cFzAst-5I?iw;WloGdKU0|dK9ld4lc=>A@1fRCKl$8=tDTkT#QMT| zySsiuOAN9a(TS-2?uk}&;l%0&sBE8{efq>^y6BJAYJe5Rwc4jN3Ww`W8yaTwI}MGk zKmFbbAcJ709Pj0RbvU}-=z?S`G}}qHI;5I~0j%*p+Vw~1|9Z1qt3AY(A9yMs*lx_t zRMbjqS*!KOYPFS4xZYBEqE=g5ueZ`W!?jx2Y1C@*ee@LHuTzc}U($fK7!PW!3a5!e zr7%&jy7++Z?$_y{P7iSEPuFVob{pyybtDW4AR)9;tL4~GHnj_GmM)cA2zL4+~M?Wka~NaTuhHJ8^TV*{-(+y{4Vklcc%Sj;vul zFg6WXOUWbwQ}1@;=E8b6LMCM`!)A;;YHeggEykUdJ3=nV1~ZEDv4bOFv{+wnb(u&f z?)p|GUqaNqj@^V)&Hac+}C99owsHx}E4z^D& z>mtJi(FZ%1uueN`<|J$-+=^ALqwPqs2x^ zH~7=91o|0{2pq!<{<>Kx&CitUzfRX@BQRL+qS6-YsJeJVi;t{t zZKRZ$X{{qOcIP%m$jSU-)LoCI1A{Q{Q_B}L+wY=NlH2<;<*7wXABb`;$XBWEc_w3_ zdc3s0g0MA3YjmDgh$0QN1UUUe*^0-}O1;@O>c|?;24_7X2U&-J4R!ILl)GP*!Ng~? zt}b1LevO11o%Xv?yBW0`(SSVwA!)9xwwj9@9)%h-Rl|n9te-m%5FcjA;zx9Pl+#Qx z9#vWEKU3Ovb32hp$DZdf9p}cU3k}uiPeh@z5yg`fpoMoh7bN#?KomvM$nuDbKdr(% z*Atx+YDJUflC)*-ykA?E_H?i?8w6)ME33$sFj&|KUfgP*c*Z+|*r)ZWV1d=ZCOT3N z9)5v~*_mR$QmeJl0sX1DPWL?6inO3n$P}gf`a>PoHSUjgR% zH+7y!MDngUjV>w|;-i%BJois?=k~d;K9o(hXj46xPxTZ4?`W>+JRuyW`GTKjA(n5H z&M7`ZIiAsJpj5@p%mrPX&gCil^>uh#Nk*hgH`epj!&pb1&Pq1aJJV{~`-SbQ%1njn%%ErC( zx}D(8PhYprY(|fs^=roiK&Zi%vOj$3n2F(PL{gAskz8+l8}#2@_Xk6`PJh`kNN3%DgARXj2nq-pg!qc@h2LZL|3W%|^DT{^X|*ag;ccX=81kpy{v`=xiiwQJ@9a zqjrNw$E?6J<5`Q6d*(*LeP|&=A8!7J8Lnq@<2LzMu1m~#Smy563a*VyH0gaHccbL4 zzi9D=k~?_z%G2)4MMVpUGbol&bj!mo{$Uzds7<-m^8>2I2KGJioqo|V1Btg>f(wnzg2W=6^nU6912kND?TuZDPEj?vRdq{5(+Cd zT8TGK_tE4hW2aipq}#yEKmF$#TY!wZ-r=pb{_H8jaP?MlnnKpR_sq(A(gh8R%{C4d zk-DhPb%%?5>K%fh78H6858-rxpgR4+%q}zC&F+n5F2=H?V#$VBqA-^JGT|RTt&+q^ zERKsssQt0GFv`DOx1INv4iXKM53-+Ql=GHFl=d>-2`Idhk}E4$bdak^ z+yYT7DhoD0Q|cW%BmXj%4@J25g@KFNY|A|l2>uQ#8}ym~X%zh>zr|@=uyyIScxwuY zMO}e}sB2nd+cv7HWHq*hqnhEY#ZUD(qzE^O{KLwol^NhR+7@0CZ+6geSMDGhn9)kL8Roz51RgbaFb*sBT?AEwN;fh3m>DZxZxF-Dira%t4>9n&^gMFjx$l5Iam&o^!JV-D+}+~}-s z!~svvl&V9Egi4d@=wdcnb-W#2%PwY0{j%=&%hIC#k*t0oX8OZ4*UkSeaD-5YqMR)B z4x}?4sDZR0KH?W?6)UV6zsiZ-v8@&HYr19BQ1Z>}zS?@_Jxb|+aU^4$T=_s*%6qiH zit0{|DcuyNUgSvL=Cn<3e)1+|$euF_4vlFlQsrUW_%{8>B`8KAlDIHGGZ_n#-k-m2 zo3dC*Nh5BqD*FEOFTT;k{QBx@CuW1jBIYtU*&s~1DhviA*bUiS<$J%KNhnxtG4R@Sw-3+%!9CbUXz za;$3e4QLmCUFCPMUQzaD!@e^tb9}$9DRFPay)!CGR?Ud%WNOC5T%u?4J7|j z7}HvZBJk2&pDj=Ade?f7zV~o^Lt%Zn_}SDIBGgVswm>uE{gLcme;7ezJ2s=*3inoL zg`Ihl;r^JU=9P+-@+utdHcYdJ7xC{ z`>Jde(L#;5hm!<4OIjqnF7V0RD@8p_zyi_ls5xD3XntmFu2(!3G&1N) z03-+#9glP3u`8c4U(64dSzM3+V7^sYGck*{>J7hl;{`3=931^6o^~VjwG_3Z>#OnU!@{TNw^HcMY{y+3t+JCpkVg4ay`%5>&GQ?x@8K=oIP#vv z*^Ohtdy;(m&7|IqnSRAL^^Sx|rGXe5@0Z`{G~0drlvUgi#v91E{!p_Utt2)Z>Bokg zN>rXH&HaFEb}E@D%FkX0DoG zTBEfBwD7A?K}mi&^u~BG5YD|+>$5~)fZfZ&p(Grn?F={Qe)DYWVz#cFuqQuL_V?ys3_Z-Nb1hEekdMCFL z*h+mls;##dI_vE)eQZE%X$8u6AKpk(Utm4imi4{YYSpRQmfkYY2XyC_jDaSCr;9s` z^@KniF%b7uWGD3wZ|QROP7mcf%v!r#lKdGL685%sA_MQl!kw(6Ef)pFA#Q2uB$17Q z6<+Z&gZ)LjD=Fk_Oh&&`cHd;p$^Y1;daZ2P)kywW`?@O=E>eQvSAFuw*WKG|w-nQ% zg$836^N&+;1Ti6z2BVhKW@hES4(KzZ77p?9SN6bw9K3l(Xp>MHKpv617gJ<)<5~UY8%rw8FAxEBBM0%OUC_lh9GaZKN z`oJtV^cLYfQl-9tvk`^!(OU1{1h(;SvN%{;uPXyB!g8_*pL`NF_pcG?Q#y~N1RLY+ zPO#D;qktxDf?tiu>?-B%fRG^ao8D~aWf=ve4Pdq@vuz=2)YlU|83lQIUp9aS%X?A_ zBv!Bj={4C$54z12pz7cw00zjjpyRAh(CClqSxYd9Q3RRX&yhRQ?Kz%}mvwqcCv~-H8UsRYa^sT5knEfosuU~5 z>2j>vxrT&?{zSt=9KvhzUpO&=8`wPs^(zTyX4g&g2yS4la;xN?rNwm&)-jURcDWnl zRy}UjYbQu}qZdr#-?i#I7>BU6&>;h)R++ldKtI^p5F+;t=^kate>GhDfoqc=hj_$_ zrZ1AN8RG}iqtsy09i$eKx?D*+RMos}d22sEQ>lLoT)d7d3o=?0C0f!|XVtPnTVxO^ zhcOIRJ4w@5nctBr*-ehDQS_yhnz6%))S~y+8_F;tbWZYJoxUuUhy@QE%S_~K+tIeeVuF` z<;>=g8u*B!fNb8nO-^l>+nsA|r5_p383<}4vI~sgj)|9Pp$T9=_yi^%j4fdbDCPSp zc{R^6Oa+7WmDJybsVx!Jk544Aqbg+|uCH<@io$dX4Hm`zGF$B=SIL8%Ae1Y+W#4Ow zjSjpW?b*vH9(^I>Iljb6$+22I&kDxOZ&JM>22kG>*E{451y*xlzT~!Y4oHc{It-A9 zDF~4L1LI!cnCo#nINp|z=XofFDQ>Ae;7Nh>-TIfIWA1@QoV0%K9D3}Bh9EI@}J*uJlrB;NQ&J?Q?{$9~q%cy5yFBvauW)*~VRDO-FeUk--{cynTj(io zB|RZs&m~NV6Ewj-iFc)8)YOBs>=lh~Wac+6TK#u`={0TL94Bd%1g+M_akP@M+of3Y48H;I98J~oQSk&h zk>ZFswtbBHgV!#;87xM1G6bPqrP`5*t|a-;Xj+AHMDUq z#p?`^F%^8fNXLtdQLG$6Th&d98NiVU5hfPN_$}C8>iA{+{OEdJd1%Li#Um$YpY&N6 z6bDMZOH#SS38DqKiKaAspup#yTR(ZdHw6jCS@la<%AwGaPjiqYjPho847)+%LI_Ep zd#g!gFmI0>BNE8K4T2O(%TE)2kH|1OW@ryN%ofLD=g5o_ ziP)Hv)J!pN>#%8$9DB>4dIMoDp%=>a8Wxp1W69l1GdJYZp@rti1^Z zdc4l{X3kw-C7l^uq|+9LK_tY(CRwzEN?>V4fhH2-71-&=VzeKNyK(^~(?pS6S<}gB z*cO=qzrb~6c;+Mc4;Ct#hsg~>RPY~#vbJJjwp;ce!-)U9+QOwT%X+#sY0QgeZ5y}w z{cSTl#cJ$D$4+g$-}1eTLE+8`Yd_^aoX!{&ILg{b(^IG1hwQkq#Wvtx#~KY26{cO$^R5CMLk77hX&CN#q4osr*|nNA|a zF$j`7L!|<)m#&9>?VjRrd9tK-4{+=n5UhHer2Vo^u;7?-{E~ z3IC1eEV1H>!-d{+_bQ|Y9px;lz7(9Z8NWh-8Gigc3~6pOFo`w!&lLGDZIzX!t|J|C?1_Y_3T4K z50Bbz&tp471JjbsHW?AWtCAcF@NkizehC{XzMxv|h?_6M=82K4F)1{Y>fjyY!Ed<^ z^Ptp2GDX21Iz)_9Gucyoyp`KrQqDTga3p`p32MNwx&AMWGV<*_vAj4r|0Az}elA5;Y6tS)GHVePEr|K$s7$9dVW z0{F5>kgez?FA0$~+~N-<7uF`h~UcI{sf?8--nz%`x2j zjn|`i2_NV6i*H!o-_aymTi0ts$x#`o^(>~q{b1cP0%b^_IT_?uZ{|6K^;KE77E?*B z=4;ok@glNbLN%K?B=FGc)WZ`o0mVA8(GyS2o;p*;&h6MVBG&eBk)%X;5KP?_r&twLEs@6Ek<^@w9*inO|zyT%B_3l64 zR(uCbrL-4en~_fz$*bUU1>R7Z0Zn#SrElh0~5hByB7RyCJT zRZBD(fbCz79nC@7FF+p!P*!Qx?)NZ<~}?6b#Z6TaY(tWgcfuF$)eDA>QxS?uTT| zScKJ>7iqB+=&M~a*Mc#yj_g4Q4Z0IGa~u0f+(IBAyUjgXWVb8s`UUlL_R1H`U9lZm z;1Mw2SB@<)0PWfthkV1RfN7+$!3ml`+3cI>33y=b`;PyY6`vfU%f0H7&e`708vGx3 z`9r@Ch@UVlCjtIbci4C74T~@623_bzo-Syc#JW-OH%67=%bb_cP9S)g9sd!IQ4VI! zRv$gsPsM)dOOXnUPnW)s=DkwCTSj;->9p3(C$-Gel-)3YAS)OPp2If6v2FG&%_ij; z!hi(tkJc9&aI7K~mUiQ#7&(vH`~Qgo2YR7)@D8xvM(-XcW_jkM`N~@c008kbUg>QR z4#rMLOUEaaQm1z%&@KkqZeXwguLrgpfuOOlVnY0o$R_SDxd-gHq;FDMwy5Nbx8&rf zBX?$lH`_=Ii)g&``7=Hq!^_0%SNL#D*l9oB4Zsp_LMi}D4>lX$%PgA~(Lh|KBPM}$ zb&XK0?OiknuMO8*&F+SxLee?Be%^?}W7c1DHkzeASzoZp9AVRyV9r8gCJl`yf#N%c zF-^knzYy_YXD;B~=B$}U}nho^AVYAWfdT6y4b-%#AckAj% zMDT&|K^!efN(n2p!)A+k)i@Q%f(N4-*Q!BcGi#$bY=iGEWNWL}!mT&nc8uD*32d~K ztqx%%|1Ne=Ut|OerpOK#SWuOR(Fn`J*qhcsdV}$jdXre3k^`6%f$M9Xz}`H~rY*;TQk z!EZ>?YZL<1519OqJDU_zmH@H^pbE{+WIjwG)r$uPFooFB63m4>k)BjHgaZ%^rz2#M z^S?(2xMP2xpG|O`;_|HwE>z`%x5JfZ&;NXY*~kF!ZNZU7^Y0GRy>7}hT__lQy zzP%-^Rd`C1Jwn0lK8%I2w=jb9dZ3_p1rB0;>?s6gy~V$qEBz~#Z0&OEW0(g;o@h9i zptWrez--i;7S%_=euz4^2$SFE!-G>IDhfV}Gvee)>k`Q%;;$Q6t`+HNZ3$RLjpBb6 z9UL@;9l6kB-rOj<>pxP>*(-k~OByc04!QoO>=GG4GB;jH&19HG@6CKiul`^ppt5Cp zd`D&hi5+Y_2nI|78z970q{D|%PE`xz;1QA@!Qi?$tzLB!!Qf^kwq{wPE`O0YPzD2_&2~7n|s(?RL#TRi{ujGI6Y5 zk(Nn6Q7PisFJI?zlgJjDW%+c8bT*@xOU0g)J_&cA*ovM>#hJ*&67XTm4;ce{hRnSN ziE0P5v5~+;hQ8dMtd;n^H3cMf-^(h^pxh<$iXzLIq53;q`d-Sg8-1OKM z__Y$Bj8a1C;5Jo)9+*uoV*HN`*7y(j89-`oqV#du_5~-LJ#R$ z>4zfr2?FU{m^mBQ2SkTc1#`*k$&o%@W7iPgpCaEYwL(qph?u>GDQn}`hxtsc4ttvZ zeHxI!$p>JxQe?*~oewv3eW6;hp1jA*%V+;kU72F~J(UbW-&09lcu#d=^K!AZ;?wor z@O1IM(!tW6p@SuTYH5;VFY9~Mmy7pPqa4FSh4>HYDpwkES9P4>NdAly!W_m1t3JgN z2386$ju^3%TSC*>D_==tC)6rf|92%(c|dFMk(JF6l_cfTc0UmN{t_{-8v8=i1h?^b zp=TxSWwr35-=e-iaC*@3VU>Yl?Xdpq>q|=cHhB*>)Jgkv{@Vv$0xyu!!B!vNE|a|~ zW7j?$;@^<4Ajwg0u*Vxmy~_YuY>~#7Gv5Rc1#bi|Zo%BEVLaFAvMt(N3^qX@c97_njNWN?`F4%% zX>OY^@JStr{|%U<{-sWWOiWv*Jiz38vMc1z_-qr~5Y2|}9eQbHp}Dl)S+{*{`!L*d z!FxC4?!0${Z?B22NSuf^5@QpyzT#h}((;onqDnwf#4YPh-cr0l2tf>CE7dRD_Vt#r znov^{x(UdqNfKj9h=i6&ft)4;Gm2qUhO#FM@js!nEm9*7#{6UMXs@;``o2lQXqs(A z8AVt@7#f!Rgdrqj2mNmE3Fo_;i_obLf?(xf3i+@|7Q|3k3}r~?+GB!}+3NJ$eA%9- z-=a~yZCr_VDG%%IWePkDpA{&POjvJ0%kz+JD>|NifG^0XB44EKITe>kGfc2AR;1nY zR_4;wGoKh)5(Or&3!*;VL4|C{fY=A1dG1U<47QEN@#e(_VVLHB87x~ljchMKCUCKd7YA|C ztWqC!%09a#NFjaeYdab;%Faoq1eNUOFx~bY3Ml4O$UU194ogiXDXZzm)dpucjouhs$4o~Ob;0g$#rVEmO=y72EDGZPb0h1h( zr}cO1P5-gVtvwoYl^!GeR;~TJXJ*@OUMUFZ=w_HR!&i^au>+wExES_BKD-)jSYX#! zn!N@|jq0Q_Rfq%ouTECWf`WI+(w!jt6lH%Z!-M}oW&B6#b6``BWVioB;^YuF-H5&a zM|^jJXzvta#Gm&eTzYBzJ$qX8i>#EE1TVP2yM?>u=iG1R-c8I`j+?ORw(OK(J=!lw03V^oq6 zB%g2NzdJ6Uh#Za5}{yGo9(qP ztNjZ>F~yY|p1_MY$^ZZnc%h!PGpHdv)DSnvC|0Lklzbo`UeK#bf=_$OvuuDDI{+-R&I-FLWv545N zifO6bt(0}NqyX_nwb6Kf1&3looISo3dp?k%J>}mQWSXoS)8=HQcwqlS(|bx|lzAb| zboICx$16II@3(axigU+QZ1iWLhfSKlfnq{@tUz-*VvK Qp5K~yaQgVf%)|r#5Bs&*$N&HU diff --git a/env/lib/python3.4/__pycache__/genericpath.cpython-34.pyc b/env/lib/python3.4/__pycache__/genericpath.cpython-34.pyc deleted file mode 100644 index f505daf3d4776661a1e5d4072cd1eaaf0eff2e09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3500 zcmcIn%W@k<6umuqT9)HSo=&Qu2}KblDG3KcAcR*XPAZ!OqCkQRP>nS$d+gElqTJR_+P*9|xL_wK?3I$aP#we&!Fit_8f(cq0 zrv=P8!qdLNR+v1=6IjNoDW12MQgGVI0N_!(ac1MY+9!UxEOnxcpN2ZNva9=j9m`b9zBWpx z%YH0%tmNHx?S_`IPUXNV8H7f4(`eX~^8PXpN}H%|*bBQ@77QX~W!O)&NwI;Fev%lS zn9xsEtv86f`AI#a`xp-G_7a}jw<=mwwpsffhNnAOJ%^JR)eG0NvRV&qYP0H+N&&a8 zoP_PRrM{CY7`5Ss%1WUH&a52TUKnAn_50WcQk^B}96#%~*sv@3P<;58L*P1!ZK4`Z zQ%bZVXp`uPAn_nRLB-Ug)f$-w2_X;>?Jr_M51m~L8#nGNo65(_3OX6-%Y?0*qld}v zsdQjq>zjTATlTb(i$<@iSlVHKQAaRh6vnIe=KV$?^R&&1j4rF(ZO}7ujU(hPUzBi;M#I z`_ibTLF60B{<3#$-({4;fPH^ISijp<7Op=WOqbmbfLR2@tA~X7@d(U5l4#(k zzU(5$FCo<*4ysGP2S6K!Ijg3uIb61xXm~Z#|lAKWfnf^t2m=ja#?EHRM* zDb1l=%0!rn?*15K9?YXy<|KJ#DvCP3vtmljh^}J^_iq&XoK59Y+Xs|s#HnKtoPq}3vspIHEPPi|Fc{WIFE@YpIs=O^Bjn|RJ*nE41=GE2Yb z5oT%Gv6QFb`Rlnx5Al$%xPlEIeT_GUJ3L>32QTl#lN!a1AKFP2=5I{3o~qd52`k;Z zGJkUMmDH@&BtG-I<9KnXHD&NBVp?y%LP2}JVgkHxaa%J%R2*EC;Zm#(rnxP4G65#p zkyqT=b4Kg*BJTIJarQm_k$rzC7qLY@Nr%nf`LerXxCYlsrWeM6d6`?)Oe9&ssw6A> zQR;rN8ovuwRJY?mtuKt{BYC5WqjPCu=f-u-eJst!I+hKC%{0!jr%+L4Qj`(pGl=!N zSA%p~ydD_)&x|rnP%m8IC2xm%3rz7!E7L$=qKM5c3Qp>rf%vsQ}aI91xuh;8i^^*IRAy?2k@)xw+4cq_# diff --git a/env/lib/python3.4/__pycache__/hashlib.cpython-34.pyc b/env/lib/python3.4/__pycache__/hashlib.cpython-34.pyc deleted file mode 100644 index f14089153c4c3c90732b80e5f733aa5100847334..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6376 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 diff --git a/env/lib/python3.4/__pycache__/heapq.cpython-34.pyc b/env/lib/python3.4/__pycache__/heapq.cpython-34.pyc deleted file mode 100644 index 8423f4dcbe9d98f663b673c717bc460539a280ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13917 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

    ms8McJ zr1?YK@>Gj3VSV>X+i)F7{L{z3W_%Bsi_p6hhc;u|f|6g@7;+M_wZc+}UE!`~*xAz~ zVv{!7Wpx8DWdhu9SERVKjD#>_&;fecx-1@lANqybJ18PEyjL6@9Mm0IPL F`X5UM#DxF= diff --git a/env/lib/python3.4/__pycache__/imp.cpython-34.pyc b/env/lib/python3.4/__pycache__/imp.cpython-34.pyc deleted file mode 100644 index 3ef5fe54ac1e7202cac84a6fd5e7a1e2c6d12210..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9874 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 diff --git a/env/lib/python3.4/__pycache__/io.cpython-34.pyc b/env/lib/python3.4/__pycache__/io.cpython-34.pyc deleted file mode 100644 index bb42a229fce5781da64a85afc197c7b931c2d216..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3464 zcmb_f&2k&Z5pED9Kr8`56eU~K??@MmE(WZMeX?0Dk`n2#9FqzunW;^=)&tCdSaE;g z*@PJW%@Me-LZZjj%g z*dyPgc!~Taiksv&DQ=P9qIjA7Ws2M6w<*3s{tb#($X}s~uF`9q2ZB#Y*C|-#n|xe$ zhy2^5*2w>azEyYGn?J+9dEx_~lDbEFo?hRfch!o&295jdENd)Sjk~1R=pB&X!`=gS zp7$Dd@BU=(0rnnpBzSMx?me9BJtBRNUJKFxu~4J!P*k(73$ATbsk;S`Ag;WPmejyC+m;oKNg5y4zvhU5vQt%v>2N7 zB2+pPIhJ3H@F%sW+RguNM9#wts+9dVfEdP5A-OMRiu224wPzk%#ia@1-r3Cm>}wIm!$`+E$?dUBNTWR&MYuw-o{=FC%S0TV>=~095n4A# zLZ!Gc7g;eJrX~l*v+x4fA#@G^g0uG~*NMH{`N|-VX?94L#XYj-$kV1k??nDFQ6^rm&rWaiC4Y>0`~Q-qz?gPuHytb|6u%61!Ry8HO?w=X!LR8Vo1L z5Pv0e`IYBA-`n4L_4}8>?yLR%z2o5Iz~A#cA;gX)zv!hX^f0ka0DTFKM-~yu|X~_gOZj4x8c*R~A}l0v5>#bdW_W~7F%b$vOTozyOWx;Z#KmD;kgz+Xrt0Zi>(;54mu&v zw$EZ2Mx9<7vzj#L;<(5%9Ys*XtYh44`>jr()G5xPwgY+rnRpTACN0EPmPX+)3$yK^ zUFak_XRTNkAo@NKXyjCVwqtr?OWM`Gyms%dPF~9xPl*>A6_%l8Y<0_}tA32zyHVOZ zx7@N_bv(~WAJ-fQ$Bk)M8P{BM8`sNv94}5tIbOcb+}Ygqm)YF)pV|D__L?hm+bPDL zD=~g5ja%2sZG7uhQZ{<6jwT%*Q1k3|h?CTib`%c#9Ocg4J>$UM>5O5_2!PpA|R|Ob1gW%^v zM&(X52-9&rD05a10+sfH;ICvJ!iW|B?Q9OxSZ@~HBFT$Q)a-dS#2d(_PA)d1u)FEF z{YB@?%`oi@NA~*PF;sSIXb z8XNcyzY^202C@hn2<-=fw1ewh{x}+I<^O;Ne+52@W+|9e!pD)Yg+I)YtUs};KKLRF zyl@)u1)RWxBnWJ@{i^Kt%q^VwHRH+XM_1^=Hh%yPfJv-|9O zaK|#r2wvwrn#U|ShUN(i_F=qe^jVmpU-=8?{AT(g7K|6SToru7=d#~I)T*_5yV9`V ko7HBeIrqnfMzv9`Rq$PSQoV1#t+{rkRau!^t*li32T78+#sB~S diff --git a/env/lib/python3.4/__pycache__/keyword.cpython-34.pyc b/env/lib/python3.4/__pycache__/keyword.cpython-34.pyc deleted file mode 100644 index 3d924800b20a1b7d3571baa6c17c0d7afd60a821..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1953 zcmbtUOOqQl5N^%O_N@1vWD_7T>p;AQ>>3C~sz@qD6^{$40F_iW3>D1SlI^j_(nON8 zYh#}l&iM@-sp7zmDt-l5bmfw8;0M5k*4PQl8QJQQTK!V1zy7nj8vc6kx5Mwt0Kdbj zv5V{XajKt?P=FXI0qQ`{ffyGqP!FgNGyqxxS_WDH8UkGbS_QfabPeb_&<&uQK(~Ny z13d%uEYNd6cYvM;dI9JQKwkv<63~l4Uk3UL&GN7(A$OB0pJ4u#Jq8{T+CYsUfQJ%3xv4{#@*U@O)8Ahp&#`!Ml3;a@) zigcevYBFkzOhqZj?b7g-sNSLVNQ**3i#(#KWF0N!Bof`ws^t^i7d%p8EIVjOG8QFW z&1BRbrx{IouTV`nvU17nLBeSy$Nar8jBp$@mlkfN?dEWC--CP-no6pcTN4bAvQ%l~ zf1G5B8Sl2>Nbkxqi(Rx9JBf;eL@6e9?6)OLhOyttkP(+Vg6ou9LCU(8WUti zalno{EZ1?Vn{u1D*zF1#dp6r~(91+S$zmt%njjtJ0bJ21oQxo#;I_l5kXt?Ri9+O;e!I+PuHAipjotcC|1 z3*G}03;0rnPGW5`L1&$A`qYoc^3Uh>91!f@((ajT>m0?h}TPwW+vlWon z$gBc`0-U%VpnP$&9YpHRtOPqKNgiG!51#=350^2c#!3OG$xR#Z03lt4r8MgA%yGA1 zuRdeXafOitFvGJ|o8KFUya}FOg<%Nt7lOk+z#0s&FRa-Ji#>LTA|UbwCvbn6RFo)M z%ZWoCpLv$oO>5n%ErP_v-DzyxerjvrDZV;PH$N)?)%+Lg)3yIXBQ9}p)A z+xzmX+JiS5wWWgS4pHloaWlq^Cvv0}1R%BXDdQ_G z)7+FgVw7X)n?SKdcKRkra+IXT?@2Mvji(S>#!oqA$0od&WMlS`ltQAsrc6rXAIVgs zD|Vb}6Be7oL1Rr?;K+3(MIb6JrMb2}F)oS4!Z_XB1dBVw4$tBe29-?xEekt~UE(#G2#wnCo#9`|(iaNryEVf7HydX)XHK)q{6VwJ+n1 zFmu;XUA>D0$a!a*oFiMXN&@dJ*&=Vc>tvk-WR+Bl@7pAFU9v;A$r!->>4WJJrio@(;{3`BDG? diff --git a/env/lib/python3.4/__pycache__/linecache.cpython-34.pyc b/env/lib/python3.4/__pycache__/linecache.cpython-34.pyc deleted file mode 100644 index d8bd7b65d7be6cda36582cd22146ef893f4ef552..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3029 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 YL--ppEur3Du~Qr0RVX5Z{i*-{7XnrI@c;k- diff --git a/env/lib/python3.4/__pycache__/os.cpython-34.pyc b/env/lib/python3.4/__pycache__/os.cpython-34.pyc deleted file mode 100644 index 5b89c5fd62babcf8e78331b25e34299870071b5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29665 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 Qm-9;fTzvxLFHh$F7p=!EaR2}S diff --git a/env/lib/python3.4/__pycache__/random.cpython-34.pyc b/env/lib/python3.4/__pycache__/random.cpython-34.pyc deleted file mode 100644 index a3211178e4107e7ecf5964aaf3b048eea9f9e746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19066 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 PjE|3J@lB1VPiFrcBeEh$ diff --git a/env/lib/python3.4/__pycache__/reprlib.cpython-34.pyc b/env/lib/python3.4/__pycache__/reprlib.cpython-34.pyc deleted file mode 100644 index 77da7b5911baae4157e27f2a72fa6adf5aeb59ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5879 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 huh}cG>x4wk0%d33sp|#k`&r1i|kbqon2rC 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 KXr}mdG5CL@yzJos diff --git a/env/lib/python3.4/__pycache__/sre_compile.cpython-34.pyc b/env/lib/python3.4/__pycache__/sre_compile.cpython-34.pyc deleted file mode 100644 index 7538a3188124c718c8b3113b396acfe6b58b4c26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11942 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 D1{1r7 diff --git a/env/lib/python3.4/__pycache__/sre_parse.cpython-34.pyc b/env/lib/python3.4/__pycache__/sre_parse.cpython-34.pyc deleted file mode 100644 index de6cb062ae6d51b4903ea6f01c61d677b4d26e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19839 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 diff --git a/env/lib/python3.4/__pycache__/stat.cpython-34.pyc b/env/lib/python3.4/__pycache__/stat.cpython-34.pyc deleted file mode 100644 index b719066a5f6bae24b04cd1c81d2f56da35abd540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3585 zcmb7GOLH4V5bjyY@=Hz}Cn0aLkQiG@ESbCrd0|_UV^u84Xyw>UK?zASvNx7@mDyDi zr<|%(!Hqw`i7F0UIB@1~uvbpLP@Hpt?%Bx5BoI!~pOC5QD%6 zK@0&O0x=9C4&UNB2u460(l`#{FmN1>0zU-e2=K!o#(gSYbW8yM0K_HW=!o+d^!!CVKMvwD@Q*-T0X_j@3izasI-xUg zNoVG=&eav2w<#@?dM2f{)7t)H?R!YTrJrbknY=}y5d(?*Kh>Cl#3*ie@HogbFemP42TaOc z4KTuc+9CoHBi!}GICni0l)H{6K7r5^bFk})IoS2YOze72fqWl5@9SG(+CS3(v()iy zVDa1rF#}>&Ke9Wpg+XBv&O!4olvkWFh{}7gF$C%-gE97n!(dgU!AfLaxM|n%{Ho)7 zsYctW`!){EhO125@ug}h>D$hlsifC#`kv`FOxH`Iy+4^StB#;iGaM#|hOGA5n)G}r z%(houlef)=ayLySQCASszWIMS6GV&2unz>uI!rhC~6%BMQ-|A zE%_!Y`14H|38vym;h(q^9b`casm|xiXApOoVjjST84@OmuSvWjF-qcl62I;j44Qzi zAJaDsdvf-OUhYj&$+dQ~s`S>}o4iu?K`&mYzTL&^ z#6fvY_vSU9n=hJ^PIVKHu$JADiM`}dyAQbmDnatT-^K3KLD^mD&Cc7}thr6QZZ>Ua zV=uGCLeIyE>bWjrw80PbILH5k7?zy$cNtMK=B;9SKT0}Tq@VBNbPll%c&gig-N2@U zeuqx{omZ&XnIY}3G`vMalLVEXOH7x8Mq}2Jn)>bBhkJ%vTTLr2)_9VB5gK6ntsG%Lu%TQU}_O zzzqKJY*VLUo55oS+fl#+k1ahp4ftCLC$S&XGHJ&U@-t6~9_*${<#4wWK40=wsJ* z5`Fr}=h2o_o4ik3@JP+}d6dq!f472x&RXB$@*brcj2IhXN7*RK0pkc$H*gL+B)e2d z+zaFNf(K!9lv1Un*rSD;t_EO9<2dMAmsH`pWK}4>S&Rl& zVRp${D3%rVFd(Ha+MJyU)Z+)Zj uSbT8LY&72ejqTCB?H|s(Yh}_z2U+JEH{vXg1wF{#g~lTBkqA44`o94-N9Ae& diff --git a/env/lib/python3.4/__pycache__/struct.cpython-34.pyc b/env/lib/python3.4/__pycache__/struct.cpython-34.pyc deleted file mode 100644 index 166084460c09afdd39f8469e3ae645f3bb8655de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 354 zcmYk0O-{rx427Mh)Bh1%qbw#8utbOhAU12jHWorzDa2hFdR-YK1dqjVoOclpx)|{e zF7?{u_ng(X)oj{L-8ivV>-GcQqnYkrm}z#bKa92QE;g5JS+nU6b8^*MH5q+Pal=p` MP6)+FX+}=TA6tuCb^rhX diff --git a/env/lib/python3.4/__pycache__/tarfile.cpython-34.pyc b/env/lib/python3.4/__pycache__/tarfile.cpython-34.pyc deleted file mode 100644 index c80872128f4aee7f9a5cf8c7aa9e64dc99fb41ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67753 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 KCLi7V#s3eOWEEWi diff --git a/env/lib/python3.4/__pycache__/token.cpython-34.pyc b/env/lib/python3.4/__pycache__/token.cpython-34.pyc deleted file mode 100644 index 73a3ae8d5da483e525e948fdc6a11b25a430a0cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3622 zcmcgu-EtGj75+w=8U0xP2ZQ;Q0RuAF;(r$~-j%H}sE{R)1ZJBhD&Zd6l4XsU8H4ST za>M2c@)UW2JV7e&kgnQ`t-azV53pA`XC&LORoQSAN%PI=)7|G^r~BWD!T8@_{%chY z0Kek1k52UW^mxB$fCL1g1{s13L+aSjA!uko5XXcdW&}cqj6xWYF$fbf4iSMIfQUjS zAYzb%5OK&Mhylo9hy>&a#31A-#1P~d#4zMI#0cauh*8Mn5Mz)N5aW<1AdW$vgg6d4 z2{8eA3gQIhX^4}MXCNja&qADnJO^i_PZy@eKehYCI@;<~p$OjPLKt6={7IGfqKI9|F1^fiq z5AYFaJY>v%)F9?zYiK-zJ&(o$bBU?R?>Hf}ToCa+XNGAaGMpl&iCBbO3g|`HOORP? zh2Z|I*^4YiYf)M)lvB(5Qx#{+ZY9^8mgm=6zL&hZ?mFAa3qG^wHZP>+RFvpytF~>c zc&=QrN-McSCa(r_eGE6aCV7SO|iD8=I zGQ$;ys|+cI8HQ^N*BNFR<`~ipHyCa*++w)RaEIY8!#xI2IMz5M{NaFbD3<8)76|G< z2Y7P_KZelN&<(*S4xxsRlra+>DggSk1*uQ;#x(uc5Z;-TKuu}YR9MC9UOh7BPbEq^Ed!Ev{|c5Tg0 z+pYKMX8motz2|Q_t=n^V(!FwM@BJ2^m-RJ&&Dm}*JZ2v_xiKxKxywWxy2tx{az-A zzDUp4$_yRaY8A38nbK3M^j{=%3`(C#CNlVN$#NY8Q7}nAw^E=9bPs7txpt7_AkBXX zVUntVa_l~2q&<`E1^$3zEgkN9u#WfXpnvw>2z(u#Ft6wuSZ(E@ z`v$h+aQ^|VYeL(<9;h_Yphj)LkD_Dp>Ir%@E;#DhfdXyy2Qrv`wCm3%UbQs5>KJIm zxr;QYn+Myv5im0mv=+*AgIYVWh#2A`?nb%FyD{um(1{@XCXa3$ohTZ^=#V6`asZtH zDt3*qL8kzD9p#-r(&hxZgYZYu84OkqqLV-;#>4q{rbfS2e~cN8aaPa5h7Ka22g5HT z@K5dY2ps#P2#^UBj<1UVd2$$mz02qfqe16Yj3tmaC%PjCte(H4l$A7PWg^JRqmZTr zVegqU5a{ivfr3g#{J??Vpdd!Dn?h%Zf;h!-p>Q_nEF>a`$RtH&J=9C%yQiU5nkGv+ zqwqtH-IQDvQE)nq%He-s-krE+Sd;BpV7W(MpJ z=UQvc9clMl%;tU~Po3wW-|P?N(#53hx{muGIqk)j7T zabx!WoBq4{W+wI7WH7@plX4@h^4P`M*`Plj9ecC0`(wnlTk;FuW$L0Ewx5)a?Il}| z&y#+w-b$`J?sm;jZr9u`+x1*N&h{hIUh+|LS}N^>%ST&kQiWXV$KIZ&bdvL4g`0Lu z=}wz4QY>5Sl`=hFIy=5HKDc$CSNpEg?cKVsbl0v)Wq9o-4UDy>648>s>(t7qZc~h3(rWK50ki~t$F&K~)W)f!=Dhkjkn^wJM#p zYL$svvstaWIbNd|GAouc3olj{t&%d!l~S(oSVaofYCcz>iCiIT6)MWiTESb-Kg*Pq zUJ5W@e!fUFqp?)X7YqDaS;;89Y^~&!{w)8ZtPHwc(MvB^XrociXUb2M{&JBAnU!ax zQ_oxFvWh$|SsA)~DZ_gHf^K8sY_XyuG`|$6&o7oTOJq)|_l{W4d&{DQVx>pLSWJ&h z^kwx%MkSZeS}MMjD=ocPSfJ$`aPXNxZuNeo*WW8?ce$b-HP zp6ZeDz>^-G=$qM}3Eb*$U`Ko8@R9x=W9ZO`{(>V*`ivuUdW?ZSBZ%S1XM^5!C{qz; zDN`yHS4Gsy=X1}>xv~lspQ*S-%u=QJ)GDZGp&Ah7;A){F8%^hJt?AKU$+x#XmoGZX zw0C{}51GN`$_s8UE*f}!1o;$o!@rkPSajsdEQS1W@s#KQnCIY Uzu}lR9vTlN!t~V>cN5xw0IDP!-v9sr diff --git a/env/lib/python3.4/__pycache__/tokenize.cpython-34.pyc b/env/lib/python3.4/__pycache__/tokenize.cpython-34.pyc deleted file mode 100644 index f6d1af239c784ea4f3a5f2c49df73f1b152491eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19609 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 D`)A=C diff --git a/env/lib/python3.4/distutils/distutils.cfg b/env/lib/python3.4/distutils/distutils.cfg deleted file mode 100644 index 1af230e..0000000 --- a/env/lib/python3.4/distutils/distutils.cfg +++ /dev/null @@ -1,6 +0,0 @@ -# This is a config file local to this virtualenv installation -# You may include options that will be used by all distutils commands, -# and by easy_install. For instance: -# -# [easy_install] -# find_links = http://mylocalsite diff --git a/env/lib/python3.4/encodings b/env/lib/python3.4/encodings deleted file mode 120000 index c590f7d..0000000 --- a/env/lib/python3.4/encodings +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/encodings \ No newline at end of file diff --git a/env/lib/python3.4/fnmatch.py b/env/lib/python3.4/fnmatch.py deleted file mode 120000 index d79af36..0000000 --- a/env/lib/python3.4/fnmatch.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/fnmatch.py \ No newline at end of file diff --git a/env/lib/python3.4/functools.py b/env/lib/python3.4/functools.py deleted file mode 120000 index a7c76e4..0000000 --- a/env/lib/python3.4/functools.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/functools.py \ No newline at end of file diff --git a/env/lib/python3.4/genericpath.py b/env/lib/python3.4/genericpath.py deleted file mode 120000 index 8d167b2..0000000 --- a/env/lib/python3.4/genericpath.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/genericpath.py \ No newline at end of file diff --git a/env/lib/python3.4/hashlib.py b/env/lib/python3.4/hashlib.py deleted file mode 120000 index 63d2306..0000000 --- a/env/lib/python3.4/hashlib.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/hashlib.py \ No newline at end of file diff --git a/env/lib/python3.4/heapq.py b/env/lib/python3.4/heapq.py deleted file mode 120000 index ce3d364..0000000 --- a/env/lib/python3.4/heapq.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/heapq.py \ No newline at end of file diff --git a/env/lib/python3.4/hmac.py b/env/lib/python3.4/hmac.py deleted file mode 120000 index c81f639..0000000 --- a/env/lib/python3.4/hmac.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/hmac.py \ No newline at end of file diff --git a/env/lib/python3.4/imp.py b/env/lib/python3.4/imp.py deleted file mode 120000 index 4f3f54a..0000000 --- a/env/lib/python3.4/imp.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/imp.py \ No newline at end of file diff --git a/env/lib/python3.4/importlib b/env/lib/python3.4/importlib deleted file mode 120000 index 691d949..0000000 --- a/env/lib/python3.4/importlib +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/importlib \ No newline at end of file diff --git a/env/lib/python3.4/io.py b/env/lib/python3.4/io.py deleted file mode 120000 index 23ace93..0000000 --- a/env/lib/python3.4/io.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/io.py \ No newline at end of file diff --git a/env/lib/python3.4/keyword.py b/env/lib/python3.4/keyword.py deleted file mode 120000 index a32ed5c..0000000 --- a/env/lib/python3.4/keyword.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/keyword.py \ No newline at end of file diff --git a/env/lib/python3.4/lib-dynload b/env/lib/python3.4/lib-dynload deleted file mode 120000 index 06654df..0000000 --- a/env/lib/python3.4/lib-dynload +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/lib-dynload \ No newline at end of file diff --git a/env/lib/python3.4/linecache.py b/env/lib/python3.4/linecache.py deleted file mode 120000 index d0326ef..0000000 --- a/env/lib/python3.4/linecache.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/linecache.py \ No newline at end of file diff --git a/env/lib/python3.4/locale.py b/env/lib/python3.4/locale.py deleted file mode 120000 index f94e50f..0000000 --- a/env/lib/python3.4/locale.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/locale.py \ No newline at end of file diff --git a/env/lib/python3.4/no-global-site-packages.txt b/env/lib/python3.4/no-global-site-packages.txt deleted file mode 100644 index e69de29..0000000 diff --git a/env/lib/python3.4/ntpath.py b/env/lib/python3.4/ntpath.py deleted file mode 120000 index 3eb8c26..0000000 --- a/env/lib/python3.4/ntpath.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/ntpath.py \ No newline at end of file diff --git a/env/lib/python3.4/operator.py b/env/lib/python3.4/operator.py deleted file mode 120000 index c83b87b..0000000 --- a/env/lib/python3.4/operator.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/operator.py \ No newline at end of file diff --git a/env/lib/python3.4/orig-prefix.txt b/env/lib/python3.4/orig-prefix.txt deleted file mode 100644 index e25db58..0000000 --- a/env/lib/python3.4/orig-prefix.txt +++ /dev/null @@ -1 +0,0 @@ -/usr \ No newline at end of file diff --git a/env/lib/python3.4/os.py b/env/lib/python3.4/os.py deleted file mode 120000 index 4b7622c..0000000 --- a/env/lib/python3.4/os.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/os.py \ No newline at end of file diff --git a/env/lib/python3.4/plat-x86_64-linux-gnu b/env/lib/python3.4/plat-x86_64-linux-gnu deleted file mode 120000 index 5fbe772..0000000 --- a/env/lib/python3.4/plat-x86_64-linux-gnu +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/plat-x86_64-linux-gnu \ No newline at end of file diff --git a/env/lib/python3.4/posixpath.py b/env/lib/python3.4/posixpath.py deleted file mode 120000 index b94f810..0000000 --- a/env/lib/python3.4/posixpath.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/posixpath.py \ No newline at end of file diff --git a/env/lib/python3.4/random.py b/env/lib/python3.4/random.py deleted file mode 120000 index dc2795c..0000000 --- a/env/lib/python3.4/random.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/random.py \ No newline at end of file diff --git a/env/lib/python3.4/re.py b/env/lib/python3.4/re.py deleted file mode 120000 index 524b77f..0000000 --- a/env/lib/python3.4/re.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/re.py \ No newline at end of file diff --git a/env/lib/python3.4/reprlib.py b/env/lib/python3.4/reprlib.py deleted file mode 120000 index e7ece78..0000000 --- a/env/lib/python3.4/reprlib.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/reprlib.py \ No newline at end of file diff --git a/env/lib/python3.4/rlcompleter.py b/env/lib/python3.4/rlcompleter.py deleted file mode 120000 index 5f77c95..0000000 --- a/env/lib/python3.4/rlcompleter.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/rlcompleter.py \ No newline at end of file diff --git a/env/lib/python3.4/shutil.py b/env/lib/python3.4/shutil.py deleted file mode 120000 index 0e7ad4a..0000000 --- a/env/lib/python3.4/shutil.py +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/python3.4/shutil.py \ No newline at end of file diff --git a/env/lib/python3.4/site-packages/__pycache__/easy_install.cpython-34.pyc b/env/lib/python3.4/site-packages/__pycache__/easy_install.cpython-34.pyc deleted file mode 100644 index 816659d56421ac81d89906abbb135f23f1efc441..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 289 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 diff --git a/env/lib/python3.4/site-packages/__pycache__/update_checker_test.cpython-34.pyc b/env/lib/python3.4/site-packages/__pycache__/update_checker_test.cpython-34.pyc deleted file mode 100644 index 2d54c53de19db5ca98c5e2460b7f42f033b43d41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3651 zcmchZOK;mo5P)Y%y+u1OJ8fQ#ng$5e!j{t}0UD%f0>=%47HZI_NW#m47T1nsie#2# zS_{cZJ@ha1&~wqhwAY?`=@00sGfT>Pgcg(*sBDggHvSh z)W<^o9$wL}C|vw!-~rf2Is==*;hKJBfM>wK0NVie)V~4+VZuQTv zGk8W1P4J2^D1lvqK^g2au!n8|+#>vhFN+`;^eZqj!LEX+fm?zD1LQCIc^yUo%*SyI zo;1sU;u4|VWUBHcmOX#}(YH-Qt$ZK4PAs-xi0*-q%1ZPt@6vsjCX7D@D);b;enuhC zM@CMeFKFC0Y4J8L3zY(`%r4U6a5bctz%7GY(K;$saBEtxfLjOG(mFm|0e4mF=*9_f zPih?poC5c>)-7<)fV-x39K4QBomHo19O#HBwhN(jeoz%DUM6@Obs4UhKIB3HuWh`d zn-wXLW$Q3m8_ZO{r5VpczxUrk`Ja^;AAlMD}-J7j++cvV{*=@Ru zLh=|fY=(#G0x3sN^5VXbl--6cS)WdmLb- zI|bNmcZTL?o3}E6vW#YAg+!G^4Mo$Cn2I1N|1_FZtm3WO$Xll$@GP|BfbWXf;je^@ zdV#-&Q!>A+@u-QQ%jR+FCz2q=KmLDlJaCZR<{?klHGCYy-n)s9I0>KmDD2RN1UiC)1@=>E-E=S z3fn3+0c-`jwPAI7lin8KHMTr}gX*LqP`xT%r!boivI#8Bu4zsZOqHaF5-*;wTp#3- zi;`|vMA2U2HHpq7$JW_!YdJm>6Eh5`f@%gYQU-n92xF|o8VUBo;dzLUx}ffn*x^S8 zV^0wQQllBVSE7!?pAoPk#3h2%FO!`S&MLq`VM43e&T5n{P8~_zxmi(WbQq~p6uUtZ zOX}2;vR@Z_%}<%0@Kt4B#IGDL5gATZ52bj;vuW?q3~H29-QbdDnx$%%xDy^N92`;C zpt5B#lbtuJtj30|W56C~XND`SKy$^T*O(H68Lo{SuE+_`Oe4d1H@f=7hnUlLQJ$r% zOl<9ok1N>*NUGrSJc%6o@&diMh+-Vam*_zr@XI;C6MusIbDS8RL@`Fb&gv=j>q|kO zwl#zOD4aRk&Vq9e`@afj+!qSxk`Cu_Tb_&J;V09PA>^VKU2B$eVV}lj%Tpwl;(Rri z^IThgfaYdkr}2&FoLfu6o-^2PuBr;>zB3SqaiuN|5Sr#j?l3^9`uawD}Ro7!^T?41*bKbNx zV7rp|y_hiRkXH3a13E43NEt|F^a6WzcGL86U6&oZ(!p8V4xZHM*X0!yszAo`R;Vg> aQVMq|b0YHE(#2$rt*~`=);zakv3~$E14vf@ diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/DESCRIPTION.rst b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/DESCRIPTION.rst deleted file mode 100644 index 30e2362..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/DESCRIPTION.rst +++ /dev/null @@ -1,49 +0,0 @@ -Certifi: Python SSL Certificates -================================ - -`Certifi`_ is a carefully curated collection of Root Certificates for -validating the trustworthiness of SSL certificates while verifying the identity -of TLS hosts. It has been extracted from the `Requests`_ project. - -Installation ------------- - -``certifi`` is available on PyPI. Simply install it with ``pip``:: - - $ pip install certifi - -Usage ------ - -To reference the installed certificate authority (CA) bundle, you can use the -built-in function:: - - >>> import certifi - - >>> certifi.where() - '/usr/local/lib/python2.7/site-packages/certifi/cacert.pem' - -Enjoy! - -1024-bit Root Certificates -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Browsers and certificate authorities have concluded that 1024-bit keys are -unacceptably weak for certificates, particularly root certificates. For this -reason, Mozilla has removed any weak (i.e. 1024-bit key) certificate from its -bundle, replacing it with an equivalent strong (i.e. 2048-bit or greater key) -certificate from the same CA. Because Mozilla removed these certificates from -its bundle, ``certifi`` removed them as well. - -Unfortunately, old versions of OpenSSL (less than 1.0.2) sometimes fail to -validate certificate chains that use the strong roots. For this reason, if you -fail to validate a certificate using the ``certifi.where()`` mechanism, you can -intentionally re-add the 1024-bit roots back into your bundle by calling -``certifi.old_where()`` instead. This is not recommended in production: if at -all possible you should upgrade to a newer OpenSSL. However, if you have no -other option, this may work for you. - -.. _`Certifi`: http://certifi.io/en/latest/ -.. _`Requests`: http://docs.python-requests.org/en/latest/ - - diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/INSTALLER b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/INSTALLER deleted file mode 100644 index a1b589e..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/INSTALLER +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/METADATA b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/METADATA deleted file mode 100644 index 6091144..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/METADATA +++ /dev/null @@ -1,71 +0,0 @@ -Metadata-Version: 2.0 -Name: certifi -Version: 2017.7.27.1 -Summary: Python package for providing Mozilla's CA Bundle. -Home-page: http://certifi.io/ -Author: Kenneth Reitz -Author-email: me@kennethreitz.com -License: MPL-2.0 -Platform: UNKNOWN -Classifier: Development Status :: 5 - Production/Stable -Classifier: Intended Audience :: Developers -Classifier: Natural Language :: English -Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2 -Classifier: Programming Language :: Python :: 2.6 -Classifier: Programming Language :: Python :: 2.7 -Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 -Classifier: Programming Language :: Python :: 3.4 -Classifier: Programming Language :: Python :: 3.5 -Classifier: Programming Language :: Python :: 3.6 - -Certifi: Python SSL Certificates -================================ - -`Certifi`_ is a carefully curated collection of Root Certificates for -validating the trustworthiness of SSL certificates while verifying the identity -of TLS hosts. It has been extracted from the `Requests`_ project. - -Installation ------------- - -``certifi`` is available on PyPI. Simply install it with ``pip``:: - - $ pip install certifi - -Usage ------ - -To reference the installed certificate authority (CA) bundle, you can use the -built-in function:: - - >>> import certifi - - >>> certifi.where() - '/usr/local/lib/python2.7/site-packages/certifi/cacert.pem' - -Enjoy! - -1024-bit Root Certificates -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Browsers and certificate authorities have concluded that 1024-bit keys are -unacceptably weak for certificates, particularly root certificates. For this -reason, Mozilla has removed any weak (i.e. 1024-bit key) certificate from its -bundle, replacing it with an equivalent strong (i.e. 2048-bit or greater key) -certificate from the same CA. Because Mozilla removed these certificates from -its bundle, ``certifi`` removed them as well. - -Unfortunately, old versions of OpenSSL (less than 1.0.2) sometimes fail to -validate certificate chains that use the strong roots. For this reason, if you -fail to validate a certificate using the ``certifi.where()`` mechanism, you can -intentionally re-add the 1024-bit roots back into your bundle by calling -``certifi.old_where()`` instead. This is not recommended in production: if at -all possible you should upgrade to a newer OpenSSL. However, if you have no -other option, this may work for you. - -.. _`Certifi`: http://certifi.io/en/latest/ -.. _`Requests`: http://docs.python-requests.org/en/latest/ - - diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/RECORD b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/RECORD deleted file mode 100644 index 1c20cec..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/RECORD +++ /dev/null @@ -1,16 +0,0 @@ -certifi/__init__.py,sha256=My7zz7T7ihes4NXz6H8W7R5_mbQKxH4QOC-bpe2NzWk,65 -certifi/__main__.py,sha256=FiOYt1Fltst7wk9DRa6GCoBr8qBUxlNQu_MKJf04E6s,41 -certifi/cacert.pem,sha256=H1zXFqV-gILXM16kCI9onoUlQtpPQFRUx22fQXVygv8,296399 -certifi/core.py,sha256=QUebyXnT-N_b9vdOg1zw28xqdT0Y7mLkiBrLEQY8fXM,714 -certifi/old_root.pem,sha256=HT0KIfaM83q0XHFqGEesiGyfmlSWuD2RI0-AVIS2srY,25626 -certifi/weak.pem,sha256=Oo30AxpvkrmeN29S3UgbVzTIfaxqAbdXUZ1y2V6nEe0,322025 -certifi-2017.7.27.1.dist-info/DESCRIPTION.rst,sha256=wVWYoH3eovdWFPZnYU2NT4itGRx3eN5C_s1IuNm4qF4,1731 -certifi-2017.7.27.1.dist-info/METADATA,sha256=oq-Gce39ekQpzgfJJOSDXa3_LUhguodCWLYAGFeBkHI,2548 -certifi-2017.7.27.1.dist-info/RECORD,, -certifi-2017.7.27.1.dist-info/WHEEL,sha256=5wvfB7GvgZAbKBSE9uX9Zbi6LCL-_KgezgHblXhCRnM,113 -certifi-2017.7.27.1.dist-info/metadata.json,sha256=u7l0Z0L2OAt8iknI-JBmglISdRD1WSh_En-v_uE6oTU,915 -certifi-2017.7.27.1.dist-info/top_level.txt,sha256=KMu4vUCfsjLrkPbSNdgdekS-pVJzBAJFO__nI8NF6-U,8 -certifi-2017.7.27.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -certifi/__pycache__/__main__.cpython-34.pyc,, -certifi/__pycache__/core.cpython-34.pyc,, -certifi/__pycache__/__init__.cpython-34.pyc,, diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/WHEEL b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/WHEEL deleted file mode 100644 index 7bf9daa..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/WHEEL +++ /dev/null @@ -1,6 +0,0 @@ -Wheel-Version: 1.0 -Generator: bdist_wheel (0.30.0.a0) -Root-Is-Purelib: true -Tag: py2-none-any -Tag: py3-none-any - diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/metadata.json b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/metadata.json deleted file mode 100644 index 497b57f..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6"], "extensions": {"python.details": {"contacts": [{"email": "me@kennethreitz.com", "name": "Kenneth Reitz", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}, "project_urls": {"Home": "http://certifi.io/"}}}, "generator": "bdist_wheel (0.30.0.a0)", "license": "MPL-2.0", "metadata_version": "2.0", "name": "certifi", "summary": "Python package for providing Mozilla's CA Bundle.", "version": "2017.7.27.1"} \ No newline at end of file diff --git a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/top_level.txt b/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/top_level.txt deleted file mode 100644 index 963eac5..0000000 --- a/env/lib/python3.4/site-packages/certifi-2017.7.27.1.dist-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -certifi diff --git a/env/lib/python3.4/site-packages/certifi/__init__.py b/env/lib/python3.4/site-packages/certifi/__init__.py deleted file mode 100644 index a76cd47..0000000 --- a/env/lib/python3.4/site-packages/certifi/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -from .core import where, old_where - -__version__ = "2017.07.27.1" diff --git a/env/lib/python3.4/site-packages/certifi/__main__.py b/env/lib/python3.4/site-packages/certifi/__main__.py deleted file mode 100644 index 5f1da0d..0000000 --- a/env/lib/python3.4/site-packages/certifi/__main__.py +++ /dev/null @@ -1,2 +0,0 @@ -from certifi import where -print(where()) diff --git a/env/lib/python3.4/site-packages/certifi/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/certifi/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 15b71741476d14576ca6382605587fea89c9ec47..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX|5I}5@v5Wb{Ue6G%}9c+CdT|{(s5W&eV2b!pX)`YY^|B(2XvO2l=1Ds48JnnnI zecau<(X7oD_tg{to)-V2)=ez(wk2kpKnjo%NC;#U5(1^NY<1-eP4nK>!C75Vu|1?efK`cRE4ZqNp!8miK zGT9tf8hxe&t~kw?(viCjaqD!+D@&(kMq4|wYFS9Zjn>YNo6zadufrrM(v3`#I!cl@ zQOM&Yc~_oTF=X+IGkKo;`*(P#IhLd z7q~;IBNF?~_dd6j*A70<$SUXC!H{C|p6&rSIPutor zQ@5%Ep$zFKhYOXHLw~JRF=RDcT>CH~URHO{F}LzQUG5_Q8+hg}zW=T75La4#Sas(C zN?|B-?ZdhYu6L!koe3Jf%_eM(>2~yA)!&BHDAbO_uny1LHbRTUnhcsgiZKzvErOWf zHo}k@%J$z*`#Kj%zz2Y7%4Xzp+f1Asm tZdFjSnrK5+th=RAg}ZTg(>G13!^drxJt5(iB=%U$;?6-3_u?>Se*nZ-3(Eii diff --git a/env/lib/python3.4/site-packages/certifi/cacert.pem b/env/lib/python3.4/site-packages/certifi/cacert.pem deleted file mode 100644 index 44313cb..0000000 --- a/env/lib/python3.4/site-packages/certifi/cacert.pem +++ /dev/null @@ -1,4834 +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=Certum CA O=Unizeto Sp. z o.o. -# Subject: CN=Certum CA O=Unizeto Sp. z o.o. -# Label: "Certum Root CA" -# Serial: 65568 -# MD5 Fingerprint: 2c:8f:9f:66:1d:18:90:b1:47:26:9d:8e:86:82:8c:a9 -# SHA1 Fingerprint: 62:52:dc:40:f7:11:43:a2:2f:de:9e:f7:34:8e:06:42:51:b1:81:18 -# SHA256 Fingerprint: d8:e0:fe:bc:1d:b2:e3:8d:00:94:0f:37:d2:7d:41:34:4d:99:3e:73:4b:99:d5:65:6d:97:78:d4:d8:14:36:24 ------BEGIN CERTIFICATE----- -MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM -MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD -QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM -MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD -QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E -jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo -ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI -ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu -Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg -AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7 -HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA -uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa -TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg -xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q -CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x -O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs -6GAqm4VKQPNriiTsBhYscw== ------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=Chambers of Commerce Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Subject: CN=Chambers of Commerce Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Label: "Camerfirma Chambers of Commerce Root" -# Serial: 0 -# MD5 Fingerprint: b0:01:ee:14:d9:af:29:18:94:76:8e:f1:69:33:2a:84 -# SHA1 Fingerprint: 6e:3a:55:a4:19:0c:19:5c:93:84:3c:c0:db:72:2e:31:30:61:f0:b1 -# SHA256 Fingerprint: 0c:25:8a:12:a5:67:4a:ef:25:f2:8b:a7:dc:fa:ec:ee:a3:48:e5:41:e6:f5:cc:4e:e6:3b:71:b3:61:60:6a:c3 ------BEGIN CERTIFICATE----- -MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEn -MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL -ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMg -b2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAxNjEzNDNaFw0zNzA5MzAxNjEzNDRa -MH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZpcm1hIFNBIENJRiBB -ODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3JnMSIw -IAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0B -AQEFAAOCAQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtb -unXF/KGIJPov7coISjlUxFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0d -BmpAPrMMhe5cG3nCYsS4No41XQEMIwRHNaqbYE6gZj3LJgqcQKH0XZi/caulAGgq -7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jWDA+wWFjbw2Y3npuRVDM3 -0pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFVd9oKDMyX -roDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIG -A1UdEwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5j -aGFtYmVyc2lnbi5vcmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p -26EpW1eLTXYGduHRooowDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIA -BzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hhbWJlcnNpZ24ub3JnMCcGA1Ud -EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYDVR0gBFEwTzBN -BgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz -aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEB -AAxBl8IahsAifJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZd -p0AJPaxJRUXcLo0waLIJuvvDL8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi -1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wNUPf6s+xCX6ndbcj0dc97wXImsQEc -XCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/nADydb47kMgkdTXg0 -eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1erfu -tGWaIZDgqtCYvDi1czyL+Nw= ------END CERTIFICATE----- - -# Issuer: CN=Global Chambersign Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Subject: CN=Global Chambersign Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Label: "Camerfirma Global Chambersign Root" -# Serial: 0 -# MD5 Fingerprint: c5:e6:7b:bf:06:d0:4f:43:ed:c4:7a:65:8a:fb:6b:19 -# SHA1 Fingerprint: 33:9b:6b:14:50:24:9b:55:7a:01:87:72:84:d9:e0:2f:c3:d2:d8:e9 -# SHA256 Fingerprint: ef:3c:b4:17:fc:8e:bf:6f:97:87:6c:9e:4e:ce:39:de:1e:a5:fe:64:91:41:d1:02:8b:7d:11:c0:b2:29:8c:ed ------BEGIN CERTIFICATE----- -MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEn -MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL -ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENo -YW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYxNDE4WhcNMzcwOTMwMTYxNDE4WjB9 -MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgy -NzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4G -A1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUA -A4IBDQAwggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0 -Mi+ITaFgCPS3CU6gSS9J1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/s -QJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8Oby4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpV -eAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl6DJWk0aJqCWKZQbua795 -B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c8lCrEqWh -z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0T -AQH/BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1i -ZXJzaWduLm9yZy9jaGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4w -TcbOX60Qq+UDpfqpFDAOBgNVHQ8BAf8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAH -MCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBjaGFtYmVyc2lnbi5vcmcwKgYD -VR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9yZzBbBgNVHSAE -VDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh -bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0B -AQUFAAOCAQEAPDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUM -bKGKfKX0j//U2K0X1S0E0T9YgOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXi -ryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJPJ7oKXqJ1/6v/2j1pReQvayZzKWG -VwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4IBHNfTIzSJRUTN3c -ecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREest2d/ -AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== ------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: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Subject: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Label: "StartCom Certification Authority" -# Serial: 1 -# MD5 Fingerprint: 22:4d:8f:8a:fc:f7:35:c2:bb:57:34:90:7b:8b:22:16 -# SHA1 Fingerprint: 3e:2b:f7:f2:03:1b:96:f3:8c:e6:c4:d8:a8:5d:3e:2d:58:47:6a:0f -# SHA256 Fingerprint: c7:66:a9:be:f2:d4:07:1c:86:3a:31:aa:49:20:e8:13:b2:d1:98:60:8c:b7:b7:cf:e2:11:43:b8:36:df:09:ea ------BEGIN CERTIFICATE----- -MIIHyTCCBbGgAwIBAgIBATANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg -Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM2WhcNMzYwOTE3MTk0NjM2WjB9 -MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi -U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh -cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA -A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk -pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf -OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C -Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT -Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi -HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM -Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w -+2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ -Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 -Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B -26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID -AQABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE -FE4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9j -ZXJ0LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMCugKaAnhiVodHRwOi8vY3Js -LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMIIBXQYDVR0gBIIBVDCCAVAwggFM -BgsrBgEEAYG1NwEBATCCATswLwYIKwYBBQUHAgEWI2h0dHA6Ly9jZXJ0LnN0YXJ0 -Y29tLm9yZy9wb2xpY3kucGRmMDUGCCsGAQUFBwIBFilodHRwOi8vY2VydC5zdGFy -dGNvbS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB0AYIKwYBBQUHAgIwgcMwJxYgU3Rh -cnQgQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQgTGlh -YmlsaXR5LCByZWFkIHRoZSBzZWN0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyogb2Yg -dGhlIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFBvbGljeSBhdmFp -bGFibGUgYXQgaHR0cDovL2NlcnQuc3RhcnRjb20ub3JnL3BvbGljeS5wZGYwEQYJ -YIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNT -TCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAgEAFmyZ -9GYMNPXQhV59CuzaEE44HF7fpiUFS5Eyweg78T3dRAlbB0mKKctmArexmvclmAk8 -jhvh3TaHK0u7aNM5Zj2gJsfyOZEdUauCe37Vzlrk4gNXcGmXCPleWKYK34wGmkUW -FjgKXlf2Ysd6AgXmvB618p70qSmD+LIU424oh0TDkBreOKk8rENNZEXO3SipXPJz -ewT4F+irsfMuXGRuczE6Eri8sxHkfY+BUZo7jYn0TZNmezwD7dOaHZrzZVD1oNB1 -ny+v8OqCQ5j4aZyJecRDjkZy42Q2Eq/3JR44iZB3fsNrarnDy0RLrHiQi+fHLB5L -EUTINFInzQpdn4XBidUaePKVEFMy3YCEZnXZtWgo+2EuvoSoOMCZEoalHmdkrQYu -L6lwhceWD3yJZfWOQ1QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0Ijuu+Pwq -yvqCUqDvr0tVk+vBtfAii6w0TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YSjCMJwRuC -O3NJo2pXh5Tl1njFmUNj403gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVguucQJAX6V -um0ABj6y6koQOdjQK/W/7HW/lwLFCRsI3FU34oH7N4RDYiDK51ZLZer+bMEkkySh -NOsF/5oirpt9P/FlUQqmMGqz9IgcgA38corog14= ------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=DST ACES CA X6 O=Digital Signature Trust OU=DST ACES -# Subject: CN=DST ACES CA X6 O=Digital Signature Trust OU=DST ACES -# Label: "DST ACES CA X6" -# Serial: 17771143917277623872238992636097467865 -# MD5 Fingerprint: 21:d8:4c:82:2b:99:09:33:a2:eb:14:24:8d:8e:5f:e8 -# SHA1 Fingerprint: 40:54:da:6f:1c:3f:40:74:ac:ed:0f:ec:cd:db:79:d1:53:fb:90:1d -# SHA256 Fingerprint: 76:7c:95:5a:76:41:2c:89:af:68:8e:90:a1:c7:0f:55:6c:fd:6b:60:25:db:ea:10:41:6d:7e:b6:83:1f:8c:40 ------BEGIN CERTIFICATE----- -MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBb -MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3Qx -ETAPBgNVBAsTCERTVCBBQ0VTMRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w -MzExMjAyMTE5NThaFw0xNzExMjAyMTE5NThaMFsxCzAJBgNVBAYTAlVTMSAwHgYD -VQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UECxMIRFNUIEFDRVMx -FzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A -MIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPu -ktKe1jzIDZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7 -gLFViYsx+tC3dr5BPTCapCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZH -fAjIgrrep4c9oW24MFbCswKBXy314powGCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4a -ahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPyMjwmR/onJALJfh1biEIT -ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1UdEwEB/wQF -MAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rk -c3QuY29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjto -dHRwOi8vd3d3LnRydXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMt -aW5kZXguaHRtbDAdBgNVHQ4EFgQUCXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZI -hvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V25FYrnJmQ6AgwbN99Pe7lv7Uk -QIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6tFr8hlxCBPeP/ -h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq -nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpR -rscL9yuwNwXsvFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf2 -9w4LTJxoeHtxMcfrHuBnQfO3oKfN5XozNmr6mis= ------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: O=SECOM Trust Systems CO.,LTD. OU=Security Communication EV RootCA1 -# Subject: O=SECOM Trust Systems CO.,LTD. OU=Security Communication EV RootCA1 -# Label: "Security Communication EV RootCA1" -# Serial: 0 -# MD5 Fingerprint: 22:2d:a6:01:ea:7c:0a:f7:f0:6c:56:43:3f:77:76:d3 -# SHA1 Fingerprint: fe:b8:c4:32:dc:f9:76:9a:ce:ae:3d:d8:90:8f:fd:28:86:65:64:7d -# SHA256 Fingerprint: a2:2d:ba:68:1e:97:37:6e:2d:39:7d:72:8a:ae:3a:9b:62:96:b9:fd:ba:60:bc:2e:11:f6:47:f2:c6:75:fb:37 ------BEGIN CERTIFICATE----- -MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDEl -MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMh -U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIz -MloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09N -IFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNlY3VyaXR5IENvbW11 -bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSE -RMqm4miO/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gO -zXppFodEtZDkBp2uoQSXWHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5 -bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4zZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDF -MxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4bepJz11sS6/vmsJWXMY1 -VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK9U2vP9eC -OKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G -CSqGSIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HW -tWS3irO4G8za+6xmiEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZ -q51ihPZRwSzJIxXYKLerJRO1RuGGAv8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDb -EJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnWmHyojf6GPgcWkuF75x3sM3Z+ -Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEWT1MKZPlO9L9O -VL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 ------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: CN=T\xdcB\u0130TAK UEKAE K\xf6k Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 - S\xfcr\xfcm 3 O=T\xfcrkiye Bilimsel ve Teknolojik Ara\u015ft\u0131rma Kurumu - T\xdcB\u0130TAK OU=Ulusal Elektronik ve Kriptoloji Ara\u015ft\u0131rma Enstit\xfcs\xfc - UEKAE/Kamu Sertifikasyon Merkezi -# Subject: CN=T\xdcB\u0130TAK UEKAE K\xf6k Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 - S\xfcr\xfcm 3 O=T\xfcrkiye Bilimsel ve Teknolojik Ara\u015ft\u0131rma Kurumu - T\xdcB\u0130TAK OU=Ulusal Elektronik ve Kriptoloji Ara\u015ft\u0131rma Enstit\xfcs\xfc - UEKAE/Kamu Sertifikasyon Merkezi -# Label: "T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3" -# Serial: 17 -# MD5 Fingerprint: ed:41:f5:8c:50:c5:2b:9c:73:e6:ee:6c:eb:c2:a8:26 -# SHA1 Fingerprint: 1b:4b:39:61:26:27:6b:64:91:a2:68:6d:d7:02:43:21:2d:1f:1d:96 -# SHA256 Fingerprint: e4:c7:34:30:d7:a5:b5:09:25:df:43:37:0a:0d:21:6e:9a:79:b9:d6:db:83:73:a0:c6:9e:b1:cc:31:c7:c5:2a ------BEGIN CERTIFICATE----- -MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRS -MRgwFgYDVQQHDA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJp -bGltc2VsIHZlIFRla25vbG9qaWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSw -VEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ryb25payB2ZSBLcmlwdG9sb2ppIEFy -YcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNVBAsMGkthbXUgU2Vy -dGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUgS8O2 -ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAe -Fw0wNzA4MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIx -GDAWBgNVBAcMD0dlYnplIC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmls -aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHFn3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBU -QUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZlIEtyaXB0b2xvamkgQXJh -xZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2FtdSBTZXJ0 -aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7Zr -IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIB -IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4h -gb46ezzb8R1Sf1n68yJMlaCQvEhOEav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yK -O7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1xnnRFDDtG1hba+818qEhTsXO -fJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR6Oqeyjh1jmKw -lZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL -hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQID -AQABo0IwQDAdBgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/ -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmP -NOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4N5EY3ATIZJkrGG2AA1nJrvhY0D7t -wyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLTy9LQQfMmNkqblWwM -7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYhLBOh -gLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5n -oN+J1q2MdqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUs -yZyQ2uypQjyttgI= ------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=ACEDICOM Root O=EDICOM OU=PKI -# Subject: CN=ACEDICOM Root O=EDICOM OU=PKI -# Label: "ACEDICOM Root" -# Serial: 7029493972724711941 -# MD5 Fingerprint: 42:81:a0:e2:1c:e3:55:10:de:55:89:42:65:96:22:e6 -# SHA1 Fingerprint: e0:b4:32:2e:b2:f6:a5:68:b6:54:53:84:48:18:4a:50:36:87:43:84 -# SHA256 Fingerprint: 03:95:0f:b4:9a:53:1f:3e:19:91:94:23:98:df:a9:e0:ea:32:d7:ba:1c:dd:9b:c8:5d:b5:7e:d9:40:0b:43:4a ------BEGIN CERTIFICATE----- -MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UE -AwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00x -CzAJBgNVBAYTAkVTMB4XDTA4MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEW -MBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZF -RElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC -AgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHkWLn7 -09gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7 -XBZXehuDYAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5P -Grjm6gSSrj0RuVFCPYewMYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAK -t0SdE3QrwqXrIhWYENiLxQSfHY9g5QYbm8+5eaA9oiM/Qj9r+hwDezCNzmzAv+Yb -X79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbkHQl/Sog4P75n/TSW9R28 -MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTTxKJxqvQU -fecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI -2Sf23EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyH -K9caUPgn6C9D4zq92Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEae -ZAwUswdbxcJzbPEHXEUkFDWug/FqTYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAP -BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz4SsrSbbXc6GqlPUB53NlTKxQ -MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU9QHnc2VMrFAw -RAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv -bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm -fQwng4/F9tqgaHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3 -gvoFNTPhNahXwOf9jU8/kzJPeGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKe -I6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1PwkzQSulgUV1qzOMPPKC8W64iLgpq0i -5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1ThCojz2GuHURwCRi -ipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oIKiMn -MCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZ -o5NjEFIqnxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6 -zqylfDJKZ0DcMDQj3dcEI2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacN -GHk0vFQYXlPKNFHtRQrmjseCNj6nOGOpMCwXEGCSn1WHElkQwg9naRHMTh5+Spqt -r0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3otkYNbn5XOmeUwssfnHdK -Z05phkOTOPu220+DkdRgfks+KzgHVZhepA== ------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=Certinomis - Autorit\xe9 Racine O=Certinomis OU=0002 433998903 -# Subject: CN=Certinomis - Autorit\xe9 Racine O=Certinomis OU=0002 433998903 -# Label: "Certinomis - Autorit\xe9 Racine" -# Serial: 1 -# MD5 Fingerprint: 7f:30:78:8c:03:e3:ca:c9:0a:e2:c9:ea:1e:aa:55:1a -# SHA1 Fingerprint: 2e:14:da:ec:28:f0:fa:1e:8e:38:9a:4e:ab:eb:26:c0:0a:d3:83:c3 -# SHA256 Fingerprint: fc:bf:e2:88:62:06:f7:2b:27:59:3c:8b:07:02:97:e1:2d:76:9e:d1:0e:d7:93:07:05:a8:09:8e:ff:c1:4d:17 ------BEGIN CERTIFICATE----- -MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjET -MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAk -BgNVBAMMHUNlcnRpbm9taXMgLSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4 -Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNl -cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYwJAYDVQQDDB1DZXJ0 -aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jY -F1AMnmHawE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N -8y4oH3DfVS9O7cdxbwlyLu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWe -rP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K -/OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92NjMD2AR5vpTESOH2VwnHu -7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9qc1pkIuVC -28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6 -lSTClrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1E -nn1So2+WLhl+HPNbxxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB -0iSVL1N6aaLwD4ZFjliCK0wi1F6g530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql09 -5gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna4NH4+ej9Uji29YnfAgMBAAGj -WzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQN -jLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ -KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9s -ov3/4gbIOZ/xWqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZM -OH8oMDX/nyNTt7buFHAAQCvaR6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q -619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40nJ+U8/aGH88bc62UeYdocMMzpXDn -2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1BCxMjidPJC+iKunqj -o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjvJL1v -nxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG -5ERQL1TEqkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWq -pdEdnV1j6CTmNhTih60bWfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZb -dsLLO7XSAPCjDuGtbkD326C00EauFddEwk01+dIL8hf2rGbVJLJP0RyZwG71fet0 -BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/vgt2Fl43N+bYdJeimUV5 ------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=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Subject: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Label: "StartCom Certification Authority" -# Serial: 45 -# MD5 Fingerprint: c9:3b:0d:84:41:fc:a4:76:79:23:08:57:de:10:19:16 -# SHA1 Fingerprint: a3:f1:33:3f:e2:42:bf:cf:c5:d1:4e:8f:39:42:98:40:68:10:d1:a0 -# SHA256 Fingerprint: e1:78:90:ee:09:a3:fb:f4:f4:8b:9c:41:4a:17:d6:37:b7:a5:06:47:e9:bc:75:23:22:72:7f:cc:17:42:a9:11 ------BEGIN CERTIFICATE----- -MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg -Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM3WhcNMzYwOTE3MTk0NjM2WjB9 -MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi -U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh -cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA -A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk -pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf -OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C -Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT -Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi -HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM -Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w -+2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ -Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 -Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B -26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID -AQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD -VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFul -F2mHMMo0aEPQQa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCC -ATgwLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5w -ZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2ludGVybWVk -aWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENvbW1lcmNpYWwgKFN0 -YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0aGUg -c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0 -aWZpY2F0aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93 -d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgG -CWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1 -dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5fPGFf59Jb2vKXfuM/gTF -wWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWmN3PH/UvS -Ta0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst -0OcNOrg+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNc -pRJvkrKTlMeIFw6Ttn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl -CcWw0bdT82AUuoVpaiF8H3VhFyAXe2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVF -P0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA2MFrLH9ZXF2RsXAiV+uKa0hK -1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBsHvUwyKMQ5bLm -KhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE -JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ -8dCAWZvLMdibD4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnm -fyWl8kgAwKQB2j8= ------END CERTIFICATE----- - -# Issuer: CN=StartCom Certification Authority G2 O=StartCom Ltd. -# Subject: CN=StartCom Certification Authority G2 O=StartCom Ltd. -# Label: "StartCom Certification Authority G2" -# Serial: 59 -# MD5 Fingerprint: 78:4b:fb:9e:64:82:0a:d3:b8:4c:62:f3:64:f2:90:64 -# SHA1 Fingerprint: 31:f1:fd:68:22:63:20:ee:c6:3b:3f:9d:ea:4a:3e:53:7c:7c:39:17 -# SHA256 Fingerprint: c7:ba:65:67:de:93:a7:98:ae:1f:aa:79:1e:71:2d:37:8f:ae:1f:93:c4:39:7f:ea:44:1b:b7:cb:e6:fd:59:95 ------BEGIN CERTIFICATE----- -MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlm -aWNhdGlvbiBBdXRob3JpdHkgRzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1 -OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoG -A1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRzIwggIiMA0G -CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8Oo1XJ -JZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsD -vfOpL9HG4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnoo -D/Uefyf3lLE3PbfHkffiAez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/ -Q0kGi4xDuFby2X8hQxfqp0iVAXV16iulQ5XqFYSdCI0mblWbq9zSOdIxHWDirMxW -RST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbsO+wmETRIjfaAKxojAuuK -HDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8HvKTlXcxN -nw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM -0D4LnMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/i -UUjXuG+v+E5+M5iSFGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9 -Ha90OrInwMEePnWjFqmveiJdnxMaz6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHg -TuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE -AwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJKoZIhvcNAQEL -BQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K -2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfX -UfEpY9Z1zRbkJ4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl -6/2o1PXWT6RbdejF0mCy2wl+JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK -9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG/+gyRr61M3Z3qAFdlsHB1b6uJcDJ -HgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTcnIhT76IxW1hPkWLI -wpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/XldblhY -XzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5l -IxKVCCIcl85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoo -hdVddLHRDiBYmxOlsGOm7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulr -so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI ------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=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. (c) Aral\u0131k 2007 -# Subject: CN=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. (c) Aral\u0131k 2007 -# Label: "TURKTRUST Certificate Services Provider Root 2007" -# Serial: 1 -# MD5 Fingerprint: 2b:70:20:56:86:82:a0:18:c8:07:53:12:28:70:21:72 -# SHA1 Fingerprint: f1:7f:6f:b6:31:dc:99:e3:a3:c8:7f:fe:1c:f1:81:10:88:d9:60:33 -# SHA256 Fingerprint: 97:8c:d9:66:f2:fa:a0:7b:a7:aa:95:00:d9:c0:2e:9d:77:f2:cd:ad:a6:ad:6b:a7:4a:f4:b9:1c:66:59:3c:50 ------BEGIN CERTIFICATE----- -MIIEPTCCAyWgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvzE/MD0GA1UEAww2VMOc -UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx -c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKDFVUw5xS -S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg -SGl6bWV0bGVyaSBBLsWeLiAoYykgQXJhbMSxayAyMDA3MB4XDTA3MTIyNTE4Mzcx -OVoXDTE3MTIyMjE4MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1QgRWxla3Ry -b25payBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMAkGA1UEBhMC -VFIxDzANBgNVBAcMBkFua2FyYTFeMFwGA1UECgxVVMOcUktUUlVTVCBCaWxnaSDE -sGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkgQS7F -ni4gKGMpIEFyYWzEsWsgMjAwNzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBAKu3PgqMyKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9NYvDdE3ePYakqtdTyuTFY -KTsvP2qcb3N2Je40IIDu6rfwxArNK4aUyeNgsURSsloptJGXg9i3phQvKUmi8wUG -+7RP2qFsmmaf8EMJyupyj+sA1zU511YXRxcw9L6/P8JorzZAwan0qafoEGsIiveG -HtyaKhUG9qPw9ODHFNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/hTEST7ruToK4uT6P -IzdezKKqdfcYbwnTrqdUKDT74eA7YH2gvnmJhsifLfkKS8RQouf9eRbHegsYz85M -733WB2+Y8a+xwXrXgTW4qhe04MsCAwEAAaNCMEAwHQYDVR0OBBYEFCnFkKslrxHk -Yb+j/4hhkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G -CSqGSIb3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6QSU2TJ/sPx+EnWVUXKgW -AkD6bho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8JWcqdmBzlVPi5RX9ql2+I -aE1KBiY3iAIOtsbWcpnOa3faYjGkVh+uX4132l32iPwa2Z61gfAyuOOI0JzzaqC5 -mxRZNTZPz/OOXl0XrRWV2N2y1RVuAE6zS89mlOTgzbUF2mNXi+WzqtvALhyQRNsa -XRik7r4EW5nVcV9VZWRi1aKbBFmGyGJ353yCRWo9F7/snXUMrqNvWtMvmDb08PUZ -qxFdyKbjKlhqQgnDvZImZjINXQhVdP+MmNAKpoRq0Tl9 ------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=Autoridad de Certificacion Raiz del Estado Venezolano O=Sistema Nacional de Certificacion Electronica OU=Superintendencia de Servicios de Certificacion Electronica -# Subject: CN=PSCProcert O=Sistema Nacional de Certificacion Electronica OU=Proveedor de Certificados PROCERT -# Label: "PSCProcert" -# Serial: 11 -# MD5 Fingerprint: e6:24:e9:12:01:ae:0c:de:8e:85:c4:ce:a3:12:dd:ec -# SHA1 Fingerprint: 70:c1:8d:74:b4:28:81:0a:e4:fd:a5:75:d7:01:9f:99:b0:3d:50:74 -# SHA256 Fingerprint: 3c:fc:3c:14:d1:f6:84:ff:17:e3:8c:43:ca:44:0c:00:b9:67:ec:93:3e:8b:fe:06:4c:a1:d7:2c:90:f2:ad:b0 ------BEGIN CERTIFICATE----- -MIIJhjCCB26gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCCAR4xPjA8BgNVBAMTNUF1 -dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5lem9s -YW5vMQswCQYDVQQGEwJWRTEQMA4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECBMQRGlz -dHJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0 -aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMwQQYDVQQLEzpTdXBlcmludGVuZGVuY2lh -IGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNhMSUwIwYJ -KoZIhvcNAQkBFhZhY3JhaXpAc3VzY2VydGUuZ29iLnZlMB4XDTEwMTIyODE2NTEw -MFoXDTIwMTIyNTIzNTk1OVowgdExJjAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQHBy -b2NlcnQubmV0LnZlMQ8wDQYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB01pcmFuZGEx -KjAoBgNVBAsTIVByb3ZlZWRvciBkZSBDZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE2MDQG -A1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9u -aWNhMQswCQYDVQQGEwJWRTETMBEGA1UEAxMKUFNDUHJvY2VydDCCAiIwDQYJKoZI -hvcNAQEBBQADggIPADCCAgoCggIBANW39KOUM6FGqVVhSQ2oh3NekS1wwQYalNo9 -7BVCwfWMrmoX8Yqt/ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV3NZs+J74 -BCXfgI8Qhd19L3uA3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+saGiKLt38G -ieU89RLAu9MLmV+QfI4tL3czkkohRqipCKzx9hEC2ZUWno0vluYC3XXCFCpa1sl9 -JcLB/KpnheLsvtF8PPqv1W7/U0HU9TI4seJfxPmOEO8GqQKJ/+MMbpfg353bIdD0 -PghpbNjU5Db4g7ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6wKImG20qCZyFSTXai2 -0b1dCl53lKItwIKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHMosdEMXXqP+UH -0quhJZb25uSgXTcYOWEAM11G1ADEtMo88aKjPvM6/2kwLkDd9p+cJsmWN63nOaK/ -6mnbVSKVUyqUtd+tFjiBdWbjxywbk5yqjKPK2Ww8F22c3HxT4CAnQzb5EuE8XL1m -v6JpIzi4mWCZDlZTOpx+FIywBm/xhnaQr/2v/pDGj59/i5IjnOcVdo/Vi5QTcmn7 -K2FjiO/mpF7moxdqWEfLcU8UC17IAggmosvpr2uKGcfLFFb14dq12fy/czja+eev -bqQ34gcnAgMBAAGjggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/AgEBMDcGA1UdEgQw -MC6CD3N1c2NlcnRlLmdvYi52ZaAbBgVghl4CAqASDBBSSUYtRy0yMDAwNDAzNi0w -MB0GA1UdDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAVAGA1UdIwSCAUcwggFD -gBStuyIdxuDSAaj9dlBSk+2YwU2u06GCASakggEiMIIBHjE+MDwGA1UEAxM1QXV0 -b3JpZGFkIGRlIENlcnRpZmljYWNpb24gUmFpeiBkZWwgRXN0YWRvIFZlbmV6b2xh -bm8xCzAJBgNVBAYTAlZFMRAwDgYDVQQHEwdDYXJhY2FzMRkwFwYDVQQIExBEaXN0 -cml0byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5hY2lvbmFsIGRlIENlcnRp -ZmljYWNpb24gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOlN1cGVyaW50ZW5kZW5jaWEg -ZGUgU2VydmljaW9zIGRlIENlcnRpZmljYWNpb24gRWxlY3Ryb25pY2ExJTAjBgkq -hkiG9w0BCQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2IudmWCAQowDgYDVR0PAQH/BAQD -AgEGME0GA1UdEQRGMESCDnByb2NlcnQubmV0LnZloBUGBWCGXgIBoAwMClBTQy0w -MDAwMDKgGwYFYIZeAgKgEgwQUklGLUotMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEag -RKBChkBodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9sY3IvQ0VSVElGSUNBRE8t -UkFJWi1TSEEzODRDUkxERVIuY3JsMCOgIaAfhh1sZGFwOi8vYWNyYWl6LnN1c2Nl -cnRlLmdvYi52ZTA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9v -Y3NwLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoGCCsG -AQUFBwIBFh5odHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZIhvcN -AQELBQADggIBACtZ6yKZu4SqT96QxtGGcSOeSwORR3C7wJJg7ODU523G0+1ng3dS -1fLld6c2suNUvtm7CpsR72H0xpkzmfWvADmNg7+mvTV+LFwxNG9s2/NkAZiqlCxB -3RWGymspThbASfzXg0gTB1GEMVKIu4YXx2sviiCtxQuPcD4quxtxj7mkoP3Yldmv -Wb8lK5jpY5MvYB7Eqvh39YtsL+1+LrVPQA3uvFd359m21D+VJzog1eWuq2w1n8Gh -HVnchIHuTQfiSLaeS5UtQbHh6N5+LwUeaO6/u5BlOsju6rEYNxxik6SgMexxbJHm -pHmJWhSnFFAFTKQAVzAswbVhltw+HoSvOULP5dAssSS830DD7X9jSr3hTxJkhpXz -sOfIt+FTvZLm8wyWuevo5pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSMx4bE -qCaJqD8Zm4G7UaRKhqsLEQ+xrmNTbSjq3TNWOByyrYDT13K9mmyZY+gAu0F2Bbdb -mRiKw7gSXFbPVgx96OLP7bx0R/vu0xdOIk9W/1DzLuY5poLWccret9W6aAjtmcz9 -opLLabid+Qqkpj5PkygqYWwHJgD/ll9ohri4zspV4KuxPX+Y1zMOWj3YeMLEYC/H -YvBhkdI4sPaeVdtAgAUSM84dkpvRabP/v/GSCmE1P93+hvS84Bpxs2Km ------END CERTIFICATE----- - -# Issuer: CN=CA Disig Root R1 O=Disig a.s. -# Subject: CN=CA Disig Root R1 O=Disig a.s. -# Label: "CA Disig Root R1" -# Serial: 14052245610670616104 -# MD5 Fingerprint: be:ec:11:93:9a:f5:69:21:bc:d7:c1:c0:67:89:cc:2a -# SHA1 Fingerprint: 8e:1c:74:f8:a6:20:b9:e5:8a:f4:61:fa:ec:2b:47:56:51:1a:52:c6 -# SHA256 Fingerprint: f9:6f:23:f4:c3:e7:9c:07:7a:46:98:8d:5a:f5:90:06:76:a0:f0:39:cb:64:5d:d1:75:49:b2:16:c8:24:40:ce ------BEGIN CERTIFICATE----- -MIIFaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNV -BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu -MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIxMB4XDTEyMDcxOTA5MDY1NloXDTQy -MDcxOTA5MDY1NlowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx -EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjEw -ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCqw3j33Jijp1pedxiy3QRk -D2P9m5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/o -OI7bm+V8u8yN63Vz4STN5qctGS7Y1oprFOsIYgrY3LMATcMjfF9DCCMyEtztDK3A -fQ+lekLZWnDZv6fXARz2m6uOt0qGeKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r5OJe -IgpFy4QxTaz+29FHuvlglzmxZcfe+5nkCiKxLU3lSCZpq+Kq8/v8kiky6bM+TR8n -oc2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+DiR0jm3hTaYVKvJrT1cU/J19IG32PK -/yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZd69fwX3se72V6FglcXM6pM6vpmumwKj -rckWtc7dXpl4fho5frLABaTAgqWjR56M6ly2vGfb5ipN0gTco65F97yLnByn1tUD -3AjLLhbKXEAz6GfDLuemROoRRRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSRE -7cderVC6xkGbrPAXZcD4XW9boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1fkC -yC2fg69naQanMVXVz0tv/wQFx1isXxYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2BLd -qvLmTZtJ5cUoobqwWsagtQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud -DwEB/wQEAwIBBjAdBgNVHQ4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ04IwDQYJKoZI -hvcNAQEFBQADggIBADKL9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR0rBNR -xVgYZk2C2tXck8An4b58n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D65hXlaA -SfX8MPWbTx9BLxyE04nH4toCdu0Jz2zBuByDHBb6lM19oMgY0sidbvW9adRtPTXo -HqJPYNcHKfyyo6SdbhWSVhlMCrDpfNIZTUJG7L399ldb3Zh+pE3McgODWF3vkzpB -emOqfDqo9ayk0d2iLbYq/J8BjuIQscTK5GfbVSUZP/3oNn6z4eGBrxEWi1CXYBmC -AMBrTXO40RMHPuq2MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85YmLLW1AL14FABZyb -7bq2ix4Eb5YgOe2kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4funodKSds+x -DzdYpPJScWc/DIh4gInByLUfkmO+p3qKViwaqKactV2zY9ATIKHrkWzQjX2v3wvk -F7mGnjixlAxYjOBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fyexn9GtePyfqF -a3qdnom2piiZk4hA9z7NUaPK6u95RyG1/jLix8NRb76AdPCkwzryT+lf3xkK8jsT -Q6wxpLPn6/wY1gGp8yqPNg7rtLG8t0zJa7+h89n07eLw4+1knj0vllJPgFOL ------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=Certification Authority of WoSign O=WoSign CA Limited -# Subject: CN=Certification Authority of WoSign O=WoSign CA Limited -# Label: "WoSign" -# Serial: 125491772294754854453622855443212256657 -# MD5 Fingerprint: a1:f2:f9:b5:d2:c8:7a:74:b8:f3:05:f1:d7:e1:84:8d -# SHA1 Fingerprint: b9:42:94:bf:91:ea:8f:b6:4b:e6:10:97:c7:fb:00:13:59:b6:76:cb -# SHA256 Fingerprint: 4b:22:d5:a6:ae:c9:9f:3c:db:79:aa:5e:c0:68:38:47:9c:d5:ec:ba:71:64:f7:f2:2d:c1:d6:5f:63:d8:57:08 ------BEGIN CERTIFICATE----- -MIIFdjCCA16gAwIBAgIQXmjWEXGUY1BWAGjzPsnFkTANBgkqhkiG9w0BAQUFADBV -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxKjAoBgNV -BAMTIUNlcnRpZmljYXRpb24gQXV0aG9yaXR5IG9mIFdvU2lnbjAeFw0wOTA4MDgw -MTAwMDFaFw0zOTA4MDgwMTAwMDFaMFUxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFX -b1NpZ24gQ0EgTGltaXRlZDEqMCgGA1UEAxMhQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgb2YgV29TaWduMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvcqN -rLiRFVaXe2tcesLea9mhsMMQI/qnobLMMfo+2aYpbxY94Gv4uEBf2zmoAHqLoE1U -fcIiePyOCbiohdfMlZdLdNiefvAA5A6JrkkoRBoQmTIPJYhTpA2zDxIIFgsDcScc -f+Hb0v1naMQFXQoOXXDX2JegvFNBmpGN9J42Znp+VsGQX+axaCA2pIwkLCxHC1l2 -ZjC1vt7tj/id07sBMOby8w7gLJKA84X5KIq0VC6a7fd2/BVoFutKbOsuEo/Uz/4M -x1wdC34FMr5esAkqQtXJTpCzWQ27en7N1QhatH/YHGkR+ScPewavVIMYe+HdVHpR -aG53/Ma/UkpmRqGyZxq7o093oL5d//xWC0Nyd5DKnvnyOfUNqfTq1+ezEC8wQjch -zDBwyYaYD8xYTYO7feUapTeNtqwylwA6Y3EkHp43xP901DfA4v6IRmAR3Qg/UDar -uHqklWJqbrDKaiFaafPz+x1wOZXzp26mgYmhiMU7ccqjUu6Du/2gd/Tkb+dC221K -mYo0SLwX3OSACCK28jHAPwQ+658geda4BmRkAjHXqc1S+4RFaQkAKtxVi8QGRkvA -Sh0JWzko/amrzgD5LkhLJuYwTKVYyrREgk/nkR4zw7CT/xH8gdLKH3Ep3XZPkiWv -HYG3Dy+MwwbMLyejSuQOmbp8HkUff6oZRZb9/D0CAwEAAaNCMEAwDgYDVR0PAQH/ -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFOFmzw7R8bNLtwYgFP6H -EtX2/vs+MA0GCSqGSIb3DQEBBQUAA4ICAQCoy3JAsnbBfnv8rWTjMnvMPLZdRtP1 -LOJwXcgu2AZ9mNELIaCJWSQBnfmvCX0KI4I01fx8cpm5o9dU9OpScA7F9dY74ToJ -MuYhOZO9sxXqT2r09Ys/L3yNWC7F4TmgPsc9SnOeQHrAK2GpZ8nzJLmzbVUsWh2e -JXLOC62qx1ViC777Y7NhRCOjy+EaDveaBk3e1CNOIZZbOVtXHS9dCF4Jef98l7VN -g64N1uajeeAz0JmWAjCnPv/So0M/BVoG6kQC2nz4SNAzqfkHx5Xh9T71XXG68pWp -dIhhWeO/yloTunK0jF02h+mmxTwTv97QRCbut+wucPrXnbes5cVAWubXbHssw1ab -R80LzvobtCHXt2a49CUwi1wNuepnsvRtrtWhnk/Yn+knArAdBtaP4/tIEp9/EaEQ -PkxROpaw0RPxx9gmrjrKkcRpnd8BKWRRb2jaFOwIQZeQjdCygPLPwj2/kWjFgGce -xGATVdVhmVd8upUPYUk6ynW8yQqTP2cOEvIo4jEbwFcW3wh8GcF+Dx+FHgo2fFt+ -J7x6v+Db9NpSvd4MVHAxkUOVyLzwPt0JfjBkUO1/AaQzZ01oT74V77D2AhGiGxMl -OtzCWfHjXEa7ZywCRuoeSKbmW9m1vFGikpbbqsY3Iqb+zCB0oy2pLmvLwIIRIbWT -ee5Ehr7XHuQe+w== ------END CERTIFICATE----- - -# Issuer: CN=CA \u6c83\u901a\u6839\u8bc1\u4e66 O=WoSign CA Limited -# Subject: CN=CA \u6c83\u901a\u6839\u8bc1\u4e66 O=WoSign CA Limited -# Label: "WoSign China" -# Serial: 106921963437422998931660691310149453965 -# MD5 Fingerprint: 78:83:5b:52:16:76:c4:24:3b:83:78:e8:ac:da:9a:93 -# SHA1 Fingerprint: 16:32:47:8d:89:f9:21:3a:92:00:85:63:f5:a4:a7:d3:12:40:8a:d6 -# SHA256 Fingerprint: d6:f0:34:bd:94:aa:23:3f:02:97:ec:a4:24:5b:28:39:73:e4:47:aa:59:0f:31:0c:77:f4:8f:df:83:11:22:54 ------BEGIN CERTIFICATE----- -MIIFWDCCA0CgAwIBAgIQUHBrzdgT/BtOOzNy0hFIjTANBgkqhkiG9w0BAQsFADBG -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxGzAZBgNV -BAMMEkNBIOayg+mAmuagueivgeS5pjAeFw0wOTA4MDgwMTAwMDFaFw0zOTA4MDgw -MTAwMDFaMEYxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFXb1NpZ24gQ0EgTGltaXRl -ZDEbMBkGA1UEAwwSQ0Eg5rKD6YCa5qC56K+B5LmmMIICIjANBgkqhkiG9w0BAQEF -AAOCAg8AMIICCgKCAgEA0EkhHiX8h8EqwqzbdoYGTufQdDTc7WU1/FDWiD+k8H/r -D195L4mx/bxjWDeTmzj4t1up+thxx7S8gJeNbEvxUNUqKaqoGXqW5pWOdO2XCld1 -9AXbbQs5uQF/qvbW2mzmBeCkTVL829B0txGMe41P/4eDrv8FAxNXUDf+jJZSEExf -v5RxadmWPgxDT74wwJ85dE8GRV2j1lY5aAfMh09Qd5Nx2UQIsYo06Yms25tO4dnk -UkWMLhQfkWsZHWgpLFbE4h4TV2TwYeO5Ed+w4VegG63XX9Gv2ystP9Bojg/qnw+L -NVgbExz03jWhCl3W6t8Sb8D7aQdGctyB9gQjF+BNdeFyb7Ao65vh4YOhn0pdr8yb -+gIgthhid5E7o9Vlrdx8kHccREGkSovrlXLp9glk3Kgtn3R46MGiCWOc76DbT52V -qyBPt7D3h1ymoOQ3OMdc4zUPLK2jgKLsLl3Az+2LBcLmc272idX10kaO6m1jGx6K -yX2m+Jzr5dVjhU1zZmkR/sgO9MHHZklTfuQZa/HpelmjbX7FF+Ynxu8b22/8DU0G -AbQOXDBGVWCvOGU6yke6rCzMRh+yRpY/8+0mBe53oWprfi1tWFxK1I5nuPHa1UaK -J/kR8slC/k7e3x9cxKSGhxYzoacXGKUN5AXlK8IrC6KVkLn9YDxOiT7nnO4fuwEC -AwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O -BBYEFOBNv9ybQV0T6GTwp+kVpOGBwboxMA0GCSqGSIb3DQEBCwUAA4ICAQBqinA4 -WbbaixjIvirTthnVZil6Xc1bL3McJk6jfW+rtylNpumlEYOnOXOvEESS5iVdT2H6 -yAa+Tkvv/vMx/sZ8cApBWNromUuWyXi8mHwCKe0JgOYKOoICKuLJL8hWGSbueBwj -/feTZU7n85iYr83d2Z5AiDEoOqsuC7CsDCT6eiaY8xJhEPRdF/d+4niXVOKM6Cm6 -jBAyvd0zaziGfjk9DgNyp115j0WKWa5bIW4xRtVZjc8VX90xJc/bYNaBRHIpAlf2 -ltTW/+op2znFuCyKGo3Oy+dCMYYFaA6eFN0AkLppRQjbbpCBhqcqBT/mhDn4t/lX -X0ykeVoQDF7Va/81XwVRHmyjdanPUIPTfPRm94KNPQx96N97qA4bLJyuQHCH2u2n -FoJavjVsIE4iYdm8UXrNemHcSxH5/mc0zy4EZmFcV5cjjPOGG0jfKq+nwf/Yjj4D -u9gqsPoUJbJRa4ZDhS4HIxaAjUz7tGM7zMN07RujHv41D198HRaG9Q7DlfEvr10l -O1Hm13ZBONFLAzkopR6RctR9q5czxNM+4Gm2KHmgCY0c0f9BckgG/Jou5yD5m6Le -ie2uPAmvylezkolwQOQvT8Jwg0DXJCxr5wkf09XHwQj02w47HAcLQxGEIYbpgNR1 -2KvxAmLBsX5VYc8T1yaw15zLKYs4SgsOkI26oQ== ------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=Certification Authority of WoSign G2 O=WoSign CA Limited -# Subject: CN=Certification Authority of WoSign G2 O=WoSign CA Limited -# Label: "Certification Authority of WoSign G2" -# Serial: 142423943073812161787490648904721057092 -# MD5 Fingerprint: c8:1c:7d:19:aa:cb:71:93:f2:50:f8:52:a8:1e:ba:60 -# SHA1 Fingerprint: fb:ed:dc:90:65:b7:27:20:37:bc:55:0c:9c:56:de:bb:f2:78:94:e1 -# SHA256 Fingerprint: d4:87:a5:6f:83:b0:74:82:e8:5e:96:33:94:c1:ec:c2:c9:e5:1d:09:03:ee:94:6b:02:c3:01:58:1e:d9:9e:16 ------BEGIN CERTIFICATE----- -MIIDfDCCAmSgAwIBAgIQayXaioidfLwPBbOxemFFRDANBgkqhkiG9w0BAQsFADBY -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxLTArBgNV -BAMTJENlcnRpZmljYXRpb24gQXV0aG9yaXR5IG9mIFdvU2lnbiBHMjAeFw0xNDEx -MDgwMDU4NThaFw00NDExMDgwMDU4NThaMFgxCzAJBgNVBAYTAkNOMRowGAYDVQQK -ExFXb1NpZ24gQ0EgTGltaXRlZDEtMCsGA1UEAxMkQ2VydGlmaWNhdGlvbiBBdXRo -b3JpdHkgb2YgV29TaWduIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEAvsXEoCKASU+/2YcRxlPhuw+9YH+v9oIOH9ywjj2X4FA8jzrvZjtFB5sg+OPX -JYY1kBaiXW8wGQiHC38Gsp1ij96vkqVg1CuAmlI/9ZqD6TRay9nVYlzmDuDfBpgO -gHzKtB0TiGsOqCR3A9DuW/PKaZE1OVbFbeP3PU9ekzgkyhjpJMuSA93MHD0JcOQg -5PGurLtzaaNjOg9FD6FKmsLRY6zLEPg95k4ot+vElbGs/V6r+kHLXZ1L3PR8du9n -fwB6jdKgGlxNIuG12t12s9R23164i5jIFFTMaxeSt+BKv0mUYQs4kI9dJGwlezt5 -2eJ+na2fmKEG/HgUYFf47oB3sQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD -VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU+mCp62XF3RYUCE4MD42b4Pdkr2cwDQYJ -KoZIhvcNAQELBQADggEBAFfDejaCnI2Y4qtAqkePx6db7XznPWZaOzG73/MWM5H8 -fHulwqZm46qwtyeYP0nXYGdnPzZPSsvxFPpahygc7Y9BMsaV+X3avXtbwrAh449G -3CE4Q3RM+zD4F3LBMvzIkRfEzFg3TgvMWvchNSiDbGAtROtSjFA9tWwS1/oJu2yy -SrHFieT801LYYRf+epSEj3m2M1m6D8QL4nCgS3gu+sif/a+RZQp4OBXllxcU3fng -LDT4ONCEIgDAFFEYKwLcMFrw6AF8NTojrwjkr6qOKEJJLvD1mTS+7Q9LGOHSJDy7 -XUe3IfKN0QqZjuNuPq1w4I+5ysxugTH2e5x6eeRncRg= ------END CERTIFICATE----- - -# Issuer: CN=CA WoSign ECC Root O=WoSign CA Limited -# Subject: CN=CA WoSign ECC Root O=WoSign CA Limited -# Label: "CA WoSign ECC Root" -# Serial: 138625735294506723296996289575837012112 -# MD5 Fingerprint: 80:c6:53:ee:61:82:28:72:f0:ff:21:b9:17:ca:b2:20 -# SHA1 Fingerprint: d2:7a:d2:be:ed:94:c0:a1:3c:c7:25:21:ea:5d:71:be:81:19:f3:2b -# SHA256 Fingerprint: 8b:45:da:1c:06:f7:91:eb:0c:ab:f2:6b:e5:88:f5:fb:23:16:5c:2e:61:4b:f8:85:56:2d:0d:ce:50:b2:9b:02 ------BEGIN CERTIFICATE----- -MIICCTCCAY+gAwIBAgIQaEpYcIBr8I8C+vbe6LCQkDAKBggqhkjOPQQDAzBGMQsw -CQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxGzAZBgNVBAMT -EkNBIFdvU2lnbiBFQ0MgUm9vdDAeFw0xNDExMDgwMDU4NThaFw00NDExMDgwMDU4 -NThaMEYxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFXb1NpZ24gQ0EgTGltaXRlZDEb -MBkGA1UEAxMSQ0EgV29TaWduIEVDQyBSb290MHYwEAYHKoZIzj0CAQYFK4EEACID -YgAE4f2OuEMkq5Z7hcK6C62N4DrjJLnSsb6IOsq/Srj57ywvr1FQPEd1bPiUt5v8 -KB7FVMxjnRZLU8HnIKvNrCXSf4/CwVqCXjCLelTOA7WRf6qU0NGKSMyCBSah1VES -1ns2o0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E -FgQUqv3VWqP2h4syhf3RMluARZPzA7gwCgYIKoZIzj0EAwMDaAAwZQIxAOSkhLCB -1T2wdKyUpOgOPQB0TKGXa/kNUTyh2Tv0Daupn75OcsqF1NnstTJFGG+rrQIwfcf3 -aWMvoeGY7xMQ0Xk/0f7qO3/eVvSQsRUR2LIiFdAvwyYua/GRspBl9JrmkO5K ------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----- -MIIFwzCCA6ugAwIBAgIUCn6m30tEntpqJIWe5rgV0xZ/u7EwDQYJKoZIhvcNAQEL -BQAwRjELMAkGA1UEBhMCTFUxFjAUBgNVBAoMDUx1eFRydXN0IFMuQS4xHzAdBgNV -BAMMFkx1eFRydXN0IEdsb2JhbCBSb290IDIwHhcNMTUwMzA1MTMyMTU3WhcNMzUw -MzA1MTMyMTU3WjBGMQswCQYDVQQGEwJMVTEWMBQGA1UECgwNTHV4VHJ1c3QgUy5B -LjEfMB0GA1UEAwwWTHV4VHJ1c3QgR2xvYmFsIFJvb3QgMjCCAiIwDQYJKoZIhvcN -AQEBBQADggIPADCCAgoCggIBANeFl78RmOnwYoNMPIf5U2o3C/IPPIfOb9wmKb3F -ibrJgz337spbxm1Jc7TJRqMbNBM/wYlFV/TZsfs2ZUv7COJIcRHIbjuend+JZTem -hfY7RBi2xjcwYkSSl2l9QjAk5A0MiWtj3sXh306pFGxT4GHO9hcvHTy95iJMHZP1 -EMShduxq3sVs35a0VkBCwGKSMKEtFZSg0iAGCW5qbeXrt77U8PEVfIvmTroTzEsn -Xpk8F12PgX8zPU/TPxvsXD/wPEx1bvKm1Z3aLQdjAsZy6ZS8TEmVT4hSyNvoaYL4 -zDRbIvCGp4m9SAptZoFtyMhk+wHh9OHe2Z7d21vUKpkmFRseTJIpgp7VkoGSQXAZ -96Tlk0u8d2cx3Rz9MXANF5kM+Qw5GSoXtTBxVdUPrljhPS80m8+f9niFwpN6cj5m -j5wWEWCPnolvZ77gR1o7DJpni89Gxq44o/KnvObWhWszJHAiS8sIm7vI+AIpHb4g -DEa/a4ebsypmQjVGbKq6rfmYe+lQVRQxv7HaLe2ArWgk+2mr2HETMOZns4dA/Yl+ -8kPREd8vZS9kzl8UubG/Mb2HeFpZZYiq/FkySIbWTLkpS5XTdvN3JW1CHDiDTf2j -X5t/Lax5Gw5CMZdjpPuKadUiDTSQMC6otOBttpSsvItO13D8xTiOZCXhTTmQzsmH -hFhxAgMBAAGjgagwgaUwDwYDVR0TAQH/BAUwAwEB/zBCBgNVHSAEOzA5MDcGByuB -KwEBAQowLDAqBggrBgEFBQcCARYeaHR0cHM6Ly9yZXBvc2l0b3J5Lmx1eHRydXN0 -Lmx1MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBT/GCh2+UgFLKGu8SsbK7JT -+Et8szAdBgNVHQ4EFgQU/xgodvlIBSyhrvErGyuyU/hLfLMwDQYJKoZIhvcNAQEL -BQADggIBAGoZFO1uecEsh9QNcH7X9njJCwROxLHOk3D+sFTAMs2ZMGQXvw/l4jP9 -BzZAcg4atmpZ1gDlaCDdLnINH2pkMSCEfUmmWjfrRcmF9dTHF5kH5ptV5AzoqbTO -jFu1EVzPig4N1qx3gf4ynCSecs5U89BvolbW7MM3LGVYvlcAGvI1+ut7MV3CwRI9 -loGIlonBWVx65n9wNOeD4rHh4bhY79SV5GCc8JaXcozrhAIuZY+kt9J/Z93I055c -qqmkoCUUBpvsT34tC38ddfEz2O3OuHVtPlu5mB0xDVbYQw8wkbIEa91WvpWAVWe+ -2M2D2RjuLg+GLZKecBPs3lHJQ3gCpU3I+V/EkVhGFndadKpAvAefMLmx9xIX3eP/ -JEAdemrRTxgKqpAd60Ae36EeRJIQmvKN4dFLRp7oRUKX6kWZ8+xm1QL68qZKJKre -zrnK+T+Tb/mjuuqlPpmt/f97mfVl7vBZKGfXkJWkE4SphMHozs51k2MavDzq1WQf -LSoSOcbDWjLtR5EWDrw4wVDej8oqkDQc7kGUnF4ZLvhFSZl0kbAEb+MEWrGrKqv+ -x9CWttrhSmQGbmBNvUJO/3jaJMobtNeWOWyu8Q6qp31IiyBMz2TWuJdGsE7RKlY6 -oJO9r4Ak4Ap+58rVyuiFVdw2KuGUaJPHZnJED4AhMmwlxyOAgwrr ------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----- diff --git a/env/lib/python3.4/site-packages/certifi/core.py b/env/lib/python3.4/site-packages/certifi/core.py deleted file mode 100644 index f41d3fd..0000000 --- a/env/lib/python3.4/site-packages/certifi/core.py +++ /dev/null @@ -1,36 +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 is being deprecated.", - DeprecatedBundleWarning - ) - f = os.path.dirname(__file__) - return os.path.join(f, 'weak.pem') - -if __name__ == '__main__': - print(where()) diff --git a/env/lib/python3.4/site-packages/certifi/old_root.pem b/env/lib/python3.4/site-packages/certifi/old_root.pem deleted file mode 100644 index af30ea7..0000000 --- a/env/lib/python3.4/site-packages/certifi/old_root.pem +++ /dev/null @@ -1,414 +0,0 @@ -# Issuer: CN=Entrust.net Secure Server Certification Authority O=Entrust.net OU=www.entrust.net/CPS incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Subject: CN=Entrust.net Secure Server Certification Authority O=Entrust.net OU=www.entrust.net/CPS incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Label: "Entrust.net Secure Server CA" -# Serial: 927650371 -# MD5 Fingerprint: df:f2:80:73:cc:f1:e6:61:73:fc:f5:42:e9:c5:7c:ee -# SHA1 Fingerprint: 99:a6:9b:e6:1a:fe:88:6b:4d:2b:82:00:7c:b8:54:fc:31:7e:15:39 -# SHA256 Fingerprint: 62:f2:40:27:8c:56:4c:4d:d8:bf:7d:9d:4f:6f:36:6e:a8:94:d2:2f:5f:34:d9:89:a9:83:ac:ec:2f:ff:ed:50 ------BEGIN CERTIFICATE----- -MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC -VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u -ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc -KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u -ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 -MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE -ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j -b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF -bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg -U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA -A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ -I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 -wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC -AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb -oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 -BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p -dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk -MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp -b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu -dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 -MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi -E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa -MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI -hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN -95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd -2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 2 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 2 Policy Validation Authority -# Label: "ValiCert Class 2 VA" -# Serial: 1 -# MD5 Fingerprint: a9:23:75:9b:ba:49:36:6e:31:c2:db:f2:e7:66:ba:87 -# SHA1 Fingerprint: 31:7a:2a:d0:7f:2b:33:5e:f5:a1:c3:4e:4b:57:e8:b7:d8:f1:fc:a6 -# SHA256 Fingerprint: 58:d0:17:27:9c:d4:dc:63:ab:dd:b1:96:a6:c9:90:6c:30:c4:e0:87:83:ea:e8:c1:60:99:54:d6:93:55:59:6b ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMTk1NFoXDTE5MDYy -NjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDOOnHK5avIWZJV16vY -dA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVCCSRrCl6zfN1SLUzm1NZ9 -WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7RfZHM047QS -v4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9v -UJSZSWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTu -IYEZoDJJKPTEjlbVUjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwC -W/POuZ6lcg5Ktz885hZo+L7tdEy8W9ViH0Pd ------END CERTIFICATE----- - -# Issuer: CN=NetLock Expressz (Class C) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Subject: CN=NetLock Expressz (Class C) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Label: "NetLock Express (Class C) Root" -# Serial: 104 -# MD5 Fingerprint: 4f:eb:f1:f0:70:c2:80:63:5d:58:9f:da:12:3c:a9:c4 -# SHA1 Fingerprint: e3:92:51:2f:0a:cf:f5:05:df:f6:de:06:7f:75:37:e1:65:ea:57:4b -# SHA256 Fingerprint: 0b:5e:ed:4e:84:64:03:cf:55:e0:65:84:84:40:ed:2a:82:75:8b:f5:b9:aa:1f:25:3d:46:13:cf:a0:80:ff:3f ------BEGIN CERTIFICATE----- -MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUx -ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 -b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQD -EytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBDKSBUYW51c2l0dmFueWtpYWRvMB4X -DTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJBgNVBAYTAkhVMREw -DwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9u -c2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMr -TmV0TG9jayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzAN -BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNA -OoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3ZW3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC -2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63euyucYT2BDMIJTLrdKwW -RMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQwDgYDVR0P -AQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEW -ggJNRklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0 -YWxhbm9zIFN6b2xnYWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFz -b2sgYWxhcGphbiBrZXN6dWx0LiBBIGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBO -ZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1iaXp0b3NpdGFzYSB2ZWRpLiBB -IGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0ZWxlIGF6IGVs -b2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs -ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25s -YXBqYW4gYSBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kg -a2VyaGV0byBheiBlbGxlbm9yemVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4g -SU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5kIHRoZSB1c2Ugb2YgdGhpcyBjZXJ0 -aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQUyBhdmFpbGFibGUg -YXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwgYXQg -Y3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmY -ta3UzbM2xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2g -pO0u9f38vf5NNwgMvOOWgyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4 -Fp1hBWeAyNDYpQcCNJgEjTME1A== ------END CERTIFICATE----- - -# Issuer: CN=NetLock Uzleti (Class B) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Subject: CN=NetLock Uzleti (Class B) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Label: "NetLock Business (Class B) Root" -# Serial: 105 -# MD5 Fingerprint: 39:16:aa:b9:6a:41:e1:14:69:df:9e:6c:3b:72:dc:b6 -# SHA1 Fingerprint: 87:9f:4b:ee:05:df:98:58:3b:e3:60:d6:33:e7:0d:3f:fe:98:71:af -# SHA256 Fingerprint: 39:df:7b:68:2b:7b:93:8f:84:71:54:81:cc:de:8d:60:d8:f2:2e:c5:98:87:7d:0a:aa:c1:2b:59:18:2b:03:12 ------BEGIN CERTIFICATE----- -MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUx -ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 -b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQD -EylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikgVGFudXNpdHZhbnlraWFkbzAeFw05 -OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYDVQQGEwJIVTERMA8G -A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh -Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5l -dExvY2sgVXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqG -SIb3DQEBAQUAA4GNADCBiQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xK -gZjupNTKihe5In+DCnVMm8Bp2GQ5o+2So/1bXHQawEfKOml2mrriRBf8TKPV/riX -iK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr1nGTLbO/CVRY7QbrqHvc -Q7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8E -BAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1G -SUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFu -b3MgU3pvbGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBh -bGFwamFuIGtlc3p1bHQuIEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExv -Y2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGln -aXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0 -IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh -c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGph -biBhIGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJo -ZXRvIGF6IGVsbGVub3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBP -UlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmlj -YXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBo -dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNA -bmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06 -sPgzTEdM43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXa -n3BukxowOR0w2y7jfLKRstE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKS -NitjrFgBazMpUIaD8QFI ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 3 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 3 Policy Validation Authority -# Label: "RSA Root Certificate 1" -# Serial: 1 -# MD5 Fingerprint: a2:6f:53:b7:ee:40:db:4a:68:e7:fa:18:d9:10:4b:72 -# SHA1 Fingerprint: 69:bd:8c:f4:9c:d3:00:fb:59:2e:17:93:ca:55:6a:f3:ec:aa:35:fb -# SHA256 Fingerprint: bc:23:f9:8a:31:3c:b9:2d:e3:bb:fc:3a:5a:9f:44:61:ac:39:49:4c:4a:e1:5a:9e:9d:f1:31:e9:9b:73:01:9a ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMjIzM1oXDTE5MDYy -NjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjmFGWHOjVsQaBalfD -cnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td3zZxFJmP3MKS8edgkpfs -2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89HBFx1cQqY -JJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliE -Zwgs3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJ -n0WuPIqpsHEzXcjFV9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/A -PhmcGcwTTYJBtYze4D1gCCAPRX5ron+jjBXu ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 1 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 1 Policy Validation Authority -# Label: "ValiCert Class 1 VA" -# Serial: 1 -# MD5 Fingerprint: 65:58:ab:15:ad:57:6c:1e:a8:a7:b5:69:ac:bf:ff:eb -# SHA1 Fingerprint: e5:df:74:3c:b6:01:c4:9b:98:43:dc:ab:8c:e8:6a:81:10:9f:e4:8e -# SHA256 Fingerprint: f4:c1:49:55:1a:30:13:a3:5b:c7:bf:fe:17:a7:f3:44:9b:c1:ab:5b:5a:0a:e7:4b:06:c2:3b:90:00:4c:01:04 ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIyMjM0OFoXDTE5MDYy -NTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9Y -LqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIiGQj4/xEjm84H9b9pGib+ -TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCmDuJWBQ8Y -TfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0 -LBwGlN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLW -I8sogTLDAHkY7FkXicnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPw -nXS3qT6gpf+2SQMT2iLM7XGCK5nPOrf1LXLI ------END CERTIFICATE----- - -# Issuer: CN=Equifax Secure eBusiness CA-1 O=Equifax Secure Inc. -# Subject: CN=Equifax Secure eBusiness CA-1 O=Equifax Secure Inc. -# Label: "Equifax Secure eBusiness CA 1" -# Serial: 4 -# MD5 Fingerprint: 64:9c:ef:2e:44:fc:c6:8f:52:07:d0:51:73:8f:cb:3d -# SHA1 Fingerprint: da:40:18:8b:91:89:a3:ed:ee:ae:da:97:fe:2f:9d:f5:b7:d1:8a:41 -# SHA256 Fingerprint: cf:56:ff:46:a4:a1:86:10:9d:d9:65:84:b5:ee:b5:8a:51:0c:42:75:b0:e5:f9:4f:40:bb:ae:86:5e:19:f6:73 ------BEGIN CERTIFICATE----- -MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBT -ZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQw -MDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5j -LjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwgZ8wDQYJ -KoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ1MRo -RvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBu -WqDZQu4aIZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKw -Env+j6YDAgMBAAGjZjBkMBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTAD -AQH/MB8GA1UdIwQYMBaAFEp4MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRK -eDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZM -zfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+ -WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN -/Bf+KpYrtWKmpj29f5JZzVoqgrI3eQ== ------END CERTIFICATE----- - -# Issuer: CN=Equifax Secure Global eBusiness CA-1 O=Equifax Secure Inc. -# Subject: CN=Equifax Secure Global eBusiness CA-1 O=Equifax Secure Inc. -# Label: "Equifax Secure Global eBusiness CA" -# Serial: 1 -# MD5 Fingerprint: 8f:5d:77:06:27:c4:98:3c:5b:93:78:e7:d7:7d:9b:cc -# SHA1 Fingerprint: 7e:78:4a:10:1c:82:65:cc:2d:e1:f1:6d:47:b4:40:ca:d9:0a:19:45 -# SHA256 Fingerprint: 5f:0b:62:ea:b5:e3:53:ea:65:21:65:16:58:fb:b6:53:59:f4:43:28:0a:4a:fb:d1:04:d7:7d:10:f9:f0:4c:07 ------BEGIN CERTIFICATE----- -MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBT -ZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIw -MDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0VxdWlmYXggU2Vj -dXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEdsb2JhbCBlQnVzaW5l -c3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRVPEnC -UdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc -58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/ -o5brhTMhHD4ePmBudpxnhcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAH -MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1dr -aGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUA -A4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkA -Z70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv -8qIYNMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV ------END CERTIFICATE----- - -# Issuer: CN=Thawte Premium Server CA O=Thawte Consulting cc OU=Certification Services Division -# Subject: CN=Thawte Premium Server CA O=Thawte Consulting cc OU=Certification Services Division -# Label: "Thawte Premium Server CA" -# Serial: 1 -# MD5 Fingerprint: 06:9f:69:79:16:66:90:02:1b:8c:8c:a2:c3:07:6f:3a -# SHA1 Fingerprint: 62:7f:8d:78:27:65:63:99:d2:7d:7f:90:44:c9:fe:b3:f3:3e:fa:9a -# SHA256 Fingerprint: ab:70:36:36:5c:71:54:aa:29:c2:c2:9f:5d:41:91:16:3b:16:2a:22:25:01:13:57:d5:6d:07:ff:a7:bc:1f:72 ------BEGIN CERTIFICATE----- -MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFByZW1pdW0gU2Vy -dmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZlckB0aGF3dGUuY29t -MB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYTAlpB -MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsG -A1UEChMUVGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRp -b24gU2VydmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNl -cnZlciBDQTEoMCYGCSqGSIb3DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNv -bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkE -VdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQ -ug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMR -uHM/qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI -hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JM -pAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcUQg== ------END CERTIFICATE----- - -# Issuer: CN=Thawte Server CA O=Thawte Consulting cc OU=Certification Services Division -# Subject: CN=Thawte Server CA O=Thawte Consulting cc OU=Certification Services Division -# Label: "Thawte Server CA" -# Serial: 1 -# MD5 Fingerprint: c5:70:c4:a2:ed:53:78:0c:c8:10:53:81:64:cb:d0:1d -# SHA1 Fingerprint: 23:e5:94:94:51:95:f2:41:48:03:b4:d5:64:d2:a3:a3:f5:d8:8b:8c -# SHA256 Fingerprint: b4:41:0b:73:e2:e6:ea:ca:47:fb:c4:2f:8f:a4:01:8a:f4:38:1d:c5:4c:fa:a8:44:50:46:1e:ed:09:45:4d:e9 ------BEGIN CERTIFICATE----- -MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm -MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTYwODAx -MDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT -DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3 -dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNl -cyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3 -DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD -gY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91 -yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCX -L+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGj -EzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG -7oWDTSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e -QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZ -qdq5snUb9kLy78fyGPmJvKP/iiMucEc= ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Label: "Verisign Class 3 Public Primary Certification Authority" -# Serial: 149843929435818692848040365716851702463 -# MD5 Fingerprint: 10:fc:63:5d:f6:26:3e:0d:f3:25:be:5f:79:cd:67:67 -# SHA1 Fingerprint: 74:2c:31:92:e6:07:e4:24:eb:45:49:54:2b:e1:bb:c5:3e:61:74:e2 -# SHA256 Fingerprint: e7:68:56:34:ef:ac:f6:9a:ce:93:9a:6b:25:5b:7b:4f:ab:ef:42:93:5b:50:a2:65:ac:b5:cb:60:27:e4:4e:70 ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE -BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is -I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G -CSqGSIb3DQEBAgUAA4GBALtMEivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Do -lbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNyc -AA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Label: "Verisign Class 3 Public Primary Certification Authority" -# Serial: 80507572722862485515306429940691309246 -# MD5 Fingerprint: ef:5a:f1:33:ef:f1:cd:bb:51:02:ee:12:14:4b:96:c4 -# SHA1 Fingerprint: a1:db:63:93:91:6f:17:e4:18:55:09:40:04:15:c7:02:40:b0:ae:6b -# SHA256 Fingerprint: a4:b6:b3:99:6f:c2:f3:06:b3:fd:86:81:bd:63:41:3d:8c:50:09:cc:4f:a3:29:c2:cc:f0:e2:fa:1b:14:03:05 ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE -BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is -I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G -CSqGSIb3DQEBBQUAA4GBABByUqkFFBkyCEHwxWsKzH4PIRnN5GfcX6kb5sroc50i -2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWXbj9T/UWZYB2oK0z5XqcJ -2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/D/xwzoiQ ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority - G2/(c) 1998 VeriSign, Inc. - For authorized use only/VeriSign Trust Network -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority - G2/(c) 1998 VeriSign, Inc. - For authorized use only/VeriSign Trust Network -# Label: "Verisign Class 3 Public Primary Certification Authority - G2" -# Serial: 167285380242319648451154478808036881606 -# MD5 Fingerprint: a2:33:9b:4c:74:78:73:d4:6c:e7:c1:f3:8d:cb:5c:e9 -# SHA1 Fingerprint: 85:37:1c:a6:e5:50:14:3d:ce:28:03:47:1b:de:3a:09:e8:f8:77:0f -# SHA256 Fingerprint: 83:ce:3c:12:29:68:8a:59:3d:48:5f:81:97:3c:0f:91:95:43:1e:da:37:cc:5e:36:43:0e:79:c7:a8:88:63:8b ------BEGIN CERTIFICATE----- -MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh -c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy -MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp -emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X -DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo -YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 -MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB -AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4 -pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0 -13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID -AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk -U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i -F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY -oJ2daZH9 ------END CERTIFICATE----- - -# Issuer: CN=GTE CyberTrust Global Root O=GTE Corporation OU=GTE CyberTrust Solutions, Inc. -# Subject: CN=GTE CyberTrust Global Root O=GTE Corporation OU=GTE CyberTrust Solutions, Inc. -# Label: "GTE CyberTrust Global Root" -# Serial: 421 -# MD5 Fingerprint: ca:3d:d3:68:f1:03:5c:d0:32:fa:b8:2b:59:e8:5a:db -# SHA1 Fingerprint: 97:81:79:50:d8:1c:96:70:cc:34:d8:09:cf:79:44:31:36:7e:f4:74 -# SHA256 Fingerprint: a5:31:25:18:8d:21:10:aa:96:4b:02:c7:b7:c6:da:32:03:17:08:94:e5:fb:71:ff:fb:66:67:d5:e6:81:0a:36 ------BEGIN CERTIFICATE----- -MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYD -VQQKEw9HVEUgQ29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNv -bHV0aW9ucywgSW5jLjEjMCEGA1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJv -b3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEzMjM1OTAwWjB1MQswCQYDVQQGEwJV -UzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQLEx5HVEUgQ3liZXJU -cnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0IEds -b2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrH -iM3dFw4usJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTS -r41tiGeA5u2ylc9yMcqlHHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X4 -04Wqk2kmhXBIgD8SFcd5tB8FLztimQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBAG3r -GwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMWM4ETCJ57NE7fQMh017l9 -3PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OFNMQkpw0P -lZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ ------END CERTIFICATE----- - -# Issuer: C=US, O=Equifax, OU=Equifax Secure Certificate Authority -# Subject: C=US, O=Equifax, OU=Equifax Secure Certificate Authority -# Label: "Equifax Secure Certificate Authority" -# Serial: 903804111 -# MD5 Fingerprint: 67:cb:9d:c0:13:24:8a:82:9b:b2:17:1e:d1:1b:ec:d4 -# SHA1 Fingerprint: d2:32:09:ad:23:d3:14:23:21:74:e4:0d:7f:9d:62:13:97:86:63:3a -# SHA256 Fingerprint: 08:29:7a:40:47:db:a2:36:80:c7:31:db:6e:31:76:53:ca:78:48:e1:be:bd:3a:0b:01:79:a7:07:f9:2c:f1:78 ------BEGIN CERTIFICATE----- -MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV -UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy -dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1 -MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx -dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B -AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f -BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A -cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC -AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ -MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm -aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw -ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj -IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF -MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA -A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y -7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh -1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 ------END CERTIFICATE----- diff --git a/env/lib/python3.4/site-packages/certifi/weak.pem b/env/lib/python3.4/site-packages/certifi/weak.pem deleted file mode 100644 index 380c523..0000000 --- a/env/lib/python3.4/site-packages/certifi/weak.pem +++ /dev/null @@ -1,5248 +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=Certum CA O=Unizeto Sp. z o.o. -# Subject: CN=Certum CA O=Unizeto Sp. z o.o. -# Label: "Certum Root CA" -# Serial: 65568 -# MD5 Fingerprint: 2c:8f:9f:66:1d:18:90:b1:47:26:9d:8e:86:82:8c:a9 -# SHA1 Fingerprint: 62:52:dc:40:f7:11:43:a2:2f:de:9e:f7:34:8e:06:42:51:b1:81:18 -# SHA256 Fingerprint: d8:e0:fe:bc:1d:b2:e3:8d:00:94:0f:37:d2:7d:41:34:4d:99:3e:73:4b:99:d5:65:6d:97:78:d4:d8:14:36:24 ------BEGIN CERTIFICATE----- -MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM -MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD -QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM -MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD -QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E -jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo -ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI -ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu -Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg -AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7 -HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA -uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa -TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg -xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q -CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x -O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs -6GAqm4VKQPNriiTsBhYscw== ------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=Chambers of Commerce Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Subject: CN=Chambers of Commerce Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Label: "Camerfirma Chambers of Commerce Root" -# Serial: 0 -# MD5 Fingerprint: b0:01:ee:14:d9:af:29:18:94:76:8e:f1:69:33:2a:84 -# SHA1 Fingerprint: 6e:3a:55:a4:19:0c:19:5c:93:84:3c:c0:db:72:2e:31:30:61:f0:b1 -# SHA256 Fingerprint: 0c:25:8a:12:a5:67:4a:ef:25:f2:8b:a7:dc:fa:ec:ee:a3:48:e5:41:e6:f5:cc:4e:e6:3b:71:b3:61:60:6a:c3 ------BEGIN CERTIFICATE----- -MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEn -MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL -ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMg -b2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAxNjEzNDNaFw0zNzA5MzAxNjEzNDRa -MH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZpcm1hIFNBIENJRiBB -ODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3JnMSIw -IAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0B -AQEFAAOCAQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtb -unXF/KGIJPov7coISjlUxFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0d -BmpAPrMMhe5cG3nCYsS4No41XQEMIwRHNaqbYE6gZj3LJgqcQKH0XZi/caulAGgq -7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jWDA+wWFjbw2Y3npuRVDM3 -0pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFVd9oKDMyX -roDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIG -A1UdEwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5j -aGFtYmVyc2lnbi5vcmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p -26EpW1eLTXYGduHRooowDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIA -BzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hhbWJlcnNpZ24ub3JnMCcGA1Ud -EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYDVR0gBFEwTzBN -BgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz -aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEB -AAxBl8IahsAifJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZd -p0AJPaxJRUXcLo0waLIJuvvDL8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi -1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wNUPf6s+xCX6ndbcj0dc97wXImsQEc -XCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/nADydb47kMgkdTXg0 -eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1erfu -tGWaIZDgqtCYvDi1czyL+Nw= ------END CERTIFICATE----- - -# Issuer: CN=Global Chambersign Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Subject: CN=Global Chambersign Root O=AC Camerfirma SA CIF A82743287 OU=http://www.chambersign.org -# Label: "Camerfirma Global Chambersign Root" -# Serial: 0 -# MD5 Fingerprint: c5:e6:7b:bf:06:d0:4f:43:ed:c4:7a:65:8a:fb:6b:19 -# SHA1 Fingerprint: 33:9b:6b:14:50:24:9b:55:7a:01:87:72:84:d9:e0:2f:c3:d2:d8:e9 -# SHA256 Fingerprint: ef:3c:b4:17:fc:8e:bf:6f:97:87:6c:9e:4e:ce:39:de:1e:a5:fe:64:91:41:d1:02:8b:7d:11:c0:b2:29:8c:ed ------BEGIN CERTIFICATE----- -MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEn -MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL -ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENo -YW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYxNDE4WhcNMzcwOTMwMTYxNDE4WjB9 -MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgy -NzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4G -A1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUA -A4IBDQAwggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0 -Mi+ITaFgCPS3CU6gSS9J1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/s -QJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8Oby4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpV -eAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl6DJWk0aJqCWKZQbua795 -B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c8lCrEqWh -z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0T -AQH/BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1i -ZXJzaWduLm9yZy9jaGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4w -TcbOX60Qq+UDpfqpFDAOBgNVHQ8BAf8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAH -MCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBjaGFtYmVyc2lnbi5vcmcwKgYD -VR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9yZzBbBgNVHSAE -VDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh -bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0B -AQUFAAOCAQEAPDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUM -bKGKfKX0j//U2K0X1S0E0T9YgOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXi -ryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJPJ7oKXqJ1/6v/2j1pReQvayZzKWG -VwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4IBHNfTIzSJRUTN3c -ecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREest2d/ -AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== ------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: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Subject: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Label: "StartCom Certification Authority" -# Serial: 1 -# MD5 Fingerprint: 22:4d:8f:8a:fc:f7:35:c2:bb:57:34:90:7b:8b:22:16 -# SHA1 Fingerprint: 3e:2b:f7:f2:03:1b:96:f3:8c:e6:c4:d8:a8:5d:3e:2d:58:47:6a:0f -# SHA256 Fingerprint: c7:66:a9:be:f2:d4:07:1c:86:3a:31:aa:49:20:e8:13:b2:d1:98:60:8c:b7:b7:cf:e2:11:43:b8:36:df:09:ea ------BEGIN CERTIFICATE----- -MIIHyTCCBbGgAwIBAgIBATANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg -Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM2WhcNMzYwOTE3MTk0NjM2WjB9 -MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi -U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh -cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA -A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk -pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf -OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C -Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT -Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi -HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM -Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w -+2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ -Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 -Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B -26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID -AQABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE -FE4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9j -ZXJ0LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMCugKaAnhiVodHRwOi8vY3Js -LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMIIBXQYDVR0gBIIBVDCCAVAwggFM -BgsrBgEEAYG1NwEBATCCATswLwYIKwYBBQUHAgEWI2h0dHA6Ly9jZXJ0LnN0YXJ0 -Y29tLm9yZy9wb2xpY3kucGRmMDUGCCsGAQUFBwIBFilodHRwOi8vY2VydC5zdGFy -dGNvbS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB0AYIKwYBBQUHAgIwgcMwJxYgU3Rh -cnQgQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQgTGlh -YmlsaXR5LCByZWFkIHRoZSBzZWN0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyogb2Yg -dGhlIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFBvbGljeSBhdmFp -bGFibGUgYXQgaHR0cDovL2NlcnQuc3RhcnRjb20ub3JnL3BvbGljeS5wZGYwEQYJ -YIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNT -TCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAgEAFmyZ -9GYMNPXQhV59CuzaEE44HF7fpiUFS5Eyweg78T3dRAlbB0mKKctmArexmvclmAk8 -jhvh3TaHK0u7aNM5Zj2gJsfyOZEdUauCe37Vzlrk4gNXcGmXCPleWKYK34wGmkUW -FjgKXlf2Ysd6AgXmvB618p70qSmD+LIU424oh0TDkBreOKk8rENNZEXO3SipXPJz -ewT4F+irsfMuXGRuczE6Eri8sxHkfY+BUZo7jYn0TZNmezwD7dOaHZrzZVD1oNB1 -ny+v8OqCQ5j4aZyJecRDjkZy42Q2Eq/3JR44iZB3fsNrarnDy0RLrHiQi+fHLB5L -EUTINFInzQpdn4XBidUaePKVEFMy3YCEZnXZtWgo+2EuvoSoOMCZEoalHmdkrQYu -L6lwhceWD3yJZfWOQ1QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0Ijuu+Pwq -yvqCUqDvr0tVk+vBtfAii6w0TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YSjCMJwRuC -O3NJo2pXh5Tl1njFmUNj403gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVguucQJAX6V -um0ABj6y6koQOdjQK/W/7HW/lwLFCRsI3FU34oH7N4RDYiDK51ZLZer+bMEkkySh -NOsF/5oirpt9P/FlUQqmMGqz9IgcgA38corog14= ------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=DST ACES CA X6 O=Digital Signature Trust OU=DST ACES -# Subject: CN=DST ACES CA X6 O=Digital Signature Trust OU=DST ACES -# Label: "DST ACES CA X6" -# Serial: 17771143917277623872238992636097467865 -# MD5 Fingerprint: 21:d8:4c:82:2b:99:09:33:a2:eb:14:24:8d:8e:5f:e8 -# SHA1 Fingerprint: 40:54:da:6f:1c:3f:40:74:ac:ed:0f:ec:cd:db:79:d1:53:fb:90:1d -# SHA256 Fingerprint: 76:7c:95:5a:76:41:2c:89:af:68:8e:90:a1:c7:0f:55:6c:fd:6b:60:25:db:ea:10:41:6d:7e:b6:83:1f:8c:40 ------BEGIN CERTIFICATE----- -MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBb -MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3Qx -ETAPBgNVBAsTCERTVCBBQ0VTMRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w -MzExMjAyMTE5NThaFw0xNzExMjAyMTE5NThaMFsxCzAJBgNVBAYTAlVTMSAwHgYD -VQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UECxMIRFNUIEFDRVMx -FzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A -MIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPu -ktKe1jzIDZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7 -gLFViYsx+tC3dr5BPTCapCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZH -fAjIgrrep4c9oW24MFbCswKBXy314powGCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4a -ahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPyMjwmR/onJALJfh1biEIT -ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1UdEwEB/wQF -MAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rk -c3QuY29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjto -dHRwOi8vd3d3LnRydXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMt -aW5kZXguaHRtbDAdBgNVHQ4EFgQUCXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZI -hvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V25FYrnJmQ6AgwbN99Pe7lv7Uk -QIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6tFr8hlxCBPeP/ -h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq -nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpR -rscL9yuwNwXsvFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf2 -9w4LTJxoeHtxMcfrHuBnQfO3oKfN5XozNmr6mis= ------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----- -MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UE -BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWdu -IFNpbHZlciBDQSAtIEcyMB4XDTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0Nlow -RzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMY -U3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A -MIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644N0Mv -Fz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7br -YT7QbNHm+/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieF -nbAVlDLaYQ1HTWBCrpJH6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH -6ATK72oxh9TAtvmUcXtnZLi2kUpCe2UuMGoM9ZDulebyzYLs2aFK7PayS+VFheZt -eJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5hqAaEuSh6XzjZG6k4sIN/ -c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5FZGkECwJ -MoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRH -HTBsROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTf -jNFusB3hB48IHpmccelM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb6 -5i/4z3GcRm25xBWNOHkDRUjvxF3XCO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOB -rDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU -F6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRBtjpbO8tFnb0c -wpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0 -cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIB -AHPGgeAn0i0P4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShp -WJHckRE1qTodvBqlYJ7YH39FkWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9 -xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L3XWgwF15kIwb4FDm3jH+mHtwX6WQ -2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx/uNncqCxv1yL5PqZ -IseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFaDGi8 -aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2X -em1ZqSqPe97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQR -dAtq/gsD/KNVV4n+SsuuWxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/ -OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJDIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+ -hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ubDgEj8Z+7fNzcbBGXJbLy -tGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u ------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: O=SECOM Trust Systems CO.,LTD. OU=Security Communication EV RootCA1 -# Subject: O=SECOM Trust Systems CO.,LTD. OU=Security Communication EV RootCA1 -# Label: "Security Communication EV RootCA1" -# Serial: 0 -# MD5 Fingerprint: 22:2d:a6:01:ea:7c:0a:f7:f0:6c:56:43:3f:77:76:d3 -# SHA1 Fingerprint: fe:b8:c4:32:dc:f9:76:9a:ce:ae:3d:d8:90:8f:fd:28:86:65:64:7d -# SHA256 Fingerprint: a2:2d:ba:68:1e:97:37:6e:2d:39:7d:72:8a:ae:3a:9b:62:96:b9:fd:ba:60:bc:2e:11:f6:47:f2:c6:75:fb:37 ------BEGIN CERTIFICATE----- -MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDEl -MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMh -U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIz -MloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09N -IFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNlY3VyaXR5IENvbW11 -bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSE -RMqm4miO/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gO -zXppFodEtZDkBp2uoQSXWHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5 -bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4zZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDF -MxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4bepJz11sS6/vmsJWXMY1 -VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK9U2vP9eC -OKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G -CSqGSIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HW -tWS3irO4G8za+6xmiEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZ -q51ihPZRwSzJIxXYKLerJRO1RuGGAv8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDb -EJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnWmHyojf6GPgcWkuF75x3sM3Z+ -Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEWT1MKZPlO9L9O -VL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 ------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: CN=T\xdcB\u0130TAK UEKAE K\xf6k Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 - S\xfcr\xfcm 3 O=T\xfcrkiye Bilimsel ve Teknolojik Ara\u015ft\u0131rma Kurumu - T\xdcB\u0130TAK OU=Ulusal Elektronik ve Kriptoloji Ara\u015ft\u0131rma Enstit\xfcs\xfc - UEKAE/Kamu Sertifikasyon Merkezi -# Subject: CN=T\xdcB\u0130TAK UEKAE K\xf6k Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 - S\xfcr\xfcm 3 O=T\xfcrkiye Bilimsel ve Teknolojik Ara\u015ft\u0131rma Kurumu - T\xdcB\u0130TAK OU=Ulusal Elektronik ve Kriptoloji Ara\u015ft\u0131rma Enstit\xfcs\xfc - UEKAE/Kamu Sertifikasyon Merkezi -# Label: "T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3" -# Serial: 17 -# MD5 Fingerprint: ed:41:f5:8c:50:c5:2b:9c:73:e6:ee:6c:eb:c2:a8:26 -# SHA1 Fingerprint: 1b:4b:39:61:26:27:6b:64:91:a2:68:6d:d7:02:43:21:2d:1f:1d:96 -# SHA256 Fingerprint: e4:c7:34:30:d7:a5:b5:09:25:df:43:37:0a:0d:21:6e:9a:79:b9:d6:db:83:73:a0:c6:9e:b1:cc:31:c7:c5:2a ------BEGIN CERTIFICATE----- -MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRS -MRgwFgYDVQQHDA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJp -bGltc2VsIHZlIFRla25vbG9qaWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSw -VEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ryb25payB2ZSBLcmlwdG9sb2ppIEFy -YcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNVBAsMGkthbXUgU2Vy -dGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUgS8O2 -ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAe -Fw0wNzA4MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIx -GDAWBgNVBAcMD0dlYnplIC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmls -aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHFn3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBU -QUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZlIEtyaXB0b2xvamkgQXJh -xZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2FtdSBTZXJ0 -aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7Zr -IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIB -IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4h -gb46ezzb8R1Sf1n68yJMlaCQvEhOEav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yK -O7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1xnnRFDDtG1hba+818qEhTsXO -fJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR6Oqeyjh1jmKw -lZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL -hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQID -AQABo0IwQDAdBgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/ -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmP -NOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4N5EY3ATIZJkrGG2AA1nJrvhY0D7t -wyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLTy9LQQfMmNkqblWwM -7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYhLBOh -gLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5n -oN+J1q2MdqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUs -yZyQ2uypQjyttgI= ------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=ACEDICOM Root O=EDICOM OU=PKI -# Subject: CN=ACEDICOM Root O=EDICOM OU=PKI -# Label: "ACEDICOM Root" -# Serial: 7029493972724711941 -# MD5 Fingerprint: 42:81:a0:e2:1c:e3:55:10:de:55:89:42:65:96:22:e6 -# SHA1 Fingerprint: e0:b4:32:2e:b2:f6:a5:68:b6:54:53:84:48:18:4a:50:36:87:43:84 -# SHA256 Fingerprint: 03:95:0f:b4:9a:53:1f:3e:19:91:94:23:98:df:a9:e0:ea:32:d7:ba:1c:dd:9b:c8:5d:b5:7e:d9:40:0b:43:4a ------BEGIN CERTIFICATE----- -MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UE -AwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00x -CzAJBgNVBAYTAkVTMB4XDTA4MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEW -MBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZF -RElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC -AgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHkWLn7 -09gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7 -XBZXehuDYAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5P -Grjm6gSSrj0RuVFCPYewMYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAK -t0SdE3QrwqXrIhWYENiLxQSfHY9g5QYbm8+5eaA9oiM/Qj9r+hwDezCNzmzAv+Yb -X79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbkHQl/Sog4P75n/TSW9R28 -MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTTxKJxqvQU -fecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI -2Sf23EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyH -K9caUPgn6C9D4zq92Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEae -ZAwUswdbxcJzbPEHXEUkFDWug/FqTYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAP -BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz4SsrSbbXc6GqlPUB53NlTKxQ -MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU9QHnc2VMrFAw -RAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv -bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm -fQwng4/F9tqgaHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3 -gvoFNTPhNahXwOf9jU8/kzJPeGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKe -I6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1PwkzQSulgUV1qzOMPPKC8W64iLgpq0i -5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1ThCojz2GuHURwCRi -ipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oIKiMn -MCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZ -o5NjEFIqnxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6 -zqylfDJKZ0DcMDQj3dcEI2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacN -GHk0vFQYXlPKNFHtRQrmjseCNj6nOGOpMCwXEGCSn1WHElkQwg9naRHMTh5+Spqt -r0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3otkYNbn5XOmeUwssfnHdK -Z05phkOTOPu220+DkdRgfks+KzgHVZhepA== ------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=Certinomis - Autorit\xe9 Racine O=Certinomis OU=0002 433998903 -# Subject: CN=Certinomis - Autorit\xe9 Racine O=Certinomis OU=0002 433998903 -# Label: "Certinomis - Autorit\xe9 Racine" -# Serial: 1 -# MD5 Fingerprint: 7f:30:78:8c:03:e3:ca:c9:0a:e2:c9:ea:1e:aa:55:1a -# SHA1 Fingerprint: 2e:14:da:ec:28:f0:fa:1e:8e:38:9a:4e:ab:eb:26:c0:0a:d3:83:c3 -# SHA256 Fingerprint: fc:bf:e2:88:62:06:f7:2b:27:59:3c:8b:07:02:97:e1:2d:76:9e:d1:0e:d7:93:07:05:a8:09:8e:ff:c1:4d:17 ------BEGIN CERTIFICATE----- -MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjET -MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAk -BgNVBAMMHUNlcnRpbm9taXMgLSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4 -Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNl -cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYwJAYDVQQDDB1DZXJ0 -aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jY -F1AMnmHawE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N -8y4oH3DfVS9O7cdxbwlyLu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWe -rP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K -/OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92NjMD2AR5vpTESOH2VwnHu -7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9qc1pkIuVC -28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6 -lSTClrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1E -nn1So2+WLhl+HPNbxxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB -0iSVL1N6aaLwD4ZFjliCK0wi1F6g530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql09 -5gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna4NH4+ej9Uji29YnfAgMBAAGj -WzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQN -jLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ -KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9s -ov3/4gbIOZ/xWqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZM -OH8oMDX/nyNTt7buFHAAQCvaR6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q -619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40nJ+U8/aGH88bc62UeYdocMMzpXDn -2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1BCxMjidPJC+iKunqj -o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjvJL1v -nxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG -5ERQL1TEqkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWq -pdEdnV1j6CTmNhTih60bWfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZb -dsLLO7XSAPCjDuGtbkD326C00EauFddEwk01+dIL8hf2rGbVJLJP0RyZwG71fet0 -BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/vgt2Fl43N+bYdJeimUV5 ------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=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Subject: CN=StartCom Certification Authority O=StartCom Ltd. OU=Secure Digital Certificate Signing -# Label: "StartCom Certification Authority" -# Serial: 45 -# MD5 Fingerprint: c9:3b:0d:84:41:fc:a4:76:79:23:08:57:de:10:19:16 -# SHA1 Fingerprint: a3:f1:33:3f:e2:42:bf:cf:c5:d1:4e:8f:39:42:98:40:68:10:d1:a0 -# SHA256 Fingerprint: e1:78:90:ee:09:a3:fb:f4:f4:8b:9c:41:4a:17:d6:37:b7:a5:06:47:e9:bc:75:23:22:72:7f:cc:17:42:a9:11 ------BEGIN CERTIFICATE----- -MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg -Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM3WhcNMzYwOTE3MTk0NjM2WjB9 -MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi -U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh -cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA -A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk -pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf -OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C -Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT -Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi -HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM -Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w -+2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ -Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 -Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B -26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID -AQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD -VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFul -F2mHMMo0aEPQQa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCC -ATgwLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5w -ZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2ludGVybWVk -aWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENvbW1lcmNpYWwgKFN0 -YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0aGUg -c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0 -aWZpY2F0aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93 -d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgG -CWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1 -dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5fPGFf59Jb2vKXfuM/gTF -wWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWmN3PH/UvS -Ta0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst -0OcNOrg+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNc -pRJvkrKTlMeIFw6Ttn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl -CcWw0bdT82AUuoVpaiF8H3VhFyAXe2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVF -P0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA2MFrLH9ZXF2RsXAiV+uKa0hK -1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBsHvUwyKMQ5bLm -KhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE -JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ -8dCAWZvLMdibD4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnm -fyWl8kgAwKQB2j8= ------END CERTIFICATE----- - -# Issuer: CN=StartCom Certification Authority G2 O=StartCom Ltd. -# Subject: CN=StartCom Certification Authority G2 O=StartCom Ltd. -# Label: "StartCom Certification Authority G2" -# Serial: 59 -# MD5 Fingerprint: 78:4b:fb:9e:64:82:0a:d3:b8:4c:62:f3:64:f2:90:64 -# SHA1 Fingerprint: 31:f1:fd:68:22:63:20:ee:c6:3b:3f:9d:ea:4a:3e:53:7c:7c:39:17 -# SHA256 Fingerprint: c7:ba:65:67:de:93:a7:98:ae:1f:aa:79:1e:71:2d:37:8f:ae:1f:93:c4:39:7f:ea:44:1b:b7:cb:e6:fd:59:95 ------BEGIN CERTIFICATE----- -MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEW -MBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlm -aWNhdGlvbiBBdXRob3JpdHkgRzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1 -OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoG -A1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRzIwggIiMA0G -CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8Oo1XJ -JZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsD -vfOpL9HG4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnoo -D/Uefyf3lLE3PbfHkffiAez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/ -Q0kGi4xDuFby2X8hQxfqp0iVAXV16iulQ5XqFYSdCI0mblWbq9zSOdIxHWDirMxW -RST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbsO+wmETRIjfaAKxojAuuK -HDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8HvKTlXcxN -nw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM -0D4LnMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/i -UUjXuG+v+E5+M5iSFGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9 -Ha90OrInwMEePnWjFqmveiJdnxMaz6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHg -TuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE -AwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJKoZIhvcNAQEL -BQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K -2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfX -UfEpY9Z1zRbkJ4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl -6/2o1PXWT6RbdejF0mCy2wl+JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK -9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG/+gyRr61M3Z3qAFdlsHB1b6uJcDJ -HgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTcnIhT76IxW1hPkWLI -wpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/XldblhY -XzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5l -IxKVCCIcl85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoo -hdVddLHRDiBYmxOlsGOm7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulr -so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI ------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=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. (c) Aral\u0131k 2007 -# Subject: CN=T\xdcRKTRUST Elektronik Sertifika Hizmet Sa\u011flay\u0131c\u0131s\u0131 O=T\xdcRKTRUST Bilgi \u0130leti\u015fim ve Bili\u015fim G\xfcvenli\u011fi Hizmetleri A.\u015e. (c) Aral\u0131k 2007 -# Label: "TURKTRUST Certificate Services Provider Root 2007" -# Serial: 1 -# MD5 Fingerprint: 2b:70:20:56:86:82:a0:18:c8:07:53:12:28:70:21:72 -# SHA1 Fingerprint: f1:7f:6f:b6:31:dc:99:e3:a3:c8:7f:fe:1c:f1:81:10:88:d9:60:33 -# SHA256 Fingerprint: 97:8c:d9:66:f2:fa:a0:7b:a7:aa:95:00:d9:c0:2e:9d:77:f2:cd:ad:a6:ad:6b:a7:4a:f4:b9:1c:66:59:3c:50 ------BEGIN CERTIFICATE----- -MIIEPTCCAyWgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvzE/MD0GA1UEAww2VMOc -UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx -c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKDFVUw5xS -S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg -SGl6bWV0bGVyaSBBLsWeLiAoYykgQXJhbMSxayAyMDA3MB4XDTA3MTIyNTE4Mzcx -OVoXDTE3MTIyMjE4MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1QgRWxla3Ry -b25payBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMAkGA1UEBhMC -VFIxDzANBgNVBAcMBkFua2FyYTFeMFwGA1UECgxVVMOcUktUUlVTVCBCaWxnaSDE -sGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkgQS7F -ni4gKGMpIEFyYWzEsWsgMjAwNzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBAKu3PgqMyKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9NYvDdE3ePYakqtdTyuTFY -KTsvP2qcb3N2Je40IIDu6rfwxArNK4aUyeNgsURSsloptJGXg9i3phQvKUmi8wUG -+7RP2qFsmmaf8EMJyupyj+sA1zU511YXRxcw9L6/P8JorzZAwan0qafoEGsIiveG -HtyaKhUG9qPw9ODHFNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/hTEST7ruToK4uT6P -IzdezKKqdfcYbwnTrqdUKDT74eA7YH2gvnmJhsifLfkKS8RQouf9eRbHegsYz85M -733WB2+Y8a+xwXrXgTW4qhe04MsCAwEAAaNCMEAwHQYDVR0OBBYEFCnFkKslrxHk -Yb+j/4hhkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G -CSqGSIb3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6QSU2TJ/sPx+EnWVUXKgW -AkD6bho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8JWcqdmBzlVPi5RX9ql2+I -aE1KBiY3iAIOtsbWcpnOa3faYjGkVh+uX4132l32iPwa2Z61gfAyuOOI0JzzaqC5 -mxRZNTZPz/OOXl0XrRWV2N2y1RVuAE6zS89mlOTgzbUF2mNXi+WzqtvALhyQRNsa -XRik7r4EW5nVcV9VZWRi1aKbBFmGyGJ353yCRWo9F7/snXUMrqNvWtMvmDb08PUZ -qxFdyKbjKlhqQgnDvZImZjINXQhVdP+MmNAKpoRq0Tl9 ------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=Autoridad de Certificacion Raiz del Estado Venezolano O=Sistema Nacional de Certificacion Electronica OU=Superintendencia de Servicios de Certificacion Electronica -# Subject: CN=PSCProcert O=Sistema Nacional de Certificacion Electronica OU=Proveedor de Certificados PROCERT -# Label: "PSCProcert" -# Serial: 11 -# MD5 Fingerprint: e6:24:e9:12:01:ae:0c:de:8e:85:c4:ce:a3:12:dd:ec -# SHA1 Fingerprint: 70:c1:8d:74:b4:28:81:0a:e4:fd:a5:75:d7:01:9f:99:b0:3d:50:74 -# SHA256 Fingerprint: 3c:fc:3c:14:d1:f6:84:ff:17:e3:8c:43:ca:44:0c:00:b9:67:ec:93:3e:8b:fe:06:4c:a1:d7:2c:90:f2:ad:b0 ------BEGIN CERTIFICATE----- -MIIJhjCCB26gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCCAR4xPjA8BgNVBAMTNUF1 -dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5lem9s -YW5vMQswCQYDVQQGEwJWRTEQMA4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECBMQRGlz -dHJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0 -aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMwQQYDVQQLEzpTdXBlcmludGVuZGVuY2lh -IGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNhMSUwIwYJ -KoZIhvcNAQkBFhZhY3JhaXpAc3VzY2VydGUuZ29iLnZlMB4XDTEwMTIyODE2NTEw -MFoXDTIwMTIyNTIzNTk1OVowgdExJjAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQHBy -b2NlcnQubmV0LnZlMQ8wDQYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB01pcmFuZGEx -KjAoBgNVBAsTIVByb3ZlZWRvciBkZSBDZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE2MDQG -A1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9u -aWNhMQswCQYDVQQGEwJWRTETMBEGA1UEAxMKUFNDUHJvY2VydDCCAiIwDQYJKoZI -hvcNAQEBBQADggIPADCCAgoCggIBANW39KOUM6FGqVVhSQ2oh3NekS1wwQYalNo9 -7BVCwfWMrmoX8Yqt/ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV3NZs+J74 -BCXfgI8Qhd19L3uA3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+saGiKLt38G -ieU89RLAu9MLmV+QfI4tL3czkkohRqipCKzx9hEC2ZUWno0vluYC3XXCFCpa1sl9 -JcLB/KpnheLsvtF8PPqv1W7/U0HU9TI4seJfxPmOEO8GqQKJ/+MMbpfg353bIdD0 -PghpbNjU5Db4g7ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6wKImG20qCZyFSTXai2 -0b1dCl53lKItwIKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHMosdEMXXqP+UH -0quhJZb25uSgXTcYOWEAM11G1ADEtMo88aKjPvM6/2kwLkDd9p+cJsmWN63nOaK/ -6mnbVSKVUyqUtd+tFjiBdWbjxywbk5yqjKPK2Ww8F22c3HxT4CAnQzb5EuE8XL1m -v6JpIzi4mWCZDlZTOpx+FIywBm/xhnaQr/2v/pDGj59/i5IjnOcVdo/Vi5QTcmn7 -K2FjiO/mpF7moxdqWEfLcU8UC17IAggmosvpr2uKGcfLFFb14dq12fy/czja+eev -bqQ34gcnAgMBAAGjggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/AgEBMDcGA1UdEgQw -MC6CD3N1c2NlcnRlLmdvYi52ZaAbBgVghl4CAqASDBBSSUYtRy0yMDAwNDAzNi0w -MB0GA1UdDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAVAGA1UdIwSCAUcwggFD -gBStuyIdxuDSAaj9dlBSk+2YwU2u06GCASakggEiMIIBHjE+MDwGA1UEAxM1QXV0 -b3JpZGFkIGRlIENlcnRpZmljYWNpb24gUmFpeiBkZWwgRXN0YWRvIFZlbmV6b2xh -bm8xCzAJBgNVBAYTAlZFMRAwDgYDVQQHEwdDYXJhY2FzMRkwFwYDVQQIExBEaXN0 -cml0byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5hY2lvbmFsIGRlIENlcnRp -ZmljYWNpb24gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOlN1cGVyaW50ZW5kZW5jaWEg -ZGUgU2VydmljaW9zIGRlIENlcnRpZmljYWNpb24gRWxlY3Ryb25pY2ExJTAjBgkq -hkiG9w0BCQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2IudmWCAQowDgYDVR0PAQH/BAQD -AgEGME0GA1UdEQRGMESCDnByb2NlcnQubmV0LnZloBUGBWCGXgIBoAwMClBTQy0w -MDAwMDKgGwYFYIZeAgKgEgwQUklGLUotMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEag -RKBChkBodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9sY3IvQ0VSVElGSUNBRE8t -UkFJWi1TSEEzODRDUkxERVIuY3JsMCOgIaAfhh1sZGFwOi8vYWNyYWl6LnN1c2Nl -cnRlLmdvYi52ZTA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9v -Y3NwLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoGCCsG -AQUFBwIBFh5odHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZIhvcN -AQELBQADggIBACtZ6yKZu4SqT96QxtGGcSOeSwORR3C7wJJg7ODU523G0+1ng3dS -1fLld6c2suNUvtm7CpsR72H0xpkzmfWvADmNg7+mvTV+LFwxNG9s2/NkAZiqlCxB -3RWGymspThbASfzXg0gTB1GEMVKIu4YXx2sviiCtxQuPcD4quxtxj7mkoP3Yldmv -Wb8lK5jpY5MvYB7Eqvh39YtsL+1+LrVPQA3uvFd359m21D+VJzog1eWuq2w1n8Gh -HVnchIHuTQfiSLaeS5UtQbHh6N5+LwUeaO6/u5BlOsju6rEYNxxik6SgMexxbJHm -pHmJWhSnFFAFTKQAVzAswbVhltw+HoSvOULP5dAssSS830DD7X9jSr3hTxJkhpXz -sOfIt+FTvZLm8wyWuevo5pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSMx4bE -qCaJqD8Zm4G7UaRKhqsLEQ+xrmNTbSjq3TNWOByyrYDT13K9mmyZY+gAu0F2Bbdb -mRiKw7gSXFbPVgx96OLP7bx0R/vu0xdOIk9W/1DzLuY5poLWccret9W6aAjtmcz9 -opLLabid+Qqkpj5PkygqYWwHJgD/ll9ohri4zspV4KuxPX+Y1zMOWj3YeMLEYC/H -YvBhkdI4sPaeVdtAgAUSM84dkpvRabP/v/GSCmE1P93+hvS84Bpxs2Km ------END CERTIFICATE----- - -# Issuer: CN=CA Disig Root R1 O=Disig a.s. -# Subject: CN=CA Disig Root R1 O=Disig a.s. -# Label: "CA Disig Root R1" -# Serial: 14052245610670616104 -# MD5 Fingerprint: be:ec:11:93:9a:f5:69:21:bc:d7:c1:c0:67:89:cc:2a -# SHA1 Fingerprint: 8e:1c:74:f8:a6:20:b9:e5:8a:f4:61:fa:ec:2b:47:56:51:1a:52:c6 -# SHA256 Fingerprint: f9:6f:23:f4:c3:e7:9c:07:7a:46:98:8d:5a:f5:90:06:76:a0:f0:39:cb:64:5d:d1:75:49:b2:16:c8:24:40:ce ------BEGIN CERTIFICATE----- -MIIFaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNV -BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu -MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIxMB4XDTEyMDcxOTA5MDY1NloXDTQy -MDcxOTA5MDY1NlowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx -EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjEw -ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCqw3j33Jijp1pedxiy3QRk -D2P9m5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/o -OI7bm+V8u8yN63Vz4STN5qctGS7Y1oprFOsIYgrY3LMATcMjfF9DCCMyEtztDK3A -fQ+lekLZWnDZv6fXARz2m6uOt0qGeKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r5OJe -IgpFy4QxTaz+29FHuvlglzmxZcfe+5nkCiKxLU3lSCZpq+Kq8/v8kiky6bM+TR8n -oc2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+DiR0jm3hTaYVKvJrT1cU/J19IG32PK -/yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZd69fwX3se72V6FglcXM6pM6vpmumwKj -rckWtc7dXpl4fho5frLABaTAgqWjR56M6ly2vGfb5ipN0gTco65F97yLnByn1tUD -3AjLLhbKXEAz6GfDLuemROoRRRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSRE -7cderVC6xkGbrPAXZcD4XW9boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1fkC -yC2fg69naQanMVXVz0tv/wQFx1isXxYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2BLd -qvLmTZtJ5cUoobqwWsagtQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud -DwEB/wQEAwIBBjAdBgNVHQ4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ04IwDQYJKoZI -hvcNAQEFBQADggIBADKL9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR0rBNR -xVgYZk2C2tXck8An4b58n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D65hXlaA -SfX8MPWbTx9BLxyE04nH4toCdu0Jz2zBuByDHBb6lM19oMgY0sidbvW9adRtPTXo -HqJPYNcHKfyyo6SdbhWSVhlMCrDpfNIZTUJG7L399ldb3Zh+pE3McgODWF3vkzpB -emOqfDqo9ayk0d2iLbYq/J8BjuIQscTK5GfbVSUZP/3oNn6z4eGBrxEWi1CXYBmC -AMBrTXO40RMHPuq2MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85YmLLW1AL14FABZyb -7bq2ix4Eb5YgOe2kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4funodKSds+x -DzdYpPJScWc/DIh4gInByLUfkmO+p3qKViwaqKactV2zY9ATIKHrkWzQjX2v3wvk -F7mGnjixlAxYjOBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fyexn9GtePyfqF -a3qdnom2piiZk4hA9z7NUaPK6u95RyG1/jLix8NRb76AdPCkwzryT+lf3xkK8jsT -Q6wxpLPn6/wY1gGp8yqPNg7rtLG8t0zJa7+h89n07eLw4+1knj0vllJPgFOL ------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=Certification Authority of WoSign O=WoSign CA Limited -# Subject: CN=Certification Authority of WoSign O=WoSign CA Limited -# Label: "WoSign" -# Serial: 125491772294754854453622855443212256657 -# MD5 Fingerprint: a1:f2:f9:b5:d2:c8:7a:74:b8:f3:05:f1:d7:e1:84:8d -# SHA1 Fingerprint: b9:42:94:bf:91:ea:8f:b6:4b:e6:10:97:c7:fb:00:13:59:b6:76:cb -# SHA256 Fingerprint: 4b:22:d5:a6:ae:c9:9f:3c:db:79:aa:5e:c0:68:38:47:9c:d5:ec:ba:71:64:f7:f2:2d:c1:d6:5f:63:d8:57:08 ------BEGIN CERTIFICATE----- -MIIFdjCCA16gAwIBAgIQXmjWEXGUY1BWAGjzPsnFkTANBgkqhkiG9w0BAQUFADBV -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxKjAoBgNV -BAMTIUNlcnRpZmljYXRpb24gQXV0aG9yaXR5IG9mIFdvU2lnbjAeFw0wOTA4MDgw -MTAwMDFaFw0zOTA4MDgwMTAwMDFaMFUxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFX -b1NpZ24gQ0EgTGltaXRlZDEqMCgGA1UEAxMhQ2VydGlmaWNhdGlvbiBBdXRob3Jp -dHkgb2YgV29TaWduMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvcqN -rLiRFVaXe2tcesLea9mhsMMQI/qnobLMMfo+2aYpbxY94Gv4uEBf2zmoAHqLoE1U -fcIiePyOCbiohdfMlZdLdNiefvAA5A6JrkkoRBoQmTIPJYhTpA2zDxIIFgsDcScc -f+Hb0v1naMQFXQoOXXDX2JegvFNBmpGN9J42Znp+VsGQX+axaCA2pIwkLCxHC1l2 -ZjC1vt7tj/id07sBMOby8w7gLJKA84X5KIq0VC6a7fd2/BVoFutKbOsuEo/Uz/4M -x1wdC34FMr5esAkqQtXJTpCzWQ27en7N1QhatH/YHGkR+ScPewavVIMYe+HdVHpR -aG53/Ma/UkpmRqGyZxq7o093oL5d//xWC0Nyd5DKnvnyOfUNqfTq1+ezEC8wQjch -zDBwyYaYD8xYTYO7feUapTeNtqwylwA6Y3EkHp43xP901DfA4v6IRmAR3Qg/UDar -uHqklWJqbrDKaiFaafPz+x1wOZXzp26mgYmhiMU7ccqjUu6Du/2gd/Tkb+dC221K -mYo0SLwX3OSACCK28jHAPwQ+658geda4BmRkAjHXqc1S+4RFaQkAKtxVi8QGRkvA -Sh0JWzko/amrzgD5LkhLJuYwTKVYyrREgk/nkR4zw7CT/xH8gdLKH3Ep3XZPkiWv -HYG3Dy+MwwbMLyejSuQOmbp8HkUff6oZRZb9/D0CAwEAAaNCMEAwDgYDVR0PAQH/ -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFOFmzw7R8bNLtwYgFP6H -EtX2/vs+MA0GCSqGSIb3DQEBBQUAA4ICAQCoy3JAsnbBfnv8rWTjMnvMPLZdRtP1 -LOJwXcgu2AZ9mNELIaCJWSQBnfmvCX0KI4I01fx8cpm5o9dU9OpScA7F9dY74ToJ -MuYhOZO9sxXqT2r09Ys/L3yNWC7F4TmgPsc9SnOeQHrAK2GpZ8nzJLmzbVUsWh2e -JXLOC62qx1ViC777Y7NhRCOjy+EaDveaBk3e1CNOIZZbOVtXHS9dCF4Jef98l7VN -g64N1uajeeAz0JmWAjCnPv/So0M/BVoG6kQC2nz4SNAzqfkHx5Xh9T71XXG68pWp -dIhhWeO/yloTunK0jF02h+mmxTwTv97QRCbut+wucPrXnbes5cVAWubXbHssw1ab -R80LzvobtCHXt2a49CUwi1wNuepnsvRtrtWhnk/Yn+knArAdBtaP4/tIEp9/EaEQ -PkxROpaw0RPxx9gmrjrKkcRpnd8BKWRRb2jaFOwIQZeQjdCygPLPwj2/kWjFgGce -xGATVdVhmVd8upUPYUk6ynW8yQqTP2cOEvIo4jEbwFcW3wh8GcF+Dx+FHgo2fFt+ -J7x6v+Db9NpSvd4MVHAxkUOVyLzwPt0JfjBkUO1/AaQzZ01oT74V77D2AhGiGxMl -OtzCWfHjXEa7ZywCRuoeSKbmW9m1vFGikpbbqsY3Iqb+zCB0oy2pLmvLwIIRIbWT -ee5Ehr7XHuQe+w== ------END CERTIFICATE----- - -# Issuer: CN=CA \u6c83\u901a\u6839\u8bc1\u4e66 O=WoSign CA Limited -# Subject: CN=CA \u6c83\u901a\u6839\u8bc1\u4e66 O=WoSign CA Limited -# Label: "WoSign China" -# Serial: 106921963437422998931660691310149453965 -# MD5 Fingerprint: 78:83:5b:52:16:76:c4:24:3b:83:78:e8:ac:da:9a:93 -# SHA1 Fingerprint: 16:32:47:8d:89:f9:21:3a:92:00:85:63:f5:a4:a7:d3:12:40:8a:d6 -# SHA256 Fingerprint: d6:f0:34:bd:94:aa:23:3f:02:97:ec:a4:24:5b:28:39:73:e4:47:aa:59:0f:31:0c:77:f4:8f:df:83:11:22:54 ------BEGIN CERTIFICATE----- -MIIFWDCCA0CgAwIBAgIQUHBrzdgT/BtOOzNy0hFIjTANBgkqhkiG9w0BAQsFADBG -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxGzAZBgNV -BAMMEkNBIOayg+mAmuagueivgeS5pjAeFw0wOTA4MDgwMTAwMDFaFw0zOTA4MDgw -MTAwMDFaMEYxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFXb1NpZ24gQ0EgTGltaXRl -ZDEbMBkGA1UEAwwSQ0Eg5rKD6YCa5qC56K+B5LmmMIICIjANBgkqhkiG9w0BAQEF -AAOCAg8AMIICCgKCAgEA0EkhHiX8h8EqwqzbdoYGTufQdDTc7WU1/FDWiD+k8H/r -D195L4mx/bxjWDeTmzj4t1up+thxx7S8gJeNbEvxUNUqKaqoGXqW5pWOdO2XCld1 -9AXbbQs5uQF/qvbW2mzmBeCkTVL829B0txGMe41P/4eDrv8FAxNXUDf+jJZSEExf -v5RxadmWPgxDT74wwJ85dE8GRV2j1lY5aAfMh09Qd5Nx2UQIsYo06Yms25tO4dnk -UkWMLhQfkWsZHWgpLFbE4h4TV2TwYeO5Ed+w4VegG63XX9Gv2ystP9Bojg/qnw+L -NVgbExz03jWhCl3W6t8Sb8D7aQdGctyB9gQjF+BNdeFyb7Ao65vh4YOhn0pdr8yb -+gIgthhid5E7o9Vlrdx8kHccREGkSovrlXLp9glk3Kgtn3R46MGiCWOc76DbT52V -qyBPt7D3h1ymoOQ3OMdc4zUPLK2jgKLsLl3Az+2LBcLmc272idX10kaO6m1jGx6K -yX2m+Jzr5dVjhU1zZmkR/sgO9MHHZklTfuQZa/HpelmjbX7FF+Ynxu8b22/8DU0G -AbQOXDBGVWCvOGU6yke6rCzMRh+yRpY/8+0mBe53oWprfi1tWFxK1I5nuPHa1UaK -J/kR8slC/k7e3x9cxKSGhxYzoacXGKUN5AXlK8IrC6KVkLn9YDxOiT7nnO4fuwEC -AwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O -BBYEFOBNv9ybQV0T6GTwp+kVpOGBwboxMA0GCSqGSIb3DQEBCwUAA4ICAQBqinA4 -WbbaixjIvirTthnVZil6Xc1bL3McJk6jfW+rtylNpumlEYOnOXOvEESS5iVdT2H6 -yAa+Tkvv/vMx/sZ8cApBWNromUuWyXi8mHwCKe0JgOYKOoICKuLJL8hWGSbueBwj -/feTZU7n85iYr83d2Z5AiDEoOqsuC7CsDCT6eiaY8xJhEPRdF/d+4niXVOKM6Cm6 -jBAyvd0zaziGfjk9DgNyp115j0WKWa5bIW4xRtVZjc8VX90xJc/bYNaBRHIpAlf2 -ltTW/+op2znFuCyKGo3Oy+dCMYYFaA6eFN0AkLppRQjbbpCBhqcqBT/mhDn4t/lX -X0ykeVoQDF7Va/81XwVRHmyjdanPUIPTfPRm94KNPQx96N97qA4bLJyuQHCH2u2n -FoJavjVsIE4iYdm8UXrNemHcSxH5/mc0zy4EZmFcV5cjjPOGG0jfKq+nwf/Yjj4D -u9gqsPoUJbJRa4ZDhS4HIxaAjUz7tGM7zMN07RujHv41D198HRaG9Q7DlfEvr10l -O1Hm13ZBONFLAzkopR6RctR9q5czxNM+4Gm2KHmgCY0c0f9BckgG/Jou5yD5m6Le -ie2uPAmvylezkolwQOQvT8Jwg0DXJCxr5wkf09XHwQj02w47HAcLQxGEIYbpgNR1 -2KvxAmLBsX5VYc8T1yaw15zLKYs4SgsOkI26oQ== ------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=Certification Authority of WoSign G2 O=WoSign CA Limited -# Subject: CN=Certification Authority of WoSign G2 O=WoSign CA Limited -# Label: "Certification Authority of WoSign G2" -# Serial: 142423943073812161787490648904721057092 -# MD5 Fingerprint: c8:1c:7d:19:aa:cb:71:93:f2:50:f8:52:a8:1e:ba:60 -# SHA1 Fingerprint: fb:ed:dc:90:65:b7:27:20:37:bc:55:0c:9c:56:de:bb:f2:78:94:e1 -# SHA256 Fingerprint: d4:87:a5:6f:83:b0:74:82:e8:5e:96:33:94:c1:ec:c2:c9:e5:1d:09:03:ee:94:6b:02:c3:01:58:1e:d9:9e:16 ------BEGIN CERTIFICATE----- -MIIDfDCCAmSgAwIBAgIQayXaioidfLwPBbOxemFFRDANBgkqhkiG9w0BAQsFADBY -MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxLTArBgNV -BAMTJENlcnRpZmljYXRpb24gQXV0aG9yaXR5IG9mIFdvU2lnbiBHMjAeFw0xNDEx -MDgwMDU4NThaFw00NDExMDgwMDU4NThaMFgxCzAJBgNVBAYTAkNOMRowGAYDVQQK -ExFXb1NpZ24gQ0EgTGltaXRlZDEtMCsGA1UEAxMkQ2VydGlmaWNhdGlvbiBBdXRo -b3JpdHkgb2YgV29TaWduIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEAvsXEoCKASU+/2YcRxlPhuw+9YH+v9oIOH9ywjj2X4FA8jzrvZjtFB5sg+OPX -JYY1kBaiXW8wGQiHC38Gsp1ij96vkqVg1CuAmlI/9ZqD6TRay9nVYlzmDuDfBpgO -gHzKtB0TiGsOqCR3A9DuW/PKaZE1OVbFbeP3PU9ekzgkyhjpJMuSA93MHD0JcOQg -5PGurLtzaaNjOg9FD6FKmsLRY6zLEPg95k4ot+vElbGs/V6r+kHLXZ1L3PR8du9n -fwB6jdKgGlxNIuG12t12s9R23164i5jIFFTMaxeSt+BKv0mUYQs4kI9dJGwlezt5 -2eJ+na2fmKEG/HgUYFf47oB3sQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD -VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU+mCp62XF3RYUCE4MD42b4Pdkr2cwDQYJ -KoZIhvcNAQELBQADggEBAFfDejaCnI2Y4qtAqkePx6db7XznPWZaOzG73/MWM5H8 -fHulwqZm46qwtyeYP0nXYGdnPzZPSsvxFPpahygc7Y9BMsaV+X3avXtbwrAh449G -3CE4Q3RM+zD4F3LBMvzIkRfEzFg3TgvMWvchNSiDbGAtROtSjFA9tWwS1/oJu2yy -SrHFieT801LYYRf+epSEj3m2M1m6D8QL4nCgS3gu+sif/a+RZQp4OBXllxcU3fng -LDT4ONCEIgDAFFEYKwLcMFrw6AF8NTojrwjkr6qOKEJJLvD1mTS+7Q9LGOHSJDy7 -XUe3IfKN0QqZjuNuPq1w4I+5ysxugTH2e5x6eeRncRg= ------END CERTIFICATE----- - -# Issuer: CN=CA WoSign ECC Root O=WoSign CA Limited -# Subject: CN=CA WoSign ECC Root O=WoSign CA Limited -# Label: "CA WoSign ECC Root" -# Serial: 138625735294506723296996289575837012112 -# MD5 Fingerprint: 80:c6:53:ee:61:82:28:72:f0:ff:21:b9:17:ca:b2:20 -# SHA1 Fingerprint: d2:7a:d2:be:ed:94:c0:a1:3c:c7:25:21:ea:5d:71:be:81:19:f3:2b -# SHA256 Fingerprint: 8b:45:da:1c:06:f7:91:eb:0c:ab:f2:6b:e5:88:f5:fb:23:16:5c:2e:61:4b:f8:85:56:2d:0d:ce:50:b2:9b:02 ------BEGIN CERTIFICATE----- -MIICCTCCAY+gAwIBAgIQaEpYcIBr8I8C+vbe6LCQkDAKBggqhkjOPQQDAzBGMQsw -CQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxGzAZBgNVBAMT -EkNBIFdvU2lnbiBFQ0MgUm9vdDAeFw0xNDExMDgwMDU4NThaFw00NDExMDgwMDU4 -NThaMEYxCzAJBgNVBAYTAkNOMRowGAYDVQQKExFXb1NpZ24gQ0EgTGltaXRlZDEb -MBkGA1UEAxMSQ0EgV29TaWduIEVDQyBSb290MHYwEAYHKoZIzj0CAQYFK4EEACID -YgAE4f2OuEMkq5Z7hcK6C62N4DrjJLnSsb6IOsq/Srj57ywvr1FQPEd1bPiUt5v8 -KB7FVMxjnRZLU8HnIKvNrCXSf4/CwVqCXjCLelTOA7WRf6qU0NGKSMyCBSah1VES -1ns2o0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E -FgQUqv3VWqP2h4syhf3RMluARZPzA7gwCgYIKoZIzj0EAwMDaAAwZQIxAOSkhLCB -1T2wdKyUpOgOPQB0TKGXa/kNUTyh2Tv0Daupn75OcsqF1NnstTJFGG+rrQIwfcf3 -aWMvoeGY7xMQ0Xk/0f7qO3/eVvSQsRUR2LIiFdAvwyYua/GRspBl9JrmkO5K ------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=Entrust.net Secure Server Certification Authority O=Entrust.net OU=www.entrust.net/CPS incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Subject: CN=Entrust.net Secure Server Certification Authority O=Entrust.net OU=www.entrust.net/CPS incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Label: "Entrust.net Secure Server CA" -# Serial: 927650371 -# MD5 Fingerprint: df:f2:80:73:cc:f1:e6:61:73:fc:f5:42:e9:c5:7c:ee -# SHA1 Fingerprint: 99:a6:9b:e6:1a:fe:88:6b:4d:2b:82:00:7c:b8:54:fc:31:7e:15:39 -# SHA256 Fingerprint: 62:f2:40:27:8c:56:4c:4d:d8:bf:7d:9d:4f:6f:36:6e:a8:94:d2:2f:5f:34:d9:89:a9:83:ac:ec:2f:ff:ed:50 ------BEGIN CERTIFICATE----- -MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC -VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u -ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc -KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u -ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 -MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE -ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j -b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF -bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg -U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA -A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ -I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 -wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC -AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb -oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 -BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p -dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk -MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp -b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu -dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 -MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi -E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa -MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI -hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN -95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd -2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 2 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 2 Policy Validation Authority -# Label: "ValiCert Class 2 VA" -# Serial: 1 -# MD5 Fingerprint: a9:23:75:9b:ba:49:36:6e:31:c2:db:f2:e7:66:ba:87 -# SHA1 Fingerprint: 31:7a:2a:d0:7f:2b:33:5e:f5:a1:c3:4e:4b:57:e8:b7:d8:f1:fc:a6 -# SHA256 Fingerprint: 58:d0:17:27:9c:d4:dc:63:ab:dd:b1:96:a6:c9:90:6c:30:c4:e0:87:83:ea:e8:c1:60:99:54:d6:93:55:59:6b ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMTk1NFoXDTE5MDYy -NjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDOOnHK5avIWZJV16vY -dA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVCCSRrCl6zfN1SLUzm1NZ9 -WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7RfZHM047QS -v4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9v -UJSZSWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTu -IYEZoDJJKPTEjlbVUjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwC -W/POuZ6lcg5Ktz885hZo+L7tdEy8W9ViH0Pd ------END CERTIFICATE----- - -# Issuer: CN=NetLock Expressz (Class C) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Subject: CN=NetLock Expressz (Class C) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Label: "NetLock Express (Class C) Root" -# Serial: 104 -# MD5 Fingerprint: 4f:eb:f1:f0:70:c2:80:63:5d:58:9f:da:12:3c:a9:c4 -# SHA1 Fingerprint: e3:92:51:2f:0a:cf:f5:05:df:f6:de:06:7f:75:37:e1:65:ea:57:4b -# SHA256 Fingerprint: 0b:5e:ed:4e:84:64:03:cf:55:e0:65:84:84:40:ed:2a:82:75:8b:f5:b9:aa:1f:25:3d:46:13:cf:a0:80:ff:3f ------BEGIN CERTIFICATE----- -MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUx -ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 -b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQD -EytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBDKSBUYW51c2l0dmFueWtpYWRvMB4X -DTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJBgNVBAYTAkhVMREw -DwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9u -c2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMr -TmV0TG9jayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzAN -BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNA -OoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3ZW3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC -2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63euyucYT2BDMIJTLrdKwW -RMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQwDgYDVR0P -AQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEW -ggJNRklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0 -YWxhbm9zIFN6b2xnYWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFz -b2sgYWxhcGphbiBrZXN6dWx0LiBBIGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBO -ZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1iaXp0b3NpdGFzYSB2ZWRpLiBB -IGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0ZWxlIGF6IGVs -b2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs -ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25s -YXBqYW4gYSBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kg -a2VyaGV0byBheiBlbGxlbm9yemVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4g -SU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5kIHRoZSB1c2Ugb2YgdGhpcyBjZXJ0 -aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQUyBhdmFpbGFibGUg -YXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwgYXQg -Y3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmY -ta3UzbM2xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2g -pO0u9f38vf5NNwgMvOOWgyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4 -Fp1hBWeAyNDYpQcCNJgEjTME1A== ------END CERTIFICATE----- - -# Issuer: CN=NetLock Uzleti (Class B) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Subject: CN=NetLock Uzleti (Class B) Tanusitvanykiado O=NetLock Halozatbiztonsagi Kft. OU=Tanusitvanykiadok -# Label: "NetLock Business (Class B) Root" -# Serial: 105 -# MD5 Fingerprint: 39:16:aa:b9:6a:41:e1:14:69:df:9e:6c:3b:72:dc:b6 -# SHA1 Fingerprint: 87:9f:4b:ee:05:df:98:58:3b:e3:60:d6:33:e7:0d:3f:fe:98:71:af -# SHA256 Fingerprint: 39:df:7b:68:2b:7b:93:8f:84:71:54:81:cc:de:8d:60:d8:f2:2e:c5:98:87:7d:0a:aa:c1:2b:59:18:2b:03:12 ------BEGIN CERTIFICATE----- -MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUx -ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 -b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQD -EylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikgVGFudXNpdHZhbnlraWFkbzAeFw05 -OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYDVQQGEwJIVTERMA8G -A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh -Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5l -dExvY2sgVXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqG -SIb3DQEBAQUAA4GNADCBiQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xK -gZjupNTKihe5In+DCnVMm8Bp2GQ5o+2So/1bXHQawEfKOml2mrriRBf8TKPV/riX -iK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr1nGTLbO/CVRY7QbrqHvc -Q7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8E -BAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1G -SUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFu -b3MgU3pvbGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBh -bGFwamFuIGtlc3p1bHQuIEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExv -Y2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGln -aXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0 -IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh -c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGph -biBhIGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJo -ZXRvIGF6IGVsbGVub3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBP -UlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmlj -YXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBo -dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNA -bmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06 -sPgzTEdM43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXa -n3BukxowOR0w2y7jfLKRstE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKS -NitjrFgBazMpUIaD8QFI ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 3 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 3 Policy Validation Authority -# Label: "RSA Root Certificate 1" -# Serial: 1 -# MD5 Fingerprint: a2:6f:53:b7:ee:40:db:4a:68:e7:fa:18:d9:10:4b:72 -# SHA1 Fingerprint: 69:bd:8c:f4:9c:d3:00:fb:59:2e:17:93:ca:55:6a:f3:ec:aa:35:fb -# SHA256 Fingerprint: bc:23:f9:8a:31:3c:b9:2d:e3:bb:fc:3a:5a:9f:44:61:ac:39:49:4c:4a:e1:5a:9e:9d:f1:31:e9:9b:73:01:9a ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMjIzM1oXDTE5MDYy -NjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjmFGWHOjVsQaBalfD -cnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td3zZxFJmP3MKS8edgkpfs -2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89HBFx1cQqY -JJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliE -Zwgs3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJ -n0WuPIqpsHEzXcjFV9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/A -PhmcGcwTTYJBtYze4D1gCCAPRX5ron+jjBXu ------END CERTIFICATE----- - -# Issuer: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 1 Policy Validation Authority -# Subject: CN=http://www.valicert.com/ O=ValiCert, Inc. OU=ValiCert Class 1 Policy Validation Authority -# Label: "ValiCert Class 1 VA" -# Serial: 1 -# MD5 Fingerprint: 65:58:ab:15:ad:57:6c:1e:a8:a7:b5:69:ac:bf:ff:eb -# SHA1 Fingerprint: e5:df:74:3c:b6:01:c4:9b:98:43:dc:ab:8c:e8:6a:81:10:9f:e4:8e -# SHA256 Fingerprint: f4:c1:49:55:1a:30:13:a3:5b:c7:bf:fe:17:a7:f3:44:9b:c1:ab:5b:5a:0a:e7:4b:06:c2:3b:90:00:4c:01:04 ------BEGIN CERTIFICATE----- -MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 -IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz -BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y -aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG -9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIyMjM0OFoXDTE5MDYy -NTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y -azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs -YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw -Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl -cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9Y -LqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIiGQj4/xEjm84H9b9pGib+ -TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCmDuJWBQ8Y -TfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0 -LBwGlN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLW -I8sogTLDAHkY7FkXicnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPw -nXS3qT6gpf+2SQMT2iLM7XGCK5nPOrf1LXLI ------END CERTIFICATE----- - -# Issuer: CN=Equifax Secure eBusiness CA-1 O=Equifax Secure Inc. -# Subject: CN=Equifax Secure eBusiness CA-1 O=Equifax Secure Inc. -# Label: "Equifax Secure eBusiness CA 1" -# Serial: 4 -# MD5 Fingerprint: 64:9c:ef:2e:44:fc:c6:8f:52:07:d0:51:73:8f:cb:3d -# SHA1 Fingerprint: da:40:18:8b:91:89:a3:ed:ee:ae:da:97:fe:2f:9d:f5:b7:d1:8a:41 -# SHA256 Fingerprint: cf:56:ff:46:a4:a1:86:10:9d:d9:65:84:b5:ee:b5:8a:51:0c:42:75:b0:e5:f9:4f:40:bb:ae:86:5e:19:f6:73 ------BEGIN CERTIFICATE----- -MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBT -ZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQw -MDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5j -LjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwgZ8wDQYJ -KoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ1MRo -RvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBu -WqDZQu4aIZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKw -Env+j6YDAgMBAAGjZjBkMBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTAD -AQH/MB8GA1UdIwQYMBaAFEp4MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRK -eDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZM -zfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+ -WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN -/Bf+KpYrtWKmpj29f5JZzVoqgrI3eQ== ------END CERTIFICATE----- - -# Issuer: CN=Equifax Secure Global eBusiness CA-1 O=Equifax Secure Inc. -# Subject: CN=Equifax Secure Global eBusiness CA-1 O=Equifax Secure Inc. -# Label: "Equifax Secure Global eBusiness CA" -# Serial: 1 -# MD5 Fingerprint: 8f:5d:77:06:27:c4:98:3c:5b:93:78:e7:d7:7d:9b:cc -# SHA1 Fingerprint: 7e:78:4a:10:1c:82:65:cc:2d:e1:f1:6d:47:b4:40:ca:d9:0a:19:45 -# SHA256 Fingerprint: 5f:0b:62:ea:b5:e3:53:ea:65:21:65:16:58:fb:b6:53:59:f4:43:28:0a:4a:fb:d1:04:d7:7d:10:f9:f0:4c:07 ------BEGIN CERTIFICATE----- -MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEc -MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBT -ZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIw -MDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0VxdWlmYXggU2Vj -dXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEdsb2JhbCBlQnVzaW5l -c3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRVPEnC -UdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc -58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/ -o5brhTMhHD4ePmBudpxnhcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAH -MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1dr -aGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUA -A4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkA -Z70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv -8qIYNMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV ------END CERTIFICATE----- - -# Issuer: CN=Thawte Premium Server CA O=Thawte Consulting cc OU=Certification Services Division -# Subject: CN=Thawte Premium Server CA O=Thawte Consulting cc OU=Certification Services Division -# Label: "Thawte Premium Server CA" -# Serial: 1 -# MD5 Fingerprint: 06:9f:69:79:16:66:90:02:1b:8c:8c:a2:c3:07:6f:3a -# SHA1 Fingerprint: 62:7f:8d:78:27:65:63:99:d2:7d:7f:90:44:c9:fe:b3:f3:3e:fa:9a -# SHA256 Fingerprint: ab:70:36:36:5c:71:54:aa:29:c2:c2:9f:5d:41:91:16:3b:16:2a:22:25:01:13:57:d5:6d:07:ff:a7:bc:1f:72 ------BEGIN CERTIFICATE----- -MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFByZW1pdW0gU2Vy -dmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZlckB0aGF3dGUuY29t -MB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYTAlpB -MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsG -A1UEChMUVGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRp -b24gU2VydmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNl -cnZlciBDQTEoMCYGCSqGSIb3DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNv -bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkE -VdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQ -ug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMR -uHM/qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG -9w0BAQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI -hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JM -pAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcUQg== ------END CERTIFICATE----- - -# Issuer: CN=Thawte Server CA O=Thawte Consulting cc OU=Certification Services Division -# Subject: CN=Thawte Server CA O=Thawte Consulting cc OU=Certification Services Division -# Label: "Thawte Server CA" -# Serial: 1 -# MD5 Fingerprint: c5:70:c4:a2:ed:53:78:0c:c8:10:53:81:64:cb:d0:1d -# SHA1 Fingerprint: 23:e5:94:94:51:95:f2:41:48:03:b4:d5:64:d2:a3:a3:f5:d8:8b:8c -# SHA256 Fingerprint: b4:41:0b:73:e2:e6:ea:ca:47:fb:c4:2f:8f:a4:01:8a:f4:38:1d:c5:4c:fa:a8:44:50:46:1e:ed:09:45:4d:e9 ------BEGIN CERTIFICATE----- -MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx -FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD -VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv -biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm -MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTYwODAx -MDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT -DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3 -dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNl -cyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3 -DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD -gY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91 -yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCX -L+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGj -EzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG -7oWDTSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e -QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZ -qdq5snUb9kLy78fyGPmJvKP/iiMucEc= ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Label: "Verisign Class 3 Public Primary Certification Authority" -# Serial: 149843929435818692848040365716851702463 -# MD5 Fingerprint: 10:fc:63:5d:f6:26:3e:0d:f3:25:be:5f:79:cd:67:67 -# SHA1 Fingerprint: 74:2c:31:92:e6:07:e4:24:eb:45:49:54:2b:e1:bb:c5:3e:61:74:e2 -# SHA256 Fingerprint: e7:68:56:34:ef:ac:f6:9a:ce:93:9a:6b:25:5b:7b:4f:ab:ef:42:93:5b:50:a2:65:ac:b5:cb:60:27:e4:4e:70 ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE -BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is -I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G -CSqGSIb3DQEBAgUAA4GBALtMEivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Do -lbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNyc -AA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority -# Label: "Verisign Class 3 Public Primary Certification Authority" -# Serial: 80507572722862485515306429940691309246 -# MD5 Fingerprint: ef:5a:f1:33:ef:f1:cd:bb:51:02:ee:12:14:4b:96:c4 -# SHA1 Fingerprint: a1:db:63:93:91:6f:17:e4:18:55:09:40:04:15:c7:02:40:b0:ae:6b -# SHA256 Fingerprint: a4:b6:b3:99:6f:c2:f3:06:b3:fd:86:81:bd:63:41:3d:8c:50:09:cc:4f:a3:29:c2:cc:f0:e2:fa:1b:14:03:05 ------BEGIN CERTIFICATE----- -MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkG -A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz -cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 -MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV -BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN -ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE -BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is -I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G -CSqGSIb3DQEBBQUAA4GBABByUqkFFBkyCEHwxWsKzH4PIRnN5GfcX6kb5sroc50i -2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWXbj9T/UWZYB2oK0z5XqcJ -2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/D/xwzoiQ ------END CERTIFICATE----- - -# Issuer: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority - G2/(c) 1998 VeriSign, Inc. - For authorized use only/VeriSign Trust Network -# Subject: O=VeriSign, Inc. OU=Class 3 Public Primary Certification Authority - G2/(c) 1998 VeriSign, Inc. - For authorized use only/VeriSign Trust Network -# Label: "Verisign Class 3 Public Primary Certification Authority - G2" -# Serial: 167285380242319648451154478808036881606 -# MD5 Fingerprint: a2:33:9b:4c:74:78:73:d4:6c:e7:c1:f3:8d:cb:5c:e9 -# SHA1 Fingerprint: 85:37:1c:a6:e5:50:14:3d:ce:28:03:47:1b:de:3a:09:e8:f8:77:0f -# SHA256 Fingerprint: 83:ce:3c:12:29:68:8a:59:3d:48:5f:81:97:3c:0f:91:95:43:1e:da:37:cc:5e:36:43:0e:79:c7:a8:88:63:8b ------BEGIN CERTIFICATE----- -MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ -BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh -c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy -MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp -emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X -DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo -YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 -MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB -AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4 -pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0 -13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID -AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk -U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i -F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY -oJ2daZH9 ------END CERTIFICATE----- - -# Issuer: CN=GTE CyberTrust Global Root O=GTE Corporation OU=GTE CyberTrust Solutions, Inc. -# Subject: CN=GTE CyberTrust Global Root O=GTE Corporation OU=GTE CyberTrust Solutions, Inc. -# Label: "GTE CyberTrust Global Root" -# Serial: 421 -# MD5 Fingerprint: ca:3d:d3:68:f1:03:5c:d0:32:fa:b8:2b:59:e8:5a:db -# SHA1 Fingerprint: 97:81:79:50:d8:1c:96:70:cc:34:d8:09:cf:79:44:31:36:7e:f4:74 -# SHA256 Fingerprint: a5:31:25:18:8d:21:10:aa:96:4b:02:c7:b7:c6:da:32:03:17:08:94:e5:fb:71:ff:fb:66:67:d5:e6:81:0a:36 ------BEGIN CERTIFICATE----- -MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYD -VQQKEw9HVEUgQ29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNv -bHV0aW9ucywgSW5jLjEjMCEGA1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJv -b3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEzMjM1OTAwWjB1MQswCQYDVQQGEwJV -UzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQLEx5HVEUgQ3liZXJU -cnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0IEds -b2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrH -iM3dFw4usJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTS -r41tiGeA5u2ylc9yMcqlHHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X4 -04Wqk2kmhXBIgD8SFcd5tB8FLztimQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBAG3r -GwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMWM4ETCJ57NE7fQMh017l9 -3PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OFNMQkpw0P -lZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ ------END CERTIFICATE----- - -# Issuer: C=US, O=Equifax, OU=Equifax Secure Certificate Authority -# Subject: C=US, O=Equifax, OU=Equifax Secure Certificate Authority -# Label: "Equifax Secure Certificate Authority" -# Serial: 903804111 -# MD5 Fingerprint: 67:cb:9d:c0:13:24:8a:82:9b:b2:17:1e:d1:1b:ec:d4 -# SHA1 Fingerprint: d2:32:09:ad:23:d3:14:23:21:74:e4:0d:7f:9d:62:13:97:86:63:3a -# SHA256 Fingerprint: 08:29:7a:40:47:db:a2:36:80:c7:31:db:6e:31:76:53:ca:78:48:e1:be:bd:3a:0b:01:79:a7:07:f9:2c:f1:78 ------BEGIN CERTIFICATE----- -MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV -UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy -dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1 -MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx -dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B -AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f -BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A -cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC -AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ -MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm -aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw -ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj -IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF -MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA -A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y -7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh -1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 ------END CERTIFICATE----- diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/DESCRIPTION.rst b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/DESCRIPTION.rst deleted file mode 100644 index c0f044d..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/DESCRIPTION.rst +++ /dev/null @@ -1,70 +0,0 @@ -Chardet: The Universal Character Encoding Detector --------------------------------------------------- - -.. image:: https://img.shields.io/travis/chardet/chardet/stable.svg - :alt: Build status - :target: https://travis-ci.org/chardet/chardet - -.. image:: https://img.shields.io/coveralls/chardet/chardet/stable.svg - :target: https://coveralls.io/r/chardet/chardet - -.. image:: https://img.shields.io/pypi/v/chardet.svg - :target: https://warehouse.python.org/project/chardet/ - :alt: Latest version on PyPI - -.. image:: https://img.shields.io/pypi/l/chardet.svg - :alt: License - - -Detects - - ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants) - - Big5, GB2312, EUC-TW, HZ-GB-2312, ISO-2022-CN (Traditional and Simplified Chinese) - - EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP (Japanese) - - EUC-KR, ISO-2022-KR (Korean) - - KOI8-R, MacCyrillic, IBM855, IBM866, ISO-8859-5, windows-1251 (Cyrillic) - - ISO-8859-5, windows-1251 (Bulgarian) - - ISO-8859-1, windows-1252 (Western European languages) - - ISO-8859-7, windows-1253 (Greek) - - ISO-8859-8, windows-1255 (Visual and Logical Hebrew) - - TIS-620 (Thai) - -.. note:: - Our ISO-8859-2 and windows-1250 (Hungarian) probers have been temporarily - disabled until we can retrain the models. - -Requires Python 2.6, 2.7, or 3.3+. - -Installation ------------- - -Install from `PyPI `_:: - - pip install chardet - -Documentation -------------- - -For users, docs are now available at https://chardet.readthedocs.io/. - -Command-line Tool ------------------ - -chardet comes with a command-line script which reports on the encodings of one -or more files:: - - % chardetect somefile someotherfile - somefile: windows-1252 with confidence 0.5 - someotherfile: ascii with confidence 1.0 - -About ------ - -This is a continuation of Mark Pilgrim's excellent chardet. Previously, two -versions needed to be maintained: one that supported python 2.x and one that -supported python 3.x. We've recently merged with `Ian Cordasco `_'s -`charade `_ fork, so now we have one -coherent version that works for Python 2.6+. - -:maintainer: Dan Blanchard - - diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/INSTALLER b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/INSTALLER deleted file mode 100644 index a1b589e..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/INSTALLER +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/METADATA b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/METADATA deleted file mode 100644 index 1427867..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/METADATA +++ /dev/null @@ -1,96 +0,0 @@ -Metadata-Version: 2.0 -Name: chardet -Version: 3.0.4 -Summary: Universal encoding detector for Python 2 and 3 -Home-page: https://github.com/chardet/chardet -Author: Daniel Blanchard -Author-email: dan.blanchard@gmail.com -License: LGPL -Keywords: encoding,i18n,xml -Platform: UNKNOWN -Classifier: Development Status :: 4 - Beta -Classifier: Intended Audience :: Developers -Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL) -Classifier: Operating System :: OS Independent -Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2 -Classifier: Programming Language :: Python :: 2.6 -Classifier: Programming Language :: Python :: 2.7 -Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 -Classifier: Programming Language :: Python :: 3.4 -Classifier: Programming Language :: Python :: 3.5 -Classifier: Programming Language :: Python :: 3.6 -Classifier: Topic :: Software Development :: Libraries :: Python Modules -Classifier: Topic :: Text Processing :: Linguistic - -Chardet: The Universal Character Encoding Detector --------------------------------------------------- - -.. image:: https://img.shields.io/travis/chardet/chardet/stable.svg - :alt: Build status - :target: https://travis-ci.org/chardet/chardet - -.. image:: https://img.shields.io/coveralls/chardet/chardet/stable.svg - :target: https://coveralls.io/r/chardet/chardet - -.. image:: https://img.shields.io/pypi/v/chardet.svg - :target: https://warehouse.python.org/project/chardet/ - :alt: Latest version on PyPI - -.. image:: https://img.shields.io/pypi/l/chardet.svg - :alt: License - - -Detects - - ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants) - - Big5, GB2312, EUC-TW, HZ-GB-2312, ISO-2022-CN (Traditional and Simplified Chinese) - - EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP (Japanese) - - EUC-KR, ISO-2022-KR (Korean) - - KOI8-R, MacCyrillic, IBM855, IBM866, ISO-8859-5, windows-1251 (Cyrillic) - - ISO-8859-5, windows-1251 (Bulgarian) - - ISO-8859-1, windows-1252 (Western European languages) - - ISO-8859-7, windows-1253 (Greek) - - ISO-8859-8, windows-1255 (Visual and Logical Hebrew) - - TIS-620 (Thai) - -.. note:: - Our ISO-8859-2 and windows-1250 (Hungarian) probers have been temporarily - disabled until we can retrain the models. - -Requires Python 2.6, 2.7, or 3.3+. - -Installation ------------- - -Install from `PyPI `_:: - - pip install chardet - -Documentation -------------- - -For users, docs are now available at https://chardet.readthedocs.io/. - -Command-line Tool ------------------ - -chardet comes with a command-line script which reports on the encodings of one -or more files:: - - % chardetect somefile someotherfile - somefile: windows-1252 with confidence 0.5 - someotherfile: ascii with confidence 1.0 - -About ------ - -This is a continuation of Mark Pilgrim's excellent chardet. Previously, two -versions needed to be maintained: one that supported python 2.x and one that -supported python 3.x. We've recently merged with `Ian Cordasco `_'s -`charade `_ fork, so now we have one -coherent version that works for Python 2.6+. - -:maintainer: Dan Blanchard - - diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/RECORD b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/RECORD deleted file mode 100644 index b36b905..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/RECORD +++ /dev/null @@ -1,91 +0,0 @@ -chardet/__init__.py,sha256=YsP5wQlsHJ2auF1RZJfypiSrCA7_bQiRm3ES_NI76-Y,1559 -chardet/big5freq.py,sha256=D_zK5GyzoVsRes0HkLJziltFQX0bKCLOrFe9_xDvO_8,31254 -chardet/big5prober.py,sha256=kBxHbdetBpPe7xrlb-e990iot64g_eGSLd32lB7_h3M,1757 -chardet/chardistribution.py,sha256=3woWS62KrGooKyqz4zQSnjFbJpa6V7g02daAibTwcl8,9411 -chardet/charsetgroupprober.py,sha256=6bDu8YIiRuScX4ca9Igb0U69TA2PGXXDej6Cc4_9kO4,3787 -chardet/charsetprober.py,sha256=KSmwJErjypyj0bRZmC5F5eM7c8YQgLYIjZXintZNstg,5110 -chardet/codingstatemachine.py,sha256=VYp_6cyyki5sHgXDSZnXW4q1oelHc3cu9AyQTX7uug8,3590 -chardet/compat.py,sha256=PKTzHkSbtbHDqS9PyujMbX74q1a8mMpeQTDVsQhZMRw,1134 -chardet/cp949prober.py,sha256=TZ434QX8zzBsnUvL_8wm4AQVTZ2ZkqEEQL_lNw9f9ow,1855 -chardet/enums.py,sha256=Aimwdb9as1dJKZaFNUH2OhWIVBVd6ZkJJ_WK5sNY8cU,1661 -chardet/escprober.py,sha256=kkyqVg1Yw3DIOAMJ2bdlyQgUFQhuHAW8dUGskToNWSc,3950 -chardet/escsm.py,sha256=RuXlgNvTIDarndvllNCk5WZBIpdCxQ0kcd9EAuxUh84,10510 -chardet/eucjpprober.py,sha256=iD8Jdp0ISRjgjiVN7f0e8xGeQJ5GM2oeZ1dA8nbSeUw,3749 -chardet/euckrfreq.py,sha256=-7GdmvgWez4-eO4SuXpa7tBiDi5vRXQ8WvdFAzVaSfo,13546 -chardet/euckrprober.py,sha256=MqFMTQXxW4HbzIpZ9lKDHB3GN8SP4yiHenTmf8g_PxY,1748 -chardet/euctwfreq.py,sha256=No1WyduFOgB5VITUA7PLyC5oJRNzRyMbBxaKI1l16MA,31621 -chardet/euctwprober.py,sha256=13p6EP4yRaxqnP4iHtxHOJ6R2zxHq1_m8hTRjzVZ95c,1747 -chardet/gb2312freq.py,sha256=JX8lsweKLmnCwmk8UHEQsLgkr_rP_kEbvivC4qPOrlc,20715 -chardet/gb2312prober.py,sha256=gGvIWi9WhDjE-xQXHvNIyrnLvEbMAYgyUSZ65HUfylw,1754 -chardet/hebrewprober.py,sha256=c3SZ-K7hvyzGY6JRAZxJgwJ_sUS9k0WYkvMY00YBYFo,13838 -chardet/jisfreq.py,sha256=vpmJv2Bu0J8gnMVRPHMFefTRvo_ha1mryLig8CBwgOg,25777 -chardet/jpcntx.py,sha256=PYlNqRUQT8LM3cT5FmHGP0iiscFlTWED92MALvBungo,19643 -chardet/langbulgarianmodel.py,sha256=1HqQS9Pbtnj1xQgxitJMvw8X6kKr5OockNCZWfEQrPE,12839 -chardet/langcyrillicmodel.py,sha256=LODajvsetH87yYDDQKA2CULXUH87tI223dhfjh9Zx9c,17948 -chardet/langgreekmodel.py,sha256=8YAW7bU8YwSJap0kIJSbPMw1BEqzGjWzqcqf0WgUKAA,12688 -chardet/langhebrewmodel.py,sha256=JSnqmE5E62tDLTPTvLpQsg5gOMO4PbdWRvV7Avkc0HA,11345 -chardet/langhungarianmodel.py,sha256=RhapYSG5l0ZaO-VV4Fan5sW0WRGQqhwBM61yx3yxyOA,12592 -chardet/langthaimodel.py,sha256=8l0173Gu_W6G8mxmQOTEF4ls2YdE7FxWf3QkSxEGXJQ,11290 -chardet/langturkishmodel.py,sha256=W22eRNJsqI6uWAfwXSKVWWnCerYqrI8dZQTm_M0lRFk,11102 -chardet/latin1prober.py,sha256=S2IoORhFk39FEFOlSFWtgVybRiP6h7BlLldHVclNkU8,5370 -chardet/mbcharsetprober.py,sha256=AR95eFH9vuqSfvLQZN-L5ijea25NOBCoXqw8s5O9xLQ,3413 -chardet/mbcsgroupprober.py,sha256=h6TRnnYq2OxG1WdD5JOyxcdVpn7dG0q-vB8nWr5mbh4,2012 -chardet/mbcssm.py,sha256=SY32wVIF3HzcjY3BaEspy9metbNSKxIIB0RKPn7tjpI,25481 -chardet/sbcharsetprober.py,sha256=LDSpCldDCFlYwUkGkwD2oFxLlPWIWXT09akH_2PiY74,5657 -chardet/sbcsgroupprober.py,sha256=1IprcCB_k1qfmnxGC6MBbxELlKqD3scW6S8YIwdeyXA,3546 -chardet/sjisprober.py,sha256=IIt-lZj0WJqK4rmUZzKZP4GJlE8KUEtFYVuY96ek5MQ,3774 -chardet/universaldetector.py,sha256=qL0174lSZE442eB21nnktT9_VcAye07laFWUeUrjttY,12485 -chardet/utf8prober.py,sha256=IdD8v3zWOsB8OLiyPi-y_fqwipRFxV9Nc1eKBLSuIEw,2766 -chardet/version.py,sha256=sp3B08mrDXB-pf3K9fqJ_zeDHOCLC8RrngQyDFap_7g,242 -chardet/cli/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1 -chardet/cli/chardetect.py,sha256=YBO8L4mXo0WR6_-Fjh_8QxPBoEBNqB9oNxNrdc54AQs,2738 -chardet-3.0.4.dist-info/DESCRIPTION.rst,sha256=PQ4sBsMyKFZkjC6QpmbpLn0UtCNyeb-ZqvCGEgyZMGk,2174 -chardet-3.0.4.dist-info/METADATA,sha256=RV_2I4B1Z586DL8oVO5Kp7X5bUdQ5EuKAvNoAEF8wSw,3239 -chardet-3.0.4.dist-info/RECORD,, -chardet-3.0.4.dist-info/WHEEL,sha256=o2k-Qa-RMNIJmUdIc7KU6VWR_ErNRbWNlxDIpl7lm34,110 -chardet-3.0.4.dist-info/entry_points.txt,sha256=fAMmhu5eJ-zAJ-smfqQwRClQ3-nozOCmvJ6-E8lgGJo,60 -chardet-3.0.4.dist-info/metadata.json,sha256=0htbRM18ujyGZDdfowgAqj6Hq2eQtwzwyhaEveKntgo,1375 -chardet-3.0.4.dist-info/top_level.txt,sha256=AowzBbZy4x8EirABDdJSLJZMkJ_53iIag8xfKR6D7kI,8 -../../../bin/chardetect,sha256=_zMhiDRh6li3WFpkcREmRo8tp86U4coKcc3cY6PivXE,247 -chardet-3.0.4.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -chardet/__pycache__/version.cpython-34.pyc,, -chardet/__pycache__/enums.cpython-34.pyc,, -chardet/__pycache__/mbcharsetprober.cpython-34.pyc,, -chardet/__pycache__/charsetprober.cpython-34.pyc,, -chardet/__pycache__/compat.cpython-34.pyc,, -chardet/__pycache__/gb2312freq.cpython-34.pyc,, -chardet/__pycache__/jisfreq.cpython-34.pyc,, -chardet/__pycache__/langthaimodel.cpython-34.pyc,, -chardet/__pycache__/jpcntx.cpython-34.pyc,, -chardet/__pycache__/mbcssm.cpython-34.pyc,, -chardet/__pycache__/langhungarianmodel.cpython-34.pyc,, -chardet/__pycache__/mbcsgroupprober.cpython-34.pyc,, -chardet/__pycache__/codingstatemachine.cpython-34.pyc,, -chardet/__pycache__/gb2312prober.cpython-34.pyc,, -chardet/__pycache__/langbulgarianmodel.cpython-34.pyc,, -chardet/__pycache__/langcyrillicmodel.cpython-34.pyc,, -chardet/__pycache__/latin1prober.cpython-34.pyc,, -chardet/__pycache__/charsetgroupprober.cpython-34.pyc,, -chardet/__pycache__/euctwfreq.cpython-34.pyc,, -chardet/__pycache__/escsm.cpython-34.pyc,, -chardet/__pycache__/big5freq.cpython-34.pyc,, -chardet/__pycache__/sbcsgroupprober.cpython-34.pyc,, -chardet/__pycache__/cp949prober.cpython-34.pyc,, -chardet/__pycache__/eucjpprober.cpython-34.pyc,, -chardet/__pycache__/langhebrewmodel.cpython-34.pyc,, -chardet/__pycache__/chardistribution.cpython-34.pyc,, -chardet/__pycache__/sbcharsetprober.cpython-34.pyc,, -chardet/__pycache__/universaldetector.cpython-34.pyc,, -chardet/__pycache__/hebrewprober.cpython-34.pyc,, -chardet/__pycache__/utf8prober.cpython-34.pyc,, -chardet/__pycache__/langturkishmodel.cpython-34.pyc,, -chardet/__pycache__/euckrprober.cpython-34.pyc,, -chardet/__pycache__/langgreekmodel.cpython-34.pyc,, -chardet/__pycache__/sjisprober.cpython-34.pyc,, -chardet/__pycache__/big5prober.cpython-34.pyc,, -chardet/__pycache__/__init__.cpython-34.pyc,, -chardet/cli/__pycache__/chardetect.cpython-34.pyc,, -chardet/__pycache__/euctwprober.cpython-34.pyc,, -chardet/cli/__pycache__/__init__.cpython-34.pyc,, -chardet/__pycache__/escprober.cpython-34.pyc,, -chardet/__pycache__/euckrfreq.cpython-34.pyc,, diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/WHEEL b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/WHEEL deleted file mode 100644 index 8b6dd1b..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/WHEEL +++ /dev/null @@ -1,6 +0,0 @@ -Wheel-Version: 1.0 -Generator: bdist_wheel (0.29.0) -Root-Is-Purelib: true -Tag: py2-none-any -Tag: py3-none-any - diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/entry_points.txt b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/entry_points.txt deleted file mode 100644 index a884269..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/entry_points.txt +++ /dev/null @@ -1,3 +0,0 @@ -[console_scripts] -chardetect = chardet.cli.chardetect:main - diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/metadata.json b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/metadata.json deleted file mode 100644 index 8cdf025..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"classifiers": ["Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Text Processing :: Linguistic"], "extensions": {"python.commands": {"wrap_console": {"chardetect": "chardet.cli.chardetect:main"}}, "python.details": {"contacts": [{"email": "dan.blanchard@gmail.com", "name": "Daniel Blanchard", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}, "project_urls": {"Home": "https://github.com/chardet/chardet"}}, "python.exports": {"console_scripts": {"chardetect": "chardet.cli.chardetect:main"}}}, "generator": "bdist_wheel (0.29.0)", "keywords": ["encoding", "i18n", "xml"], "license": "LGPL", "metadata_version": "2.0", "name": "chardet", "summary": "Universal encoding detector for Python 2 and 3", "test_requires": [{"requires": ["hypothesis", "pytest"]}], "version": "3.0.4"} \ No newline at end of file diff --git a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/top_level.txt b/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/top_level.txt deleted file mode 100644 index 79236f2..0000000 --- a/env/lib/python3.4/site-packages/chardet-3.0.4.dist-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -chardet diff --git a/env/lib/python3.4/site-packages/chardet/__init__.py b/env/lib/python3.4/site-packages/chardet/__init__.py deleted file mode 100644 index 0f9f820..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 6ec20e7c1e4051230e8ad4247eb64ea52a95be0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 841 zcmYjQO>fgc5S?}Wkp!wXAPUF5MxqI#jBh58%X%os_P;W6#Wc&u_i!KexBqua1A5-gg0h!Hr?z^D~^~8w@dC3{rrM zfzKebz_)-=)q=DEnGL>O=M6|5$XxJU$UN{ptlAJe@D0FkLhQn*>-}aZ*|kjL`1CP_ z{Vp?|_j&S3s4_}l2rVXBDg@jL0;(l44+7(T7`_|5e0ww@HVtxU<9v>@{D?sVe8I?I zWkLCRlUh}J2)aRQxUfMx1Y04jy1p{FL@-+ymjF46xUd3PVi76cy2U7IQe)J$uD-W9 zj@m8P=YorTBI6{Va(PzeQ(REa#|tfZsTDSQ?TRueA{Av-Bf!RhWcUdR)KGCbLnXnr z6KGI=9(NTYd}$#|BEr*|3${ diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/big5freq.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/big5freq.cpython-34.pyc deleted file mode 100644 index 73feabbcc5d686f6cd9310272a6fd1ce7f9d5333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54675 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

    +7SKQrDzC!l^jlaIe}h8 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 O{qO6)PvHOS6ZjuuH9d;} diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/big5prober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/big5prober.cpython-34.pyc deleted file mode 100644 index a0ed65473191b095b195d6efdc7c3d8000462e4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1103 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 TY2ilZ@kcAXK5sOy=G}h)8Di9> diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/charsetprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/charsetprober.cpython-34.pyc deleted file mode 100644 index 552512c8f4f0c6b2db768772ce45a3fd00e5be37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3596 zcmai1Pj4H?6`$QDSENi?vTVhbn- zY^*GQ{K;Q`_swO-{>{!k74+Z7t3N;^@N-zgSi9^ytnD!2GU2hrWdo13J?4BUDoj+_ z=U7!`vcjH&T&1n8rvCzb*xm~VZPUpcpQx-8r@fX5jf`k&`grKPk5~U0jf6;uK?_L` z=}kmJ&gU3fX~HLgkRyF2mYAr~@HuADuQRc1XKQx$0uzntET&eNxM*jWnZ(p86Km7i zhNWC$VtqMVvPr65*FImqw->oEfgbwOyNg$Ep@BuG zj0I>N+i{q2*^$Q#d{$84HU{R-UenM0K$DyD3rU#vf^M7`sq&>H>-FHlyxx=MKKh{5 zf*=hCG6-^?W~FMnc}2^lt9%Ik8&eH@{`-sTW-z=yjECEuQJjeFr&-n+_QcPwM=(Q3 zGxycf46Ru^!!hxX)7S*TkI4|?$(%a=PF|byz|M48M5j#;eM<+dVPF_LDh$QJP7L)F zoqfB0=kEU9-TixeAF3+GO-Eh8$Esd5D;VZgC8658=xXa_=j8Id4t9P{0aC)AKn0zN zP|NWZA{yim2(doBUP^LLuFXq2zijTvUoFtJHsxMt)P32oN>@tp(^8sqvOX`3rWc#F zgiVO5qlr76?{uGysGpZ&+?U;F=NHSd?juaQdp$6)&v*IpA_6psva}lunMU#kHcZd# z^?BRo7tTp1q4w}L(J7(_2>}3v#Yi(}*7R1>+tW2H*m}ga|8UTJ=PNn_4ivab=AIsP zaMYJTdfDk41*n34-0KIOv5`TRCgWdWr6$45-EdCcoY!^Xj#6ccTzaj_e?kW;KWFR= zKzG=YO=hIH%g$W(RIpQ*-8uM_oq3cHkOxkSMCY?Vx@_~g!yF&=MX)lR&pHC^8KMJ=`Zf~~_%EfVt{FH_!&eAZs!RLmYz!FAS zfQ|onw*Aj9X8Q)AdMp)0d?wY{^pV@ROtj>WeqTtKEHCBk_a&GQM}`ANU8#5!ro2O@ zWTRf+aFcOFoeATVhg?e)7p6VQl+Z9ci3hQfqGZ<@^Fjl?!}t5K=G{>mkr5m_9&2J( zoH=Yyhz2gEADWpEQ}Rk=s148H*H>7-!*7ELsTcP~*+@gb;}N05dViuv$u3lqD>+QU zND3ScnFH@6lItNzJk(Jf&pf-cTy8Avuongohr@(i06WM49jSO|G=I{MqdpfIPcy?u zaQEHG3C~Vyr{t&KLMTrU{Ow22w!b}iXEvOi6H(vWQOlbJc`iUtmbu! zuTZIQtX=~pUqTEDXqEf&sgbG3mtt)rtXZ{q&1;40rO2z+^Ld3n?Ro+~2c+rCh`u(# z=bZloyY~Y~)K}23)p`}zm%HLz_1BzDTx6HrldXj?U%;lsI^BaM*1yJ}#5yt*@D0=g z*iZjX(8o1TxOeDx=io1dRg8gB!m!7#65h|M>=f5O5bZMckm?>VNjEI9YKaL$(L+RR z#mXg%{VnPP@-``80G=LuTw&@9N-quiAh#6qY+@*LizTCOqC`V13ss==@fQ6aV!Qs& z+-?+B)7?d?X*HL_f8nspNO>U5NTnK~8fC*VrIf=%!1VC2z>JcFO9VU8EGUTN^YK3k z!IIfD+3+wGoN~0yPqT=h0FhuqQH(_OM9P%kymfBLEQoI>Is=>v1*Xyd|3$=uffO<7 zuw+~+){)%|LbE6uDOJMv)+-P=$xj6k#bO{%Ggc=v{V5bnaWhC-PZU@|O1RzHy?5`N zt?wcu8jciJsAb?|>uA86@<++<@bEs;bo!H`a6LSn`RLb*kZUn)@6cPey}5r5(0jn< zH7r6YhO!jbYa&zi1KRaEnx5>J9w{8rG;gzT>-_?iIHI;NtZ*-OJupcg?xv`QA16q`45ti?}vdRUItz za?xrQ&EHaW4t=J)-}J8u~xrT-Kt}Tv2JOsN#4Nugy^n*LPQ|4R5_N yd8_Mh*%fdw6?`^-wyQE74YaMFb3f}G$;jA6i}>fYn}wCP=&)=R-*6i4n)g4QpKitg diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/codingstatemachine.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/codingstatemachine.cpython-34.pyc deleted file mode 100644 index 3985e5051313b09ca8cd6a08d56ea9b017d14657..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2928 zcma)8&5j#I5bl}r-+G-*vPno*fYe+N7Kw8}5Gmp(Aqhx`ENC}EVlJchOxvDiJmYk? zH`ypT1zv$yK)ljiIpx9waN?^PkGLp<%`&lRyVd7%WV}0s+_7!lp=CB59N55Q~mT zws_qZNmnG>yzU6SC6b;||oK_x7 zSIA>+($R@ja(DuP)lcU-kF^{X275DQTpG_aWh8bPcp$$i41;NaR9bGLWug(hgO<^; zPLH*{DN`q(rCBCNS|`#?lv|uGq=r@4j2#X#*1B8jSf!a7X8NWqa$RXbTS=Er^*}y> zxpjqjqVln}uxL-g4V8uABByORGx|6!=60c}a&l>b4M%IQ8Qo~9Fg{sf0Xm2Mb*mf_ z9V|u=J8iUeM5)5jxhrnfl-%ty(BYH&2Tv-9yNDqLrez;0R48I$h%+}q;KYBX$0}RT z3`0>am(NG(0Hi2+tg*~Svk}ibR;@==_u97pz`eTquQ;7 zUwM+os1tGzyc19Bk*^S7cdc;Fy2k*B)6R4ZlQHo_c;uGVj%ozbMB8+nBUxN_oEqiM zLxEvBofonIhC!ItrYMtTamr_t6h#>$196c%g`_zmnp`{!SC=|v97niP;asK_Dua`l zPNzCasb63yrCLR5?K2pLn`hxDs5;>bS|1%8{BTe+TP6Gyv2WuPIm%YKKWj>^w<%M+ zYR^?Pn?gB{m7~Va#8#2Ef_zx_Hj|{E$Jrc3M$DdvtF`3F6jREAMX?xIKp*lJ5{Hh- z2do_bd1J@HbAh;L|G;OeY)aC<_Eoj|yTIBE*lq8pHQ+B6?^#A_iu z96Id#`-U&+t+EwO(HL2|6UB35A}WXoS*^cQIYybz%k4_e^Z@P4vBXeZOp2osCN0PX83<5<>Xri`#BGyFE*1w}$gHOKv?cis5XW ze0rPAp;%U*e6_OC#nn8Rosg+CPhAw$)EY5`O%Hu8c_pVD z7&=AdVc*;D2PS}|Z1N3dI#~BTgEwat2FGG9)7J}_zQVAaHt)ra4K6Sn%e>;vBM6-H z`WqIMAx`QZGQ9W7=M7IdUmOME7hjkM^j@TFHtMs1*n8jU2saxJtsEx(cezuveWJ;rc90xXtNV zoTvEvEz`sY^Th<3EA+KRQ=8-s=CJhQu*>zvaAB7VkijZuDJx8G+0FHH7qRGTY}#E+ zBDn1BBI(!t%U;{N>Rt3+yuX348TTp=H)grKf@R@&@B`msI>ji#|C#<=4mm<<|zi z|Lt5S!%vI38o%8^vj;zZTKeK|Y|a{KzrSsWhO!&ctu)W*Ht9vt)49qPcS}2pk|K^G zLnXj%XRgue9hz>CZf9nSnKtf(O`ocyWjPt@y$>)fwQ}!T%j(pKnLr@$5&sw{yLCUG_fkj(^J|eMwi}6Br!_El>a)cyho3JOgSD=Am%Gd=wtI z4<2Ccq6n=hBJ@Y!Ei#ae46*h68t6-8V{fx?OEYk@wKMOoGFQ1Iltajp$0~Y& zIje`JWwVVCwR~Xb`RcJ!jGMnII$4=xIZpAs6KrVt#UTag148QUJ0b1VN!*|M1(-HX AfdBvi diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/cp949prober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/cp949prober.cpython-34.pyc deleted file mode 100644 index 1ccc4efad52108e2e51c50a5d15c271113ae131a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1110 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 Sf3L&y_#OpAIp1dHv;P3I(e{e~ diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/euctwfreq.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/euctwfreq.cpython-34.pyc deleted file mode 100644 index 5436ebc10fb7d3c934f2a784d2f8443f909f43b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54684 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 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/euctwprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/euctwprober.cpython-34.pyc deleted file mode 100644 index 2ecc29b344af142bb6d6f347c4a21e6a03a58319..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1111 zcmah|OK;RL5FY2XX}f)Bc?cvfa3T_IPvul0U|Wz7TPmffA{Q&0xZ6}oHrS5JuDBJ! zPeJ@1Zn<*e!VloYjMFXY1sr=k9zSNjZzjL`tIMwrzrOqK0sMeYb5MVZLq#Z3>`P6(Kt%unLOhWLUjR-}$8N!AwAdgVNNq?R ziu?khyT-D>LKcs1g+Z@bF&^8P6M{sIW^zYE?V`}w8GOXoEI6~^0*`1Lv_r3>mAjxl zvXb5-dFGo#7+@H%gJ7v~Rb2@wFx+tQh#E`{RAst%ZN;?ekm?)YH z*|<_Dp^+&^iTniTCC-yPR*Lg)@cZ$$E~@P+t2W1VmZzH^rqgjXNq4prOie2E)hy~n zpI0VPTh&bZ=TC)g(W_fb() z1${Q~29B{|eMIZU_!4iM7DA3gxe84D`)YxxsIyW3*Z<6l6%~~+(ysS$gbGnn z#Un*?W+-ri(91c zn51>zh%g{#gtmAp{h!h|G5QLINm|j|+OZ>Sanw-A=y+Cy=BR8>#~FK|OMs~I0@R#N1E*CIrh>b`Y96>{zU2V^HI}kn08vQ>UXIA0sgVoGX}b7PIB%K ztL3m6zuQ6?Ycw#B$Uti8_sjC1f%WFb`!GUL&8t>Rt?!t{hbpbIxiu7YRN=4L$6MAN zCM3Hxj>(+H$=Qm!M(;@#PqTozi^SzIa7coy&iw*Q#xdH&z?Vu}sPK*I+oX)VMmH;? zx-|xw`@P_CYI#=$%S=0Ep~0FTIT2ljWJDR$W+R=Db<%G!H=nqXD)><|tu^Kesip5L zeGROZU8P^EzMQ@);!-&!gKaRcBJ)WfN8bfY#xU(~N1N>9w4^IEBP&K-UTH`794$5a zwWIBh3d-_@qaW?#AJeJ`K8UF*$YsfXngtZORLCQ%?K2}7m@dl;qhrj7t9eCf7g0nR z$zN{Ez<1&rnEQc!TrzsoE)yAeUC01Qe=*|^aj^{~vhHtAdn`#0iEFI1JVO37<9(;; z(gzW03I5W_zUZiksxDZgxTM2`+%&q|;?0!tfw@n7gIcU_rp$4iruQt=*%|uXLL(ie zGEh#cpRJok^ROac6TCrlrK8N2Ec|ksqoOajAboSAmCd+n@qvyO8n_^RZX3KNOAO8S z=I*hDF5(g^JRQcXV1?kgxGS!P!slDEiq+yu5XWl!g#51WnarPAH=d)Srj0OTz2+QA z2dHJXzGPq4Srq)<%pqsgAC5@}T17;jCuvmiF z;`*9aO0&GUrk4D`(QB6c(MeqAy;j=5>t5t``Z8N`f{?GhU&7w2-#_k%94&zP;&#B9kn#j&x}K6xSt@q#1*49m@ zub0x2N_ES$l#X)9m)k%Lr*5>qD4UKh!DDe5^sN?`6K!7(=xeUrJJwyHmgCOpA=?@u zL1e|qm$(&#Q_oN!dzYB43)Z1k3en%Qa`eN`2dS$%s1$43q`_9<QcF-m-&y-;E`1h#A6p}_9ragBeZlQzo+{+I1dj~F)12k? zNTHyaW<>tW8#zr9G;tK$v?3DB$E=qxloPQ}mNz9xDAjDi^DLgrS-YdJmcI4UzpvRz z`manoD(P?f{y+k6pX(TIpscfd&5kasDz7DTi`ymN+nRqGon`T}&ec7{mpM4frqXX6 z-BRhBh^g;u8}#kd+-wLRh*StG7>OUT#KYO(CCqivlL_o<^KSdEKTt8U$|OnV^s zEk^^SzlAkMH&{1vG9uHg@ul-}*xX5|qS8N%miDvbGVA`Xpm*h~{4zxIxN?&yt-UPW z3@ma^dpLE^HQ%@RJkzc@>hy9o12bN}WCqe%sFck-GcBgLi_$+g8b|YqX*b37ckZ`| zOKrcSjea9vSk!R%_~Lx2>KN+*)uk>kJIhS5sdD%}18}L4sqF`lfw3xg`^6J~wTaRE1Qv&9r~bc*jv4A;FAN-V7@g znZ+rIZCZ3$I>>wh?KP{K@u9h~BweUER2iR2pITfkqx%G3#(Tc|)Hm?Axa<~xZpjDM zNa?7#xcbh0D%)?bjLv4Plk`2K%QQ>MyxZtn({5V4p@Ho}9_yQ>S>Cj9_}G#wRNB$B z7GAeZrX>(J$Fu|ritnAB-p(^CBfY*?1#fUvO@dy|P-^v!GOdOLze#^W=697=%28L_ zS|GTEg;vRzM=eQB>*~F>)j)1ku;eE~8X}936*wsUW+c`;q>KxK_u``FcNU6#?}&U; z6}MMhI~5GJT3gL(PDyehDHMKFv*ydiWr?P_!WQlbscj3fW&T<4TSgxWK5U`LZ%88l z%5oygnh{f6UZl3wJhqil8EFL1HmwmR3a)QjLGObYLQ+bSRK@~ZSI zstT@Q+HoPV^<9#xnWOaPCX{N0zD`1pSu%r@Jw_RY^%cSp=cSSQ`f5ggRTeopj#618 zt5lU=VzmWEA386Q!N?2sa?_4>sqcn2Lmlat8CY+Fh0Xm`86%YT$lmrDI49Lyi)R$P zR9sHYJVt-Ecz$KnHRFuYW%x!&TowFe$!zFltLczSvx3Z-B-m)iJC43lK~|~qi2Ga3 zlO2sgFAH50Qd9b2(qA)h!O>P6m3gDg<(-IWW)!m3X{wJec%YD3n#=LTx;reCRNN{v zj!00-Xifv&9sMWnj&(1{Qc=x4Rr--;HzB<(ImC=L2DZsk#?f8Dud45ebKg}3(d}c7 zlUTwTUnwrLHIkZEz`%DHCF#Ga%5U)`nt3!!3VtNZLw#RhqJ>&X@R5AQ#hq}}&X-0# zMJ5r_PO74g##sE2Ev)vg+n_I>%#o83`Cj73qk;0R)wj?ZQzgwSc(=Ldr5|fYOEhn4 zcC^(45^UG3D#3Y+SAJQ6;Mq8=8C@+mgv5|wylDlHN|t&?tBQN*<*B1N6SZXiT;V;O zrvEfsno&~UP~}c>)WO^tn(-B01rMd)f|^2-n)|i6F_e+n-aawy4`<^WN9iot)zL7k zbvE}i<<64ekr{EUaYw2nLVgqS%xc%g&C#5Nx6SAz-)7Bbg7aDTg!FMN`HIt?)wHzo zeJL&%5_n_!8m9{aO$iO@yomExZ+_ZLCQi3juyrS={ zg)XAEY2{37C8UxU`GJ9zGVhnUgBNeU6Ol=?mMmXkw2;PvXCRyAGjaLFm9WrgwOo=u zsgOz5h*HoyMiUzS(U)l&l>uBj85zZ@7=PpydmEWyNqqgw1Q_joz*qJ zv2Hb$PE^a6`eItBqNCmhJ~kthEdMyg>-4ph;7_}}YK>?5swn6u15NP_+8JnW?i5w6 zvD%lKgQa@gjP#n-EP2#sPMY?m=F^wuDtx$w-qCDo+AY*kZWE&u?fjrDX&lvd4zif> zt1QD0xy+BcHMLKDs2l5UgqQ)ehjk=0BaXWB$ZYsD2)K~8J*b<_`)75=Id_KJ1$_)c>| z$UIrvYt~U(7NheWbu+L8-K9^AvC@xLb6yM+H&d3bYEI<+e8P;qSYX|(s!HGuQq<9E zeHGR6fo602IOeFJ%pXWK-q9-QpQt6K84E1b-?Y?NrSCX4V1g`(oR@gcRVmHyZS`x- zXF_J_YpQR)^yl=IQPmyWYGk2NGPl%x9Uow;zHhv_5qLG5Ch2m`7G{i7?sTlOqyMb7&5X=Or=o<>nU1E*cT&g=H7|Yn z0=#^UtaeU<8g?Gd8fEOGvC+#4+9T;aeUAhu6w=9zXGW*UmrC=DBA;2KCr(I^NANV$ zo-3oE{T?-12%Yr(uE?Yk)YR7pWt6+s%a~S39HqTb#wVIz8=Z^KR1i!0dNOAbH&v=s z7B7cN>dPo(s^((No4zSbQrf3x{3`P@r{pV1f6?4;GdHa^)y}UA-lF+~B|pUpFGW3> zuf04QxFSnoTi9lyiRSK+G`*z79c{AT3798%npBTvxn#eO@S)}c!Rw8la&%VG&y6n9 zmrwdNcGO;$*M;Pfw2Px$2Kt$?PtB7x%b6S7ek+^tiP3ASDq+SVNBt!I5W^MziK7;R zXUjZLmOeNuc!-cnvfR^b?I^Ap?;DscX>|K2BfJzOkd8Qv8cyQx20E*>yuRgT zeCDW+1T76zmGpsuDN?n!-=uOzfQ8F{?$@ewBHTP4a zyX^NHSw8f7%r<&jg6S%FXx+CZXyg1%6IaowU*lZ98M%1qazQnh()XtG@|H7HTHlZQ z-g7omy*!gjYasn)i$B$u$Kusro(T0VvE*^h4oVv(IH76p`cLl&eX;emQ|ToMMj72` z^mo&aOE5v-o9Y`VX)OcqIa;UsD|Xad+*<~2*;@yxHY+!W<~aOqp=LClCPe8x2;y#z~`DDN%|g& zsri9vm#lW#ewPV8fz(z@BJ)Z4rb>{_jFS4^Q*(2Dvn}+e;OkzL1NxdfryWfzEcj1H z8^tBF?#GS_silVC0_G-E!F)S<7s*Yl>+H_)S|0JrL}o?4ekEwH`91oYwm`XS>|=&h z&mEPOWuYvORTbObI{MFhMoG8G@|S5&V2gq6rUgew1ou-~A*)p|RV}kV_=}TD+cm< zZ(Ntq}{LnZ7Yb>sf7@ayuJsE3Ufc z?=P#D?>iyC+G=VcdG!r9I!vkoW~4MwSV#r?U8|t=`fBU@LB8tZ8ko`E+OMgwi zF^bHjmQFJ76_U)fpA4jTVv|U^-fDxLwTGtd(ELKBnH-gNluF!nqpi(dD^*JaRplF? zFSous78)s4AHnq$^8{KN!C^c7?>Q!?;Q9((k^K)y=HEp4z z&fbLag~T*^%8X=2i&|~DEVsNUt)w3+b96^do!t>;lvH0O!ILyQNwvpTKUd2-&Fk{D zvf38s>X-y`C72`M5q&q*_qkMmm>bu+Z<;Z~=zUp++hsHLMgA}HC24LyYwXngTF7(F z8{R&}OxrHiG)WT(iEoWoM>v#y1*_$vEe^STW- zkU5UN!xq{m!5*inq5ZyQ?g}S1o6$=K8W=3N^S?ZQ*rqR` zt*)_|c2bQut%APD`#kbfu7RX750d3;%$M{ZaW(C?vc9aU`phnCtLm)uNzKh}(}^U= zsP9#AIn9l$Z>f+>PRUnl`NB~d>;8pk%J@;pDZwditEV**;fa^=wrS%vtC-uy1}7Nk zXxde^6jg2lix)Bah0JG!JeO~ezM4kc7&vQMd;`%OZCB|o>7$7oFD{;DTS@a;vcENs zskFTW7mRk-mqxR$X&3d4G&h63iJGU;$H^I~ueS|;Y~8B{QsNBm;g*n(1lMttQSe{Z zcwj~~A(8Bn@0ebSe^Ac4K32WF-5IK7AFrXI8Id<}?cb9Xw*F~ zHP(C~b5p^^ZTc4p8cOx44bD+P3~}uo-87n0(hmNMGh6d}ne+OhJEQOe@|~1wngr#n zHqgMw7-QYHmD^j~6Wj0Mwal!!(L&qgYwdf<23hh;(7}@Ft+r9$PBV@xGKFcS47@2- zG0pN4>@_-51-JBlqA!QO3CbvSg5zf(~5gt1wEXmYZ83t zXpC|yLaAOHxag;{iI&&+V8&CT0Fu?Wnh;=N+xEWG!C{8TIXz z{=U_=np;H3$3nW;^l>3uEM8EmBbu4LpriG5v~F(vY_;lGE#GyicA4S(>*dvElvY(q zNh?bKfxbq#q`6b@Yc|tYGp__I%}8NJaB|AZ{JMdSnCjeLQ}{?T#yjm3B^WK$b0L*A z7n!z7kx2xP5jRTa*KOewePgXr#NNJgUM8yfdkJcrds1*OA%9t@iJFJ$Yb@>yakq`` zQqcR-7sWsF{Um)41@$-WswH3Od)2fAPFO-~958y+XiSy1G&)Yw{f;){o+a}+D(Y-> zH}|O-b>xdw7RhJbhVow$YW23d(oZQBEQGESXr` zJI?c8;-cB$tBzL7_oF3`qpX347GG}eN9ucGZV%Nbk-4gARfNnC@~>L*sjrFjzZ!)N+x|1_3hO+ z#QA%yjE)LAV(#10pEghzon+apf^?eyDz~1HME;{bP2YbK43Qw6t^Q#R?}5uZ~!j#cFA`mPB6L)=oeye+|7YDul{2f;N3pO@tWA#Y)gfr@jhVLz2z(Ru^y=C26 z-lC(VAFiOhd)2qu z=+}}qvgA7kZU{+a-FV8)Ant1k=HQZ$Z@gp6sGzeox@mqX!AZe04P-Y^PL{0Jy>ISM zMhhCKElV~#pJ|s{l(Eya5f&e7-E8tTH}_|w5B2pD^17sH@x3gGExzMrdYfJ*L3ums zVYNC2elWMBbu&vf&1foQu=qHAYt^#MYKyFU%0exq8YIhCNFc6?B}a;Tgq_N`Chi;Q zTl(4>uX#o0c@}?Qp=2uPE$Mp_d}8!neTjVs=_>u3rd<*|MBE#gD=vj~&k32Jv<%jL zTks}Jb~A8T+;Xd}6!N~&p^g#=j&I2)g1@umLe0uTa@llc)3OM*kpOfHwBoRDM@FzyATj+C1pDOK{qcjH2 zVVr_GI{L!EUsn53`pA#Kk$0U+Ckbh0V6C`6&{+CkjaC$wRNs3Rij)$0mnd?hW)jmD zYPPd@q`b(t3*#>fncUHL&ht&d z74`k-Xot97Ry(1{Q$oJdJZjxu`f54)S8yG{KWbKcxnBj1aWe5! zG}{@tteMK(0v6vV)g^uXg2`*}G47>coj0=K)5%);u z?nc*X=922PW_<(s1g~@IzQLE0rZ9Q|lVwikWPe~FldqX``hrxYRQio2XQ=cG?2&Y` zq}eUh&S+^h*Kt(cw2AU{@x}Cx>J!Tn)4*}*cQ`sJ)o&>GGJ&_iKl1%<@z0g^lZF1a z%Pis&8=Yo!j~PoXxmOt<+SUufZM-OvuE;cfoyB#v+Bp>*d>JfmseIiPS;J^1GkPlR zmU55kd+I2Q8GlICS2KoMPD%QiW=3&IrD~{_&EhU=-V;(;(lbJO3jSBBh6W}$>gTA3 z8TZY-Df5R0Zt81e`>%UF+B!NS=_^KCX})U}<5M_!?!D zR?uoEVxCm5$+Fcsy(8`o`Kk%YE7byVQ-ov}{H@HhqExWjH9CelIOQRR$o8blcOr-;?HrTo`WoaikwzwEZ7i)fpoGNW=$z{seE#Ir= z{-v2oNJ$l}l_k;@dEYCefGiEAKP_&g1jP(QGvikSBdj(WKM4NCz$Qihr5V$^bG6YA z&HYIF^ahe^{%xR@zN6C5bu`!9MM8$?8>g1?s_$mtm?cN4G=q2D99fckA2hJ;E#L6I z(zntXnrEPpUEa4)EJ@$D^B)Aaa&$)U5J{^z`qz>%4g79KBMD-gw#JNeLdwdQRNp{H zUm8fQ$R(ESZpIG#_zk_(yjRE^!Ou*asIQbYHdx~?alwuXAeFf9oZ?qi^{r+#35IKy zaXKd`@_{Tn#l_W3A#*GVJ~9v`^Ac-(t>!<4{Go5Ukd_9TOZB7lMOEL+={zO)Q_Vlc z4aeWMHBgZ~>}|JcjiefkD4E+U<5Ly%@j|^ReRp%m8Es(hAnMP=`=quFxIqRHTPR%uS&COW)M6BKU?x`seZBU`)W>S zp({51rr@eZXUJSq(pU7gvW3X5B1<~OgG~DX{|T8Yb1=Hl&ht6iCuvJ_|Izo{Q5&=u zJk@_ha;xtn1^LP0ax!P=GwU`p@U4QD+ec3cl36Xiqu12(z*b+e##@Nyg<350bj@=T zRFmK{!5K}fA=M8`+bJ%Mxb%+J2pMX0pUr$I^EH(wF*?z@m-JoI_lK8zt{HJP-;lYa zqf?IVNLtutiplq>xh;&IHTqQgKKc&JJV=pit-{pBtV)Yq(HZejTrIqm=ID}?F#GWdz7pWwo%C4B*v z_V>#CA?cTbzp{n%2I`4BWR1UM{#Ut`9NkjTQ`>q?Tn|NVF*;Y@$(QdT)AmYm#ZfKk zb4ve@(v}-2B6z*k8VlKhpzn#0bxv4mNk11{PTVr9<&S)mxLg1QQ3!=29nSBVOdBvB!56oZSX!e96s#Zdw!Q3`(N82lI% z%AhRDp*$*}A}XOWs-P;Wp*m`yCTgKJ>Yy$H>Y+XwpdlKeF`A$$nxQ%VMGLeOvN-z#|+HGEX>9n%*8y+#{w+GA}q!dEX6V`#|o^(Dy+sDti?L4#|CV~ zCTzwQY{fQg#}4eoF6_o0?8QFp#{nF~AsogL9K|sl#|fOoDV)X`oW(hu#|2!(C0xc8 zT*Wn9#|_-XE!@U`xP!a6hx>Sdhj@g?c!H;RhUa*JsAv&fp%VO8J-iD4UOWAM{^@cYW}4r0N-RzhsNhxg&rjqo8pg5REnPY?&6!hbcxXZRd`M;N|@ zkC8(>xWpwSKtlNRJ|u<kQ^zH68>!-QX>u0!mmk!pP9lB_z~%m z0se6seum$A20u)N-|#y!A`|{VW@Le%vO+dwM-JqKp9h1V?m`~qMLy(50Te_b6h;vg zMKSydKZb|DQ5+@Ur;bnxeo6@bLm0}SEXtugDxe}Np)#tVDypG6YQS$jLoL)s9n^*Y zYKD5Kj|OOnMre#CXbL~ChUV}SL1=-NXoc2jgSKdg_UM3)=!DMbg0AR>?&yJ@=!M?s zgTCm8{uqFP7=*zXf}t3O;TVCD7=_UogRvNg@tA;#n1sogf~lB>>6n3;n1$JxgSnW8 z`B;F3ScJt`f~8o7$riNxP{yJ4|i}E_i!H%@DPvi z7*FsN&+r^C;KIn@+MMtTUWFe}gNt=TbhuYCyot9E12N%>$?y(h;a&L6Wq1$o;{*7$ zRq*fJ@G(9?9DItn_zW(g3tzx5^}|<)hxkYUSBHm0NQ|%HA0;6v{Ms)hgJ0u>@8Dz5 z;L?kb5~+|HX^$k82-dx_#4IHvC9|JHDgD@CFFciZu93wCiqc9p{Fc#x59uqJT zlQ0=mFcs4<9WyW!voITTFc{6Z|aR582)mtzFK`3){G2`(27eqkKm z#9Q#WM2LyE@eX3ar9>e%-oyL&0DgZGKElWN1aaW5y5RSL;WK;=*O7!T;nTkm5Al%z z36Thi@imgbwW7i27r}J~;ahx%F@)7M0)rPHv9zF>IK)^g!KEP~2XZ18aw891;S=&9KMJ5A3ZXFk(jyc_G5iU?2M>Rv zI7*--O5q=rMj4caPhUcLR6s>kLSC&f7VXd;9ncY-&>3CO72VJsJMZw7yZy5127PSFc?EH z6vHqaBQO%9FdAbp7UM7;6EG2zFd0)Y71J;sGcXggFdK6)7xOS53$PH2uoz3Q6w9z2 zE3gu)uo`Qy7VEGc8?X_Zuo+vh72B{KJFpYGup4`@7yGau2XGLFa2Q8$6vuEJCvXy{ za2jWD7Uyst7jO}ma2Z!{71wYbH*gcTa2x;O4({R}?&AR-;t?L>37+B^p5q0gUW?%B zs^F0X!N<+vHMlA+xXClPtSP(+PuvJG5EJg(4DY}v8R1>{bT|0qI`~C;@Eh^)AwGgn z&4QceLmc>RaEJ?^W(RjA2A8mhFX5M}As*r*0TRMZ^TCIt!6hUi36kO)__cWW7H--L zJ`)cqkP@ko8flOgZczy7@B@BCdbn{S{DhzJ3x0*$T*B|jh)nncnUMuqkqtgP4mpq$ zKC}+Gkq3FZpO5sD;|7gSzl*;!qFu(Ett62#wJMP0MDhF~a$VK_!$Bt~I0#$YVQ zVLT>aA|_!nreG?jVLE1DCT3wa=3p-7VLldMAr@gVmS8ECVL4V{C01cI)?h8xVLdir zBQ{|(wqPr^VLNtUCw5^s_FymeVLuMwAP(U$j^HSc;W$pMCT`(2{=*&I#Xa1|13bhdJjN3|#WOs|3%F}7xGFCA=q&gUH@MFuypHI2 z18>3yYas?=!li}b9mK-BaQ}FC5AWjxc)&pT2(IA{pTHG=;ZwwgoBzY-aOFvGJ7xF^ z@em&_wht~64vCN$?zIo@P7SWk2rdQ-$?z@Qc^i@=1yUjvQp3l6AuW8Y8hqp#e!!1# zO<%|WmkWoV@e5o;5M0g@Tt6Q&A`|{VX1ItYWJNZ(BroJZPUJ#v`DO2b`Tp)AUwJSw0fDxor}pem}NI%=RMYQaU|p$_W8 zCuE@>>Z1V~q7i&N7n-0cnxQ%VMGLeOvN-z#|+HGEX>9n%*8y+ z#{w+GA}q!dEX6V`#|o^(Dy+sDti?L4#|CV~CTzwQY{fQg#}4eoF6_o0?8QFp#{nF~ zAsogL9K|sl#|fOoDV)X`oW(hu#|2!(C0xc8T*Wn9#|_-XE!@U`xP!a6hx>Sdhj@g? zc!H;RhUa*JsOS-*!DUzBRlEi_5rydRJiy>0k?pD?%%HY7wMc)UsY8cC28-yj*j z#dk;!*Rlq;KZaCDjWkG$?~x8az;)~)JzVP;eu8U(!!P(19%m3d5hP?pCj0>x`UV%% zg{;U1*Oi4F$cbFY4YyE)yl~}W$d3Xjh(aigA}ESt_!F)!2<~(b#Zdw-P6@753jd%q z%AhRDp*$*}B3zjeD#LXUp(Z1V~q7fRS37VoAn&V%z zfXkXfE3`%%v_(6#M+bC7Cv-*^bVWCGM-TKwFZ4zq^hH1P#{dk(APmM348<@E#|VtX zD2&D!jKw&N#{^8oBuvH>OvN-z#|+HGEX>9n%*8y+#{w+GA}q!dEX6V`#|o^(Dy+sD zti?L4#|CV~CTzwQY{fQg#}4eoF6_o0?8QFp#{nF~AsogL9K|sl#|fOoDV)X`oW(hu z#|2!(C0xc8T*Wn9#|_-XE!@U`xP!a6hx>Sdhj@g?c!H;RhUa(z_f~{xaCcyEzeR8> zdUzck#SvW56yAi}NP=r)LrlDlcMuEj!XwdwCya#m@c}->NB9^nLl1HADdOTYxXC2A zpC-7dD13!@h!5A)hlEIk#P}LX;F9z34U)kfB*A5g!JYjf1yUjvJPahb=sl#x_i+7u z_yIq{b!EXd|KTUN$Thf=Bm4^YEQa6VLb8wvE`$%6kp*tQ2-%PwIpAWZkPEqy2YKO^ zuaF-FP!O)d3WZSwMd4c3@F)I)OQwUz9fcAoiBfQZT_}w*D2s9^j|!-WN~nw~sETT+ zjvAGd_j3F3`VHl1P7>Q9BjWHODaTt#Yn21T3j47CkX_$@~ zn2A}KjX9W$d6pfzIEhm@jWallb2yI+xQI)*j4QZ`Yq*XZxQSc1jsI{5 zcX1E*@c<9;2#@guPw@=T@d8nAMsRg_cm-~;46osJM8_NO?6u%Vxex;$2pZhM8C>}u zT)P|IMQpr>_u>A!@F85)8a~D+h=WfN7oM>l+zSyrO*6PkJ9t=eaLs>+j|51FL`V$x zhlM0a3fJC;WcU`Yqz}pAE|8ECso+lN;HLDD7T+TsTxcGCM0#X^JMDstgoA74!>{-a zzat}Dk01U(W_V~r$ck*pjvUB|T*!?)$cuc)54X*Pf+&Q-D1xFWhCku1*zh-sqXbH# z6kISGN}~+Q!qwcNJSxD=L7@^VqYA3R)$5@;YM>@+p*HHEE?g2C>Y+XwpdlKeF`A$$ znxQ%VMGLeOvN-z#|+HGEX>9n%*8y+#{w+GA}q!dEX6V`#|o^( zDy+sDti?L4#|CV~CTzwQY{fQg#}4eoF6_o0?8QFp#{nF~AsogL9K|sl#|fOoDV)X` zoW(hu#|2!(C0xc8T*Wn9#|_-XE!@U`xP!a6hx>Sdhj@g?c!H;RhUa(zx2*;bD+!)O z5nhFxxr2L&Lv*|Ww@HS#5CbvcZph%iuMi8aN)NH|9^4HXK7dT!k_T;p71w{qXbH#6#hYJltEdPLwQs{MN~p%xSc4t*ECc^b+|tw)I=@R zMjh0JtKmaE)JFp}L?bjt6EsCLG{?Vii*IO&R%nejXp44ej}GXFPUws-=!$OWjvnZV zUg(WJ=!<^nj{z8nK^Tl77>Z#Sju9A%Q5cOe7>jWjj|rHFNtlc&n2Kqbjv1JVS(uGE zn2ULsj|EtWMOcg_Sc+v>julvmRalKRSc`R7j}6#}P1uYr*otk~jvd&EUD%C1*o%GG zj{`V}LpY2hIErI9juSYEQ#g$?IE!;Qj|;enOSp_HxQc7IjvKg%Teyw?a0hpB5BKo^ z5Ag_(@dQut4A1cb?mP?8@CrO$EO>-e@POqI9dF=GyoDHWk85}v{+>_pAd%q4^5AC1 z@E$w?C42zSIS8I<6+VXN8-+Od6mjtxJajL70k=*D&!!HZ1rXvR0X#q=Btl|*jU@1# zgWyjhgk*55RB+pQNRAXpiBw39G;jxJ@KmVa`5D0-`@tR4!P9#}2KK zmx5akgIi-mCb(ZOWQIGng9o|=_qT`a$N`U04Y`mTd5{fQqPu%BX^>aFbZ54z~=4ny7`^sDrw2BT%S^`e=ZL zXoSXSf~IJO=5UL7Xn~e!h1O_;wrGd;=zxysgwE)KuIPsD=z*T-h2H3czUYVk7=VEo zguxhsp%{kY7=e)(h0z#;u^5N(n1G3xgvpqKshEc8n1Pv?h1r;cxtNFfSb&9CgvD5b zrC5gLSb>#Th1FPtwOEJs*no}Lgw5E3t=NX`*nyqch27YLz1WBSIDmsVgu^(3qd11+ zIDwNmh0{2Lvp9$IxPXhegv+>stGI^ixPhCvh1>WKcW@W?a32rw5RdQ}Pw*7a@EkAT zX|5p}{2h|uk9URF;HLBt9dF=G_;Y>1o!TKLJgz5rc1duna`3$B;O^t#VH@Fnc+^1n z5S~65Jl-yRf;eywZiovvhX;SYDR_uW@aTfz$w?s|JV_%YfQR{nL`V#O%qk>-JDh{Z ztcPUqINjh$5Ft6-ZX8k~6;dM&(!%phLOQr5Jp2eZeTNM2=&In!%i$ONir?@%G9nY) z4H-P*C1gQXc$j?1jvR0+X2=CMx`sT+i+sqB0w{<=D2yT~iemT^f8lQwM+uZfDR{zg zD2*~Gi*hKB3aE%msEjJ8ifX8i8mI}kVg?V733X5x?tu*TP#+D@5RK3nP2k?u;Qrmv z9RH#PTA~$NqYc`k9onM)a zV-40~9oAz5HewStV+*!o8@6Kyc48NHV-NOXANJz_4&o3F;|Px87>?rvPT~|!;|$K? z9M0ncF5(g{;|i|g8m{98ZsHbh<3HTNUEITcJitRd!eczaQ#`|Synw%76r$l3c*aEV zcWZ*DeFlHeBD?{QtPF1<20WcExM@DTgIIVMvEh#jg!l0QKEy}(7#`;w;=ps{LtK0Y zk0=gbz@M-Ro@g85!NZS30whEtc+^Vx8cC28-yj)0har52egVHDi&%g-fP#zUf5tUFGRZtbx zP#rZ;6SYtqbx;>>{|@y~9}UnDjo?A=p$VFz8Jgo?v_MO=LTj`^TeL%abU;URLT7YA zS9C*n^gvJaLT~gzU-UzN48TAP!e9)+Pz=LxjKD~Y!f1@aSd7DXOu$4;!emUrR7}Hk z%)m^{!fedJT+G9KEWko6!eT7JQY^!AtiVdF!fLF+TCBr*Y`{ir!e(s2R&2v|?7&X! z!fx!rUhKnu9Kb;w!eJc2Q5?f@oWMz(!fBkrS)9XpT);(K!ev~+Rb0b$+`vuT!fpJA zJGhH`xQ_>Th(~ygCwPiyc#ao{dMAQE0u^4tt9T8sBRbx|n|KSJWFKPUZFs_Ah=q3% z8~z$hcpo3&Lwtmf;VEn(4*VhB5EuSTNBA6H;7fc3e|s>*M*{d;RKWvQLSlHFcu0bz z_y)<~Z-fMY{ULbTPDp{2NQKl$gS7Y_>F@)7gg<=}Jf|-FgrD&XeuY1)7W{dx;IF6z z&tnUo0}?VL3$h{`vLgp_A{TNa5Aq@(JPs@rKtU8jVH8186vLnR3xA_HN}wc4!6Uqb zM|FiVD2s9^j|!-WN~nw~sETT+jvA;55B>>Z1V~q7fRS37VoAJSH-D zL`i6YmS~06XoI$BhxX`zj_8EW=z^~3hVJNrp6G?%=!3rKhyECVff$6r7=ob~hT#~2 zkr;*17=y7Ghw+$ziI{}Rn1ZR8hUu7rnV5yyn1i{Phxu55g;<2eSc0WkhUHj+l~{$< zScA1#hxOQijo5_E*n+LthV9sao!Eul*n_>;hy6H!gE)l4ID(@%hT}MalQ@ObID@k| zhx53Ai@1c#xPq&=hU>V2o4AGB_z!n*7x!=<5AYC=@EA|<6wmM+FAxC66Fg8le1bUe2f~8CV-P%) zD144D;O`uTuMiLMkpKzduOS4_-wa68e#7tZrvySK{DI8Kf~?4f?8t$f$c5a6(G30=Snw3%;L*dOC0e01+Mq4kp*=dFBRZiox}Yn%p*wn@Cwieb z`k*iRp+5#-AO>MDhF~a$VK_!$Bt~I0#$YVQVLT>aA|_!nreG?jVLE1DCT2zW=GEfy zv;UDMZR#|oi~L<6XXZ?KN@vMgxJaR#e-tf}Gk?C)g)&9{U-9?;cSxo`@?R3dtMS zu3fH9 zcof7d<;sZ*55S2TyIZywaP0Bt@z2aRGx-&5tiL(__Pz@Me!xoe5Wm2oQWQCM1|>kn zAZ5U4?Lg^3LwEzTz3%nLW-h(6#e=;-> zv+nk|Ep@TK&|-9&$wcU5IiCoLJA=_YFX~yMGcCs1^t7l2YVRKI?>>3Fdr&AXi%F}C zdHu4^%7rQv?)L32PsV)w?%>tiDH^$I?j=&M5eOhk$S8H-E5He2><)ZEjSIqq+=bjD z-!G87Z!}9bqzUL&68E~unzU|Di4`@P$sP^0heBg#@Cl!D;LL#wJfdCD9zBm*?t>0U zOSnh!EHsDE!z5-$@mlArwh>Zd#-Iy1FX}>bF3EuOQKV~A6EChR>Ct*CUx^XVC`ji* zcD@u!XpEJoM0tYq8t2n8Q;PHN@cY?NSIw{~n(awjl==3@`FzsM@~6WoW+xZ=YMxCf z4UI|GPP339ntXsm5de0J^;yKuw^oC*vvm4elqgaox=2oA4wBe8N&|aOMyQLKT*t{^ zD>iW1MdT4O;dNGthp15w3UJQvT(h})>i>3oBPuf`{$)5UvwGHMGx2D}=yjsY6IdRY zDRPkWZk_XLp0_38i1QC^R@xmCyDr37Vt(~P-o$rhp9Ilgx^jasF*g-(AAzD$h}a+) zct(dslJ={~C1aZ!NkK^mwloy|N|pVUOyQ)PCao)VVoN8$R}|I})s=bruO}9n41{}@ P&+~ia4CQ^3na}wHw4?O? diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/hebrewprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/hebrewprober.cpython-34.pyc deleted file mode 100644 index 979389ee6836897d6015e8c6ceb3728551be8e2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3177 zcmaJ@OK%%h6h3!m?AXra;mq9%I1yzVP1v!EQj}59Av}uxKl9=;M@+`Uqwne_6n_yey z#i)>p?+I*>5nAUA|^$b*+jvQ06y`NIMFd!2por_ zd3T%<oF4MJ$?2sJ ziB_>chP`wfr}UABf0~tX(&Y7%cSvD?0rCzje2Baw5-!uZtGjvG#6c`?37gpB*hSvbL*8t|%03OgF!AsVYt@VYB$Y)YvEZDC5Qd&4C zOt@~jT5h;*IOMLDtIHL)i0E)DwNkl=K~StoKOEfu>Pk7-j^4!Fy7aGvw!7l5Vx}JT zM9b?c#KLa3xu`jgNk8x#h&(IsE30@WUAI_S4g%NxlJ1|GXl&Le>gD?Q%67TpjbE$P zR_Y~ha)KrE{6_R#Q%=%*o~ZB0J}C4tTd)^|M88Px`|S?w_vwk2+6P=I{gs&}hv$pao~N(&ABo|IwmkMenF)>u(qYbD`P*7n-g>;}CR1 z(6#Sa*V*^Jp&M|MD*HVB)26eKA{!>jyJ{FyG|nq!gR!-aI%Lop!|kB0Pt;pokMtbH zu~3}!oFvcLx=YowY9^{1Hpf{HZVrx?q;>TEO{!YCIB()wJd;73wkGH@>zG1pnRz)1 zBS_T`J5dg~?@2aN7|$;(x${|PV6|KU&s{5**4&kyhVRy@l^vDN@=0E+vRftlvpnRC z50kUmrR>a7EJ*o_!VZeUWRL~$C*^F3tJ4R4|Uz_lDD+4<>;I!8i+tNW0 zqjk7RZ_&}jgE|O!ae_81lC@|fox}<1+<-A|M;oCa!HZyh6tVQl86#hUnCi+T|Erqe zk@;NS)ww)#e)^(2n=33$=V!8E|AmFQ+zgWGeD=+Y*~@NzdOjPb-^mp&9ptIP=X94) zz>2l%YT5IvMPC)dFwJ|;biV%jWjOrLMZX>Hh=CgQG0I z)hl{Lhv*d@rVZM}mMuE0w$$9eKJpyLAm1uAIY(iz0<7c2wYQZN5APshqOx2qZ7-Mn zVeAm7nrpPxvet|P=S7h+h4XZzpcXgqrD3X+JK1zr8&gjx@Pof6QK93y%RGl|RQkwq zM%;Ad36O`2EqVGVORO57IUojLzqZDwQZh5bpC@c?e4eCSZb;h|#?P(@T|ERk|>tW_{bf|Bv4*&wThi$~g1HV{27H7VZPT48j!mrzYB|Vb1 v)LL{wr>hw_x)V$Go)hz{+na$lI!DdEU{!+f;bG!cZL!yRq`F&Wus)CN diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/jisfreq.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/jisfreq.cpython-34.pyc deleted file mode 100644 index a82aea69f664898563283bc34802885f30eb4a16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44470 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 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/langbulgarianmodel.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/langbulgarianmodel.cpython-34.pyc deleted file mode 100644 index 24c441349de53b357514b1214d25c175ead09998..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24890 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 S>(P-TMl7<#f`3N;oA*z&NLLa7 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/langcyrillicmodel.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/langcyrillicmodel.cpython-34.pyc deleted file mode 100644 index 35c264f14a0eaca2530507bac375397bd9e67323..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30577 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 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/langhebrewmodel.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/langhebrewmodel.cpython-34.pyc deleted file mode 100644 index 4fb634e458612ece655c7af7e0309bdcdefbdf81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23388 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 R%HI8R^XAT-v(asT{tKIwQ|$l% diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/langturkishmodel.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/langturkishmodel.cpython-34.pyc deleted file mode 100644 index f21d823818fe4c18c12c3f4689261c23b2469fac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23385 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 JX){0h??0w|is1kN diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/latin1prober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/latin1prober.cpython-34.pyc deleted file mode 100644 index c3f96e832e68066b444209bbaad99f0394a56be4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3272 zcmdT`OOG2x5U!q=9~tj@H=Bo9h$0~&25A#T5GA09Byt{rlHCp75HSQbUeDO;W&Fs@ zSR^KUNg_D%GY}Vk1V3YLhy&USH!eBxRk!V3?>YfQF3fb-RCiZbSJzin_8)Gk_{sW@ zpFdwB`i=HKg6Imy$rF<(Kob-Zbp-i>1dk1h4CV3VJtz#%_R zyjq|jM}ColJo!f`D3I?`P$a)Zq4WQ5ISOB4JM54=g|Dz3)^95a+*v>r)g&lnG}Xd~ zmFO9*1QcSRdi#rnU&(xd!UGM5q8*r=3}>#wl8Jz3v>51-Lk;&rJ3OyvX0Ag20eLOv zQj>%~N5LHV^K>&nZn*Re>4jxMPmwug3QAP-=68{hxNAXb7oBzuCP-e|wV60fa!m3d4fM&wLi{A#AR+Qss4O<3u6cR-9ZM~-9o6omnI#1L7ZAJ2eC;un=X>cIGNs0Pqn^Gca}tDd&I=k#3~d_#Wt z%QkUO-UUg~1U<$v25lSk6e0ofSi&65SUlXe$7?lDta?snCxd<%$1Zeac`4i7b}D67 zmQg)PWdn|s4X{a8lFc}LARE0wHx1*=j>9BO;ae*Sqb9xusRgC{iJo6Ln|AtV`|bY9 z=Aaz~D-V0U&3-F5f0h*nVLJIn>T-Pr)S3RHcn)UN`A&=giKC)`cX({S56+B@oN@+3 zS>=uIfWR4ibA?MwP-@VU_C#v21Hc0e_D{_-R%6BJqM>Yo7<-nxx+T1>0uU5wD`-d1!v^!$zWjoA3>CfxRd!6q3&PuAEC6THiOLRQ z7r&l@zBVYnN2yKQj)FKx>s_rj&k}Y8X?VfBgiRXo2gm6i>ngyzriMCZzk5Z0x!H~o z$?}_ax+TMID{3cOG73}7CD{l&S%sT7dR3JHW$juuxZMlFNJmSddh2Sfrb5Mp=FC}L z+mN@fXO2v`+^G0LmNDYU|sjpKty;e0G^L zMm=#39|g>4>b)zi`#=2h=iB#xzYM3H=2gBzd^8!KKAdYISN4{lK+VXTi^4MI;m3ke5jp;vMKN5S^5*njugGs{G zUM@G$>@E1EQFYY6KB~m~cGw+s5*=$NV5o22y>zfmEPqMI%ZI!n*#aqxvf&txIPjV$#eaEE74RQn-|JX^0rGz~U;qFB diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/mbcharsetprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/mbcharsetprober.cpython-34.pyc deleted file mode 100644 index bd66c38e2f370110c1d2b1dbd614babbca096e9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2364 zcma)7&2Jk;6o0ec-K?F>m(!$;D8+y(WQn$?9zdl664M4zr;1$xE1{9?ojB{Rcb(a_ z)L7|-K)LXLApWI2A#v)38y7C{d*j$mAdy(ljA!1PdGmXp^M}7w`SR&6-#%L+`kl^w zHs+tAXFP;xf?}efpg@q|wMDT-!x9B08rl@tBp!t&3T^rUOq-OTQ!pJ09ctCx*8*bd zqFCBK?C6%tpX#)$bloa^o<&K&m3MMg_)j{$!zfW^)x(kb$9VY5jxi`=7(fwN3=9we z=O>~A5DkV`AlfquFu3#zn;lXvg$opV4Du9v77V3KVP!_~C|sn_=Vbu;5{1iVUSVmi z`bx3+WE|(w=f}Capvt6Hso}evX;{skWi%k-|I%5{9%7QC2|58Liv~ue6PS+#8yZvz zou(6;6-Db?h7QdbRH<1k#+{@u5283%`ZZrucMB&QkCfI9R)r^Jltj6d#YPxqxsJNy zJW3PUNjmZIMCqd3OGCIpX2YT)<4%^#9y|pH*_nzDw96tzQI@g?W+vsY^w-Dt^5N*- zC>q`Aj-xod^CC^Vqkee*9-j0e0flxxbXj`kP7a+gx zYDPLWrlS><(Thx|@Zj?fp^-!Ux6Gs!9#(l+!*B;Z<6R`yq3EjVlbctlYs6pBmG#|b z8GIdd{oX`>t1g;w%6c=+cZZ``4ONn>u%UIT&(KU^%&`>ynImM<8LIm%(8Q!QdH)J1 z=lB0_M7j#eS0L~>P{*CV`sm#4SNVOmcb+*M%N&Zv7BQ^yqAbo_kAyL8=es}YrAZHX z9DYY8omjL5=1VL}l*8i=J-0{?O#rwwKt(XwH}DLl%m+?U(DDim7MUb{dU~`zJH2F1 z|4htY{x5sQu(2Cq2L!7eb}wy~iNxi5e`8FTZ}E;bu2>IvR;9u8&>EfCTnWUHXM%Xj zFlu1$4Hi_Q>p!x9vwiCXbYHVndoIRKnSbx{(*GwGr^U|;`@ufA0{8ZK8wDOQQe znV^!W7rD&1;%gfl3#YNazqenwaoX>r7CE8nj{ABYEPaiK5{AHS?zQEUM&V9R2JUXV zg>~S4vG=UGBX`?@(`tXV-wxLM3e{_@HPXRUF}|3S&m?PMA1D=~IP&#Dd8g5CY`1rt zkAjtcnoE_W?|OwtD)D-T?{ z5K-XIN~yWQ;}nt%!KC3l7xhgb`UE|@i-AkvrdSa^>Vq$AGvkpdYhuf~C6=u{R)9XO6Jm1vii}X*iB~?n`+z?!;%D1u4U{C#87}Or0z|L>3;c{P>*r*-!?^8w<{=tSPWu6y9Tu zTzLJGYi+nyuWDCq|7}yRn{_u>y6^&Nu6lu^lJPJz!DYhGY<_dcbjCLn-h-(I57`_U KhwQ4@Ed2vwHU8lM diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/mbcsgroupprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/mbcsgroupprober.cpython-34.pyc deleted file mode 100644 index 0883fd6715e7669410cb51f826c7284e22d76bdb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1122 zcmZ8fO>fgc5S_L2;n+^orX1kHjf0WeibACpA%qe^MG;kmTOszcB(W0`){WV9#D{t- zf}eumCt2J$ap4DWVrFgJsB6#LeY5NF%$xn=x80+`w^u)#0KZ^m)NuU>P5(fM@MRzY z5(b5_I5Hq;IG`bM^5C-kv3=AA5f7si-duO-ewEgVGCG8Im?j2Or?aiip z6{E8!FAF-xe5ygR($KdMVjwk9Om30BUjZgaac#pF6xt?F7}WC4^Ikt(spEKTnIHf( zJ7_kVevOdf%itW~!h*SpdXDk{W0{Q;WHp0zgAIdCgO0(LL6>mqP!!=2&VBMw*TcX% z&OJFin~KRyW+-Vpuj^$RE9K$eb4Q5T*(?)6QAUcYRds>}0p2lCl&)$KxCp$Nn%3yN zu3{Z$ftA;EEGNpxP3%`oh_M`MEyQ>Ddw(ZO(w%gcZjF{R8Et)7EJo=x+S?gptD`up z=43S1Q|fyWd^`Q9)-c{}G<^*L*bS?}R-cab>G~CwxBu6I9l*NIhDj_$?h27CqNSv@ zFT}g$P!>Dp52}m74FpVW(0Y@Ave)5mkAPj*uymVLa|#)I zd!nRR4_**Q*TR8x6m@^}Zhmwix^mol72UWWO^AL8JP+)KK=ir`QIrs(HzcBnFClsp z_+wyS`5+p&UhDnRIYF4|e7(Q#JaDJG1$+|NZ849pT&o`?G>_YI9+)6BkFSB_e~ikz-BX`GXI%Lyq_x5amI zUJ(*e=?vn5Z?_T8rLwHqlzpVgu}qgbTK9oJ0X8nsLJ%~xP(o;pOSEv=5Lyp_KLwVn zTN--C*fhsgg?j<+LAc6r268qykEYPIt?5$?OP>}QvJ<6`?VA$~7tFRathavs9m`RS z=(@5H=;c6{MyK0rnUcqTNB1qr0uB)*YL-tqZ@-(>4c{M!2;aGJ&olJaE;HnSPW$C~ zV<)Aw@+Ytf;IqIUigJ~cI9c)t!OgVYRR zbCe{FXYU>W&fKKgM{fupQ#38wi=x}&knK^U^f2S56%0fGXdRiI-q3t~E;l*sRp|gsqnij3J zs77ZbZTA)>KHkhNNJM?iYW2}6japeyXo*avOIbMEv*y)`Ytf!C(4uav*7--Xz!<5_ zi9(6GEXqO@D}lOd^~983h(n+u%1viB6z*I~+gHSNL>7sBBCq4qCGNa|r=D1FKHzlb z`tf)bq8J2r@!Yfr_B#(je7e+2JOw$I@H<_~(%7Des8njvo-oj&ZmgyU{C|dq%A6>a zxM`1Kps}tfDS<~|Ay8+}|7ufJ2Om#0jxYVcQKgvY(y}y)_>0JS)(?UAc^)F0Pn*V> z?*TTx3}3ZXh3VjLCu7$-`pe@e;n6E);3B65{drc(KuB5?#HBHOY4l(v5D(nBROi4h z=OIvT#8fMhjvOP;Q9iOg_uT`2C#jB;A|XYXoldeyI+xl3v@uVZQeE6eLt9Y>1SRI~ z;Wd95h+y-kVh!sjUNI0c5O}0&bzygA`Z#wo_5ZjL4m%rSTqG}A=sPnZW3Mh)g}DF$ zZBQhg`Y8VG9p7%p|J`o!JBBu@xpPwf9>ed3z;oAiZkOs`Go4APiWTKMy0g<2Kl)TZ z9c`WxKmSx}^stOc56hg=(4#aaJxZfBm+0~`H4bXIAxV2~j~%&hLaO9bIpH9f%d=#8 z?{K$j(xXW%GymrGY-wSsc$_S(uD)Mo$>Q3})isuSvsNrE7g$=zi)(CHcKrV3YH6wP zuC(@YeyPCvrF6Np{QkSb66+Dq9+5Sckt8Z!v6ybn0ZZc#=%EEJ4w&F@p8@i+}+r$ zR(BsC{BoRmvAfR?cgo+~L<7|=%>AJxK6e)3l}hA|DPyiX)s;2U;*~wcVk$Xhyl`Ig zO=zCxXDTsu9mvO{TB=m_-pCogyihluV?E||2 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/sbcharsetprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/sbcharsetprober.cpython-34.pyc deleted file mode 100644 index 9cf5b43424ad32086ba98eecb5d274efa4e790af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3196 zcmZ`*-ESMm5uZKs_$5-ZC`Pg(CuLhZ?Ey~w6ci1TDv3L2T?MBmY+D~tB~c%yqD9v(q`qJbb+kl=rd`W6i`Tq9aCzC8QqtlI*-s;545A{h>=FVW~w_EJXeeTo0O?wc8wi0G2!RX;0V@UM<>(8d14!n{ zE70eV$xk^&@=EkMG!#goy+B@>r}PZkN`_M*Z*j^&?-F^}_}49yw@hBuv@5Kw<*X!Y zEli}ZK0Jxlm6<<(A7}&068Q(_da>#M`(J#0y?L+M1>ao!%}m}XKqJN@=nQx)>RI%R zNSv8}nV~a_J7kv5&_)9jCewfu(gtRmHVV@QW|(qHEZJKy8o_EgqUn?qI~tFa);U;C z3Q`8cAeJ)8$wBC;eo~ZLeX4Y%yre9Loq>`g2wyjm9VketqBh^1h?9^akYR_G`WDa3fl(Gwxk(6K4Pw(7` z2ctWqVD#qxIOuzCJ`KbDk?*~Ihc$aDzW7G_%z>R0_FJP9UBpcPfH$gvkXR8#3%8iv zr}a4=eQUZrT@H1=_Nd{h+gPDam-(JQ%H`1mSy1b%%an!P(&Fa2D+@*MdY(4so z`9YW&nCF6q=oS>+Hhe2xc9YfD&n}3qwJJ(jkoJL=9Nxu*>rtngsaqBA=H{PXe)3z6s)ess^u$m{JofrSv4z# zUl>ToV1OCJoKMD<`Dwwejo|;W{dh=FP?}o#Jz;xB$tKW)l*Pp2RVdqm-@6?|J!=cir ze}0+NzUqfh>Ox6&Gw_cU6ZVmh1LfT9_}_|YsYPv%$4Rklg$<&o+h^} z4=mnov>RLPo#r-*@rSa}+_C5Bp||tz)lqCPaSW zm^Jx?_lVEinmMR#II&>QnoUZy!Au;?u#-1wg%9au!o%Pr+i0;_^|3$6UN})U z{eRZJ+5YzQvrYXfZ2Nd|{cqDTVOAX*_XFbS&efMCf0wy8b4eq$jgaOV#qv)7| zZfZGKMb>JLIAvfrw{?B7TB_!&`SKlef@nH-*4Mg6#lNA-*IXuO|xziFT6#tmJOww5JISxC<8W4N+ra7v7E$9-QAmnYiF#e zdn$rI1@ZszyHFMADr6P923doyL)M`ikPYZ2WD~jt*|Odhs5Z0* z=|OiOJC?0N?LhmGK6C&XShfb$h3-N2tX_xOh3-T4t=@pzgC0N*tlosW1HBKq4{iJ2{WcIL=PZa=m(PmXp{JduN<1<|;nE%;JrG zW2)u-Zz5Y95&+T3FY;O@_B=s>(lmGCq3v(b;*F z*g#ai^&Nc~PfYwn$$D1Zwxeg`oUP5vBt0*@rqsUe!ic0S46))Jjk< zL8AoC60}OtE`e8qP6>8O;4_$e96Jn!No4Fh;cb@ zL9e(7aM5RjW#?p|kBJR?MN!l+YRt1Q&W3}$nyy!|F+D0jZ-im8NU|_A+!Dk6F;x~d z7IhX47EKl{7Ht+D3vQ&@VbLWa>#JhEQxh=dGu2JwEYv*0;l`NP;@4TcnB`RylW|zd zD`~7=$j*5&A{#fkrvvfiy=E9rRg|V-_#6KD}#+<#}}4$8(-iPYppq~kEmTOqe&tr&Y@_&pV4Ek$H=mx2~zD9k?Ndn|aPKA@F4 zBs@{*&xZG8j|-wE-l)N_i}a~7YqFIUdn>ytTFj@LbEVjn|KD!8!w<~)kg(p{?Uy~a zOv-b?TDK!1J8aG97_bJO5a}~#H`B7ke0Y}GWXW?QgW_R(6j)CluA=6*?XifPlQ%vk ZFKXy#?~#^rs{#>-19u<>4kP-x{{m+-keL7g diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/sjisprober.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/sjisprober.cpython-34.pyc deleted file mode 100644 index 47a4ab200a7a09b5a736e6ca6d26dffdcf9657fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2586 zcmZuzOK;mo5T4~jqGb9d$97z_g;OL4p-s|5Q}hrNO>HM}P}_l}pvVHnf);6+3Q5T% z1=vOc6i6SJ{*R)6Ah-61@Y<6v{QXJ==3-ZT2kpKU&Q`s?#Q=7|2J zsmB5Q72e`|Od*D#geVmx1qohTlvtG7ByF>{DRC%uNxEk3P*S6`PO@&+E+rnN4U!GB zu2IsYbcW;%r9MfY#G|lIp+`U9a*rZGuW|V-g$?Soo96;zv_-YDGfv9*>(esYI12Jk zR6fmz2T_il*2XZ5vwo)x%4jF(9mQD$?Dfu*?apRglzDtGF5_YLAPbVyA}+AE#CsdV ztc*^|DfBF(RcA-->}_s+)3z#~c}%XZ{EN#qqaLKXeC!LT7y*cgEd@hKi+(0L1dL(P zPr%p{j7_1VF%Cs8g%~wf|23>!)0l}t7z4OLVUr1@N8t>GzJ?ooTcr{FZxWSk~Qy+j^Dgf#^o%Pm(UqG=MO4C5 zP7x)C_%@X4B|%Xr^&9>kzVx+_5 z&ge9s0k2zlizX%#OJZL5_?_u!FxI;>(d23~-o&{p%*gh!CpMj!$jO;ZOM%3lmvqt5ZCuk6+E2MMY?L+Sac0o&=*HgVQvNtJzgv5@h{x(2qWw z;yG>o$$n4E10oI&4kxYZ?@;CAY|$DvUtysGeBjax zi}F+x)o6fx(jhu+w*!G)NlbLSl~o? zsf!v|%2%R693@K@mV47=hX)dtG&-I2mtX0K* zt9+Unx(2-RmI<*Y#F;4~=!)?zi&?uA(=uW%YrR*rCT}LZS6Rv2EUz=n!miN^hmq5E zI({QEv%8EysqdcMxK*rUn5F(*-4b;KJc=cp@ge~OMmVGQMp_D`+NIUEgAOvQC_)WbTIDc9O(HnPjx<3+uiG` zovo^7PRiPLw}Z9x9_~Hc-BjCM>2|sg_PcVaj|A$C^E}G%MM8nGY${YDvoxvZ97a)? z&uaEs6xrC^>TYdxw|5`O`Tnp}Q8pa+k5m|xK{coE9A<}c7-hXkwmOgZ_PZO;x~ltl ze+!FmHruXFSLv}yAY)#MSo)KS%F0TQrBQ4Loz8D_dL3eXfw%Y^6NxpkqU+oeDxISt zp1JZZiVs9xtXZp|_)yGQi&hKxWzn+E=BMfa>voy{>ILT77J zLceR`c9UBa*FmMKrc&uJ948F>N*#}b#O&z)pbK&3Aw1FD%G0U9SqCE{_@%*7=5!g? z6`VWaO}quir7v3bmcu{)hHe47?KwH09$XYv6a6`dw`>`=>bObGzZcy`13$$1^gLI>8oEAF5buO6Rb1AK{A<<<@Pe59R_uQP D#%d=1 diff --git a/env/lib/python3.4/site-packages/chardet/__pycache__/universaldetector.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/__pycache__/universaldetector.cpython-34.pyc deleted file mode 100644 index 73775bec819df5cc449fafd6e249b6a92fa78f8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6480 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 -# -# 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/env/lib/python3.4/site-packages/chardet/big5prober.py b/env/lib/python3.4/site-packages/chardet/big5prober.py deleted file mode 100644 index 98f9970..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/chardistribution.py b/env/lib/python3.4/site-packages/chardet/chardistribution.py deleted file mode 100644 index c0395f4..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/charsetgroupprober.py b/env/lib/python3.4/site-packages/chardet/charsetgroupprober.py deleted file mode 100644 index 8b3738e..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/charsetprober.py b/env/lib/python3.4/site-packages/chardet/charsetprober.py deleted file mode 100644 index eac4e59..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/cli/__init__.py b/env/lib/python3.4/site-packages/chardet/cli/__init__.py deleted file mode 100644 index 8b13789..0000000 --- a/env/lib/python3.4/site-packages/chardet/cli/__init__.py +++ /dev/null @@ -1 +0,0 @@ - diff --git a/env/lib/python3.4/site-packages/chardet/cli/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/cli/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 75c7a795c6a10b65ab462cad0ddbdb6b54cad48d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138 zcmaFI!^`Cruso8Hfq~&M5W@jTzyXMhS%5?e14FPTqu)w~B9JhG_+_qNl3So(kXfLc zRGOKSqFa%lpHz^ZVyd5 F1^}H-A$tG- diff --git a/env/lib/python3.4/site-packages/chardet/cli/__pycache__/chardetect.cpython-34.pyc b/env/lib/python3.4/site-packages/chardet/cli/__pycache__/chardetect.cpython-34.pyc deleted file mode 100644 index cc642d3ab81000405827ccd7391ea8864c145a44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2753 zcma)8%Z?kz6}{bTHpwQ3L)j7>C4y2L2c|Kkq=6O0L=eP~64-_@7+7))F|b=rc5$Xh z{h+IhGa71UHU5LFvdJQwAX(-o@(;B&vdAVM5FkL#t!|DeXp;t6U5{J0>efByRR6oT z6MTO7muG(uh<>20r-Ayf@h|_3A|{%mbSQQybtrRb>QdIAX@fG4rXD#w)}XXW)26jU z-KVK<>mH>o%Gxw-S9VQGJCp@94XUQ5y5bVcOk*jIy|40oct4pH!Au9Bq|XUEC>Sm@}5EJcw^Q7DlWN{U62O0kUe zaVera7D_G)rP)O2W0@!sOD*SG#(~V|MV#bEWf1)4Wt1&bIhh23!1KPCA4jS(6lIY~ z>ys-5d?;>NyUoxr*IbUiA2{SCx|J@mn$t6s>npC5z06S{)JT1uwiziSy`kjEyE<^ z12FxiN^%`8R{2~fMQ#SGJVE?2OcO0tl$HlW$8^K+RH_o=VTfkq@Yz0IH@?af?vB#O z_UsB}ns&Xp%d6pO*8fL%mw!W{i8FWU(#wzNg6Q!#dvw_#?a)Pot{kpkxOC#yO@|u| zQUf~tZb0~b%^jXiKG&Lb>5=wHX}WOeq(!<-CmkLJCa+w&bO;!^@EE(d)gKuxCjpz* zUHtOs_7y-BH|rtn;z{fSRju`ZZFattdZls^;V5xZN5Dx5pv}07q;m>p(G1Yqz(y1c z7+Yi%%6dqXQgd(RphPwpOp|4#qD-VoF3X8{3Rku&bRmu;vWbo@m*Z-VK3~>$6Y&}6 zhgXK{*}0bGw%a_)_aHg%lUczJI6RnC`uaAC3dG2E4RP*Biu zcATEG<93|36F42mcYcER!0Eb*t>(}r`*m@uLDU|pPe}u=KINUd0_YzB@s8)zUb-xnF+>! zLn|+yF0&QClL2!M zUY+m$KwrlffdCG?8Bkl+%aXWa!+A_XOWlPEAh zoro`LE?rOFgI{BQVtyYWFR7ZG?msqTxR@i<)Ls+no# z2)Z=Rho)5aTcZ&V1dt<~=)v%YX(L`pGvuiMNsZ7$ZYtA@ z;yA>pMeVfBDR_!wvT~(vfYhpu!uYe*Vj-1!mwWgIG=cTUQ%l9V0ckBGt?3_at)`qcP#rm`(0VPU1LDsHnQFN>1==ctu;QBbD?CF;4pbIbXu^A2=q z*BwBg8gAFQ>8O34(GEkNgL`~nT45L$^Ds0)hz|fv-r2p|bN&aPrU3r{ diff --git a/env/lib/python3.4/site-packages/chardet/cli/chardetect.py b/env/lib/python3.4/site-packages/chardet/cli/chardetect.py deleted file mode 100644 index f0a4cc5..0000000 --- a/env/lib/python3.4/site-packages/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 chardet import __version__ -from chardet.compat import PY2 -from 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/env/lib/python3.4/site-packages/chardet/codingstatemachine.py b/env/lib/python3.4/site-packages/chardet/codingstatemachine.py deleted file mode 100644 index 68fba44..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/compat.py b/env/lib/python3.4/site-packages/chardet/compat.py deleted file mode 100644 index ddd7468..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/cp949prober.py b/env/lib/python3.4/site-packages/chardet/cp949prober.py deleted file mode 100644 index efd793a..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/enums.py b/env/lib/python3.4/site-packages/chardet/enums.py deleted file mode 100644 index 0451207..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/escprober.py b/env/lib/python3.4/site-packages/chardet/escprober.py deleted file mode 100644 index c70493f..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/escsm.py b/env/lib/python3.4/site-packages/chardet/escsm.py deleted file mode 100644 index 0069523..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/eucjpprober.py b/env/lib/python3.4/site-packages/chardet/eucjpprober.py deleted file mode 100644 index 20ce8f7..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/euckrfreq.py b/env/lib/python3.4/site-packages/chardet/euckrfreq.py deleted file mode 100644 index b68078c..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/euckrprober.py b/env/lib/python3.4/site-packages/chardet/euckrprober.py deleted file mode 100644 index 345a060..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/euctwfreq.py b/env/lib/python3.4/site-packages/chardet/euctwfreq.py deleted file mode 100644 index ed7a995..0000000 --- a/env/lib/python3.4/site-packages/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 -# - -# 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/env/lib/python3.4/site-packages/chardet/euctwprober.py b/env/lib/python3.4/site-packages/chardet/euctwprober.py deleted file mode 100644 index 35669cc..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/gb2312freq.py b/env/lib/python3.4/site-packages/chardet/gb2312freq.py deleted file mode 100644 index 697837b..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/gb2312prober.py b/env/lib/python3.4/site-packages/chardet/gb2312prober.py deleted file mode 100644 index 8446d2d..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/hebrewprober.py b/env/lib/python3.4/site-packages/chardet/hebrewprober.py deleted file mode 100644 index b0e1bf4..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/jisfreq.py b/env/lib/python3.4/site-packages/chardet/jisfreq.py deleted file mode 100644 index 83fc082..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/jpcntx.py b/env/lib/python3.4/site-packages/chardet/jpcntx.py deleted file mode 100644 index 20044e4..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langbulgarianmodel.py b/env/lib/python3.4/site-packages/chardet/langbulgarianmodel.py deleted file mode 100644 index 2aa4fb2..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langcyrillicmodel.py b/env/lib/python3.4/site-packages/chardet/langcyrillicmodel.py deleted file mode 100644 index e5f9a1f..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langgreekmodel.py b/env/lib/python3.4/site-packages/chardet/langgreekmodel.py deleted file mode 100644 index 5332221..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langhebrewmodel.py b/env/lib/python3.4/site-packages/chardet/langhebrewmodel.py deleted file mode 100644 index 58f4c87..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langhungarianmodel.py b/env/lib/python3.4/site-packages/chardet/langhungarianmodel.py deleted file mode 100644 index bb7c095..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langthaimodel.py b/env/lib/python3.4/site-packages/chardet/langthaimodel.py deleted file mode 100644 index 15f94c2..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/langturkishmodel.py b/env/lib/python3.4/site-packages/chardet/langturkishmodel.py deleted file mode 100644 index a427a45..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/latin1prober.py b/env/lib/python3.4/site-packages/chardet/latin1prober.py deleted file mode 100644 index 7d1e8c2..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/mbcharsetprober.py b/env/lib/python3.4/site-packages/chardet/mbcharsetprober.py deleted file mode 100644 index 6256ecf..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/mbcsgroupprober.py b/env/lib/python3.4/site-packages/chardet/mbcsgroupprober.py deleted file mode 100644 index 530abe7..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/mbcssm.py b/env/lib/python3.4/site-packages/chardet/mbcssm.py deleted file mode 100644 index 8360d0f..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/sbcharsetprober.py b/env/lib/python3.4/site-packages/chardet/sbcharsetprober.py deleted file mode 100644 index 0adb51d..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/sbcsgroupprober.py b/env/lib/python3.4/site-packages/chardet/sbcsgroupprober.py deleted file mode 100644 index 98e95dc..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/sjisprober.py b/env/lib/python3.4/site-packages/chardet/sjisprober.py deleted file mode 100644 index 9e29623..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/universaldetector.py b/env/lib/python3.4/site-packages/chardet/universaldetector.py deleted file mode 100644 index 7b4e92d..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/utf8prober.py b/env/lib/python3.4/site-packages/chardet/utf8prober.py deleted file mode 100644 index 6c3196c..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/chardet/version.py b/env/lib/python3.4/site-packages/chardet/version.py deleted file mode 100644 index bb2a34a..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/easy_install.py b/env/lib/python3.4/site-packages/easy_install.py deleted file mode 100644 index d87e984..0000000 --- a/env/lib/python3.4/site-packages/easy_install.py +++ /dev/null @@ -1,5 +0,0 @@ -"""Run the EasyInstall command""" - -if __name__ == '__main__': - from setuptools.command.easy_install import main - main() diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/DESCRIPTION.rst b/env/lib/python3.4/site-packages/idna-2.6.dist-info/DESCRIPTION.rst deleted file mode 100644 index 878ecd2..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/DESCRIPTION.rst +++ /dev/null @@ -1,213 +0,0 @@ -Internationalized Domain Names in Applications (IDNA) -===================================================== - -Support for the Internationalised Domain Names in Applications -(IDNA) protocol as specified in `RFC 5891 `_. -This is the latest version of the protocol and is sometimes referred to as -“IDNA 2008”. - -This library also provides support for Unicode Technical Standard 46, -`Unicode IDNA Compatibility Processing `_. - -This acts as a suitable replacement for the “encodings.idna” module that -comes with the Python standard library, but only supports the -old, deprecated IDNA specification (`RFC 3490 `_). - -Basic functions are simply executed: - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode('ドメイン.テスト') - b'xn--eckwd4c7c.xn--zckzah' - >>> print(idna.decode('xn--eckwd4c7c.xn--zckzah')) - ドメイン.テスト - - # Python 2 - >>> import idna - >>> idna.encode(u'ドメイン.テスト') - 'xn--eckwd4c7c.xn--zckzah' - >>> print idna.decode('xn--eckwd4c7c.xn--zckzah') - ドメイン.テスト - -Packages --------- - -The latest tagged release version is published in the PyPI repository: - -.. image:: https://badge.fury.io/py/idna.svg - :target: http://badge.fury.io/py/idna - - -Installation ------------- - -To install this library, you can use pip: - -.. code-block:: bash - - $ pip install idna - -Alternatively, you can install the package using the bundled setup script: - -.. code-block:: bash - - $ python setup.py install - -This library works with Python 2.6 or later, and Python 3.3 or later. - - -Usage ------ - -For typical usage, the ``encode`` and ``decode`` functions will take a domain -name argument and perform a conversion to A-labels or U-labels respectively. - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode('ドメイン.テスト') - b'xn--eckwd4c7c.xn--zckzah' - >>> print(idna.decode('xn--eckwd4c7c.xn--zckzah')) - ドメイン.テスト - -You may use the codec encoding and decoding methods using the -``idna.codec`` module: - -.. code-block:: pycon - - # Python 2 - >>> import idna.codec - >>> print u'домена.испытание'.encode('idna') - xn--80ahd1agd.xn--80akhbyknj4f - >>> print 'xn--80ahd1agd.xn--80akhbyknj4f'.decode('idna') - домена.испытание - -Conversions can be applied at a per-label basis using the ``ulabel`` or ``alabel`` -functions if necessary: - -.. code-block:: pycon - - # Python 2 - >>> idna.alabel(u'测试') - 'xn--0zwm56d' - -Compatibility Mapping (UTS #46) -+++++++++++++++++++++++++++++++ - -As described in `RFC 5895 `_, the IDNA -specification no longer normalizes input from different potential ways a user -may input a domain name. This functionality, known as a “mapping”, is now -considered by the specification to be a local user-interface issue distinct -from IDNA conversion functionality. - -This library provides one such mapping, that was developed by the Unicode -Consortium. Known as `Unicode IDNA Compatibility Processing `_, -it provides for both a regular mapping for typical applications, as well as -a transitional mapping to help migrate from older IDNA 2003 applications. - -For example, “Königsgäßchen” is not a permissible label as *LATIN CAPITAL -LETTER K* is not allowed (nor are capital letters in general). UTS 46 will -convert this into lower case prior to applying the IDNA conversion. - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode(u'Königsgäßchen') - ... - idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of 'Königsgäßchen' not allowed - >>> idna.encode('Königsgäßchen', uts46=True) - b'xn--knigsgchen-b4a3dun' - >>> print(idna.decode('xn--knigsgchen-b4a3dun')) - königsgäßchen - -Transitional processing provides conversions to help transition from the older -2003 standard to the current standard. For example, in the original IDNA -specification, the *LATIN SMALL LETTER SHARP S* (ß) was converted into two -*LATIN SMALL LETTER S* (ss), whereas in the current IDNA specification this -conversion is not performed. - -.. code-block:: pycon - - # Python 2 - >>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True) - 'xn--knigsgsschen-lcb0w' - -Implementors should use transitional processing with caution, only in rare -cases where conversion from legacy labels to current labels must be performed -(i.e. IDNA implementations that pre-date 2008). For typical applications -that just need to convert labels, transitional processing is unlikely to be -beneficial and could produce unexpected incompatible results. - -``encodings.idna`` Compatibility -++++++++++++++++++++++++++++++++ - -Function calls from the Python built-in ``encodings.idna`` module are -mapped to their IDNA 2008 equivalents using the ``idna.compat`` module. -Simply substitute the ``import`` clause in your code to refer to the -new module name. - -Exceptions ----------- - -All errors raised during the conversion following the specification should -raise an exception derived from the ``idna.IDNAError`` base class. - -More specific exceptions that may be generated as ``idna.IDNABidiError`` -when the error reflects an illegal combination of left-to-right and right-to-left -characters in a label; ``idna.InvalidCodepoint`` when a specific codepoint is -an illegal character in an IDN label (i.e. INVALID); and ``idna.InvalidCodepointContext`` -when the codepoint is illegal based on its positional context (i.e. it is CONTEXTO -or CONTEXTJ but the contextual requirements are not satisfied.) - -Building and Diagnostics ------------------------- - -The IDNA and UTS 46 functionality relies upon pre-calculated lookup tables for -performance. These tables are derived from computing against eligibility criteria -in the respective standards. These tables are computed using the command-line -script ``tools/idna-data``. - -This tool will fetch relevant tables from the Unicode Consortium and perform the -required calculations to identify eligibility. It has three main modes: - -* ``idna-data make-libdata``. Generates ``idnadata.py`` and ``uts46data.py``, - the pre-calculated lookup tables using for IDNA and UTS 46 conversions. Implementors - who wish to track this library against a different Unicode version may use this tool - to manually generate a different version of the ``idnadata.py`` and ``uts46data.py`` - files. - -* ``idna-data make-table``. Generate a table of the IDNA disposition - (e.g. PVALID, CONTEXTJ, CONTEXTO) in the format found in Appendix B.1 of RFC - 5892 and the pre-computed tables published by `IANA `_. - -* ``idna-data U+0061``. Prints debugging output on the various properties - associated with an individual Unicode codepoint (in this case, U+0061), that are - used to assess the IDNA and UTS 46 status of a codepoint. This is helpful in debugging - or analysis. - -The tool accepts a number of arguments, described using ``idna-data -h``. Most notably, -the ``--version`` argument allows the specification of the version of Unicode to use -in computing the table data. For example, ``idna-data --version 9.0.0 make-libdata`` -will generate library data against Unicode 9.0.0. - -Note that this script requires Python 3, but all generated library data will work -in Python 2.6+. - - -Testing -------- - -The library has a test suite based on each rule of the IDNA specification, as -well as tests that are provided as part of the Unicode Technical Standard 46, -`Unicode IDNA Compatibility Processing `_. - -The tests are run automatically on each commit at Travis CI: - -.. image:: https://travis-ci.org/kjd/idna.svg?branch=master - :target: https://travis-ci.org/kjd/idna - - diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/INSTALLER b/env/lib/python3.4/site-packages/idna-2.6.dist-info/INSTALLER deleted file mode 100644 index a1b589e..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/INSTALLER +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/METADATA b/env/lib/python3.4/site-packages/idna-2.6.dist-info/METADATA deleted file mode 100644 index 2ccb268..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/METADATA +++ /dev/null @@ -1,239 +0,0 @@ -Metadata-Version: 2.0 -Name: idna -Version: 2.6 -Summary: Internationalized Domain Names in Applications (IDNA) -Home-page: https://github.com/kjd/idna -Author: Kim Davies -Author-email: kim@cynosure.com.au -License: BSD-like -Platform: UNKNOWN -Classifier: Development Status :: 5 - Production/Stable -Classifier: Intended Audience :: Developers -Classifier: Intended Audience :: System Administrators -Classifier: License :: OSI Approved :: BSD License -Classifier: Operating System :: OS Independent -Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2.6 -Classifier: Programming Language :: Python :: 2.7 -Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 -Classifier: Programming Language :: Python :: 3.4 -Classifier: Programming Language :: Python :: 3.5 -Classifier: Programming Language :: Python :: 3.6 -Classifier: Topic :: Internet :: Name Service (DNS) -Classifier: Topic :: Software Development :: Libraries :: Python Modules -Classifier: Topic :: Utilities - -Internationalized Domain Names in Applications (IDNA) -===================================================== - -Support for the Internationalised Domain Names in Applications -(IDNA) protocol as specified in `RFC 5891 `_. -This is the latest version of the protocol and is sometimes referred to as -“IDNA 2008”. - -This library also provides support for Unicode Technical Standard 46, -`Unicode IDNA Compatibility Processing `_. - -This acts as a suitable replacement for the “encodings.idna” module that -comes with the Python standard library, but only supports the -old, deprecated IDNA specification (`RFC 3490 `_). - -Basic functions are simply executed: - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode('ドメイン.テスト') - b'xn--eckwd4c7c.xn--zckzah' - >>> print(idna.decode('xn--eckwd4c7c.xn--zckzah')) - ドメイン.テスト - - # Python 2 - >>> import idna - >>> idna.encode(u'ドメイン.テスト') - 'xn--eckwd4c7c.xn--zckzah' - >>> print idna.decode('xn--eckwd4c7c.xn--zckzah') - ドメイン.テスト - -Packages --------- - -The latest tagged release version is published in the PyPI repository: - -.. image:: https://badge.fury.io/py/idna.svg - :target: http://badge.fury.io/py/idna - - -Installation ------------- - -To install this library, you can use pip: - -.. code-block:: bash - - $ pip install idna - -Alternatively, you can install the package using the bundled setup script: - -.. code-block:: bash - - $ python setup.py install - -This library works with Python 2.6 or later, and Python 3.3 or later. - - -Usage ------ - -For typical usage, the ``encode`` and ``decode`` functions will take a domain -name argument and perform a conversion to A-labels or U-labels respectively. - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode('ドメイン.テスト') - b'xn--eckwd4c7c.xn--zckzah' - >>> print(idna.decode('xn--eckwd4c7c.xn--zckzah')) - ドメイン.テスト - -You may use the codec encoding and decoding methods using the -``idna.codec`` module: - -.. code-block:: pycon - - # Python 2 - >>> import idna.codec - >>> print u'домена.испытание'.encode('idna') - xn--80ahd1agd.xn--80akhbyknj4f - >>> print 'xn--80ahd1agd.xn--80akhbyknj4f'.decode('idna') - домена.испытание - -Conversions can be applied at a per-label basis using the ``ulabel`` or ``alabel`` -functions if necessary: - -.. code-block:: pycon - - # Python 2 - >>> idna.alabel(u'测试') - 'xn--0zwm56d' - -Compatibility Mapping (UTS #46) -+++++++++++++++++++++++++++++++ - -As described in `RFC 5895 `_, the IDNA -specification no longer normalizes input from different potential ways a user -may input a domain name. This functionality, known as a “mapping”, is now -considered by the specification to be a local user-interface issue distinct -from IDNA conversion functionality. - -This library provides one such mapping, that was developed by the Unicode -Consortium. Known as `Unicode IDNA Compatibility Processing `_, -it provides for both a regular mapping for typical applications, as well as -a transitional mapping to help migrate from older IDNA 2003 applications. - -For example, “Königsgäßchen” is not a permissible label as *LATIN CAPITAL -LETTER K* is not allowed (nor are capital letters in general). UTS 46 will -convert this into lower case prior to applying the IDNA conversion. - -.. code-block:: pycon - - # Python 3 - >>> import idna - >>> idna.encode(u'Königsgäßchen') - ... - idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of 'Königsgäßchen' not allowed - >>> idna.encode('Königsgäßchen', uts46=True) - b'xn--knigsgchen-b4a3dun' - >>> print(idna.decode('xn--knigsgchen-b4a3dun')) - königsgäßchen - -Transitional processing provides conversions to help transition from the older -2003 standard to the current standard. For example, in the original IDNA -specification, the *LATIN SMALL LETTER SHARP S* (ß) was converted into two -*LATIN SMALL LETTER S* (ss), whereas in the current IDNA specification this -conversion is not performed. - -.. code-block:: pycon - - # Python 2 - >>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True) - 'xn--knigsgsschen-lcb0w' - -Implementors should use transitional processing with caution, only in rare -cases where conversion from legacy labels to current labels must be performed -(i.e. IDNA implementations that pre-date 2008). For typical applications -that just need to convert labels, transitional processing is unlikely to be -beneficial and could produce unexpected incompatible results. - -``encodings.idna`` Compatibility -++++++++++++++++++++++++++++++++ - -Function calls from the Python built-in ``encodings.idna`` module are -mapped to their IDNA 2008 equivalents using the ``idna.compat`` module. -Simply substitute the ``import`` clause in your code to refer to the -new module name. - -Exceptions ----------- - -All errors raised during the conversion following the specification should -raise an exception derived from the ``idna.IDNAError`` base class. - -More specific exceptions that may be generated as ``idna.IDNABidiError`` -when the error reflects an illegal combination of left-to-right and right-to-left -characters in a label; ``idna.InvalidCodepoint`` when a specific codepoint is -an illegal character in an IDN label (i.e. INVALID); and ``idna.InvalidCodepointContext`` -when the codepoint is illegal based on its positional context (i.e. it is CONTEXTO -or CONTEXTJ but the contextual requirements are not satisfied.) - -Building and Diagnostics ------------------------- - -The IDNA and UTS 46 functionality relies upon pre-calculated lookup tables for -performance. These tables are derived from computing against eligibility criteria -in the respective standards. These tables are computed using the command-line -script ``tools/idna-data``. - -This tool will fetch relevant tables from the Unicode Consortium and perform the -required calculations to identify eligibility. It has three main modes: - -* ``idna-data make-libdata``. Generates ``idnadata.py`` and ``uts46data.py``, - the pre-calculated lookup tables using for IDNA and UTS 46 conversions. Implementors - who wish to track this library against a different Unicode version may use this tool - to manually generate a different version of the ``idnadata.py`` and ``uts46data.py`` - files. - -* ``idna-data make-table``. Generate a table of the IDNA disposition - (e.g. PVALID, CONTEXTJ, CONTEXTO) in the format found in Appendix B.1 of RFC - 5892 and the pre-computed tables published by `IANA `_. - -* ``idna-data U+0061``. Prints debugging output on the various properties - associated with an individual Unicode codepoint (in this case, U+0061), that are - used to assess the IDNA and UTS 46 status of a codepoint. This is helpful in debugging - or analysis. - -The tool accepts a number of arguments, described using ``idna-data -h``. Most notably, -the ``--version`` argument allows the specification of the version of Unicode to use -in computing the table data. For example, ``idna-data --version 9.0.0 make-libdata`` -will generate library data against Unicode 9.0.0. - -Note that this script requires Python 3, but all generated library data will work -in Python 2.6+. - - -Testing -------- - -The library has a test suite based on each rule of the IDNA specification, as -well as tests that are provided as part of the Unicode Technical Standard 46, -`Unicode IDNA Compatibility Processing `_. - -The tests are run automatically on each commit at Travis CI: - -.. image:: https://travis-ci.org/kjd/idna.svg?branch=master - :target: https://travis-ci.org/kjd/idna - - diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/RECORD b/env/lib/python3.4/site-packages/idna-2.6.dist-info/RECORD deleted file mode 100644 index 45c34b4..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/RECORD +++ /dev/null @@ -1,23 +0,0 @@ -idna/__init__.py,sha256=9Nt7xpyet3DmOrPUGooDdAwmHZZu1qUAy2EaJ93kGiQ,58 -idna/codec.py,sha256=lvYb7yu7PhAqFaAIAdWcwgaWI2UmgseUua-1c0AsG0A,3299 -idna/compat.py,sha256=R-h29D-6mrnJzbXxymrWUW7iZUvy-26TQwZ0ij57i4U,232 -idna/core.py,sha256=GafiWdYQIK5TSjWdRzCYCho704ALtMCrV_dnXXn57U0,11390 -idna/idnadata.py,sha256=-Cg83lurKoA9p7lb0lMAsos0rFz1dnKrGeBE3o8UuCA,32999 -idna/intranges.py,sha256=TY1lpxZIQWEP6tNqjZkFA5hgoMWOj1OBmnUG8ihT87E,1749 -idna/package_data.py,sha256=KMSUTS_M7ZZ7Ugl_V_EOxV-D3o7v7yVkt45JK_bpW24,21 -idna/uts46data.py,sha256=YylQYBfljAx_WVqR2D7HgcGGyVCWwPm6uF38aERuhyw,184944 -idna-2.6.dist-info/DESCRIPTION.rst,sha256=XE7tSurJDfSB3AsHWf990INfSzTE5ysMEuqivWZobW8,7828 -idna-2.6.dist-info/METADATA,sha256=k-onXnwR756XWu_ISqwb-_NRl4Khz_Es9AmYkV0TM-o,8866 -idna-2.6.dist-info/RECORD,, -idna-2.6.dist-info/WHEEL,sha256=o2k-Qa-RMNIJmUdIc7KU6VWR_ErNRbWNlxDIpl7lm34,110 -idna-2.6.dist-info/metadata.json,sha256=f73f8l4pL23NliZdfccMvmdsd9l39J4YBcEDuTvZJY4,1097 -idna-2.6.dist-info/top_level.txt,sha256=jSag9sEDqvSPftxOQy-ABfGV_RSy7oFh4zZJpODV8k0,5 -idna-2.6.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -idna/__pycache__/uts46data.cpython-34.pyc,, -idna/__pycache__/__init__.cpython-34.pyc,, -idna/__pycache__/codec.cpython-34.pyc,, -idna/__pycache__/core.cpython-34.pyc,, -idna/__pycache__/compat.cpython-34.pyc,, -idna/__pycache__/intranges.cpython-34.pyc,, -idna/__pycache__/idnadata.cpython-34.pyc,, -idna/__pycache__/package_data.cpython-34.pyc,, diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/WHEEL b/env/lib/python3.4/site-packages/idna-2.6.dist-info/WHEEL deleted file mode 100644 index 8b6dd1b..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/WHEEL +++ /dev/null @@ -1,6 +0,0 @@ -Wheel-Version: 1.0 -Generator: bdist_wheel (0.29.0) -Root-Is-Purelib: true -Tag: py2-none-any -Tag: py3-none-any - diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/metadata.json b/env/lib/python3.4/site-packages/idna-2.6.dist-info/metadata.json deleted file mode 100644 index 0e74f27..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: Name Service (DNS)", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities"], "extensions": {"python.details": {"contacts": [{"email": "kim@cynosure.com.au", "name": "Kim Davies", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}, "project_urls": {"Home": "https://github.com/kjd/idna"}}}, "generator": "bdist_wheel (0.29.0)", "license": "BSD-like", "metadata_version": "2.0", "name": "idna", "summary": "Internationalized Domain Names in Applications (IDNA)", "version": "2.6"} \ No newline at end of file diff --git a/env/lib/python3.4/site-packages/idna-2.6.dist-info/top_level.txt b/env/lib/python3.4/site-packages/idna-2.6.dist-info/top_level.txt deleted file mode 100644 index c40472e..0000000 --- a/env/lib/python3.4/site-packages/idna-2.6.dist-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -idna diff --git a/env/lib/python3.4/site-packages/idna/__init__.py b/env/lib/python3.4/site-packages/idna/__init__.py deleted file mode 100644 index 847bf93..0000000 --- a/env/lib/python3.4/site-packages/idna/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from .package_data import __version__ -from .core import * diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 4a6f64ac6c21e2e4ac55427dd3b3521fd1bce813..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 203 zcmaFI!^`CrusqU=fq~&M5W@izkmUfx#d1I*1&A0Kau^tL85yD&85lu)CWag)hL99y zhG0#WmyAF~nvA!&2KczG$)edBFG002-MgZ}rF_!=U diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/codec.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/codec.cpython-34.pyc deleted file mode 100644 index 24b0b1eb7a514cf1a24ae0287b39d57fe6ced160..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3388 zcmd5;OK%)S5UzRb%s$3m#|}vx0@w)$Poy|O2*Du_LmZ)SSP&M9SQM?sGi@`=?CiQ{ zRwTxjkR7g^xp3fw_zyu`_yrvMNKUzsI|tyao?Y+S>p+4yFuPsT-BnZ7U0q*Q|K?3q z-}~VEj~{tNk7(>Ep}&Hb{R$G{Z%{(iF{o)!$E2o79gCV4b!=+d)G1N3L`Gy%WKrT! z)1g7%rKU^5rFNMjoA&X2h2D)y6gl(&S{)J&wX3ubWmPa-iprW%){L5Fcwkg0s%l16 zGp00S8jKo6o@RI?3SOP|v8XzDQxr{W-t>?+qj@tF)hU``R`UcedCfoZ*uX~pl5#{E zb|ayjNEGiN3D!lToPP1H++JU5?(x4!G2H|q=zE;WW%h)KH zo^i%>4BOoHw2zjHQ~STTXv{N{UXnFzK=J`fjve2UQ{10sQfI=xDaZ-#vE&@uQ+8g& zX#=5KZne^&BU&w0ZM8bxsGo4(YqhreK~iwE8w=YbE4rsmm0^a@HnTxIvtE@v6QUhF ze6%ZQ**TEOh-OG3oEcKKn!TNdQglR`2gxlBD;ct8e)uf8uYe& zU@Y1#(T+{>E2c;y^I6C+DrS*Bu5E#1QC9G)bd81g1|nN~1U68zNwkaHWz()p_f}ce z>fNifTc#bPDVuWGC=Xy|?6@RK%hn3&QitUW6VM&9ui0iuH;8!i0>Ec}n-W_AgnA7y6HD}Bi+l!MCwtQH3 z!?)!uZ-^lzPck{rG7fUjkUaiRf`3)llBWd!jpqyg@-TxVeeatj->2NB zHUd-UbYLM}(m_}Zhglvm3Sk365JgBL@(#h~Ck>klVDs%5YygujZ~&WvUn^kqa0r`+ z1ol6{2ABYT4#DOR4I6hHHkEPM{8GTCItd$y9S0ll`C+3UN3?9GCo&9i0T_1)gK~O5W~q5uj?D0){qG?B)Fqg!Dm^Q9-))@Z;p|81i*+{8?p( zT`9(l=#r!H!uLq|8i+DcncT43>BWgC@Wm@rXW!AKLqwCQU$6C8fkA*D-3PDc*v*u$ c7Wb#?9JU#U;u7z|tef+v<`?JvbJjWQFG4nrdH?_b diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/compat.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/compat.cpython-34.pyc deleted file mode 100644 index be01cf8c194f2420fbb9ebf60d22ae7139a53f1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 581 zcmb7B!AiqG5S>k$HVqL3e<0VWwM7s-6j7>&cnCu4L2qexk-#RqY__1{N&Oe`mvZ%@ z7eBz0GpQ93Jh)`uzGP=--n_hrYr*N+)5R+QykLAU2iYM;Jx1X8FpvPVFUF8Lz+HF* zxJ1$c?zP+n-UZ%kIezqE8u#BAmWWxyHgjUMXr~Snj5!9meV9Q2-%t<%^^Z?}`<^eEaL zjrJq1L>*PiMhjcWq83q=l|mb#BW;vbxsqtfMyhO5YAH%lS;0??QHK1je+%?ix5?s_ wz7TmDdrc=-Ml>GD&s$pzDK~WdqYk-l+G+i9srW*Q1NwQjj}WlH3Ej~B1QBv^+yDRo diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/core.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/core.cpython-34.pyc deleted file mode 100644 index 033eabffa5998c398be53eb3dc624f5ff4520010..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10077 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 JI(XpF{{fTi^%ejC diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/idnadata.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/idnadata.cpython-34.pyc deleted file mode 100644 index 95c370828e43802026be087b02d112fd63f29ef2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26983 zcmeI4eR$3FvmKICWVzf$H zl9pD@OJX zY2q+A=fkRa)p*qe)kIB#W|C&IW(o#Z?bb}yOw&xq;Hqb65;Ze5vouMX*_t_;xte6n zJdLfHuSvlyu-pq(i!_ThOEgP0%QUH)u0s{d3~ zY5vmut@%e|c{$hOrKzT=uJOj;T570#R5ew;sykG*G_`fmPg6$+>uTz0>T4Qk8fxy; z_-h(z8f%(p0x6{3_f}X zO{flb)O6Bx)^x$(ocF4_s=8^ybg;Xoho+}a3)kGIgS|ApH4&OVn!cL*H7-p*O@GY* zO{8X^W{_sECQ36zGgLE76RjDp8KD`e8KrqZGg|YYCPwp+W{hU6CRQ^}6Q_At6R#Ps znV^}dNxAKGjKRg{scg-B zO^Rj#24`8QT7<#3{bJ1$%~GAVOp~fvu34d3sY%m3qFJSR6oZeDu34>FgTV)S41;g` zwHVwk>vV9v4sOt7Xf|p#X&%>X)@;#i)jXle)I6!#rg=(}rFmMjU9&@zt$9YXQ}e85 zm*zRmZq4(W9L)=wJ(|6mT+Kese$9)TJk3j*mo=|w4rpH09Mrs~$=AHDIiz_*b6E4H z=7{DkO@ZcZ%~8!ennKOHn)fvCYl<|-G{-e3G$%D5XijN9)D&wz(wx?u(VW$s)123Q ztSQlaqWM&FL32^_ndXw_b4{t{3(aNCmzpb@uQXRN_&fNurcCpV=9=bP&2`NU4FCPp ze6K0j{Ghq1`B77$`APG$<`+$+=2y*cn%_0IG=FGrYyQ+!Y5vmut@%e|RnxzJnrfQr z8gESvjgO|L##eKPrk19*#t(yAsSXC;qIFgEH1#zNGz~GhdG6HsYZ_@9Yno^RGDG;K8@ns%D@nhu&!O-D^9O=nFP&Apngnr@mf zO?OQXO;1g@<~~g?O>a$vrjMqt=6;P!(@)c1Ge8rG8CcCd2!lV4!PR=iRkISSTkcjq z?uI@++^v1w{+M7NcQc4~OxkPd>TNk>3~mOE#Ng}S71P`5N5nk1b7O_8pErb=IjS}UAuI0n5a zErABCbdHunW2F_)6zQ+flhS{n7gv_!E413S#8=_%WjV3ItD0ri@Kp>NjTcaiL8OT&TWI>E06&*htYl95LR+Qba-%E3SIfq&dzl zbP@+58$0?v)YZh%U!jFfoG-NJGA}D7$@5|QAg-9WA92e>e}pyLbGCs9KNF)60f;!C zsHv0fsf(OzeF|T&cR$b9xC@ce-xJlkRJXicb@a)5*}UcJS#iEmiT0%FljclvF8wEO zJ97c+UdyT+;JLKb6`%NEPyB;$4f8~7H{3wco=9HlWo0e*e6~9gMJBxP;VpdlINxED zQYOv9N4)V6E|_TH`!3Oos76#Lya`{THgF@7=L=%CWR7OGVzwrN34Zq`wjtUQAw)Z( zJ<)*(B{~wFh|WY8;$EUF(TxZrx)VK!oNX?)LhJdM1Nuc z5lIXr1`&gaC}IdPl$b-zCFT(}F`q~w77z=GMZ{ua39*z|Mx+wUi50|3B8_;2SVcTa zq!X)&HN<1YT4Eisp4dQS5F3e2#N)(fVhgdAc!J0zo+P#rPZ3$f)5LaS2a!!YL+m7; zC3X?d5xa@!i5%huVh^#G$R+j>`-vBcJmMwdW#Sd$0P!kuka&&ACtfEG5pNKOi8qNO z#9KrG@iuXkc!ww?-X-26-Y1HPW5jXd1aXr1fH*~bNE8zv5vPeW#987Tah~{?_=Na^ zxJmp-+$R1cs)&Dx`Za-u#GQmc(THeFG$8_ryNISlGa`_#h8Ro4661(C;$b457*9+fCK3t6Bw{i#g>Vy7iD|@iVg`{&%p_(JNyKbo4l$QV zCgu?~F`q~w77z=GMMN6$2(gNIlt?F56Kjaah_%EzVm+~e$RIWnn~2AW&BPXBEAa%8 zNjynxBc39%h^L9|#10~xc!t&l5Ss3&b8`FOf^^C;WndI>a<$Ix&Mt zBwV>bKcYV|fQTdp5`&1rL=-WE7)lHyqKVp6=^l7x3_Z?KT24BQXi`p^hzLujPb9~v!f42_WnK;xxNp>Am)G)dYVnj#H?rb=5u)1|@C3~3u^rZfba zEo~3Yk%mI^q@AGo(k{>fX;)~Gv`90;v1 z#Y1~5Ksp2(B*nveD^xlH8Yab$P*#L=G&E8g1C5rBfyPKL1^@D~=>q5h% z^`Q~chR{f$88kzB4Vo#v z4$YQ+2hEZ4tICt!gyu^tpas%OXtDGU=oRT-&~j-4pG~aq+&Yt?=?xrpLo=k)pqbJc z&}`{UXpS@qnkStD&6g%a3#2x*NSXpImM(;rNEbs(rAwh@(o|@27Gc zGzXd?-2=^(=0dZj`=L3~JZPTuWoW+i0JK1Q5LzV7hZai@K})2Ep{3Fz&@yQOv|M@= zS}84rR!QH7`rhf>e8-^mr6-^P(hs0P(hs2_(vP5Bq-UYw((}+rX$dr1`YALg^lX*18r0k0xlz5Leo`N(ztk5RD6Itzmij?M zrFEfU()!Q{X+vnF)E^oxZ48Z(20-JbO`&dSAT&wZ9GW5xf~HDaLDQwd&;mvfZQVjh;3K+B|j?klF5bA}txRA~h?S8Cy@i|f*1P*kUh4cexU|Z*U&p<<^7oqXeGH9Cg zXK0qxyB0p35a(jGq5jea&1b%AbUZX!x)7QrO^157cP_RG>Mz|2jganxMoV9X=1TLSC#6TACDP;23h60m zURhZ2)L+^F8X;{5jh5aE&6S2hPfB}1OQZv# z71ANlz>d0gprO)OXspx?O_e4?v!ph(NSY4y?c`j;2B^Pu3p8B14H_lg0d-5CfhJ3L zK^IG3fM!Tvgzl0afgYB=54|P*02%LzY=rtt zw?MTi;aYaNMoV#Qa3bBnhed7ra`Yu)1kgSoNIUr z>MuPAogpoN7E6ypE2Sr(R!`?*A3{Tl0M4w_HvG{hSry^g9b`BKtrUPpkdN1=qTwfs9Tx?O_%P0W=eCR+0r~{ zuJko%zVrz6tn?_fTzU*@^>#k96VL$ZX=sr264WKV0$nWis)vh3I2ZGShDw`46Qu2- zY0@6h5@|TJRN4z#CLI91CB^S=t@?eO>m3damX3yoOUFW^rSZ@NX(BX5IvbiRoewRN zE`XkuJ_5ZiT@Cf^>wL5)paIe>=qTwkP`7k9bg^_VG((yP-6ee!nlF7DdR=+~8gRe! zA%@n+ZRT=xC)Cx?(LbpJ9JLzYucvfKL!39tIXVIwGQ`obP?vNZG(kE6Izze+nkL-@ z4H@cO>{X~sdI)+_`VRDp^j)Ym%sKCIsIT+_G)UUuPJA?JV`x;gbKZw}RGI)y8SWh2 z47El$`YSX|I=eBx14cPV)1U?89NodAagKfuO_SDXf@_F(jy8gZOS?nUq%l0hc;^hW zc~m+NdRUqQJt@uSc_%pMErDK?UWCR^bdFwzCQHAArb(OPIdE5kbB4vxH0g^_YqE3n zH)x^s?z?c*?Hmn-rb#29h0;0DfT_+I7VxMv4{A+wj-KLC=_ROZx^pzJDb6s%(TUJB z>2hkKb96nlO1d5Dn&}+Pg=R~mo8cOgoTG72*K9{qpn1|to?(u2G&~TR?C4PHJV#eR z!=xWWUGtrzze7h!L-8seE5$k51zI4DfR;-~LcMcVv2)ZL>L>Mq`b&MGfzn#gV5uK8R9Y7rCan*RkT!%yO8ueH(#FsjX#g}{+7#-R z211jh&7mpMAZV(z6*OHM49$?Xfo4iWpxM&)&>U$fG*8+InlJ4FEs%DF7D>aP#nK+o z5@|TJRN4z#CXIlWOZ!4Ar7mcdv_I5)iF5l#Lj9zJp#IV*XrOc`G*}u94V8|7hDk?3 zBc!9Dk}G(x%+8Y#_$MoYItW28Hw$9Mb zl;%RSrTd{d(mZIM^krzi^Z>L#dJtM9&4(6C4?#<$hoPm?BhWHw0km9t6j~`QgjPx4 zgL*G>ZoVR@pY%A?UwRT6C_M!YmKH-prKh1`(zDPA>3L|Rv;-P0{S+D_y$Fq$UV^%% zrO+hlWoU}@3N%%E6`C$BgJwvtK{KV-q1n>!pgGcVXrA;YG+$Z)Es*{UEs|D3i>1Fo zOQg4;rPABbGHDgGT>3Y(QtFFWFjh(Vic43jbNhxsJukBihZgE6UwmmTcg`?_XOPb0 z8Km=}C#4IZXQhjv7o|&}SES3J*QLv$71D#y!WGVkcmwKrN#+Tt=OvjRLtQJKGhBpv zUY+?hG)+gZLpMu*hk9O}IkF}G#i`+W`QB-tTDug$F$?1I1bcCOYH3)wbYY~Aa)+2&VWFSIK zY(j*Y*o=rUu@w<%A`=m9VjCjHL>406#CC++L^dMH#7;ztiCu_P6T1=VCUOuNCiWmQ zP2?i7P3%YHn8-uqnRpqIZ{h%=z{EjBk%@dnv57;75)+3Jr6!Ib%1jg>%1sy z5pUuW!fm1yk!0dBBE`fNM5>9ah;$R*ATmt+fH+{{XT)I>m55>!Z93w+Bg}Jygdnm_ zbVB5tn1LuX@f4z}yXP`{5otX<@d{#>i8pu|6Yn6dm^gv3dU`H%1`%Z90>WkDOGJVR zs}nwsi7tqOaL*O+<uA4G+T9SC=S&neF${`1n}e|R?YO5sj;*|2}4 z=WK5w(gt~AV=#X4YSqy9_TLECot~)E2B+ZZaOb-|6yd_N;7;^Mc;DrTNQ9q>K?r{n zQHVejLlMCyq7k7cMj*mWj6y`17>$TD5rc>}F$NK1A{G&EA`am;5syeRF#(ZcA_0+V zVlpD#gd34zVj3dT#0*5XiJ6ET6G@0X6Um5t6DtsBO{5{JOsqn9vRzPaI?57kSQ?a0%gR z?TK56G!s>bauc1};WGG*pL3ZQM4^dyc?y03sB1$+wDm+!zTynO4|Gl$!D#1+IE2f@ zB1D>rRK#@?@AES4J(szRNb2B;3SP#eRq5eH1%MiiRJ8H=-Z@tmzb-pdn?mxViDX+uP$iAIQM6G4bn6Ri;GChkFG zm}rm4HqipF4_j>BrPFo=K5M*O-1#^uh+@2K+zCGmFJQ4eZ+L2p2s6z8VI;v6E)M2qS;#m{p}KSZI4p$OkPo>O-6 zY;`?Rgh(@S77oXs1bb$w6lN2E3Mgb!aJ737IK5J4t-AVN&shbT4C2T@^S45G?J z<2!I|!JcdDg-A1Tn5VSyoKlFmWx|`U%L?(FQWN2C!XMGaL;xbjL>R(tqBr7-2^XTu z#BxMhJI_`3sEv;k>WMLoj-Hs0NHZ~nuMO+sIb|?k66W$mG9s&=C*I;I{XKC5;TqtH z+lWFF-5cO+k)Bgrh>IqU@svTHQ!XJ~gFSJWFEfkt#3{zZo|xMjVcns>qn*PLE>GMy z6A@Hfrwp8ni15TpgsYDyb|E7AdV=pQbKczLGipq~=pm8L-~75k`06b$eEb0;N5l+_ zjnVVxhw*Vst2sZXF2togZ>;1S#x+@d_mssqcUU%G1YqM=^r7;sIhb@gNaH@U4CJ7-B3DON=Aph=+-IVmvW{m`EfLlZeU06v9nRC8iP6 zi5Wy9F_V}@BoVWTImBEdnV3h|#C#%!SU@Z!77>eyCB#x<8IejXCsq(Ei8SI7VioZy zkxr~8))0>oYl(HldSU~SL2M*85swp_i7mud;t3*?c#_ygJVj&?PZQgT9Yi+q46&1V zme@r+N9-n^Cvu1vh&{w!BA3`l>?d9%@`#s+mx))11H`MuLE<$cpLm@(M7%*9Cf+2D z5N{C$#M{JC;vJ%pc$avOc%LXDjuFR+6U0g41L73%AyG_xM4Tqh5NC;V#ChUlqJ;Q_ z_>{OnTqHgtE)ky-rNkG+W#UWX3h@uw@dI&__>rg} zeja1&FBX~cA5 z29Ze2BxVsw#B5>?F_%at<`Mko(w&BsLL`6Pt-G#8%=7B9nNM*hV}>WD!pj+ld`S zHt`IxlX#ZcMLb9BCY~p9h!==G#9kto*hlOqUL^8}mxz~%SBL||tHeR#H6ovQoj63i zK^!LDB#sbo5e3BC#8KiMqL6r(c#n9WC?bv#$B7ffN#XpA)6T7sO@aOX3Rg6>*jLnkXZ_A+8bM64!|v#COE^L^<&T zag+Fws33kKekOh)Dv4i---zFdTf`s4ZQ@U&iujB8oA`&|k3cql^ue7V!5>>}{2YQi zL4t4Cuxk?dX##hG1RlHNPLSXua=Q+}H*47S2tNF_`4HOXTQ%%E3BFUqZba}wv)zQ? z`!wvk2)<3jZbtB38ur};-=tx;AcBaNL@R<1v~9ja!@h^$8#L^;L`!?*}Lu@#2{iY5k(9kh7!XFzMsP$PVns<_DEtB@c=QJc#w!89wNpNV~JQ|91%x6OvDr8 zi3!9+B7vAhOeUrfZel7ijhIf%AQB1w#A44Pl8D*F90EV1;Qo)8NAM>Fdp?muEFcyV zi-^U<5@IQ_j7TMx6Dx?7L>lo3v5I(*J z@dS}cJV|ULo+7e{r-|*v4kDX)hS*6wOY9<^BX$$d6FI~S#2#WVkxT3&_7g7>dBjV^ z%fu_h0peBSAn_WJPrObXBHkbl6K@hnh_{FW;%(w6@eWZ)yi2@CyiXJn$B5&^3F0L2 z0db1>kSHcTB2E)$h_l2w;ym#&Q9^t|d`es(E)t&+mx#}aQsN8ZGVvvGh4_lNN_{qiAF?Yq6rZ| z+(k4cnh}A--9&Su1rbEFBw7)ziD2R$q7BiO2qD@L?THRVDAAGVM06(j1cQAq(Us^% zgc03|9z;(foVbtZMf4^jh(1JL;(o$K^dtHcd_S2TNem`}x6gp0@85$%c5JoX?FLp(%`A;uE1#5e-~MJn7o67j@%VgfOdNFXK= zlZh#Wo0v*WBc>BG2>eH{aPLUWB9e&N#2jKSkxa}Z_!NpgpGYAV5DSS##A0Fzv6NUw zq!P=C6~sy+jd+AuMLbHR6RU|e#AC!-VjZ!b*g#|u8;MQC?EEgb`j4JyNTzC9O4CH53!fXCH4{fi5H1H;w9o`;uYcm@hWkU zc#X&>UMCI_ZxDxxH;E&}TSNizHgS}AhbSc8CEg?6CyIz;#Bt&Tagz9eI7NI&6cZm2 zr-?JfS>haVp7@w3AwD5KB`y#biO+~j#OFjQ@da_2_>#Cnd_`O(z9!0uZ-{Hex5Rbg z2Js#7JyA~lK-?sLBr1rXh@XjHh)UvD;y2=V;ui4-ahv#)s3QI%{wDq*EN{Szs76#L zyonlw4^flwCGH?<5w!_Fq7G4)s7KT%8W0VMI|+ZHBfqCR5uJf{UUnlKZRcY*=7~*+ z0OBs9DbWmQ=Y6U6#EA>1+Vd0V&Y3vzQqB2O?8M}h`Ehk-&P|+?IA{9AlqJbi=f^de zGS@vd8HZ9PPDz?HfBw|@`*82dYawoT?3^+?xpQ)2a>vOF5|i8=7tftLIeEIfd*?*= zoJs!|Zv2eVc-|K9&=R{#H9{{KDI95HJy zU8{O^ubTh<|KD5S-&^2+$t_T;+JFDv$J~4TyZ_z-|K0-s-U9#L0{`9u|K0-s)3-p) K>i_l8`u_n5Gpwcn diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/intranges.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/intranges.cpython-34.pyc deleted file mode 100644 index 7ff1d93cf2ffe3cd632e53e27c139e2a55325333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1875 zcmZuy-EQ1O6h33`dJ|_uMG7UMNQ{DnVv%mzAZ}3lBdChRMLB+6&`^{s8C;l_u$62T;+xb;3j-$y!oMGlKDAv&V1+i{O#ZUdH>6=fB*JRkLWMD zHXNKEVOCGDBt%23f)a-^K|>r|N;>ol?j1_Hlz8@x%N`{&_S~UlmJ;8dA>hzfFc-}V zBL9o@N0rM+W@%+)F_LL+)L7|iRZgNr$-3mrmEEFLqdLou1Bh0WD9dDCPj-}MZdT-D zsq4J*LBvH~skkOF z%9dWY^m-r%gF!Hm&vx0~ygGz(etJ-=%0ew4MwL90Q+PkkExXX^IL)KXe&EAp*d$Fl zQSz&mtQfC+VC@cqfqw?i(q;^o*ntQT&(ATdKd>006QUP_P6dsLPT^^nPF*_sjf^1U z(1~C!{vUt;Go5zm1U?t^&LwA`NM|es#!|a6e+kRtzQeqOkLVzy9Eu=>=z%*0`PHGN z(=MGjwC9omwvFKuZvbP#7Y?fykcUkG`o>ss+-(Kj=r%s<>4oF}C)g66LtGVnna7HQ zqN9AQs!x51F^x-j*9IcIdl{Lq4OPgo;^3^xs*ZQz_Q?Fl_ZH;*BhJ(AdnuiDiF1F;9Ib#*1Q%fkBdYl{0UW>kF%?^o92()*pMHu z%M-?eiFsjI*3@ODs)0p26$w`!r;#@mgmN{VW3SP^U&UA|1}hwbm$v7UC7@KGgm*STmDytxU^1 zJ9U~RcaDl;ryM7rtffgFO_$uXh=cODxe33vR5;Sb#A@^bRNcZtGkxLVZ%Nz|?}=Hl zD3*oq=r_QLxu@{pou|!oHUVjljCz11{A??5HqRvPtZjkQbZvMV7cQ_@?K002Gg#io ztSqpwbbL`xymv6Ik_8-EB@cP)(4!GIr0%A^0gmSP8Ha#Jr#+rOKY#8{tq_gSuPH}3 z5_J`hWjwqv<0j6R-`cZ?Q!`$HXsa5Zi~2!HqmuV*C8N^##+}yTeuwlP8IWydI<&Zi z()tb}C^%FaN)ooZ`+|xexH?hnxkHY?E3}C%uIaXLZHM4i@bU`o8k9GM;)d|@;wd}? z@BDQCu`)_e(i|B+lG})TxGhI$#T7T&LKa|5+i9B+-0Qa6Ih}@{&G4{s%c5#JEQz{E$GfHx;p@?O^C~Ctb6}!0 z{}2#uMmjgdg4-AGA|HFs0`jsidP3i3eO}WG!=#AAP`?G*rl~cwwTWe}Y2sAXoO#X6 Y#-vE diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/package_data.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/package_data.cpython-34.pyc deleted file mode 100644 index 18c17ed027cfb9a748355c220db721180f000401..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmaFI!^`Crusl+ffq~&M5W@i@kmUfx#auulg@GXoNHQ`6Ycf?a8|j((X)@m8j*l-( zEh^5;&x?;=$xy@uR0k%08S0nh7U&mb7U(9GX6B^mR^;a=6{M$_>Sw0pB|?aT#N_P6 e^wjv2#F9k4g34PQHo5sJr8%i~AZv?(m;nICHzqOw diff --git a/env/lib/python3.4/site-packages/idna/__pycache__/uts46data.cpython-34.pyc b/env/lib/python3.4/site-packages/idna/__pycache__/uts46data.cpython-34.pyc deleted file mode 100644 index 81a6f41003b32a6b44c7c6cfdd70f7e6ffb52333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 230858 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

      =)z93H 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%0DMUJ2=FoC6Tm^jAwVOc3D8Vv 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
      6IVKZM| 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 Iy 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 RS8I 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/env/lib/python3.4/site-packages/idna/idnadata.py b/env/lib/python3.4/site-packages/idna/idnadata.py deleted file mode 100644 index c48f1b5..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/idna/intranges.py b/env/lib/python3.4/site-packages/idna/intranges.py deleted file mode 100644 index fa8a735..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/idna/package_data.py b/env/lib/python3.4/site-packages/idna/package_data.py deleted file mode 100644 index fc33139..0000000 --- a/env/lib/python3.4/site-packages/idna/package_data.py +++ /dev/null @@ -1,2 +0,0 @@ -__version__ = '2.6' - diff --git a/env/lib/python3.4/site-packages/idna/uts46data.py b/env/lib/python3.4/site-packages/idna/uts46data.py deleted file mode 100644 index f9b3236..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/DESCRIPTION.rst b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/DESCRIPTION.rst deleted file mode 100644 index 8ef94c4..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/DESCRIPTION.rst +++ /dev/null @@ -1,39 +0,0 @@ -pip -=== - -The `PyPA recommended -`_ -tool for installing Python packages. - -* `Installation `_ -* `Documentation `_ -* `Changelog `_ -* `Github Page `_ -* `Issue Tracking `_ -* `User mailing list `_ -* `Dev mailing list `_ -* User IRC: #pypa on Freenode. -* Dev IRC: #pypa-dev on Freenode. - - -.. image:: https://img.shields.io/pypi/v/pip.svg - :target: https://pypi.python.org/pypi/pip - -.. image:: https://img.shields.io/travis/pypa/pip/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=stable - :target: https://pip.pypa.io/en/stable - -Code of Conduct ---------------- - -Everyone interacting in the pip project's codebases, issue trackers, chat -rooms, and mailing lists is expected to follow the `PyPA Code of Conduct`_. - -.. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ - - diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/INSTALLER b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/INSTALLER deleted file mode 100644 index a1b589e..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/INSTALLER +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/METADATA b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/METADATA deleted file mode 100644 index 600a905..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/METADATA +++ /dev/null @@ -1,69 +0,0 @@ -Metadata-Version: 2.0 -Name: pip -Version: 9.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 -Keywords: easy_install distutils setuptools egg virtualenv -Platform: UNKNOWN -Classifier: Development Status :: 5 - Production/Stable -Classifier: Intended Audience :: Developers -Classifier: License :: OSI Approved :: MIT License -Classifier: Topic :: Software Development :: Build Tools -Classifier: Programming Language :: Python :: 2 -Classifier: Programming Language :: Python :: 2.6 -Classifier: Programming Language :: Python :: 2.7 -Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 -Classifier: Programming Language :: Python :: 3.4 -Classifier: Programming Language :: Python :: 3.5 -Classifier: Programming Language :: Python :: Implementation :: PyPy -Requires-Python: >=2.6,!=3.0.*,!=3.1.*,!=3.2.* -Provides-Extra: testing -Requires-Dist: mock; extra == 'testing' -Requires-Dist: pretend; extra == 'testing' -Requires-Dist: pytest; extra == 'testing' -Requires-Dist: scripttest (>=1.3); extra == 'testing' -Requires-Dist: virtualenv (>=1.10); extra == 'testing' - -pip -=== - -The `PyPA recommended -`_ -tool for installing Python packages. - -* `Installation `_ -* `Documentation `_ -* `Changelog `_ -* `Github Page `_ -* `Issue Tracking `_ -* `User mailing list `_ -* `Dev mailing list `_ -* User IRC: #pypa on Freenode. -* Dev IRC: #pypa-dev on Freenode. - - -.. image:: https://img.shields.io/pypi/v/pip.svg - :target: https://pypi.python.org/pypi/pip - -.. image:: https://img.shields.io/travis/pypa/pip/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=stable - :target: https://pip.pypa.io/en/stable - -Code of Conduct ---------------- - -Everyone interacting in the pip project's codebases, issue trackers, chat -rooms, and mailing lists is expected to follow the `PyPA Code of Conduct`_. - -.. _PyPA Code of Conduct: https://www.pypa.io/en/latest/code-of-conduct/ - - diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/RECORD b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/RECORD deleted file mode 100644 index 9a76d65..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/RECORD +++ /dev/null @@ -1,501 +0,0 @@ -pip/__init__.py,sha256=00QWSreEBjb8Y8sPs8HeqgLXSB-3UrONJxo4J5APxEc,11348 -pip/__main__.py,sha256=V6Kh-IEDEFpt1cahRE6MajUF_14qJR_Qsvn4MjWZXzE,584 -pip/basecommand.py,sha256=TTlmZesQ4Vuxcto2KqwZGmgmN5ioHEl_DeFev9ie_SA,11910 -pip/baseparser.py,sha256=AKMOeF3fTrRroiv0DmTQbdiLW0DQux2KqGC_dJJB9d0,10465 -pip/cmdoptions.py,sha256=8JCcF2kKAF2cFnV77oW-3DsHJifr9jF2WuChzzwgcwg,16474 -pip/download.py,sha256=rA0wbmqC2n9ejX481YJSidmKgQqQDjdaxkHkHlAN68k,32171 -pip/exceptions.py,sha256=BvqH-Jw3tP2b-2IJ2kjrQemOAPMqKrQMLRIZHZQpJXk,8121 -pip/index.py,sha256=L6UhtAEZc2qw7BqfQrkPQcw2gCgEw3GukLRSA95BNyI,39950 -pip/locations.py,sha256=9rJRlgonC6QC2zGDIn_7mXaoZ9_tF_IHM2BQhWVRgbo,5626 -pip/pep425tags.py,sha256=q3kec4f6NHszuGYIhGIbVvs896D06uJAnKFgJ_wce44,10980 -pip/status_codes.py,sha256=F6uDG6Gj7RNKQJUDnd87QKqI16Us-t-B0wPF_4QMpWc,156 -pip/wheel.py,sha256=QSWmGs2ui-n4UMWm0JUY6aMCcwNKungVzbWsxI9KlJQ,32010 -pip/_vendor/__init__.py,sha256=WaaSJ3roSSJ_Uv4yKAxlGohKEH9YUA3aIh1Xg2IjfgU,4670 -pip/_vendor/appdirs.py,sha256=-9UOIZy62ahCQVY9-b7Nn6_5_4Y6ooHnv72tM8iHi9Y,22368 -pip/_vendor/distro.py,sha256=A4Douw9pcqdYxDTp5b-OR02fxVXnfWs-wC1wA89rhRk,38349 -pip/_vendor/ipaddress.py,sha256=wimbqcE7rwwETlucn8A_4Qd_-NKXPOBcNxJHarUoXng,80176 -pip/_vendor/ordereddict.py,sha256=4KsFuc6V8IgHROCHUu-4vCrr21ZPPea7Z0cvX9AjQ7w,4094 -pip/_vendor/pyparsing.py,sha256=7vAuUVbh6txUKQR2IzJ8_9DKmD5vtm5MDssWkI0ka8o,224171 -pip/_vendor/re-vendor.py,sha256=PcdZ40d0ohMsdJmA4t0AeAWbPXi1tFsvAwA5KE5FGeY,773 -pip/_vendor/retrying.py,sha256=k3fflf5_Mm0XcIJYhB7Tj34bqCCPhUDkYbx1NvW2FPE,9972 -pip/_vendor/six.py,sha256=A6hdJZVjI3t_geebZ9BzUvwRrIXo0lfwzQlM2LcKyas,30098 -pip/_vendor/cachecontrol/__init__.py,sha256=UPyFlz0dIjxusu5ITig9UDFJdSY5LTwijhldn0AfyzU,302 -pip/_vendor/cachecontrol/_cmd.py,sha256=MPxZfZd2LKDzVrs55X3wA1rsI2YuP8evLZSwQj0dIk0,1320 -pip/_vendor/cachecontrol/adapter.py,sha256=RaGYyRA-RA1J0AnE67GzEYFPBu4YH4EQUvQqTKa57iM,4608 -pip/_vendor/cachecontrol/cache.py,sha256=xtl-V-pr9KSt9VvFDRCB9yrHPEvqvbk-5M1vAInZb5k,790 -pip/_vendor/cachecontrol/compat.py,sha256=uyovOpd1ehI3J1XeBqJvcsIp6fvkjBpoQmu_0J2st8c,416 -pip/_vendor/cachecontrol/controller.py,sha256=elDsLcaYA15ncodRmHnWQp6ekU_ocEGtDeGLbsnTjzo,13024 -pip/_vendor/cachecontrol/filewrapper.py,sha256=_K8cStmXqD33m15PfsQ8rlpo6FfXjVbKmjvLXyICRgI,2531 -pip/_vendor/cachecontrol/heuristics.py,sha256=WtJrVsyWjpP9WoUiDVdTZZRNBCz5ZVptaQpYnqofDQU,4141 -pip/_vendor/cachecontrol/serialize.py,sha256=XM6elG9DSNexwaOCgMjUtfrHHW5NAB6TSbIf3x235xs,6536 -pip/_vendor/cachecontrol/wrapper.py,sha256=Kqyu_3TW_54XDudha4-HF21vyEOAJ4ZnRXFysTiLmXA,498 -pip/_vendor/cachecontrol/caches/__init__.py,sha256=uWnUtyMvHY_LULaL_4_IR1F_xPgK5zHfJyRnBq4DnPE,369 -pip/_vendor/cachecontrol/caches/file_cache.py,sha256=FsDug3bwUAQ3okjjfGzxlDaBf2fwVSn1iBKMTL6SyGU,3532 -pip/_vendor/cachecontrol/caches/redis_cache.py,sha256=XywqxkS9MkCaflTOY_wjrE02neKdywB9YwlOBbP7Ywc,973 -pip/_vendor/colorama/__init__.py,sha256=9xByrTvk9upkL5NGV5It2Eje4-kzNLwa_1lGPWpXoNU,240 -pip/_vendor/colorama/ansi.py,sha256=Fi0un-QLqRm-v7o_nKiOqyC8PapBJK7DLV_q9LKtTO0,2524 -pip/_vendor/colorama/ansitowin32.py,sha256=gJZB35Lbdjatykd2zrUUnokMzkvcFgscyn_tNxxMFHA,9668 -pip/_vendor/colorama/initialise.py,sha256=cHqVJtb82OG7HUCxvQ2joG7N_CoxbIKbI_fgryZkj20,1917 -pip/_vendor/colorama/win32.py,sha256=_SCEoTK_GA2tU1nhbayKKac-v9Jn98lCPIFOeFMGCHQ,5365 -pip/_vendor/colorama/winterm.py,sha256=V7U7ojwG1q4n6PKripjEvW_htYQi5ueXSM3LUUoqqDY,6290 -pip/_vendor/distlib/__init__.py,sha256=-aUeNNCfiIG_1Tqf19BH0xLNuBKGX1I7lNhcLYgFUEA,581 -pip/_vendor/distlib/compat.py,sha256=FzKlP9dNUMH-j_1LCVnjgx6KgUbpnRjTjYkTkDYRPlI,40801 -pip/_vendor/distlib/database.py,sha256=jniJmYk0Mj2t6gZYbnn68TvQwnVZ0kXyeuf_3AxFclk,49672 -pip/_vendor/distlib/index.py,sha256=Cw8gxFq_7xXvdgExL3efjLAY3EAPDMSL3VA42RkbQBs,21085 -pip/_vendor/distlib/locators.py,sha256=hD_Hm3aSL9DklY9Cxyct2n_74gZ0xNFFGB5L7M6ds14,51013 -pip/_vendor/distlib/manifest.py,sha256=3qEuZhHlDbvyYZ1BZbdapDAivgMgUwWpZ00cmXqcn18,14810 -pip/_vendor/distlib/markers.py,sha256=iRrVWwpyVwjkKJSX8NEQ92_MRMwpROcfNGKCD-Ch1QM,6282 -pip/_vendor/distlib/metadata.py,sha256=hUsf7Qh2Ae4CCkL33qK8ppwC8ZTzT7ep6Hj9RKpijKU,38833 -pip/_vendor/distlib/resources.py,sha256=VFBVbFqLVqDBSQDXcFQHrX1KEcuoDxTK699Ydi_beyc,10766 -pip/_vendor/distlib/scripts.py,sha256=xpehNfISGPTNxQZu02K9Rw2QbNx_2Q4emePv3W5X0iw,15224 -pip/_vendor/distlib/t32.exe,sha256=cp0UAUDDr1tGAx8adlKxWbCHIa-oB3bxev5zYzgAr8E,89088 -pip/_vendor/distlib/t64.exe,sha256=FiljDPcX9qvoe9FYE_9pNEHqbqMnhcCOuI_oLJ4F9F8,97792 -pip/_vendor/distlib/util.py,sha256=E2wU-RZShPMFUMJr9kPmemTULinM4qDzosNPihCuKE0,52991 -pip/_vendor/distlib/version.py,sha256=CgghOUylxGD7dEA2S3MvWjx7mY_2bWsluF0Of3Yxl4Y,23711 -pip/_vendor/distlib/w32.exe,sha256=LItrBJesEqt2QTQuB-yha2YbMegURHmHmdSxhjBqmnc,85504 -pip/_vendor/distlib/w64.exe,sha256=n_PioBC7ltz7sAk1WLbLzZJgS4R2axSy_0HPf8ZCsEg,94208 -pip/_vendor/distlib/wheel.py,sha256=UP53cKxOM5r7bHSS-n5prF6hwJEVsMW9ZNJutOuC26c,39115 -pip/_vendor/distlib/_backport/__init__.py,sha256=bqS_dTOH6uW9iGgd0uzfpPjo6vZ4xpPZ7kyfZJ2vNaw,274 -pip/_vendor/distlib/_backport/misc.py,sha256=KWecINdbFNOxSOP1fGF680CJnaC6S4fBRgEtaYTw0ig,971 -pip/_vendor/distlib/_backport/shutil.py,sha256=VW1t3uYqUjWZH7jV-6QiimLhnldoV5uIpH4EuiT1jfw,25647 -pip/_vendor/distlib/_backport/sysconfig.cfg,sha256=swZKxq9RY5e9r3PXCrlvQPMsvOdiWZBTHLEbqS8LJLU,2617 -pip/_vendor/distlib/_backport/sysconfig.py,sha256=eSEyJg7jxF_eHlHG8IOtl93kb07UoMIRp1wYsPeGi9k,26955 -pip/_vendor/distlib/_backport/tarfile.py,sha256=Ihp7rXRcjbIKw8COm9wSePV9ARGXbSF9gGXAMn2Q-KU,92628 -pip/_vendor/html5lib/__init__.py,sha256=JsIwmFldk-9raBadPSTS74JrfmJvozc-3aekMi7Hr9s,780 -pip/_vendor/html5lib/_ihatexml.py,sha256=tzXygYmisUmiEUt2v7E1Ab50AKQsrD-SglPRnY75vME,16705 -pip/_vendor/html5lib/_inputstream.py,sha256=C4lX5gUBwebOWy41hYP2ZBpkPVNvxk_hZBm3OVyPZM4,32532 -pip/_vendor/html5lib/_tokenizer.py,sha256=YAaOEBD6qc5ISq9Xt9Nif1OFgcybTTfMdwqBkZhpAq4,76580 -pip/_vendor/html5lib/_utils.py,sha256=bS6THVlL8ZyTcI6CIxiM6xxuHsE8i1j5Ogd3Ha1G84U,4096 -pip/_vendor/html5lib/constants.py,sha256=Dfc1Fv3_9frktgWjg4tbj-CjMMp02Ko9qMe4il1BVdo,83387 -pip/_vendor/html5lib/html5parser.py,sha256=Dmlu9hlq5w_id6mBZyY_sE5LukIACgvG4kpgIsded8Q,117170 -pip/_vendor/html5lib/serializer.py,sha256=Urrsa0cPPLqNX-UbJWS2gUhs_06qVbNxZvUnrmGZK6E,14177 -pip/_vendor/html5lib/_trie/__init__.py,sha256=8VR1bcgD2OpeS2XExpu5yBhP_Q1K-lwKbBKICBPf1kU,289 -pip/_vendor/html5lib/_trie/_base.py,sha256=6P_AcIoGjtwB2qAlhV8H4VP-ztQxoXFGwt4NyMqG_Kw,979 -pip/_vendor/html5lib/_trie/datrie.py,sha256=EQpqSfkZRuTbE-DuhW7xMdVDxdZNZ0CfmnYfHA_3zxM,1178 -pip/_vendor/html5lib/_trie/py.py,sha256=wXmQLrZRf4MyWNyg0m3h81m9InhLR7GJ002mIIZh-8o,1775 -pip/_vendor/html5lib/filters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 -pip/_vendor/html5lib/filters/alphabeticalattributes.py,sha256=DXv-P2vdQ5F3OTWM6QZ6KhyDlAWm90pbfrD1Bk9D_l0,621 -pip/_vendor/html5lib/filters/base.py,sha256=z-IU9ZAYjpsVsqmVt7kuWC63jR11hDMr6CVrvuao8W0,286 -pip/_vendor/html5lib/filters/inject_meta_charset.py,sha256=2Q_JnMscn_tNbV_qpgYN_5M3PnBGfmuvECMKDExHUcY,2742 -pip/_vendor/html5lib/filters/lint.py,sha256=qf5cLrT6xXd8V7GH1R_3lKxIjuJSfpbWTpSwaglYdDw,3365 -pip/_vendor/html5lib/filters/optionaltags.py,sha256=EHig4kM-QiLjuxVJ3FAAFNy-10k4aV6HJbQzHKZ_3u8,10534 -pip/_vendor/html5lib/filters/sanitizer.py,sha256=7PqJrhm6mo3JvaHk2IQW7i74Or7Qtd-FV8UftJIyDys,25112 -pip/_vendor/html5lib/filters/whitespace.py,sha256=KPt067nYTqqi8KLTClyynn4eVzNDC_-MApXNVHRXVX0,1139 -pip/_vendor/html5lib/treeadapters/__init__.py,sha256=l3LcqMSEyoh99Jh_eWjGexHnIvKhLAXoP-LDz88whuM,208 -pip/_vendor/html5lib/treeadapters/genshi.py,sha256=6VIuHDNoExv1JWv3ePj6V5CM-tcyiUSWe5_Hd2ejbwY,1555 -pip/_vendor/html5lib/treeadapters/sax.py,sha256=3of4vvaUYIAic7pngebwJV24hpOS7Zg9ggJa_WQegy4,1661 -pip/_vendor/html5lib/treebuilders/__init__.py,sha256=UlB4orkTgZhFIKQdXrtiWn9cpKSsuhnOQOIHeD0Fv4k,3406 -pip/_vendor/html5lib/treebuilders/base.py,sha256=4vdjm_Z2f_GTQBwKnWlrzVcctTb-K5sfN8pXDaWODiA,13942 -pip/_vendor/html5lib/treebuilders/dom.py,sha256=SY3MsijXyzdNPc8aK5IQsupBoM8J67y56DgNtGvsb9g,8835 -pip/_vendor/html5lib/treebuilders/etree.py,sha256=aqIBOGj_dFYqBURIcTegGNBhAIJOw5iFDHb4jrkYH-8,12764 -pip/_vendor/html5lib/treebuilders/etree_lxml.py,sha256=CEgwHMIQZvIDFAqct4kqPkVtyKIm9efHFq_VeExEPCA,14161 -pip/_vendor/html5lib/treewalkers/__init__.py,sha256=CFpUOCfLuhAgVJ8NYk9wviCu1khYnv7XRStvyzU1Fws,5544 -pip/_vendor/html5lib/treewalkers/base.py,sha256=ei-2cFbNFd0gRjyaFmxnxZGLNID4o0bHFCH9bMyZ5Bk,4939 -pip/_vendor/html5lib/treewalkers/dom.py,sha256=EHyFR8D8lYNnyDU9lx_IKigVJRyecUGua0mOi7HBukc,1413 -pip/_vendor/html5lib/treewalkers/etree.py,sha256=8jVLEY2FjgN4RFugwhAh44l9ScVYoDStQFCnlPwvafI,4684 -pip/_vendor/html5lib/treewalkers/etree_lxml.py,sha256=sY6wfRshWTllu6n48TPWpKsQRPp-0CQrT0hj_AdzHSU,6309 -pip/_vendor/html5lib/treewalkers/genshi.py,sha256=4D2PECZ5n3ZN3qu3jMl9yY7B81jnQApBQSVlfaIuYbA,2309 -pip/_vendor/lockfile/__init__.py,sha256=Tqpz90DwKYfhPsfzVOJl84TL87pdFE5ePNHdXAxs4Tk,9371 -pip/_vendor/lockfile/linklockfile.py,sha256=C7OH3H4GdK68u4FQgp8fkP2kO4fyUTSyj3X6blgfobc,2652 -pip/_vendor/lockfile/mkdirlockfile.py,sha256=e3qgIL-etZMLsS-3ft19iW_8IQ360HNkGOqE3yBKsUw,3096 -pip/_vendor/lockfile/pidlockfile.py,sha256=ukH9uk6NFuxyVmG5QiWw4iKq3fT7MjqUguX95avYPIY,6090 -pip/_vendor/lockfile/sqlitelockfile.py,sha256=o2TMkMRY0iwn-iL1XMRRIFStMUkS4i3ajceeYNntKFg,5506 -pip/_vendor/lockfile/symlinklockfile.py,sha256=ABwXXmvTHvCl5viPblShL3PG-gGsLiT1roAMfDRwhi8,2616 -pip/_vendor/packaging/__about__.py,sha256=zkcCPTN_6TcLW0Nrlg0176-R1QQ_WVPTm8sz1R4-HjM,720 -pip/_vendor/packaging/__init__.py,sha256=_vNac5TrzwsrzbOFIbF-5cHqc_Y2aPT2D7zrIR06BOo,513 -pip/_vendor/packaging/_compat.py,sha256=Vi_A0rAQeHbU-a9X0tt1yQm9RqkgQbDSxzRw8WlU9kA,860 -pip/_vendor/packaging/_structures.py,sha256=RImECJ4c_wTlaTYYwZYLHEiebDMaAJmK1oPARhw1T5o,1416 -pip/_vendor/packaging/markers.py,sha256=mtg2nphJE1oQO39g1DgsdPsMO-guBBClpR-AEYFrbMg,8230 -pip/_vendor/packaging/requirements.py,sha256=SD7dVJGjdPUqtoHb47qwK6wWJTQd-ZXWjxpJg83UcBA,4327 -pip/_vendor/packaging/specifiers.py,sha256=SAMRerzO3fK2IkFZCaZkuwZaL_EGqHNOz4pni4vhnN0,28025 -pip/_vendor/packaging/utils.py,sha256=3m6WvPm6NNxE8rkTGmn0r75B_GZSGg7ikafxHsBN1WA,421 -pip/_vendor/packaging/version.py,sha256=OwGnxYfr2ghNzYx59qWIBkrK3SnB6n-Zfd1XaLpnnM0,11556 -pip/_vendor/pkg_resources/__init__.py,sha256=CcwuHtCBZn9OTkmgF9cFpadIAMhlrnZTVKTOo4V2p58,103230 -pip/_vendor/progress/__init__.py,sha256=Wn1074LUDZovd4zfoVYojnPBgOc6ctHbQX7rp_p8lRA,3023 -pip/_vendor/progress/bar.py,sha256=YNPJeRrwYVKFO2nyaEwsQjYByamMWTgJMvQO1NpD-AY,2685 -pip/_vendor/progress/counter.py,sha256=kEqA8jWEdwrc6P_9VaRx7bjOHwk9gxl-Q9oVbQ08v5c,1502 -pip/_vendor/progress/helpers.py,sha256=FehfwZTv-5cCfsbcMlvlUkm3xZ0cRhsev6XVpmeTF4c,2854 -pip/_vendor/progress/spinner.py,sha256=iCVtUQbaJUFHTjn1ZLPQLPYeao4lC9aXAa_HxIeUK6k,1314 -pip/_vendor/requests/__init__.py,sha256=Cde-qxOWcslaEcPvKAJQPFbY8_va8PMbU7Rssr7vViI,2326 -pip/_vendor/requests/adapters.py,sha256=DJdgax91PyS2s6_oZPELbuLWNlM2xGguNu62sqcOUik,19740 -pip/_vendor/requests/api.py,sha256=PgminOpD8hLLKLNs0RWLKr1HpNc4Qxr_6uen8q2c9CI,5794 -pip/_vendor/requests/auth.py,sha256=eBLtJlcTZxRG7xKXCvGQBLO9a-PxFgMf2qTUbtZwMJM,8175 -pip/_vendor/requests/cacert.pem,sha256=5xzWFRrSP0ZsXiW6emg8UQ_w497lT4qWCv32OO8R1ME,344712 -pip/_vendor/requests/certs.py,sha256=Aa-oStu9f2lVi8VM9Aw1xaAtTIz7bhu5CGKNPEW1waM,625 -pip/_vendor/requests/compat.py,sha256=0cgWB43LEX5OrX1O4k-bPbFlIbWXgEd412DSDJtF1Y8,1687 -pip/_vendor/requests/cookies.py,sha256=awMI0hm3SKheMEDTqO8AIadc2XmnCGKPCTNw_4hlM3Q,18208 -pip/_vendor/requests/exceptions.py,sha256=x-MGvDASYKSstuCNYTA5IT_EAcxTp5knE3WPMrgkrlI,2860 -pip/_vendor/requests/hooks.py,sha256=HXAHoC1FNTFRZX6-lNdvPM7Tst4kvGwYTN-AOKRxoRU,767 -pip/_vendor/requests/models.py,sha256=YHuL2khGDFxeWc-NMJIcfFqvYJ0dKs1mXfj1Fuff1J8,30532 -pip/_vendor/requests/sessions.py,sha256=H7HpKRLKeu1MSH5W1-PI2GMCFLN4bz5i3OFqjjgzE5k,25609 -pip/_vendor/requests/status_codes.py,sha256=uwVHcMPkHV3FElDLlnDTH3KULZIAGxaovbBxrjWm8N0,3316 -pip/_vendor/requests/structures.py,sha256=yexCvWbX40M6E8mLQOpAGZZ-ZoAnyaT2dni-Bp-b42g,3012 -pip/_vendor/requests/utils.py,sha256=9d3jqnA8avsF9N1QPmsk2pJgo2pxuExrN2hoIhtLggY,24163 -pip/_vendor/requests/packages/__init__.py,sha256=CVheqNRcXIkAi5037RhxeqbAqd0QhrK1o9R9kS2xvuI,1384 -pip/_vendor/requests/packages/chardet/__init__.py,sha256=XuTKCYOR7JwsoHxqZTYH86LVyMDbDI3s1s0W_qoGEBM,1295 -pip/_vendor/requests/packages/chardet/big5freq.py,sha256=D8oTdz-GM7Jg8TsaWJDm65vM_OLHC3xub6qUJ3rOgsQ,82594 -pip/_vendor/requests/packages/chardet/big5prober.py,sha256=XX96C--6WKYW36mL-z7pJSAtc169Z8ZImByCP4pEN9A,1684 -pip/_vendor/requests/packages/chardet/chardetect.py,sha256=f4299UZG6uWd3i3r_N0OdrFj2sA9JFI54PAmDLAFmWA,2504 -pip/_vendor/requests/packages/chardet/chardistribution.py,sha256=cUARQFr1oTLXeJCDQrDRkUP778AvSMzhSCnG8VLCV58,9226 -pip/_vendor/requests/packages/chardet/charsetgroupprober.py,sha256=0lKk7VE516fgMw119tNefFqLOxKfIE9WfdkpIT69OKU,3791 -pip/_vendor/requests/packages/chardet/charsetprober.py,sha256=Z48o2KiOj23FNqYH8FqzhH5m1qdm3rI8DcTm2Yqtklg,1902 -pip/_vendor/requests/packages/chardet/codingstatemachine.py,sha256=E85rYhHVMw9xDEJVgiQhp0OnLGr6i2r8_7QOWMKTH08,2318 -pip/_vendor/requests/packages/chardet/compat.py,sha256=5mm6yrHwef1JEG5OxkPJlSq5lkjLVpEGh3iPgFBkpkM,1157 -pip/_vendor/requests/packages/chardet/constants.py,sha256=-UnY8U7EP7z9fTyd09yq35BEkSFEAUAiv9ohd1DW1s4,1335 -pip/_vendor/requests/packages/chardet/cp949prober.py,sha256=FMvdLyB7fejPXRsTbca7LK1P3RUvvssmjUNyaEfz8zY,1782 -pip/_vendor/requests/packages/chardet/escprober.py,sha256=q5TcQKeVq31WxrW7Sv8yjpZkjEoaHO8S92EJZ9hodys,3187 -pip/_vendor/requests/packages/chardet/escsm.py,sha256=7iljEKN8lXTh8JFXPUSwlibMno6R6ksq4evLxbkzfro,7839 -pip/_vendor/requests/packages/chardet/eucjpprober.py,sha256=5IpfSEjAb7h3hcGMd6dkU80O900C2N6xku28rdYFKuc,3678 -pip/_vendor/requests/packages/chardet/euckrfreq.py,sha256=T5saK5mImySG5ygQPtsp6o2uKulouCwYm2ElOyFkJqU,45978 -pip/_vendor/requests/packages/chardet/euckrprober.py,sha256=Wo7dnZ5Erw_nB4H-m5alMiOxOuJUmGHlwCSaGqExDZA,1675 -pip/_vendor/requests/packages/chardet/euctwfreq.py,sha256=G_I0BW9i1w0ONeeUwIYqV7_U09buIHdqh-wNHVaql7I,34872 -pip/_vendor/requests/packages/chardet/euctwprober.py,sha256=upS2P6GuT5ujOxXYw-RJLcT7A4PTuo27KGUKU4UZpIQ,1676 -pip/_vendor/requests/packages/chardet/gb2312freq.py,sha256=M2gFdo_qQ_BslStEchrPW5CrPEZEacC0uyDLw4ok-kY,36011 -pip/_vendor/requests/packages/chardet/gb2312prober.py,sha256=VWnjoRa83Y6V6oczMaxyUr0uy48iCnC2nzk9zfEIRHc,1681 -pip/_vendor/requests/packages/chardet/hebrewprober.py,sha256=8pdoUfsVXf_L4BnJde_BewS6H2yInV5688eu0nFhLHY,13359 -pip/_vendor/requests/packages/chardet/jisfreq.py,sha256=ZcL4R5ekHHbP2KCYGakVMBsiKqZZZAABzhwi-uRkOps,47315 -pip/_vendor/requests/packages/chardet/jpcntx.py,sha256=yftmp0QaF6RJO5SJs8I7LU5AF4rwP23ebeCQL4BM1OY,19348 -pip/_vendor/requests/packages/chardet/langbulgarianmodel.py,sha256=ZyPsA796MSVhYdfWhMCgKWckupAKAnKqWcE3Cl3ej6o,12784 -pip/_vendor/requests/packages/chardet/langcyrillicmodel.py,sha256=fkcd5OvogUp-GrNDWAZPgkYsSRCD2omotAEvqjlmLKE,17725 -pip/_vendor/requests/packages/chardet/langgreekmodel.py,sha256=QHMy31CH_ot67UCtmurCEKqKx2WwoaKrw2YCYYBK2Lw,12628 -pip/_vendor/requests/packages/chardet/langhebrewmodel.py,sha256=4ASl5vzKJPng4H278VHKtRYC03TpQpenlHTcsmZH1rE,11318 -pip/_vendor/requests/packages/chardet/langhungarianmodel.py,sha256=SXwuUzh49_cBeMXhshRHdrhlkz0T8_pZWV_pdqBKNFk,12536 -pip/_vendor/requests/packages/chardet/langthaimodel.py,sha256=-k7djh3dGKngAGnt3WfuoJN7acDcWcmHAPojhaUd7q4,11275 -pip/_vendor/requests/packages/chardet/latin1prober.py,sha256=238JHOxH8aRudJY2NmeSv5s7i0Qe3GuklIU3HlYybvg,5232 -pip/_vendor/requests/packages/chardet/mbcharsetprober.py,sha256=9rOCjDVsmSMp6e7q2syqak22j7lrbUZhJhMee2gbVL0,3268 -pip/_vendor/requests/packages/chardet/mbcsgroupprober.py,sha256=SHRzNPLpDXfMJLA8phCHVU0WgqbgDCNxDQMolGX_7yk,1967 -pip/_vendor/requests/packages/chardet/mbcssm.py,sha256=IKwJXyxu34n6NojmxVxC60MLFtJKm-hIfxaFEnb3uBA,19590 -pip/_vendor/requests/packages/chardet/sbcharsetprober.py,sha256=Xq0lODqJnDgxglBiQI4BqTFiPbn63-0a5XNA5-hVu7U,4793 -pip/_vendor/requests/packages/chardet/sbcsgroupprober.py,sha256=8hLyH8RAG-aohBo7o_KciWVgRo42ZE_zEtuNG1JMRYI,3291 -pip/_vendor/requests/packages/chardet/sjisprober.py,sha256=UYOmiMDzttYIkSDoOB08UEagivJpUXz4tuWiWzTiOr8,3764 -pip/_vendor/requests/packages/chardet/universaldetector.py,sha256=h-E2x6XSCzlNjycYWG0Fe4Cf1SGdaIzUNu2HCphpMZA,6840 -pip/_vendor/requests/packages/chardet/utf8prober.py,sha256=7tdNZGrJY7jZUBD483GGMkiP0Tx8Fp-cGvWHoAsilHg,2652 -pip/_vendor/requests/packages/urllib3/__init__.py,sha256=EF9pbHgMzqQek2Y6EZ82A8B6wETFeW7bK0K-HoZ3Ffo,2852 -pip/_vendor/requests/packages/urllib3/_collections.py,sha256=RP-cHyTx4AgYwvoETK8q1IVRbWFJnE0VV692ZHSbU68,10553 -pip/_vendor/requests/packages/urllib3/connection.py,sha256=QCmkelYgtbc06DfJtgs22na78kRTLCTbLb-OSWLbt-A,11617 -pip/_vendor/requests/packages/urllib3/connectionpool.py,sha256=fls19n1Y4jnwOBsZz_9F01i08xH2gZXEIyyDmWd-mKU,33591 -pip/_vendor/requests/packages/urllib3/exceptions.py,sha256=zGjhZCR1wefEnCN5b7WouQ3UhXesJ2bRKYIeWusaFJs,5599 -pip/_vendor/requests/packages/urllib3/fields.py,sha256=WUMvCLvnw7XemBq6AmCgNPJwyIJL_vWaMHaA2FLlscM,5931 -pip/_vendor/requests/packages/urllib3/filepost.py,sha256=NvLlFsdt8ih_Q4S2ekQF3CJG0nOXs32YI-G04_AdT2g,2320 -pip/_vendor/requests/packages/urllib3/poolmanager.py,sha256=9Uf0fUk0aR_s1auXgwceoN2gbaIQ08lrum_cGEA9-_U,13092 -pip/_vendor/requests/packages/urllib3/request.py,sha256=jET7OvA3FSjxABBRGhCyMdPvM9XuJA6df9gRhkJiJiY,5988 -pip/_vendor/requests/packages/urllib3/response.py,sha256=wxJSV_6pyh6Cgx7XFVGpNhpZCbh4eL7lCSFaU4ixXXc,18615 -pip/_vendor/requests/packages/urllib3/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 -pip/_vendor/requests/packages/urllib3/contrib/appengine.py,sha256=NdN_xOgDLMadUPe_dN3wdan_DH9-fxVNqFgq19tbqQs,7937 -pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.py,sha256=r-vMDMXAGbix9a7-IhbKVTATmAst-5g4hKYOLf8Kd5M,4531 -pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py,sha256=JsdAh0gL4XvQzhOEBRoFtJN91qLf1LFIDEFZs95445I,11778 -pip/_vendor/requests/packages/urllib3/contrib/socks.py,sha256=uPHtE6R8uyUbD9R8l2wO80c87WDGZ9rou3kNOwV74eA,5668 -pip/_vendor/requests/packages/urllib3/packages/__init__.py,sha256=nlChrGzkjCkmhCX9HrF_qHPUgosfsPQkVIJxiiLhk9g,109 -pip/_vendor/requests/packages/urllib3/packages/ordered_dict.py,sha256=VQaPONfhVMsb8B63Xg7ZOydJqIE_jzeMhVN3Pec6ogw,8935 -pip/_vendor/requests/packages/urllib3/packages/six.py,sha256=A6hdJZVjI3t_geebZ9BzUvwRrIXo0lfwzQlM2LcKyas,30098 -pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py,sha256=cOWMIn1orgJoA35p6pSzO_-Dc6iOX9Dhl6D2sL9b_2o,460 -pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py,sha256=fK28k37hL7-D79v9iM2fHgNK9Q1Pw0M7qVRL4rkfFjQ,3778 -pip/_vendor/requests/packages/urllib3/util/__init__.py,sha256=n2QE9_0Bb6u8tf7LUc4qKe8V-Hz9G8lEOc9j_30Q8d0,892 -pip/_vendor/requests/packages/urllib3/util/connection.py,sha256=7B5Mmepg5Xd399VKE__VHxD2ObapYFrB3mWJ_EnIebs,4744 -pip/_vendor/requests/packages/urllib3/util/request.py,sha256=ZMDewRK-mjlK72szGIIjzYnLIn-zPP0WgJUMjKeZ6Tg,2128 -pip/_vendor/requests/packages/urllib3/util/response.py,sha256=1UFd5TIp9MyBp4xgnZoyQZscZVPPr0tWRaXNR5w_vds,2165 -pip/_vendor/requests/packages/urllib3/util/retry.py,sha256=5eA3GHR_L14qz66NU6gr-v5VbKYsvdEqOvCcsx1oLKo,10664 -pip/_vendor/requests/packages/urllib3/util/ssl_.py,sha256=7xR_jvQLTQA1U006wJ1bl2KuLGnD1qQvUcFM2uysedw,11622 -pip/_vendor/requests/packages/urllib3/util/timeout.py,sha256=ioAIYptFyBG7eU_r8_ZmO45hpj1dJE6WCvrGR9dNFjs,9596 -pip/_vendor/requests/packages/urllib3/util/url.py,sha256=EcX4ZfmgKWcqM4sY9FlC-yN4y_snuURPV0TpUPHNjnc,5879 -pip/_vendor/webencodings/__init__.py,sha256=t7rAQQxXwalY-ak9hTl73qHjhia9UH-sL-e00qQrBpo,10576 -pip/_vendor/webencodings/labels.py,sha256=4AO_KxTddqGtrL9ns7kAPjb0CcN6xsCIxbK37HY9r3E,8979 -pip/_vendor/webencodings/mklabels.py,sha256=GYIeywnpaLnP0GSic8LFWgd0UVvO_l1Nc6YoF-87R_4,1305 -pip/_vendor/webencodings/tests.py,sha256=7vTk7LgOJn_t1XtT_viofZlEJ7cJCzPe_hvVHOkcQl8,6562 -pip/_vendor/webencodings/x_user_defined.py,sha256=72cfPRhbfkRCGkkA8ZnvVV7UnoiLb5uPMhXwhrXiLPk,4306 -pip/commands/__init__.py,sha256=2Uq3HCdjchJD9FL1LB7rd5v6UySVAVizX0W3EX3hIoE,2244 -pip/commands/check.py,sha256=-A7GI1-WZBh9a4P6UoH_aR-J7I8Lz8ly7m3wnCjmevs,1382 -pip/commands/completion.py,sha256=kkPgVX7SUcJ_8Juw5GkgWaxHN9_45wmAr9mGs1zXEEs,2453 -pip/commands/download.py,sha256=8RuuPmSYgAq3iEDTqZY_1PDXRqREdUULHNjWJeAv7Mo,7810 -pip/commands/freeze.py,sha256=h6-yFMpjCjbNj8-gOm5UuoF6cg14N5rPV4TCi3_CeuI,2835 -pip/commands/hash.py,sha256=MCt4jEFyfoce0lVeNEz1x49uaTY-VDkKiBvvxrVcHkw,1597 -pip/commands/help.py,sha256=84HWkEdnGP_AEBHnn8gJP2Te0XTXRKFoXqXopbOZTNo,982 -pip/commands/install.py,sha256=ovG9p9n1X2NPqMgFVtSuT9kMbLAdx1r3YSSiXSvgOKI,17412 -pip/commands/list.py,sha256=93bCiFyt2Qut_YHkYHJMZHpXladmxsjS-yOtZeb3uqI,11369 -pip/commands/search.py,sha256=oTs9QNdefnrmCV_JeftG0PGiMuYVmiEDF1OUaYsmDao,4502 -pip/commands/show.py,sha256=ZYM57_7U8KP9MQIIyHKQdZxmiEZByy-DRzB697VFoTY,5891 -pip/commands/uninstall.py,sha256=tz8cXz4WdpUdnt3RvpdQwH6_SNMB50egBIZWa1dwfcc,2884 -pip/commands/wheel.py,sha256=z5SEhws2YRMb0Ml1IEkg6jFZMLRpLl86bHCrQbYt5zo,7729 -pip/compat/__init__.py,sha256=2Xs_IpsmdRgHbQgQO0c8_lPvHJnQXHyGWxPbLbYJL4c,4672 -pip/compat/dictconfig.py,sha256=dRrelPDWrceDSzFT51RTEVY2GuM7UDyc5Igh_tn4Fvk,23096 -pip/models/__init__.py,sha256=0Rs7_RA4DxeOkWT5Cq4CQzDrSEhvYcN3TH2cazr72PE,71 -pip/models/index.py,sha256=pUfbO__v3mD9j-2n_ClwPS8pVyx4l2wIwyvWt8GMCRA,487 -pip/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 -pip/operations/check.py,sha256=uwUN9cs1sPo7c0Sj6pRrSv7b22Pk29SXUImTelVchMQ,1590 -pip/operations/freeze.py,sha256=k-7w7LsM-RpPv7ERBzHiPpYkH-GuYfHLyR-Cp_1VPL0,5194 -pip/req/__init__.py,sha256=vFwZY8_Vc1WU1zFAespg1My_r_AT3n7cN0W9eX0EFqk,276 -pip/req/req_file.py,sha256=fG9MDsXUNPhmGwxUiwrIXEynyD8Q7s3L47-hLZPDXq0,11926 -pip/req/req_install.py,sha256=gYrH-lwQMmt55VVbav_EtRIPu94cQbHFHm_Kq6AeHbg,46487 -pip/req/req_set.py,sha256=jHspXqcA2FxcF05dgUIAZ5huYPv6bn0wRUX0Z7PKmaA,34462 -pip/req/req_uninstall.py,sha256=fdH2VgCjEC8NRYDS7fRu3ZJaBBUEy-N5muwxDX5MBNM,6897 -pip/utils/__init__.py,sha256=HX_wYS15oiYOz-H3qG1Kbi1CY7AGWCNK5jloiD0fauc,27187 -pip/utils/appdirs.py,sha256=kj2LK-I2fC5QnEh_A_v-ev_IQMcXaWWF5DE39sNvCLQ,8811 -pip/utils/build.py,sha256=4smLRrfSCmXmjEnVnMFh2tBEpNcSLRe6J0ejZJ-wWJE,1312 -pip/utils/deprecation.py,sha256=X_FMjtDbMJqfqEkdRrki-mYyIdPB6I6DHUTCA_ChY6M,2232 -pip/utils/encoding.py,sha256=NQxGiFS5GbeAveLZTnx92t5r0PYqvt0iRnP2u9SGG1w,971 -pip/utils/filesystem.py,sha256=ZEVBuYM3fqr2_lgOESh4Y7fPFszGD474zVm_M3Mb5Tk,899 -pip/utils/glibc.py,sha256=jcQYjt_oJLPKVZB28Kauy4Sw70zS-wawxoU1HHX36_0,2939 -pip/utils/hashes.py,sha256=oMk7cd3PbJgzpSQyXq1MytMud5f6H5Oa2YY5hYuCq6I,2866 -pip/utils/logging.py,sha256=7yWu4gZw-Qclj7X80QVdpGWkdTWGKT4LiUVKcE04pro,3327 -pip/utils/outdated.py,sha256=fNwOCL5r2EftPGhgCYGMKu032HC8cV-JAr9lp0HmToM,5455 -pip/utils/packaging.py,sha256=qhmli14odw6DIhWJgQYS2Q0RrSbr8nXNcG48f5yTRms,2080 -pip/utils/setuptools_build.py,sha256=0blfscmNJW_iZ5DcswJeDB_PbtTEjfK9RL1R1WEDW2E,278 -pip/utils/ui.py,sha256=pbDkSAeumZ6jdZcOJ2yAbx8iBgeP2zfpqNnLJK1gskQ,11597 -pip/vcs/__init__.py,sha256=WafFliUTHMmsSISV8PHp1M5EXDNSWyJr78zKaQmPLdY,12374 -pip/vcs/bazaar.py,sha256=tYTwc4b4off8mr0O2o8SiGejqBDJxcbDBMSMd9-ISYc,3803 -pip/vcs/git.py,sha256=5LfWryi78A-2ULjEZJvCTarJ_3l8venwXASlwm8hiug,11197 -pip/vcs/mercurial.py,sha256=xG6rDiwHCRytJEs23SIHBXl_SwQo2jkkdD_6rVVP5h4,3472 -pip/vcs/subversion.py,sha256=GAuX2Sk7IZvJyEzENKcVld_wGBrQ3fpXDlXjapZEYdI,9350 -pip-9.0.1.dist-info/DESCRIPTION.rst,sha256=Va8Wj1XBpTbVQ2Z41mZRJdALEeziiS_ZewWn1H2ecY4,1287 -pip-9.0.1.dist-info/METADATA,sha256=mvs_tLoKAbECXY_6QHiVWQsagSL-1UjolQTpScT8JSk,2529 -pip-9.0.1.dist-info/RECORD,, -pip-9.0.1.dist-info/WHEEL,sha256=o2k-Qa-RMNIJmUdIc7KU6VWR_ErNRbWNlxDIpl7lm34,110 -pip-9.0.1.dist-info/entry_points.txt,sha256=GWc-Wb9WUKZ1EuVWNz-G0l3BeIpbNJLx0OJbZ61AAV0,68 -pip-9.0.1.dist-info/metadata.json,sha256=aqvkETDy4mHUBob-2Fn5WWlXORi_M2OSfQ2HQCUU_Fk,1565 -pip-9.0.1.dist-info/top_level.txt,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -../../../bin/pip,sha256=PFNAmI8pI6n-j--zviSjssWIfZz2D8yFMSsdnkrDV04,228 -../../../bin/pip3,sha256=PFNAmI8pI6n-j--zviSjssWIfZz2D8yFMSsdnkrDV04,228 -../../../bin/pip3.4,sha256=PFNAmI8pI6n-j--zviSjssWIfZz2D8yFMSsdnkrDV04,228 -pip-9.0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 -pip/_vendor/packaging/__pycache__/version.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/universaldetector.cpython-34.pyc,, -pip/compat/__pycache__/dictconfig.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/genshi.cpython-34.pyc,, -pip/_vendor/progress/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/api.cpython-34.pyc,, -pip/_vendor/webencodings/__pycache__/mklabels.cpython-34.pyc,, -pip/_vendor/html5lib/_trie/__pycache__/_base.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/_utils.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/connection.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/serializer.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/__init__.cpython-34.pyc,, -pip/req/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/contrib/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/webencodings/__pycache__/__init__.cpython-34.pyc,, -pip/operations/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/__pycache__/re-vendor.cpython-34.pyc,, -pip/_vendor/requests/packages/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/dom.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/controller.cpython-34.pyc,, -pip/commands/__pycache__/list.cpython-34.pyc,, -pip/commands/__pycache__/freeze.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/requirements.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/packages/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/adapter.cpython-34.pyc,, -pip/_vendor/html5lib/treebuilders/__pycache__/base.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/big5freq.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/ssl_.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/cp949prober.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/ansi.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/euckrfreq.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/linklockfile.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/__init__.cpython-34.pyc,, -pip/utils/__pycache__/filesystem.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/lint.cpython-34.pyc,, -pip/commands/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/charsetprober.cpython-34.pyc,, -pip/_vendor/html5lib/treebuilders/__pycache__/dom.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/sbcsgroupprober.cpython-34.pyc,, -pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/utf8prober.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/constants.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/response.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/structures.cpython-34.pyc,, -pip/_vendor/progress/__pycache__/counter.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-34.pyc,, -pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/poolmanager.cpython-34.pyc,, -pip/compat/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/constants.cpython-34.pyc,, -pip/_vendor/html5lib/treebuilders/__pycache__/etree_lxml.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/response.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/initialise.cpython-34.pyc,, -pip/req/__pycache__/req_uninstall.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/chardetect.cpython-34.pyc,, -pip/_vendor/html5lib/_trie/__pycache__/datrie.cpython-34.pyc,, -pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langhebrewmodel.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/auth.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/sessions.cpython-34.pyc,, -pip/utils/__pycache__/logging.cpython-34.pyc,, -pip/utils/__pycache__/hashes.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/compat.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/escprober.cpython-34.pyc,, -pip/__pycache__/wheel.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/locators.cpython-34.pyc,, -pip/utils/__pycache__/encoding.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langcyrillicmodel.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/contrib/__pycache__/pyopenssl.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/winterm.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/metadata.cpython-34.pyc,, -pip/utils/__pycache__/packaging.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/markers.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/optionaltags.cpython-34.pyc,, -pip/utils/__pycache__/setuptools_build.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/request.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/timeout.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/_compat.cpython-34.pyc,, -pip/__pycache__/cmdoptions.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/html5parser.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langgreekmodel.cpython-34.pyc,, -pip/vcs/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/cache.cpython-34.pyc,, -pip/commands/__pycache__/search.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/exceptions.cpython-34.pyc,, -pip/models/__pycache__/index.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/pidlockfile.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/sjisprober.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/exceptions.cpython-34.pyc,, -pip/vcs/__pycache__/bazaar.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/packages/__pycache__/ordered_dict.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/models.cpython-34.pyc,, -pip/_vendor/__pycache__/pyparsing.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/mkdirlockfile.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/retry.cpython-34.pyc,, -pip/__pycache__/index.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/connection.cpython-34.pyc,, -pip/_vendor/distlib/_backport/__pycache__/misc.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/euctwfreq.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/mbcsgroupprober.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/request.cpython-34.pyc,, -pip/_vendor/__pycache__/appdirs.cpython-34.pyc,, -pip/commands/__pycache__/show.cpython-34.pyc,, -pip/_vendor/__pycache__/distro.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/webencodings/__pycache__/tests.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/hooks.cpython-34.pyc,, -pip/_vendor/distlib/_backport/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/database.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/euctwprober.cpython-34.pyc,, -pip/_vendor/html5lib/treebuilders/__pycache__/__init__.cpython-34.pyc,, -pip/utils/__pycache__/ui.cpython-34.pyc,, -pip/models/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/filepost.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/resources.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/sqlitelockfile.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/status_codes.cpython-34.pyc,, -pip/utils/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/__pycache__/six.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/euckrprober.cpython-34.pyc,, -pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-34.pyc,, -pip/_vendor/webencodings/__pycache__/labels.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/base.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/__init__.cpython-34.pyc,, -pip/commands/__pycache__/download.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/codingstatemachine.cpython-34.pyc,, -pip/_vendor/progress/__pycache__/bar.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/certs.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-34.pyc,, -pip/_vendor/html5lib/treeadapters/__pycache__/sax.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/cookies.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/etree.cpython-34.pyc,, -pip/req/__pycache__/req_file.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/base.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/gb2312prober.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/alphabeticalattributes.cpython-34.pyc,, -pip/_vendor/html5lib/treebuilders/__pycache__/etree.cpython-34.pyc,, -pip/req/__pycache__/req_install.cpython-34.pyc,, -pip/_vendor/__pycache__/ipaddress.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/big5prober.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/specifiers.cpython-34.pyc,, -pip/utils/__pycache__/appdirs.cpython-34.pyc,, -pip/__pycache__/status_codes.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/mbcssm.cpython-34.pyc,, -pip/_vendor/html5lib/treewalkers/__pycache__/etree_lxml.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/fields.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/connectionpool.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/manifest.cpython-34.pyc,, -pip/__pycache__/download.cpython-34.pyc,, -pip/_vendor/__pycache__/retrying.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/__init__.cpython-34.pyc,, -pip/__pycache__/locations.cpython-34.pyc,, -pip/commands/__pycache__/install.cpython-34.pyc,, -pip/vcs/__pycache__/subversion.cpython-34.pyc,, -pip/utils/__pycache__/build.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/html5lib/treeadapters/__pycache__/genshi.cpython-34.pyc,, -pip/req/__pycache__/req_set.cpython-34.pyc,, -pip/__pycache__/exceptions.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/gb2312freq.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/utils.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/wheel.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/jisfreq.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/__pycache__/_collections.cpython-34.pyc,, -pip/operations/__pycache__/check.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/util/__pycache__/url.cpython-34.pyc,, -pip/vcs/__pycache__/git.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/hebrewprober.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/ansitowin32.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/__init__.cpython-34.pyc,, -pip/utils/__pycache__/outdated.cpython-34.pyc,, -pip/_vendor/html5lib/_trie/__pycache__/py.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/chardistribution.cpython-34.pyc,, -pip/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/serialize.cpython-34.pyc,, -pip/commands/__pycache__/hash.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/utils.cpython-34.pyc,, -pip/utils/__pycache__/deprecation.cpython-34.pyc,, -pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/mbcharsetprober.cpython-34.pyc,, -pip/__pycache__/__main__.cpython-34.pyc,, -pip/operations/__pycache__/freeze.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/util.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/packages/__pycache__/six.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/escsm.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/charsetgroupprober.cpython-34.pyc,, -pip/commands/__pycache__/help.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/jpcntx.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/compat.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/compat.cpython-34.pyc,, -pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/markers.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langhungarianmodel.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langbulgarianmodel.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/index.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/_inputstream.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/langthaimodel.cpython-34.pyc,, -pip/_vendor/html5lib/treeadapters/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/_structures.cpython-34.pyc,, -pip/_vendor/progress/__pycache__/spinner.cpython-34.pyc,, -pip/commands/__pycache__/wheel.cpython-34.pyc,, -pip/commands/__pycache__/completion.cpython-34.pyc,, -pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-34.pyc,, -pip/_vendor/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/distlib/_backport/__pycache__/shutil.cpython-34.pyc,, -pip/__pycache__/pep425tags.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/contrib/__pycache__/appengine.cpython-34.pyc,, -pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-34.pyc,, -pip/_vendor/pkg_resources/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/contrib/__pycache__/socks.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/contrib/__pycache__/ntlmpool.cpython-34.pyc,, -pip/commands/__pycache__/uninstall.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/eucjpprober.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/latin1prober.cpython-34.pyc,, -pip/_vendor/progress/__pycache__/helpers.cpython-34.pyc,, -pip/_vendor/requests/packages/chardet/__pycache__/sbcharsetprober.cpython-34.pyc,, -pip/commands/__pycache__/check.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/scripts.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/compat.cpython-34.pyc,, -pip/__pycache__/baseparser.cpython-34.pyc,, -pip/_vendor/cachecontrol/__pycache__/__init__.cpython-34.pyc,, -pip/_vendor/colorama/__pycache__/win32.cpython-34.pyc,, -pip/_vendor/lockfile/__pycache__/symlinklockfile.cpython-34.pyc,, -pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__pycache__/_implementation.cpython-34.pyc,, -pip/_vendor/requests/__pycache__/adapters.cpython-34.pyc,, -pip/vcs/__pycache__/mercurial.cpython-34.pyc,, -pip/_vendor/packaging/__pycache__/__about__.cpython-34.pyc,, -pip/_vendor/distlib/__pycache__/version.cpython-34.pyc,, -pip/__pycache__/basecommand.cpython-34.pyc,, -pip/utils/__pycache__/glibc.cpython-34.pyc,, -pip/_vendor/__pycache__/ordereddict.cpython-34.pyc,, diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/WHEEL b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/WHEEL deleted file mode 100644 index 8b6dd1b..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/WHEEL +++ /dev/null @@ -1,6 +0,0 @@ -Wheel-Version: 1.0 -Generator: bdist_wheel (0.29.0) -Root-Is-Purelib: true -Tag: py2-none-any -Tag: py3-none-any - diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/entry_points.txt b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/entry_points.txt deleted file mode 100644 index c02a8d5..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/entry_points.txt +++ /dev/null @@ -1,5 +0,0 @@ -[console_scripts] -pip = pip:main -pip3 = pip:main -pip3.5 = pip:main - diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/metadata.json b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/metadata.json deleted file mode 100644 index 9eae02c..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Topic :: Software Development :: Build Tools", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: PyPy"], "extensions": {"python.commands": {"wrap_console": {"pip": "pip:main", "pip3": "pip:main", "pip3.5": "pip:main"}}, "python.details": {"contacts": [{"email": "python-virtualenv@groups.google.com", "name": "The pip developers", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst"}, "project_urls": {"Home": "https://pip.pypa.io/"}}, "python.exports": {"console_scripts": {"pip": "pip:main", "pip3": "pip:main", "pip3.5": "pip:main"}}}, "extras": ["testing"], "generator": "bdist_wheel (0.29.0)", "keywords": ["easy_install", "distutils", "setuptools", "egg", "virtualenv"], "license": "MIT", "metadata_version": "2.0", "name": "pip", "requires_python": ">=2.6,!=3.0.*,!=3.1.*,!=3.2.*", "run_requires": [{"extra": "testing", "requires": ["mock", "pretend", "pytest", "scripttest (>=1.3)", "virtualenv (>=1.10)"]}], "summary": "The PyPA recommended tool for installing Python packages.", "test_requires": [{"requires": ["mock", "pretend", "pytest", "scripttest (>=1.3)", "virtualenv (>=1.10)"]}], "version": "9.0.1"} \ No newline at end of file diff --git a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/top_level.txt b/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/top_level.txt deleted file mode 100644 index a1b589e..0000000 --- a/env/lib/python3.4/site-packages/pip-9.0.1.dist-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -pip diff --git a/env/lib/python3.4/site-packages/pip/__init__.py b/env/lib/python3.4/site-packages/pip/__init__.py deleted file mode 100644 index 9c1d8f9..0000000 --- a/env/lib/python3.4/site-packages/pip/__init__.py +++ /dev/null @@ -1,331 +0,0 @@ -#!/usr/bin/env python -from __future__ import absolute_import - -import locale -import logging -import os -import optparse -import warnings - -import sys -import re - -# 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.requests.packages.urllib3.exceptions import DependencyWarning -warnings.filterwarnings("ignore", category=DependencyWarning) # noqa - - -from pip.exceptions import InstallationError, CommandError, PipError -from pip.utils import get_installed_distributions, get_prog -from pip.utils import deprecation, dist_is_editable -from pip.vcs import git, mercurial, subversion, bazaar # noqa -from pip.baseparser import ConfigOptionParser, UpdatingDefaultsHelpFormatter -from pip.commands import get_summaries, get_similar_commands -from pip.commands import commands_dict -from pip._vendor.requests.packages.urllib3.exceptions import ( - InsecureRequestWarning, -) - - -# assignment for flake8 to be happy - -# This fixes a peculiarity when importing via __import__ - as we are -# initialising the pip module, "from pip import cmdoptions" is recursive -# and appears not to work properly in that situation. -import pip.cmdoptions -cmdoptions = pip.cmdoptions - -# The version as used in the setup.py and the docs conf.py -__version__ = "9.0.1" - - -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 uninstall command - if subcommand_name == 'uninstall' and not current.startswith('-'): - installed = [] - lc = current.lower() - for dist in get_installed_distributions(local_only=True): - if dist.key.startswith(lc) and dist.key not in cwords[1:]: - installed.append(dist.key) - # if there are no dists installed, fall back to option completion - if installed: - for dist in installed: - print(dist) - sys.exit(1) - - subcommand = commands_dict[subcommand_name]() - options += [(opt.get_opt_string(), opt.nargs) - for opt in subcommand.parser.option_list_all - if opt.help != optparse.SUPPRESS_HELP] - - # filter out previously specified options from available options - prev_opts = [x.split('=')[0] for x in cwords[1:cword - 1]] - options = [(x, v) for (x, v) in options if x not in prev_opts] - # filter options by current input - options = [(k, v) for k, v in options if k.startswith(current)] - for option in options: - opt_label = option[0] - # append '=' to options which require args - if option[1]: - opt_label += '=' - print(opt_label) - else: - # show main parser options only when necessary - if current.startswith('-') or current.startswith('--'): - opts = [i.option_list for i in parser.option_groups] - opts.append(parser.option_list) - opts = (o for it in opts for o in it) - - subcommands += [i.get_opt_string() for i in opts - if i.help != optparse.SUPPRESS_HELP] - - print(' '.join([x for x in subcommands if x.startswith(current)])) - sys.exit(1) - - -def create_main_parser(): - parser_kw = { - 'usage': '\n%prog [options]', - 'add_help_option': False, - 'formatter': UpdatingDefaultsHelpFormatter(), - 'name': 'global', - 'prog': get_prog(), - } - - parser = ConfigOptionParser(**parser_kw) - parser.disable_interspersed_args() - - pip_pkg_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - parser.version = 'pip %s from %s (python %s)' % ( - __version__, pip_pkg_dir, sys.version[:3]) - - # add the general options - gen_opts = cmdoptions.make_option_group(cmdoptions.general_group, parser) - parser.add_option_group(gen_opts) - - parser.main = True # so the help formatter knows - - # create command listing for description - command_summaries = get_summaries() - description = [''] + ['%-27s %s' % (i, j) for i, j in command_summaries] - parser.description = '\n'.join(description) - - return parser - - -def parseopts(args): - parser = create_main_parser() - - # Note: parser calls disable_interspersed_args(), so the result of this - # call is to split the initial args into the general options before the - # subcommand and everything else. - # For example: - # args: ['--timeout=5', 'install', '--user', 'INITools'] - # general_options: ['--timeout==5'] - # args_else: ['install', '--user', 'INITools'] - general_options, args_else = parser.parse_args(args) - - # --version - if general_options.version: - sys.stdout.write(parser.version) - sys.stdout.write(os.linesep) - sys.exit() - - # pip || pip help -> print_help() - if not args_else or (args_else[0] == 'help' and len(args_else) == 1): - parser.print_help() - sys.exit() - - # the subcommand name - cmd_name = args_else[0] - - if cmd_name not in commands_dict: - guess = get_similar_commands(cmd_name) - - msg = ['unknown command "%s"' % cmd_name] - if guess: - msg.append('maybe you meant "%s"' % guess) - - raise CommandError(' - '.join(msg)) - - # all the args without the subcommand - cmd_args = args[:] - cmd_args.remove(cmd_name) - - return cmd_name, cmd_args - - -def check_isolated(args): - isolated = False - - if "--isolated" in args: - isolated = True - - return isolated - - -def main(args=None): - if args is None: - args = sys.argv[1:] - - # Configure our deprecation warnings to be sent through loggers - deprecation.install_warning_logger() - - autocomplete() - - try: - cmd_name, cmd_args = parseopts(args) - except PipError as exc: - sys.stderr.write("ERROR: %s" % exc) - sys.stderr.write(os.linesep) - sys.exit(1) - - # Needed for locale.getpreferredencoding(False) to work - # in pip.utils.encoding.auto_decode - try: - locale.setlocale(locale.LC_ALL, '') - except locale.Error as e: - # setlocale can apparently crash if locale are uninitialized - logger.debug("Ignoring error %s when setting locale", e) - command = commands_dict[cmd_name](isolated=check_isolated(cmd_args)) - return command.main(cmd_args) - - -# ########################################################### -# # Writing freeze files - -class FrozenRequirement(object): - - def __init__(self, name, req, editable, comments=()): - self.name = name - self.req = req - self.editable = editable - self.comments = comments - - _rev_re = re.compile(r'-r(\d+)$') - _date_re = re.compile(r'-(20\d\d\d\d\d\d)$') - - @classmethod - def from_dist(cls, dist, dependency_links): - location = os.path.normcase(os.path.abspath(dist.location)) - comments = [] - from pip.vcs import vcs, get_src_requirement - if dist_is_editable(dist) and vcs.get_backend_name(location): - editable = True - try: - req = get_src_requirement(dist, location) - except InstallationError as exc: - logger.warning( - "Error when trying to get requirement for VCS system %s, " - "falling back to uneditable format", exc - ) - req = None - if req is None: - logger.warning( - 'Could not determine repository location of %s', location - ) - comments.append( - '## !! Could not determine repository location' - ) - req = dist.as_requirement() - editable = False - else: - editable = False - req = dist.as_requirement() - specs = req.specs - assert len(specs) == 1 and specs[0][0] in ["==", "==="], \ - 'Expected 1 spec with == or ===; specs = %r; dist = %r' % \ - (specs, dist) - version = specs[0][1] - ver_match = cls._rev_re.search(version) - date_match = cls._date_re.search(version) - if ver_match or date_match: - svn_backend = vcs.get_backend('svn') - if svn_backend: - svn_location = svn_backend().get_location( - dist, - dependency_links, - ) - if not svn_location: - logger.warning( - 'Warning: cannot find svn location for %s', req) - comments.append( - '## FIXME: could not find svn URL in dependency_links ' - 'for this package:' - ) - else: - comments.append( - '# Installing as editable to satisfy requirement %s:' % - req - ) - if ver_match: - rev = ver_match.group(1) - else: - rev = '{%s}' % date_match.group(1) - editable = True - req = '%s@%s#egg=%s' % ( - svn_location, - rev, - cls.egg_name(dist) - ) - return cls(dist.project_name, req, editable, comments) - - @staticmethod - def egg_name(dist): - name = dist.egg_name() - match = re.search(r'-py\d\.\d$', name) - if match: - name = name[:match.start()] - return name - - def __str__(self): - req = self.req - if self.editable: - req = '-e %s' % req - return '\n'.join(list(self.comments) + [str(req)]) + '\n' - - -if __name__ == '__main__': - sys.exit(main()) diff --git a/env/lib/python3.4/site-packages/pip/__main__.py b/env/lib/python3.4/site-packages/pip/__main__.py deleted file mode 100644 index 5556539..0000000 --- a/env/lib/python3.4/site-packages/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) - -import pip # noqa - -if __name__ == '__main__': - sys.exit(pip.main()) diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index e945956949abf2028a5f7d53fd86d0fccca5ce3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9303 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 Z@8iGu+?X+qzxn(rZs#g^uQ2@|{|nPD$4vkL diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/baseparser.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/baseparser.cpython-34.pyc deleted file mode 100644 index 5be8aa40cfb2bb640f2ecd05d0ff154e772d6dbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10062 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 X*}uA52ji~hmvc+Gl?ThSD@*?eQ$&D& diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/cmdoptions.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/cmdoptions.cpython-34.pyc deleted file mode 100644 index b5305b8b032d9d0455721f1c0e53e66043ed434a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13922 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 diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/download.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/download.cpython-34.pyc deleted file mode 100644 index ec035cb71005a017f5a1359d44bd092b2a402066..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22363 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 DE@=bn diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/index.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/index.cpython-34.pyc deleted file mode 100644 index cb337ec30d4436a8320e8c2c3235aa1d61b8285d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32728 zcmchgdyrgLUf<8{?&*0yG?GS7%k773jjb73vb_)ay^_2ZYmc=ad9@x}^tQTNqn7$H zy0^#DG!}u_?2^iZEaX*rZY5BJM__rTNTpzlq@Y3|B>yCE6H);RQX5iGgbG!dz~=M) zoqKQhj7GcKg{7r?=iGD8^LNhqz0bM7J25%-Td#ia8&m(#x!-gHzY)UEb43s4ovS&w z!aZ=coNETIm2)dO7w9?fnt8X9w|9gKZlz%1f@==BR?)2#vvk95WjIYY;#Nk|@TglE zO~YeuWh@PkyOr@YJmFR*((t5PnY8ebYfib=v|E|+brkJ+hg+HT&%>^{)3tWFm0kXM z#5H%j)|^|JbFDpYWshs^bt`*aYoA-$=UV&S%6^}2)HM&d)_f;!{ky=A*84)U6zKtp&HT;A5vv6a8xPJ#Uo-k-U>7RGF<_BEsgKp)6{(06lKjc~;b}JwD&pTc7q-#CpR-W?D zyIk{W*LudSJj3&DSDSOSJ#Ll3eb&|Xy4pVdzsx`r*gp_HFc3bNhVQXtc}suD!j^ZH z`S6^p=iSxkUHt|3Zs1lv;yzlt*VRhyJ?2-*)la#1sq!?j_o;rx?nz_MxcZp8`l74d zZ-I}xcXO`xfU7;|-lL?K$aC1$9?AWvDhPN>^Hc2(W#U3Dr4niuJ(vJ zOl>PKyV|3!cGSYJxY~lNEn0ZV)sDH^V-|kZvLAP~6PEp)mcjD;#TPh?Rr!S z>&;5HUMqDwrE?qS&K@l_+O_)4dh|uDu=yaKu3U;b&Gl}*+-R+J!tN4rW9>?-UhA%} zHS0VLtyRKEf#I-zeZ3xa363__Dz#czkD~dZc)D7tUa8m0Yhh=t9(Fh4k!Y>i=+0XIvUwG}*OJ_fErhMj;=g%xHpM7;{Io`GW`nhwjzIOi1>48}4 z*!^0))p@&KJKH|jSUdjMg-Y0Nv{!jCrY^L*$P~-+4kGCwszr4 zz21DW(X0y)@yzS(XnjqJXiGX-0Dne&@^|}is5ffa+Wdw3pSa-*F&yW zv@iis^oWI7AfV+j3lj+{p0F@@8}vJ6VG>Nc+Kh$4+dEus*1{y->1w+y4Bp<&>X?gn zCnH|b%s2%s8a38PwLmNN(_cu9JH-_}&+VPSz2jWjxh{d6u!SCT?wz~^?0%JG&Rr#v zyWtz9p-YY`gC&;9Fze%Lz1oc@Z9$da_LDFkP6HzXvzina%Gc@}%(6mMZ(a@`p$Xwp z-4?igp9>%3&-+J?bz5u4)*5RIm)0B2+QQXK^;Y=78&4?8E?ek}Yb?idxzTQP%jIXu z7m1v@U^JNK>K)n^5{qeuYM{jY^jBapkQ^ky2qrx?U}XIUXD-j@mU>5@-nQf;-}Kmh z;jN>kZ#wS(oZ!#=v-Grh*=FjNzRm~XF)FhT``d9I)uFJy7M9DWd5Y977ZkrtXMEyK zozc{^&P)>M`mqZ%vNl+`xNxNsT?rR?dFM7LNx6KMG?9vPU#0~B$Ccp@vQh}Sxj|B?yzN#v|A}C1s z^#Fw?QLuDZpsmx=*Y5@t zO8E5vMd9v2@y1<%;tnX|ZWhQYc|UnqpdjJb0~8`xcey~``pTea{~2b5^1gXDpisi9 z_!Ir~SC`SUhX{z41!7d*&ADi&>w*DbSwvr8Qy|)Ty)YtIfRT7_%$CdX zSh?Kl)YgSBJ@Cn^Mpxe{BJ)@hLneaK?p4aUK-Gq_{+GYsZaJ_n` ztkEuR6S;}v#Lz^3@SpX+%FFCGPUv~A==Zs8VP3_y!o_BH&&6hUV`SeOH4OyJ>#%X3 zLnf+`3$}Gsaw5!z)DUp1V zQRy%7;z6`HHdf+iZ+O|NSK3|4mq;4bE2VlR+JN6Qk?P^71Ydon-9TTrOKM*%di2bUTQYl*Jy@X@#0c-f`;lh z%{9tpYoQ0r`VPQ{MH+G80j&#$44D7rz_p!QHJ+;+xSJQWEKXm1)!mwK?@Wk;r~jl2 zuevTvWWSPt# zjowK(%1TSqfyo1hX>#hx(hH>*2L;zs=aK}c5)){t)2=U;UXQ#+BgtSBLB;6@S6V`B zB0Z8+sdKp$b=JdbJ)6CyW2H-tb|u{C#~_!tOOzF@H&L3b-d3DRQhq}AC!Xp`n!kpM zMO{$CrE*{nXH7kO+1h-RHdR7Y6)Yy+rSpDERh4cD4!e}81+*&EpXz!Tf{{znM%1mh z7E7;+^}f-F>PJgA8qKDy&rL<8<&&E-Q6H2p)k~5S0b<*VOxsLTB0;m!USvhrqx$yc zST&t?b3+ByIyc(QPNhaRb*46;XE~|DH>_2g3Tk({{U(@r(cJJ0cmR%xARGyfO$xQq zGk8XQfTn0CX?G2!4=Rm~O|^lH*6M3doOrTZS&a~Z>78|Ylg{PHJg7_5?6!7PE;Y6r z%D;e`(ZPA*YkGjc=teB{p53%i1))X+kFZ)g4t6#LTdjm@;zlQ|F;iF9#V4FBJshD3 zWVJo~e(=rJRArC@6Ay8jTyZY}k8&^WcDGCo1lFxN>198gbJvSvNy5XVN@SHdxA+)B zI4Y+BdM;A_{@Bx+8sZ|J{l`3;XoV)@kxebnG#G=jY?>_|Nhex7k}iWd&!EQz!9RSE zVtWnLC?%*HXyI~Wbvjof~zEx9Ju|&5~zp zGy%__)0L6k&^VohUAt zBDGk*Nq3^S2wAM7)-;{yO(`Fvc&1iYT)kc0ND9hF^=>?YzH}8et(6_#r}CzRwfcxR zo{H+AntHhtHdZ0w@ovCnib>Xk~P9Z%3=be?ER(J`aB44XbwjKG!XUW?Y~Fdn{$-2Kx%5dHpM*n9{$Ap<-|^ zDW?e!7kYEs&(^9IjehzI{q(Gi*jSNf+J97>y;u}je7F=$UwUDz3F}FOSOi!)A#`w` zJe|#h(#s-TrDWW+pwUQykfD2wAsEzb1Y)@i(SzeduYA|Ut&}dKD26U26JT+^Xb_G^ zl0jioDin$l3nk9QOwTS;Fw+(JIk!bYvI`T!ZBytAWHx`P^`>cmHN+ZI>;B zoYb3=LIl0&O^^|2=dbvC;6CHrX99QG;0HJOY3FX`+|306@$|*R!L7X5L@{!v+XbAr z3SzVnnmkW<3tp>0v0}Qy`vNg%SC!ya(Y0ZhEU|JG({e~(Gz{WQt{)22fJ4Ez(^U96<5vS>ufGx`9T-b1 zo(jZ=TG94;++9U*@GWKfTtDKvlSv8TGg}Jeolj0T{A?rn1(f;J3lNv*i@k0}cbBn` z3}DAb8zOwa>;lpKr6Xc}8gJL5dE=t)7n-{NsD;BiQ>&eoQh^_7gd+UH@=@uCm2gxU z=CefAK^jwFpoLr_EpU3zSZWAN2G%%2X3W~~ZV)ht`{=sZ*QeA6FA@u??MX+s`p>q6 zhL+-@*tu%=#ZWc&MrG4FCOgf1A>2(&Jlbl&Lx8-acx)BhSX9dmNcV3eae;<(X&cU_D;SYHcJm5 zjvf}VX{=&{tJhAJ8eOA3b*KsSiABxWK#COfOjIY_SnPd#o4kvqvz9l@iZyD%2#_#| z=#kj7CgLGtTPd+iRZAX)FV0Ve;sFdAq4Zv%^njt%-tkZ)qHbBdDj@+Jf+TYfLD zx4m$+o`_+q^>#f><#OaL5CKf0$p%9FC9@x!}Nq} zg4{rtE@NSkaH8qgXVa0X#6pQv(gZZKYGfJPRy#QmoDwDvfoD+EAn&&MRI9Zd)|TbL z!s!>`i$0kFpj0}(Sjy&qqU(qTUY}S@8pXPxG}`laqf#;}@M0p|p(4Q!Uv4$pM`Yw% z?6XRJJXb0`zL<)yDF)4IK~-0`MSTNGF5$J|YXa@oTbHP^E6ok;Q=2^Y3iPc;gU=JFX83YqPCFgn7%a$UHF*X3A%}e2qXxdqC)?hT= zu1h-vPchI+go#QsE2j66!yu}JF&+?qZDeg8S!Ysa-S81Y?ZYNhYSikr#rd%~kHJ3t z6br@-rSS;M-AV}e5EqYV>6<}+G!wAHS-shD+nAWSb$-ZOx<;wWn~3A_G-Z3e6%SeA zaUP}A79l0xS=W0(M`fJf;(ox4|x#%Ty8k%-M0ld+@3$v`AQTJt7Z7% zKSG(n4=i?6y^wm=cOMUUY~XpAA<0@=+NhQSw+|fQRhaM ziz@-#iL^_mMca1`eDkg8gQ%!IUw>WduZ_Rvx})yunD_;i51mD`brnq+O6bq0Q4m$> z;{H|o+(u{R6JJHyY4}S`AGWfltt_e@EGzs&YXDKo>tAllJK`?1Uvq`-jJr1G!b-p| zsUp0XhOX{#@4_Y|x$QxH;k}Pa`gSq6VSRg}z0-XX{tHdowP6=_1K(v8TXg%Bhd(Od zhpYe|k^=hA^m|nAeNMD;%NK-TQPY8dLBoE43UW9K(9>g**u#8cL=_A{*~f~E?tv^Q>4HX<)T36=axGuvlcJ`xZmzKk~lviQ`g7aEAab*fWqS%9q zHBQfXxwu%PpLoY8VY}W%^>Hm8`-Di97ubi8kfBoIOXf$taB7Uof(nzo7#F=bjj|!^ zbURfXaV9s(*>OP)h=-HXx8jmLWupzy*Yc)p`i%jb*vxnMt7 zrI;)6cQQXl{7f)jfK$ouA~X{e3q#1G`9d)m%l8g%!93g7mT@PkXqu;M(NS)as8S{y zi3(v0F-tK>O$EtV!YE#Ky*xkE`_b2o6UvxP1}vO>u0PIP@@Bl|MuL(0)Ji8Qi@7hp}^Nlt%1I5uC5 zN41vWVNvx^oU_>-4_#k}%7^z55s$FaOcjJ+Va#nF;Nh4tLEEJrH+T$47E`Tj>fzeP zT0{Kq70nh=4Y|tXnJ?35E_%;x8G9*6`=B@8+4$?eu(7$+O_0eXF)bn11O2!-Dca`^tBMLPc#+FWvC$Wbfg-Y)!Uuc9BsdU@He9)I`n{H1PG3K$$T{!{1`|7`gV5 zx~EzT1X;ZulA59a7Wq7IiXV2ju=&{9dyjePbwe-$5OS0Vc{3s18co-zIoz>EeL6@J zOO|Xtv^WTVQPwXQi7q4!GndVL(X*R}^nCi_oVzuirh-Yp zY9#H$@3;#v4t{dT;524E;yq?J`hwXFqa0;%hnWB%Qlh@Y*sX%xyk3)lo9z9@v;#=gJb>Ubpsmjc^S24JnVNT$k_29E+NoAK*2q=6f zcDi?VqP)y;zlw2|tTe#|K~f-5w4GRtwdOBLI)Om{>5gy&sv7P~Z!dsjQw2Qr z2<^-0<%K};FtYuYwr`e@`hfXxxn3`s&KCLJTvt=4N^fPW)w?L!u^qJ$#~RqCB>_-6 zwNR=}oaW(4U7%}mhlp#<$hcjdEc z(*k~nz#s~ywf~GfrdUZ^PL9nkkHU$eF!6V!*l*P3hk8$bHSN~0nZ;&P!wnBo@Lj<- z{6RHrfLv?=Z}=~G|2O-9{W{n5*}t%wzO!Fb@91IqM4+rk=XC^SDx8ZqE8BX_78Tml z!_moJ;Sv69fq_MIV-A^D{)_eQI zMT_7F-rdr!ys1@9{o#44WWm6cZ`-(^$r=~T?+$-JsUUaW^s#)%jWG6@3;*ygcwn8`IL^_>S~8 zzsrkLV$I@dPixZIA7RBa;$!+;V$t=c#7JywJbt<9b-j8R<3Y@@!V}Dj{+n?@nrJCKYFFo6o}dH#W03D9!~m=sla!6XP*#e)JQJ>ICG{8R5skzdc1RBerB&G ztqtj;O(@o&dBGcZ>Wkk@A#P|CHCk?DI@k?=zc<*MpAL48>^5m{KbEwa+$8o%X{pgu z=XPSJEC&0~Q;(6lMED>&YRLt~V1GfHY-B`x8Vz<7$8Xb4Z9}E1TFd&4B$uu206NNm zvVydZjBLut=5^Sn`S8XW<`aq#V>w|}$$)w5R1(1R2{sF^m&wjN{)`tcVO-6Cmt^yb zt?<+0?!0P7rNHn80i1FhEloizvsz(1trRk!m!iqXpt_=T80sV?g;*Bps}9Q8Ms^=g zEMn+`j6H@8>`tje=xyMB`~9FeSTic{4HqligHv=^bHWO|aQ=eGCIkVjng@>4_@zg~cK}VLA z<(JbeUXeB;hL)bdhz>S;?PmixO>6v)#BPw(1dD5Jtlc4}@+ieDGVadaubxLq1+~(| zDOF4j?cD`MCGer>vzKRXvaJcjACWQ;rhMRQ-up!UCdOW_udRkSAd#eW34a1y5Hn6L z)h{H~G*I}9$voOmP(dXXmA2a+CQaE#?z};)uhGg1tFrd&Cyp`0+4u60;B51EK~JEG zW(!~oA^9$ndUdnM)p1bWj*R?ThN)fe#5TNF;)o&u4KR!uy3Ghoj4hDClk#Yw%Mef0KjJe|%qe<0zb%=M)YokoAU`^rxcXeUZRfU* zk66z?PP+n6fBde;CzS|#hnEunSuKb`hdMubxrcP<#q+(F&&ct|6t`Y*Lt;u{bc8NT zvD=c8cYST4+gZ@YHd`=#&<%jC_xe{VZQE?6BU@`oTR`Ok`!k93b{B0sf*)Tu?E#*D zWRD9_*m`gNb@Mz+i`EF^qQl~pcfh7$Mj8Bb3<3GDKZV+|fL%S^9m&=*+#b=;nxjy@ zRk<1db)}d{yH+b-+6XoGZ54VpXQUc7y4rB**^#2RF@^Fl4u4p;8QsJK&X0H_Q68|y z!wFi7r#2I49I4jW5?htO*MMXfPhFxr{fKx+VoSu4Dd}L6B#TcOf`6y_jUkvZVmvUY zzo3~|<2_ocd_EW**_l67+y{+k&mTHrI0Wu{Mc;Fx_j&k$$sz1eq`*%J52aD~1LFpA zW5g-dSgt@GA3hKa=SIz`jz=&_MmHknu$O#9l6rTM&{ zfq9hr@o2{E;xlDT+&9y8(>`i*C+14cq43}6w%I!>{4wGdAS#helyZieWN?bO70BJJ znCtD`4EU^~sJCljZR5zB$4@+d@vX(@-h6D~!xx{Mf3Pb0q+dD^rwB*axk0D+pF;sD z*36Ge!QDLPN984Bn*cTZ25iGU3TQmcTxS#>Z<^P|n8BoA-j(&ND+L=pa1Zt(<#l`n^tRW-qT?J8FDJu~E zn(|3cvSrBP@x)_9&40c>bd#(+4W9naUCYTrwuuFWc}i5K5OR=+mufvq*GypX+A7uPs-G3y zBDVAonHHytvLT1WoA#6Ht=5&cKJC1{pIg&s{Tw69E-oA8Kcy6~7NblTXaIi5K9Kn1 z@Cr%hQlLm_gH7A-rJ5lZv0Q?94k_L%Dt9QtfeZO8I zL&-;ua8@J;fHcDcxr`M=m=do3Rpr8Xpj?ErTqBzr;!FK>u)+2dFL;dTSZ4ZuGG-ZAW=WY0X=MkGWw^Zp7f+!I!f8e6tKw@u( zFi4RK{cc_)2dS(Nk$){DCx~F;C!945`@oiZ@{ZltY`*ae5nyR5VzaO^S%p+1QWfO- zh1}j)$~T=q>1nKlLuPzC=d%;Ox?4m4Z8?dO$CU17x8+u0WE`}ikAYCIdQOonYdk=ehFd+FE#XXgJ;7CAQ zf;(L5jhPp{snB|d*83-Ppx!rMQ?bnWwu_^Ti+;yX?;u>Z1tmh@?9^&>u>mB^bv)9l zR6Ehl!4chMsKzC$&lzInfpAX*Nyzo0f6kil(>>Wt95~Qp#Tz8{g?cf7Z?e-o| zkSz6^lQ%MS+Va=D5FITf`9bXi+YqHx{+qFH)G+A05N`ra7+d&B=ux8gkBwV~8U;cx3UuG`P(wwD`+ z%5Vltv%#*^^NN#87wR5vJ9LvSGWS5?%IH7g$Lw<+G4`kQICBuCq9p-16wkoTe}(6tpj!s!39eqAj#Hc%T0EDr zNq(aLh91?%fsr*~;JD%*;3nUu=mo5?&#hx?mTZ^eD?D9MAK=@H zlu=3cY9{vNWG`pBE>D`5aEXh|G*e_#gXOECCr+2uo$Mfw=2f%c6zI=>b9D{| zNDmB9%!I4spJIL|@7YpbnR4}MGZD;M0Hr?1&Eb!N6Nx_^%X~~=!NNbH?c&2w7)M?r zZ)*xmYf{nF^}Ij>QT_GTUS7&D$uQZ9T!u-cVXLveK_D=ouZSTfAW`9!6vZ1qypP7d zWfCh3pN@hJd?Ero?xTR~uOz;5;3Ur6V%wYiWsNj|aKI^`33DD6ms>VDMFH>#ZwUZZ z`DhfEdK0JEUrvt}wA&Jtd__yT8_#ybN;{IfXc^zsj25(=}L-=|qO<6)mDnjiLjzyxS1v3nAdS6@=)L{duP zbxIADR*f`CpPjyV(L^gGEhIh! zT8jTEgBrFrW*(J@>;*_d2tipxSi?&B|J=Fjb3szA$xbAa^kdcjl)L^@h+J?zzFp=# zPse2`L|CPG%6O}&PTm@m{~RuI_{8A^r{ytW;`UDlU0lItB{g!U1Ja>f>kPQzPs-z+ zR%1ORCi<*7z)!jlvZz!ib)X!g3*O}nfcaJ+D^oG8AQ64Ly2ldDxCSGFk#mRpfc)5Y zx(}$=B&M9b0)L>;KBf2Pl2F99K#3mA-2ouXMU}DN?qCcn4`|`dccJ~i5KIras|QU< za4Q$!$rtpHUKw|klB7mJrQN{x!W%%B|D^cl9qyCuA1CJ_%l7k0wnueP3K{0)sh1UC zk~;^dsCD;JQgB;ISA82wRv0>SYs0~Q5gfUqQt!}?qdxb2mis8hn>N83&k-$2rZ?I{ zY&V#JjnS&yztsD1%AI}oU0<^zvC)|)(~Q%4t6J7-&NMeghE zYi&-c=zRdW7I#1Gkz#9U*g-;V`91vz|IjkyZK7rguA<9fn$i)Q#-JenzPAgU+(xL@ zNg}4`xBiWG+4NZx8##Y}cusvYf9xT@)nJ%|0~X(|vg2J%ANHFdBjaHDjLQI<^Jx_z zMPT^7+|Vv+ya#DPf1|^|KFSTHox*^j&GQmWF(lb$`V(>?7xlsz6*jerGR{+CJQK?5 zEp7)qUg@rT(1u2iH^a2oO6V zjBIR$l(6eky3umFVa+C!r+9*h?b9&9Js!SPsp&M-aM}i$?GG4OymUXK7`)%>A;(vy ziut$zN3y1-&{vcN)$q5dZY%TlK5@S(A{7#F5J$G@=SPFNyf!{OiqJZeNKo3iU&JJ~ z8{t-FusnvXsoYHAK1ALFxX(;NTzB$D?}h`mQ4H@k=Ng}~kh_&r>xNPeL=#^zIqPRCObw>hM$N4;@sQFq4d*lnn~6JH*`51vo<@m*6U-)Zz1@A{J}?`qM*2x4!BOn4 z_2p9p63N}T&9`t)2m6}?J4$O2X^02O_ouSEK}T3+*xn zndFd?<@u4`Qy;C{uEb3!M<__E*qiT|^G8uhX=ztVFP(Yew0Q|=aTIi%t)1-=qszfQ z%fS}x%(UZUP=IY>4lx{B@}55f7u#Kx9@_B~evuc%)rI#8l)_MK#Wzc^0k}+3Kg*Bk z)pF$8x>>{Xy7@7OG^jpGJhtek4>I%r-pK zd(0l=?cl8hLaaqxeoG3QE*Jnnzfb&@S%$WWT2_9>iYY4oc~ga&#>-r{IgMywjrvj< z4UvzM@mh)33p?QpSJ>Ap$5I1Y>hyARD^Na0=^qzRR244ALGN$|j7uCtBCoyeJY9Oj zi^q;BfswuNalphPXi^BidPtLuyw&WP-SjY1W!TDX$0KPyOKOK^yvyI4-xur{T;*w+ z3_MyDT1Qo`=pS&q`L_l}!dSD@7r!ML3D55WD-KBUYl5NUk>%r|pKRb@By16}67<$o z=E`dW>-9A3U)T0cV;a5B9Pwg;O%7s|^(q%&9^dKse}UoG2@VGn!#Hs18(y`bgu2j# zA3IhtAoh0QOHx@#m7v&|bH@ zt|y48=!Hs$PdrvS;?3D&)Hn@2T+o&<&|6l@VX1L!rzN{G5E`raxnV`eZMqm z%~_S;YIV}O$8_TVoDLiA4IMsw_{2@mFXrMr=J!xq7}lyZC|k$k!^E{T7W{PstFu4! zgX=RnNjQg3ginB4G#{;Bf?Ao$)o|w)#P}f^e?>J22RM$^>Fvx$xL*r?!e@BhSKEev ztVhYp;SNfO$E!^aIZHIQ;t!C^xQXh8!o8scVVj(`N7D|m_s+@AEDs- zW|fgg4>WK7(i&Q(LFI=R0AssDg zqMXV^gOnX7>D5Q}-34ATJ)}NDkhHHaBr($#!v`1+h}0;}jK%Qjg?rK%ERlS4;a)wW zYf=d%$LAE1^gAu)etkJ1iP`1qb{rueQc!_>Z-Fd_lTRrqW^bC{VN0;j5*%@SJs~M! zf12PCOK`vvAnw^`6jZ`Ni&;oMrl6R6Eaq79Nd?6mvY6xgszOriy%zJht38p%(2)R) z@T6g~rA;iJ5XvbH=~-?GJ+wuJ#VFa0V}w}pwOKiIl)T~lGN>AT+0(iUh5JZG+mKJ? z511m^x_{N5iHJ_r>*+kpV~Qy@iGWtTXOkV`fAZKd?E~c`JmKucPPlq3vO}J_7ASW+QF9?r0d;WqPekY|2I5ax{zg0 z1(~ME&_p%wuq(vo_0E0ws+9aBwy@2`FZ;6>B|NboI2G?c_1b2$=cjb+Uq!?W0TiDw z9K90TU4J(iyN$urrE_P_l^%cMNu7)cme&S$PO->R>x7U>X*;Tz4U)>KbZHjnY1CDs zx~ZP~5#nStl&Z+Se6N8tz%{A#$;Te=_qmsQ>n%PY;HAgi%qdSK$NEtAM7S`3NM8_| z5@{a5RfeVvD+;Ab?b#UO*(9Ea%IHW{i)Nj9#?O+F zcC1&{KO-66MWYfLf~jq7Ykx%mzFqw_-kP53G@j95Pp&tS^w>0)Rg&3Hf3pQFme2PS z`iT5B`n2*OZ9Qw%Y_BS{(~7@SRjM4<2d$RsmQ$=rY)Gl-Q;OI^MV}?^Z>v2f-N7*xg5G%2`P)ug|EgLfpN+4j zMK92zzki1o+40r}ITGpbSJfhkDql;Bo~ELIa)%b_n+V%;iw}_ND~+0{#MjcIXDIu- z@6;k40sb|^$RGdy)z72nY0>xHp+!2#{cCTLKb!xnZ_#tK=!fpqBEe|eRXs_ri~|-P z()i?XD@@nYwqG5w^T&Tol^Njs%R2eCM_QG{KV7G|qHEl!3Qjx2deV)Ud?)pY@d1fR z3spP%4r3H()EZ0x7!?VQ?1+9Q)_FlMTD2p+JZjCQyNO649^UI&513+zbB6u77BxJO zGLI#Urd6619;d}#FZVq>dSTZTha8#$#acsw*tYX0;;9!nA{hN>r)^rlL~aXZNDBKp zj$c%vTTsuZiTg>x%&1N7zTgn(XI~0CZFN(P+Yi$&@@|10(Aj6sAObeNnw$G^2XtH~ z?N6%>Hg35D^?AMQS6{QduCh5HU!|D-n8ai7(fB9o zlW6HC08Pn(mDAS_ZeBj|F0z(&x*96>%s>4_cC-?(E}xZ2f97cz;#>ig#~Y z#;@Pj)BV=dZ4>uS9Eq+}j=#h0#EB>L=kX8OpA%1hKu=E|Kk-hh_T)T(s4QI8{tg_v zSa9~c>#=2n&8BhHK+Dh0V;8>7VRS8VioClq6$Sm@n|sO`Lmu0xv_HQ_`U%L+Sk}=O zsP(Se7mr$(L~;J$wpLErcw`B(rV6fFY^S&)Ezdy&0U}^kAo;+tBk=6gvq|g8^Si>> zLrdYT+Nn01YVG~tInZ|>W11MVha}r$F+5*U9!lN)zFMsTcDY1eOW$m2Znm_===h}# zDo@3SocB1DmTLR@!f)f%pWaqgdYEEX)ux&D2zfjxnkWU0tugC1IMNF*_+LCE7%c-J z9Rv2cOh!IkM`MXG7PTtsQgd`$la@g)a`FR5qsdv3_z`2EC0sgEmk(a0#M$VVP+HGR zP0+ZU6^AZ$Q}+A$z$G3&)$aW&8@rIX#_614e{5}~^odi;*|x8~)a|vPL7c~y`{H>9 zY_A6KoNhwj@i=vt6YFj&ec9VBI9!L$rfttLlRUyJ&frkXS8`@-+6^S(!z*Vfen6R- z=`l^P^xwUCK}nw0O*AWfUN zho*D0!@7{j^RvVJsk#TR)n}NlM9XlArW6!;eb!yj-Z)Mx zko%E&$dX1oU;d8Gbzl1RuKC#5Yf4i(HamD5jP^0o43>s5^#N%wsAw?7`@zxP&`D<2 zNkbRC;z@0VJqh0+{J^34SXDyXvla##1@VjVF#Cn8m9WM)CWkn@Z=F-~SsU03?Xz@o zo?Wx%@HjALHeC0Ud4GZ7Iz&KQm!@(59>eavAN%hJe<$pC2yI-;L^}&9z|{0tGDqC#M^v0 zIo$-mV~YAs-TD*XfcSah76imy1RU-F)3^Z)UK}%lEs#p=r@y53@RPrwho2ylah-{K zm=sQaE+B7ctU}yLUHAq!5cgXOZ*EJxBRz{H>&;2EO!Yb36gc8^OG~tjY$P8fKuc%_ zunRon&zK;YvOs`2c0=!kfVS@P!a}>Vfb-9SKb}{uLxisJ7?dKuoFYA ztYo3vyhj6Sr-v@u*DtEqnw*%^OqdeuK-i+KA-Z#C-y66CD0U5if~NX&fS(gIOcJ$; zt=-QdpMY}Vk5F1~f4ae>l&BIVgW2Hleg@op6yOAQ$z~<7g3bk86+jCao&5 z#wt9ZYQ~hqZzu9+n2suf&m7}`W0ovK^P@_y&e}$rmEBpI#dNfg=M9AMj{du}KVlu? zo&9+4!VdZLdts*Z1`iz0P@|N{Z;YQ&Wjl16RqhF;Nk0{2-~X_4+wI_dfBL(%yMIEn z?ekf&qWfR(@m~@dS6K;=yqm3jmh7z7m3s!>EoSXpOgzqQXMcQP`!pVALZTi%=`dua z*dCvidk1q%Q;k1KG}wI!%q#l`Q|Sl?#xEVF5((r&E1sbo{#`wdf}mg47g<72@GmQ} z=)ZJjU!${~AD%ovuSxp5BryA-SN-0nM?(ujFn(!dlX(C$7>*FCibtOIAESAe()F{epgmb!e!AFCJzJR0&&|($$$iPaa_GR^ U_so56dTe6n#3XcoWP14j18xCKO8@`> diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/locations.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/locations.cpython-34.pyc deleted file mode 100644 index fbda7d4a5163de604792b22cfa6bff9e882d1570..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4306 zcmaJ_OLH5?5$*vNiw6M`;!C7yS}WU>jaUTjloMB~WG5;MvQ^f@5$MQ5m1}E(9gqty zcH!BDNWx?ep>s~_h3GGI;j@7GPw-9tnj`XwIv54{ISK_0bJWR^;B}tDJazJB4|D6n zyg;48jBZoMHgk)@A`MH_DP{5n3d=OCP^Ut}IqJ-1RGY#o4Qte?(QuwR^BJ{B;Q|fo z)Txt@bsAhEzeHz(I*a6&sk1~r^emG4Ika?bE5xQ zMtp`ETMG@ft<&X_Y!}&h#J>uba3c42=s!%-=M6zDLn-F3_{E{of<} z%m1N&&8Yex`Zzt+T^{vanDPGI7*zueW|2#D4j5l51f9ioL(ID zgT3Us6GTbsg`tzA<9`3TBh%hf&YOnN3tl&g!*MFzU^t3ZdLOiMa-3wMjhrq{W%XS9 z!;f3{TJ9&U$8DxRx^w^5gGX&$kw+sh^2do(kS%(nksqi;=SRV4^84NWAaVLZC>{JA zg|6N(}WhhfHyg80S$T`RH*imvAKbfj#V;jxNWE19X zXUyBIY#Uz5UK*?8W_pzN1ji4bJicXoKg2ir07FVN5H!fq3Fdjm%&DN%q7zge!OLGQ z(GNo78)R8uio9F|-@`$&V`zK95u|4GD)Sv%?vB>OiV#JR`);c=_BgBdNvV z{YFve;zU~`FWuMHAPyq^(x-Pmb#Jxqwsu?Yy_*j|X+3mr-?`hmfAd~TTk%Lnx^T#6 z>Xm4o5p2z3w;&{p~?l4%K^y z?=s1J!x>_mqhq~h4s|mJ-I+3Ie}w~TV<2lqEDCiQvmP&Jp8_T(>OaB+QBP+9R;a27 zCDynFTmf&G5zDhY9pq8{42N$a;DyOO6Sjvk9jnOMRb#-ak2HD%$)v_n6hwQBs{k1C zoF{=w$6hF-C)b_ZUYJNH25i+~kVpWOFHX-X>4ok{$$oIOtLM62BB!g{4NDjIy~ImX zrSnKKZD(w{xF=Jlnh0JPR^ggnn_A(HBVQ`_xe0GzH>qHt!h*2GE5gbt4%>N{@C+J& znlL@a;vAgQ3BqDA4pD9JdwR}bGkP<)GJ1<#|J7$R@e+d>{Gf24O(n9XxP2jvLBv5r zxEz!SCyE_-oywt;FuJE%oHR|~CL2+_y%)w^FWlzs?elHq+wT2FS}JOqnHQtJ{5;O?Ip@1j zn3OP(eO0W84WX{_5&1;*ChzZ}e)Z!JcVvo+2mHt**&C;fAkN~xiib|mi#QHp9PNRz z%Obef<}>kgU2OMMFiKH7yFoN5LZlf)!KB0!uE!IriRn{L3T^uyP!~O|V=<}kv`tud z?gm}uspFl={LVO0JDh3Z4wRjjD@Me5;%s5DM|{;^Y?vx_Ub=ASrgZ%}M_=01HnC|~ z&o97)S1)9bgv$`;+rX=kYrbu6=!IxLtK0~KB<;n+(Fcb(HDNo-LcNVYw|gebF`LJi zgKOZL=N=B3i|&nR2yogY0;1C*omixHC@@*QhtZ-Ro|Y)GiMLC4{pR84+MDSATafizSjSx`m<{Q`4A zqi^YCjs`Glj$DjLia&5q$4l6R;1+1~N5g}xF+^1U(VqL`8Mu?m*AqOkgfM+EOZ3+D7X)^iplH7wTo!XYI!*mX?a+RM-1KK7l(pU00G(7^J=mKya|rnCG4$NnI1- z7R%q};Uf$PCi+hJ=o<^CZf7^C7vxc@JXio(b4i&RGZnrTfzBVuV_oCQ&&4@AlDm(r z?wDt@ejZpiQw!Kq@-YS~)N^*u7EAcnL@iep6|rJ%q06vE6(j#tu(MHI5nH*kD1)BI z&$6iHt5|K~n-`mT^)u*d?C7HF`f<;7bp_AQ7;OYUKwRNWxO6d2nrx{-Ll!dQj{&hV zpjbb*6@}j1EGoZg*$pzy4e3hu4h*47amiFg47$wJOcmEoJOuAH|J0Ha6+OlU8I;CG8cE@i89DBpefxzdoT{=2b`S= z{ttm{Q3pWGPp&RjbE~3mEtG9x=d0yvty(RMjeK5Q0gM11d(mQmQ~{VZv65TFxCW@L W7{FBXOq;FBh3|`UzATokviKLHJ2|KT diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/pep425tags.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/pep425tags.cpython-34.pyc deleted file mode 100644 index 9c473f44ae1bb46a4abe1b40cb294b6d32508d6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8278 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 diff --git a/env/lib/python3.4/site-packages/pip/__pycache__/wheel.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/__pycache__/wheel.cpython-34.pyc deleted file mode 100644 index 8ad2b1f1b456c9213f99d5f37e73ba1e9ebc575b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23853 zcmcJXd2n1ue&74e3gJutM7M>Nw+ZR-wnC?L#}baEgW!-gKpuV&mDI4 zhh5{4TR7wzkGO?LT%+I?3jSTr)epPI5w~!}HIBN4qds@U)%Ur^F}HBcr}M6U+%-

      V%yQrUsUE`8# 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-34.pyc deleted file mode 100644 index 0ab2ad1c6cbb5dbb971a4faa6ea71914b45b1562..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45094 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-34.pyc deleted file mode 100644 index 9e5b960f5788dadee81d1232799a17339b7ba0d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18481 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-34.pyc deleted file mode 100644 index f797b89dd51b276d4092df42410090e1431cd5ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11212 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-34.pyc deleted file mode 100644 index 00ac874981a7befbd5923291448a6e38af71a2c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6595 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-34.pyc deleted file mode 100644 index d5ab84f730da486fd76ce226c7b226baf2209c4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30018 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 SO?fao*uVX+-3QR|vi~2fng>My diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-34.pyc deleted file mode 100644 index da43037a1b07eb180df0d7863d1875fcfb737daf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11822 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 OD3|Vca~U_Eb<vPk6 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-34.pyc deleted file mode 100644 index e4c5ee767a5da54d8e42d91a056da7200879ab46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23092 zcmd6PYj7Odb>8iH0>c3TJ^&IVmmEGoVn|{Ze2BYC^8t#F73EzlMR0c|65#A$x&aP3 zm>Jw2ki-bwvb38hFH2UeBu*@E9#SH2?8LHSDNbA!Clx1-6DL(k{3oqAk8-&ZR;rR8 zsmc$gO3L@0+uhSM07$NOe*|RTx$k@Kx#ymH&bg=ie`fnKfBeRGzVKJ4mHHzU`P+c_ z1RnQi<4V~|-9%_9JEp3Zx`~L1$JEW3vg685sA^m-B-G7>vh1X?Q_4;&yGPl*%FZZz zgR-+~zDM0mD#ucHQ_4xJ_s~&~de!b@@%!k0gK~P+dvSF$gWQeE?w8ztfvev(3sLQua2fw*@t} z6J*u^Xnj&+YtZp9JGOVIxmb|1Q*w4ia$Z5UUCjIXD*{|4hC=@k^Cs+M_1*HNltXc)i4y=t>%*I=1|c8i_E{dP1)nh zJ|?IH8jmacgv5t~Y9}SKL%j!T*{Ld^i%%*0lsd(qm+a3KOiPT8MU_C@Jzud**G z`?AFMp^Gb|Sa#7Hbi5zAuabzFn+ZBTfZWe0`>Nz#4Ty0>RpQDSQ4Yux^aIMl*7&SC z#jF>Uvq#xKt?bv>h6S&if_=(4pq%ZJHHo<%RL()R8s^U%>WqDjn+I)f9^(F+%73o) zZszJjqv|X;wPvYVsn>G#xm+nXS9Km%W~)x_zN1~_R%-J(w|ocHat&R-U$G@)snMwG zW^S&obJs3k8#{S&{Ak8?noEsly{ z<}EMlHZ^)KHkTWY>us8>>xELa(sJy#3>eX@*Go+Rq`kh^ocU6DIjG?$gVO#ff7GBn z%m`|1d$Z=6iG;&k*1E2}%)HYqnn{-lW$;H>C-AsK2pr%NTN)v#3>1vDAYS7-gTmIH z8+R&h4*yHF+){g(00V`|e8TG~7Hg#ir&#nd#o|KUUaB&lEfyD-N>#rkT`b!5a=Dvx{mvvA%WWHHNt~(_8Xb2{;UE&*+gSNxm-DpDo0iM1S*x%)) z{pBvlFa!Q^N_;Njad7~t6`UPtq*P)>siLJGSqhQ6F&3aJ$&IT=G1W|{6@*Fh9QT}R zrqq`$)l4&!%-mA<63Ttc&$ktZk4OfdTw~>qM>Uq*(hn(@lr+nHeD}MaVs^q zS*n#CFNtkab-axiT-VXuh=vH`Ri~DZdkNR6&UuzAJv7}m73fWv3u&lQt2B$n-JD(z z0%dKnhO9xWHQ-~S5L5|KLe%gPl#r~N;7T%iOwgZ5Yd3%@xlXPUFo|5HmMi7lrP*?| zeM~iF5m1CooLWPu0r+c}i&=}-_HwCKt2cAPjdIS%qBqVK4x^H6*N_J7K_CrDDna7vsxQNfTVD3C^n)=6pE}2YiTah zGe)d|RlUd&{k4pY$D*~zd-|-oXdh|TRgnGh^=8e&=YyiLQ;;Co2MHM@#PmV*{5+VL z$3Umn#srJjhG7>PL^0n5gO7;k1%cO4Z=J@AY0@gf5TnS zhlJVOpn9O*OxsJ`DYXuBkrL*SZ^=jCaWtJbr!AkRs{KVA<|Am7mG56zb7IPnZgc;hzY5k zM#O;QZ@;IE191QcO0jqaZGwsSx3{{Kb&L|?dObG3=h_-3E;a?oF2|Vt8tW=jM z1R=;tsJjq(L==F$<0s=JV~9L{G9k$xRe|6W2uhHWPEn^dnqn^!kbX>J0}>EYa#g65qGu>m!@gVvtrY?jSu%#r+oR^RPu`^e~Y0b%~|fif3_fBX%}n!+|V4-U?I=KK&Mz~;5?dsf-A z8WEx}0@ImlX<^nboqHQCT|BBa;DcQVik?_!o;g}VxRpPe<}svCFgVGelV52HF`vgH z!#%Oit=&1#d4DP~)ff!o9n*S_fxZw7)QX)s`;kWas8gaaZ7>)+x6VkBi$yvhj7lsm!6e3b~wk2x2G#i0!KpbkOpai^uFs7h^d8wD`NK`UgvxLOhQ zaM*N+af{HHaLA_B-5w6XoL)7r)FY@@sG3y6`kz?fX2uxfXWa$sLUl`BVy8*<@JDJT zsV>d@Z}li8-EAQIT}ee?`;oxb%S^!Bp%54dF?bui#x@I#_Yq(N3>(xirwlBBMZ&gc zDg9Mz1)A$-buX>-b&L4wSICLXT2v+Is(&J;hQXX;k9yQ2jE<@H32Xws`)v{JF>Og& zi{G|tLsAJ@f>~(3K~vy+BL_j|aZ7K|N?uvBJ1vdz~EbN#;xyrUz)g)16OMTG*vdJog=!1y`u?fD^@uCBzE@fli1#~t^J1zhY#hb;+3k^`UA%n zixk?F>(H)ssZwjYH?BaHIg6J19D>I``tgr{oZsa2-8Xh6BjI_Ow@TF|qX^2>MAq}t zw4W3;RP+U!oV?V$t}iuQFG1ssm*j}ri{EpWq3$=Tm8O^GjM<El%g-h-Cq#79b*K{gj*ckpeb7(d)DV=U<=sG;6vChapfKnyWHXt^)@)vR6f!A zy-d#kyGWfrSDDK}<@c?dAR(VJa?pg zL56M<-OwQD8+{7xK4^ysTAj{Ki5WBpyXtA#z^C8w<>+_TXxkbFsgwFc8%?kS+$%To z8BJYBb8G7f20YJTYNW(mYSy*u#bM|4(g;e;rq)MUM-&|q_|rn3UfQ3K*Auk!GHq<= z&#_Ny&WkU&^W8*w5oKS&BciuT_k;L`@$ffg#f3CCTRpG?1wr14>SlImVcb!J<_;z>%BRa29~OoST>H=z^&K0%R2Q}RHZ3PaTR z;-$3XE>)Xd)AahBhoy28CReeSe-o{Y9WIu#j#^u-)?hHbj(Xw7B2!D?k!ik)h?yYh z+3YYxVD54c`*Q^NG!el7c2PCO^31K$b>7M80Bv@a0n9Z9Fc)U(9EQ@D8SF*y6myU0 zW#2*_mtZREFw9-Sl%CVvMeU4>CXix6-R7=(L5hWcKyC;OU~!`o5-HJz(EFItdE$tT z;ycLqfusp61oD$Nfr*CtD;$o?r#c1``&V$d@;8o0R+khNC0{=-TyUEx|8ad7b#!~i zYnmHG4gNJ$3`UQz?T=ymNWu02+bC$G%?h?+l(lUhqK5ODU=1KXA#;Z)`QMKW(cfND zF?Hm(c3TrBP}_^)yp^N4Qg!sFk)vsu&_B)KIs>sea7pwygBb?<8603R!l2XA5TQ1q zJ25RBL%m5nF42XfG{$4MKOV<18~%&+Sp)IxNOo{@TFee&bb##|g3P_!_s@?)x80kU zpFq*gkB*jBW>?B9x(u}$sxONRqm8=TjHYepemi+&^j2xCbz$u0v^_(OIg-ksM+XN& zrn&(mr|<|p&VYE$wtNq)6|^a80CKQJjXdn0R87doq7HP3zBs_yMy^M|a&ff2kG>E| zs9`DtIJ=GP&aUF>;VHQ|5s4O6aB-qP5XpNpIChE~-cN(e8;Kf?7Axv)c9~Mc?)Ufu z*`YR|nvjl7F8h`{8guhRK^)=&3+47n(hwz(mK!KZ%k>Rzp@t!@L#lx7goAIg<}e$G z8apHtBXSfJV>%cGk_J1*yauKEgj7#Sb!7V05o=e+xX>SlqbF{pyIdtBcSN zwoUcy1F7DlYIC9{^{R)Tqe{?5>&%3Dlu;`gbr-GKQ{V=y2=W)9jye%EAc8#NH9CDcLMa?Xfb4p<~PXdDks2`(>>K!7uw zf}>u}`M0b^P@%De;NmF`xgG}=WnE(s={yUb^q!e_YRKl{A>z8rRqbbK0 z9l>Z2pJ7rYly?yG(iPXP%vYNFHKfqhE*8Je;1Y`yP(pBn=rrokV&YICyaf4)7Y7%i z9s?Cj(@2VJTu(-r9r+w?q$7y?N62w+AW+aA`bERYS_iEWYilfH^~MIES@2&5rM#`Qz=TW06MA6H-kkNXA!2O5%S-O(#|!+PK{ zg>=7kH<Po2^ZC*GrE6Gr0 z(OsMkV8P&Ha4Ntei?ac^3YK@6hIX-i&=`dOU=T&&>r?sUuBAODV(OshGut`%Z$% zZ@6~-^7YHF6>nU4mDyzWp4IG-Mai9Hk@iFu>GWu&Ui@(v(-N0kF(?9 z!G8%HAqo6ykW(k)=iDanxc?YIl<_<8?M%pxn$Y1XKndn>%JBVDhVh>=-2Rl2`%W3B zqf^G;=oCGbLT@9;Y@xRi4vEm)2q#47ZG@8}a5aKgDMTJzo4s#5m0nP|He(#p798_( z634yTUS69qA2)dWLDmN}*&*CW3^v+sB(!VdqS<7_ws4Bog7kb-zZ6YZ9p34*i;+Cn zPCAP%*hReozq68_g*;Hw%PrbA!bUYT!bJfIi+?;{iE1Gsp1v@g>3t&cLk~}@`Yw_M zcBu_nmGU>7C1CDH8g~0^{d7w zs8jj$tCI(UXrz9uMehis4nE(Np!n4YR zAD+8iCj2j!UKT`1B&h0-?yb_dh_i*0rnA|s&M2ulsE_*k%?Ll?S*z)Re%S8B4y z*IqGiW9P948Fg-zjT@(h`Ya)$1g@-|!ajPfT~=%7Q(*fzi-c>S|Bn_)e;w0aYnk4D zu4S5UK5LoupXUJN#A~mT{&|*vV+|<&H1e*0#HE>UhD$@z4foFo63^a0lojACW(kpj z)~Gk?PBzeusy~A&P#*#d;m)Vhjq`DUOMZ0V{w#pI{hYwfw}IoS5@L?*=V_RO6?xoe zN;uca%=;;b8#V#gD zcn(h@UR8vAixIJriZmjt{w0(@->UyCYJ$OrR?2~eyx5g%E}E($ z*v)=y^nMi(EOeuH;A!ZswJC)MeMl+X=uexA99$F^efDS4Sa2gNVl~W}MWIm?Gm45h z`zuV^5DwCED^3y<$pNRnkhk_>0GLbevvD0l`#`!Y=UEq9s zXkCUeweLYkXcbJu9nnnMWSFT^-hn@;#zb%f51yH0;q1Cez#Br^ha8mTSpJ?%a7ig zo|$R&+A&_P^-+RKE5JEJ3c#zk5m!Kt6 zRK$OXeAs3PMfM|mw$$P!l<=)FSr7M%C0S&2SgK*F)W6MQn3~ZVb*#l-Qg0jUI8v+vKJhVfnt>kzC z|HPW|32@VQK)k-Lur4?KZiJhTh42UOeg*gAYw^&>adh8lJtDXINwt}EA^brb!ZM=r z_iX5+P$-J8Sp8||_u_OY;z{FeEl$081$8^S>xJP9_y^tOd(4#pr8X#6 zrKXp_9c|TE6F*!ki1 z5j%}LfnCtpQt>TFv2?q&5$Rq_e+#X{<>0#0Md~6R_y3~z<;`uY7TpG>-mYy{2?$pA zGISBQEb9w3OMRXU73?WsrS_-0c0TM8!ceJ=8&-N6TugYUG5U~$isPf7Db}CvOfds> zXNo>b%tLhW z?#_hCFTX1D@LHLW_Q3hN5OGx5W2-U?YmNRQ-{I|UevB{khMCJ7+hRR9@Ahyd{|^?@ z0!F|^&3clLUM&50Y|p8Xebz!tc5q1pFULCGQ3I2u3)g%F?>&Y^Gy;(w3O~I%ms_qc z1=kn>CpA^jwgew4mn=2B1sbgsoIUB?{_oyF#sYGvL@`BRWLN;!0{@6Mbzz2v70=PA>hOM9NYlN8g(Au&U!A3eX9%D@ID zWKeXHnw~#%?A&;32U?C|lrg=6aJrz`m9#>g0<(^{HjWv`8RHgnptboHUL6^mVKX*z zssa>ZqqrsM zNX_DY#d)wY=DYC#&@yIo{9G&D@FDm6JN98rf13*n305KgHyP)`e;8{SrNu94i7pZp z#c*ZE3pTX)TWmq43i0nS?&tq%%m{BK9%lu3jz(6$0H3r{h@aqh|$KdZV_zec%XYd0Cf1kl`GWZ7!{vm_kLXc1EWyUiML^w)QL@AXW zO_RF*D-6Dj0Ct~U_<@%fJhAJ#GOzy{i$pUG)l+Y0D6<5t(Xj&=^j}hHp)92~#o?*Y z19z=tEDHq|uP4gC0c$8eXbmO@6NB-=IDDy-h$H6zOAYo8rV)?DA;a`p8!V_u*h8De z3v1@c3J7=wwlL3mQ1zX{a8U zHLHaF0%%&pjUCjs7*sa&BXStKr5?LW;Xn0h%4YH=iG>7jqC9Kd_Xc|9F?Dy(I^0Sf zmUY8*eqZREbM3&mJ>&jg$L$(-7Bqu; zL*Nvb1b?IH-$RjcJ~+u(*GAhAf#frUnYLTp@AjFO53;yR+a%8>OaDGf$}A54NF5V+ z+yVke?DJS(%KIK}j^Ev_vNDEuc;nrpu3I^Mv75V;Y*{x2g5e_gr#m}b#?3_4dx-i^f- ztAED{(A#^lM z>ohtPYbCGLTO08LYSa=(VE9Mq!gc!!62LT8#a{zpo%~1`6K&hFP@o`Vx_2-0A{ML( z3uu}_W3&L%6s=dVn1Kp-OD^;YV-gKWEwP<}zaUeLPJRs-o%kgY4DQ>$)00oRP}2OykMR>sX?c(7X?K9HqqX5-?ZuaMCo-40?*9IVU&nTu0dT-3Kyl;) ztv!a?x-O902KGs~=9E=|v(WSpl@iGOj3kTA&deKbJ?{UqghrEzsyZn8kpG^>JGQ4YTkL&<(RjWphE z#OVu9U^)}y=*EGY;`@ufCotc;>YWTZHGw7{5RqUK5kQJz>H55#qrk_E2RF!OY)?U}imd+OLG_zl3g{SSyc{?2cz54n1y$wp%p3?FgU# z_Y8zdT|$g+Zr;Tgy^>J1`2)*m`Hqptlk)AXF4!R3MOW$P2_^X)u$SS9NuSDtu|pQ# zr2RxC848)<{vgu%T*R}cB*VdfY z>&q~ZC?Fxow+JcR;;KwOAIQ(BLDZ4&TJke$gg5I2U(K45kMd2HId%T=7Z4e$;TxRb zTv$jPkPu@S5%$f9=urOaX0M{6mlo*)(m=0o7sG{t?^45Z{T~_pAp^lc8x6aW_XDDV zr?kRZ-)psod?GXOt^W8J(X#=MP&dC?v<#DVAans{oH`b!iW9)thasH7(tnbceqayT z#y(7!!8rT{zz77q3G^h~AP|RlF=LuRC(zyi2v6Qd3Csb%#Tjt<72Znas|!@=Te~~w z(cLKAtsV0@g-({Y`SV$0GUnRi*t(O6naPl0e}sAX%lA*C^XPllJp4xCJV-m7i>wQG zuvru=1?ItbzpzWATY zVOc(Tm>V5&^I#wUne$vPIIt$g+B%CNG$)+;VBZ&AD z4I~g-3@q@CGWli|X*@7rFag-y3eQ}gw7-}BEkPwW;cNN5bcYH)jpXkTzaFmWx>yi* zm;O%-h$sDD82ncTZGvuZ#UG;J`y7h2gEw=M;(C$N%!dvT-kgMJAPUGK1r1~#m?)Wo z^!}7Zk+0eOkRzduk`%NFF-F|%2@X$uI>DJM;brMilHgFpybN~;5nvYr1V68_N8~x- zR_%8TjQ~3gqQfg>OSOBo`h!~VAyR&RfuFO0-+oVV>f&c`dpe~rpiivLW&A`CBu5e1 z%^wkB!=|#hm&}jqe&l*->Os_hZZnlKs))QZk8d{?@l^?Yk&`x=*F;@1EA($T1cwuT z}J7^fPUen=l)&l&TD(Q|CzzKbA*m$0(20oVih zFB|KR4<(0=4c!CjoK3}t4rDhBy}cQBr|3V*K-&{R&h~hJJX^@>LGaC}?@uO?-7(ZZ fG~5fLDtvzihkAz+L;K@69Wu}Yd-2JMjq(2n_SlP2 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-34.pyc deleted file mode 100644 index d5ead5a31b928e2a222b24d70aedc5636da738a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28072 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 N>p|SjUjG{m@eBNei^>21 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/misc.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/misc.cpython-34.pyc deleted file mode 100644 index 608417381151d65fd0f966bd0e4e207856ce061d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1107 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-34.pyc deleted file mode 100644 index 7976184fd61e50ac22e7c97b04ec2df9a43cf1b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17763 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-34.pyc deleted file mode 100644 index 45c077f32f8e04f7d8466da484cb65356523a13c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69535 zcmcG%3w&HxUgvpkRp~8Rw)~Erq~h4ImDq~yBu+XcX*;r=xZ}via@vX7ZlzRJlFOE> zq+2ChDw2LVyr!3T(*r{{G>_piz_L7tonbz7!-o$81H&*o%&^4_Z}_Z--3AthX|h1? z_xC^d-nu2r=_ETVyKbF2_uO;NJ?DS^@AE&O9~|oclQTc?%73T??vGsR?{3mZ`P5(T zcCN(#z|A{%EpStT3rZO`m2su4o65RU&Q0Z9smo1uxl*^A>UO0bH`Qa$^t$<8H`N=b z``lDtobGp1{c(E0O%259K{quRr-$6sP@G=prq;#jVK+7GR(8fe*So3pae9NB+Tbo! zce-48#9i%o;lFi35R`gdjxyYOr5d=G%Nt#JlbhuwHoKJ#uDscmx47BBJz+-IeWXb$e;ZU3D&eEYK+N#&@}?9j=q=YP)IL|*>ZV3rX`7pR(3Q5ksfS#NR`RKssP~eWv)d3={!BB+w_?Z)7$-S7QlGQ zm7k6a_{^NU34}f4D&4O9UROHcj_7O5f9>Pzs4B6q2mRMxcVz0AD?RL{o^_>zZfe|> z4!No0u5{Q8|{)2{R$H}#?` zJ?W+C8+b960-~@l}uVXaAjWhe4KvK zm7jOdmR_<47@hZ9f`PbTC9WVua1L05j&atq{6 zyV9$c`)Zs!LvF#9W-NCm&MlH#bfuEzmg3wJxn)_THCL)yZZ*!WkXv)51y~>x&aIMr!*Rjel|Ev*ABl4tuJlnMO|5_>R|YN7y}DsSkaw?}9R1iW zNQ@f|TI&|VO0_XPyHqVUDz$2}fA_ia^-7)O?q=7)vG+$we)8a<{6hy1 zA3T`fcQUN(&y#<$JY&U1^Shhx-F>R`WWG@dXDjpNv4xfV6Hh$$#F36#9`m(K<*yaO z;(!nyqJrAO(WdRDkz%TH9w*UBs9aKBRXsUGjopQ{uv7s68heCSh>TUlDD2V7jmWt_XUNxyr!sMRo^ zPyKKQ58f(q=hk;{`71qh(5{E$}Uw(t?V3^uBB>$jIKHVRj}J#%=Wc% z#eGKa^buWN)#a!zd0p1)!aG)6j`kd_-lCYhMG1E+uL~vIEser0O1M_0+Gu5paA{m&S?PcHg!@^(_Q}|cnUiD=JAIc*A^aLs4N_q zS*pyJ4qTZjUke|<@u;%wGkqO6s)Y}iD)q*EW#-}OnL_dELM?1O9KjIa+{)G))&Es5 zZzGZ&3Bt$uRm^hHpK_HR=Tm=%iyt2bgaLRxt5GWD+|{fL$8-zUj~opY16TE>ZR{9O zMssqsD?L_kH9md>{b>5JstdGSxSh+ytuOL7nrY=`E7ek~yHwT)j^@HcD)EReT6V2q z!G_9TjwmNvZPb6Bgsl&k9S#PAjY0SnIYq0UgkE=mkG=AbkkEStZhM0--XgHKopvjG z1POqEe{Dtq;vjq~PX6L+?gIBFNBf!&w}G*` zbZw>_=4U}RB|o4GD~-#wDv+rgeq2Mnc=!O9R#%~3tW;Xv8untN6&ws7B)hq;QoUZ7 zuaxqa%Y_m^s3{ojZDos>!&VmbY~$DJe}7?qsca~zHFC;7@w`3Y^SZ)9b*>yftcJ3+ zur!*r>1qYlR!~`Eo+`gg$-0o4>)H}zgFV4euqo3W+#U1>JA?3f@)I!aQXxJzXa7J# zD;DU@UJYFBUd@|^FzdE$ge9+LTt?3`Wl=6g;fJ=c@R>bEl!@I6a94jq!^{)|-}TEj z(acX=QI`vEI3_olP!I34EVlm#9dmsJSm?Dxw}_&q*4BZ*$uAHl^QO~6T0Y_$y>aC> z^Sj;abTI3#^hIw2u|3N30oCwAr>S7^7nt?91O(OYW`TmiG!%5qd5oFbfRTm*O}9;N zGq>m9gSGH!{occ+xvd6*o1L%S$X8P1ZZ_HRTscUA`)Etgc%EASXc>x=g(vN2sWMk-fD&hG z;k81;ukz=(a~srD8r9z>zrKx&>)Rdd&g6sP%wTp;rZ3nUYzo!|>x1w-_loJ&E-GP= z^N&a{H>`9Z;0h}&wYr7W7~kkdR|E}Aesp6ileU$W*zr6wN{xmiJD)dTU`?-n-T)P# z0~{wu`wKrvH^&R}#ie-&NWO8ooG)H37q8ZruH_kvd?9}gKBFA&tw&1}5|ig91ZOV4 zw2&{%&l{P6(ulh#6d^|Se0jN8UT9bazD8f4A&DE8;Y0G3dcF~sjb;_<`O0iuNu`m$ zK?bbQJml;~rExi5X9COhvHY=Oku@EWK2^)ii*3r+YfB*|_Q!S9Yu9)a@oW1gm#TT# zrTj$s<@2NYV)CBF%hn@be`T&pTk3vNh417IdXb+g=S!8@*>YH}Ht48^C@kj-eDnl; zuiB{1EUAq3IPQn~c)2onIX}Z&)ys{s{A4YEgXfZNG;Y+A;jZt`FIDTlFLXJs#OFjS zNb6)Ocj(b4o}IY$2}?in*pX*%eTt+pW_E98Do5@NbU({Pg)ee5oZzAidf6I|o0;~b z&>He>L_b$U{GhrU-K+l<_0+q$xW1#o(IET)sRTs|$g_M5&dxZ{FS=`Zf zW!+ZU7v8cmDp&VMdz)9rYjF3T>54eD*|5esg9C?U%h$uAaA*9pRF7CV*4C-n_&FBN zM6FuhpD(I1ff#UE5j57S4U#EbI}wgD8^*sjH^QjpYqM5)o`uIEM|?c0+gwJwTRAde zm2ZTVMj3Xea{XGZWT?`U)1FgjjK+#6)6Z6x-i6|3!|Em!@&rj4Vl3x z1%jPb%kSgzW^f=Z^W6$ct)LiwnI&oSMnw51TfuTGfYCT#jPbFkc*2lZ_%R20ggu%R zRz7~|1+hcR&kD?rUpinwmNhyF1Z3S&J_6{wVjwjL3(hXy<@hfK3CIO-404AIa>4Rs zlQB7(Z5G?ClLi2^$~c3q#LRnERI{XM6(x$1z=80_vj6X=7l?SNZtQ;kyqDm{=3&A2 zjoJetFXUQU@9Wft8bGF-LCoteEGz&Bt=yGbr8?Tx%IV%zZUF(J)#Zz1K~}AtP}}NR z>y0aWLQ^K;$8~kXF>Qq64F$cK4MDg}UQsvVKaKfOKJ_hJm?u=YC9Z}Sq`}p~$c92F z&EaPYb%5C@2g3K*1VT#h^t5EQ>FHMg^fY~4npb*odU|oGFdyCNnVv4yiqq4n?n-zG z#f)3c&#Akb@Im0}o%gOacw)IB!e;Q_-1A(yS`G{I?VcK$EBi9}vI$V?e7K?xGE?&% z)QcV6RL;BT=KAs4wS}-;mx{&rc5HQT3)c&kdFyVmT^3FR$)fbmdi`Pgc($Y0%6S*P z9+(ura?N-6>D3*sFD*#yWl7dpOlTNtRmAYBmNX9?n6F$d$1C-n_5UOEcCw@Y%6T{a zPYFuR`#RT}!HAc<-VFeMlpejmqmRmY7kylR;@U!ECEd}TodaFg{fH5LXXE%Wdh|+1 zAC>bi`nc(Qh^A1CYr3EL&VC|+_%iRRuQ%!0#g4uz=Uw!5-H9_N)4kl)*~>Ib;Aj7x zjp-ZoYPzGJ%6aGg499t_c~58OIu!!%tYfNgrlVuZdFLH#ZJu13sh1a*;H%Q(_(*40 zuT{Whh(i)I;%-9^7+&zfyBXN8q_^dc{wt@W{~0ol@~KOFU6ZgP6EYn#kn+FF(xx|p zk5)eHEfyYArpsj74 zKYi!;jPt3B5V!=4+{bwnxuJL{g+j~v#Xj5`7^w;ird>Ms+P5gx)9O!GpSZg+-z zu<3dL$pOg&{=}4R(CleO2^2iqH4!2MxDe^VwR+D?KYME8*tu6KKf^SQ_O&v#x-!ol zKQnRq6{RkmvsBNS>G5+Xj-79jIDhV?iSbs?gD;_ zR!(e9NLSL#f+-eZhAP!c15QVvv5pcBX1PDu7WBXvuMe7AI%aPyE}k&HJSOeEAG=K? z^ungaV$j5}+KUEgjKi>Ts|LX&s)^CwHTl7BRs$ME|GL&*yZZKfeicRL)kZ&w!CZG{ zux~Ism<^R*L96c@p47Ae=HFM*_SE za2|LAt1;y_%WVLk0sS13+WYM+j!IQ`9d8X(dB|v zCn3yg9<@*bZBD7MfQ|{ZOyfqmT#dOZA>RaXbg*49(#oGls7mu=5$>r~=U3tkC}ibQEskTSx^Ntd>=+g zPgq}J$Aub{1Fk$ln#b1aVX?M^aveRC6msR|!nK8Ytc>-Q`dGaI`c0HpQBG~Cv7f%z zk;BWDY7`dGVPVuPB40I%WBu{#M&qrXpkw#+ikGJ)L)#h|yAf7V^Q}afSi+kAr0tQK zewY{Ug1mAx`1@0<~b;3rbno(ZqzprC0|A=7jM`B6<;v5j@Q+os6nfZ>c@1} zDi*kfS4F|}Aa{|bN$}HGg}R(fa=_fa43KIzj%mQu6hYI#s4qO=R=!~E_L>m?K(GSr zLj5vseo%^}3)OqDrr=eB`_3PmH3dNJ6K<3>MGibDfz;Tbv_V&ZT+<0DXT4F4eyex8 zX^b}L9fHLN?8k`xh~9d@N_{HT`bO!j(yhSa z)r~D~@l%0vwzhL<^+NT4UWXD8vHH(hfpeA+1%O0Dku#Hg1exsTBDv=wljK)O0s#l zxr57{ij8h>4NSvMiC>^)LwTqGJgPVw)|OXV19N~iE32`B@byjVf#_$eH_mJIL=U%m zP=Lxv?6p=|)?cgJs1!O8^|du{>Y4;O6Z1leicrC@_{d>QQE0t}JOvh6nVxI5*7=`? z8~7c5o66@(reu9~>hN)FhJLx%uwoUjEwqNn9Z&KM@k1DlvL@XQKcyG=v@YMN%XjOd znpe|4(T;BrO*l)!W&6;bVQj<{!FOgj=u7|0WKFXsMa>5CNBA|A8A79$HRa6)ev_M# z5v-4#zM#228sW9sh%7CR^Qk|`g~0}}03p^m1{wib;0B`;E2Nzda|DV3<(eKo;i%thCWyX zpqPOu3$#QpJ@POEDO_MFD`Qy$hbxx9*-M4MJhKEk0p(ze0V&BQW24`rJ8dDITzX!4!|hgv;hd0`$K z%dNkc$$Qu!u7!>^g58-bt={7&PM$t?{>1TC-;2jyp1$zxsq>SqAu^|5Jn`c6=@aii zaXS1VHEqU*GfExf(#n~u#ky#|rl)PC*b0@?L8&hLOWT$=>KVOOpPs_8g!bFKknx+} zPo=*sSQsJUvYX+41@`x#CLRg4XW)Q6S{UnGm_-4G{`4&{G61b*5qie z`M?Ef+C}aqIvUdv92GQ-!+e@U@i5watvz~@gLwBGONr57D4bh<$;iD8 z2yd#9VOVnUuwX?_hAX~nCd+6A`Pnelu(CDm*q=wxp-Xk1X=OV$PYa;T5cHYO8eaP($yJney=z!WS~h9649yoQ4{N^dcWLQytKzo(HDPvmmL z!Hyu`fu{U8Qo{c9-NnbC@c$v|SQXw<`-*g)L z7(Ck#{+1Qt5uflN$wM$!faEo*XOnQF8&M~|QVOa zBdaHq8QVdbY=PJ{dH*oqNg4T!q>7OrkwG5p^&kPb_PL{g+U;ebZntM{+A5DDD#b^^ zLzR#uwG2?paIowVaojQQ12$OC1+e@L&;I_QJG=OYj{g^;CkJ`*)SaGuCiUb_Y;`*W z{>M*dc(Q0<9gmg)=@2+)UGvFRbXX|FRDE8qi)kb}u86~IBNPvBnsFn)_kO%NZ0xUp zQpL>;#(d6toA+RpPizQrwb1rR;JhWaCVWVjJ-UePGVAWd=zyo!L-J5dD0cYcDqtk} z2S~xVdcuhEh&KpjxiRiGJfYM@T@G@=Y9(eAr?>gSTr0PXt$Iz;@lPp~gP7LGNVx3I zpbuIs(lMOb3}e|J?1zc$H&gD$V4x$_+#C~^4qmz#1G~QUG2|##MQ|boT+n>vT)D9n zdUp#?Co!LDAd#abzlM^hVVlw%5i3#za_xl)e^Q>Gzh5t69747k%N1j~VT@El{j>sw zG^}HEN&xHowv9D+6<@7NEbUs4x9KL(?fn#B9`V51ZGH*{^2aZ2iLA;IRrCvC@x2(4 zc@PBcQ8kYJa#gUqELz{9EXglVmK%mN*B%PU9HTLY=gS=CD6|>%a`|dXyDIDmO+=+I zQz@0wl+g2!arwMlIt{BP0^B@4TIJGcw`V;*$WVAm<+xH8b@>Pv=&1=d8vd}TOG%gK zbm`mg-KS|-$6c4(7~BhL+yqJ-4BAtoLKDe!2r255o(|0eT8Hyy(Z`7I@rVZ@ z+jDz*mL{1QF@QEXo&gj;mu-GB1)NpH z)x5;a$O}?>An%!L{vK=bdCbPCS^rEVCzr~2o|a4dVOtF9QNhISz1~5<&wH8};*Z6& zWAtfbp$QYq@$cyJE8iHKkZ}v^y4d81d5l(mc(-!Fsot++)kN9kKBjrvLJ8L;gL)Ru z+q-LwAaue!CQC?|renGWc*dsdzmV{NtQpI=aHstQx^0#wz00fTRpgBEF-;2h;5ow| zi;LPK5jA37aGrd>&FRV(yWJ%o#m^D9yJvitg=vFon@~jf^_YXzzU|{eiCg1pz=GNGD6ytHIN~zE&B#i&R zV%R);DxB`uoG~f=ZQLKiS2@G)9Wz={u5mS;OE3HdZak+M&6AK2FvKj%;YM?s4YruV zV3@VIk#w6uF<|PL+$@jVQhcSS1o2>UWq7zl6rL^o)R@=gdcre5^vVHYeIuAxwcZ zy5AZr7>%wxo$_~F(Gn<3EVE(%G^65iqgLSCnwwU)r`8uWJ)3w+l7*I-rY4z^Shz+{ zqu!0Kzq6g;ht&s((B7^g`Ow=QM9#y{>hd{V4226YLW8(A#8}D%@lSB~4al@{w1a)v zBOV>h4XzvP$1bsR@ZQ0$;i2J?!Ofw{75OB8yo)=^=YOc(GW;jh*sM=p6OLSvN-$q+ zn-9uWd6LNAv{1#D)ciQ(B?hk$BhXU0!KMkZTvD?OM^Bn8?jd6q{YZYF+@)!$EUH#NGLR7zq$Jr$2oseGs>q^noSI$b?vm=tDc#@Nc+Z63Zka>f~tmL_N!M zsI*LutBWOjcIxtb4tf2kq&!AV>#fzVjY$ntFs;q|h2KH374^NJgahN{?9<%V@dhc) zaxwiPO50#=Adz(WCKbg~oAFcoCB(vys0SJq7c@sYS~eN*E$xOEdCFeHui`e0wAZN? z#(eyegIU&Tj(c~ej2!jY8jPBh|8K*S05R?jo_*UE z!^zQ2t-fhg;|4T^^^EP8SjzIQkWnh_L=dmzNQ|;oyeoVX%fc=**X_FD(^|vu#pf@B z;rWkaAHIZb6Cg^YT6nb()|T*T5GE+(=PTDL4fE*&7huSXO%+HVbowL$NZhu^I^KDF z-%{1wzND=kdyb0=j$&Dq83Y%4a~M+#@xz7m+u&e6w{)%T&pXPrm?!Vro)AxPyNz++ zU2IiHe3WTgn9Z9oCx(3luV?{cU_~h}>jU)4R(^wYs|Ub0HwE2k<>YvP(%u;Qq|jbLRbd11XgJ8O97ZYEmx zCVSn_DccD7KO+^RW_zr?>Fq>?)$#>#@u<*R_X21DX&I3HLcZHVi*S zf?nvQ6aMMd6#uknx89n6LaEbcfKAtD996D^qcT0v<6>{y92M|7q&O;Z zXFb+K^S6gbGs~;dj^4F69`@dtPq@r(zsk#nzo?5O4@5|VC?hS`$Y^E5!VN5FaJ_!C zR}Jn(%6z8=cN+=Eu*U3=9K<(e#G@jCq=vae1`(uX`PeW&O2V%gvvELH!6 z8qq64Nm3&qMMeT>diw;>zKkEdr8M~7O3y1YoAIlA(S|%AM1x`KW|;BxKtw74V{>h4 zf0jD^in&B8#u&e@++WjW)!?YmPqzn0RvfH*3BKr5o9o^5vFTGq>Xo4kiI9ivrx|aU z!AM2vO%Aq<(k4izTiA|O<~&6H3#DwKTel;JqqTZ0a{e#cJr)F}d+dp}-%~NTCMW)H z)RZt~n1GMxx<9KtHGgMn{>$8bLyeD+80_xOK+n73xrYb4u=;j|x?kjz{As?A@~I1T ztwGhns?heFx#t*dM+y7}q#K13O5k2ggILW-seCed1Z6(~5%B0SF&Z}k4D=#yr>eR( zKYR@C8A5p@)NTU^sHdg)?v$6=q#*U_EahU~Ke_nCBoN;HdIj>FFXUm=8`7JwE6=3h z$o+>cB^8Q5vaOQ%!L&=lL{WU9{C3i>4Q^AQ1Z=Kq7&k{z#iGn&?~c z1T@_cttO=Kdg-yp+3 zX3(jzU#du{31qJt~hCd2x6)6#k2HMzk&bB}qJ-U)LhX>6yg zy`#bMb*sZxJmhTq#hjFftZToE(EE{5x!=?MRkmp3z1-h`!Rf3XmjW1!38D1HY_ASx zftj=_N<<(Uk5qDwNBDn1d^p{VvBWm@5vB=i+m^OH)q9qSf?NN=yw8uGjE z`@Jq$6UwTuRKtI-TfeD`(R*7Xnp&?fI!G$^Wx89rA~~Tbf2+%6akTu6+Cpfk;;`@rO;O5ub zcqLpDYS|jEl+tsxdtoW#;r}h=eoBCv5Lprlk%g)ng_W}{M3zW5eHO87hg@!PwpAttHptob4eG@0$h+K< z9&+V%=9g%Wwb(~HEn7^U{E7~HQb&Sy70X7_v-y?CkospCWD&l|ng67h1V2f$#1zondNMfR z$>6lfAp&NC3c!!xhb(E>^NpWT$`(hr*BD34ZmS2`Mel0~5yI7gE>PSA+<2X?5jugn zJn(R4!V{pmIXxw7(>bkE8?zh5~V#FH$+WtEK1v! zlXhjFG>(o(O=jV>4cF&8aw#p_qsd?rNDcdoBz3p*Axy>`$_DkJbHe&~&|j<7BZK5B zOOycB%pYc^LLG)}Bj%}P@X$U@lu&YD_q)yoBMSQ9X~_~>&*x=ujNGfVt2{vo`R2}3 z51&an@Ss{Z`N%s<7`>T*jr@=6)v$ zIoJ$CIpi6r1+@`sF&J#go(KZ~%1^q8-SBcVrQ`4cJelKB@$nfThVQ{T@yaZvkbX}`5CkOLp>86-faa_N zG%cQhO|FYiJO0OBE#8^uH_iFR5T^?ZTot;q)6M7)h82pJ4u>37_FB1)J~D z&o+RXEN@WypLD}O)qBu*-pTYq#s_u6t4GG_;0XckZXR}B0@^KrYgTSFW^NtKj06J` zhhoK6CtVQms*a*)f&Qqg&DB534`fuh!sWdY5Z~mdO>_O;beIjV(pl_-Sri=!ng=6+ zM4E5#hMxwOybtLhK0wW;yzIcve@Js)F7#UBRyUYqX`WC5D!YmVDmsMkdwoU&u#Sga zR=xyy6gY)`Xl}V}om!j8yXu`q#K!sXI$vs?N~U=Sa@Jd8F3{0uXwk!kP5PSN>&9uy z&(N#>kZFfAtMHF0=O|%+`c6*@@7Per1J*u&UwBX;ag^mP* z5TWwlX#~tG3O;NPQXXs~clP*s9$Wka)vLPvz16jj$F=rZt+@W-Iqx5U{7_l)K)O~r zGa0S~oj_b8rY!M?XIG6i$lbsj{NBDG`qoqCeVW!sF~bt$N<@Q(QuFyW%tEVo^2CW3 zrYBFF54EtR^jJM&&wh6X{5u7F=u`k=acRX>e6{U~;Y7;bkUgG;_ z)Zw)uSlZ67RUeIC%r-|lR;3a1WJRioI#lFSe}Kz!EVAG9`q;qLx5s$r{lOxBIi7EA zKKvY>Y(m}`^$HDG4Fv*A=m=J}Rp>^Y7QTtq?te^rHHOh=mj(H z?fkWs^f-Uxn&M+yYy10Z><@GiFKV)Ht4rwYkjH_4qTJ8wB1j7VRF}``qOlDBOqVt> zXp5XJZmd&Rcap$R8=%@9(iYFb?C^F3(7RFd_Ks{u1XW3maq_o`)KNb5vrNGnB51`- zx3&#aav(AxB4{E9A~+#f?lhUOM=^xU#Oy`cKtN!GrMnfz`3*!ze835Em$&qQ6(cUI zg@cp)d7q*>s~9fq_bX(v((7D#*p-n#_e61+-yn1@BIrIxAY~Om1bt93nUzL@#n6Ai z(wh_)o6yUIR^}GSV2aKkRCHyP-0I3~BR#AD%hBEKmP1VG$Kss3tcD{BvmBKn5H@uZ z?)W`%&Q8mDQX!Y4GIv|fQwqEs{GeqYU!dU51#V;mI zveFFK`xUHM>4zL~jEP{ZG((q!EI!~AvG|hZGlm~@1SM9Phh6DaS1MSV!JKgfAXYx{ zBukF4!%8!%vyNcHNgExUFS4u^(j|5ci?_h0v;g8f!n`gfo7_W+ z4TTn54(DRFBl_sHwx|C-72Bl}y==z4R=C2hKucAswb1Luen)o)77EMLQP_y^KkK32 zRrc_-*Fj9GmmbN{>&$cl7#{>Avk* z@JqkX1HlaV6c}dEr$8}7J_U|h=Z?tWLEC-AO=ibFqRr>*H-T@jfO3Y#I1DCvUE9fd zJo^-y5+0fyUEh39%Ip?F2&|@jo+>j-ilVJ}6NLUWpU^@Wg+CCgu?1H7;xOyJ!GK_z z;*!@TAp(X*-Wq$n89dBhTU#;zA8Kj!96xo=P}NVeBoAKNNws%x%zxtlZKjb=%9c@3Y(7TYcN_QJl5gh?sU8E_G7d)naWeghpb|Q;7nj zL7<_Cxv=Skc1nK%v3TszVcSmOnU0h)qaBOdb31au6h>+dzBGCM*tsayaBHLI4yG*v zenhUr)4X+SLv&}Zx)kNN`p>d!+6O64ZnvqtDH7uCGLux%jxQd5Q9oCqo32I;lf!@2 zEUxD^wlb7NvXtwiZGg@TXA3s(+Y@>@N+J*-`%mJD>66PH2Gr% z*5nHF#P=`ERfN^!?fQZ%Se0m3!k99uClqz2Qst2|9sM{1n+T0o6=AeSE=94M3 znx0YxYfeun`^ywpt(el$h7vNo8QQ3G4uqPif)9 z>Cp0oK?B;r;_wkA20Kaefhc;&5{#x?Y|VUB0ISVxh@vL7qMmf(J7^Zrb8`>NS& zFaIL5Z+}ul2nxpe)IUL8?YZ=X6pDWnbjeP^AJJ-L;#h-_e%2N%iaAu;OuP649l!Kd z?qb@1fn^8|#ey*H7N3z#U}c-8pXu7JUB1v%3pK&c*ZYZbgN1-7H=nYwFuo8^A@ zjc1%~iqc~BH(2j@CuqGt6K6$bX@~z8mOm~n!tqNt&FKk;3LXVWd~g1{Y}LM|rxt(1 zwubv^Ux(gvhZC~0R|%q@51{mTGGNwj2hks_KNbkaEEWgo9-f;m!2DF7=x@$F)loYQ zC|-ToFvp4km1$5biHXmmHjfQDF$y|E^f=X#C608Ojbo&wDD2OaTq6- zuZ(d<+`Sy$7IggLF?M1H;N^vuol4!Oi<~M<`1AqypV7~Ib$L*iye?v1ZV5a?iLqX0 z+OE_mb@@>)quDq8St{WsEgsdWEIU^v+#F~9P^PJ~SFC2GIf5ll+W{@1%xc{5=d{=_ zFzFUOzEziPx@_kHd(^MA1Pxj-HpFKW?0qVFp9+{oco|jTzJxPhPq%i!S&O z*yq$_mIEx-bXxAF&l`m_9;KM;>JNr-} zaX$4wqc%}JpwkAMIRmRRJsLKcP52oS{;m-{-R*WqnFmG{C~n_|dawh5+qd5Wo8Rdc z@}$27ZCF(yVrAzoom)>)$TgVtlPRC6<#k&-BB1lmoGe$de3AO(0$*2HyMRZ zaj$NFO*ny7ubI?|#@yGrwcX;}u<=e#dFZA;-b+M%+hOe33Q>uGIV?`l6 zn_YVj9;wOA16_)u{8m2k4`2LZbiVD z7ZF0dXpBZpD&rAd9_7;N656PHq9ncM>ZL70_llOb%yq8&9^5Qix;H;eC1OrprxJR z%(JZgT5-HJU>4OXrKnaU!7mh6pz7vHlpGYp{vu*K=>)Vi^ekCW1nG_~EJIuF=P;T0 zfGV3=y#b8K2l?_i(gymVa zMag*jlboltjomd8U?>rB<8y^jSZ0hI%5#<%Bc~;oLC|L0NM(`ZNtrH0zhR9TN~I)> zgHqwhS=lBfXvKRe&g62fU&-U=leLu z#P2lHx?hT)=k5GD(=q~n1;(KU+mHP)xn4vQBNjfSLfzpWrHxYA^9iJ{r6virkMzR{ z;p*CguqH(pfoTX<)4X@}WULY-6Y?dFI1$=DO`Qxp0`xM9Dw~~~4#DRs18O^rW`&5H zxNL(pfo>xj!G*<*2wbRD5V$5Ja4|PjarPDRU*>ax8S)}iIBybAH?DoSZeT6>8cglkztM8>do0T)Q3uz9!bfs8w&l9+M~BuFb^E@@j)#BP-=*5`6aMz8m~ z<%1@0L2Q8$WJUw2t&!B^127E)XXzeN6vY?+1RjblfdE%r-b30B9$x8*3ucSi=GjLrAb@a*{*j35DA5YI%kI!9-<&+g~E^ zP@xjqX5zBX=)gQNjq)ffMU75|_Y06Egq=6aP~S}Q@S*(W65iEvG;TcY%&{jDziBCgf_dfTDOB`}5e zkZN@q^7Qm35rX{M8}w_>XnYemf6)Fc^JZlX$>b;Lp=@YOZQ=2WX+1tinwN5(*zie zs<*Wq@oua?q7_FsOa+v>F%;imG5J8HG^r=xca7a7m&KcUVmQ8G%yQ}m@sD{C9yMJL zug7B7ZDoy^&W3(t6JB?Fzcj(Fy_66jcPYHX3Xfz7 zb`E-*W2$=H@=e#^tYP9X>yXVQDV#ymscqO7WD%jW$SBu`|bdKy&@rZ z8wvU83?$^N4_ri?#(RXLL5hf+)TH3gJZfn6gP98roUj=9yNr*2JplxB`H5!lb)+1i z4=ve{^ox48yfI(A+kJw&@JKcqg?riG!4#b6&ZAQ%8ZC-2MnQt(C7)*2h>LXX0BT}+~vCZ+#GpXTALUr%w(j1(D zd5ljwG@0PmJo&dI7~Fzca<{%lmrrx42nAQf&sRouIi<^&>!Jf?Du2x-{Ckx{{*Pkx zZ6tMToAUlpMgB;aKj$*K+hg00am(}Z3@><>2=AP6YTVBoy7jy+#@&xACCuniy1Mr+ z?TxM8W3gAmPpg)H;L=(b^K_GEkDZ%5;SYS1TEKjHTe+E9Z9e=fmF%k2OO+6}UQx3J zuauYOhbW1jG?>1;&5=po;1E^vvOVWLEwHvS-mE`t*Ds1-Oi_W$Y3si}3O=|+DO@M+g^0xew2Aay`=^|px%&d56G2?M z$ zy%~_J$;cu*O1PA>mwA|RT;@EktZn&6Av%p^8qvsY;6gY~8)8HbvsXT)ylB{?jb?e3 z-L3rL$up;qojWx-9jT}B_ppayZsK}$Iyd|3W8Wj2tIin;pQEa+ni(-ZE=QD3mducp z&zWZ1K_)fv$pmFpo{vq?GKmO)8A_WhZDC;s5I175C%=BgGL0P)Q6OrIzY8xuL2-9Zo?8hCJ9+m16reMyt_gS_x zBt1#-VXg}5C9gg+G^Ys?5X6Cs~)hHD7?Qu57kg@am+eKy!g{mwrv+FE3k&f8B%A5EYdS4yrg@#k9cUj6uC+bQzX>`Edu1bX90Z*6Aa&72v&hf%M5 zfeR)~aZf2=`X&85u8T2w39l7CO>yr>`dQsIx6(G`3Dnq+_Kmt_AoQ$?AJ^rCE=HQg zWVLy#a9lT5!Poo9dqMEEkFsK(y4iW6XrF0jh~1K~L!0nI9bxZ1o~WxRgddm$;6zdq zfcpXjU9-SYo7VSsl%rYjgaMTC9xL3fiB!B@9zs?1s(oFN#wB|aXmH~ z9rf@C|KUFSQKQ-VdYm_0{8e`$q5#;5JOvnx;^iU$LjiuDbs98~eoYM+QvlQg)FsZ! zWz=;fVpbO~mLYc5j8q2E?Ok@8ep!yD5n^6Fs@s|zTa2g#G%YikDAPPQQ3OVrRFA32 zKTi+!ysd4)(A}H;65k$mnU~= zD(k;ywNSMeX8$CEP^`PmCRdxf$9X_quokFs@vk%bIS7X`(tLk{LKN;O^6j`y;|T9T zl%pb^rnbExO}ElI%Qi>C&MDxm^iWzuxbFiWyjZ>T(CEc#WDmZdwcYA(>kwPrUWsTt z-#(rm&GXFDJo2_|{0ms{0X` zK6q%2yo0yr9Xc2q6aRvGDs_Qp7YwgY=;s+O2+wVlZaCaH#SiHId0p%k*DFOg&grri3wfFwb3*j5@__5Q2bp&;Gu)$-pYBzfU)|l3gQEc6p!&gJtk3S4 z6s__&2geKuPNp02SlN4%pe{s{@G$FQFq zk;+vz3`5#rj^mehMWzhTiGZI`CaO_}eq2A3KYN4i< zgpVfjw5`C4RrB4jEz7Hl#hQ?~pd61cFpDh?UMK1qdlXG6V}Kn>^`yPkbsU?BEozKI z9Fogm!r({{)#~x>*F%GMz&MeGkybcZ)vntM? zWDZU9I3EJBn~98hdjqU!Hn8n*1B@>-c$|+2yJ^vxH)+C+Fn=XJs`|}DB){9!V+AKi zd*9vk9BNNbkvFx!SnV*$FWYkoSV74yjmR_&V0vQsO*ja3yGa`_wo@FVFrH4Cv4b3w za@#Pz+5eR0L+I$4-_dBQjXu{LyW`(aPuv5a{V0I>S6M8X0;S&IP2rmJ-Kf7W9xOsNb$VoXkF z?UDgRYgyx~TIf*=TJpXfW8|niSUh3=pz5M=m0Ij3uga1FqyMsa;%#5=XPyaQ7u}D(r5;TI$z#NomzXV-WFpUW05HYdH^#VYB&DuGC)*faFSP)!-IRVdt zL3`g`{4Z19PO&`%m*MM`+ERyc84}y3Osg5pHp1&**34sd2eZ_XYkGE(t>(rQ(Lzf$ zZ+DnWZ{N^46l45CjUUB^KE|zRZ;SCxtqsOZz4YRV5%@cR~wEF>8MYR1}G4g2Az|F zBr?0n^f6W5Al{xAGyW^AmAKi&kJ(pae$4T%gu@y&;{rF#qFL5yJkxBOs3{&>Yq*`o zo~-b;2%8_|;Vzb@*T=)k$*!LA*<8&M7e%u4C;E`(VZ*rO+m6)Thr`4E3c2hD9bG{PM7JY14Od(19t;Lw~+arIGC3Mx~xFkIjwcy<&CW z6OTMPnt%Ekd}a?nni@jMM2z4E`3i+PV;cCRhODUEk}j*D=`44Lk}*LO-mNiNmk?>w zF%~IgfBM#-*gy!uvD6_Z0t^@fADQg)WVePeuDyh!-s^oXVQaKMY4m2Y=T`Ns-9)RqQkTVZTdI}h-TbYNX72EA0_#BFsdqC|;o8lG&(M>* zQf;N)2y@{(ZmQKY`O1stP`>v5W%Tg%m1{fKZjd|gqQTP>FT8bw^VO^Otlc1Y-bI7s z&)bI0wFgv|hT`QgzjlM%c^3^nd-_Yf;mrKiU28YUop;_~@5xgq&%DK$8i>x;cBh)` z0MXgnmui!BjSkR2H1O>2+ThX)xLDxE2U2Y%d!6H(9jyuT*}9VgK3VKAAn+32nrO}D z{K{wo{vnisBbV;HBxO1;U*DJNLVA^yuTS8#mJ@Am=5#oP?Vho1Gfmqs6K#}fMsX#Y z7FVL#8}EE<`Ykz4zYV9E#Fp?WDPEdUSm$Osu4OYFW}+Fzw`|72D~V|yiFuL9zS$9N zV)W6qqU2~NdVRjusI$ZTn}s+2Mi&VT#F7qc!~$=ugknF!FX-~Oy6n{D?{sktU~3&` z3Lksv^!a$RZ10JQ@iWIyO*|L&XppnIvg8_LpQn-yAw(<4YpG0I=3 z{D*W|uZ!Hx!jrm~qDOX7Gq-ViBq^!KL#a+e$;6@LrBF<=SKx@8hN2&a$ipS2gaE@E zx~%B(6}lioa=fB0AJOHby0oc~rH<&81#91tg&e#}Lh;-g1N%q7pS#en;P4h*vxD0< zuOlGPy1_#u-Gjp;J4gCQHjF$n@?Js$4GnG>+`_3#vx5Ufsa-#~b+DIHnC!{)wMZMu z-#Su9`P6lqLYZhU2t8bl`_XYPME@~9T%m%9+GA>RqQ4U!NbzXk{(GU`|1{sUHwG06sEl$vex!_I+?>$fFg?K(F@U&ByA&`*@f)VAncAGn zw_W}Uh>M(QL4w+kaLe4mqFY;Cg_kmSuOoi{=ENb$@>-dh)_pw&=bN2QHC5}@&Q-c>v%7P5F%%vQ~V=}p^SdeavoCf zBVKTd3JKrCgJTx_h@4%i$VcS!|FA_q;&GabV;(7}P#o<@L51QtM+zzwM>tYYp*XgY zf(j*pjp)PCIIs~tdDfN2-5UVI{#0NidUY}mY((F9i)=&@9UBi=|ZV=sp+5!ZbBJO*I+CG&V0x8uD)D$#KP ziu{Oz%ueZIH&p|*T@-OBveJdDL3h&R?g@YNOF&Lh9G(7#`3T_~=Knd`6TfQ^hd6LG z=ju4wu{bb2p_w=!_KyJo=rD*N0dfmUfg^;VjCDiU3xO_?E|B`L{~V!!oo8(O?4wA)FzDjCP!cKUOTm<1jY1}w)){O4LJrwhA+@myGwK=U9_v|^2T4muz%DnlIV!2f0zGQ3(h+Q{nC|ZzitsQYIJKf4j>kQNEH5IiCmFw}l?Wud> zNA9+!sV4!5e0KS};+lO7y&ZzJVC4bJCBS!H39_V4;mK`s)bz>>_8NRNlWXiUx%Cg_ zC>nJ!T@f1(R0tCn!tJ(ffI*AhDXy{GHTKA^Ma>?zFT6sZ`A>ll4Y5_>qZxfH#;ot~ zu<2C3IvatFACOHh{OYWlrKi5jo7|PXdS7+f08E31S6B64qI}TL7>?kZt<(L z4E+VXMxuAetY$Ns1tJ9<0wYYREH#kZ?>@F!z-M1(HV zANJkpw8W580dzoZd-N2zF|^}^CFUpX*7F+Qj&3FQ)D3N&_mQC$(U)0^(LDEje*0Ok zI{h_pb#td`O?CqE;(i+Zz+yR^F+|_Yh7ZlOf z2dJk!%ST($2P<>%219=Fw16?C>EYK41SK=p3gNkGE_ZsU;2#%2w~*DlDt#+je78#bdh4pzk(_AzFB$S!lf0I*W3#)vEZZxA$7$K zXoq26u#0UTyYSkT`ff0z&2ljq2SVU97JqZ zOIbFh@Y)!3k=oAz5(=xfgB@V^qB88`8`l;|gJLP#LDr-l)Sq~R4SZhUQ`Z@}(7-|L z*APB^F);839#486Kt2m-nE${nf4`w+%w3nh!z>?0V1*G;6?fx`5A8MwI+z8Ktt&=_ zq3O19fXY_z#-IQMohPBQUGD4fhP$x%2r5am;a%qQ0Pg;E7vO3VGV|Mr4<{6rv)y^+L@SFW-(8m<7s&DLSxtbb3@>Et~{U41t; zXQFOE;W6K=>c+RGy7Ap{H#{!@m-h34W(W=_=F;Ri#`s&e)fj>X+wKP3icziT79`pR zo2?QTs+*1Wu=@iS9_UR%W6UK)ED$~)bWjc~y!7Md>p}%IlAbno!+cs`7MX&{(G3OK zj>uC7IZ9z-5MhLeL1&(-fS=+l08YA5YFT<2u&vhfdK% zfqYF7Rb+Kv^*CoWM$fPP_zaI9zT@-IZVf|0?~y#84ElZ_2vp=zKBz{ZE3*)5d55$6 zt)nYYbfZ5VRmD>&V~@h3-swGVtThbjhx2ba40gcj>S5@3{Ptn!=)4X#j%U)wp`cLw z<-#?Ku8B+)`QMt+>TN;BYe{{6U;)-N5UgE&3J6zqZxxgjI>!TEX07h7s$&(XV4LWG zjki3JDxj{7Xb;ZqK({OKQK?D=cJqFG_?+M=wUV|CC(cHS4UGpnt z@5%7va16~64%|ie&AGl64v#U85&MJs6@EMSF_eoxYxSKudtzex#S`bB5C669eO4D^ zXFjad=XAMBc{_UC2i+E@W~cG!P4VsDquZ;Po9|Sa?yENlrduZ{7C&;cKx(V6UbtQ^ zDY!}aZF+3k%6Tvgp{;4fp6T?yp1dCyhciLKZR6NFG;un%N?c7AgSyP?>)CfizNH5_ z)qOi9@UHT|`5w+}qpUW<_6NOiDLL}CWSWC9uc8-8Oz+}X^f5l=CXM6@H$Bds5HRxEXDV>UsW|LZ`n#l;z-#MqwESsl;rWdQ{TC?+A8v3>d)du=I z$@_Z^G#>;=v68lB%a}PjYhe8&+)B*8iu|#Wj}4SuwBOM{!IO!H>T;Z??fD(FFvL>Z zy^1HhBBlWsGgv3jdiXsP@Mq`&a1+Ld{t59vJncCJI2*YJ!;;*DK_eG7%9y`27lE_x zg=&+gIK=_Rk0y}pdtgL=&saaJ+NUFC1=ti%$PG>^`b){j>BR;KHJ2|<^k>RRANC!OvL%d@kf!rK3nOVpv5(P1H*KVW_67q=VQ_R>M zk%;N{CYn2~Lm-+ZP)JGQ z&e{|tcj16lALBl*oS=s+NMr!PW&?;p=i}`(F=vR}Zjg)LGa|%cc5Pb`zM5n$$fs)) zA6pBbC-KhK0?Pi>TDVZX2gt9KV2aFcb?3r6WNKSq+E}#y7JX z#F=LTZmsw;nQvbVJuHSXTMTG3wMmeMf8U@Pe=*zq5j0R-wLx8)A*7BT(^vKY!2Qj6 z1K`_;|Nrk0yzLHTa4Z7h9Z+^rzcnHF`?UtvdkFSj7wnvbs3kD$4>K3wdO-bUQmvlo zp!zTY+g2~fc6oSS1;D*)0dT06Lj&7yQ`KvMY7adZtnL=9<|!4!>UyA4kUEmt2ITGp zZu>do2k6umTZ7K%N#8wj6yXo3y??CKKT}GL7D?D&mMapJ*Vg|S387315ncc{J^e7r zSwh*@+C4j{%S+BBq6=*T1A47vx5=XlIHY6Kq+jP@61LmpBJhdA5?Kxz&&Ru6RUHx~ z0gJ4<#jlO^xP7kvJ#niZ78xuMF;#;v)I+u!&9_fxiN_#+N@phH=X*d9vOnLrQA60M zR_ey6`QS!&kh)GnNb{3kQW5sW@_~dBDJ9#Kc)~a=??kFGJkO5Q&+zTTV0~ICQ~t=& z$2@7gN4XqpTK(rvjGsAoeDc)P39s@Jw8R@2i+Z4>%PQimLeC2fWK>b8dw+cA#;mxX zd(gtH_s%ai`TiW4j7svS$<=3^PyH|#Ke=EBW-XcwY%)-_F|)%kJwdEYV4#^0JhBQh z7bkIG7-7X0O!iL0t$1}>q5zhb)O5jl={G&sn;zm>b7hK7z)h6CFO*ko1&Pvx1@^C( zOkrAxYp)eK&sWON&iP{dVii?x5emg-)%Ju*E6ZUwoSK}sCrxLlx-oJuUGwvc>Xj$b zU9+?OmKF{)Y6no+5{JgSrKe`Uxmid;ucyHAdO3R?Jem6yGv5zIt2cg|cyf(H{yipO z)#SGNl7}v8ibYBsTM6Wq*W3_8b5bT*wSqi-Y-0D4@DqEJT%|Z3C?72wWoatO)h5uO z`Sq#Y@R1@kKJX!$48|zmj?&XP;XXi5dd%!xv&%f9(XVS@EEt$7QBK@M=k&BkbTr4F zUke@)ek*T;x>!2d@Drr(;MLQg3`cz~8M9nJIFS9(r_ej(%8~qM?hM!k(h}S-g;6m z4kiP{QIi7ViV$G}+eIi2GJsJWEW)~rAmNR@J`td zTdxh0oV#$v0yy(j_;oVoUcnm6b)%RvZGxnWYVwNRBa)?$BF#^KZ?h>*`N_*sbhEZk zZdY)nD*<~RrD0BTk((B`Wg1&8*P|M* z`xJftzY2)iqx=t8K76Ln|Kor?h2-n)G5PxuA`;u9Rty`eFZOpqBX5uIwEX+x{7o4w zuc{XQ7doWgF)IK%i~@=KZE#T5lLj~#s0S>)S6XRa&Ai?-%EvZJnNgXo#SmLs`43w9 zA=6@$x!=qLBydR>L*<=W!7ef8t~{(_SM~@{c-&$z9mL7~=P~*oGG_T-$};>48FFuL z9CqQG_UK`E-nYi;|{M|t$k8|; z`k1}>5w)Nfd)x-wi^NIhd)(rb?7tL%S1)L*+&GFz$Xh`g?$y*hvf2t|iPXik96BFo zrLlh$mcDI*+=qf1@v~MRo0aPrwAm=JRps|-E^sW}=ve-h+L9QAbY<{rmD!biy(S{! z1Cd4@>^x0mri{L%oL`}aLWwh_8hL9pT^0Fi5cYy)%Rd?Z z7`a|;_BGr#N4{3S?L{hubi*Qq6J@)+(CVf>f&_W={ktk`c2YAN{v@^ND0m`rciCub zw+h@zP0@kO?1~TY^r=bQsoD6c150Z5jR$3`m)}+SJ%*oDUzTQy}wu;~$D-p11b6lWd!? zZe43shz5QSH@#!%pQ~7Q;YP`hU0JxHdhXNRA5~-7xezS_gk>&Nox617r>qxLOjy$E z{*bAkCd;D9!mlS5SuD*SB5dPOD_aV$+dymln8b43!cAz1ua)p7mTA~`sgp%-i6v?H zBhYS$?0tw%xSk;bO>ojZjL9}dRN_}3pY4clBOIUH4dY)X!Rp@-;9Cb518;_N)Q!*RB^Q+Y+F*#R`IH#L6jTZ9Zc7%Y+`0Y zte~>o^t;~8T}&|n(sh8LL6wvt#va!V>I)9Am`S}q*49*CdHFfB-HuqP_uBhH>v<0M zM?VT6aG_SRIP!q1=ByCpe^sHyIhCVr3I&TB2vaK6-@4|{o#hZ6>Co($cVRsR%H(7M zb3m!D)W__W3Pf4W(cfg&L=0?Q-ow&tIl^=&4i?l|B5ka%zz{45{5~xeO|Ki zUMuIrB`N_4zRE#^2j=%4n6F&zKzy{lfSC=+3A<=%so0@QyaedH8RQAWTz_~^y_wr{ z=wO{6rTu$K_M_C?v8Qxk&%wj~l2_`<01cHo$Yi?)F-OVcRLmuDC@4cB({4o5ss+~dG)?gb`O~=l& zQlU%U8|PF1d#d$|5Wr%Q3GO21b61g_m5Dqe#4R4 zDx)DeXTWHCZvF4#T5N5my8?3(b>hp+!4VGy-Yoqr`ET(WblUVoVO`ovYGy^Nb-Kk< zELy5EK1yzn3S1+x_^Xr+&frJ*e_Hic(1stz`EP^e^EM(DOoiOzmyX6Y;(XzU%0hJd zs@pkWOKS|4UsFbhn3P-)EPf9@g?}4V!4Gk-)R^XCbg=Lt(DO0)nV8RtS+7;9s5m=0 zseL61+~wmlrn#1V>>DZ<;kP&|WwtU~+n;A&&rEH;Qq(!XSNG@3jpEqaEK<6fx5X`a zZt+em5_0VEs4vEKfsA0$(8JI_^g75=NO(^sQ7Uf@Q)&2 zL(9g)(jcdcic4_uaq{N_+2v*N4h}5O2Dk?1Nl$nf2Kb?vaW-^mIoSZdCo`i@t0L z9t`fvHV2sGlMMD4Jxu~eh@2z}{J-XhP>bodgj(P@(3*H`9%+d{PLu#MafL{5HHr~g zOAV`mw+snVGqk{axs!onAAITw6Ex`eG~ph zH#!M<)q0itu*BxJ9Ff)lf;`Vu^B0I*Qo8{kHeYBUplJ3ghaK?th@M^w-n=#UkkfT3oI-x&$=QWXot>w`TUW_$|SKCrH3G}7h zSlh;s-_VVRb(z)0STk8fyn)0_C7;kr3dxIiv};xQcn&WsRn%oI^T_Y<;G^(Sb%lUH z=whSSJuDpspWR|kAUYHZhmXWQ7NLMvFqW(#R;jtCj`LlYf@BU&ph-4xV^T9(G%&Ab zT%OhvIDYAZpc>HhaudN|y@HY)TX*pPEHwK;Ibf8u-+2+G!fQbe8WDvkt2F)?6g<#_BuVLZl<+xd8+XqV?yETj*%TxZRRF7XQ zY?tw)AL_;@_WSH}fgF4s3JSw{LJ|LptQTlgES9V$MzP@yt^k`&BhLu|S6LZp@J*N+ zTX?Vmc_NjT!~L@KqSW!EAuoR43b0qwLR4~+4bswD6&Xh|3(bMRlu+QmD(CaP`4rp3 zxjM7vc-|ldF%V0Yu8DPT;S71XMvV%hw=)JIIc8gEB0k5U;NxV{b<=aD>w24Jfr-jz z8B(08IEhv#?bcgaP7WxNXMg(EM{BY!_|}vqo8HYZ5QJY#iB)8))%(RQrl65IPSQyjjo`s5iO{w|j|Qj=|l6&7KeK%3Ky)H(leW#<}WS9RU- zdwu8aYi2yggE7V#z>YoCv4Wd`LI~i1O)bip;-Ll#nT*E+IAhX(H z3aF7Hr7x*!)HWz;(^mZuDSSw(2&K)pN>{C_N>$Z|i26{|G)+Q(|Nq+OaqnCn@p$%} z$3FY)v-etSulMGP0}AYS)~~!NziM8ee6zlJbVSQF!d;VJrSH0-F~epj%JSQQx=gWL zOFhGea?>m}UX;sbVgq?C%KE1TdON=+E=zPUW&*r0q44UAegzc53afk21mDvl=yf#_ z8i)zs{1KVip#;cj&>>Ne5H%n#<60g!4!IGOC=iFfnyk-Wy|unWY)-en3&J;z@RK0? zFbKcwr?LLWO8vE(5dMTn2!awcN!0M~TnD0H`lMS^K>}K{l{@s$cj8g$ffAMQ63@$? z8zv*nJU!U%9z33U5Q9Ju@VA2G+*%kZgLy)JES!wiuYvE zh!t99WjSqH$s$`Hr!2y=;xDwDmX=W@mjn!~z%r)Fc8$WlS5w0cTp`=?&@3p%f!SQD zD}@h~(Mx^o!a(hLkgE+U4^mvsc9{DjWs=X*Fi#7BR9y zHWQo6CQ)gSQ+oBF7*oeu&z#HFS`x34OAbvb?^~GdO*5os&Q=r_WMYz7j_yd1?RcB} zZzf~_(a8RVM)7P(Y9MhPsC7r+Irid}a|8ZlK^-RRySE(4DMi77q<$|~)v*me=^lRD z-==uS6avF%PzWdi97j-y2mO2)GEG-xJcDAuDk$W3ZQ$+D%Kn<039am_R+U1JuuGY6 zWM9_)udp)EE#faOebWtvF2jmfuJiwtEOz)B=yz^t>E9Tsx5q?bNgz^Klr~{R6*Qx! zCG&yEfyF1Sz)3={rY1+*S#3*jVWns8(E{@3Hu+Gx22iAyLTwTq*sLo(^D$Thp})7y z)BX$)fP(7iSqxc#K5YJ`wp+3NUbSx)Rn8Cycxcvgezj}WdJBj&gTG_x?0cjj4n8Q4 z@HT(HCdbe|#wxNrv~Ra`b8zmE|I%yBXytKRC+(G$)q{`)I2y>>`Ga#scOp*k0Gb;) z$0SIfJ&4|EPTwzbsII2bo+m!ewy-|Tm&D$kP{ja;u)2sd529ejt>ufCL6_`#itg6* zGCf6#QYCs^)GHTbz;joe@2e5xbuS-~{eT-^5K3E+7*8k-8!$x-+!S8q(?gSuYlplA z!*SkmxbnWjpCNZ3H!6!g5$fgAcydNCmn^HeR$+N4=-6TFR0e@!xyKNwV z7FM6z@_?WnsQavi?m*oy8Z&WFX0|QQoHFk zSe@%}>#c9O341VL6w+;MDCOZ7hYQ>}W$RWS^aVHwi)f@=_iRyIZ-`#uEb2jz{f;=)i=#{ z>4MnQ%2N7cf%ml(ow5BGXzrZd-=3elKD$dm{1x5v^7!XEb#Uz{oURBXE+ks@E-bCC zaHUZgw_~zOuJJd9=oEj@{QZ8NG}Xb8rp36E9*c8X%V-9Z5hAaSOgh4< z(&!vWWBs>64(N`2x)1XCxt*7Q^IEbk! z36;*h+5mSkPZpbkGwVEB9T{^e{c=XA4>7{zA!$<7SLqkFloE+6WXlxm1Kd)7Z=ZcQ z?Iz#P@4YrgHmjN?mfzzkzpWsCr34iuy zIH-Ph6Sv`XZoxs}Jdis+H@;iicZQ|ddn@FP1z~Nd8css%WZjJO(VEURkTx6WD#tbs z!+EGBvmHY9w3yzJKvFw*qAA4e1cUELSuBIkoWsrgt%e!eh>K441_RPLU~!lnu<=|Z z#uzy2&B~~2z{AY|V@WOh3krKP9mks~4&>ytRdb`aglm!94K@>B#&Hw6>zQ4eDlIh1 z89ixdo+~!yR>law?*rt{R@9Pc<;>mdJSMwKO=iwr63bT(>-UO70 zy9FL%!VNT!w(hDuf@7s#^(HS=_*3Yh|4%PmN9SX)611zPiT%?ADUvK~(VnwOdjNdM z$b*q)IV2KHBatJfYGgf_+f-=dLNbOR z5qB3_5c1Z;e2G88Ujb;{o+`uUEU#RYIx5tuKU58SzI;VTrYtGXc}Y|E41igsY&{^D zy-_eb+yGK%*wk+ZSF^1wQ%#)BCbwLL)+5e)Nsl^LfU(HVEWZZhL-Ya^Ve<)~M>NJ9 zmQF)3g1?5(LMM8#zOg%H^$M^BIw45c0$HcorDaH34WRQQIdqaiqY;pz=W>viT_im> z)breLCj#6Jv#avLr{##GwrVhhkAudS2 zNX&)ohkzA}u4Il9=DMS(8&>2r$&jOnr@*T;6zd~v?ISA}u5@O~5cP0D2$RbE+>Y!u zflIkAZ5QqP4%d>;CBjBHVi~M7y~#^cH*U}i-=)IPJk7IswQjV@VVR7WAs>jFt!m;z zJ{J$$tv}VRUmnQGO0u|DfT@?(8V3Nu-2miODCqOQY?+8+ZnyYbr3pO_o*wpx7ckkw z^)Jy*TK)nWpHTLgL|ub}VlE{ITzUe)gWCu29!+up6Nx(9oG_${iG*J;%@glWeNSZY z4M#PR=7oA}Q&@uD>6}`k>g?P!YqIptqs}bn%c7UpqH>To;r$>Drye9hWiBX0z;tYFL$zn;WuEGv!dqyb zM1dgE2`D1Ov~xCZeuuy5r)hp)>V!;35bN9IiX!h4!%u+FfG)gJa2!`)IQ&xE-qpmq zn!pHOJp5?uSEx>|K6?C()Z@9{*S_-3UV9tukmZVYzMtBG)@TkHxs#WP0wz-0yF9H@(pcNNjq!-OE!e2O=*^`(oj_%^+LA5B9xa`*_g>lm$n9vn zyl{0UVv}mo&4szELv8#8A>Wt4i|kbuf33poj1v;Ss8i=wv(oFEIu-K~83y+1*%x%m zI-ho-d|B6QuU0T(V(Po~3(@ExGWiho81Gv9IE~bXWh|C&{!n9wz49B#^4fCrdak2E zPDdl09bm0ON5wTAPuKU?ho#3N7hCBsteGlQ%TmOM1n3Leze6E}GcPV>i#aH1TJZY- zdO>$M^5Em^-mslY65n7?PMSTjx(fO$JaU}ErW8M?{0pbNil+mTf@o$&g$Cl2=kE4diPLOl9xhWQ@*Y+E$9nP$+ugfJ-iqeZE zD4-vOb%%aihYAF3&bJ7>3ZjYD$m|PxaSdnjvW0n6Gm2GI?8aGk{jy|jJ?R*6I2WXA zRS=8)56+r9&UHEFlm$uMan)QpuMM;f9kL&w;#|=lFpE~T_UUx~hzh?Yh_Fs)xQS74 z4|>R*=yOKuyPRvUbQ&mwhL?HF{~+w;HVN{Lx-wgtYSVEBS9bVD?ZHcI+6f~JDF7NE z@*eg^=k!BLu}KESwaZUE?IFS(in6ho26G=W-<)4tTP;$RNi?ZqdVFPNbI$n%!bt`4 z4%X%PbM$YZHRY>R`m=(47*djrCXp&7ALcmUWqqvv>2HHy1NUhT0=Qu<;TQzXz`7T% znSv4nb%_F=@@fpe0Bf?!=Yq9kVpqr>-s#wBcr-|Yo;Em*)^POwYFf&EF9(uJb zEBJ6^5?JK(vmdJ1P$A|mA89jkeefpx**7%O=ncJ}*5_n^Rs@1PLCnsH9?4x}wDXwBgiskwMqJ6sghl8i(MlDBTIj6h<+OZ-yLok1 za@Wq{n&V6614iEkm@Ra6ss&S@o)G@AQsfQ~fKp_(;4Qp%$XV5h5dmVuRvWO6Q=@No zB$R(!vor14X>OS%3XIq-=jJ5H|Jq`n`VE!^L7;__AnenWneb;bny)|%#`Bca?`GTb zZP@oc7#3fVUu}7}gx6ZKyO!W7t)m0)hrBDENL+W6KAn&Y_Q0JWF#gqQf2&Ut9Mw=- z6L()t{mGMyi-lkytS*+VIZgnX_<&UctgO6>#VZN^aA3fNakbGod|F97(BYBD^(hIs zDI5uWOR-UyK+2CH(HJ1FPx`#3;%`*UFy{(CBy=xJx>SNRl?}GrxX^y8f4;;i{G&cj zeXgNREmvbXnfFWzRfAw%rO)!Dd_pFO!p%;oId~AYzXK#$BlWMv+obI;l0Fpo3kEbGe) zF+O3_JHkhF$K|rOq8*d^2CO?qN3Wb)UtIj2zGH%?Yf$=az&KX73Rpy?x!VTqb`jI% zm{zlEFY(IkMHO;i%s#23pViU(RA?LmpSwExAKm@Djy|QMKUDEqo&Khdocrbvbo3<^ zFX_fBIuc)y{jmzi2q>;A`v(<&ui`&c$jQfU0ij>}u}*)aLdJ&dCpwZwmyLTVq>d;J zov}!oWN0M}ZdJ6v*b{aQiE!D?DoUE+qg&NU;msj1tPM8Q*kDvY4St4v`bE`^{U33t6z6i@EkOwGn>RTK5j6%HmD3HDTb_J zbwEQs3LSH~e}9D~n(R&GI^yig z@hnR{2g4|4(SDJLY>03;3Ad5M&yPg*K4}H4DMKrOWmj@Sqw{>fe98!1NKT7sg@m(` zJcQd(_$ifSA3@=?Qk_@*%AY3JBykX2m0&85rS+Uela!k>f0u16*vkU;-&3m<(J0*A zb_$s!pjEnbivWUz?!*a+6vyO5m_vo+g$gbUDnuUD>&3+h&5U5OHmcwrg@-m#Szdz} zxRvwjY{diGv(^k?N6r4S3Pw1QI<3Lkd+0|Hni3RC0wP5F-<&2lhjC~g=I3f7;9yAj zAdPP9l?s#>!BWKRvyuP_bufsH{AQTf@PD{figRI8SY<-9`DB_#$I-z|%9B5#5&MubVQ&?a)( zHwl@T-kUW3R<#XD7*R6NZS}cl$=kH}s-pl^%*CR`KO$u-tISV;Gj$TUc8*iRlPwQzpc0Sf_uYjy<5l5i_TC<2x!|Q}MgH z@p~L~cg(M?pSW-_HnCheYY5AxXyLJD3IXz^?)W@@K5;lo=gyy}6V1HmBB1Khnae~f zp3|3%rNg$zjXX;db~4GAnH3{mHz(DV2^CEhTU8uT@!zWVK^Z}&b}+FEwEiZu%5z*x^9+XM}% zII1Tu>W0!(948Y+9FXB6YcfP}rtB5liZhZ|JT|;=>fsaj>d$@g=NA_qd2D3i;fIbL zz4x)vg@;c+bYkI{E*yL0*ggEcFWtB=zj0r>aWdUFncq068v%J@Q@T5mUc`ikO+VjV zGP_M3zeB~(saR0)ODdjJaY@A$itadJl*w!-ptez@l9Km%UHerPFQ@=789NoC9CtTXHG#* zw8O1`NO95g165NF%}Ep=jmCD4h6!-QA&ca_i-WJ9D}C- diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py deleted file mode 100644 index cfb318d..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py deleted file mode 100644 index 159e49e..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg deleted file mode 100644 index 1746bd0..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py deleted file mode 100644 index ec28480..0000000 --- a/env/lib/python3.4/site-packages/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("([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 macOS before 10.4, check if -arch and -isysroot - # are in CFLAGS or LDFLAGS and remove them if they are. - # This is needed when building extensions on a 10.3 system - # using a universal build of python. - for key in ('LDFLAGS', 'BASECFLAGS', - # a number of derived variables. These need to be - # patched up as well. - 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): - flags = _CONFIG_VARS[key] - flags = re.sub('-arch\s+\w+\s', ' ', flags) - flags = re.sub('-isysroot [^ \t]*', ' ', flags) - _CONFIG_VARS[key] = flags - else: - # Allow the user to override the architecture flags using - # an environment variable. - # NOTE: This name was introduced by Apple in OSX 10.5 and - # is used by several scripting languages distributed with - # that OS release. - if 'ARCHFLAGS' in os.environ: - arch = os.environ['ARCHFLAGS'] - for key in ('LDFLAGS', 'BASECFLAGS', - # a number of derived variables. These need to be - # patched up as well. - 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): - - flags = _CONFIG_VARS[key] - flags = re.sub('-arch\s+\w+\s', ' ', flags) - flags = flags + ' ' + arch - _CONFIG_VARS[key] = flags - - # If we're on OSX 10.5 or later and the user tries to - # compiles an extension using an SDK that is not present - # on the current machine it is better to not use an SDK - # than to fail. - # - # The major usecase for this is users using a Python.org - # binary installer on OSX 10.6: that installer uses - # the 10.4u SDK, but that SDK is not installed by default - # when you install Xcode. - # - CFLAGS = _CONFIG_VARS.get('CFLAGS', '') - m = re.search('-isysroot\s+(\S+)', CFLAGS) - if m is not None: - sdk = m.group(1) - if not os.path.exists(sdk): - for key in ('LDFLAGS', 'BASECFLAGS', - # a number of derived variables. These need to be - # patched up as well. - 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'): - - flags = _CONFIG_VARS[key] - flags = re.sub('-isysroot\s+\S+(\s|$)', ' ', flags) - _CONFIG_VARS[key] = flags - - if args: - vals = [] - for name in args: - vals.append(_CONFIG_VARS.get(name)) - return vals - else: - return _CONFIG_VARS - - -def get_config_var(name): - """Return the value of a single variable using the dictionary returned by - 'get_config_vars()'. - - Equivalent to get_config_vars().get(name) - """ - return get_config_vars().get(name) - - -def get_platform(): - """Return a string that identifies the current platform. - - This is used mainly to distinguish platform-specific build directories and - platform-specific built distributions. Typically includes the OS name - and version and the architecture (as supplied by 'os.uname()'), - although the exact information included depends on the OS; eg. for IRIX - the architecture isn't particularly important (IRIX only runs on SGI - hardware), but for Linux the kernel version isn't particularly - important. - - Examples of returned values: - linux-i586 - linux-alpha (?) - solaris-2.6-sun4u - irix-5.3 - irix64-6.2 - - Windows will return one of: - win-amd64 (64bit Windows on AMD64 (aka x86_64, Intel64, EM64T, etc) - win-ia64 (64bit Windows on Itanium) - win32 (all others - specifically, sys.platform is returned) - - For other non-POSIX platforms, currently just returns 'sys.platform'. - """ - if os.name == 'nt': - # sniff sys.version for architecture. - prefix = " bit (" - i = sys.version.find(prefix) - if i == -1: - return sys.platform - j = sys.version.find(")", i) - look = sys.version[i+len(prefix):j].lower() - if look == 'amd64': - return 'win-amd64' - if look == 'itanium': - return 'win-ia64' - return sys.platform - - if os.name != "posix" or not hasattr(os, 'uname'): - # XXX what about the architecture? NT is Intel or Alpha, - # Mac OS is M68k or PPC, etc. - return sys.platform - - # Try to distinguish various flavours of Unix - osname, host, release, version, machine = os.uname() - - # Convert the OS name to lowercase, remove '/' characters - # (to accommodate BSD/OS), and translate spaces (for "Power Macintosh") - osname = osname.lower().replace('/', '') - machine = machine.replace(' ', '_') - machine = machine.replace('/', '-') - - if osname[:5] == "linux": - # At least on Linux/Intel, 'machine' is the processor -- - # i386, etc. - # XXX what about Alpha, SPARC, etc? - return "%s-%s" % (osname, machine) - elif osname[:5] == "sunos": - if release[0] >= "5": # SunOS 5 == Solaris 2 - osname = "solaris" - release = "%d.%s" % (int(release[0]) - 3, release[2:]) - # fall through to standard osname-release-machine representation - elif osname[:4] == "irix": # could be "irix64"! - return "%s-%s" % (osname, release) - elif osname[:3] == "aix": - return "%s-%s.%s" % (osname, version, release) - elif osname[:6] == "cygwin": - osname = "cygwin" - rel_re = re.compile(r'[\d.]+') - m = rel_re.match(release) - if m: - release = m.group() - elif osname[:6] == "darwin": - # - # For our purposes, we'll assume that the system version from - # distutils' perspective is what MACOSX_DEPLOYMENT_TARGET is set - # to. This makes the compatibility story a bit more sane because the - # machine is going to compile and link as if it were - # MACOSX_DEPLOYMENT_TARGET. - cfgvars = get_config_vars() - macver = cfgvars.get('MACOSX_DEPLOYMENT_TARGET') - - if True: - # Always calculate the release of the running machine, - # needed to determine if we can build fat binaries or not. - - macrelease = macver - # Get the system version. Reading this plist is a documented - # way to get the system version (see the documentation for - # the Gestalt Manager) - try: - f = open('/System/Library/CoreServices/SystemVersion.plist') - except IOError: - # We're on a plain darwin box, fall back to the default - # behaviour. - pass - else: - try: - m = re.search(r'ProductUserVisibleVersion\s*' - r'(.*?)', f.read()) - finally: - f.close() - if m is not None: - macrelease = '.'.join(m.group(1).split('.')[:2]) - # else: fall back to the default behaviour - - if not macver: - macver = macrelease - - if macver: - release = macver - osname = "macosx" - - if ((macrelease + '.') >= '10.4.' and - '-arch' in get_config_vars().get('CFLAGS', '').strip()): - # The universal build will build fat binaries, but not on - # systems before 10.4 - # - # Try to detect 4-way universal builds, those have machine-type - # 'universal' instead of 'fat'. - - machine = 'fat' - cflags = get_config_vars().get('CFLAGS') - - archs = re.findall('-arch\s+(\S+)', cflags) - archs = tuple(sorted(set(archs))) - - if len(archs) == 1: - machine = archs[0] - elif archs == ('i386', 'ppc'): - machine = 'fat' - elif archs == ('i386', 'x86_64'): - machine = 'intel' - elif archs == ('i386', 'ppc', 'x86_64'): - machine = 'fat3' - elif archs == ('ppc64', 'x86_64'): - machine = 'fat64' - elif archs == ('i386', 'ppc', 'ppc64', 'x86_64'): - machine = 'universal' - else: - raise ValueError( - "Don't know machine value for archs=%r" % (archs,)) - - elif machine == 'i386': - # On OSX the machine type returned by uname is always the - # 32-bit variant, even if the executable architecture is - # the 64-bit variant - if sys.maxsize >= 2**32: - machine = 'x86_64' - - elif machine in ('PowerPC', 'Power_Macintosh'): - # Pick a sane name for the PPC architecture. - # See 'i386' case - if sys.maxsize >= 2**32: - machine = 'ppc64' - else: - machine = 'ppc' - - return "%s-%s-%s" % (osname, release, machine) - - -def get_python_version(): - return _PY_VERSION_SHORT - - -def _print_dict(title, data): - for index, (key, value) in enumerate(sorted(data.items())): - if index == 0: - print('%s: ' % (title)) - print('\t%s = "%s"' % (key, value)) - - -def _main(): - """Display all information sysconfig detains.""" - print('Platform: "%s"' % get_platform()) - print('Python version: "%s"' % get_python_version()) - print('Current installation scheme: "%s"' % _get_default_scheme()) - print() - _print_dict('Paths', get_paths()) - print() - _print_dict('Variables', get_config_vars()) - - -if __name__ == '__main__': - _main() diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py deleted file mode 100644 index d66d856..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py +++ /dev/null @@ -1,2607 +0,0 @@ -#------------------------------------------------------------------- -# tarfile.py -#------------------------------------------------------------------- -# Copyright (C) 2002 Lars Gustaebel -# 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(" self.bufsize: - self.fileobj.write(self.buf[:self.bufsize]) - self.buf = self.buf[self.bufsize:] - - def close(self): - """Close the _Stream object. No operation should be - done on it afterwards. - """ - if self.closed: - return - - if self.mode == "w" and self.comptype != "tar": - self.buf += self.cmp.flush() - - if self.mode == "w" and self.buf: - self.fileobj.write(self.buf) - self.buf = b"" - if self.comptype == "gz": - # The native zlib crc is an unsigned 32-bit integer, but - # the Python wrapper implicitly casts that to a signed C - # long. So, on a 32-bit box self.crc may "look negative", - # while the same crc on a 64-bit box may "look positive". - # To avoid irksome warnings from the `struct` module, force - # it to look positive on all boxes. - self.fileobj.write(struct.pack("= 0: - blocks, remainder = divmod(pos - self.pos, self.bufsize) - for i in range(blocks): - self.read(self.bufsize) - self.read(remainder) - else: - raise StreamError("seeking backwards is not allowed") - return self.pos - - def read(self, size=None): - """Return the next size number of bytes from the stream. - If size is not defined, return all bytes of the stream - up to EOF. - """ - if size is None: - t = [] - while True: - buf = self._read(self.bufsize) - if not buf: - break - t.append(buf) - buf = "".join(t) - else: - buf = self._read(size) - self.pos += len(buf) - return buf - - def _read(self, size): - """Return size bytes from the stream. - """ - if self.comptype == "tar": - return self.__read(size) - - c = len(self.dbuf) - while c < size: - buf = self.__read(self.bufsize) - if not buf: - break - try: - buf = self.cmp.decompress(buf) - except IOError: - raise ReadError("invalid compressed data") - self.dbuf += buf - c += len(buf) - buf = self.dbuf[:size] - self.dbuf = self.dbuf[size:] - return buf - - def __read(self, size): - """Return size bytes from stream. If internal buffer is empty, - read another block from the stream. - """ - c = len(self.buf) - while c < size: - buf = self.fileobj.read(self.bufsize) - if not buf: - break - self.buf += buf - c += len(buf) - buf = self.buf[:size] - self.buf = self.buf[size:] - return buf -# class _Stream - -class _StreamProxy(object): - """Small proxy class that enables transparent compression - detection for the Stream interface (mode 'r|*'). - """ - - def __init__(self, fileobj): - self.fileobj = fileobj - self.buf = self.fileobj.read(BLOCKSIZE) - - def read(self, size): - self.read = self.fileobj.read - return self.buf - - def getcomptype(self): - if self.buf.startswith(b"\037\213\010"): - return "gz" - if self.buf.startswith(b"BZh91"): - return "bz2" - return "tar" - - def close(self): - self.fileobj.close() -# class StreamProxy - -class _BZ2Proxy(object): - """Small proxy class that enables external file object - support for "r:bz2" and "w:bz2" modes. This is actually - a workaround for a limitation in bz2 module's BZ2File - class which (unlike gzip.GzipFile) has no support for - a file object argument. - """ - - blocksize = 16 * 1024 - - def __init__(self, fileobj, mode): - self.fileobj = fileobj - self.mode = mode - self.name = getattr(self.fileobj, "name", None) - self.init() - - def init(self): - import bz2 - self.pos = 0 - if self.mode == "r": - self.bz2obj = bz2.BZ2Decompressor() - self.fileobj.seek(0) - self.buf = b"" - else: - self.bz2obj = bz2.BZ2Compressor() - - def read(self, size): - x = len(self.buf) - while x < size: - raw = self.fileobj.read(self.blocksize) - if not raw: - break - data = self.bz2obj.decompress(raw) - self.buf += data - x += len(data) - - buf = self.buf[:size] - self.buf = self.buf[size:] - self.pos += len(buf) - return buf - - def seek(self, pos): - if pos < self.pos: - self.init() - self.read(pos - self.pos) - - def tell(self): - return self.pos - - def write(self, data): - self.pos += len(data) - raw = self.bz2obj.compress(data) - self.fileobj.write(raw) - - def close(self): - if self.mode == "w": - raw = self.bz2obj.flush() - self.fileobj.write(raw) -# class _BZ2Proxy - -#------------------------ -# Extraction file object -#------------------------ -class _FileInFile(object): - """A thin wrapper around an existing file object that - provides a part of its data as an individual file - object. - """ - - def __init__(self, fileobj, offset, size, blockinfo=None): - self.fileobj = fileobj - self.offset = offset - self.size = size - self.position = 0 - - if blockinfo is None: - blockinfo = [(0, size)] - - # Construct a map with data and zero blocks. - self.map_index = 0 - self.map = [] - lastpos = 0 - realpos = self.offset - for offset, size in blockinfo: - if offset > lastpos: - self.map.append((False, lastpos, offset, None)) - self.map.append((True, offset, offset + size, realpos)) - realpos += size - lastpos = offset + size - if lastpos < self.size: - self.map.append((False, lastpos, self.size, None)) - - def seekable(self): - if not hasattr(self.fileobj, "seekable"): - # XXX gzip.GzipFile and bz2.BZ2File - return True - return self.fileobj.seekable() - - def tell(self): - """Return the current file position. - """ - return self.position - - def seek(self, position): - """Seek to a position in the file. - """ - self.position = position - - def read(self, size=None): - """Read data from the file. - """ - if size is None: - size = self.size - self.position - else: - size = min(size, self.size - self.position) - - buf = b"" - while size > 0: - while True: - data, start, stop, offset = self.map[self.map_index] - if start <= self.position < stop: - break - else: - self.map_index += 1 - if self.map_index == len(self.map): - self.map_index = 0 - length = min(size, stop - self.position) - if data: - self.fileobj.seek(offset + (self.position - start)) - buf += self.fileobj.read(length) - else: - buf += NUL * length - size -= length - self.position += length - return buf -#class _FileInFile - - -class ExFileObject(object): - """File-like object for reading an archive member. - Is returned by TarFile.extractfile(). - """ - blocksize = 1024 - - def __init__(self, tarfile, tarinfo): - self.fileobj = _FileInFile(tarfile.fileobj, - tarinfo.offset_data, - tarinfo.size, - tarinfo.sparse) - self.name = tarinfo.name - self.mode = "r" - self.closed = False - self.size = tarinfo.size - - self.position = 0 - self.buffer = b"" - - def readable(self): - return True - - def writable(self): - return False - - def seekable(self): - return self.fileobj.seekable() - - def read(self, size=None): - """Read at most size bytes from the file. If size is not - present or None, read all data until EOF is reached. - """ - if self.closed: - raise ValueError("I/O operation on closed file") - - buf = b"" - if self.buffer: - if size is None: - buf = self.buffer - self.buffer = b"" - else: - buf = self.buffer[:size] - self.buffer = self.buffer[size:] - - if size is None: - buf += self.fileobj.read() - else: - buf += self.fileobj.read(size - len(buf)) - - self.position += len(buf) - return buf - - # XXX TextIOWrapper uses the read1() method. - read1 = read - - def readline(self, size=-1): - """Read one entire line from the file. If size is present - and non-negative, return a string with at most that - size, which may be an incomplete line. - """ - if self.closed: - raise ValueError("I/O operation on closed file") - - pos = self.buffer.find(b"\n") + 1 - if pos == 0: - # no newline found. - while True: - buf = self.fileobj.read(self.blocksize) - self.buffer += buf - if not buf or b"\n" in buf: - pos = self.buffer.find(b"\n") + 1 - if pos == 0: - # no newline found. - pos = len(self.buffer) - break - - if size != -1: - pos = min(size, pos) - - buf = self.buffer[:pos] - self.buffer = self.buffer[pos:] - self.position += len(buf) - return buf - - def readlines(self): - """Return a list with all remaining lines. - """ - result = [] - while True: - line = self.readline() - if not line: break - result.append(line) - return result - - def tell(self): - """Return the current file position. - """ - if self.closed: - raise ValueError("I/O operation on closed file") - - return self.position - - def seek(self, pos, whence=os.SEEK_SET): - """Seek to a position in the file. - """ - if self.closed: - raise ValueError("I/O operation on closed file") - - if whence == os.SEEK_SET: - self.position = min(max(pos, 0), self.size) - elif whence == os.SEEK_CUR: - if pos < 0: - self.position = max(self.position + pos, 0) - else: - self.position = min(self.position + pos, self.size) - elif whence == os.SEEK_END: - self.position = max(min(self.size + pos, self.size), 0) - else: - raise ValueError("Invalid argument") - - self.buffer = b"" - self.fileobj.seek(self.position) - - def close(self): - """Close the file object. - """ - self.closed = True - - def __iter__(self): - """Get an iterator over the file's lines. - """ - while True: - line = self.readline() - if not line: - break - yield line -#class ExFileObject - -#------------------ -# Exported Classes -#------------------ -class TarInfo(object): - """Informational class which holds the details about an - archive member given by a tar header block. - TarInfo objects are returned by TarFile.getmember(), - TarFile.getmembers() and TarFile.gettarinfo() and are - usually created internally. - """ - - __slots__ = ("name", "mode", "uid", "gid", "size", "mtime", - "chksum", "type", "linkname", "uname", "gname", - "devmajor", "devminor", - "offset", "offset_data", "pax_headers", "sparse", - "tarfile", "_sparse_structs", "_link_target") - - def __init__(self, name=""): - """Construct a TarInfo object. name is the optional name - of the member. - """ - self.name = name # member name - self.mode = 0o644 # file permissions - self.uid = 0 # user id - self.gid = 0 # group id - self.size = 0 # file size - self.mtime = 0 # modification time - self.chksum = 0 # header checksum - self.type = REGTYPE # member type - self.linkname = "" # link name - self.uname = "" # user name - self.gname = "" # group name - self.devmajor = 0 # device major number - self.devminor = 0 # device minor number - - self.offset = 0 # the tar header starts here - self.offset_data = 0 # the file's data starts here - - self.sparse = None # sparse member information - self.pax_headers = {} # pax header information - - # In pax headers the "name" and "linkname" field are called - # "path" and "linkpath". - def _getpath(self): - return self.name - def _setpath(self, name): - self.name = name - path = property(_getpath, _setpath) - - def _getlinkpath(self): - return self.linkname - def _setlinkpath(self, linkname): - self.linkname = linkname - linkpath = property(_getlinkpath, _setlinkpath) - - def __repr__(self): - return "<%s %r at %#x>" % (self.__class__.__name__,self.name,id(self)) - - def get_info(self): - """Return the TarInfo's attributes as a dictionary. - """ - info = { - "name": self.name, - "mode": self.mode & 0o7777, - "uid": self.uid, - "gid": self.gid, - "size": self.size, - "mtime": self.mtime, - "chksum": self.chksum, - "type": self.type, - "linkname": self.linkname, - "uname": self.uname, - "gname": self.gname, - "devmajor": self.devmajor, - "devminor": self.devminor - } - - if info["type"] == DIRTYPE and not info["name"].endswith("/"): - info["name"] += "/" - - return info - - def tobuf(self, format=DEFAULT_FORMAT, encoding=ENCODING, errors="surrogateescape"): - """Return a tar header as a string of 512 byte blocks. - """ - info = self.get_info() - - if format == USTAR_FORMAT: - return self.create_ustar_header(info, encoding, errors) - elif format == GNU_FORMAT: - return self.create_gnu_header(info, encoding, errors) - elif format == PAX_FORMAT: - return self.create_pax_header(info, encoding) - else: - raise ValueError("invalid format") - - def create_ustar_header(self, info, encoding, errors): - """Return the object as a ustar header block. - """ - info["magic"] = POSIX_MAGIC - - if len(info["linkname"]) > LENGTH_LINK: - raise ValueError("linkname is too long") - - if len(info["name"]) > LENGTH_NAME: - info["prefix"], info["name"] = self._posix_split_name(info["name"]) - - return self._create_header(info, USTAR_FORMAT, encoding, errors) - - def create_gnu_header(self, info, encoding, errors): - """Return the object as a GNU header block sequence. - """ - info["magic"] = GNU_MAGIC - - buf = b"" - if len(info["linkname"]) > LENGTH_LINK: - buf += self._create_gnu_long_header(info["linkname"], GNUTYPE_LONGLINK, encoding, errors) - - if len(info["name"]) > LENGTH_NAME: - buf += self._create_gnu_long_header(info["name"], GNUTYPE_LONGNAME, encoding, errors) - - return buf + self._create_header(info, GNU_FORMAT, encoding, errors) - - def create_pax_header(self, info, encoding): - """Return the object as a ustar header block. If it cannot be - represented this way, prepend a pax extended header sequence - with supplement information. - """ - info["magic"] = POSIX_MAGIC - pax_headers = self.pax_headers.copy() - - # Test string fields for values that exceed the field length or cannot - # be represented in ASCII encoding. - for name, hname, length in ( - ("name", "path", LENGTH_NAME), ("linkname", "linkpath", LENGTH_LINK), - ("uname", "uname", 32), ("gname", "gname", 32)): - - if hname in pax_headers: - # The pax header has priority. - continue - - # Try to encode the string as ASCII. - try: - info[name].encode("ascii", "strict") - except UnicodeEncodeError: - pax_headers[hname] = info[name] - continue - - if len(info[name]) > length: - pax_headers[hname] = info[name] - - # Test number fields for values that exceed the field limit or values - # that like to be stored as float. - for name, digits in (("uid", 8), ("gid", 8), ("size", 12), ("mtime", 12)): - if name in pax_headers: - # The pax header has priority. Avoid overflow. - info[name] = 0 - continue - - val = info[name] - if not 0 <= val < 8 ** (digits - 1) or isinstance(val, float): - pax_headers[name] = str(val) - info[name] = 0 - - # Create a pax extended header if necessary. - if pax_headers: - buf = self._create_pax_generic_header(pax_headers, XHDTYPE, encoding) - else: - buf = b"" - - return buf + self._create_header(info, USTAR_FORMAT, "ascii", "replace") - - @classmethod - def create_pax_global_header(cls, pax_headers): - """Return the object as a pax global header block sequence. - """ - return cls._create_pax_generic_header(pax_headers, XGLTYPE, "utf8") - - def _posix_split_name(self, name): - """Split a name longer than 100 chars into a prefix - and a name part. - """ - prefix = name[:LENGTH_PREFIX + 1] - while prefix and prefix[-1] != "/": - prefix = prefix[:-1] - - name = name[len(prefix):] - prefix = prefix[:-1] - - if not prefix or len(name) > LENGTH_NAME: - raise ValueError("name is too long") - return prefix, name - - @staticmethod - def _create_header(info, format, encoding, errors): - """Return a header block. info is a dictionary with file - information, format must be one of the *_FORMAT constants. - """ - parts = [ - stn(info.get("name", ""), 100, encoding, errors), - itn(info.get("mode", 0) & 0o7777, 8, format), - itn(info.get("uid", 0), 8, format), - itn(info.get("gid", 0), 8, format), - itn(info.get("size", 0), 12, format), - itn(info.get("mtime", 0), 12, format), - b" ", # checksum field - info.get("type", REGTYPE), - stn(info.get("linkname", ""), 100, encoding, errors), - info.get("magic", POSIX_MAGIC), - stn(info.get("uname", ""), 32, encoding, errors), - stn(info.get("gname", ""), 32, encoding, errors), - itn(info.get("devmajor", 0), 8, format), - itn(info.get("devminor", 0), 8, format), - stn(info.get("prefix", ""), 155, encoding, errors) - ] - - buf = struct.pack("%ds" % BLOCKSIZE, b"".join(parts)) - chksum = calc_chksums(buf[-BLOCKSIZE:])[0] - buf = buf[:-364] + ("%06o\0" % chksum).encode("ascii") + buf[-357:] - return buf - - @staticmethod - def _create_payload(payload): - """Return the string payload filled with zero bytes - up to the next 512 byte border. - """ - blocks, remainder = divmod(len(payload), BLOCKSIZE) - if remainder > 0: - payload += (BLOCKSIZE - remainder) * NUL - return payload - - @classmethod - def _create_gnu_long_header(cls, name, type, encoding, errors): - """Return a GNUTYPE_LONGNAME or GNUTYPE_LONGLINK sequence - for name. - """ - name = name.encode(encoding, errors) + NUL - - info = {} - info["name"] = "././@LongLink" - info["type"] = type - info["size"] = len(name) - info["magic"] = GNU_MAGIC - - # create extended header + name blocks. - return cls._create_header(info, USTAR_FORMAT, encoding, errors) + \ - cls._create_payload(name) - - @classmethod - def _create_pax_generic_header(cls, pax_headers, type, encoding): - """Return a POSIX.1-2008 extended or global header sequence - that contains a list of keyword, value pairs. The values - must be strings. - """ - # Check if one of the fields contains surrogate characters and thereby - # forces hdrcharset=BINARY, see _proc_pax() for more information. - binary = False - for keyword, value in pax_headers.items(): - try: - value.encode("utf8", "strict") - except UnicodeEncodeError: - binary = True - break - - records = b"" - if binary: - # Put the hdrcharset field at the beginning of the header. - records += b"21 hdrcharset=BINARY\n" - - for keyword, value in pax_headers.items(): - keyword = keyword.encode("utf8") - if binary: - # Try to restore the original byte representation of `value'. - # Needless to say, that the encoding must match the string. - value = value.encode(encoding, "surrogateescape") - else: - value = value.encode("utf8") - - l = len(keyword) + len(value) + 3 # ' ' + '=' + '\n' - n = p = 0 - while True: - n = l + len(str(p)) - if n == p: - break - p = n - records += bytes(str(p), "ascii") + b" " + keyword + b"=" + value + b"\n" - - # We use a hardcoded "././@PaxHeader" name like star does - # instead of the one that POSIX recommends. - info = {} - info["name"] = "././@PaxHeader" - info["type"] = type - info["size"] = len(records) - info["magic"] = POSIX_MAGIC - - # Create pax header + record blocks. - return cls._create_header(info, USTAR_FORMAT, "ascii", "replace") + \ - cls._create_payload(records) - - @classmethod - def frombuf(cls, buf, encoding, errors): - """Construct a TarInfo object from a 512 byte bytes object. - """ - if len(buf) == 0: - raise EmptyHeaderError("empty header") - if len(buf) != BLOCKSIZE: - raise TruncatedHeaderError("truncated header") - if buf.count(NUL) == BLOCKSIZE: - raise EOFHeaderError("end of file header") - - chksum = nti(buf[148:156]) - if chksum not in calc_chksums(buf): - raise InvalidHeaderError("bad checksum") - - obj = cls() - obj.name = nts(buf[0:100], encoding, errors) - obj.mode = nti(buf[100:108]) - obj.uid = nti(buf[108:116]) - obj.gid = nti(buf[116:124]) - obj.size = nti(buf[124:136]) - obj.mtime = nti(buf[136:148]) - obj.chksum = chksum - obj.type = buf[156:157] - obj.linkname = nts(buf[157:257], encoding, errors) - obj.uname = nts(buf[265:297], encoding, errors) - obj.gname = nts(buf[297:329], encoding, errors) - obj.devmajor = nti(buf[329:337]) - obj.devminor = nti(buf[337:345]) - prefix = nts(buf[345:500], encoding, errors) - - # Old V7 tar format represents a directory as a regular - # file with a trailing slash. - if obj.type == AREGTYPE and obj.name.endswith("/"): - obj.type = DIRTYPE - - # The old GNU sparse format occupies some of the unused - # space in the buffer for up to 4 sparse structures. - # Save the them for later processing in _proc_sparse(). - if obj.type == GNUTYPE_SPARSE: - pos = 386 - structs = [] - for i in range(4): - try: - offset = nti(buf[pos:pos + 12]) - numbytes = nti(buf[pos + 12:pos + 24]) - except ValueError: - break - structs.append((offset, numbytes)) - pos += 24 - isextended = bool(buf[482]) - origsize = nti(buf[483:495]) - obj._sparse_structs = (structs, isextended, origsize) - - # Remove redundant slashes from directories. - if obj.isdir(): - obj.name = obj.name.rstrip("/") - - # Reconstruct a ustar longname. - if prefix and obj.type not in GNU_TYPES: - obj.name = prefix + "/" + obj.name - return obj - - @classmethod - def fromtarfile(cls, tarfile): - """Return the next TarInfo object from TarFile object - tarfile. - """ - buf = tarfile.fileobj.read(BLOCKSIZE) - obj = cls.frombuf(buf, tarfile.encoding, tarfile.errors) - obj.offset = tarfile.fileobj.tell() - BLOCKSIZE - return obj._proc_member(tarfile) - - #-------------------------------------------------------------------------- - # The following are methods that are called depending on the type of a - # member. The entry point is _proc_member() which can be overridden in a - # subclass to add custom _proc_*() methods. A _proc_*() method MUST - # implement the following - # operations: - # 1. Set self.offset_data to the position where the data blocks begin, - # if there is data that follows. - # 2. Set tarfile.offset to the position where the next member's header will - # begin. - # 3. Return self or another valid TarInfo object. - def _proc_member(self, tarfile): - """Choose the right processing method depending on - the type and call it. - """ - if self.type in (GNUTYPE_LONGNAME, GNUTYPE_LONGLINK): - return self._proc_gnulong(tarfile) - elif self.type == GNUTYPE_SPARSE: - return self._proc_sparse(tarfile) - elif self.type in (XHDTYPE, XGLTYPE, SOLARIS_XHDTYPE): - return self._proc_pax(tarfile) - else: - return self._proc_builtin(tarfile) - - def _proc_builtin(self, tarfile): - """Process a builtin type or an unknown type which - will be treated as a regular file. - """ - self.offset_data = tarfile.fileobj.tell() - offset = self.offset_data - if self.isreg() or self.type not in SUPPORTED_TYPES: - # Skip the following data blocks. - offset += self._block(self.size) - tarfile.offset = offset - - # Patch the TarInfo object with saved global - # header information. - self._apply_pax_info(tarfile.pax_headers, tarfile.encoding, tarfile.errors) - - return self - - def _proc_gnulong(self, tarfile): - """Process the blocks that hold a GNU longname - or longlink member. - """ - buf = tarfile.fileobj.read(self._block(self.size)) - - # Fetch the next header and process it. - try: - next = self.fromtarfile(tarfile) - except HeaderError: - raise SubsequentHeaderError("missing or bad subsequent header") - - # Patch the TarInfo object from the next header with - # the longname information. - next.offset = self.offset - if self.type == GNUTYPE_LONGNAME: - next.name = nts(buf, tarfile.encoding, tarfile.errors) - elif self.type == GNUTYPE_LONGLINK: - next.linkname = nts(buf, tarfile.encoding, tarfile.errors) - - return next - - def _proc_sparse(self, tarfile): - """Process a GNU sparse header plus extra headers. - """ - # We already collected some sparse structures in frombuf(). - structs, isextended, origsize = self._sparse_structs - del self._sparse_structs - - # Collect sparse structures from extended header blocks. - while isextended: - buf = tarfile.fileobj.read(BLOCKSIZE) - pos = 0 - for i in range(21): - try: - offset = nti(buf[pos:pos + 12]) - numbytes = nti(buf[pos + 12:pos + 24]) - except ValueError: - break - if offset and numbytes: - structs.append((offset, numbytes)) - pos += 24 - isextended = bool(buf[504]) - self.sparse = structs - - self.offset_data = tarfile.fileobj.tell() - tarfile.offset = self.offset_data + self._block(self.size) - self.size = origsize - return self - - def _proc_pax(self, tarfile): - """Process an extended or global header as described in - POSIX.1-2008. - """ - # Read the header information. - buf = tarfile.fileobj.read(self._block(self.size)) - - # A pax header stores supplemental information for either - # the following file (extended) or all following files - # (global). - if self.type == XGLTYPE: - pax_headers = tarfile.pax_headers - else: - pax_headers = tarfile.pax_headers.copy() - - # Check if the pax header contains a hdrcharset field. This tells us - # the encoding of the path, linkpath, uname and gname fields. Normally, - # these fields are UTF-8 encoded but since POSIX.1-2008 tar - # implementations are allowed to store them as raw binary strings if - # the translation to UTF-8 fails. - match = re.search(br"\d+ hdrcharset=([^\n]+)\n", buf) - if match is not None: - pax_headers["hdrcharset"] = match.group(1).decode("utf8") - - # For the time being, we don't care about anything other than "BINARY". - # The only other value that is currently allowed by the standard is - # "ISO-IR 10646 2000 UTF-8" in other words UTF-8. - hdrcharset = pax_headers.get("hdrcharset") - if hdrcharset == "BINARY": - encoding = tarfile.encoding - else: - encoding = "utf8" - - # Parse pax header information. A record looks like that: - # "%d %s=%s\n" % (length, keyword, value). length is the size - # of the complete record including the length field itself and - # the newline. keyword and value are both UTF-8 encoded strings. - regex = re.compile(br"(\d+) ([^=]+)=") - pos = 0 - while True: - match = regex.match(buf, pos) - if not match: - break - - length, keyword = match.groups() - length = int(length) - value = buf[match.end(2) + 1:match.start(1) + length - 1] - - # Normally, we could just use "utf8" as the encoding and "strict" - # as the error handler, but we better not take the risk. For - # example, GNU tar <= 1.23 is known to store filenames it cannot - # translate to UTF-8 as raw strings (unfortunately without a - # hdrcharset=BINARY header). - # We first try the strict standard encoding, and if that fails we - # fall back on the user's encoding and error handler. - keyword = self._decode_pax_field(keyword, "utf8", "utf8", - tarfile.errors) - if keyword in PAX_NAME_FIELDS: - value = self._decode_pax_field(value, encoding, tarfile.encoding, - tarfile.errors) - else: - value = self._decode_pax_field(value, "utf8", "utf8", - tarfile.errors) - - pax_headers[keyword] = value - pos += length - - # Fetch the next header. - try: - next = self.fromtarfile(tarfile) - except HeaderError: - raise SubsequentHeaderError("missing or bad subsequent header") - - # Process GNU sparse information. - if "GNU.sparse.map" in pax_headers: - # GNU extended sparse format version 0.1. - self._proc_gnusparse_01(next, pax_headers) - - elif "GNU.sparse.size" in pax_headers: - # GNU extended sparse format version 0.0. - self._proc_gnusparse_00(next, pax_headers, buf) - - elif pax_headers.get("GNU.sparse.major") == "1" and pax_headers.get("GNU.sparse.minor") == "0": - # GNU extended sparse format version 1.0. - self._proc_gnusparse_10(next, pax_headers, tarfile) - - if self.type in (XHDTYPE, SOLARIS_XHDTYPE): - # Patch the TarInfo object with the extended header info. - next._apply_pax_info(pax_headers, tarfile.encoding, tarfile.errors) - next.offset = self.offset - - if "size" in pax_headers: - # If the extended header replaces the size field, - # we need to recalculate the offset where the next - # header starts. - offset = next.offset_data - if next.isreg() or next.type not in SUPPORTED_TYPES: - offset += next._block(next.size) - tarfile.offset = offset - - return next - - def _proc_gnusparse_00(self, next, pax_headers, buf): - """Process a GNU tar extended sparse header, version 0.0. - """ - offsets = [] - for match in re.finditer(br"\d+ GNU.sparse.offset=(\d+)\n", buf): - offsets.append(int(match.group(1))) - numbytes = [] - for match in re.finditer(br"\d+ GNU.sparse.numbytes=(\d+)\n", buf): - numbytes.append(int(match.group(1))) - next.sparse = list(zip(offsets, numbytes)) - - def _proc_gnusparse_01(self, next, pax_headers): - """Process a GNU tar extended sparse header, version 0.1. - """ - sparse = [int(x) for x in pax_headers["GNU.sparse.map"].split(",")] - next.sparse = list(zip(sparse[::2], sparse[1::2])) - - def _proc_gnusparse_10(self, next, pax_headers, tarfile): - """Process a GNU tar extended sparse header, version 1.0. - """ - fields = None - sparse = [] - buf = tarfile.fileobj.read(BLOCKSIZE) - fields, buf = buf.split(b"\n", 1) - fields = int(fields) - while len(sparse) < fields * 2: - if b"\n" not in buf: - buf += tarfile.fileobj.read(BLOCKSIZE) - number, buf = buf.split(b"\n", 1) - sparse.append(int(number)) - next.offset_data = tarfile.fileobj.tell() - next.sparse = list(zip(sparse[::2], sparse[1::2])) - - def _apply_pax_info(self, pax_headers, encoding, errors): - """Replace fields with supplemental information from a previous - pax extended or global header. - """ - for keyword, value in pax_headers.items(): - if keyword == "GNU.sparse.name": - setattr(self, "path", value) - elif keyword == "GNU.sparse.size": - setattr(self, "size", int(value)) - elif keyword == "GNU.sparse.realsize": - setattr(self, "size", int(value)) - elif keyword in PAX_FIELDS: - if keyword in PAX_NUMBER_FIELDS: - try: - value = PAX_NUMBER_FIELDS[keyword](value) - except ValueError: - value = 0 - if keyword == "path": - value = value.rstrip("/") - setattr(self, keyword, value) - - self.pax_headers = pax_headers.copy() - - def _decode_pax_field(self, value, encoding, fallback_encoding, fallback_errors): - """Decode a single field from a pax record. - """ - try: - return value.decode(encoding, "strict") - except UnicodeDecodeError: - return value.decode(fallback_encoding, fallback_errors) - - def _block(self, count): - """Round up a byte count by BLOCKSIZE and return it, - e.g. _block(834) => 1024. - """ - blocks, remainder = divmod(count, BLOCKSIZE) - if remainder: - blocks += 1 - return blocks * BLOCKSIZE - - def isreg(self): - return self.type in REGULAR_TYPES - def isfile(self): - return self.isreg() - def isdir(self): - return self.type == DIRTYPE - def issym(self): - return self.type == SYMTYPE - def islnk(self): - return self.type == LNKTYPE - def ischr(self): - return self.type == CHRTYPE - def isblk(self): - return self.type == BLKTYPE - def isfifo(self): - return self.type == FIFOTYPE - def issparse(self): - return self.sparse is not None - def isdev(self): - return self.type in (CHRTYPE, BLKTYPE, FIFOTYPE) -# class TarInfo - -class TarFile(object): - """The TarFile Class provides an interface to tar archives. - """ - - debug = 0 # May be set from 0 (no msgs) to 3 (all msgs) - - dereference = False # If true, add content of linked file to the - # tar file, else the link. - - ignore_zeros = False # If true, skips empty or invalid blocks and - # continues processing. - - errorlevel = 1 # If 0, fatal errors only appear in debug - # messages (if debug >= 0). If > 0, errors - # are passed to the caller as exceptions. - - format = DEFAULT_FORMAT # The format to use when creating an archive. - - encoding = ENCODING # Encoding for 8-bit character strings. - - errors = None # Error handler for unicode conversion. - - tarinfo = TarInfo # The default TarInfo class to use. - - fileobject = ExFileObject # The default ExFileObject class to use. - - def __init__(self, name=None, mode="r", fileobj=None, format=None, - tarinfo=None, dereference=None, ignore_zeros=None, encoding=None, - errors="surrogateescape", pax_headers=None, debug=None, errorlevel=None): - """Open an (uncompressed) tar archive `name'. `mode' is either 'r' to - read from an existing archive, 'a' to append data to an existing - file or 'w' to create a new file overwriting an existing one. `mode' - defaults to 'r'. - If `fileobj' is given, it is used for reading or writing data. If it - can be determined, `mode' is overridden by `fileobj's mode. - `fileobj' is not closed, when TarFile is closed. - """ - if len(mode) > 1 or mode not in "raw": - raise ValueError("mode must be 'r', 'a' or 'w'") - self.mode = mode - self._mode = {"r": "rb", "a": "r+b", "w": "wb"}[mode] - - if not fileobj: - if self.mode == "a" and not os.path.exists(name): - # Create nonexistent files in append mode. - self.mode = "w" - self._mode = "wb" - fileobj = bltn_open(name, self._mode) - self._extfileobj = False - else: - if name is None and hasattr(fileobj, "name"): - name = fileobj.name - if hasattr(fileobj, "mode"): - self._mode = fileobj.mode - self._extfileobj = True - self.name = os.path.abspath(name) if name else None - self.fileobj = fileobj - - # Init attributes. - if format is not None: - self.format = format - if tarinfo is not None: - self.tarinfo = tarinfo - if dereference is not None: - self.dereference = dereference - if ignore_zeros is not None: - self.ignore_zeros = ignore_zeros - if encoding is not None: - self.encoding = encoding - self.errors = errors - - if pax_headers is not None and self.format == PAX_FORMAT: - self.pax_headers = pax_headers - else: - self.pax_headers = {} - - if debug is not None: - self.debug = debug - if errorlevel is not None: - self.errorlevel = errorlevel - - # Init datastructures. - self.closed = False - self.members = [] # list of members as TarInfo objects - self._loaded = False # flag if all members have been read - self.offset = self.fileobj.tell() - # current position in the archive file - self.inodes = {} # dictionary caching the inodes of - # archive members already added - - try: - if self.mode == "r": - self.firstmember = None - self.firstmember = self.next() - - if self.mode == "a": - # Move to the end of the archive, - # before the first empty block. - while True: - self.fileobj.seek(self.offset) - try: - tarinfo = self.tarinfo.fromtarfile(self) - self.members.append(tarinfo) - except EOFHeaderError: - self.fileobj.seek(self.offset) - break - except HeaderError as e: - raise ReadError(str(e)) - - if self.mode in "aw": - self._loaded = True - - if self.pax_headers: - buf = self.tarinfo.create_pax_global_header(self.pax_headers.copy()) - self.fileobj.write(buf) - self.offset += len(buf) - except: - if not self._extfileobj: - self.fileobj.close() - self.closed = True - raise - - #-------------------------------------------------------------------------- - # Below are the classmethods which act as alternate constructors to the - # TarFile class. The open() method is the only one that is needed for - # public use; it is the "super"-constructor and is able to select an - # adequate "sub"-constructor for a particular compression using the mapping - # from OPEN_METH. - # - # This concept allows one to subclass TarFile without losing the comfort of - # the super-constructor. A sub-constructor is registered and made available - # by adding it to the mapping in OPEN_METH. - - @classmethod - def open(cls, name=None, mode="r", fileobj=None, bufsize=RECORDSIZE, **kwargs): - """Open a tar archive for reading, writing or appending. Return - an appropriate TarFile class. - - mode: - 'r' or 'r:*' open for reading with transparent compression - 'r:' open for reading exclusively uncompressed - 'r:gz' open for reading with gzip compression - 'r:bz2' open for reading with bzip2 compression - 'a' or 'a:' open for appending, creating the file if necessary - 'w' or 'w:' open for writing without compression - 'w:gz' open for writing with gzip compression - 'w:bz2' open for writing with bzip2 compression - - 'r|*' open a stream of tar blocks with transparent compression - 'r|' open an uncompressed stream of tar blocks for reading - 'r|gz' open a gzip compressed stream of tar blocks - 'r|bz2' open a bzip2 compressed stream of tar blocks - 'w|' open an uncompressed stream for writing - 'w|gz' open a gzip compressed stream for writing - 'w|bz2' open a bzip2 compressed stream for writing - """ - - if not name and not fileobj: - raise ValueError("nothing to open") - - if mode in ("r", "r:*"): - # Find out which *open() is appropriate for opening the file. - for comptype in cls.OPEN_METH: - func = getattr(cls, cls.OPEN_METH[comptype]) - if fileobj is not None: - saved_pos = fileobj.tell() - try: - return func(name, "r", fileobj, **kwargs) - except (ReadError, CompressionError) as e: - if fileobj is not None: - fileobj.seek(saved_pos) - continue - raise ReadError("file could not be opened successfully") - - elif ":" in mode: - filemode, comptype = mode.split(":", 1) - filemode = filemode or "r" - comptype = comptype or "tar" - - # Select the *open() function according to - # given compression. - if comptype in cls.OPEN_METH: - func = getattr(cls, cls.OPEN_METH[comptype]) - else: - raise CompressionError("unknown compression type %r" % comptype) - return func(name, filemode, fileobj, **kwargs) - - elif "|" in mode: - filemode, comptype = mode.split("|", 1) - filemode = filemode or "r" - comptype = comptype or "tar" - - if filemode not in "rw": - raise ValueError("mode must be 'r' or 'w'") - - stream = _Stream(name, filemode, comptype, fileobj, bufsize) - try: - t = cls(name, filemode, stream, **kwargs) - except: - stream.close() - raise - t._extfileobj = False - return t - - elif mode in "aw": - return cls.taropen(name, mode, fileobj, **kwargs) - - raise ValueError("undiscernible mode") - - @classmethod - def taropen(cls, name, mode="r", fileobj=None, **kwargs): - """Open uncompressed tar archive name for reading or writing. - """ - if len(mode) > 1 or mode not in "raw": - raise ValueError("mode must be 'r', 'a' or 'w'") - return cls(name, mode, fileobj, **kwargs) - - @classmethod - def gzopen(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs): - """Open gzip compressed tar archive name for reading or writing. - Appending is not allowed. - """ - if len(mode) > 1 or mode not in "rw": - raise ValueError("mode must be 'r' or 'w'") - - try: - import gzip - gzip.GzipFile - except (ImportError, AttributeError): - raise CompressionError("gzip module is not available") - - extfileobj = fileobj is not None - try: - fileobj = gzip.GzipFile(name, mode + "b", compresslevel, fileobj) - t = cls.taropen(name, mode, fileobj, **kwargs) - except IOError: - if not extfileobj and fileobj is not None: - fileobj.close() - if fileobj is None: - raise - raise ReadError("not a gzip file") - except: - if not extfileobj and fileobj is not None: - fileobj.close() - raise - t._extfileobj = extfileobj - return t - - @classmethod - def bz2open(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs): - """Open bzip2 compressed tar archive name for reading or writing. - Appending is not allowed. - """ - if len(mode) > 1 or mode not in "rw": - raise ValueError("mode must be 'r' or 'w'.") - - try: - import bz2 - except ImportError: - raise CompressionError("bz2 module is not available") - - if fileobj is not None: - fileobj = _BZ2Proxy(fileobj, mode) - else: - fileobj = bz2.BZ2File(name, mode, compresslevel=compresslevel) - - try: - t = cls.taropen(name, mode, fileobj, **kwargs) - except (IOError, EOFError): - fileobj.close() - raise ReadError("not a bzip2 file") - t._extfileobj = False - return t - - # All *open() methods are registered here. - OPEN_METH = { - "tar": "taropen", # uncompressed tar - "gz": "gzopen", # gzip compressed tar - "bz2": "bz2open" # bzip2 compressed tar - } - - #-------------------------------------------------------------------------- - # The public methods which TarFile provides: - - def close(self): - """Close the TarFile. In write-mode, two finishing zero blocks are - appended to the archive. - """ - if self.closed: - return - - if self.mode in "aw": - self.fileobj.write(NUL * (BLOCKSIZE * 2)) - self.offset += (BLOCKSIZE * 2) - # fill up the end with zero-blocks - # (like option -b20 for tar does) - blocks, remainder = divmod(self.offset, RECORDSIZE) - if remainder > 0: - self.fileobj.write(NUL * (RECORDSIZE - remainder)) - - if not self._extfileobj: - self.fileobj.close() - self.closed = True - - def getmember(self, name): - """Return a TarInfo object for member `name'. If `name' can not be - found in the archive, KeyError is raised. If a member occurs more - than once in the archive, its last occurrence is assumed to be the - most up-to-date version. - """ - tarinfo = self._getmember(name) - if tarinfo is None: - raise KeyError("filename %r not found" % name) - return tarinfo - - def getmembers(self): - """Return the members of the archive as a list of TarInfo objects. The - list has the same order as the members in the archive. - """ - self._check() - if not self._loaded: # if we want to obtain a list of - self._load() # all members, we first have to - # scan the whole archive. - return self.members - - def getnames(self): - """Return the members of the archive as a list of their names. It has - the same order as the list returned by getmembers(). - """ - return [tarinfo.name for tarinfo in self.getmembers()] - - def gettarinfo(self, name=None, arcname=None, fileobj=None): - """Create a TarInfo object for either the file `name' or the file - object `fileobj' (using os.fstat on its file descriptor). You can - modify some of the TarInfo's attributes before you add it using - addfile(). If given, `arcname' specifies an alternative name for the - file in the archive. - """ - self._check("aw") - - # When fileobj is given, replace name by - # fileobj's real name. - if fileobj is not None: - name = fileobj.name - - # Building the name of the member in the archive. - # Backward slashes are converted to forward slashes, - # Absolute paths are turned to relative paths. - if arcname is None: - arcname = name - drv, arcname = os.path.splitdrive(arcname) - arcname = arcname.replace(os.sep, "/") - arcname = arcname.lstrip("/") - - # Now, fill the TarInfo object with - # information specific for the file. - tarinfo = self.tarinfo() - tarinfo.tarfile = self - - # Use os.stat or os.lstat, depending on platform - # and if symlinks shall be resolved. - if fileobj is None: - if hasattr(os, "lstat") and not self.dereference: - statres = os.lstat(name) - else: - statres = os.stat(name) - else: - statres = os.fstat(fileobj.fileno()) - linkname = "" - - stmd = statres.st_mode - if stat.S_ISREG(stmd): - inode = (statres.st_ino, statres.st_dev) - if not self.dereference and statres.st_nlink > 1 and \ - inode in self.inodes and arcname != self.inodes[inode]: - # Is it a hardlink to an already - # archived file? - type = LNKTYPE - linkname = self.inodes[inode] - else: - # The inode is added only if its valid. - # For win32 it is always 0. - type = REGTYPE - if inode[0]: - self.inodes[inode] = arcname - elif stat.S_ISDIR(stmd): - type = DIRTYPE - elif stat.S_ISFIFO(stmd): - type = FIFOTYPE - elif stat.S_ISLNK(stmd): - type = SYMTYPE - linkname = os.readlink(name) - elif stat.S_ISCHR(stmd): - type = CHRTYPE - elif stat.S_ISBLK(stmd): - type = BLKTYPE - else: - return None - - # Fill the TarInfo object with all - # information we can get. - tarinfo.name = arcname - tarinfo.mode = stmd - tarinfo.uid = statres.st_uid - tarinfo.gid = statres.st_gid - if type == REGTYPE: - tarinfo.size = statres.st_size - else: - tarinfo.size = 0 - tarinfo.mtime = statres.st_mtime - tarinfo.type = type - tarinfo.linkname = linkname - if pwd: - try: - tarinfo.uname = pwd.getpwuid(tarinfo.uid)[0] - except KeyError: - pass - if grp: - try: - tarinfo.gname = grp.getgrgid(tarinfo.gid)[0] - except KeyError: - pass - - if type in (CHRTYPE, BLKTYPE): - if hasattr(os, "major") and hasattr(os, "minor"): - tarinfo.devmajor = os.major(statres.st_rdev) - tarinfo.devminor = os.minor(statres.st_rdev) - return tarinfo - - def list(self, verbose=True): - """Print a table of contents to sys.stdout. If `verbose' is False, only - the names of the members are printed. If it is True, an `ls -l'-like - output is produced. - """ - self._check() - - for tarinfo in self: - if verbose: - print(filemode(tarinfo.mode), end=' ') - print("%s/%s" % (tarinfo.uname or tarinfo.uid, - tarinfo.gname or tarinfo.gid), end=' ') - if tarinfo.ischr() or tarinfo.isblk(): - print("%10s" % ("%d,%d" \ - % (tarinfo.devmajor, tarinfo.devminor)), end=' ') - else: - print("%10d" % tarinfo.size, end=' ') - print("%d-%02d-%02d %02d:%02d:%02d" \ - % time.localtime(tarinfo.mtime)[:6], end=' ') - - print(tarinfo.name + ("/" if tarinfo.isdir() else ""), end=' ') - - if verbose: - if tarinfo.issym(): - print("->", tarinfo.linkname, end=' ') - if tarinfo.islnk(): - print("link to", tarinfo.linkname, end=' ') - print() - - def add(self, name, arcname=None, recursive=True, exclude=None, filter=None): - """Add the file `name' to the archive. `name' may be any type of file - (directory, fifo, symbolic link, etc.). If given, `arcname' - specifies an alternative name for the file in the archive. - Directories are added recursively by default. This can be avoided by - setting `recursive' to False. `exclude' is a function that should - return True for each filename to be excluded. `filter' is a function - that expects a TarInfo object argument and returns the changed - TarInfo object, if it returns None the TarInfo object will be - excluded from the archive. - """ - self._check("aw") - - if arcname is None: - arcname = name - - # Exclude pathnames. - if exclude is not None: - import warnings - warnings.warn("use the filter argument instead", - DeprecationWarning, 2) - if exclude(name): - self._dbg(2, "tarfile: Excluded %r" % name) - return - - # Skip if somebody tries to archive the archive... - if self.name is not None and os.path.abspath(name) == self.name: - self._dbg(2, "tarfile: Skipped %r" % name) - return - - self._dbg(1, name) - - # Create a TarInfo object from the file. - tarinfo = self.gettarinfo(name, arcname) - - if tarinfo is None: - self._dbg(1, "tarfile: Unsupported type %r" % name) - return - - # Change or exclude the TarInfo object. - if filter is not None: - tarinfo = filter(tarinfo) - if tarinfo is None: - self._dbg(2, "tarfile: Excluded %r" % name) - return - - # Append the tar header and data to the archive. - if tarinfo.isreg(): - f = bltn_open(name, "rb") - self.addfile(tarinfo, f) - f.close() - - elif tarinfo.isdir(): - self.addfile(tarinfo) - if recursive: - for f in os.listdir(name): - self.add(os.path.join(name, f), os.path.join(arcname, f), - recursive, exclude, filter=filter) - - else: - self.addfile(tarinfo) - - def addfile(self, tarinfo, fileobj=None): - """Add the TarInfo object `tarinfo' to the archive. If `fileobj' is - given, tarinfo.size bytes are read from it and added to the archive. - You can create TarInfo objects using gettarinfo(). - On Windows platforms, `fileobj' should always be opened with mode - 'rb' to avoid irritation about the file size. - """ - self._check("aw") - - tarinfo = copy.copy(tarinfo) - - buf = tarinfo.tobuf(self.format, self.encoding, self.errors) - self.fileobj.write(buf) - self.offset += len(buf) - - # If there's data to follow, append it. - if fileobj is not None: - copyfileobj(fileobj, self.fileobj, tarinfo.size) - blocks, remainder = divmod(tarinfo.size, BLOCKSIZE) - if remainder > 0: - self.fileobj.write(NUL * (BLOCKSIZE - remainder)) - blocks += 1 - self.offset += blocks * BLOCKSIZE - - self.members.append(tarinfo) - - def extractall(self, path=".", members=None): - """Extract all members from the archive to the current working - directory and set owner, modification time and permissions on - directories afterwards. `path' specifies a different directory - to extract to. `members' is optional and must be a subset of the - list returned by getmembers(). - """ - directories = [] - - if members is None: - members = self - - for tarinfo in members: - if tarinfo.isdir(): - # Extract directories with a safe mode. - directories.append(tarinfo) - tarinfo = copy.copy(tarinfo) - tarinfo.mode = 0o700 - # Do not set_attrs directories, as we will do that further down - self.extract(tarinfo, path, set_attrs=not tarinfo.isdir()) - - # Reverse sort directories. - directories.sort(key=lambda a: a.name) - directories.reverse() - - # Set correct owner, mtime and filemode on directories. - for tarinfo in directories: - dirpath = os.path.join(path, tarinfo.name) - try: - self.chown(tarinfo, dirpath) - self.utime(tarinfo, dirpath) - self.chmod(tarinfo, dirpath) - except ExtractError as e: - if self.errorlevel > 1: - raise - else: - self._dbg(1, "tarfile: %s" % e) - - def extract(self, member, path="", set_attrs=True): - """Extract a member from the archive to the current working directory, - using its full name. Its file information is extracted as accurately - as possible. `member' may be a filename or a TarInfo object. You can - specify a different directory using `path'. File attributes (owner, - mtime, mode) are set unless `set_attrs' is False. - """ - self._check("r") - - if isinstance(member, str): - tarinfo = self.getmember(member) - else: - tarinfo = member - - # Prepare the link target for makelink(). - if tarinfo.islnk(): - tarinfo._link_target = os.path.join(path, tarinfo.linkname) - - try: - self._extract_member(tarinfo, os.path.join(path, tarinfo.name), - set_attrs=set_attrs) - except EnvironmentError as e: - if self.errorlevel > 0: - raise - else: - if e.filename is None: - self._dbg(1, "tarfile: %s" % e.strerror) - else: - self._dbg(1, "tarfile: %s %r" % (e.strerror, e.filename)) - except ExtractError as e: - if self.errorlevel > 1: - raise - else: - self._dbg(1, "tarfile: %s" % e) - - def extractfile(self, member): - """Extract a member from the archive as a file object. `member' may be - a filename or a TarInfo object. If `member' is a regular file, a - file-like object is returned. If `member' is a link, a file-like - object is constructed from the link's target. If `member' is none of - the above, None is returned. - The file-like object is read-only and provides the following - methods: read(), readline(), readlines(), seek() and tell() - """ - self._check("r") - - if isinstance(member, str): - tarinfo = self.getmember(member) - else: - tarinfo = member - - if tarinfo.isreg(): - return self.fileobject(self, tarinfo) - - elif tarinfo.type not in SUPPORTED_TYPES: - # If a member's type is unknown, it is treated as a - # regular file. - return self.fileobject(self, tarinfo) - - elif tarinfo.islnk() or tarinfo.issym(): - if isinstance(self.fileobj, _Stream): - # A small but ugly workaround for the case that someone tries - # to extract a (sym)link as a file-object from a non-seekable - # stream of tar blocks. - raise StreamError("cannot extract (sym)link as file object") - else: - # A (sym)link's file object is its target's file object. - return self.extractfile(self._find_link_target(tarinfo)) - else: - # If there's no data associated with the member (directory, chrdev, - # blkdev, etc.), return None instead of a file object. - return None - - def _extract_member(self, tarinfo, targetpath, set_attrs=True): - """Extract the TarInfo object tarinfo to a physical - file called targetpath. - """ - # Fetch the TarInfo object for the given name - # and build the destination pathname, replacing - # forward slashes to platform specific separators. - targetpath = targetpath.rstrip("/") - targetpath = targetpath.replace("/", os.sep) - - # Create all upper directories. - upperdirs = os.path.dirname(targetpath) - if upperdirs and not os.path.exists(upperdirs): - # Create directories that are not part of the archive with - # default permissions. - os.makedirs(upperdirs) - - if tarinfo.islnk() or tarinfo.issym(): - self._dbg(1, "%s -> %s" % (tarinfo.name, tarinfo.linkname)) - else: - self._dbg(1, tarinfo.name) - - if tarinfo.isreg(): - self.makefile(tarinfo, targetpath) - elif tarinfo.isdir(): - self.makedir(tarinfo, targetpath) - elif tarinfo.isfifo(): - self.makefifo(tarinfo, targetpath) - elif tarinfo.ischr() or tarinfo.isblk(): - self.makedev(tarinfo, targetpath) - elif tarinfo.islnk() or tarinfo.issym(): - self.makelink(tarinfo, targetpath) - elif tarinfo.type not in SUPPORTED_TYPES: - self.makeunknown(tarinfo, targetpath) - else: - self.makefile(tarinfo, targetpath) - - if set_attrs: - self.chown(tarinfo, targetpath) - if not tarinfo.issym(): - self.chmod(tarinfo, targetpath) - self.utime(tarinfo, targetpath) - - #-------------------------------------------------------------------------- - # Below are the different file methods. They are called via - # _extract_member() when extract() is called. They can be replaced in a - # subclass to implement other functionality. - - def makedir(self, tarinfo, targetpath): - """Make a directory called targetpath. - """ - try: - # Use a safe mode for the directory, the real mode is set - # later in _extract_member(). - os.mkdir(targetpath, 0o700) - except EnvironmentError as e: - if e.errno != errno.EEXIST: - raise - - def makefile(self, tarinfo, targetpath): - """Make a file called targetpath. - """ - source = self.fileobj - source.seek(tarinfo.offset_data) - target = bltn_open(targetpath, "wb") - if tarinfo.sparse is not None: - for offset, size in tarinfo.sparse: - target.seek(offset) - copyfileobj(source, target, size) - else: - copyfileobj(source, target, tarinfo.size) - target.seek(tarinfo.size) - target.truncate() - target.close() - - def makeunknown(self, tarinfo, targetpath): - """Make a file from a TarInfo object with an unknown type - at targetpath. - """ - self.makefile(tarinfo, targetpath) - self._dbg(1, "tarfile: Unknown file type %r, " \ - "extracted as regular file." % tarinfo.type) - - def makefifo(self, tarinfo, targetpath): - """Make a fifo called targetpath. - """ - if hasattr(os, "mkfifo"): - os.mkfifo(targetpath) - else: - raise ExtractError("fifo not supported by system") - - def makedev(self, tarinfo, targetpath): - """Make a character or block device called targetpath. - """ - if not hasattr(os, "mknod") or not hasattr(os, "makedev"): - raise ExtractError("special devices not supported by system") - - mode = tarinfo.mode - if tarinfo.isblk(): - mode |= stat.S_IFBLK - else: - mode |= stat.S_IFCHR - - os.mknod(targetpath, mode, - os.makedev(tarinfo.devmajor, tarinfo.devminor)) - - def makelink(self, tarinfo, targetpath): - """Make a (symbolic) link called targetpath. If it cannot be created - (platform limitation), we try to make a copy of the referenced file - instead of a link. - """ - try: - # For systems that support symbolic and hard links. - if tarinfo.issym(): - os.symlink(tarinfo.linkname, targetpath) - else: - # See extract(). - if os.path.exists(tarinfo._link_target): - os.link(tarinfo._link_target, targetpath) - else: - self._extract_member(self._find_link_target(tarinfo), - targetpath) - except symlink_exception: - if tarinfo.issym(): - linkpath = os.path.join(os.path.dirname(tarinfo.name), - tarinfo.linkname) - else: - linkpath = tarinfo.linkname - else: - try: - self._extract_member(self._find_link_target(tarinfo), - targetpath) - except KeyError: - raise ExtractError("unable to resolve link inside archive") - - def chown(self, tarinfo, targetpath): - """Set owner of targetpath according to tarinfo. - """ - if pwd and hasattr(os, "geteuid") and os.geteuid() == 0: - # We have to be root to do so. - try: - g = grp.getgrnam(tarinfo.gname)[2] - except KeyError: - g = tarinfo.gid - try: - u = pwd.getpwnam(tarinfo.uname)[2] - except KeyError: - u = tarinfo.uid - try: - if tarinfo.issym() and hasattr(os, "lchown"): - os.lchown(targetpath, u, g) - else: - if sys.platform != "os2emx": - os.chown(targetpath, u, g) - except EnvironmentError as e: - raise ExtractError("could not change owner") - - def chmod(self, tarinfo, targetpath): - """Set file permissions of targetpath according to tarinfo. - """ - if hasattr(os, 'chmod'): - try: - os.chmod(targetpath, tarinfo.mode) - except EnvironmentError as e: - raise ExtractError("could not change mode") - - def utime(self, tarinfo, targetpath): - """Set modification time of targetpath according to tarinfo. - """ - if not hasattr(os, 'utime'): - return - try: - os.utime(targetpath, (tarinfo.mtime, tarinfo.mtime)) - except EnvironmentError as e: - raise ExtractError("could not change modification time") - - #-------------------------------------------------------------------------- - def next(self): - """Return the next member of the archive as a TarInfo object, when - TarFile is opened for reading. Return None if there is no more - available. - """ - self._check("ra") - if self.firstmember is not None: - m = self.firstmember - self.firstmember = None - return m - - # Read the next block. - self.fileobj.seek(self.offset) - tarinfo = None - while True: - try: - tarinfo = self.tarinfo.fromtarfile(self) - except EOFHeaderError as e: - if self.ignore_zeros: - self._dbg(2, "0x%X: %s" % (self.offset, e)) - self.offset += BLOCKSIZE - continue - except InvalidHeaderError as e: - if self.ignore_zeros: - self._dbg(2, "0x%X: %s" % (self.offset, e)) - self.offset += BLOCKSIZE - continue - elif self.offset == 0: - raise ReadError(str(e)) - except EmptyHeaderError: - if self.offset == 0: - raise ReadError("empty file") - except TruncatedHeaderError as e: - if self.offset == 0: - raise ReadError(str(e)) - except SubsequentHeaderError as e: - raise ReadError(str(e)) - break - - if tarinfo is not None: - self.members.append(tarinfo) - else: - self._loaded = True - - return tarinfo - - #-------------------------------------------------------------------------- - # Little helper methods: - - def _getmember(self, name, tarinfo=None, normalize=False): - """Find an archive member by name from bottom to top. - If tarinfo is given, it is used as the starting point. - """ - # Ensure that all members have been loaded. - members = self.getmembers() - - # Limit the member search list up to tarinfo. - if tarinfo is not None: - members = members[:members.index(tarinfo)] - - if normalize: - name = os.path.normpath(name) - - for member in reversed(members): - if normalize: - member_name = os.path.normpath(member.name) - else: - member_name = member.name - - if name == member_name: - return member - - def _load(self): - """Read through the entire archive file and look for readable - members. - """ - while True: - tarinfo = self.next() - if tarinfo is None: - break - self._loaded = True - - def _check(self, mode=None): - """Check if TarFile is still open, and if the operation's mode - corresponds to TarFile's mode. - """ - if self.closed: - raise IOError("%s is closed" % self.__class__.__name__) - if mode is not None and self.mode not in mode: - raise IOError("bad operation for mode %r" % self.mode) - - def _find_link_target(self, tarinfo): - """Find the target member of a symlink or hardlink member in the - archive. - """ - if tarinfo.issym(): - # Always search the entire archive. - linkname = os.path.dirname(tarinfo.name) + "/" + tarinfo.linkname - limit = None - else: - # Search the archive before the link, because a hard link is - # just a reference to an already archived file. - linkname = tarinfo.linkname - limit = tarinfo - - member = self._getmember(linkname, tarinfo=limit, normalize=True) - if member is None: - raise KeyError("linkname %r not found" % linkname) - return member - - def __iter__(self): - """Provide an iterator object. - """ - if self._loaded: - return iter(self.members) - else: - return TarIter(self) - - def _dbg(self, level, msg): - """Write debugging output to sys.stderr. - """ - if level <= self.debug: - print(msg, file=sys.stderr) - - def __enter__(self): - self._check() - return self - - def __exit__(self, type, value, traceback): - if type is None: - self.close() - else: - # An exception occurred. We must not call close() because - # it would try to write end-of-archive blocks and padding. - if not self._extfileobj: - self.fileobj.close() - self.closed = True -# class TarFile - -class TarIter(object): - """Iterator Class. - - for tarinfo in TarFile(...): - suite... - """ - - def __init__(self, tarfile): - """Construct a TarIter object. - """ - self.tarfile = tarfile - self.index = 0 - def __iter__(self): - """Return iterator object. - """ - return self - - def __next__(self): - """Return the next item using TarFile's next() method. - When all members have been read, set TarFile as _loaded. - """ - # Fix for SF #1100429: Under rare circumstances it can - # happen that getmembers() is called during iteration, - # which will cause TarIter to stop prematurely. - if not self.tarfile._loaded: - tarinfo = self.tarfile.next() - if not tarinfo: - self.tarfile._loaded = True - raise StopIteration - else: - try: - tarinfo = self.tarfile.members[self.index] - except IndexError: - raise StopIteration - self.index += 1 - return tarinfo - - next = __next__ # for Python 2.x - -#-------------------- -# exported functions -#-------------------- -def is_tarfile(name): - """Return True if name points to a tar archive that we - are able to handle, else return False. - """ - try: - t = open(name) - t.close() - return True - except TarError: - return False - -bltn_open = open -open = TarFile.open diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py deleted file mode 100644 index 2b198dd..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py +++ /dev/null @@ -1,1111 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2016 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -from __future__ import absolute_import - -import os -import re -import sys - -try: - import ssl -except ImportError: - 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: - from zipfile import ZipExtFile as BaseZipExtFile - - class ZipExtFile(BaseZipExtFile): - def __init__(self, base): - self.__dict__.update(base.__dict__) - - def __enter__(self): - return self - - def __exit__(self, *exc_info): - self.close() - # return None, so if an exception occurred, it will propagate - - class ZipFile(BaseZipFile): - def __enter__(self): - return self - - def __exit__(self, *exc_info): - self.close() - # return None, so if an exception occurred, it will propagate - - def open(self, *args, **kwargs): - base = BaseZipFile.open(self, *args, **kwargs) - return ZipExtFile(base) - -try: - from platform import python_implementation -except ImportError: # pragma: no cover - def python_implementation(): - """Return a string identifying the Python implementation.""" - if 'PyPy' in sys.version: - return 'PyPy' - if os.name == 'java': - return 'Jython' - if sys.version.startswith('IronPython'): - return 'IronPython' - return 'CPython' - -try: - import sysconfig -except ImportError: # pragma: no cover - from ._backport import sysconfig - -try: - callable = callable -except NameError: # pragma: no cover - from collections import Callable - - def callable(obj): - return isinstance(obj, Callable) - - -try: - fsencode = os.fsencode - fsdecode = os.fsdecode -except AttributeError: # pragma: no cover - _fsencoding = sys.getfilesystemencoding() - if _fsencoding == 'mbcs': - _fserrors = 'strict' - else: - _fserrors = 'surrogateescape' - - def fsencode(filename): - if isinstance(filename, bytes): - return filename - elif isinstance(filename, text_type): - return filename.encode(_fsencoding, _fserrors) - else: - raise TypeError("expect bytes or str, not %s" % - type(filename).__name__) - - def fsdecode(filename): - if isinstance(filename, text_type): - return filename - elif isinstance(filename, bytes): - return filename.decode(_fsencoding, _fserrors) - else: - raise TypeError("expect bytes or str, not %s" % - type(filename).__name__) - -try: - from tokenize import detect_encoding -except ImportError: # pragma: no cover - from codecs import BOM_UTF8, lookup - import re - - cookie_re = re.compile("coding[:=]\s*([-\w.]+)") - - def _get_normal_name(orig_enc): - """Imitates get_normal_name in tokenizer.c.""" - # Only care about the first 12 characters. - enc = orig_enc[:12].lower().replace("_", "-") - if enc == "utf-8" or enc.startswith("utf-8-"): - return "utf-8" - if enc in ("latin-1", "iso-8859-1", "iso-latin-1") or \ - enc.startswith(("latin-1-", "iso-8859-1-", "iso-latin-1-")): - return "iso-8859-1" - return orig_enc - - def detect_encoding(readline): - """ - The detect_encoding() function is used to detect the encoding that should - be used to decode a Python source file. It requires one 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 imp import cache_from_source -except ImportError: # pragma: no cover - def cache_from_source(path, debug_override=None): - assert path.endswith('.py') - if debug_override is None: - debug_override = __debug__ - if debug_override: - suffix = 'c' - else: - suffix = 'o' - return path + suffix - -try: - from collections import OrderedDict -except ImportError: # pragma: no cover -## {{{ http://code.activestate.com/recipes/576693/ (r9) -# Backport of OrderedDict() class that runs on Python 2.4, 2.5, 2.6, 2.7 and pypy. -# Passes Python2.7's test suite and incorporates all the latest updates. - try: - from thread import get_ident as _get_ident - except ImportError: - from dummy_thread import get_ident as _get_ident - - try: - from _abcoll import KeysView, ValuesView, ItemsView - except ImportError: - pass - - - class OrderedDict(dict): - 'Dictionary that remembers insertion order' - # An inherited dict maps keys to values. - # The inherited dict provides __getitem__, __len__, __contains__, and get. - # The remaining methods are order-aware. - # Big-O running times for all methods are the same as for regular dictionaries. - - # The internal self.__map dictionary maps keys to links in a doubly linked list. - # The circular doubly linked list starts and ends with a sentinel element. - # The sentinel element never gets deleted (this simplifies the algorithm). - # Each link is stored as a list of length three: [PREV, NEXT, KEY]. - - def __init__(self, *args, **kwds): - '''Initialize an ordered dictionary. Signature is the same as for - regular dictionaries, but keyword arguments are not recommended - because their insertion order is arbitrary. - - ''' - if len(args) > 1: - raise TypeError('expected at most 1 arguments, got %d' % len(args)) - try: - self.__root - except AttributeError: - self.__root = root = [] # sentinel node - root[:] = [root, root, None] - self.__map = {} - self.__update(*args, **kwds) - - def __setitem__(self, key, value, dict_setitem=dict.__setitem__): - 'od.__setitem__(i, y) <==> od[i]=y' - # Setting a new item creates a new link which goes at the end of the linked - # list, and the inherited dictionary is updated with the new key/value pair. - if key not in self: - root = self.__root - last = root[0] - last[1] = root[0] = self.__map[key] = [last, root, key] - dict_setitem(self, key, value) - - def __delitem__(self, key, dict_delitem=dict.__delitem__): - 'od.__delitem__(y) <==> del od[y]' - # Deleting an existing item uses self.__map to find the link which is - # then removed by updating the links in the predecessor and successor nodes. - dict_delitem(self, key) - link_prev, link_next, key = self.__map.pop(key) - link_prev[1] = link_next - link_next[0] = link_prev - - def __iter__(self): - 'od.__iter__() <==> iter(od)' - root = self.__root - curr = root[1] - while curr is not root: - yield curr[2] - curr = curr[1] - - def __reversed__(self): - 'od.__reversed__() <==> reversed(od)' - root = self.__root - curr = root[0] - while curr is not root: - yield curr[2] - curr = curr[0] - - def clear(self): - 'od.clear() -> None. Remove all items from od.' - try: - for node in self.__map.itervalues(): - del node[:] - root = self.__root - root[:] = [root, root, None] - self.__map.clear() - except AttributeError: - pass - dict.clear(self) - - def popitem(self, last=True): - '''od.popitem() -> (k, v), return and remove a (key, value) pair. - Pairs are returned in LIFO order if last is true or FIFO order if false. - - ''' - if not self: - raise KeyError('dictionary is empty') - root = self.__root - if last: - link = root[0] - link_prev = link[0] - link_prev[1] = root - root[0] = link_prev - else: - link = root[1] - link_next = link[1] - root[1] = link_next - link_next[0] = root - key = link[2] - del self.__map[key] - value = dict.pop(self, key) - return key, value - - # -- the following methods do not depend on the internal structure -- - - def keys(self): - 'od.keys() -> list of keys in od' - return list(self) - - def values(self): - 'od.values() -> list of values in od' - return [self[key] for key in self] - - def items(self): - 'od.items() -> list of (key, value) pairs in od' - return [(key, self[key]) for key in self] - - def iterkeys(self): - 'od.iterkeys() -> an iterator over the keys in od' - return iter(self) - - def itervalues(self): - 'od.itervalues -> an iterator over the values in od' - for k in self: - yield self[k] - - def iteritems(self): - 'od.iteritems -> an iterator over the (key, value) items in od' - for k in self: - yield (k, self[k]) - - def update(*args, **kwds): - '''od.update(E, **F) -> None. Update od from dict/iterable E and F. - - If E is a dict instance, does: for k in E: od[k] = E[k] - If E has a .keys() method, does: for k in E.keys(): od[k] = E[k] - Or if E is an iterable of items, does: for k, v in E: od[k] = v - In either case, this is followed by: for k, v in F.items(): od[k] = v - - ''' - if len(args) > 2: - raise TypeError('update() takes at most 2 positional ' - 'arguments (%d given)' % (len(args),)) - elif not args: - raise TypeError('update() takes at least 1 argument (0 given)') - self = args[0] - # Make progressively weaker assumptions about "other" - other = () - if len(args) == 2: - other = args[1] - if isinstance(other, dict): - for key in other: - self[key] = other[key] - elif hasattr(other, 'keys'): - for key in other.keys(): - self[key] = other[key] - else: - for key, value in other: - self[key] = value - for key, value in kwds.items(): - self[key] = value - - __update = update # let subclasses override update without breaking __init__ - - __marker = object() - - def pop(self, key, default=__marker): - '''od.pop(k[,d]) -> v, remove specified key and return the corresponding value. - If key is not found, d is returned if given, otherwise KeyError is raised. - - ''' - if key in self: - result = self[key] - del self[key] - return result - if default is self.__marker: - raise KeyError(key) - return default - - def setdefault(self, key, default=None): - 'od.setdefault(k[,d]) -> od.get(k,d), also set od[k]=d if k not in od' - if key in self: - return self[key] - self[key] = default - return default - - def __repr__(self, _repr_running=None): - 'od.__repr__() <==> repr(od)' - if not _repr_running: _repr_running = {} - call_key = id(self), _get_ident() - if call_key in _repr_running: - return '...' - _repr_running[call_key] = 1 - try: - if not self: - return '%s()' % (self.__class__.__name__,) - return '%s(%r)' % (self.__class__.__name__, self.items()) - finally: - del _repr_running[call_key] - - def __reduce__(self): - 'Return state information for pickling' - items = [[k, self[k]] for k in self] - inst_dict = vars(self).copy() - for k in vars(OrderedDict()): - inst_dict.pop(k, None) - if inst_dict: - return (self.__class__, (items,), inst_dict) - return self.__class__, (items,) - - def copy(self): - 'od.copy() -> a shallow copy of od' - return self.__class__(self) - - @classmethod - def fromkeys(cls, iterable, value=None): - '''OD.fromkeys(S[, v]) -> New ordered dictionary with keys from S - and values equal to v (which defaults to None). - - ''' - d = cls() - for key in iterable: - d[key] = value - return d - - def __eq__(self, other): - '''od.__eq__(y) <==> od==y. Comparison to another OD is order-sensitive - while comparison to a regular mapping is order-insensitive. - - ''' - if isinstance(other, OrderedDict): - return len(self)==len(other) and self.items() == other.items() - return dict.__eq__(self, other) - - def __ne__(self, other): - return not self == other - - # -- the following methods are only used in Python 2.7 -- - - def viewkeys(self): - "od.viewkeys() -> a set-like object providing a view on od's keys" - return KeysView(self) - - def viewvalues(self): - "od.viewvalues() -> an object providing a view on od's values" - return ValuesView(self) - - def viewitems(self): - "od.viewitems() -> a set-like object providing a view on od's items" - return ItemsView(self) - -try: - from logging.config import BaseConfigurator, valid_ident -except ImportError: # pragma: no cover - IDENTIFIER = re.compile('^[a-z_][a-z0-9_]*$', re.I) - - - def valid_ident(s): - m = IDENTIFIER.match(s) - if not m: - raise ValueError('Not a valid Python identifier: %r' % s) - return True - - - # The ConvertingXXX classes are wrappers around standard Python containers, - # and they serve to convert any suitable values in the container. The - # conversion converts base dicts, lists and tuples to their wrapped - # equivalents, whereas strings which match a conversion format are converted - # appropriately. - # - # Each wrapper should have a configurator attribute holding the actual - # configurator to use for conversion. - - class ConvertingDict(dict): - """A converting dictionary wrapper.""" - - def __getitem__(self, key): - value = dict.__getitem__(self, key) - result = self.configurator.convert(value) - #If the converted value is different, save for next time - if value is not result: - self[key] = result - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - result.key = key - return result - - def get(self, key, default=None): - value = dict.get(self, key, default) - result = self.configurator.convert(value) - #If the converted value is different, save for next time - if value is not result: - self[key] = result - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - result.key = key - return result - - def pop(self, key, default=None): - value = dict.pop(self, key, default) - result = self.configurator.convert(value) - if value is not result: - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - result.key = key - return result - - class ConvertingList(list): - """A converting list wrapper.""" - def __getitem__(self, key): - value = list.__getitem__(self, key) - result = self.configurator.convert(value) - #If the converted value is different, save for next time - if value is not result: - self[key] = result - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - result.key = key - return result - - def pop(self, idx=-1): - value = list.pop(self, idx) - result = self.configurator.convert(value) - if value is not result: - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - return result - - class ConvertingTuple(tuple): - """A converting tuple wrapper.""" - def __getitem__(self, key): - value = tuple.__getitem__(self, key) - result = self.configurator.convert(value) - if value is not result: - if type(result) in (ConvertingDict, ConvertingList, - ConvertingTuple): - result.parent = self - result.key = key - return result - - class BaseConfigurator(object): - """ - The configurator base class which defines some useful defaults. - """ - - CONVERT_PATTERN = re.compile(r'^(?P[a-z]+)://(?P.*)$') - - WORD_PATTERN = re.compile(r'^\s*(\w+)\s*') - DOT_PATTERN = re.compile(r'^\.\s*(\w+)\s*') - INDEX_PATTERN = re.compile(r'^\[\s*(\w+)\s*\]\s*') - DIGIT_PATTERN = re.compile(r'^\d+$') - - value_converters = { - 'ext' : 'ext_convert', - 'cfg' : 'cfg_convert', - } - - # We might want to use a different one, e.g. importlib - importer = staticmethod(__import__) - - def __init__(self, config): - self.config = ConvertingDict(config) - self.config.configurator = self - - def resolve(self, s): - """ - Resolve strings to objects using standard import and attribute - syntax. - """ - name = s.split('.') - used = name.pop(0) - try: - found = self.importer(used) - for frag in name: - used += '.' + frag - try: - found = getattr(found, frag) - except AttributeError: - self.importer(used) - found = getattr(found, frag) - return found - except ImportError: - e, tb = sys.exc_info()[1:] - v = ValueError('Cannot resolve %r: %s' % (s, e)) - v.__cause__, v.__traceback__ = e, tb - raise v - - def ext_convert(self, value): - """Default converter for the ext:// protocol.""" - return self.resolve(value) - - def cfg_convert(self, value): - """Default converter for the cfg:// protocol.""" - rest = value - m = self.WORD_PATTERN.match(rest) - if m is None: - raise ValueError("Unable to convert %r" % value) - else: - rest = rest[m.end():] - d = self.config[m.groups()[0]] - #print d, rest - while rest: - m = self.DOT_PATTERN.match(rest) - if m: - d = d[m.groups()[0]] - else: - m = self.INDEX_PATTERN.match(rest) - if m: - idx = m.groups()[0] - if not self.DIGIT_PATTERN.match(idx): - d = d[idx] - else: - try: - n = int(idx) # try as number first (most likely) - d = d[n] - except TypeError: - d = d[idx] - if m: - rest = rest[m.end():] - else: - raise ValueError('Unable to convert ' - '%r at %r' % (value, rest)) - #rest should be empty - return d - - def convert(self, value): - """ - Convert values to an appropriate type. dicts, lists and tuples are - replaced by their converting alternatives. Strings are checked to - see if they have a conversion format and are converted if they do. - """ - if not isinstance(value, ConvertingDict) and isinstance(value, dict): - value = ConvertingDict(value) - value.configurator = self - elif not isinstance(value, ConvertingList) and isinstance(value, list): - value = ConvertingList(value) - value.configurator = self - elif not isinstance(value, ConvertingTuple) and\ - isinstance(value, tuple): - value = ConvertingTuple(value) - value.configurator = self - elif isinstance(value, string_types): - m = self.CONVERT_PATTERN.match(value) - if m: - d = m.groupdict() - prefix = d['prefix'] - converter = self.value_converters.get(prefix, None) - if converter: - suffix = d['suffix'] - converter = getattr(self, converter) - value = converter(suffix) - return value - - def configure_custom(self, config): - """Configure an object with a user-supplied factory.""" - c = config.pop('()') - if not callable(c): - c = self.resolve(c) - props = config.pop('.', None) - # Check for valid identifiers - kwargs = dict([(k, config[k]) for k in config if valid_ident(k)]) - result = c(**kwargs) - if props: - for name, value in props.items(): - setattr(result, name, value) - return result - - def as_tuple(self, value): - """Utility function which converts lists to tuples.""" - if isinstance(value, list): - value = tuple(value) - return value diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/database.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/database.py deleted file mode 100644 index c314426..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/database.py +++ /dev/null @@ -1,1312 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2016 The Python Software Foundation. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -"""PEP 376 implementation.""" - -from __future__ import unicode_literals - -import base64 -import codecs -import contextlib -import hashlib -import logging -import os -import posixpath -import sys -import zipimport - -from . import DistlibException, resources -from .compat import StringIO -from .version import get_scheme, UnsupportedVersionError -from .metadata import Metadata, METADATA_FILENAME, WHEEL_METADATA_FILENAME -from .util import (parse_requirement, cached_property, parse_name_and_version, - read_exports, write_exports, CSVReader, CSVWriter) - - -__all__ = ['Distribution', 'BaseInstalledDistribution', - 'InstalledDistribution', 'EggInfoDistribution', - 'DistributionPath'] - - -logger = logging.getLogger(__name__) - -EXPORTS_FILENAME = 'pydist-exports.json' -COMMANDS_FILENAME = 'pydist-commands.json' - -DIST_FILES = ('INSTALLER', METADATA_FILENAME, 'RECORD', 'REQUESTED', - 'RESOURCES', EXPORTS_FILENAME, 'SHARED') - -DISTINFO_EXT = '.dist-info' - - -class _Cache(object): - """ - A simple cache mapping names and .dist-info paths to distributions - """ - def __init__(self): - """ - Initialise an instance. There is normally one for each DistributionPath. - """ - self.name = {} - self.path = {} - self.generated = False - - def clear(self): - """ - Clear the cache, setting it to its initial state. - """ - self.name.clear() - self.path.clear() - self.generated = False - - def add(self, dist): - """ - Add a distribution to the cache. - :param dist: The distribution to add. - """ - if dist.path not in self.path: - self.path[dist.path] = dist - self.name.setdefault(dist.key, []).append(dist) - - -class DistributionPath(object): - """ - Represents a set of distributions installed on a path (typically sys.path). - """ - def __init__(self, path=None, include_egg=False): - """ - Create an instance from a path, optionally including legacy (distutils/ - setuptools/distribute) distributions. - :param path: The path to use, as a list of directories. If not specified, - sys.path is used. - :param include_egg: If True, this instance will look for and return legacy - distributions as well as those based on PEP 376. - """ - if path is None: - path = sys.path - self.path = path - self._include_dist = True - self._include_egg = include_egg - - self._cache = _Cache() - self._cache_egg = _Cache() - self._cache_enabled = True - self._scheme = get_scheme('default') - - def _get_cache_enabled(self): - return self._cache_enabled - - def _set_cache_enabled(self, value): - self._cache_enabled = value - - cache_enabled = property(_get_cache_enabled, _set_cache_enabled) - - def clear_cache(self): - """ - Clears the internal cache. - """ - self._cache.clear() - self._cache_egg.clear() - - - def _yield_distributions(self): - """ - Yield .dist-info and/or .egg(-info) distributions. - """ - # We need to check if we've seen some resources already, because on - # some Linux systems (e.g. some Debian/Ubuntu variants) there are - # symlinks which alias other files in the environment. - seen = set() - for path in self.path: - finder = resources.finder_for_path(path) - if finder is None: - continue - r = finder.find('') - if not r or not r.is_container: - continue - rset = sorted(r.resources) - for entry in rset: - r = finder.find(entry) - if not r or r.path in seen: - continue - if self._include_dist and entry.endswith(DISTINFO_EXT): - possible_filenames = [METADATA_FILENAME, WHEEL_METADATA_FILENAME] - for metadata_filename in possible_filenames: - metadata_path = posixpath.join(entry, metadata_filename) - pydist = finder.find(metadata_path) - if pydist: - break - else: - continue - - with contextlib.closing(pydist.as_stream()) as stream: - metadata = Metadata(fileobj=stream, scheme='legacy') - logger.debug('Found %s', r.path) - seen.add(r.path) - yield new_dist_class(r.path, metadata=metadata, - env=self) - elif self._include_egg and entry.endswith(('.egg-info', - '.egg')): - logger.debug('Found %s', r.path) - seen.add(r.path) - yield old_dist_class(r.path, self) - - def _generate_cache(self): - """ - Scan the path for distributions and populate the cache with - those that are found. - """ - gen_dist = not self._cache.generated - gen_egg = self._include_egg and not self._cache_egg.generated - if gen_dist or gen_egg: - for dist in self._yield_distributions(): - if isinstance(dist, InstalledDistribution): - self._cache.add(dist) - else: - self._cache_egg.add(dist) - - if gen_dist: - self._cache.generated = True - if gen_egg: - self._cache_egg.generated = True - - @classmethod - def distinfo_dirname(cls, name, version): - """ - The *name* and *version* parameters are converted into their - filename-escaped form, i.e. any ``'-'`` characters are replaced - with ``'_'`` other than the one in ``'dist-info'`` and the one - separating the name from the version number. - - :parameter name: is converted to a standard distribution name by replacing - any runs of non- alphanumeric characters with a single - ``'-'``. - :type name: string - :parameter version: is converted to a standard version string. Spaces - become dots, and all other non-alphanumeric characters - (except dots) become dashes, with runs of multiple - dashes condensed to a single dash. - :type version: string - :returns: directory name - :rtype: string""" - name = name.replace('-', '_') - return '-'.join([name, version]) + DISTINFO_EXT - - def get_distributions(self): - """ - Provides an iterator that looks for distributions and returns - :class:`InstalledDistribution` or - :class:`EggInfoDistribution` instances for each one of them. - - :rtype: iterator of :class:`InstalledDistribution` and - :class:`EggInfoDistribution` instances - """ - if not self._cache_enabled: - for dist in self._yield_distributions(): - yield dist - else: - self._generate_cache() - - for dist in self._cache.path.values(): - yield dist - - if self._include_egg: - for dist in self._cache_egg.path.values(): - yield dist - - def get_distribution(self, name): - """ - Looks for a named distribution on the path. - - This function only returns the first result found, as no more than one - value is expected. If nothing is found, ``None`` is returned. - - :rtype: :class:`InstalledDistribution`, :class:`EggInfoDistribution` - or ``None`` - """ - result = None - name = name.lower() - if not self._cache_enabled: - for dist in self._yield_distributions(): - if dist.key == name: - result = dist - break - else: - self._generate_cache() - - if name in self._cache.name: - result = self._cache.name[name][0] - elif self._include_egg and name in self._cache_egg.name: - result = self._cache_egg.name[name][0] - return result - - def provides_distribution(self, name, version=None): - """ - Iterates over all distributions to find which distributions provide *name*. - If a *version* is provided, it will be used to filter the results. - - This function only returns the first result found, since no more than - one values are expected. If the directory is not found, returns ``None``. - - :parameter version: a version specifier that indicates the version - required, conforming to the format in ``PEP-345`` - - :type name: string - :type version: string - """ - matcher = None - if not version is None: - try: - matcher = self._scheme.matcher('%s (%s)' % (name, version)) - except ValueError: - raise DistlibException('invalid name or version: %r, %r' % - (name, version)) - - for dist in self.get_distributions(): - provided = dist.provides - - for p in provided: - p_name, p_ver = parse_name_and_version(p) - if matcher is None: - if p_name == name: - yield dist - break - else: - if p_name == name and matcher.match(p_ver): - yield dist - break - - def get_file_path(self, name, relative_path): - """ - Return the path to a resource file. - """ - dist = self.get_distribution(name) - if dist is None: - raise LookupError('no distribution named %r found' % name) - return dist.get_resource_path(relative_path) - - def get_exported_entries(self, category, name=None): - """ - Return all of the exported entries in a particular category. - - :param category: The category to search for entries. - :param name: If specified, only entries with that name are returned. - """ - for dist in self.get_distributions(): - r = dist.exports - if category in r: - d = r[category] - if name is not None: - if name in d: - yield d[name] - else: - for v in d.values(): - yield v - - -class Distribution(object): - """ - A base class for distributions, whether installed or from indexes. - Either way, it must have some metadata, so that's all that's needed - for construction. - """ - - build_time_dependency = False - """ - Set to True if it's known to be only a build-time dependency (i.e. - not needed after installation). - """ - - requested = False - """A boolean that indicates whether the ``REQUESTED`` metadata file is - present (in other words, whether the package was installed by user - request or it was installed as a dependency).""" - - def __init__(self, metadata): - """ - Initialise an instance. - :param metadata: The instance of :class:`Metadata` describing this - distribution. - """ - self.metadata = metadata - self.name = metadata.name - self.key = self.name.lower() # for case-insensitive comparisons - self.version = metadata.version - self.locator = None - self.digest = None - self.extras = None # additional features requested - self.context = None # environment marker overrides - self.download_urls = set() - self.digests = {} - - @property - def source_url(self): - """ - The source archive download URL for this distribution. - """ - return self.metadata.source_url - - download_url = source_url # Backward compatibility - - @property - def name_and_version(self): - """ - A utility property which displays the name and version in parentheses. - """ - return '%s (%s)' % (self.name, self.version) - - @property - def provides(self): - """ - A set of distribution names and versions provided by this distribution. - :return: A set of "name (version)" strings. - """ - plist = self.metadata.provides - s = '%s (%s)' % (self.name, self.version) - if s not in plist: - plist.append(s) - return plist - - def _get_requirements(self, req_attr): - md = self.metadata - logger.debug('Getting requirements from metadata %r', md.todict()) - reqts = getattr(md, req_attr) - return set(md.get_requirements(reqts, extras=self.extras, - env=self.context)) - - @property - def run_requires(self): - return self._get_requirements('run_requires') - - @property - def meta_requires(self): - return self._get_requirements('meta_requires') - - @property - def build_requires(self): - return self._get_requirements('build_requires') - - @property - def test_requires(self): - return self._get_requirements('test_requires') - - @property - def dev_requires(self): - return self._get_requirements('dev_requires') - - def matches_requirement(self, req): - """ - Say if this instance matches (fulfills) a requirement. - :param req: The requirement to match. - :rtype req: str - :return: True if it matches, else False. - """ - # Requirement may contain extras - parse to lose those - # from what's passed to the matcher - r = parse_requirement(req) - scheme = get_scheme(self.metadata.scheme) - try: - matcher = scheme.matcher(r.requirement) - except UnsupportedVersionError: - # XXX compat-mode if cannot read the version - logger.warning('could not read version %r - using name only', - req) - name = req.split()[0] - matcher = scheme.matcher(name) - - name = matcher.key # case-insensitive - - result = False - for p in self.provides: - p_name, p_ver = parse_name_and_version(p) - if p_name != name: - continue - try: - result = matcher.match(p_ver) - break - except UnsupportedVersionError: - pass - return result - - def __repr__(self): - """ - Return a textual representation of this instance, - """ - if self.source_url: - suffix = ' [%s]' % self.source_url - else: - suffix = '' - return '' % (self.name, self.version, suffix) - - def __eq__(self, other): - """ - See if this distribution is the same as another. - :param other: The distribution to compare with. To be equal to one - another. distributions must have the same type, name, - version and source_url. - :return: True if it is the same, else False. - """ - if type(other) is not type(self): - result = False - else: - result = (self.name == other.name and - self.version == other.version and - self.source_url == other.source_url) - return result - - def __hash__(self): - """ - Compute hash in a way which matches the equality test. - """ - return hash(self.name) + hash(self.version) + hash(self.source_url) - - -class BaseInstalledDistribution(Distribution): - """ - This is the base class for installed distributions (whether PEP 376 or - legacy). - """ - - hasher = None - - def __init__(self, metadata, path, env=None): - """ - Initialise an instance. - :param metadata: An instance of :class:`Metadata` which describes the - distribution. This will normally have been initialised - from a metadata file in the ``path``. - :param path: The path of the ``.dist-info`` or ``.egg-info`` - directory for the distribution. - :param env: This is normally the :class:`DistributionPath` - instance where this distribution was found. - """ - super(BaseInstalledDistribution, self).__init__(metadata) - self.path = path - self.dist_path = env - - def get_hash(self, data, hasher=None): - """ - Get the hash of some data, using a particular hash algorithm, if - specified. - - :param data: The data to be hashed. - :type data: bytes - :param hasher: The name of a hash implementation, supported by hashlib, - or ``None``. Examples of valid values are ``'sha1'``, - ``'sha224'``, ``'sha384'``, '``sha256'``, ``'md5'`` and - ``'sha512'``. If no hasher is specified, the ``hasher`` - attribute of the :class:`InstalledDistribution` instance - is used. If the hasher is determined to be ``None``, MD5 - is used as the hashing algorithm. - :returns: The hash of the data. If a hasher was explicitly specified, - the returned hash will be prefixed with the specified hasher - followed by '='. - :rtype: str - """ - if hasher is None: - hasher = self.hasher - if hasher is None: - hasher = hashlib.md5 - prefix = '' - else: - hasher = getattr(hashlib, hasher) - prefix = '%s=' % self.hasher - digest = hasher(data).digest() - digest = base64.urlsafe_b64encode(digest).rstrip(b'=').decode('ascii') - return '%s%s' % (prefix, digest) - - -class InstalledDistribution(BaseInstalledDistribution): - """ - Created with the *path* of the ``.dist-info`` directory provided to the - constructor. It reads the metadata contained in ``pydist.json`` when it is - instantiated., or uses a passed in Metadata instance (useful for when - dry-run mode is being used). - """ - - hasher = 'sha256' - - def __init__(self, path, metadata=None, env=None): - self.finder = finder = resources.finder_for_path(path) - if finder is None: - import pdb; pdb.set_trace () - if env and env._cache_enabled and path in env._cache.path: - metadata = env._cache.path[path].metadata - elif metadata is None: - r = finder.find(METADATA_FILENAME) - # Temporary - for Wheel 0.23 support - if r is None: - r = finder.find(WHEEL_METADATA_FILENAME) - # Temporary - for legacy support - if r is None: - r = finder.find('METADATA') - if r is None: - raise ValueError('no %s found in %s' % (METADATA_FILENAME, - path)) - with contextlib.closing(r.as_stream()) as stream: - metadata = Metadata(fileobj=stream, scheme='legacy') - - super(InstalledDistribution, self).__init__(metadata, path, env) - - if env and env._cache_enabled: - env._cache.add(self) - - try: - r = finder.find('REQUESTED') - except AttributeError: - import pdb; pdb.set_trace () - self.requested = r is not None - - def __repr__(self): - return '' % ( - self.name, self.version, self.path) - - def __str__(self): - return "%s %s" % (self.name, self.version) - - def _get_records(self): - """ - Get the list of installed files for the distribution - :return: A list of tuples of path, hash and size. Note that hash and - size might be ``None`` for some entries. The path is exactly - as stored in the file (which is as in PEP 376). - """ - results = [] - r = self.get_distinfo_resource('RECORD') - with contextlib.closing(r.as_stream()) as stream: - with CSVReader(stream=stream) as record_reader: - # Base location is parent dir of .dist-info dir - #base_location = os.path.dirname(self.path) - #base_location = os.path.abspath(base_location) - for row in record_reader: - missing = [None for i in range(len(row), 3)] - path, checksum, size = row + missing - #if not os.path.isabs(path): - # path = path.replace('/', os.sep) - # path = os.path.join(base_location, path) - results.append((path, checksum, size)) - return results - - @cached_property - def exports(self): - """ - Return the information exported by this distribution. - :return: A dictionary of exports, mapping an export category to a dict - of :class:`ExportEntry` instances describing the individual - export entries, and keyed by name. - """ - result = {} - r = self.get_distinfo_resource(EXPORTS_FILENAME) - if r: - result = self.read_exports() - return result - - def read_exports(self): - """ - Read exports data from a file in .ini format. - - :return: A dictionary of exports, mapping an export category to a list - of :class:`ExportEntry` instances describing the individual - export entries. - """ - result = {} - r = self.get_distinfo_resource(EXPORTS_FILENAME) - if r: - with contextlib.closing(r.as_stream()) as stream: - result = read_exports(stream) - return result - - def write_exports(self, exports): - """ - Write a dictionary of exports to a file in .ini format. - :param exports: A dictionary of exports, mapping an export category to - a list of :class:`ExportEntry` instances describing the - individual export entries. - """ - rf = self.get_distinfo_file(EXPORTS_FILENAME) - with open(rf, 'w') as f: - write_exports(exports, f) - - def get_resource_path(self, relative_path): - """ - NOTE: This API may change in the future. - - Return the absolute path to a resource file with the given relative - path. - - :param relative_path: The path, relative to .dist-info, of the resource - of interest. - :return: The absolute path where the resource is to be found. - """ - r = self.get_distinfo_resource('RESOURCES') - with contextlib.closing(r.as_stream()) as stream: - with CSVReader(stream=stream) as resources_reader: - for relative, destination in resources_reader: - if relative == relative_path: - return destination - raise KeyError('no resource file with relative path %r ' - 'is installed' % relative_path) - - def list_installed_files(self): - """ - Iterates over the ``RECORD`` entries and returns a tuple - ``(path, hash, size)`` for each line. - - :returns: iterator of (path, hash, size) - """ - for result in self._get_records(): - yield result - - def write_installed_files(self, paths, prefix, dry_run=False): - """ - Writes the ``RECORD`` file, using the ``paths`` iterable passed in. Any - existing ``RECORD`` file is silently overwritten. - - prefix is used to determine when to write absolute paths. - """ - prefix = os.path.join(prefix, '') - base = os.path.dirname(self.path) - base_under_prefix = base.startswith(prefix) - base = os.path.join(base, '') - record_path = self.get_distinfo_file('RECORD') - logger.info('creating %s', record_path) - if dry_run: - return None - with CSVWriter(record_path) as writer: - for path in paths: - if os.path.isdir(path) or path.endswith(('.pyc', '.pyo')): - # do not put size and hash, as in PEP-376 - hash_value = size = '' - else: - size = '%d' % os.path.getsize(path) - with open(path, 'rb') as fp: - hash_value = self.get_hash(fp.read()) - if path.startswith(base) or (base_under_prefix and - path.startswith(prefix)): - path = os.path.relpath(path, base) - writer.writerow((path, hash_value, size)) - - # add the RECORD file itself - if record_path.startswith(base): - record_path = os.path.relpath(record_path, base) - writer.writerow((record_path, '', '')) - return record_path - - def check_installed_files(self): - """ - Checks that the hashes and sizes of the files in ``RECORD`` are - matched by the files themselves. Returns a (possibly empty) list of - mismatches. Each entry in the mismatch list will be a tuple consisting - of the path, 'exists', 'size' or 'hash' according to what didn't match - (existence is checked first, then size, then hash), the expected - value and the actual value. - """ - mismatches = [] - base = os.path.dirname(self.path) - record_path = self.get_distinfo_file('RECORD') - for path, hash_value, size in self.list_installed_files(): - if not os.path.isabs(path): - path = os.path.join(base, path) - if path == record_path: - continue - if not os.path.exists(path): - mismatches.append((path, 'exists', True, False)) - elif os.path.isfile(path): - actual_size = str(os.path.getsize(path)) - if size and actual_size != size: - mismatches.append((path, 'size', size, actual_size)) - elif hash_value: - if '=' in hash_value: - hasher = hash_value.split('=', 1)[0] - else: - hasher = None - - with open(path, 'rb') as f: - actual_hash = self.get_hash(f.read(), hasher) - if actual_hash != hash_value: - mismatches.append((path, 'hash', hash_value, actual_hash)) - return mismatches - - @cached_property - def shared_locations(self): - """ - A dictionary of shared locations whose keys are in the set 'prefix', - 'purelib', 'platlib', 'scripts', 'headers', 'data' and 'namespace'. - The corresponding value is the absolute path of that category for - this distribution, and takes into account any paths selected by the - user at installation time (e.g. via command-line arguments). In the - case of the 'namespace' key, this would be a list of absolute paths - for the roots of namespace packages in this distribution. - - The first time this property is accessed, the relevant information is - read from the SHARED file in the .dist-info directory. - """ - result = {} - shared_path = os.path.join(self.path, 'SHARED') - if os.path.isfile(shared_path): - with codecs.open(shared_path, 'r', encoding='utf-8') as f: - lines = f.read().splitlines() - for line in lines: - key, value = line.split('=', 1) - if key == 'namespace': - result.setdefault(key, []).append(value) - else: - result[key] = value - return result - - def write_shared_locations(self, paths, dry_run=False): - """ - Write shared location information to the SHARED file in .dist-info. - :param paths: A dictionary as described in the documentation for - :meth:`shared_locations`. - :param dry_run: If True, the action is logged but no file is actually - written. - :return: The path of the file written to. - """ - shared_path = os.path.join(self.path, 'SHARED') - logger.info('creating %s', shared_path) - if dry_run: - return None - lines = [] - for key in ('prefix', 'lib', 'headers', 'scripts', 'data'): - path = paths[key] - if os.path.isdir(paths[key]): - lines.append('%s=%s' % (key, path)) - for ns in paths.get('namespace', ()): - lines.append('namespace=%s' % ns) - - with codecs.open(shared_path, 'w', encoding='utf-8') as f: - f.write('\n'.join(lines)) - return shared_path - - def get_distinfo_resource(self, path): - if path not in DIST_FILES: - raise DistlibException('invalid path for a dist-info file: ' - '%r at %r' % (path, self.path)) - finder = resources.finder_for_path(self.path) - if finder is None: - raise DistlibException('Unable to get a finder for %s' % self.path) - return finder.find(path) - - def get_distinfo_file(self, path): - """ - Returns a path located under the ``.dist-info`` directory. Returns a - string representing the path. - - :parameter path: a ``'/'``-separated path relative to the - ``.dist-info`` directory or an absolute path; - If *path* is an absolute path and doesn't start - with the ``.dist-info`` directory path, - a :class:`DistlibException` is raised - :type path: str - :rtype: str - """ - # Check if it is an absolute path # XXX use relpath, add tests - if path.find(os.sep) >= 0: - # it's an absolute path? - distinfo_dirname, path = path.split(os.sep)[-2:] - if distinfo_dirname != self.path.split(os.sep)[-1]: - raise DistlibException( - 'dist-info file %r does not belong to the %r %s ' - 'distribution' % (path, self.name, self.version)) - - # The file must be relative - if path not in DIST_FILES: - raise DistlibException('invalid path for a dist-info file: ' - '%r at %r' % (path, self.path)) - - return os.path.join(self.path, path) - - def list_distinfo_files(self): - """ - Iterates over the ``RECORD`` entries and returns paths for each line if - the path is pointing to a file located in the ``.dist-info`` directory - or one of its subdirectories. - - :returns: iterator of paths - """ - base = os.path.dirname(self.path) - for path, checksum, size in self._get_records(): - # XXX add separator or use real relpath algo - if not os.path.isabs(path): - path = os.path.join(base, path) - if path.startswith(self.path): - yield path - - def __eq__(self, other): - return (isinstance(other, InstalledDistribution) and - self.path == other.path) - - # See http://docs.python.org/reference/datamodel#object.__hash__ - __hash__ = object.__hash__ - - -class EggInfoDistribution(BaseInstalledDistribution): - """Created with the *path* of the ``.egg-info`` directory or file provided - to the constructor. It reads the metadata contained in the file itself, or - if the given path happens to be a directory, the metadata is read from the - file ``PKG-INFO`` under that directory.""" - - requested = True # as we have no way of knowing, assume it was - shared_locations = {} - - def __init__(self, path, env=None): - def set_name_and_version(s, n, v): - s.name = n - s.key = n.lower() # for case-insensitive comparisons - s.version = v - - self.path = path - self.dist_path = env - if env and env._cache_enabled and path in env._cache_egg.path: - metadata = env._cache_egg.path[path].metadata - set_name_and_version(self, metadata.name, metadata.version) - else: - metadata = self._get_metadata(path) - - # Need to be set before caching - set_name_and_version(self, metadata.name, metadata.version) - - if env and env._cache_enabled: - env._cache_egg.add(self) - super(EggInfoDistribution, self).__init__(metadata, path, env) - - def _get_metadata(self, path): - requires = None - - def parse_requires_data(data): - """Create a list of dependencies from a requires.txt file. - - *data*: the contents of a setuptools-produced requires.txt file. - """ - reqs = [] - lines = data.splitlines() - for line in lines: - line = line.strip() - if line.startswith('['): - logger.warning('Unexpected line: quitting requirement scan: %r', - line) - break - r = parse_requirement(line) - if not r: - logger.warning('Not recognised as a requirement: %r', line) - continue - if r.extras: - logger.warning('extra requirements in requires.txt are ' - 'not supported') - if not r.constraints: - reqs.append(r.name) - else: - cons = ', '.join('%s%s' % c for c in r.constraints) - reqs.append('%s (%s)' % (r.name, cons)) - return reqs - - def parse_requires_path(req_path): - """Create a list of dependencies from a requires.txt file. - - *req_path*: the path to a setuptools-produced requires.txt file. - """ - - reqs = [] - try: - with codecs.open(req_path, 'r', 'utf-8') as fp: - reqs = parse_requires_data(fp.read()) - except IOError: - pass - return reqs - - if path.endswith('.egg'): - if os.path.isdir(path): - meta_path = os.path.join(path, 'EGG-INFO', 'PKG-INFO') - metadata = Metadata(path=meta_path, scheme='legacy') - req_path = os.path.join(path, 'EGG-INFO', 'requires.txt') - requires = parse_requires_path(req_path) - else: - # FIXME handle the case where zipfile is not available - zipf = zipimport.zipimporter(path) - fileobj = StringIO( - zipf.get_data('EGG-INFO/PKG-INFO').decode('utf8')) - metadata = Metadata(fileobj=fileobj, scheme='legacy') - try: - data = zipf.get_data('EGG-INFO/requires.txt') - requires = parse_requires_data(data.decode('utf-8')) - except IOError: - requires = None - elif path.endswith('.egg-info'): - if os.path.isdir(path): - req_path = os.path.join(path, 'requires.txt') - requires = parse_requires_path(req_path) - path = os.path.join(path, 'PKG-INFO') - metadata = Metadata(path=path, scheme='legacy') - else: - raise DistlibException('path must end with .egg-info or .egg, ' - 'got %r' % path) - - if requires: - metadata.add_requirements(requires) - return metadata - - def __repr__(self): - return '' % ( - self.name, self.version, self.path) - - def __str__(self): - return "%s %s" % (self.name, self.version) - - def check_installed_files(self): - """ - Checks that the hashes and sizes of the files in ``RECORD`` are - matched by the files themselves. Returns a (possibly empty) list of - mismatches. Each entry in the mismatch list will be a tuple consisting - of the path, 'exists', 'size' or 'hash' according to what didn't match - (existence is checked first, then size, then hash), the expected - value and the actual value. - """ - mismatches = [] - record_path = os.path.join(self.path, 'installed-files.txt') - if os.path.exists(record_path): - for path, _, _ in self.list_installed_files(): - if path == record_path: - continue - if not os.path.exists(path): - mismatches.append((path, 'exists', True, False)) - return mismatches - - def list_installed_files(self): - """ - Iterates over the ``installed-files.txt`` entries and returns a tuple - ``(path, hash, size)`` for each line. - - :returns: a list of (path, hash, size) - """ - - def _md5(path): - f = open(path, 'rb') - try: - content = f.read() - finally: - f.close() - return hashlib.md5(content).hexdigest() - - def _size(path): - return os.stat(path).st_size - - record_path = os.path.join(self.path, 'installed-files.txt') - result = [] - if os.path.exists(record_path): - with codecs.open(record_path, 'r', encoding='utf-8') as f: - for line in f: - line = line.strip() - p = os.path.normpath(os.path.join(self.path, line)) - # "./" is present as a marker between installed files - # and installation metadata files - if not os.path.exists(p): - logger.warning('Non-existent file: %s', p) - if p.endswith(('.pyc', '.pyo')): - continue - #otherwise fall through and fail - if not os.path.isdir(p): - result.append((p, _md5(p), _size(p))) - result.append((record_path, None, None)) - return result - - def list_distinfo_files(self, absolute=False): - """ - Iterates over the ``installed-files.txt`` entries and returns paths for - each line if the path is pointing to a file located in the - ``.egg-info`` directory or one of its subdirectories. - - :parameter absolute: If *absolute* is ``True``, each returned path is - transformed into a local absolute path. Otherwise the - raw value from ``installed-files.txt`` is returned. - :type absolute: boolean - :returns: iterator of paths - """ - record_path = os.path.join(self.path, 'installed-files.txt') - skip = True - with codecs.open(record_path, 'r', encoding='utf-8') as f: - for line in f: - line = line.strip() - if line == './': - skip = False - continue - if not skip: - p = os.path.normpath(os.path.join(self.path, line)) - if p.startswith(self.path): - if absolute: - yield p - else: - yield line - - def __eq__(self, other): - return (isinstance(other, EggInfoDistribution) and - self.path == other.path) - - # See http://docs.python.org/reference/datamodel#object.__hash__ - __hash__ = object.__hash__ - -new_dist_class = InstalledDistribution -old_dist_class = EggInfoDistribution - - -class DependencyGraph(object): - """ - Represents a dependency graph between distributions. - - The dependency relationships are stored in an ``adjacency_list`` that maps - distributions to a list of ``(other, label)`` tuples where ``other`` - is a distribution and the edge is labeled with ``label`` (i.e. the version - specifier, if such was provided). Also, for more efficient traversal, for - every distribution ``x``, a list of predecessors is kept in - ``reverse_list[x]``. An edge from distribution ``a`` to - distribution ``b`` means that ``a`` depends on ``b``. If any missing - dependencies are found, they are stored in ``missing``, which is a - dictionary that maps distributions to a list of requirements that were not - provided by any other distributions. - """ - - def __init__(self): - self.adjacency_list = {} - self.reverse_list = {} - self.missing = {} - - def add_distribution(self, distribution): - """Add the *distribution* to the graph. - - :type distribution: :class:`distutils2.database.InstalledDistribution` - or :class:`distutils2.database.EggInfoDistribution` - """ - self.adjacency_list[distribution] = [] - self.reverse_list[distribution] = [] - #self.missing[distribution] = [] - - def add_edge(self, x, y, label=None): - """Add an edge from distribution *x* to distribution *y* with the given - *label*. - - :type x: :class:`distutils2.database.InstalledDistribution` or - :class:`distutils2.database.EggInfoDistribution` - :type y: :class:`distutils2.database.InstalledDistribution` or - :class:`distutils2.database.EggInfoDistribution` - :type label: ``str`` or ``None`` - """ - self.adjacency_list[x].append((y, label)) - # multiple edges are allowed, so be careful - if x not in self.reverse_list[y]: - self.reverse_list[y].append(x) - - def add_missing(self, distribution, requirement): - """ - Add a missing *requirement* for the given *distribution*. - - :type distribution: :class:`distutils2.database.InstalledDistribution` - or :class:`distutils2.database.EggInfoDistribution` - :type requirement: ``str`` - """ - logger.debug('%s missing %r', distribution, requirement) - self.missing.setdefault(distribution, []).append(requirement) - - def _repr_dist(self, dist): - return '%s %s' % (dist.name, dist.version) - - def repr_node(self, dist, level=1): - """Prints only a subgraph""" - output = [self._repr_dist(dist)] - for other, label in self.adjacency_list[dist]: - dist = self._repr_dist(other) - if label is not None: - dist = '%s [%s]' % (dist, label) - output.append(' ' * level + str(dist)) - suboutput = self.repr_node(other, level + 1) - subs = suboutput.split('\n') - output.extend(subs[1:]) - return '\n'.join(output) - - def to_dot(self, f, skip_disconnected=True): - """Writes a DOT output for the graph to the provided file *f*. - - If *skip_disconnected* is set to ``True``, then all distributions - that are not dependent on any other distribution are skipped. - - :type f: has to support ``file``-like operations - :type skip_disconnected: ``bool`` - """ - disconnected = [] - - f.write("digraph dependencies {\n") - for dist, adjs in self.adjacency_list.items(): - if len(adjs) == 0 and not skip_disconnected: - disconnected.append(dist) - for other, label in adjs: - if not label is None: - f.write('"%s" -> "%s" [label="%s"]\n' % - (dist.name, other.name, label)) - else: - f.write('"%s" -> "%s"\n' % (dist.name, other.name)) - if not skip_disconnected and len(disconnected) > 0: - f.write('subgraph disconnected {\n') - f.write('label = "Disconnected"\n') - f.write('bgcolor = red\n') - - for dist in disconnected: - f.write('"%s"' % dist.name) - f.write('\n') - f.write('}\n') - f.write('}\n') - - def topological_sort(self): - """ - Perform a topological sort of the graph. - :return: A tuple, the first element of which is a topologically sorted - list of distributions, and the second element of which is a - list of distributions that cannot be sorted because they have - circular dependencies and so form a cycle. - """ - result = [] - # Make a shallow copy of the adjacency list - alist = {} - for k, v in self.adjacency_list.items(): - alist[k] = v[:] - while True: - # See what we can remove in this run - to_remove = [] - for k, v in list(alist.items())[:]: - if not v: - to_remove.append(k) - del alist[k] - if not to_remove: - # What's left in alist (if anything) is a cycle. - break - # Remove from the adjacency list of others - for k, v in alist.items(): - alist[k] = [(d, r) for d, r in v if d not in to_remove] - logger.debug('Moving to result: %s', - ['%s (%s)' % (d.name, d.version) for d in to_remove]) - result.extend(to_remove) - return result, list(alist.keys()) - - def __repr__(self): - """Representation of the graph""" - output = [] - for dist, adjs in self.adjacency_list.items(): - output.append(self.repr_node(dist)) - return '\n'.join(output) - - -def make_graph(dists, scheme='default'): - """Makes a dependency graph from the given distributions. - - :parameter dists: a list of distributions - :type dists: list of :class:`distutils2.database.InstalledDistribution` and - :class:`distutils2.database.EggInfoDistribution` instances - :rtype: a :class:`DependencyGraph` instance - """ - scheme = get_scheme(scheme) - graph = DependencyGraph() - provided = {} # maps names to lists of (version, dist) tuples - - # first, build the graph and find out what's provided - for dist in dists: - graph.add_distribution(dist) - - for p in dist.provides: - name, version = parse_name_and_version(p) - logger.debug('Add to provided: %s, %s, %s', name, version, dist) - provided.setdefault(name, []).append((version, dist)) - - # now make the edges - for dist in dists: - requires = (dist.run_requires | dist.meta_requires | - dist.build_requires | dist.dev_requires) - for req in requires: - try: - matcher = scheme.matcher(req) - except UnsupportedVersionError: - # XXX compat-mode if cannot read the version - logger.warning('could not read version %r - using name only', - req) - name = req.split()[0] - matcher = scheme.matcher(name) - - name = matcher.key # case-insensitive - - matched = False - if name in provided: - for version, provider in provided[name]: - try: - match = matcher.match(version) - except UnsupportedVersionError: - match = False - - if match: - graph.add_edge(dist, provider, req) - matched = True - break - if not matched: - graph.add_missing(dist, req) - return graph - - -def get_dependent_dists(dists, dist): - """Recursively generate a list of distributions from *dists* that are - dependent on *dist*. - - :param dists: a list of distributions - :param dist: a distribution, member of *dists* for which we are interested - """ - if dist not in dists: - raise DistlibException('given distribution %r is not a member ' - 'of the list' % dist.name) - graph = make_graph(dists) - - dep = [dist] # dependent distributions - todo = graph.reverse_list[dist] # list of nodes we should inspect - - while todo: - d = todo.pop() - dep.append(d) - for succ in graph.reverse_list[d]: - if succ not in dep: - todo.append(succ) - - dep.pop(0) # remove dist from dep, was there to prevent infinite loops - return dep - - -def get_required_dists(dists, dist): - """Recursively generate a list of distributions from *dists* that are - required by *dist*. - - :param dists: a list of distributions - :param dist: a distribution, member of *dists* for which we are interested - """ - if dist not in dists: - raise DistlibException('given distribution %r is not a member ' - 'of the list' % dist.name) - graph = make_graph(dists) - - req = [] # required distributions - todo = graph.adjacency_list[dist] # list of nodes we should inspect - - while todo: - d = todo.pop()[0] - req.append(d) - for pred in graph.adjacency_list[d]: - if pred not in req: - todo.append(pred) - - return req - - -def make_dist(name, version, **kwargs): - """ - A convenience method for making a dist given just a name and version. - """ - summary = kwargs.pop('summary', 'Placeholder for summary') - md = Metadata(**kwargs) - md.name = name - md.version = version - md.summary = summary or 'Placeholder for summary' - return Distribution(md) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/index.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/index.py deleted file mode 100644 index 6803dd2..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/index.py +++ /dev/null @@ -1,515 +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 - self.rpc_proxy = 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} - if self.rpc_proxy is None: - self.rpc_proxy = ServerProxy(self.url, timeout=3.0) - return self.rpc_proxy.search(terms, operator or 'and') diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py deleted file mode 100644 index 14789ef..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py +++ /dev/null @@ -1,1283 +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 -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('^(\w+)=([a-f0-9]+)') -CHARSET = re.compile(r';\s*charset\s*=\s*(.*)\s*$', re.I) -HTML_CONTENT_TYPE = re.compile('text/html|application/x(ht)?ml') -DEFAULT_INDEX = 'https://pypi.python.org/pypi' - -def get_all_distribution_names(url=None): - """ - Return all distribution names known by an index. - :param url: The URL of the index. - :return: A list of all known distribution names. - """ - if url is None: - url = DEFAULT_INDEX - client = ServerProxy(url, timeout=3.0) - return client.list_packages() - -class RedirectHandler(BaseRedirectHandler): - """ - A class to work around a bug in some Python 3.2.x releases. - """ - # There's a bug in the base version for some 3.2.x - # (e.g. 3.2.2 on Ubuntu Oneiric). If a Location header - # returns e.g. /abc, it bails because it says the scheme '' - # is bogus, when actually it should use the request's - # URL for the scheme. See Python issue #13696. - def http_error_302(self, req, fp, code, msg, headers): - # Some servers (incorrectly) return multiple Location headers - # (so probably same goes for URI). Use first header. - newurl = None - for key in ('location', 'uri'): - if key in headers: - newurl = headers[key] - break - if newurl is None: - return - urlparts = urlparse(newurl) - if urlparts.scheme == '': - newurl = urljoin(req.get_full_url(), newurl) - if hasattr(headers, 'replace_header'): - headers.replace_header(key, newurl) - else: - headers[key] = newurl - return BaseRedirectHandler.http_error_302(self, req, fp, code, msg, - headers) - - http_error_301 = http_error_303 = http_error_307 = http_error_302 - -class Locator(object): - """ - A base class for locators - things that locate distributions. - """ - source_extensions = ('.tar.gz', '.tar.bz2', '.tar', '.zip', '.tgz', '.tbz') - binary_extensions = ('.egg', '.exe', '.whl') - excluded_extensions = ('.pdf',) - - # A list of tags indicating which wheels you want to match. The default - # value of None matches against the tags compatible with the running - # Python. If you want to match other values, set wheel_tags on a locator - # instance to a list of tuples (pyver, abi, arch) which you want to match. - wheel_tags = None - - downloadable_extensions = source_extensions + ('.whl',) - - def __init__(self, scheme='default'): - """ - Initialise an instance. - :param scheme: Because locators look for most recent versions, they - need to know the version scheme to use. This specifies - the current PEP-recommended scheme - use ``'legacy'`` - if you need to support existing distributions on PyPI. - """ - self._cache = {} - self.scheme = scheme - # Because of bugs in some of the handlers on some of the platforms, - # we use our own opener rather than just using urlopen. - self.opener = build_opener(RedirectHandler()) - # If get_project() is called from locate(), the matcher instance - # is set from the requirement passed to locate(). See issue #18 for - # why this can be useful to know. - self.matcher = None - 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: - 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') - if is_wheel: - compatible = is_compatible(Wheel(basename), self.wheel_tags) - return (t.scheme != 'https', 'pypi.python.org' in t.netloc, - is_wheel, compatible, basename) - - def prefer_url(self, url1, url2): - """ - Choose one of two URLs where both are candidates for distribution - archives for the same version of a distribution (for example, - .tar.gz vs. zip). - - The current implementation favours https:// URLs over http://, archives - from PyPI over those from other locations, wheel compatibility (if a - wheel) and then the archive name. - """ - result = url2 - if url1: - s1 = self.score_url(url1) - s2 = self.score_url(url2) - if s1 > s2: - result = url1 - if result != url2: - logger.debug('Not replacing %r with %r', url1, url2) - else: - logger.debug('Replacing %r with %r', url1, url2) - return result - - def split_filename(self, filename, project_name): - """ - Attempt to split a filename in project name, version and Python version. - """ - return split_filename(filename, project_name) - - def convert_url_to_download_info(self, url, project_name): - """ - See if a URL is a candidate for a download URL for a project (the URL - has typically been scraped from an HTML page). - - If it is, a dictionary is returned with keys "name", "version", - "filename" and "url"; otherwise, None is returned. - """ - def same_project(name1, name2): - return normalize_name(name1) == normalize_name(name2) - - result = None - scheme, netloc, path, params, query, frag = urlparse(url) - if frag.lower().startswith('egg='): - logger.debug('%s: version hint in fragment: %r', - project_name, frag) - m = HASHER_HASH.match(frag) - if m: - algo, digest = m.groups() - else: - algo, digest = None, None - origpath = path - if path and path[-1] == '/': - path = path[:-1] - if path.endswith('.whl'): - try: - wheel = Wheel(path) - if is_compatible(wheel, self.wheel_tags): - if project_name is None: - include = True - else: - include = same_project(wheel.name, project_name) - if include: - result = { - 'name': wheel.name, - 'version': wheel.version, - 'filename': wheel.filename, - 'url': urlunparse((scheme, netloc, origpath, - params, query, '')), - 'python-version': ', '.join( - ['.'.join(list(v[2:])) for v in wheel.pyver]), - } - except Exception as e: # pragma: no cover - logger.warning('invalid path for wheel: %s', path) - elif path.endswith(self.downloadable_extensions): - path = filename = posixpath.basename(path) - for ext in self.downloadable_extensions: - if path.endswith(ext): - path = path[:-len(ext)] - t = self.split_filename(path, project_name) - if not t: - logger.debug('No match for project/version: %s', path) - else: - name, version, pyver = t - if not project_name or same_project(project_name, name): - result = { - 'name': name, - 'version': version, - 'filename': filename, - 'url': urlunparse((scheme, netloc, origpath, - params, query, '')), - #'packagetype': 'sdist', - } - if pyver: - result['python-version'] = pyver - break - if result and algo: - result['%s_digest' % algo] = digest - return result - - def _get_digest(self, info): - """ - Get a digest from a dictionary by looking at keys of the form - 'algo_digest'. - - Returns a 2-tuple (algo, digest) if found, else None. Currently - looks only for SHA256, then MD5. - """ - result = None - for algo in ('sha256', 'md5'): - key = '%s_digest' % algo - if key in info: - result = (algo, info[key]) - break - return result - - def _update_version_data(self, result, info): - """ - Update a result dictionary (the final result from _get_project) with a - dictionary for a specific version, which typically holds information - gleaned from a filename or URL for an archive for the distribution. - """ - name = info.pop('name') - version = info.pop('version') - if version in result: - dist = result[version] - md = dist.metadata - else: - dist = make_dist(name, version, scheme=self.scheme) - md = dist.metadata - dist.digest = digest = self._get_digest(info) - url = info['url'] - result['digests'][url] = digest - if md.source_url != info['url']: - md.source_url = self.prefer_url(md.source_url, url) - result['urls'].setdefault(version, set()).add(url) - dist.locator = self - result[version] = dist - - def locate(self, requirement, prereleases=False): - """ - Find the most recent distribution which matches the given - requirement. - - :param requirement: A requirement of the form 'foo (1.0)' or perhaps - 'foo (>= 1.0, < 2.0, != 1.3)' - :param prereleases: If ``True``, allow pre-release versions - to be located. Otherwise, pre-release versions - are not returned. - :return: A :class:`Distribution` instance, or ``None`` if no such - distribution could be located. - """ - result = None - r = parse_requirement(requirement) - if r is None: - raise DistlibException('Not a valid requirement: %r' % requirement) - scheme = get_scheme(self.scheme) - self.matcher = matcher = scheme.matcher(r.requirement) - logger.debug('matcher: %s (%s)', matcher, type(matcher).__name__) - versions = self.get_project(r.name) - if len(versions) > 2: # urls and digests keys are present - # sometimes, versions are invalid - slist = [] - vcls = matcher.version_class - for k in versions: - if k in ('urls', 'digests'): - continue - try: - if not matcher.match(k): - logger.debug('%s did not match %r', matcher, k) - else: - if prereleases or not vcls(k).is_prerelease: - slist.append(k) - else: - logger.debug('skipping pre-release ' - 'version %s of %s', k, matcher.name) - except Exception: # pragma: no cover - logger.warning('error matching %s with %r', matcher, k) - pass # slist.append(k) - if len(slist) > 1: - slist = sorted(slist, key=scheme.key) - if slist: - logger.debug('sorted list: %s', slist) - version = slist[-1] - result = versions[version] - if result: - if r.extras: - result.extras = r.extras - result.download_urls = versions.get('urls', {}).get(version, set()) - d = {} - sd = versions.get('digests', {}) - for url in result.download_urls: - if url in sd: - d[url] = sd[url] - result.digests = d - self.matcher = None - return result - - -class PyPIRPCLocator(Locator): - """ - This locator uses XML-RPC to locate distributions. It therefore - cannot be used with simple mirrors (that only mirror file content). - """ - def __init__(self, url, **kwargs): - """ - Initialise an instance. - - :param url: The URL to use for XML-RPC. - :param kwargs: Passed to the superclass constructor. - """ - super(PyPIRPCLocator, self).__init__(**kwargs) - self.base_url = url - self.client = ServerProxy(url, timeout=3.0) - - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - return set(self.client.list_packages()) - - def _get_project(self, name): - result = {'urls': {}, 'digests': {}} - versions = self.client.package_releases(name, True) - for v in versions: - urls = self.client.release_urls(name, v) - data = self.client.release_data(name, v) - metadata = Metadata(scheme=self.scheme) - metadata.name = data['name'] - metadata.version = data['version'] - metadata.license = data.get('license') - metadata.keywords = data.get('keywords', []) - metadata.summary = data.get('summary') - dist = Distribution(metadata) - if urls: - info = urls[0] - metadata.source_url = info['url'] - dist.digest = self._get_digest(info) - dist.locator = self - result[v] = dist - for info in urls: - url = info['url'] - digest = self._get_digest(info) - result['urls'].setdefault(v, set()).add(url) - result['digests'][url] = digest - return result - -class PyPIJSONLocator(Locator): - """ - This locator uses PyPI's JSON interface. It's very limited in functionality - and probably not worth using. - """ - def __init__(self, url, **kwargs): - super(PyPIJSONLocator, self).__init__(**kwargs) - self.base_url = ensure_slash(url) - - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - raise NotImplementedError('Not available from this locator') - - def _get_project(self, name): - result = {'urls': {}, 'digests': {}} - url = urljoin(self.base_url, '%s/json' % quote(name)) - try: - resp = self.opener.open(url) - data = resp.read().decode() # for now - d = json.loads(data) - md = Metadata(scheme=self.scheme) - data = d['info'] - md.name = data['name'] - md.version = data['version'] - md.license = data.get('license') - md.keywords = data.get('keywords', []) - md.summary = data.get('summary') - dist = Distribution(md) - dist.locator = self - urls = d['urls'] - result[md.version] = dist - for info in d['urls']: - url = info['url'] - dist.download_urls.add(url) - dist.digests[url] = self._get_digest(info) - result['urls'].setdefault(md.version, set()).add(url) - result['digests'][url] = self._get_digest(info) - # Now get other releases - for version, infos in d['releases'].items(): - if version == md.version: - continue # already done - omd = Metadata(scheme=self.scheme) - omd.name = md.name - omd.version = version - odist = Distribution(omd) - odist.locator = self - result[version] = odist - for info in infos: - url = info['url'] - odist.download_urls.add(url) - odist.digests[url] = self._get_digest(info) - result['urls'].setdefault(version, set()).add(url) - result['digests'][url] = self._get_digest(info) -# for info in urls: -# md.source_url = info['url'] -# dist.digest = self._get_digest(info) -# dist.locator = self -# for info in urls: -# url = info['url'] -# result['urls'].setdefault(md.version, set()).add(url) -# result['digests'][url] = self._get_digest(info) - except Exception as e: - 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[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*))\s+)? -href\s*=\s*(?:"(?P[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*)) -(\s+rel\s*=\s*(?:"(?P[^"]*)"|'(?P[^']*)'|(?P[^>\s\n]*)))? -""", re.I | re.S | re.X) - _base = re.compile(r"""]+)""", re.I | re.S) - - def __init__(self, data, url): - """ - Initialise an instance with the Unicode page contents and the URL they - came from. - """ - self.data = data - self.base_url = self.url = url - m = self._base.search(self.data) - if m: - self.base_url = m.group(1) - - _clean_re = re.compile(r'[^a-z0-9$&+,/:;=?@.#%_\\|-]', re.I) - - @cached_property - def links(self): - """ - Return the URLs of all the links on a page together with information - about their "rel" attribute, for determining which ones to treat as - downloads and which ones to queue for further scraping. - """ - def clean(url): - "Tidy up an URL." - scheme, netloc, path, params, query, frag = urlparse(url) - return urlunparse((scheme, netloc, quote(path), - params, query, frag)) - - result = set() - for match in self._href.finditer(self.data): - d = match.groupdict('') - rel = (d['rel1'] or d['rel2'] or d['rel3'] or - d['rel4'] or d['rel5'] or d['rel6']) - url = d['url1'] or d['url2'] or d['url3'] - url = urljoin(self.base_url, url) - url = unescape(url) - url = self._clean_re.sub(lambda m: '%%%2x' % ord(m.group(0)), url) - result.add((url, rel)) - # We sort the result, hoping to bring the most recent versions - # to the front - result = sorted(result, key=lambda t: t[0], reverse=True) - return result - - -class SimpleScrapingLocator(Locator): - """ - A locator which scrapes HTML pages to locate downloads for a distribution. - This runs multiple threads to do the I/O; performance is at least as good - as pip's PackageFinder, which works in an analogous fashion. - """ - - # These are used to deal with various Content-Encoding schemes. - decoders = { - 'deflate': zlib.decompress, - 'gzip': lambda b: gzip.GzipFile(fileobj=BytesIO(d)).read(), - 'none': lambda b: b, - } - - def __init__(self, url, timeout=None, num_workers=10, **kwargs): - """ - Initialise an instance. - :param url: The root URL to use for scraping. - :param timeout: The timeout, in seconds, to be applied to requests. - This defaults to ``None`` (no timeout specified). - :param num_workers: The number of worker threads you want to do I/O, - This defaults to 10. - :param kwargs: Passed to the superclass. - """ - super(SimpleScrapingLocator, self).__init__(**kwargs) - self.base_url = ensure_slash(url) - self.timeout = timeout - self._page_cache = {} - self._seen = set() - self._to_fetch = queue.Queue() - self._bad_hosts = set() - self.skip_externals = False - self.num_workers = num_workers - self._lock = threading.RLock() - # See issue #45: we need to be resilient when the locator is used - # in a thread, e.g. with concurrent.futures. We can't use self._lock - # as it is for coordinating our internal threads - the ones created - # in _prepare_threads. - self._gplock = threading.RLock() - - def _prepare_threads(self): - """ - Threads are created only when get_project is called, and terminate - before it returns. They are there primarily to parallelise I/O (i.e. - fetching web pages). - """ - self._threads = [] - for i in range(self.num_workers): - t = threading.Thread(target=self._fetch) - t.setDaemon(True) - t.start() - self._threads.append(t) - - def _wait_threads(self): - """ - Tell all the threads to terminate (by sending a sentinel value) and - wait for them to do so. - """ - # Note that you need two loops, since you can't say which - # thread will get each sentinel - for t in self._threads: - self._to_fetch.put(None) # sentinel - for t in self._threads: - t.join() - self._threads = [] - - def _get_project(self, name): - result = {'urls': {}, 'digests': {}} - with self._gplock: - self.result = result - self.project_name = name - url = urljoin(self.base_url, '%s/' % quote(name)) - self._seen.clear() - self._page_cache.clear() - self._prepare_threads() - try: - logger.debug('Queueing %s', url) - self._to_fetch.put(url) - self._to_fetch.join() - finally: - self._wait_threads() - del self.result - return result - - platform_dependent = re.compile(r'\b(linux-(i\d86|x86_64|arm\w+)|' - r'win(32|-amd64)|macosx-?\d+)\b', re.I) - - def _is_platform_dependent(self, url): - """ - Does an URL refer to a platform-specific download? - """ - return self.platform_dependent.search(url) - - def _process_download(self, url): - """ - See if an URL is a suitable download for a project. - - If it is, register information in the result dictionary (for - _get_project) about the specific version it's for. - - Note that the return value isn't actually used other than as a boolean - value. - """ - if self._is_platform_dependent(url): - info = None - else: - info = self.convert_url_to_download_info(url, self.project_name) - logger.debug('process_download: %s -> %s', url, info) - if info: - with self._lock: # needed because self.result is shared - self._update_version_data(self.result, info) - return info - - def _should_queue(self, link, referrer, rel): - """ - Determine whether a link URL from a referring page and with a - particular "rel" attribute should be queued for scraping. - """ - scheme, netloc, path, _, _, _ = urlparse(link) - if path.endswith(self.source_extensions + self.binary_extensions + - self.excluded_extensions): - result = False - elif self.skip_externals and not link.startswith(self.base_url): - result = False - elif not referrer.startswith(self.base_url): - result = False - elif rel not in ('homepage', 'download'): - result = False - elif scheme not in ('http', 'https', 'ftp'): - result = False - elif self._is_platform_dependent(link): - result = False - else: - host = netloc.split(':', 1)[0] - if host.lower() == 'localhost': - result = False - else: - result = True - logger.debug('should_queue: %s (%s) from %s -> %s', link, rel, - referrer, result) - return result - - def _fetch(self): - """ - Get a URL to fetch from the work queue, get the HTML page, examine its - links for download candidates and candidates for further scraping. - - This is a handy method to run in a thread. - """ - while True: - url = self._to_fetch.get() - try: - if url: - page = self.get_page(url) - if page is None: # e.g. after an error - continue - for link, rel in page.links: - if link not in self._seen: - self._seen.add(link) - if (not self._process_download(link) and - self._should_queue(link, url, rel)): - logger.debug('Queueing %s from %s', link, url) - self._to_fetch.put(link) - 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(']*>([^<]+)<') - - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - result = set() - page = self.get_page(self.base_url) - if not page: - raise DistlibException('Unable to get %s' % self.base_url) - for match in self._distname_re.finditer(page.data): - result.add(match.group(1)) - return result - -class DirectoryLocator(Locator): - """ - This class locates distributions in a directory tree. - """ - - def __init__(self, path, **kwargs): - """ - Initialise an instance. - :param path: The root of the directory tree to search. - :param kwargs: Passed to the superclass constructor, - except for: - * recursive - if True (the default), subdirectories are - recursed into. If False, only the top-level directory - is searched, - """ - self.recursive = kwargs.pop('recursive', True) - super(DirectoryLocator, self).__init__(**kwargs) - path = os.path.abspath(path) - if not os.path.isdir(path): # pragma: no cover - raise DistlibException('Not a directory: %r' % path) - self.base_dir = path - - def should_include(self, filename, parent): - """ - Should a filename be considered as a candidate for a distribution - archive? As well as the filename, the directory which contains it - is provided, though not used by the current implementation. - """ - return filename.endswith(self.downloadable_extensions) - - def _get_project(self, name): - result = {'urls': {}, 'digests': {}} - for root, dirs, files in os.walk(self.base_dir): - for fn in files: - if self.should_include(fn, root): - fn = os.path.join(root, fn) - url = urlunparse(('file', '', - pathname2url(os.path.abspath(fn)), - '', '', '')) - info = self.convert_url_to_download_info(url, name) - if info: - self._update_version_data(result, info) - if not self.recursive: - break - return result - - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - result = set() - for root, dirs, files in os.walk(self.base_dir): - for fn in files: - if self.should_include(fn, root): - fn = os.path.join(root, fn) - url = urlunparse(('file', '', - pathname2url(os.path.abspath(fn)), - '', '', '')) - info = self.convert_url_to_download_info(url, None) - if info: - result.add(info['name']) - if not self.recursive: - break - return result - -class JSONLocator(Locator): - """ - This locator uses special extended metadata (not available on PyPI) and is - the basis of performant dependency resolution in distlib. Other locators - require archive downloads before dependencies can be determined! As you - might imagine, that can be slow. - """ - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - raise NotImplementedError('Not available from this locator') - - def _get_project(self, name): - result = {'urls': {}, 'digests': {}} - data = get_project_data(name) - if data: - for info in data.get('files', []): - if info['ptype'] != 'sdist' or info['pyversion'] != 'source': - continue - # We don't store summary in project metadata as it makes - # the data bigger for no benefit during dependency - # resolution - dist = make_dist(data['name'], info['version'], - summary=data.get('summary', - 'Placeholder for summary'), - scheme=self.scheme) - md = dist.metadata - md.source_url = info['url'] - # TODO SHA256 digest - if 'digest' in info and info['digest']: - dist.digest = ('md5', info['digest']) - md.dependencies = info.get('requirements', {}) - dist.exports = info.get('exports', {}) - result[dist.version] = dist - result['urls'].setdefault(dist.version, set()).add(info['url']) - return result - -class DistPathLocator(Locator): - """ - This locator finds installed distributions in a path. It can be useful for - adding to an :class:`AggregatingLocator`. - """ - def __init__(self, distpath, **kwargs): - """ - Initialise an instance. - - :param distpath: A :class:`DistributionPath` instance to search. - """ - super(DistPathLocator, self).__init__(**kwargs) - assert isinstance(distpath, DistributionPath) - self.distpath = distpath - - def _get_project(self, name): - dist = self.distpath.get_distribution(name) - if dist is None: - result = {'urls': {}, 'digests': {}} - else: - result = { - dist.version: dist, - 'urls': {dist.version: set([dist.source_url])}, - 'digests': {dist.version: set([None])} - } - return result - - -class AggregatingLocator(Locator): - """ - This class allows you to chain and/or merge a list of locators. - """ - def __init__(self, *locators, **kwargs): - """ - Initialise an instance. - - :param locators: The list of locators to search. - :param kwargs: Passed to the superclass constructor, - except for: - * merge - if False (the default), the first successful - search from any of the locators is returned. If True, - the results from all locators are merged (this can be - slow). - """ - self.merge = kwargs.pop('merge', False) - self.locators = locators - super(AggregatingLocator, self).__init__(**kwargs) - - def clear_cache(self): - super(AggregatingLocator, self).clear_cache() - for locator in self.locators: - locator.clear_cache() - - def _set_scheme(self, value): - self._scheme = value - for locator in self.locators: - locator.scheme = value - - scheme = property(Locator.scheme.fget, _set_scheme) - - def _get_project(self, name): - result = {} - for locator in self.locators: - d = locator.get_project(name) - if d: - if self.merge: - files = result.get('urls', {}) - digests = result.get('digests', {}) - # next line could overwrite result['urls'], result['digests'] - result.update(d) - df = result.get('urls') - if files and df: - for k, v in files.items(): - if k in df: - df[k] |= v - else: - df[k] = v - dd = result.get('digests') - if digests and dd: - dd.update(digests) - else: - # See issue #18. If any dists are found and we're looking - # for specific constraints, we only return something if - # a match is found. For example, if a DirectoryLocator - # returns just foo (1.0) while we're looking for - # foo (>= 2.0), we'll pretend there was nothing there so - # that subsequent locators can be queried. Otherwise we - # would just return foo (1.0) which would then lead to a - # failure to find foo (>= 2.0), because other locators - # weren't searched. Note that this only matters when - # merge=False. - if self.matcher is None: - found = True - else: - found = False - for k in d: - if self.matcher.match(k): - found = True - break - if found: - result = d - break - return result - - def get_distribution_names(self): - """ - Return all the distribution names known to this locator. - """ - result = set() - for locator in self.locators: - try: - result |= locator.get_distribution_names() - except NotImplementedError: - pass - return result - - -# We use a legacy scheme simply because most of the dists on PyPI use legacy -# versions which don't conform to PEP 426 / PEP 440. -default_locator = AggregatingLocator( - JSONLocator(), - SimpleScrapingLocator('https://pypi.python.org/simple/', - timeout=3.0), - scheme='legacy') - -locate = default_locator.locate - -NAME_VERSION_RE = re.compile(r'(?P[\w-]+)\s*' - r'\(\s*(==\s*)?(?P[^)]+)\)$') - -class DependencyFinder(object): - """ - Locate dependencies for distributions. - """ - - def __init__(self, locator=None): - """ - Initialise an instance, using the specified locator - to locate distributions. - """ - self.locator = locator or default_locator - self.scheme = get_scheme(self.locator.scheme) - - def add_distribution(self, dist): - """ - Add a distribution to the finder. This will update internal information - about who provides what. - :param dist: The distribution to add. - """ - logger.debug('adding distribution %s', dist) - name = dist.key - self.dists_by_name[name] = dist - self.dists[(name, dist.version)] = dist - for p in dist.provides: - name, version = parse_name_and_version(p) - logger.debug('Add to provided: %s, %s, %s', name, version, dist) - self.provided.setdefault(name, set()).add((version, dist)) - - def remove_distribution(self, dist): - """ - Remove a distribution from the finder. This will update internal - information about who provides what. - :param dist: The distribution to remove. - """ - logger.debug('removing distribution %s', dist) - name = dist.key - del self.dists_by_name[name] - del self.dists[(name, dist.version)] - for p in dist.provides: - name, version = parse_name_and_version(p) - logger.debug('Remove from provided: %s, %s, %s', name, version, dist) - s = self.provided[name] - s.remove((version, dist)) - if not s: - del self.provided[name] - - def get_matcher(self, reqt): - """ - Get a version matcher for a requirement. - :param reqt: The requirement - :type reqt: str - :return: A version matcher (an instance of - :class:`distlib.version.Matcher`). - """ - try: - matcher = self.scheme.matcher(reqt) - except UnsupportedVersionError: # pragma: no cover - # XXX compat-mode if cannot read the version - name = reqt.split()[0] - matcher = self.scheme.matcher(name) - return matcher - - def find_providers(self, reqt): - """ - Find the distributions which can fulfill a requirement. - - :param reqt: The requirement. - :type reqt: str - :return: A set of distribution which can fulfill the requirement. - """ - matcher = self.get_matcher(reqt) - name = matcher.key # case-insensitive - result = set() - provided = self.provided - if name in provided: - for version, provider in provided[name]: - try: - match = matcher.match(version) - except UnsupportedVersionError: - match = False - - if match: - result.add(provider) - break - return result - - def try_to_replace(self, provider, other, problems): - """ - Attempt to replace one provider with another. This is typically used - when resolving dependencies from multiple sources, e.g. A requires - (B >= 1.0) while C requires (B >= 1.1). - - For successful replacement, ``provider`` must meet all the requirements - which ``other`` fulfills. - - :param provider: The provider we are trying to replace with. - :param other: The provider we're trying to replace. - :param problems: If False is returned, this will contain what - problems prevented replacement. This is currently - a tuple of the literal string 'cantreplace', - ``provider``, ``other`` and the set of requirements - that ``provider`` couldn't fulfill. - :return: True if we can replace ``other`` with ``provider``, else - False. - """ - rlist = self.reqts[other] - unmatched = set() - for s in rlist: - matcher = self.get_matcher(s) - if not matcher.match(provider.version): - unmatched.add(s) - if unmatched: - # can't replace other with provider - problems.add(('cantreplace', provider, other, - frozenset(unmatched))) - result = False - else: - # can replace other with provider - self.remove_distribution(other) - del self.reqts[other] - for s in rlist: - self.reqts.setdefault(provider, set()).add(s) - self.add_distribution(provider) - result = True - return result - - def find(self, requirement, meta_extras=None, prereleases=False): - """ - Find a distribution and all distributions it depends on. - - :param requirement: The requirement specifying the distribution to - find, or a Distribution instance. - :param meta_extras: A list of meta extras such as :test:, :build: and - so on. - :param prereleases: If ``True``, allow pre-release versions to be - returned - otherwise, don't return prereleases - unless they're all that's available. - - Return a set of :class:`Distribution` instances and a set of - problems. - - The distributions returned should be such that they have the - :attr:`required` attribute set to ``True`` if they were - from the ``requirement`` passed to ``find()``, and they have the - :attr:`build_time_dependency` attribute set to ``True`` unless they - are post-installation dependencies of the ``requirement``. - - The problems should be a tuple consisting of the string - ``'unsatisfied'`` and the requirement which couldn't be satisfied - by any distribution known to the locator. - """ - - self.provided = {} - self.dists = {} - self.dists_by_name = {} - self.reqts = {} - - meta_extras = set(meta_extras or []) - if ':*:' in meta_extras: - meta_extras.remove(':*:') - # :meta: and :run: are implicitly included - meta_extras |= set([':test:', ':build:', ':dev:']) - - if isinstance(requirement, Distribution): - dist = odist = requirement - logger.debug('passed %s as requirement', odist) - else: - dist = odist = self.locator.locate(requirement, - prereleases=prereleases) - if dist is None: - raise DistlibException('Unable to locate %r' % requirement) - logger.debug('located %s', odist) - dist.requested = True - problems = set() - todo = set([dist]) - install_dists = set([odist]) - while todo: - dist = todo.pop() - name = dist.key # case-insensitive - if name not in self.dists_by_name: - self.add_distribution(dist) - else: - #import pdb; pdb.set_trace() - other = self.dists_by_name[name] - if other != dist: - self.try_to_replace(dist, other, problems) - - ireqts = dist.run_requires | dist.meta_requires - sreqts = dist.build_requires - ereqts = set() - if dist in install_dists: - for key in ('test', 'build', 'dev'): - e = ':%s:' % key - if e in meta_extras: - ereqts |= getattr(dist, '%s_requires' % key) - all_reqts = ireqts | sreqts | ereqts - for r in all_reqts: - providers = self.find_providers(r) - if not providers: - logger.debug('No providers found for %r', r) - provider = self.locator.locate(r, prereleases=prereleases) - # If no provider is found and we didn't consider - # prereleases, consider them now. - if provider is None and not prereleases: - provider = self.locator.locate(r, prereleases=True) - if provider is None: - logger.debug('Cannot satisfy %r', r) - problems.add(('unsatisfied', r)) - else: - n, v = provider.key, provider.version - if (n, v) not in self.dists: - todo.add(provider) - providers.add(provider) - if r in ireqts and dist in install_dists: - install_dists.add(provider) - logger.debug('Adding %s to install_dists', - provider.name_and_version) - for p in providers: - name = p.key - if name not in self.dists_by_name: - self.reqts.setdefault(p, set()).add(r) - else: - other = self.dists_by_name[name] - if other != p: - # see if other can be replaced by p - self.try_to_replace(p, other, problems) - - dists = set(self.dists.values()) - for dist in dists: - dist.build_time_dependency = dist not in install_dists - if dist.build_time_dependency: - logger.debug('%s is a build-time dependency only.', - dist.name_and_version) - logger.debug('find done for %s', odist) - return dists, problems diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py deleted file mode 100644 index 9f03364..0000000 --- a/env/lib/python3.4/site-packages/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 ...' % action) - - patterns = [convert_path(word) for word in words[1:]] - - elif action in ('recursive-include', 'recursive-exclude'): - if len(words) < 3: - raise DistlibException( - '%r expects

      ...' % action) - - thedir = convert_path(words[1]) - patterns = [convert_path(word) for word in words[2:]] - - elif action in ('graft', 'prune'): - if len(words) != 2: - raise DistlibException( - '%r expects a single ' % action) - - dir_pattern = convert_path(words[1]) - - else: - raise DistlibException('unknown action %r' % action) - - return action, patterns, thedir, dir_pattern - - def _include_pattern(self, pattern, anchor=True, prefix=None, - is_regex=False): - """Select strings (presumably filenames) from 'self.files' that - match 'pattern', a Unix-style wildcard (glob) pattern. - - Patterns are not quite the same as implemented by the 'fnmatch' - module: '*' and '?' match non-special characters, where "special" - is platform-dependent: slash on Unix; colon, slash, and backslash on - DOS/Windows; and colon on Mac OS. - - If 'anchor' is true (the default), then the pattern match is more - stringent: "*.py" will match "foo.py" but not "foo/bar.py". If - 'anchor' is false, both of these will match. - - If 'prefix' is supplied, then only filenames starting with 'prefix' - (itself a pattern) and ending with 'pattern', with anything in between - them, will match. 'anchor' is ignored in this case. - - If 'is_regex' is true, 'anchor' and 'prefix' are ignored, and - 'pattern' is assumed to be either a string containing a regex or a - regex object -- no translation is done, the regex is just compiled - and used as-is. - - Selected strings will be added to self.files. - - Return True if files are found. - """ - # XXX docstring lying about what the special chars are? - found = False - pattern_re = self._translate_pattern(pattern, anchor, prefix, is_regex) - - # delayed loading of allfiles list - if self.allfiles is None: - self.findall() - - for name in self.allfiles: - if pattern_re.search(name): - self.files.add(name) - found = True - return found - - def _exclude_pattern(self, pattern, anchor=True, prefix=None, - is_regex=False): - """Remove strings (presumably filenames) from 'files' that match - 'pattern'. - - Other parameters are the same as for 'include_pattern()', above. - The list 'self.files' is modified in place. Return True if files are - found. - - This API is public to allow e.g. exclusion of SCM subdirs, e.g. when - packaging source distributions - """ - found = False - pattern_re = self._translate_pattern(pattern, anchor, prefix, is_regex) - for f in list(self.files): - if pattern_re.search(f): - self.files.remove(f) - found = True - return found - - def _translate_pattern(self, pattern, anchor=True, prefix=None, - is_regex=False): - """Translate a shell-like wildcard pattern to a compiled regular - expression. - - Return the compiled regex. If 'is_regex' true, - then 'pattern' is directly compiled to a regex (if it's a string) - or just returned as-is (assumes it's a regex object). - """ - if is_regex: - if isinstance(pattern, str): - return re.compile(pattern) - else: - return pattern - - if _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'((? y, - 'gte': lambda x, y: x >= y, - 'in': lambda x, y: x in y, - 'lt': lambda x, y: x < y, - 'lte': lambda x, y: x <= y, - 'not': lambda x: not x, - 'noteq': lambda x, y: x != y, - 'notin': lambda x, y: x not in y, - } - - allowed_values = { - 'sys_platform': sys.platform, - 'python_version': '%s.%s' % sys.version_info[:2], - # parsing sys.platform is not reliable, but there is no other - # way to get e.g. 2.7.2+, and the PEP is defined with sys.version - 'python_full_version': sys.version.split(' ', 1)[0], - 'os_name': os.name, - 'platform_in_venv': str(in_venv()), - 'platform_release': platform.release(), - 'platform_version': platform.version(), - 'platform_machine': platform.machine(), - 'platform_python_implementation': python_implementation(), - } - - def __init__(self, context=None): - """ - Initialise an instance. - - :param context: If specified, names are looked up in this mapping. - """ - self.context = context or {} - self.source = None - - def get_fragment(self, offset): - """ - Get the part of the source which is causing a problem. - """ - fragment_len = 10 - s = '%r' % (self.source[offset:offset + fragment_len]) - if offset + fragment_len < len(self.source): - s += '...' - return s - - def get_handler(self, node_type): - """ - Get a handler for the specified AST node type. - """ - return getattr(self, 'do_%s' % node_type, None) - - def evaluate(self, node, filename=None): - """ - Evaluate a source string or node, using ``filename`` when - displaying errors. - """ - if isinstance(node, string_types): - self.source = node - kwargs = {'mode': 'eval'} - if filename: - kwargs['filename'] = filename - try: - node = ast.parse(node, **kwargs) - except SyntaxError as e: - s = self.get_fragment(e.offset) - raise SyntaxError('syntax error %s' % s) - node_type = node.__class__.__name__.lower() - handler = self.get_handler(node_type) - if handler is None: - if self.source is None: - s = '(source not available)' - else: - s = self.get_fragment(node.col_offset) - raise SyntaxError("don't know how to evaluate %r %s" % ( - node_type, s)) - return handler(node) - - def get_attr_key(self, node): - assert isinstance(node, ast.Attribute), 'attribute node expected' - return '%s.%s' % (node.value.id, node.attr) - - def do_attribute(self, node): - if not isinstance(node.value, ast.Name): - valid = False - else: - key = self.get_attr_key(node) - valid = key in self.context or key in self.allowed_values - if not valid: - raise SyntaxError('invalid expression: %s' % key) - if key in self.context: - result = self.context[key] - else: - result = self.allowed_values[key] - return result - - def do_boolop(self, node): - result = self.evaluate(node.values[0]) - is_or = node.op.__class__ is ast.Or - is_and = node.op.__class__ is ast.And - assert is_or or is_and - if (is_and and result) or (is_or and not result): - for n in node.values[1:]: - result = self.evaluate(n) - if (is_or and result) or (is_and and not result): - break - return result - - def do_compare(self, node): - def sanity_check(lhsnode, rhsnode): - valid = True - if isinstance(lhsnode, ast.Str) and isinstance(rhsnode, ast.Str): - valid = False - #elif (isinstance(lhsnode, ast.Attribute) - # and isinstance(rhsnode, ast.Attribute)): - # klhs = self.get_attr_key(lhsnode) - # krhs = self.get_attr_key(rhsnode) - # valid = klhs != krhs - if not valid: - s = self.get_fragment(node.col_offset) - raise SyntaxError('Invalid comparison: %s' % s) - - lhsnode = node.left - lhs = self.evaluate(lhsnode) - result = True - for op, rhsnode in zip(node.ops, node.comparators): - sanity_check(lhsnode, rhsnode) - op = op.__class__.__name__.lower() - if op not in self.operators: - raise SyntaxError('unsupported operation: %r' % op) - rhs = self.evaluate(rhsnode) - result = self.operators[op](lhs, rhs) - if not result: - break - lhs = rhs - lhsnode = rhsnode - return result - - def do_expression(self, node): - return self.evaluate(node.body) - - def do_name(self, node): - valid = False - if node.id in self.context: - valid = True - result = self.context[node.id] - elif node.id in self.allowed_values: - valid = True - result = self.allowed_values[node.id] - if not valid: - raise SyntaxError('invalid expression: %s' % node.id) - return result - - def do_str(self, node): - return node.s - - -def interpret(marker, execution_context=None): - """ - Interpret a marker and return a result depending on environment. - - :param marker: The marker to interpret. - :type marker: str - :param execution_context: The context used for name lookup. - :type execution_context: mapping - """ - return Evaluator(execution_context).evaluate(marker.strip()) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py deleted file mode 100644 index 75bfd68..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py +++ /dev/null @@ -1,1068 +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') - -_ALL_FIELDS = set() -_ALL_FIELDS.update(_241_FIELDS) -_ALL_FIELDS.update(_314_FIELDS) -_ALL_FIELDS.update(_345_FIELDS) -_ALL_FIELDS.update(_426_FIELDS) - -EXTRA_RE = re.compile(r'''extra\s*==\s*("([^"]+)"|'([^']+)')''') - - -def _version2fieldlist(version): - if version == '1.0': - return _241_FIELDS - elif version == '1.1': - return _314_FIELDS - elif version == '1.2': - return _345_FIELDS - elif version == '2.0': - return _426_FIELDS - raise MetadataUnrecognizedVersionError(version) - - -def _best_version(fields): - """Detect the best version depending on the fields used.""" - def _has_marker(keys, markers): - for marker in markers: - if marker in keys: - return True - return False - - keys = [] - for key, value in fields.items(): - if value in ([], 'UNKNOWN', None): - continue - keys.append(key) - - possible_versions = ['1.0', '1.1', '1.2', '2.0'] - - # first let's try to see if a field is not part of one of the version - for key in keys: - if key not in _241_FIELDS and '1.0' in possible_versions: - possible_versions.remove('1.0') - if key not in _314_FIELDS and '1.1' in possible_versions: - possible_versions.remove('1.1') - if key not in _345_FIELDS and '1.2' in possible_versions: - possible_versions.remove('1.2') - if key not in _426_FIELDS and '2.0' in possible_versions: - possible_versions.remove('2.0') - - # possible_version contains qualified versions - if len(possible_versions) == 1: - return possible_versions[0] # found ! - elif len(possible_versions) == 0: - raise MetadataConflictError('Unknown metadata set') - - # let's see if one unique marker is found - is_1_1 = '1.1' in possible_versions and _has_marker(keys, _314_MARKERS) - is_1_2 = '1.2' in possible_versions and _has_marker(keys, _345_MARKERS) - is_2_0 = '2.0' in possible_versions and _has_marker(keys, _426_MARKERS) - if int(is_1_1) + int(is_1_2) + int(is_2_0) > 1: - raise MetadataConflictError('You used incompatible 1.1/1.2/2.0 fields') - - # we have the choice, 1.0, or 1.2, or 2.0 - # - 1.0 has a broken Summary field but works with all tools - # - 1.1 is to avoid - # - 1.2 fixes Summary but has little adoption - # - 2.0 adds more features and is very new - if not is_1_1 and not is_1_2 and not is_2_0: - # we couldn't find any specific marker - if PKG_INFO_PREFERRED_VERSION in possible_versions: - return PKG_INFO_PREFERRED_VERSION - if is_1_1: - return '1.1' - if is_1_2: - return '1.2' - - return '2.0' - -_ATTR2FIELD = { - 'metadata_version': 'Metadata-Version', - 'name': 'Name', - 'version': 'Version', - 'platform': 'Platform', - 'supported_platform': 'Supported-Platform', - 'summary': 'Summary', - 'description': 'Description', - 'keywords': 'Keywords', - 'home_page': 'Home-page', - 'author': 'Author', - 'author_email': 'Author-email', - 'maintainer': 'Maintainer', - 'maintainer_email': 'Maintainer-email', - 'license': 'License', - 'classifier': 'Classifier', - 'download_url': 'Download-URL', - 'obsoletes_dist': 'Obsoletes-Dist', - 'provides_dist': 'Provides-Dist', - 'requires_dist': 'Requires-Dist', - 'setup_requires_dist': 'Setup-Requires-Dist', - 'requires_python': 'Requires-Python', - 'requires_external': 'Requires-External', - 'requires': 'Requires', - 'provides': 'Provides', - 'obsoletes': 'Obsoletes', - 'project_url': 'Project-URL', - 'private_version': 'Private-Version', - 'obsoleted_by': 'Obsoleted-By', - 'extension': 'Extension', - 'provides_extra': 'Provides-Extra', -} - -_PREDICATE_FIELDS = ('Requires-Dist', 'Obsoletes-Dist', 'Provides-Dist') -_VERSIONS_FIELDS = ('Requires-Python',) -_VERSION_FIELDS = ('Version',) -_LISTFIELDS = ('Platform', 'Classifier', 'Obsoletes', - 'Requires', 'Provides', 'Obsoletes-Dist', - 'Provides-Dist', 'Requires-Dist', 'Requires-External', - 'Project-URL', 'Supported-Platform', 'Setup-Requires-Dist', - 'Provides-Extra', 'Extension') -_LISTTUPLEFIELDS = ('Project-URL',) - -_ELEMENTSFIELD = ('Keywords',) - -_UNICODEFIELDS = ('Author', 'Maintainer', 'Summary', 'Description') - -_MISSING = object() - -_FILESAFE = re.compile('[^A-Za-z0-9.]+') - - -def _get_name_and_version(name, version, for_filename=False): - """Return the distribution name with version. - - If for_filename is true, return a filename-escaped form.""" - if for_filename: - # For both name and version any runs of non-alphanumeric or '.' - # characters are replaced with a single '-'. Additionally any - # spaces in the version string become '.' - name = _FILESAFE.sub('-', name) - version = _FILESAFE.sub('-', version.replace(' ', '.')) - return '%s-%s' % (name, version) - - -class LegacyMetadata(object): - """The legacy metadata of a release. - - Supports versions 1.0, 1.1 and 1.2 (auto-detected). You can - instantiate the class with one of these arguments (or none): - - *path*, the path to a metadata file - - *fileobj* give a file-like object with metadata as content - - *mapping* is a dict-like object - - *scheme* is a version scheme name - """ - # TODO document the mapping API and UNKNOWN default key - - def __init__(self, path=None, fileobj=None, mapping=None, - scheme='default'): - if [path, fileobj, mapping].count(None) < 2: - raise TypeError('path, fileobj and mapping are exclusive') - self._fields = {} - self.requires_files = [] - self._dependencies = None - self.scheme = scheme - if path is not None: - self.read(path) - elif fileobj is not None: - self.read_file(fileobj) - elif mapping is not None: - self.update(mapping) - self.set_metadata_version() - - def set_metadata_version(self): - self._fields['Metadata-Version'] = _best_version(self._fields) - - def _write_field(self, fileobj, name, value): - fileobj.write('%s: %s\n' % (name, value)) - - def __getitem__(self, name): - return self.get(name) - - def __setitem__(self, name, value): - return self.set(name, value) - - def __delitem__(self, name): - field_name = self._convert_name(name) - try: - del self._fields[field_name] - except KeyError: - raise KeyError(name) - - def __contains__(self, name): - return (name in self._fields or - self._convert_name(name) in self._fields) - - def _convert_name(self, name): - if name in _ALL_FIELDS: - return name - name = name.replace('-', '_').lower() - return _ATTR2FIELD.get(name, name) - - def _default_value(self, name): - if name in _LISTFIELDS or name in _ELEMENTSFIELD: - return [] - return 'UNKNOWN' - - def _remove_line_prefix(self, value): - if self.metadata_version in ('1.0', '1.1'): - return _LINE_PREFIX_PRE_1_2.sub('\n', value) - else: - return _LINE_PREFIX_1_2.sub('\n', value) - - def __getattr__(self, name): - if name in _ATTR2FIELD: - return self[name] - raise AttributeError(name) - - # - # Public API - # - -# dependencies = property(_get_dependencies, _set_dependencies) - - def get_fullname(self, filesafe=False): - """Return the distribution name with version. - - If filesafe is true, return a filename-escaped form.""" - return _get_name_and_version(self['Name'], self['Version'], filesafe) - - def is_field(self, name): - """return True if name is a valid metadata key""" - name = self._convert_name(name) - return name in _ALL_FIELDS - - def is_multi_field(self, name): - name = self._convert_name(name) - return name in _LISTFIELDS - - def read(self, filepath): - """Read the metadata values from a file path.""" - fp = codecs.open(filepath, 'r', encoding='utf-8') - try: - self.read_file(fp) - finally: - fp.close() - - def read_file(self, fileob): - """Read the metadata values from a file object.""" - msg = message_from_file(fileob) - self._fields['Metadata-Version'] = msg['metadata-version'] - - # When reading, get all the fields we can - for field in _ALL_FIELDS: - if field not in msg: - continue - if field in _LISTFIELDS: - # we can have multiple lines - values = msg.get_all(field) - if field in _LISTTUPLEFIELDS and values is not None: - values = [tuple(value.split(',')) for value in values] - self.set(field, values) - else: - # single line - value = msg[field] - if value is not None and value != 'UNKNOWN': - self.set(field, value) - self.set_metadata_version() - - def write(self, filepath, skip_unknown=False): - """Write the metadata fields to filepath.""" - fp = codecs.open(filepath, 'w', encoding='utf-8') - try: - self.write_file(fp, skip_unknown) - finally: - fp.close() - - def write_file(self, fileobject, skip_unknown=False): - """Write the PKG-INFO format data to a file object.""" - self.set_metadata_version() - - for field in _version2fieldlist(self['Metadata-Version']): - values = self.get(field) - if skip_unknown and values in ('UNKNOWN', [], ['UNKNOWN']): - continue - if field in _ELEMENTSFIELD: - self._write_field(fileobject, field, ','.join(values)) - continue - if field not in _LISTFIELDS: - if field == 'Description': - if self.metadata_version in ('1.0', '1.1'): - values = values.replace('\n', '\n ') - else: - values = values.replace('\n', '\n |') - values = [values] - - if field in _LISTTUPLEFIELDS: - values = [','.join(value) for value in values] - - for value in values: - self._write_field(fileobject, field, value) - - def update(self, other=None, **kwargs): - """Set metadata values from the given iterable `other` and kwargs. - - Behavior is like `dict.update`: If `other` has a ``keys`` method, - they are looped over and ``self[key]`` is assigned ``other[key]``. - Else, ``other`` is an iterable of ``(key, value)`` iterables. - - Keys that don't match a metadata field or that have an empty value are - dropped. - """ - def _set(key, value): - if key in _ATTR2FIELD and value: - self.set(self._convert_name(key), value) - - if not other: - # other is None or empty container - pass - elif hasattr(other, 'keys'): - for k in other.keys(): - _set(k, other[k]) - else: - for k, v in other: - _set(k, v) - - if kwargs: - for k, v in kwargs.items(): - _set(k, v) - - def set(self, name, value): - """Control then set a metadata field.""" - name = self._convert_name(name) - - if ((name in _ELEMENTSFIELD or name == 'Platform') and - not isinstance(value, (list, tuple))): - if isinstance(value, string_types): - value = [v.strip() for v in value.split(',')] - else: - value = [] - elif (name in _LISTFIELDS and - not isinstance(value, (list, tuple))): - if isinstance(value, string_types): - value = [value] - else: - value = [] - - if logger.isEnabledFor(logging.WARNING): - project_name = self['Name'] - - scheme = get_scheme(self.scheme) - if name in _PREDICATE_FIELDS and value is not None: - for v in value: - # check that the values are valid - if not scheme.is_valid_matcher(v.split(';')[0]): - logger.warning( - "'%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('^\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/env/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py deleted file mode 100644 index f07cde2..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py +++ /dev/null @@ -1,355 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2013-2016 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -from __future__ import unicode_literals - -import bisect -import io -import logging -import os -import pkgutil -import shutil -import sys -import types -import zipimport - -from . import DistlibException -from .util import cached_property, get_cache_base, path_to_cache_dir, Cache - -logger = logging.getLogger(__name__) - - -cache = None # created when needed - - -class ResourceCache(Cache): - def __init__(self, base=None): - if base is None: - # Use native string to avoid issues on 2.x: see Python #20140. - base = os.path.join(get_cache_base(), str('resource-cache')) - super(ResourceCache, self).__init__(base) - - def is_stale(self, resource, path): - """ - Is the cache stale for the given resource? - - :param resource: The :class:`Resource` being cached. - :param path: The path of the resource in the cache. - :return: True if the cache is stale. - """ - # Cache invalidation is a hard problem :-) - return True - - def get(self, resource): - """ - Get a resource into the cache, - - :param resource: A :class:`Resource` instance. - :return: The pathname of the resource in the cache. - """ - prefix, path = resource.finder.get_cache_info(resource) - if prefix is None: - result = path - else: - result = os.path.join(self.base, self.prefix_to_dir(prefix), path) - dirname = os.path.dirname(result) - if not os.path.isdir(dirname): - os.makedirs(dirname) - if not os.path.exists(result): - stale = True - else: - stale = self.is_stale(resource, path) - if stale: - # write the bytes of the resource to the cache location - with open(result, 'wb') as f: - f.write(resource.bytes) - return result - - -class ResourceBase(object): - def __init__(self, finder, name): - self.finder = finder - self.name = name - - -class Resource(ResourceBase): - """ - A class representing an in-package resource, such as a data file. This is - not normally instantiated by user code, but rather by a - :class:`ResourceFinder` which manages the resource. - """ - is_container = False # Backwards compatibility - - def as_stream(self): - """ - Get the resource as a stream. - - This is not a property to make it obvious that it returns a new stream - each time. - """ - return self.finder.get_stream(self) - - @cached_property - def file_path(self): - global cache - if cache is None: - cache = ResourceCache() - return cache.get(self) - - @cached_property - def bytes(self): - return self.finder.get_bytes(self) - - @cached_property - def size(self): - return self.finder.get_size(self) - - -class ResourceContainer(ResourceBase): - is_container = True # Backwards compatibility - - @cached_property - def resources(self): - return self.finder.get_resources(self) - - -class ResourceFinder(object): - """ - Resource finder for file system resources. - """ - - if sys.platform.startswith('java'): - skipped_extensions = ('.pyc', '.pyo', '.class') - else: - skipped_extensions = ('.pyc', '.pyo') - - def __init__(self, module): - self.module = module - self.loader = getattr(module, '__loader__', None) - self.base = os.path.dirname(getattr(module, '__file__', '')) - - def _adjust_path(self, path): - return os.path.realpath(path) - - def _make_path(self, resource_name): - # Issue #50: need to preserve type of path on Python 2.x - # like os.path._get_sep - if isinstance(resource_name, bytes): # should only happen on 2.x - sep = b'/' - else: - sep = '/' - parts = resource_name.split(sep) - parts.insert(0, self.base) - result = os.path.join(*parts) - return self._adjust_path(result) - - def _find(self, path): - return os.path.exists(path) - - def get_cache_info(self, resource): - return None, resource.path - - def find(self, resource_name): - path = self._make_path(resource_name) - if not self._find(path): - result = None - else: - if self._is_directory(path): - result = ResourceContainer(self, resource_name) - else: - result = Resource(self, resource_name) - result.path = path - return result - - def get_stream(self, resource): - return open(resource.path, 'rb') - - def get_bytes(self, resource): - with open(resource.path, 'rb') as f: - return f.read() - - def get_size(self, resource): - return os.path.getsize(resource.path) - - def get_resources(self, resource): - def allowed(f): - return (f != '__pycache__' and not - f.endswith(self.skipped_extensions)) - return set([f for f in os.listdir(resource.path) if allowed(f)]) - - def is_container(self, resource): - return self._is_directory(resource.path) - - _is_directory = staticmethod(os.path.isdir) - - def iterator(self, resource_name): - resource = self.find(resource_name) - if resource is not None: - todo = [resource] - while todo: - resource = todo.pop(0) - yield resource - if resource.is_container: - rname = resource.name - for name in resource.resources: - if not rname: - new_name = name - else: - new_name = '/'.join([rname, name]) - child = self.find(new_name) - if child.is_container: - todo.append(child) - else: - yield child - - -class ZipResourceFinder(ResourceFinder): - """ - Resource finder for resources in .zip files. - """ - def __init__(self, module): - super(ZipResourceFinder, self).__init__(module) - archive = self.loader.archive - self.prefix_len = 1 + len(archive) - # PyPy doesn't have a _files attr on zipimporter, and you can't set one - if hasattr(self.loader, '_files'): - self._files = self.loader._files - else: - self._files = zipimport._zip_directory_cache[archive] - self.index = sorted(self._files) - - def _adjust_path(self, path): - return path - - def _find(self, path): - path = path[self.prefix_len:] - if path in self._files: - result = True - else: - if path and path[-1] != os.sep: - path = path + os.sep - i = bisect.bisect(self.index, path) - try: - result = self.index[i].startswith(path) - except IndexError: - result = False - if not result: - logger.debug('_find failed: %r %r', path, self.loader.prefix) - else: - logger.debug('_find worked: %r %r', path, self.loader.prefix) - return result - - def get_cache_info(self, resource): - prefix = self.loader.archive - path = resource.path[1 + len(prefix):] - return prefix, path - - def get_bytes(self, resource): - return self.loader.get_data(resource.path) - - def get_stream(self, resource): - return io.BytesIO(self.get_bytes(resource)) - - def get_size(self, resource): - path = resource.path[self.prefix_len:] - return self._files[path][3] - - def get_resources(self, resource): - path = resource.path[self.prefix_len:] - if path and path[-1] != os.sep: - path += os.sep - plen = len(path) - result = set() - i = bisect.bisect(self.index, path) - while i < len(self.index): - if not self.index[i].startswith(path): - break - s = self.index[i][plen:] - result.add(s.split(os.sep, 1)[0]) # only immediate children - i += 1 - return result - - def _is_directory(self, path): - path = path[self.prefix_len:] - if path and path[-1] != os.sep: - path += os.sep - i = bisect.bisect(self.index, path) - try: - result = self.index[i].startswith(path) - except IndexError: - result = False - return result - -_finder_registry = { - type(None): ResourceFinder, - zipimport.zipimporter: ZipResourceFinder -} - -try: - # 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/env/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py deleted file mode 100644 index 792fc2e..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py +++ /dev/null @@ -1,384 +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 = ''' - - - - - - - - - - - - -'''.strip() - -# check if Python is called on the first line with this expression -FIRST_LINE_RE = re.compile(b'^#!.*pythonw?[0-9.]*([ \t].*)?$') -SCRIPT_TEMPLATE = '''# -*- coding: utf-8 -*- -if __name__ == '__main__': - import sys, re - - def _resolve(module, func): - __import__(module) - mod = sys.modules[module] - parts = func.split('.') - result = getattr(mod, parts.pop(0)) - for p in parts: - result = getattr(result, p) - return result - - try: - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - - func = _resolve('%(module)s', '%(func)s') - rc = func() # None interpreted as 0 - except Exception as e: # only supporting Python >= 2.6 - sys.stderr.write('%%s\\n' %% e) - rc = 1 - sys.exit(rc) -''' - - -def _enquote_executable(executable): - if ' ' in executable: - # make sure we quote only the executable in case of env - # for example /usr/bin/env "/dir with spaces/bin/jython" - # instead of "/usr/bin/env /dir with spaces/bin/jython" - # otherwise whole - if executable.startswith('/usr/bin/env '): - env, _executable = executable.split(' ', 1) - if ' ' in _executable and not _executable.startswith('"'): - executable = '%s "%s"' % (env, _executable) - else: - if not executable.startswith('"'): - executable = '"%s"' % executable - return executable - - -class ScriptMaker(object): - """ - A class to copy or create scripts from source scripts or callable - specifications. - """ - script_template = SCRIPT_TEMPLATE - - executable = None # for shebangs - - def __init__(self, source_dir, target_dir, add_launchers=True, - dry_run=False, fileop=None): - self.source_dir = source_dir - self.target_dir = target_dir - self.add_launchers = add_launchers - self.force = False - self.clobber = False - # It only makes sense to set mode bits on POSIX. - self.set_mode = (os.name == 'posix') or (os.name == 'java' and - os._name == 'posix') - self.variants = set(('', 'X.Y')) - self._fileop = fileop or FileOperator(dry_run) - - self._is_nt = os.name == 'nt' or ( - os.name == 'java' and os._name == 'nt') - - def _get_alternate_executable(self, executable, options): - if options.get('gui', False) and self._is_nt: # pragma: no cover - dn, fn = os.path.split(executable) - fn = fn.replace('python', 'pythonw') - executable = os.path.join(dn, fn) - return executable - - if sys.platform.startswith('java'): # pragma: no cover - def _is_shell(self, executable): - """ - Determine if the specified executable is a script - (contains a #! line) - """ - try: - with open(executable) as fp: - return fp.read(2) == '#!' - except (OSError, IOError): - logger.warning('Failed to open %s', executable) - return False - - def _fix_jython_executable(self, executable): - if self._is_shell(executable): - # Workaround for Jython is not needed on Linux systems. - import java - - if java.lang.System.getProperty('os.name') == 'Linux': - return executable - elif executable.lower().endswith('jython.exe'): - # Use wrapper exe for Jython on Windows - return executable - return '/usr/bin/env %s' % executable - - def _get_shebang(self, encoding, post_interp=b'', options=None): - enquote = True - if self.executable: - executable = self.executable - enquote = False # assume this will be taken care of - elif not sysconfig.is_python_build(): - executable = get_executable() - elif in_venv(): # pragma: no cover - executable = os.path.join(sysconfig.get_path('scripts'), - 'python%s' % sysconfig.get_config_var('EXE')) - else: # pragma: no cover - executable = os.path.join( - sysconfig.get_config_var('BINDIR'), - 'python%s%s' % (sysconfig.get_config_var('VERSION'), - sysconfig.get_config_var('EXE'))) - if options: - executable = self._get_alternate_executable(executable, options) - - if sys.platform.startswith('java'): # pragma: no cover - executable = self._fix_jython_executable(executable) - # Normalise case for Windows - executable = os.path.normcase(executable) - # If the user didn't specify an executable, it may be necessary to - # cater for executable paths with spaces (not uncommon on Windows) - if enquote: - executable = _enquote_executable(executable) - # Issue #51: don't use fsencode, since we later try to - # check that the shebang is decodable using utf-8. - executable = executable.encode('utf-8') - # in case of IronPython, play safe and enable frames support - if (sys.platform == 'cli' and '-X:Frames' not in post_interp - and '-X:FullFrames' not in post_interp): # pragma: no cover - post_interp += b' -X:Frames' - shebang = b'#!' + executable + post_interp + b'\n' - # Python parser starts to read a script using UTF-8 until - # it gets a #coding:xxx cookie. The shebang has to be the - # first line of a file, the #coding:xxx cookie cannot be - # written before. So the shebang has to be decodable from - # UTF-8. - try: - shebang.decode('utf-8') - except UnicodeDecodeError: # pragma: no cover - raise ValueError( - 'The shebang (%r) is not decodable from utf-8' % shebang) - # If the script is encoded to a custom encoding (use a - # #coding:xxx cookie), the shebang has to be decodable from - # the script encoding too. - if encoding != 'utf-8': - try: - shebang.decode(encoding) - except UnicodeDecodeError: # pragma: no cover - raise ValueError( - 'The shebang (%r) is not decodable ' - 'from the script encoding (%r)' % (shebang, encoding)) - return shebang - - def _get_script_text(self, entry): - return self.script_template % dict(module=entry.prefix, - func=entry.suffix) - - manifest = _DEFAULT_MANIFEST - - def get_manifest(self, exename): - base = os.path.basename(exename) - return self.manifest % base - - def _write_script(self, names, shebang, script_bytes, filenames, ext): - use_launcher = self.add_launchers and self._is_nt - linesep = os.linesep.encode('utf-8') - if not use_launcher: - script_bytes = shebang + linesep + script_bytes - else: # pragma: no cover - if ext == 'py': - launcher = self._get_launcher('t') - else: - launcher = self._get_launcher('w') - stream = BytesIO() - with ZipFile(stream, 'w') as zf: - zf.writestr('__main__.py', script_bytes) - zip_data = stream.getvalue() - script_bytes = launcher + shebang + linesep + zip_data - for name in names: - outname = os.path.join(self.target_dir, name) - if use_launcher: # pragma: no cover - n, e = os.path.splitext(outname) - if e.startswith('.py'): - outname = n - outname = '%s.exe' % outname - try: - self._fileop.write_binary_file(outname, script_bytes) - except Exception: - # Failed writing an executable - it might be in use. - logger.warning('Failed to write executable - trying to ' - 'use .deleteme logic') - dfname = '%s.deleteme' % outname - if os.path.exists(dfname): - os.remove(dfname) # Not allowed to fail here - os.rename(outname, dfname) # nor here - self._fileop.write_binary_file(outname, script_bytes) - logger.debug('Able to replace executable using ' - '.deleteme logic') - try: - os.remove(dfname) - except Exception: - pass # still in use - ignore error - else: - if self._is_nt and not outname.endswith('.' + ext): # pragma: no cover - outname = '%s.%s' % (outname, ext) - if os.path.exists(outname) and not self.clobber: - logger.warning('Skipping existing file %s', outname) - continue - self._fileop.write_binary_file(outname, script_bytes) - if self.set_mode: - self._fileop.set_executable_mode([outname]) - filenames.append(outname) - - def _make_script(self, entry, filenames, options=None): - post_interp = b'' - if options: - args = options.get('interpreter_args', []) - if args: - args = ' %s' % ' '.join(args) - post_interp = args.encode('utf-8') - shebang = self._get_shebang('utf-8', post_interp, options=options) - script = self._get_script_text(entry).encode('utf-8') - name = entry.name - scriptnames = set() - if '' in self.variants: - scriptnames.add(name) - if 'X' in self.variants: - scriptnames.add('%s%s' % (name, sys.version[0])) - if 'X.Y' in self.variants: - scriptnames.add('%s-%s' % (name, sys.version[:3])) - if options and options.get('gui', False): - ext = 'pyw' - else: - ext = 'py' - self._write_script(scriptnames, shebang, script, filenames, ext) - - def _copy_script(self, script, filenames): - adjust = False - script = os.path.join(self.source_dir, convert_path(script)) - outname = os.path.join(self.target_dir, os.path.basename(script)) - if not self.force and not self._fileop.newer(script, outname): - logger.debug('not copying %s (up-to-date)', script) - return - - # Always open the file, but ignore failures in dry-run mode -- - # that way, we'll get accurate feedback if we can read the - # script. - try: - f = open(script, 'rb') - except IOError: # pragma: no cover - if not self.dry_run: - raise - f = None - else: - first_line = f.readline() - if not first_line: # pragma: no cover - logger.warning('%s: %s is an empty file (skipping)', - self.get_command_name(), script) - return - - match = FIRST_LINE_RE.match(first_line.replace(b'\r\n', b'\n')) - if match: - adjust = True - post_interp = match.group(1) or b'' - - if not adjust: - if f: - f.close() - self._fileop.copy_file(script, outname) - if self.set_mode: - self._fileop.set_executable_mode([outname]) - filenames.append(outname) - else: - logger.info('copying and adjusting %s -> %s', script, - self.target_dir) - if not self._fileop.dry_run: - encoding, lines = detect_encoding(f.readline) - f.seek(0) - shebang = self._get_shebang(encoding, post_interp) - if b'pythonw' in first_line: # pragma: no cover - ext = 'pyw' - else: - ext = 'py' - n = os.path.basename(outname) - self._write_script([n], shebang, f.read(), filenames, ext) - if f: - f.close() - - @property - def dry_run(self): - return self._fileop.dry_run - - @dry_run.setter - def dry_run(self, value): - self._fileop.dry_run = value - - if os.name == 'nt' or (os.name == 'java' and os._name == 'nt'): # pragma: no cover - # Executable launcher support. - # Launchers are from https://bitbucket.org/vinay.sajip/simple_launcher/ - - def _get_launcher(self, kind): - if struct.calcsize('P') == 8: # 64-bit - bits = '64' - else: - bits = '32' - name = '%s%s.exe' % (kind, bits) - # Issue 31: don't hardcode an absolute package name, but - # determine it relative to the current package - distlib_package = __name__.rsplit('.', 1)[0] - result = finder(distlib_package).find(name).bytes - return result - - # Public API follows - - def make(self, specification, options=None): - """ - Make a script. - - :param specification: The specification, which is either a valid export - entry specification (to make a script from a - callable) or a filename (to make a script by - copying from a source location). - :param options: A dictionary of options controlling script generation. - :return: A list of all absolute pathnames written to. - """ - filenames = [] - entry = get_export_entry(specification) - if entry is None: - self._copy_script(specification, filenames) - else: - self._make_script(entry, filenames, options=options) - return filenames - - def make_multiple(self, specifications, options=None): - """ - Take a list of specifications and make scripts from them, - :param specifications: A list of specifications. - :return: A list of all absolute pathnames written to, - """ - filenames = [] - for specification in specifications: - filenames.extend(self.make(specification, options)) - return filenames diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe b/env/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe deleted file mode 100644 index 836211d848ec0ba46667d33cfade3348888062ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89088 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≫*an|s~C9@ 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�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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe b/env/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe deleted file mode 100644 index a401b59d602d4823e0a69138a0268f0bfbec3de2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 97792 zcmeFaiGNhp-S|IQh74J_K^cf3GD1`|qS0tg9MBn=(K|9xtYWdEqQOY3trYGER*=M- zv>C3`hd#C2)6LdaZEK&}O%}I=Koa()E>W!Fe#b$LOOvq3{k=cu&V*=fzt11=%M0#3 z_w46$KId~j+c{JJ<<*`7kH=HUf5-87*7BCWkb3^-#~{h0CaoXk`RmB-C$7zlZ$I&> zgs!G0-8bFdcb9s9z0arKU+%k&_if+)Qr~>uH#?j9W~lhDX7gX4 zeP5&AU;IkLLaFoLjbL`v<5}>n5uUoYzxbtGo<7fHPf32U$FqZ&N8H%CQ+b!Ga41h+ z63+K{yz<~L_x9`~6(Iil?L6QaYR(nPmL;cKN$w?OvoR9%OfSvzOqal-JkPIZ^PZpQ z@zIr`zg>Br1=4}nJ)Yx-BL5G8eI8Gn+tts_e1>uJGJ}+>w(*b-$=C%MhW!QT%^8aq z+-ThB@w|Kv3H$i}1^(~h|FFLhXmf^}&C^m#LVymB;q8--AN>n?Jnd&JaxBs*|zR($qmn?1|Nx=lzc)rNT)X&Rz^KG}2@pM6EV5P?J&40;v5vl+G-!KTYZccnH zZoL#sURhqBoLNzyoE6ZU_v>JQZh0R%HqWEiY}Au2mDR+=tu5;XuCdh2ib(1rM^D8o ztMz20GGO~b2fL|+JgEqADSf`4@;|zt$frT7butf*fAvm}XItmCZF+KErB6>9mE~X3 z&HVw(d*&3{u@36i2Q_=+*5-KXqQlx#yJFU6J6tBs_UNtc#zf0or1I?u2lHZD((yY zR(1EvKqt|UebUAlN%+YhsJp?5Rehot97^8-`-=S9e)_1hk z2k4Wu8nHTK*7Lfx!}ik}Z>jW~w8rQd+f^AN8Ku>$eZRwg?-NEy>$>&#@LE~9_VI4> zQm*OO$&KN<0;9OT>J=iFe3&Vyw_aB;-YPYx=2eDb*2b81ZEeh2Lhvps6+uEKeb^P^&&A|~`m*9-W% zqmOuaJO14ik(r+x2bQ`(WKoo%LU%$sQ&tP07gSbzcue)M;+V{u&2(KhA4=D#2L1DB zByM%nYBB9Zpb`sp>#EARfHjhw_+E7$S*J=?D_%L@@qaBFoNI1jWX={hVXmIKs&cmD zFLLXwc00cApyN=A_&<_w8}!YBWX^@cEo9~wL41}4T++kjFJgaU^6N(pQP%myIR51n zeR?uIZmg>{ys68NWQw#kJ9V?YP+PNGfYlA*t?7@X8htF+#K?GR+N*DSJeeu+)WZDC zv0>{OZB37TPpLwUQ89BrvaMXXJZ|593PtecUU zmgli{B}&Nj8bRHBCtpw9TREFm(il#jb9I+@^~5~SZ2ONg${kGnml^d@it)q&nKe_Y z)~zFgq`}@LT-jFgUsxoESGTR4- zl^OGSWf)$FiP5d?tTXWBahcS(wNEJf*^PCJe8%aGb#r~j$=Vv-w;p2Zv9}dVXA@&6 z>ZNFmmFRl1xocRUrASiWQGTX#0c z3p#Q!N60ZehR;}Pp05b>vL}Ik2>{^&E@H7?5D$cj4#O=r#d(y_K_$vt~i=#&AVZ1lis>n`+hr+8)v^*0d4b) zm5INFU`>0vnXt;UN98eI;-fKAcbfaP!|qdjMz5@f*|PY{>>sE)cz7~Tlk<$kWZN97 z7U)0*7-O8#mLBKvtX^Hyo|yz26@@Ulyug#ACBvWqbg`mH-NHCQ4UNkA>|52cowCDi z+ZMW#Aq8SqJItSMy}&pUetR5kJuV|iR@e`WV{vw7D#L4=RHKS*drK&LvOsXYkhY8L zHzgOuWnU3Nh|<=gso|bb6lWapB}>v1qLbtr>5yQ;T=% z4Lxd&C%t!)#hwS5(v#l$(`7vEiOSS$z_B$sah@bz=q6TY6N}c4r^3t~ir;v=fD*|u zdAhj)zPrPxJ6nyB>~IBS&b%f2amxP}@&#YdOh8&8JFt-rNG%Ql^wr6i1Nb?2n(I-vnBtYJ0H17lVkYj%{| z|NYq#mkyPvk`gjc{^oq?!j{G7(jBkrPS4U)we{biovJOv`ZSRKOo!4nj2l>2(}6cO zz@XA>nYMm$g+|-yv67ggLFc4y5^1X*%qp!NZ7??-F{dZ-acrPhpU|#P>FC^s?5AWt zbAK&j-PBleW?#%~us!zUr%M|fYqLCcV9wQwz$y6&iXg(1^?{y@3m>(m-a1e(1n)yV zc~#{iX>WWzi`ZY^+MhVZwqf0~6fZ&0McZWp%pB)_!}ZresGq280t3y8F3H(k;q{={O5^%?!%|A^s1ipFI6$pqgF>O zXfIwE1uOxE5q#&4lCZTQYJC_U_#nfA*%Yz<85`(}RDGB!mSFImsCLPRRIdj+mfkKK zRvAr3v(3T8LHAyPQ*Uk8T4bv-2OZ;9R#laqzJmct0i7w7XvjL<5~_MixJ>~>ceclz zF1A<&5!o>p%2bl)-SjI$y9MB7LjZqhDs*S^F*1v+F;DtjvY3}w1oWzZ0DlC`fsfNu z-MI41J29&}J)WMfi7F>bvo$TDA$ zhqUwWY(DPtdEyQGRuq~IK3EJ?B1ph__J4(B zoUQH4_E=X|3~UhfWumxhiO=dvPaRv~brTErbss09~YeDM1 zO%yID{aoc@xFT!~vN2gNJZvV)?Ri6$OTAw;_q|{9ZjwCaU|wRR{X1xf^$Db#hVmzf z9C~dt3VS zJd|g6%|rQ#f7s=SK&#RBS8i#_B*{)lQ~wmW=)m7rr16Qm5**V zO!b%z6&`n{6dR=YRCnCDA=5gAhYfg){bw4_4){WXknxl0N5~jq-dN$u^x2b9Q7Mc# zm-XUe#6v`77`zNrVMG?bf(g}Y>%S}t4{z}cj)PRPH&d%OcrmoXJegSk?5`2Yp#{;b<`ar>wYvyK>L0tT@Tsg027SzWOK%9c#VAc&nUdjI1afvfiA{I$pAp$zwk{l(nAi~Ju z`)ha;`}YwQ_EDSt(9CRJpX4nguYF%A8#Pj*4nqGFakZDx8Hi~SGxjEtam#zhXe5)Q zcPTI3^3UaEm0iZuezQ+tDyn_;SmVbfW`nqgwzykM2AETi5bodH3@n0`6QTFB0M9bl&O9n3 z6}gu-XM2pWj%Kfx@>CFkz>tKs0g+BZQz1%^l(_Z46QGidThu6ezWFtq?H^NDX0mRz zRH_anz00J{RQA(shje(o5@mU>SH1D>MDmyXtEIi9cNcYcdmkinWTB_M+j~DDwgV}! z;-K5lg@o_Sh8H>hJJukWddn&2&cM|GMD)B@6AuJ_!JIn&FdycOcc_eA#?5yI`5b@K zV;;|XX$t+H<3C2qG;fr?LqnC#=2~AYd22;1xg;R=o8kO3;uLe%GNp@ITv$I@A0<1jgItT;m6{g)&Z-oOj@1l#Tuj+m{U<7OS z)Q!6X!RvCL6=rPhi;Jv0UU!r_uzwxp!Es9}GH=2P7PMRO?s5eD5!P+prI~_=l@_?^ z*2}^3mdw!|G(oQy>IJV@Gm%vK7T38@TXI&k^-yrqDHvoe9oJUJtXna2EE#U*P|C}{L+YYJT0n}atR)#l)0 zV~RPr)EH+^8!<$L*L#JDP0xfhKAnfoC{q@;j)Y74GQOurGQH*w)Qz3_VQUwaq0`Y? zI*EnlZTT4Zqe(OmT)Fa2LW$r9b|3-?hf4?X#*ca;WhFum6Gk1p4t5mMu%yOdh6L*+zA2HuLZ0^k0*1uPj zSwuyNo2VpQ;$#}k^i{^?W_pw{ohDC{w#S(VMrf_$!I6P(PdjVx3$!vSQ-_3>sES%W z+WP)cnJW33sJ`ACm6@2$SxQbVqiO5kE?wdcThC<*i71ufXUE=JNVQQBG~r-9nZl!x zW(}2--SeyZN%`*jb?C$*1FV9$xaoDgCgF)Fq#ogXK%hQ!R{vZ5F&Cv;{r!p1NTIm6MY(}-Um+zQadB~Hgq=M~k>Y$Xx z?nDpi&RWT09e+sJDCA>fVlx3oB|;1QRXL9-5`fW~b-c5V+3?uqun?lp1k52|ve-X|^IQ$c4j(=F0d(Q=H)OtYBlAahv8TGdE?Ba)PecaSs@EbY?Y@(oLJ zUe=HYbqqpvgt?ez#hbON7oi`*t zAG!pvy<7l*f_?u~J2))8JC{C2rDyflFWBRT<#}Kz4+e)LLBTV>MV!E*FrJ!S&V&W& zQaH&T>C{4B79;CYFjglthhd)d}5#kij3ZyF{ z~vUfZbJ#3?g8e&c3A;w0AA-q2vdz9RGhkLL1E2G;_vYcvX)9pR&{L zVDBe#tB{;OcNZX@crw3}j}h*NAl{HXmzy{Cw^PAb$G_LDld4kwB4QK|`&2d(_Z1K~ zH&wZ^_8R7p6#p&1S8HUQ>|g1NHTiJE=R<6B_8og%R=vKO8pG>rE*XSv^B z&AyN5>RYv#-p$806z@x>DJDt*RN3lY(BWp8n0)D5r%w;QviRNMgFKoYIEr!a1*v5m zFhb}pk=e+1cIQg6l!t-G-Ot>n%o$zB0A%Y0qXK9>PT1}O*=g7(ga4gGoEoRYDgOzA zF{!fm0h@g{z@e!x^ZopJe7`4SOHJ$)kfvsAD~ZbAu(&MJ?ly1kdl z2a^|RJ833C7@^i@1dpwNf4 zOm1k{`>+Kt0DADq;zhO>Na%G%iTuo45^;lWX^y{EmG8CfFOZllaxegwMO4ivxG8*} zuD(a{9S?q#@Wz9-@kHGENQMn>qTba*Z9qIZ^yrwO$(K#Y@k_=C^U>C zQY1Uw$m-rEJ15hYm!8X)&~edOre~?7ZAzvh%G!{wlbE5k^$>hJD9N)# zR7_7zD+9m6PmF+wF|3NP)`W^gAw*h!=^VioXN3 z@H)lKr{d8kP_@UZHtD+u^(yx7=j}IUeSWqgo7Kyii-&x+mPa_c$S zi9)MN!fiO3)EJ|k4ax@FncsZyW8k~^P2rqEp|-zP)-c6(Hv+w=?%~*kfy3PbLzIZ6 zj{hZ9`Ms5b3c^S|^0LcF39`71)U7a5OK|6VeaPoP_D=;-`v?F4M~rdq=ld=^CYmz} z(_lzq%sN31`!?2`t8TkV7NoEl;Aq)McDSq^Tu8N5Hi%)|@sF1tG1hW63Q<@XMQVps zMk04d%F;f?o8h=O)gI>K1m+)k8%cqh6F!u)>04#MN$(S) zLh^b_z_abivhT=OaMzM3_Uw_mdFg=D*nN@XDUKu;7Z5trQ`~jYS@LyBq;2s`7SjqT zU~a(i?9u_Z8u6yu1U(}G+1;qTNozSr)`m!1iju}M(c6PJn|Dn`kcKd>VU*47(VNLut-zX1S_ujocW=^kkjD_+#V%!++k9zWq zFU!l97!|WhE7=c!tyWM}Z+Kr%mEA^BB~&3xV*L<{i;nd}FE}0Vp~6bId{1~)lu^`| zw?*-yI$o95TD}6AbE2hAcg)!&{!_t2%Uhz>TQLjA&KcuW|E32WaY~sUJYp0##e=@4 zbSvNrvl5)HNYK|j(7RT=A}4G%JN^kt*CHt8PGaNI*_ve8)C&|*4H4Z>G#^3jG1kH9 zL31!aQ6yD{GR5X#LBcCxAE*>8&kBeMRX}Um00KLaU}>gIW!Jk4gVJ%Bin(EDquzW- zPxOc=U+Y>n zu=fB3C3-6MFg))+wO>P17(3F^I2)5I&$HrY zz2PHhz&fVcRcy@GtG+bTa@~uOC4Orm{0oDtZ1=I5r7Y>9g zsL5k|!K$me6Y=@(Y4$=?G`e+VxfsEE>_4-m2fGuRHM63n{Z7r?_X%eVGDYUBiU77| zEJfv_!?3!f$yz;GGMod=@%ci#QNp3EM6yet1CHCbfc`8muNc7sVwVij3GA#}?erLi z(PNLl9QTgi3GGLT`cZyXIb$oDF6=ml<}?O;Cv{n#{Sq)(U9&fgCCZ(J8&IQasV16? zH@psT&qOr8)SSN0V=TPX8ndteBGg0I)9RtU$`s|*B;6|Ar>3YTY<`lLIL7`0oec-O zjVVqSQ(l>wfNnT3mMr;3xqY0Q7}g@9)q?Z%Z^bB1<*!j~94OtHTrAz;+JWz^yMW^)*HH9 zTGXYdN}CYeU&9ZVAlesL>Suqh2-?Xgyv^=%^HAmT&8}RjL{f(PxM=z<+`&Y z@eGBW*CcJ0QnQs{hDeNX{NI!OD$mXYbM<+~R=oiSdGC5DT(Fr%(t|qY*FWQn*+!^f zJ-RRwFV2A8@PaxdfcfIge)^giXD@(hN?kV5K8#({T~7W-bS8 zMj`HccdnaCF&kHw93|82mr)`PN#}Fd6-$Oj9;?A!w`gKoc1LKSWAGB=1gkU8Igb6S zqh%5?|752T?j@yUoGuu^Ag-19WEYxd#;hLu6+d8)oQf;*Y` zYaP&&*X^Ns)oX?=kxOeJqhUnR?C6~GkIP9PTCbw|DZ%zoj6FV2IdNx{`x zsAOQ^;^_B~G@%2czQa{l#7?`7iNTd8ahv^fN}08jwN_!|?A3fFD>8T6-zGps5h|jF zh!x0IhL-nVDieO9D>BIeC`S_G#nCHKVPEXlo2ap;6N)4QnNzVpPwgsFxhC2t6YKhZ zWlHSh)Q6hD2hm|Ofr2F=+4k7?hk1Nd3n>u2V@?@~EpP!ENc$J`0aBrS3l*GMcndLP zEehab-$SJ=P8+{(Sq%s~8oit+l)_@MJSxg*v4zFEjQ@x&?8?jf$++Cc8>C z9sERV-9%39G10m(WlYR%GH>D(2jNzBMOR-hSLsYAG)?0wmXBXZmISbe{&u1Cvbu)d&1epS>O=T;qlx!pI zGGr*~2BtI1`&AA3i7}?ilixM7B9Bur<@q0JEAxi?X1luA;m=|EUF2_b(6{(X?Xf+v zb$Qu8oI-aK9a?;XKJbG1YLPJ_Ue%!|%W;ar=PzdNyD-*~9+9YXKZ^J$Fh(~vHm+W+ zC&f?QC%(rYi>qRB+vuzpZGWdWDddq%{EIaokYl+^swIE&3U-q#$|)D(-OK-dl;>sh zzmNZeiQde8S^cusIa=2`DZ#@nLZDZ^R3YBBeDujqT$nlM{v!d#&V z^A$&#I|p)f-_O$L1G3%u?b4&Q{FqwOoEY{XBs^?tEkYb0##%2*&xiAk60;|Or(Ig0 zZT935bjfa!-8&najqh}rZGeTo)1Cr_k64#r5dBg)-27k>UNo2Za(ZG#^8SZf@SVLU zaf1~25M76$&~*8DQ+*sUa1!2W_wvD8Pn~=A0YVMEddDHJy@A+>)r(i(r21R;&W#rw z|8k}%o|SZ&X|Gr42eW*_o6YR%dmywlHp}k85 znJQ0upBJ>M*K77D|J*8+wG1otCn?uE%W6?W!rojR%6;G9Hf~(@y zBg5zSXf5C2Lx%G$-r=@UxiVoKzrzJD#!^@3MN{(!B5jfCkX+-S_hJQIkY!srdQD)-hMy=C@Ssea zK3;1PN*F$Wqk*$IUQZ~|(%XoEV%xgYgY{&|xL7KhCr-{IhRblV9xk|M6cc)L6ITCF4fMb=@BwXZWCWV|>$!xy8n$NZXWL z&8wnw+ahO;%mib>mlGwDobYxP6lbbH7`G+m(cgcm$0Lc zrT@g>l{F@#nFkA3j-z*rk0FDzL3^y=qS_}seW!5x>kaL(l8dybTJq!z7#wS_-zN*; zG)kLWopgd)opw&g`Sb?d(Rwr24ey(71Zk=byfzQ!FCV?CAO{nPjht0y9xO=wOYHel zQ&n%~Sl~18VirOTd+cXpU{&;uxb?N!;i{K++jt$+TU{bS)a+5Ga^-j>y6+QNJ`ro5 zh&+z}bUq-_Q93Q%-2&nSJFV;XA!z^d4~}zb7LYhWcSj4}NG`9|(+`rTb(Kw5i-_Mjz5%=kkeSRh`SX@3-KH+Ul9-BFjsnWYQ z$X);eEU-`0!7TwGt)EZps->}+(p=oh5=XlN6!3b!c8@UrnaR19ggy-6b*Xz&+y$YF z+DxFJL4EL_hA)Qf^3^V;_s|j4R4;MX^BV3`fPFCsz0m8DmvcLj9Z*3iwI>}$k8KWq zEm3H_lKC6>aS}=C(}_eMG~OOS!OR}BirXzdfuc)GCFAgGi4pp0eioVqBmAw&diYGW@6wHTaLQz41x8v4; z9HNM)W{e{`Y`y_6@Wx!uQw*>m;{l)fYM${G&ZIYE0(4etKWGOF#@In>r;#zL5!oLz zUxLjTc?(J$RkS}6K!-ItVs&A0BxM|>aT@d6uc6J$j&^`xvV!$O`cg^))A1^uiXT6k zO(&RT9ELcuqetdkUmKST`<5!Cc)4TULYV?9d_3U96!uviZcLnu`p|fzzEG!fu68R4 zQ!;m|cRLzQdNo}{o@4aj-xqTjj9uwDyYwrJ7;hvwnzi~vkt6zzO?vRql2SWQ%1;)E zJf(bt{)OSm@{r3b%hlPb08*x13v9uUQ!i0VtL29jw`(_1uPcVD{vB(d?8Ycje5q1A zI^KL%Fe11T-5bzo-jtCIau7?>VNaq;acA}jc=TAZ@UXBJI9tpNC^(DgGkx;Xle56NlIB?z`J=NgIJq-q)uL?03qk2Q5kYbKI9nZc8n~!J z6}4V8a7)`_cOqKhr{|!xGaD)q)Rl{#`06PKrPe)n$FuMll2JtMh`x-;v0e;;HyymLI2@yi#zBP~kSJ`3MNPGDUnECLDN=EOOqlBm1w-S+6 zHx44RMr-y)YOni|fvF+7+PuF9JorS!-u1{BqWI^mQwY}b%?HtwwEl)v(e`}ru!v^< z04$Ga@~6U#8&l#9?PPp{j2vqYoBPn&9PrlP+CI0wpk=c#VHr8WNR}Uyg(=`v-lY;0Z?`1z~H8@C>3pAJaq9eZ}{a)N!zo7Uo-9#L4>#I^v+}{3h(WyeDVh zuV&-7W#6l^Z-W-e*E&U7ra^OXf%acZn0&3}>vYZ>3~Md5e42wZwU%d@2Xip0wVbSC zF40=#K!G`UrD2$ZbG4S|)Yq4B=^ngMYbjG-4O+`16iZjZ1IH|w(k{6;MTA1My71yB zYfsbg`Zr6K9P?wGn6ILcr)tCQ!E}EC>X;Ucs+d=^~jxJGCA*RYe5$eSh^srj!Pkp-8rxDiY|PLx%TRc z58EP@S7a^^D~~Ek3q?yZ$N|;`G70wJWm$lM3asF8|E7QeJ9S!=L(NV zVl34@M754Trs|o~1Wu7rIzArdrlhY_>8B1)ZwgLJ&<*ASfCz0bnF9X>u%My>pGe(R zmGiV#IU%g(?<|=u-;yFhxoJ#O|E4^nTt2GQ!~u|aW;C(+hRPDi*zgDOh&ovs2NlNpj0%bte!6J2{Uk+c zNLRqP%D4sFdjoEZ5pB&VJ@x%|nV3}l!{N2E#vQJa>dLn-U65T3i8HM^52Fmg%0%1j z9E-9YNU3r_Az=TB`hf^=d?Yh9Yz;&hXh;svWqZpQp#HQnP{4QdMqx0HN)*?1f*&!Xmghp_RGznqO62g; z#4iLTN-{qRH`U&jC}wMv@6t>gl%YIx56^%)@)2I;lBMZiNch7|%ks{_Ny%*IUL;6W zdM-3^dX1ZK_E5qvMGvy6QJw@Ko&`I)M#{!2^a=NFJ*Dd{;*mSEPB9q8WWY1Dt%hE=+tt3mx{YxWjH9killGKRWl*%l1cDq zE>dzbCJE;D!hzn529nLit3cHfp%y;Vr@93LMwnhqG0x&yWlZKd%{Z24wbm*}y{W;M zKJtlMRr;T9ATKQkkp${R>DSz-{IncAk}fTi$2@t=l}9{ky^|Y_d|#D*l#KROJBRqI zS9fp=S#9D+>7V1?^;tc4!wc@&m#y}n=K@WX%p4*grwWe*_h20}Uxa|+xg@7EaQ&Kc zHy|FAe0ZOYS^@Fo_6Z@jp!y`rWpKsXD%Px&|Nhsg(Y*yn&)$O5w7}>4#P#h!(hv)N zmbq7QF!a!uyM{%C1tj2z^;%W}uCVWCAZEa0FXNq64x>)vV!~xhf-{b#u_d?a)+=%A z{aD8*h`r|qh(ZIdqX9>BeGj3xLJ7T5#L`+uD+29%{SmC3N}gpIldzXbL7p9JA2Za7 zeTv(#E6_ejNkqp9_ULSP(%W<0vF{)_B+-h9pxo1LxZaiXv!>sM12hx)k_&C)8pMO8 zucB_x7jQeA(hs$)T}wDo96XSi*dLmYd#LRvyK;MB`>}meHrQ#LKs|@ACM@&vle=Wk z6CLB7gcw17&0f;0Nsn8vh=~C9T?_(DOcCv&3)&*Kfs48#$NA6}8>MU(*Sq~cDh#UG zk-1UoiR`5y0enZ$mSA5SCHa|=x3=X#pf3AjMs5yHY~II=Tqo`$_?s(5#7W;F%6yv{ zapvO9_%Sn5t7hap+J2Cpu9n#TNG&r`LR7cR#b9QX{jH(;5n)J}38lj=CX>y#7R~tFeAV*8N)y0M0t&xFjl-P^! z&B?#W%e=GDr?vJIT3;=(mU+Lt%nh7=i{}sO%?I20UjBA--FLY3*n0d?z7kruDQ}bi z%89$VZZ(Oy=w^u~x2L%dMHRP@y1843$$Yc9?t8=HS|zTrxemSLP`-O4?u*TJto)(4 zZ%Nz*&2|4hEN+#=oz`6UxBR2|sK=8T+g$fo;;ioV(g`iHA*p(6eNXzVIBkwAC)G%h zZ~>GRD zV_??YY6mFY6r7P-lxLiwH@ufSes0f~qRApDvqY)6o)y02jB6Fam?e(OILD!Tr=r9f zDqT&bQr}fztZtsv#3xgJ3g=$7U^fOwlm_F|E-`rLaY4yv58!R+#zzlE^}U^_y}WL9 zuM+m8J*C9*x zD`uN+tYBz%tEAabCnCgg9D9{ga*JiP%qo7)VXC0C%&;oRWv#ky!L zU)U`ur_O=Y##4oTN9z?ohFq<;2%Dt_nw)V8T?sSg?OdTdj&P^86L*vSAw^^;_w~UubMty*cEyfE%Qxg3{q5X1?XD!Anc~|SZxigj#M>reKktd?2 zN<1d2#|-Leu$jm!bbLs;UV)K`f!PSF8dPy9hCWkHP+{1bs(kGn|6LS?Pbd*b_$7Z3 z<=)3I2af+*sS>wN68Ng;%cXJ*b;x0Y317&dL*n-){wJ=hL~7!N_fa-Aqn6j_pV3p) za)_50DmTt8SN?w}2gW!jowr1eN2>kQDm(jewipg|LSgm}clGBtfGo^6uv zXdm6vj4AIYZS*wRd_VJG-dOJG4$Iw&p6+Imvn15jZ19@d)jS|CjC`k4DFuWflY5&y z_75SZtJw!7rq9Vn-a~`yN+o%jN=`oB&Ib!BF$(rh-zasMD$26tWp|thv*VVyn6mD6 zq5$-%emnk0z5%CGcJX?i9O~Y&n3~*^3*14Uw_a?rb~9YJ8)?*7WfRECIUUZGsJvUj ziLux+`q;L(PgLT}Sw1IOz@??e@5Q1d)BPQl7k$Cd0ZEr%vcEy8Y=ijCmfNWw`G(L7 zbEG(oQvs9!+P&*u6x&v;mJ|-skD-3t_H_4ag!?tu{Tlq8O5;e6b-`s$fh9hg<(H-(VXpAy1 z#MMu7OgK8Li>OQX&~nw;qZc-1;d^o(P&liq9Sv^e|dYIARw-A?|V`WKVqPL#I1SwM$~!h!I+>S)s}fd(yxzb6=hksdDmw zEElm&;1Z0)JKS=_FE=#rZ(^V|PWW$4VQwI`UhIzA6~shRx8x;P^oH72%+-@C`l2n{ z4PSD_V0cY=rYMrUc`&jH8%}+%{pYI$C$!d6ks*|-x3w=(KG5X}6|oi9MSG2cXz?f3 z4);u_tdI8al+9rYG#S_8))eMH{!veh3EM1j>|#PWv*{0>LLdVoKdlskiTbID*KqYy z#Oli&7wYfw89tiy(B!*eF;a&z=!5&L`uSXy(jI;ivc>&4<;FC5Op(WN^3co!p+rkG z*oQ~_eH+j_TDvo)Ve8pU5wdwEpL-d*)={S?IcMXP4!R8KF)j`V+l{&zV(~Ffo8dt# zW}Gm?Q^@P|86GdMsWUtyc#R5n7!%W#Oik2!lMCgaAkBlq^9i!Du}7^}*EJDJ)^7{9 z_8DVWc_(kexoX$s=)#AaQsHJ!!;!?uLdIBaeR@2~nfJ=gEroQ2co~(p{;kp_Bf=%w ze6Ww?n~*7{Ou11+_;@nft99Ba5cSE4_O2&$Fn*9ww?}5#{s}?Lll~C|0X1SMVnsLd z`w+9c)%IjX+0>R-R)afJaX7NMn@89JID*2jF(1k3KIJgoYEct3j;Xb}rgQ{55;GMk z2(|PXb<~loltJ`Q`rHa-K-~9#+tErBxYfud`dfF&!t5C4!;Q?|C3>ABj{nG4p}sx# zIL2V_d4hq|rhfu_m4af!tyy_PRnzjHs#&9|LDR8=IvD*v$NvOT$V|Vr?;@((BV<1F z({ON8Vnn!UXDBmLjvW>f#M64tKC8rTi_olUY5Y)2Syv!5Qqkf;>9t&98EIS2QN;$> zp3fOmZBuwvcctDI-KDjPI2&z2fA||vE!^@?BVm<9Ii$&Dst@gFBBMPrtH;>~A4i{1 zE4ht&I#Tc+o+0AEZk3?!e8%lVV{*ka_CGk<0w*?(Tlk+DpD4%qt%v;9WiIvKNbSPz z+LuzfYzKdFi>fY6rVHz3MX&ROfXj!8GAr6Ug)7EOKFH*k^fBohK=+wQoVZ|}idur# zWWMs%atQG{k*`9JQdtyw5)&hB(Ycv%>*U_6EXEY$iJt5aTDZwUVQLsa6y^B1`e{8V?f^XhY9ySjb-Z71*S8Ej$ zi}qCgT>LM^s_N%ctfp9(`F)HY=LnJ_za-&NkOmgVR5Ghj)@?c9La7q zzI{aX7W83IGp49PX)PbQk!sebN~9pv1!=j30boe4!%s3nKqJ<$k+PhC@b*NjHriEV z70#e2B5R~zUo^OX<%^j@nWrqyHb5X+eeW2orgB7z9#3ydoppqTCS9 zmw?=gO{O1g8CYJo+75lC(9ttYocS33doNUkP4SHwhr>m<`hbIMO3A2{Md&ET+q)kV zN)2jy?CS{%@3%7jdua(}#j7&V0GBb@Uqy8*3}PT!*Dxk=pD({C_(-eu8TJKoq^Nj6YuW;!J*>Mp z9gJPolX#01ZB20%jIAq=MCE)QHz;mqC1Kb16vnOHV5}AL)i=z>!WA#rjSezCWp}Kh zlf%2^>ZFtI(+g(#`ojg9QK~%_E-?4?=|74W^u%kni2516{o3@;ej@7#o|y|OYgvIZ z;Ykodu_LPI@YRxTTOSCfwy{|&F|W|so#76kOJ&l;$xreiCm}H*;+)w)bke&B4sEE8 zWZ75bGg0QRRomv|*xK5|d$My^Rcy)qM^HKm8J%EGjkGw#oK{O{Z-0-7C@)7(Xz z2|7%3_2@v0!>RfLdl6{64aJ}j1p6sM>uU3m&lqhUDlxc9t`H?GBynoy^tkoZ!!kr* zH&r(ul(2`KiDM(yV~-N<{+2ui3K?$%-PwFeth36dErXQr7C#8fdlKP-p5X2kr|At_ z)CuNq-A@68(;lD4*??^`V3i$SN)>;%-+dS1D_K}c&x+_-ekY>8kIcbWV1<4lZCN`x zq?PenTX_XvK}e^|Bk8i%S^)~hld8YLSG3lVd`6P0m+4Pr2|+^8$qsV zog#x~-|pH`8v4|w74`wRUN~LEbjP2XPsfwq|Ai*-`h~pUUcLOVU}l84N)AcmYL5{- z#3A$OT`Wrf{eis~R6^HOb_?aXN0&O~hnB3e%hmT;(gq@UaHDq5PZ%*u##q(icqr_N7uL{k545j7ZEocSlfb^k+^&Y$*fQt_)UOZvT=Clzm zuJ#*nnao$+#0T0H257C%3T#qkSE6}#{QtaOVns8owR}&=Ny>j332FvMOPVBnQ_&f0 z$j@J=ats=h1NO*!8I?MITcX9ryv9v$A4>m%O7F>~|Ikfu8cIJwr9YfYUrK-jO;qeB zL2zm^9jbG)b02gr-{lfWdhMrK>+Ch&S0o^s)aM9rVd(R`L`QWKnj-@XGhM4xWy_wF z6synik5NtS6Zh@u($IO%bMiV(@mFD`c@+nfTG7A+aJBmjK?VD-?NlC$+-St6?`%nYK&ixt#%OYMW_zrv2Oh)2LDNEhkf=Sskx^io+LB01 zrgF(-kCj>{dw}}G9BB9h>&T^bas|RJajT~r>aiygAOknZY&OP8&yJBqd=QVz*wV-2 z3E7+JR<4V4hIJ9H2?ydBI{d`(^;Iv@sr<&7$--lW+mTM4DZk~D&PKGr!d&7EdWkMIgvo=Dt|KNseMXtHwyY9XA1`Tqs7Pe@q>*$n`$Tk$ox zO9adV`FEF@2MQ8nEpOlt0RBYFTfsY7c8q)-Ynv3za?|Am#So=fQ#K zoMJI~jRm1HUzK?+vcL5`!t?m)nSD!Vg0w*ttS%R(yjFXar6>;8`ZtRSQPGUV?RDPY zBe1yUT$)Jed_m^Qjb*bdK0FxdIGY$POP=h=amIy_iq&-({dAN+``!QI%@rQo@7Vs zIE=5%+mqz78?mL$uE%2~yvoq{9UZvCP=0@C*AcA4`N~F&&klMvbq@4@_^}X;TMWv$ z#bB$t#o&fx8TeLvs$aBUTFaJvx|8y@(g?pTvXAUVa+2{cMB8m|DO!%iG7nA|3Mo0S zC1>3=W27g@teSRTr{h2G8n?0)ltPNZW2j$iS;Pl)k0c;~eESbJih2Ctlh#sCiezbR zfzYqQz}$487zvd0I1LaY? z2JiXJ_Vtz00ppw)u8CEhv4TygD)O}N{6Xz7+??kYmFvIXn37dZ{8`d4lOLbeNbs{{ zNPzryT`t3SB?E$X?)Oe1iu1%oJKuE#RCbV>JtD1o1u|@=3?P7=>q}yZ*eAffOsb$9 zY{i1gfIx2|gVVVQN6g1uGRFV}h*4{!;};(yDa7yGc(`M$>XQNxCsMbda;|nSH|u$j zyyIX6lkZ9aLv?P(B#4LX{4#|dpQ_j$8~6QR?bZ$dBlXP9)5MPA!3R0wbZ5Q^=Hw~N z$xocXjp~TeNVUa{j3*SfWoZFbNK8{@8?6sW(WY`$0;p
      , , and 

      2sEA0b+{i8mF-p`}3k2M$gw;4Z-{ z%OWs+5k2*{04t8mS*?xP?wk@{RahBwHcl^2l(dZv;|(J}-_^mtwh~gsa{0<^_?;U1!Ay53w@#5t)J)5~>v#-He&j}mAX9!OI{>pyf~rWb z>eCzGs`Ox&c5f;Dr(f$u!|ZlWyXRu^r#}K7vgEba-rS&c@~VvgZdhltsWC2oT2v-D zp*1GQhDB?k^bjJCcjPxF5eQIAG#@x3BkcV5BfJ8Y+W%{W^;fwgtcQ#KcOyKFfqZs^ zK^Y-e#=4WWNOGvVuw{)dlAm14O_cnk>aY=&f^B(<%V5(M^+IFzv-#k|fP67OSaEbk z%W7U!#aiSg>v#?@#+)ZVi2LIz4&3b?jKFDU=fqvy+pm;)9+XKF5l8N3lj(Mscf$@n zbzhlGZ4{T%R9Q7!l>kWH$K%etRqBgWb#b1PdLURO1qdFI;E|PUGe{}3zbF_jpZ>6Q z*c~u*ARIiR-BSQS6c(ZFYn7&@hep;%73sBT5FLM>sxHG% z!Io+|G#HT^M2$}&;dIs@TtSRxSP02PWeB>#sq`se4woTx>d82Hb!;N%G z_aTqsBQ9%meN|s0Dmx-{%Hpf)dJoHS*n?F=zN+FqTt(Cp zqLd`^t1D!p#Sypfa=|Z=enB3;{pv3TS?u+^T=a3rcs0;rjK|u)97?dyAUNb|BxB>3 z=W@C_ZsiMcKRS9!^PB2$BaUe&IhXpDmFZS~8)9(2_E<;8C)@N&)Q)09C>&Xk$wzjl zCiS~=@QnZYyyAEMTM!9Zv-LlnS3JNPUGVSED}EQHuf2`Sk&#~XWb}T~fShhWPDGad z(pB2$pI6+AfF9-!#q4>-bK&cco>zRm6Z}s37k!UB!7gL!u=9$gWQ_gi^NQ)OVTH+^ zSM2&fo>we9+U@WDLWcCO-G&EDSJG`6t{hhod8nH+3!gf#80E-h?!4j~P_Cor6>~=$ z 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 1.2, < 2.0 [bar, baz]' -# -# The regex can seem a bit hairy, so we build it up out of smaller pieces -# which are manageable. -# - -COMMA = r'\s*,\s*' -COMMA_RE = re.compile(COMMA) - -IDENT = r'(\w|[.-])+' -EXTRA_IDENT = r'(\*|:(\*|\w+):|' + IDENT + ')' -VERSPEC = IDENT + r'\*?' - -RELOP = '([<>=!~]=)|[<>]' - -# -# The first relop is optional - if absent, will be taken as '~=' -# -BARE_CONSTRAINTS = ('(' + RELOP + r')?\s*(' + VERSPEC + ')(' + COMMA + '(' + - RELOP + r')\s*(' + VERSPEC + '))*') - -DIRECT_REF = '(from\s+(?P.*))' - -# -# Either the bare constraints or the bare constraints in parentheses -# -CONSTRAINTS = (r'\(\s*(?P' + BARE_CONSTRAINTS + '|' + DIRECT_REF + - r')\s*\)|(?P' + BARE_CONSTRAINTS + '\s*)') - -EXTRA_LIST = EXTRA_IDENT + '(' + COMMA + EXTRA_IDENT + ')*' -EXTRAS = r'\[\s*(?P' + EXTRA_LIST + r')?\s*\]' -REQUIREMENT = ('(?P' + IDENT + r')\s*(' + EXTRAS + r'\s*)?(\s*' + - CONSTRAINTS + ')?$') -REQUIREMENT_RE = re.compile(REQUIREMENT) - -# -# Used to scan through the constraints -# -RELOP_IDENT = '(?P' + RELOP + r')\s*(?P' + VERSPEC + ')' -RELOP_IDENT_RE = re.compile(RELOP_IDENT) - -def parse_requirement(s): - - def get_constraint(m): - d = m.groupdict() - return d['op'], d['vn'] - - result = None - m = REQUIREMENT_RE.match(s) - if m: - d = m.groupdict() - name = d['dn'] - cons = d['c1'] or d['c2'] - if not d['diref']: - url = None - else: - # direct reference - cons = None - url = d['diref'].strip() - if not cons: - cons = None - constr = '' - rs = d['dn'] - else: - if cons[0] not in '<>!=': - cons = '~=' + cons - iterator = RELOP_IDENT_RE.finditer(cons) - cons = [get_constraint(m) for m in iterator] - rs = '%s (%s)' % (name, ', '.join(['%s %s' % con for con in cons])) - if not d['ex']: - extras = None - else: - extras = COMMA_RE.split(d['ex']) - result = Container(name=name, constraints=cons, extras=extras, - requirement=rs, source=s, url=url) - return result - - -def get_resources_dests(resources_root, rules): - """Find destinations for resources files""" - - def get_rel_path(base, path): - # normalizes and returns a lstripped-/-separated path - base = base.replace(os.path.sep, '/') - path = path.replace(os.path.sep, '/') - assert path.startswith(base) - return path[len(base):].lstrip('/') - - - destinations = {} - for base, suffix, dest in rules: - prefix = os.path.join(resources_root, base) - for abs_base in iglob(prefix): - abs_glob = os.path.join(abs_base, suffix) - for abs_path in iglob(abs_glob): - resource_file = get_rel_path(resources_root, abs_path) - if dest is None: # remove the entry if it was here - destinations.pop(resource_file, None) - else: - rel_path = get_rel_path(abs_base, abs_path) - rel_dest = dest.replace(os.path.sep, '/').rstrip('/') - destinations[resource_file] = rel_dest + '/' + rel_path - return destinations - - -def in_venv(): - if hasattr(sys, 'real_prefix'): - # virtualenv venvs - result = True - else: - # PEP 405 venvs - result = sys.prefix != getattr(sys, 'base_prefix', sys.prefix) - return result - - -def get_executable(): -# The __PYVENV_LAUNCHER__ dance is apparently no longer needed, as -# changes to the stub launcher mean that sys.executable always points -# to the stub on macOS -# 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 '' % (self.name, self.prefix, - self.suffix, self.flags) - - def __eq__(self, other): - if not isinstance(other, ExportEntry): - result = False - else: - result = (self.name == other.name and - self.prefix == other.prefix and - self.suffix == other.suffix and - self.flags == other.flags) - return result - - __hash__ = object.__hash__ - - -ENTRY_RE = re.compile(r'''(?P(\w|[-.+])+) - \s*=\s*(?P(\w+)([:\.]\w+)*) - \s*(\[\s*(?P\w+(=\w+)?(,\s*\w+(=\w+)?)*)\s*\])? - ''', re.VERBOSE) - -def get_export_entry(specification): - m = ENTRY_RE.search(specification) - if not m: - result = None - if '[' in specification or ']' in specification: - raise DistlibException("Invalid specification " - "'%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[\w .-]+)\s*' - r'\(\s*(?P[^\s)]+)\)$') - -def parse_name_and_version(p): - """ - A utility method used to get name and version from a string. - - From e.g. a Provides-Dist value. - - :param p: A value in a form 'foo (1.0)' - :return: The name and version as a tuple. - """ - m = NAME_VERSION_RE.match(p) - if not m: - raise DistlibException('Ill-formed name/version string: \'%s\'' % p) - d = m.groupdict() - return d['name'].strip().lower(), d['ver'] - -def get_extras(requested, available): - result = set() - requested = set(requested or []) - available = set(available or []) - if '*' in requested: - requested.remove('*') - result |= available - for r in requested: - if r == '-': - result.add(r) - elif r.startswith('-'): - unwanted = r[1:] - if unwanted not in available: - logger.warning('undeclared extra: %s' % unwanted) - if unwanted in result: - result.remove(unwanted) - else: - if r not in available: - logger.warning('undeclared extra: %s' % r) - result.add(r) - return result -# -# Extended metadata functionality -# - -def _get_external_data(url): - result = {} - try: - # urlopen might fail if it runs into redirections, - # because of Python issue #13696. Fixed in locators - # using a custom redirect handler. - resp = urlopen(url) - headers = resp.info() - ct = headers.get('Content-Type') - if not ct.startswith('application/json'): - logger.debug('Unexpected response for JSON request: %s', ct) - else: - reader = codecs.getreader('utf-8')(resp) - #data = reader.read().decode('utf-8') - #result = json.loads(data) - result = json.load(reader) - except Exception as e: - logger.exception('Failed to get external data for %s: %s', url, e) - return result - -_external_data_base_url = 'https://www.red-dove.com/pypi/projects/' - -def get_project_data(name): - url = '%s/%s/project.json' % (name[0].upper(), name) - url = urljoin(_external_data_base_url, url) - result = _get_external_data(url) - return result - -def get_package_data(name, version): - url = '%s/%s/package-%s.json' % (name[0].upper(), name, version) - url = urljoin(_external_data_base_url, url) - return _get_external_data(url) - - -class Cache(object): - """ - A class implementing a cache for resources that need to live in the file system - e.g. shared libraries. This class was moved from resources to here because it - could be used by other modules, e.g. the wheel module. - """ - - def __init__(self, base): - """ - Initialise an instance. - - :param base: The base directory where the cache should be located. - """ - # we use 'isdir' instead of 'exists', because we want to - # fail if there's a file with that name - if not os.path.isdir(base): # 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'] = '' - return open(fn, mode, **kwargs) - - -class CSVBase(object): - defaults = { - 'delimiter': str(','), # The strs are used because we need native - 'quotechar': str('"'), # str in the csv API (2.x won't take - 'lineterminator': str('\n') # Unicode) - } - - def __enter__(self): - return self - - def __exit__(self, *exc_info): - self.stream.close() - - -class CSVReader(CSVBase): - def __init__(self, **kwargs): - if 'stream' in kwargs: - stream = kwargs['stream'] - if sys.version_info[0] >= 3: - # needs to be a text stream - stream = codecs.getreader('utf-8')(stream) - self.stream = stream - else: - self.stream = _csv_open(kwargs['path'], 'r') - self.reader = csv.reader(self.stream, **self.defaults) - - def __iter__(self): - return self - - def next(self): - result = next(self.reader) - if sys.version_info[0] < 3: - for i, item in enumerate(result): - if not isinstance(item, text_type): - result[i] = item.decode('utf-8') - return result - - __next__ = next - -class CSVWriter(CSVBase): - def __init__(self, fn, **kwargs): - self.stream = _csv_open(fn, 'w') - self.writer = csv.writer(self.stream, **self.defaults) - - def writerow(self, row): - if sys.version_info[0] < 3: - r = [] - for item in row: - if isinstance(item, text_type): - item = item.encode('utf-8') - r.append(item) - row = r - self.writer.writerow(row) - -# -# Configurator functionality -# - -class Configurator(BaseConfigurator): - - value_converters = dict(BaseConfigurator.value_converters) - value_converters['inc'] = 'inc_convert' - - def __init__(self, config, base=None): - super(Configurator, self).__init__(config) - self.base = base or os.getcwd() - - def configure_custom(self, config): - def convert(o): - if isinstance(o, (list, tuple)): - result = type(o)([convert(i) for i in o]) - elif isinstance(o, dict): - if '()' in o: - result = self.configure_custom(o) - else: - result = {} - for k in o: - result[k] = convert(o[k]) - else: - result = self.convert(o) - return result - - c = config.pop('()') - if not callable(c): - c = self.resolve(c) - props = config.pop('.', None) - # Check for valid identifiers - args = config.pop('[]', ()) - if args: - args = tuple([convert(o) for o in args]) - items = [(k, convert(config[k])) for k in config if valid_ident(k)] - kwargs = dict(items) - result = c(*args, **kwargs) - if props: - for n, v in props.items(): - setattr(result, n, convert(v)) - return result - - def __getitem__(self, key): - result = self.config[key] - if isinstance(result, dict) and '()' in result: - self.config[key] = result = self.configure_custom(result) - return result - - def inc_convert(self, value): - """Default converter for the inc:// protocol.""" - if not os.path.isabs(value): - value = os.path.join(self.base, value) - with codecs.open(value, 'r', encoding='utf-8') as f: - result = json.load(f) - return result - -# -# Mixin for running subprocesses and capturing their output -# - -class SubprocessMixin(object): - def __init__(self, verbose=False, progress=None): - self.verbose = verbose - self.progress = progress - - def reader(self, stream, context): - """ - Read lines from a subprocess' output stream and either pass to a progress - callable (if specified) or write progress information to sys.stderr. - """ - progress = self.progress - verbose = self.verbose - while True: - s = stream.readline() - if not s: - break - if progress is not None: - progress(s, context) - else: - if not verbose: - sys.stderr.write('.') - else: - sys.stderr.write(s.decode('utf-8')) - sys.stderr.flush() - stream.close() - - def run_command(self, cmd, **kwargs): - p = subprocess.Popen(cmd, stdout=subprocess.PIPE, - stderr=subprocess.PIPE, **kwargs) - t1 = threading.Thread(target=self.reader, args=(p.stdout, 'stdout')) - t1.start() - t2 = threading.Thread(target=self.reader, args=(p.stderr, 'stderr')) - t2.start() - p.wait() - t1.join() - t2.join() - if self.progress is not None: - self.progress('done.', 'main') - elif self.verbose: - sys.stderr.write('done.\n') - return p - - -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/env/lib/python3.4/site-packages/pip/_vendor/distlib/version.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/version.py deleted file mode 100644 index 48c17c0..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/version.py +++ /dev/null @@ -1,742 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2016 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 - -__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 - - dist_re = re.compile(r"^(\w[\s\w'.-]*)(\((.*)\))?") - comp_re = re.compile(r'^(<=|>=|<|>|!=|={2,3}|~=)?\s*([^\s,]+)$') - num_re = re.compile(r'^\d+(\.\d+)*$') - - # value is either a callable or the name of a method - _operators = { - '<': lambda v, c, p: v < c, - '>': lambda v, c, p: v > c, - '<=': lambda v, c, p: v == c or v < c, - '>=': lambda v, c, p: v == c or v > c, - '==': lambda v, c, p: v == c, - '===': lambda v, c, p: v == c, - # by default, compatible => >=. - '~=': lambda v, c, p: v == c or v > c, - '!=': lambda v, c, p: v != c, - } - - def __init__(self, s): - if self.version_class is None: - raise ValueError('Please specify a version class') - self._string = s = s.strip() - m = self.dist_re.match(s) - if not m: - raise ValueError('Not valid: %r' % s) - groups = m.groups('') - self.name = groups[0].strip() - self.key = self.name.lower() # for case-insensitive comparisons - clist = [] - if groups[2]: - constraints = [c.strip() for c in groups[2].split(',')] - for c in constraints: - m = self.comp_re.match(c) - if not m: - raise ValueError('Invalid %r in %r' % (c, s)) - groups = m.groups() - op = groups[0] or '~=' - s = groups[1] - if s.endswith('.*'): - if op not in ('==', '!='): - raise ValueError('\'.*\' not allowed for ' - '%r constraints' % op) - # Could be a partial version (e.g. for '2.*') which - # won't parse as a version, so keep it as a string - vn, prefix = s[:-2], True - if not self.num_re.match(vn): - # Just to check that vn is a valid version - self.version_class(vn) - else: - # Should parse as a version, so we can create an - # instance for the comparison - vn, prefix = self.version_class(s), False - clist.append((op, vn, prefix)) - self._parts = tuple(clist) - - def match(self, version): - """ - Check if the provided version matches the constraints. - - :param version: The version to match against this instance. - :type version: 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('^(\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/env/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe b/env/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe deleted file mode 100644 index 85a90a5f51a9596679a7365eadd3352443b95782..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85504 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[^-]+) --(?P\d+[^-]*) -(-(?P\d+[^-]*))? --(?P\w+\d+(\.\w+\d+)*) --(?P\w+) --(?P\w+(\.\w+)*) -\.whl$ -''', re.IGNORECASE | re.VERBOSE) - -NAME_VERSION_RE = re.compile(r''' -(?P[^-]+) --(?P\d+[^-]*) -(-(?P\d+[^-]*))?$ -''', re.IGNORECASE | re.VERBOSE) - -SHEBANG_RE = re.compile(br'\s*#![^\r\n]*') -SHEBANG_DETAIL_RE = re.compile(br'^(\s*#!("[^"]+"|\S+))\s+(.*)$') -SHEBANG_PYTHON = b'#!python' -SHEBANG_PYTHONW = b'#!pythonw' - -if os.sep == '/': - to_posix = lambda o: o -else: - to_posix = lambda o: o.replace(os.sep, '/') - - -class Mounter(object): - def __init__(self): - self.impure_wheels = {} - self.libs = {} - - def add(self, pathname, extensions): - self.impure_wheels[pathname] = extensions - self.libs.update(extensions) - - def remove(self, pathname): - extensions = self.impure_wheels.pop(pathname) - for k, v in extensions: - if k in self.libs: - del self.libs[k] - - def find_module(self, fullname, path=None): - if fullname in self.libs: - result = self - else: - result = None - return result - - def load_module(self, fullname): - if fullname in sys.modules: - result = sys.modules[fullname] - else: - if fullname not in self.libs: - raise ImportError('unable to find extension for %s' % fullname) - result = imp.load_dynamic(fullname, self.libs[fullname]) - result.__loader__ = self - parts = fullname.rsplit('.', 1) - if len(parts) > 1: - result.__package__ = parts[0] - return result - -_hook = Mounter() - - -class Wheel(object): - """ - Class to build and install from Wheel files (PEP 427). - """ - - wheel_version = (1, 1) - hash_kind = 'sha256' - - def __init__(self, filename=None, sign=False, verify=False): - """ - Initialise an instance using a (valid) filename. - """ - self.sign = sign - self.should_verify = verify - self.buildver = '' - self.pyver = [PYVER] - self.abi = ['none'] - self.arch = ['any'] - self.dirname = os.getcwd() - if filename is None: - self.name = 'dummy' - self.version = '0.1' - self._filename = self.filename - else: - m = NAME_VERSION_RE.match(filename) - if m: - info = m.groupdict('') - self.name = info['nm'] - # Reinstate the local version separator - self.version = info['vn'].replace('_', '-') - self.buildver = info['bn'] - self._filename = self.filename - else: - dirname, filename = os.path.split(filename) - m = FILENAME_RE.match(filename) - if not m: - raise DistlibException('Invalid name or ' - 'filename: %r' % filename) - if dirname: - self.dirname = os.path.abspath(dirname) - self._filename = filename - info = m.groupdict('') - self.name = info['nm'] - self.version = info['vn'] - self.buildver = info['bn'] - self.pyver = info['py'].split('.') - self.abi = info['bi'].split('.') - self.arch = info['ar'].split('.') - - @property - def filename(self): - """ - Build and return a filename from the various components. - """ - if self.buildver: - buildver = '-' + self.buildver - else: - buildver = '' - pyver = '.'.join(self.pyver) - abi = '.'.join(self.abi) - arch = '.'.join(self.arch) - # replace - with _ as a local version separator - version = self.version.replace('-', '_') - return '%s-%s%s-%s-%s-%s.whl' % (self.name, version, buildver, - pyver, abi, arch) - - @property - def exists(self): - path = os.path.join(self.dirname, self.filename) - return os.path.isfile(path) - - @property - def tags(self): - for pyver in self.pyver: - for abi in self.abi: - for arch in self.arch: - yield pyver, abi, arch - - @cached_property - def metadata(self): - pathname = os.path.join(self.dirname, self.filename) - name_ver = '%s-%s' % (self.name, self.version) - info_dir = '%s.dist-info' % name_ver - wrapper = codecs.getreader('utf-8') - with ZipFile(pathname, 'r') as zf: - wheel_metadata = self.get_wheel_metadata(zf) - wv = wheel_metadata['Wheel-Version'].split('.', 1) - file_version = tuple([int(i) for i in wv]) - if file_version < (1, 1): - fn = 'METADATA' - else: - fn = METADATA_FILENAME - try: - metadata_filename = posixpath.join(info_dir, fn) - with zf.open(metadata_filename) as bf: - wf = wrapper(bf) - result = Metadata(fileobj=wf) - except KeyError: - raise ValueError('Invalid wheel, because %s is ' - 'missing' % fn) - return result - - def get_wheel_metadata(self, zf): - name_ver = '%s-%s' % (self.name, self.version) - info_dir = '%s.dist-info' % name_ver - metadata_filename = posixpath.join(info_dir, 'WHEEL') - with zf.open(metadata_filename) as bf: - wf = codecs.getreader('utf-8')(bf) - message = message_from_file(wf) - return dict(message) - - @cached_property - def info(self): - pathname = os.path.join(self.dirname, self.filename) - with ZipFile(pathname, 'r') as zf: - result = self.get_wheel_metadata(zf) - return result - - def process_shebang(self, data): - m = SHEBANG_RE.match(data) - if m: - end = m.end() - shebang, data_after_shebang = data[:end], data[end:] - # Preserve any arguments after the interpreter - if b'pythonw' in shebang.lower(): - shebang_python = SHEBANG_PYTHONW - else: - shebang_python = SHEBANG_PYTHON - m = SHEBANG_DETAIL_RE.match(shebang) - if m: - args = b' ' + m.groups()[-1] - else: - args = b'' - shebang = shebang_python + args - data = shebang + data_after_shebang - else: - cr = data.find(b'\r') - lf = data.find(b'\n') - if cr < 0 or cr > lf: - term = b'\n' - else: - if data[cr:cr + 2] == b'\r\n': - term = b'\r\n' - else: - term = b'\r' - data = SHEBANG_PYTHON + term + data - return data - - def get_hash(self, data, hash_kind=None): - if hash_kind is None: - hash_kind = self.hash_kind - try: - hasher = getattr(hashlib, hash_kind) - except AttributeError: - raise DistlibException('Unsupported hash algorithm: %r' % hash_kind) - result = hasher(data).digest() - result = base64.urlsafe_b64encode(result).rstrip(b'=').decode('ascii') - return hash_kind, result - - def write_record(self, records, record_path, base): - records = list(records) # make a copy for sorting - p = to_posix(os.path.relpath(record_path, base)) - records.append((p, '', '')) - records.sort() - with CSVWriter(record_path) as writer: - for row in records: - writer.writerow(row) - - def write_records(self, info, libdir, archive_paths): - records = [] - distinfo, info_dir = info - hasher = getattr(hashlib, self.hash_kind) - for ap, p in archive_paths: - with open(p, 'rb') as f: - data = f.read() - digest = '%s=%s' % self.get_hash(data) - size = os.path.getsize(p) - records.append((ap, digest, size)) - - p = os.path.join(distinfo, 'RECORD') - self.write_record(records, p, libdir) - ap = to_posix(os.path.join(info_dir, 'RECORD')) - archive_paths.append((ap, p)) - - def build_zip(self, pathname, archive_paths): - with ZipFile(pathname, 'w', zipfile.ZIP_DEFLATED) as zf: - for ap, p in archive_paths: - logger.debug('Wrote %s to %s in wheel', p, ap) - zf.write(p, ap) - - def build(self, paths, tags=None, wheel_version=None): - """ - Build a wheel from files in specified paths, and use any specified tags - when determining the name of the wheel. - """ - if tags is None: - tags = {} - - libkey = list(filter(lambda o: o in paths, ('purelib', 'platlib')))[0] - if libkey == 'platlib': - is_pure = 'false' - default_pyver = [IMPVER] - default_abi = [ABI] - default_arch = [ARCH] - else: - is_pure = 'true' - default_pyver = [PYVER] - default_abi = ['none'] - default_arch = ['any'] - - self.pyver = tags.get('pyver', default_pyver) - self.abi = tags.get('abi', default_abi) - self.arch = tags.get('arch', default_arch) - - libdir = paths[libkey] - - name_ver = '%s-%s' % (self.name, self.version) - data_dir = '%s.data' % name_ver - info_dir = '%s.dist-info' % name_ver - - archive_paths = [] - - # First, stuff which is not in site-packages - for key in ('data', 'headers', 'scripts'): - if key not in paths: - continue - path = paths[key] - if os.path.isdir(path): - for root, dirs, files in os.walk(path): - for fn in files: - p = fsdecode(os.path.join(root, fn)) - rp = os.path.relpath(p, path) - ap = to_posix(os.path.join(data_dir, key, rp)) - archive_paths.append((ap, p)) - if key == 'scripts' and not p.endswith('.exe'): - with open(p, 'rb') as f: - data = f.read() - data = self.process_shebang(data) - with open(p, 'wb') as f: - f.write(data) - - # Now, stuff which is in site-packages, other than the - # distinfo stuff. - path = libdir - distinfo = None - for root, dirs, files in os.walk(path): - if root == path: - # At the top level only, save distinfo for later - # and skip it for now - for i, dn in enumerate(dirs): - dn = fsdecode(dn) - if dn.endswith('.dist-info'): - distinfo = os.path.join(root, dn) - del dirs[i] - break - assert distinfo, '.dist-info directory expected, not found' - - for fn in files: - # comment out next suite to leave .pyc files in - if fsdecode(fn).endswith(('.pyc', '.pyo')): - continue - p = os.path.join(root, fn) - rp = to_posix(os.path.relpath(p, path)) - archive_paths.append((rp, p)) - - # Now distinfo. Assumed to be flat, i.e. os.listdir is enough. - files = os.listdir(distinfo) - for fn in files: - if fn not in ('RECORD', 'INSTALLER', 'SHARED', 'WHEEL'): - p = fsdecode(os.path.join(distinfo, fn)) - ap = to_posix(os.path.join(info_dir, fn)) - archive_paths.append((ap, p)) - - wheel_metadata = [ - 'Wheel-Version: %d.%d' % (wheel_version or self.wheel_version), - 'Generator: distlib %s' % __version__, - 'Root-Is-Purelib: %s' % is_pure, - ] - for pyver, abi, arch in self.tags: - wheel_metadata.append('Tag: %s-%s-%s' % (pyver, abi, arch)) - p = os.path.join(distinfo, 'WHEEL') - with open(p, 'w') as f: - f.write('\n'.join(wheel_metadata)) - ap = to_posix(os.path.join(info_dir, 'WHEEL')) - archive_paths.append((ap, p)) - - # Now, at last, RECORD. - # Paths in here are archive paths - nothing else makes sense. - self.write_records((distinfo, info_dir), libdir, archive_paths) - # Now, ready to build the zip file - pathname = os.path.join(self.dirname, self.filename) - self.build_zip(pathname, archive_paths) - return pathname - - def install(self, paths, maker, **kwargs): - """ - Install a wheel to the specified paths. If kwarg ``warner`` is - specified, it should be a callable, which will be called with two - tuples indicating the wheel version of this software and the wheel - version in the file, if there is a discrepancy in the versions. - This can be used to issue any warnings to raise any exceptions. - If kwarg ``lib_only`` is True, only the purelib/platlib files are - installed, and the headers, scripts, data and dist-info metadata are - not written. - - The return value is a :class:`InstalledDistribution` instance unless - ``options.lib_only`` is True, in which case the return value is ``None``. - """ - - dry_run = maker.dry_run - warner = kwargs.get('warner') - lib_only = kwargs.get('lib_only', False) - - pathname = os.path.join(self.dirname, self.filename) - name_ver = '%s-%s' % (self.name, self.version) - data_dir = '%s.data' % name_ver - info_dir = '%s.dist-info' % name_ver - - metadata_name = posixpath.join(info_dir, METADATA_FILENAME) - wheel_metadata_name = posixpath.join(info_dir, 'WHEEL') - record_name = posixpath.join(info_dir, 'RECORD') - - wrapper = codecs.getreader('utf-8') - - with ZipFile(pathname, 'r') as zf: - with zf.open(wheel_metadata_name) as bwf: - wf = wrapper(bwf) - message = message_from_file(wf) - wv = message['Wheel-Version'].split('.', 1) - file_version = tuple([int(i) for i in wv]) - if (file_version != self.wheel_version) and warner: - warner(self.wheel_version, file_version) - - if message['Root-Is-Purelib'] == 'true': - libdir = paths['purelib'] - else: - libdir = paths['platlib'] - - records = {} - with zf.open(record_name) as bf: - with CSVReader(stream=bf) as reader: - for row in reader: - p = row[0] - records[p] = row - - data_pfx = posixpath.join(data_dir, '') - info_pfx = posixpath.join(info_dir, '') - script_pfx = posixpath.join(data_dir, 'scripts', '') - - # make a new instance rather than a copy of maker's, - # as we mutate it - fileop = FileOperator(dry_run=dry_run) - fileop.record = True # so we can rollback if needed - - bc = not sys.dont_write_bytecode # Double negatives. Lovely! - - outfiles = [] # for RECORD writing - - # for script copying/shebang processing - workdir = tempfile.mkdtemp() - # set target dir later - # we default add_launchers to False, as the - # Python Launcher should be used instead - maker.source_dir = workdir - maker.target_dir = None - try: - for zinfo in zf.infolist(): - arcname = zinfo.filename - if isinstance(arcname, text_type): - u_arcname = arcname - else: - u_arcname = arcname.decode('utf-8') - # The signature file won't be in RECORD, - # and we don't currently don't do anything with it - if u_arcname.endswith('/RECORD.jws'): - continue - row = records[u_arcname] - if row[2] and str(zinfo.file_size) != row[2]: - raise DistlibException('size mismatch for ' - '%s' % u_arcname) - if row[1]: - kind, value = row[1].split('=', 1) - with zf.open(arcname) as bf: - data = bf.read() - _, digest = self.get_hash(data, kind) - if digest != value: - raise DistlibException('digest mismatch for ' - '%s' % arcname) - - if lib_only and u_arcname.startswith((info_pfx, data_pfx)): - logger.debug('lib_only: skipping %s', u_arcname) - continue - is_script = (u_arcname.startswith(script_pfx) - and not u_arcname.endswith('.exe')) - - if u_arcname.startswith(data_pfx): - _, where, rp = u_arcname.split('/', 2) - outfile = os.path.join(paths[where], convert_path(rp)) - else: - # meant for site-packages. - if u_arcname in (wheel_metadata_name, record_name): - continue - outfile = os.path.join(libdir, convert_path(u_arcname)) - if not is_script: - with zf.open(arcname) as bf: - fileop.copy_stream(bf, outfile) - outfiles.append(outfile) - # Double check the digest of the written file - if not dry_run and row[1]: - with open(outfile, 'rb') as bf: - data = bf.read() - _, newdigest = self.get_hash(data, kind) - if newdigest != digest: - raise DistlibException('digest mismatch ' - 'on write for ' - '%s' % outfile) - if bc and outfile.endswith('.py'): - try: - pyc = fileop.byte_compile(outfile) - outfiles.append(pyc) - except Exception: - # Don't give up if byte-compilation fails, - # but log it and perhaps warn the user - logger.warning('Byte-compilation failed', - exc_info=True) - else: - fn = os.path.basename(convert_path(arcname)) - workname = os.path.join(workdir, fn) - with zf.open(arcname) as bf: - fileop.copy_stream(bf, workname) - - dn, fn = os.path.split(outfile) - maker.target_dir = dn - filenames = maker.make(fn) - fileop.set_executable_mode(filenames) - outfiles.extend(filenames) - - if lib_only: - logger.debug('lib_only: returning None') - dist = None - else: - # Generate scripts - - # Try to get pydist.json so we can see if there are - # any commands to generate. If this fails (e.g. because - # of a legacy wheel), log a warning but don't give up. - commands = None - file_version = self.info['Wheel-Version'] - if file_version == '1.0': - # Use legacy info - ep = posixpath.join(info_dir, 'entry_points.txt') - try: - with zf.open(ep) as bwf: - epdata = read_exports(bwf) - commands = {} - for key in ('console', 'gui'): - k = '%s_scripts' % key - if k in epdata: - commands['wrap_%s' % key] = d = {} - for v in epdata[k].values(): - s = '%s:%s' % (v.prefix, v.suffix) - if v.flags: - s += ' %s' % v.flags - d[v.name] = s - except Exception: - logger.warning('Unable to read legacy script ' - 'metadata, so cannot generate ' - 'scripts') - else: - try: - with zf.open(metadata_name) as bwf: - wf = wrapper(bwf) - commands = json.load(wf).get('extensions') - if commands: - commands = commands.get('python.commands') - except Exception: - logger.warning('Unable to read JSON metadata, so ' - 'cannot generate scripts') - if commands: - console_scripts = commands.get('wrap_console', {}) - gui_scripts = commands.get('wrap_gui', {}) - if console_scripts or gui_scripts: - script_dir = paths.get('scripts', '') - if not os.path.isdir(script_dir): - raise ValueError('Valid script path not ' - 'specified') - maker.target_dir = script_dir - for k, v in console_scripts.items(): - script = '%s = %s' % (k, v) - filenames = maker.make(script) - fileop.set_executable_mode(filenames) - - if gui_scripts: - options = {'gui': True } - for k, v in gui_scripts.items(): - script = '%s = %s' % (k, v) - filenames = maker.make(script, options) - fileop.set_executable_mode(filenames) - - p = os.path.join(libdir, info_dir) - dist = InstalledDistribution(p) - - # Write SHARED - paths = dict(paths) # don't change passed in dict - del paths['purelib'] - del paths['platlib'] - paths['lib'] = libdir - p = dist.write_shared_locations(paths, dry_run) - if p: - outfiles.append(p) - - # Write RECORD - dist.write_installed_files(outfiles, paths['prefix'], - dry_run) - return dist - except Exception: # pragma: no cover - logger.exception('installation failed.') - fileop.rollback() - raise - finally: - shutil.rmtree(workdir) - - def _get_dylib_cache(self): - global cache - if cache is None: - # Use native string to avoid issues on 2.x: see Python #20140. - base = os.path.join(get_cache_base(), str('dylib-cache'), - sys.version[:3]) - cache = Cache(base) - return cache - - def _get_extensions(self): - pathname = os.path.join(self.dirname, self.filename) - name_ver = '%s-%s' % (self.name, self.version) - info_dir = '%s.dist-info' % name_ver - arcname = posixpath.join(info_dir, 'EXTENSIONS') - wrapper = codecs.getreader('utf-8') - result = [] - with ZipFile(pathname, 'r') as zf: - try: - with zf.open(arcname) as bf: - wf = wrapper(bf) - extensions = json.load(wf) - cache = self._get_dylib_cache() - prefix = cache.prefix_to_dir(pathname) - cache_base = os.path.join(cache.base, prefix) - if not os.path.isdir(cache_base): - os.makedirs(cache_base) - for name, relpath in extensions.items(): - dest = os.path.join(cache_base, convert_path(relpath)) - if not os.path.exists(dest): - extract = True - else: - file_time = os.stat(dest).st_mtime - file_time = datetime.datetime.fromtimestamp(file_time) - info = zf.getinfo(relpath) - wheel_time = datetime.datetime(*info.date_time) - extract = wheel_time > file_time - if extract: - zf.extract(relpath, cache_base) - result.append((name, dest)) - except KeyError: - pass - return result - - def is_compatible(self): - """ - Determine if a wheel is compatible with the running system. - """ - return is_compatible(self) - - def is_mountable(self): - """ - Determine if a wheel is asserted as mountable by its metadata. - """ - return True # for now - metadata details TBD - - def mount(self, append=False): - pathname = os.path.abspath(os.path.join(self.dirname, self.filename)) - if not self.is_compatible(): - msg = 'Wheel %s not compatible with this Python.' % pathname - raise DistlibException(msg) - if not self.is_mountable(): - msg = 'Wheel %s is marked as not mountable.' % pathname - raise DistlibException(msg) - if pathname in sys.path: - logger.debug('%s already in path', pathname) - else: - if append: - sys.path.append(pathname) - else: - sys.path.insert(0, pathname) - extensions = self._get_extensions() - if extensions: - if _hook not in sys.meta_path: - sys.meta_path.append(_hook) - _hook.add(pathname, extensions) - - def unmount(self): - pathname = os.path.abspath(os.path.join(self.dirname, self.filename)) - if pathname not in sys.path: - logger.debug('%s not in path', pathname) - else: - sys.path.remove(pathname) - if pathname in _hook.impure_wheels: - _hook.remove(pathname) - if not _hook.impure_wheels: - if _hook in sys.meta_path: - sys.meta_path.remove(_hook) - - def verify(self): - pathname = os.path.join(self.dirname, self.filename) - name_ver = '%s-%s' % (self.name, self.version) - data_dir = '%s.data' % name_ver - info_dir = '%s.dist-info' % name_ver - - metadata_name = posixpath.join(info_dir, METADATA_FILENAME) - wheel_metadata_name = posixpath.join(info_dir, 'WHEEL') - record_name = posixpath.join(info_dir, 'RECORD') - - wrapper = codecs.getreader('utf-8') - - with ZipFile(pathname, 'r') as zf: - with zf.open(wheel_metadata_name) as bwf: - wf = wrapper(bwf) - message = message_from_file(wf) - wv = message['Wheel-Version'].split('.', 1) - file_version = tuple([int(i) for i in wv]) - # TODO version verification - - records = {} - with zf.open(record_name) as bf: - with CSVReader(stream=bf) as reader: - for row in reader: - p = row[0] - records[p] = row - - for zinfo in zf.infolist(): - arcname = zinfo.filename - if isinstance(arcname, text_type): - u_arcname = arcname - else: - u_arcname = arcname.decode('utf-8') - if '..' in u_arcname: - raise DistlibException('invalid entry in ' - 'wheel: %r' % u_arcname) - - # The signature file won't be in RECORD, - # and we don't currently don't do anything with it - if u_arcname.endswith('/RECORD.jws'): - continue - row = records[u_arcname] - if row[2] and str(zinfo.file_size) != row[2]: - raise DistlibException('size mismatch for ' - '%s' % u_arcname) - if row[1]: - kind, value = row[1].split('=', 1) - with zf.open(arcname) as bf: - data = bf.read() - _, digest = self.get_hash(data, kind) - if digest != value: - raise DistlibException('digest mismatch for ' - '%s' % arcname) - - def update(self, modifier, dest_dir=None, **kwargs): - """ - Update the contents of a wheel in a generic way. The modifier should - be a callable which expects a dictionary argument: its keys are - archive-entry paths, and its values are absolute filesystem paths - where the contents the corresponding archive entries can be found. The - modifier is free to change the contents of the files pointed to, add - new entries and remove entries, before returning. This method will - extract the entire contents of the wheel to a temporary location, call - the modifier, and then use the passed (and possibly updated) - dictionary to write a new wheel. If ``dest_dir`` is specified, the new - wheel is written there -- otherwise, the original wheel is overwritten. - - The modifier should return True if it updated the wheel, else False. - This method returns the same value the modifier returns. - """ - - def get_version(path_map, info_dir): - version = path = None - key = '%s/%s' % (info_dir, METADATA_FILENAME) - if key not in path_map: - key = '%s/PKG-INFO' % info_dir - if key in path_map: - path = path_map[key] - version = Metadata(path=path).version - return version, path - - def update_version(version, path): - updated = None - try: - v = NormalizedVersion(version) - i = version.find('-') - if i < 0: - updated = '%s+1' % version - else: - parts = [int(s) for s in version[i + 1:].split('.')] - parts[-1] += 1 - updated = '%s+%s' % (version[:i], - '.'.join(str(i) for i in parts)) - except UnsupportedVersionError: - logger.debug('Cannot update non-compliant (PEP-440) ' - 'version %r', version) - if updated: - md = Metadata(path=path) - md.version = updated - legacy = not path.endswith(METADATA_FILENAME) - md.write(path=path, legacy=legacy) - logger.debug('Version updated from %r to %r', version, - updated) - - pathname = os.path.join(self.dirname, self.filename) - name_ver = '%s-%s' % (self.name, self.version) - info_dir = '%s.dist-info' % name_ver - record_name = posixpath.join(info_dir, 'RECORD') - with tempdir() as workdir: - with ZipFile(pathname, 'r') as zf: - path_map = {} - for zinfo in zf.infolist(): - arcname = zinfo.filename - if isinstance(arcname, text_type): - u_arcname = arcname - else: - u_arcname = arcname.decode('utf-8') - if u_arcname == record_name: - continue - if '..' in u_arcname: - raise DistlibException('invalid entry in ' - 'wheel: %r' % u_arcname) - zf.extract(zinfo, workdir) - path = os.path.join(workdir, convert_path(u_arcname)) - path_map[u_arcname] = path - - # Remember the version. - original_version, _ = get_version(path_map, info_dir) - # Files extracted. Call the modifier. - modified = modifier(path_map, **kwargs) - if modified: - # Something changed - need to build a new wheel. - current_version, path = get_version(path_map, info_dir) - if current_version and (current_version == original_version): - # Add or update local version to signify changes. - update_version(current_version, path) - # Decide where the new wheel goes. - if dest_dir is None: - fd, newpath = tempfile.mkstemp(suffix='.whl', - prefix='wheel-update-', - dir=workdir) - os.close(fd) - else: - if not os.path.isdir(dest_dir): - raise DistlibException('Not a directory: %r' % dest_dir) - newpath = os.path.join(dest_dir, self.filename) - archive_paths = list(path_map.items()) - distinfo = os.path.join(workdir, info_dir) - info = distinfo, info_dir - self.write_records(info, workdir, archive_paths) - self.build_zip(newpath, archive_paths) - if dest_dir is None: - shutil.copyfile(newpath, pathname) - return modified - -def compatible_tags(): - """ - Return (pyver, abi, arch) tuples compatible with this Python. - """ - versions = [VER_SUFFIX] - major = VER_SUFFIX[0] - for minor in range(sys.version_info[1] - 1, - 1, -1): - versions.append(''.join([major, str(minor)])) - - abis = [] - for suffix, _, _ in imp.get_suffixes(): - if suffix.startswith('.abi'): - abis.append(suffix.split('.', 2)[1]) - abis.sort() - if ABI != 'none': - abis.insert(0, ABI) - abis.append('none') - result = [] - - arches = [ARCH] - if sys.platform == 'darwin': - m = re.match('(\w+)_(\d+)_(\d+)_(\w+)$', ARCH) - if m: - name, major, minor, arch = m.groups() - minor = int(minor) - matches = [arch] - if arch in ('i386', 'ppc'): - matches.append('fat') - if arch in ('i386', 'ppc', 'x86_64'): - matches.append('fat3') - if arch in ('ppc64', 'x86_64'): - matches.append('fat64') - if arch in ('i386', 'x86_64'): - matches.append('intel') - if arch in ('i386', 'x86_64', 'intel', 'ppc', 'ppc64'): - matches.append('universal') - while minor >= 0: - for match in matches: - s = '%s_%s_%s_%s' % (name, major, minor, match) - if s != ARCH: # already there - arches.append(s) - minor -= 1 - - # Most specific - our Python version, ABI and arch - for abi in abis: - for arch in arches: - result.append((''.join((IMP_PREFIX, versions[0])), abi, arch)) - - # where no ABI / arch dependency, but IMP_PREFIX dependency - for i, version in enumerate(versions): - result.append((''.join((IMP_PREFIX, version)), 'none', 'any')) - if i == 0: - result.append((''.join((IMP_PREFIX, version[0])), 'none', 'any')) - - # no IMP_PREFIX, ABI or arch dependency - for i, version in enumerate(versions): - result.append((''.join(('py', version)), 'none', 'any')) - if i == 0: - result.append((''.join(('py', version[0])), 'none', 'any')) - return set(result) - - -COMPATIBLE_TAGS = compatible_tags() - -del compatible_tags - - -def is_compatible(wheel, tags=None): - if not isinstance(wheel, Wheel): - wheel = Wheel(wheel) # assume it's a filename - result = False - if tags is None: - tags = COMPATIBLE_TAGS - for ver, abi, arch in tags: - if ver in wheel.pyver and abi in wheel.abi and arch in wheel.arch: - result = True - break - return result diff --git a/env/lib/python3.4/site-packages/pip/_vendor/distro.py b/env/lib/python3.4/site-packages/pip/_vendor/distro.py deleted file mode 100644 index 9e7daad..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distro.py +++ /dev/null @@ -1,1081 +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 `_ for -more information. -""" - -import os -import re -import sys -import json -import shlex -import logging -import subprocess - - -if not sys.platform.startswith('linux'): - raise ImportError('Unsupported platform: {0}'.format(sys.platform)) - -_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 -} - -#: 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 "" 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 "" field of the distro release file, appended - with the value of the pretty version ("" and "" - 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 "" 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 - `_. - """ - 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 "" 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 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. - - 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._os_release_info = self._get_os_release_info() - self._lsb_release_info = self._get_lsb_release_info() \ - if include_lsb else {} - self._distro_release_info = self._get_distro_release_info() - - def __repr__(self): - """Return repr of all info - """ - return \ - "LinuxDistribution(" \ - "os_release_file={0!r}, " \ - "distro_release_file={1!r}, " \ - "_os_release_info={2!r}, " \ - "_lsb_release_info={3!r}, " \ - "_distro_release_info={4!r})".format( - self.os_release_file, - self.distro_release_file, - self._os_release_info, - self._lsb_release_info, - self._distro_release_info) - - 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, '') - - def _get_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 - - def _get_lsb_release_info(self): - """ - Get the information items from the lsb_release command output. - - Returns: - A dictionary containing all information items. - """ - cmd = 'lsb_release -a' - process = subprocess.Popen( - cmd, - shell=True, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE) - stdout, stderr = process.communicate() - stdout, stderr = stdout.decode('utf-8'), stderr.decode('utf-8') - code = process.returncode - if code == 0: - content = stdout.splitlines() - return self._parse_lsb_release_content(content) - elif code == 127: # Command not found - return {} - else: - if sys.version_info[:2] >= (3, 5): - raise subprocess.CalledProcessError(code, cmd, stdout, stderr) - elif sys.version_info[:2] >= (2, 7): - raise subprocess.CalledProcessError(code, cmd, stdout) - elif sys.version_info[:2] == (2, 6): - raise subprocess.CalledProcessError(code, cmd) - - @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: - line = line.decode('utf-8') if isinstance(line, bytes) else line - 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 - - def _get_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: - 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() - 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. - """ - if os.path.isfile(filepath): - 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()) - 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(): - import argparse - - 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) - if distribution_version: - logger.info('Version: %s', distribution_version) - distribution_codename = codename() - if distribution_codename: - logger.info('Codename: %s', distribution_codename) - - -if __name__ == '__main__': - main() diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py deleted file mode 100644 index 7427eb1..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py +++ /dev/null @@ -1,25 +0,0 @@ -""" -HTML parsing library based on the WHATWG "HTML5" -specification. 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: - -import html5lib -f = open("my_document.html") -tree = html5lib.parse(f) -""" - -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 -__version__ = "1.0b10" diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 55d12d83839dda62f0da0053c9aeede11c6ccdc1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 953 zcmZWn&2AGh5T5)rKhCBN62~5_oSH+ERstcRf&dBVfdUedD)wS|V<$DW*DKrGG<^!* z0`W?FMI3tJ0XQ+wZL)wOhXn|;h-T~8rv;(FKX%|cn(%yD&2Xr3{fs}0R4(I`x1kz+{ zcR>%q>_WPWb`L}!1OYJsk$@P&3X|@E!0i!;J@_yg@v{a1Ih~)qp#^td}?&D~1s&3{zJ3hDAF=rY&>Q)M)Bc8xmyl#rL#Jkrq8^Obx|2$EVC=tVI4AvS?5 z=@V)TnIDYJh6%eUqo8Tr9#2ScQsVwy@U$-fU^yYTIA@r&sy&{0tIHtSHgDAv>PmU+ zS2ZegwLoc1s~{cM{uYN2&(tk>UpKPasWVo?`t!>1Rb-zus@;_gb0mLJVzZ<}&+xbB zoa@Wl(Z>Q6*Xl;Pc>P>ALN7u;0*Np{xak~EkFw*Vx08ESm&Fnps|aJuGL%j-=9)1Q zZ#1|zLN%zXtp&M%GFM4#NVe7FYo2NlUF%wuuSqNNM_4T&vU07Fb-)--GYd;fD7Ac=U@kvG R=rs46`;Ae2n@J;S{Q{o36D0ru diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-34.pyc deleted file mode 100644 index be2c3e1b8fcff3daf8e5937803e6307e7d7ebe6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14460 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 KF#R{D5B_(trg72$ diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-34.pyc deleted file mode 100644 index 10c622d5062b13ef53e908fc548c47b31f28effc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48234 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_utils.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/_utils.cpython-34.pyc deleted file mode 100644 index 61889a5a13a8130a7e922fa2efb19de675aad1f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3623 zcmaJ@OK%*<5w4z@oqdax#MkQK3@F>t!W5|p4wT4}B14k%f@uL1plB^&Fx=@Shn$^R zbpikoeGK3k`aM;mG)}1SEo*c9wqORBb&5eBlVhuIMR5^h|ICb<3!Le z!V-lpg=GpW6jmv$QCO#)GIi!jI<$A1Rky+h?OT-o>4?+>=@jjksB?x!cS)Y5aE@N# z6bmF5NusaND~ohRFl+wXS=kc(N>D;D^^`I2GkS8?ZRc~rwoc<=CjF>CNL7|s z!svOVqcq9qhe^~;L+Qs+CRGsY&9=yEpQhn3mJde*iCHz12brH?k~c%y3x;v#%S=g` z&wnbj-88%x=|PZnccsebBE2o<7_hfn8|OsTXv+QtK$$@q%RJ!8u;qgJ$U=aD9zU%_LRPPLu?( z(ZSnYiKBgpZtqDLuVgk<2^%E6K8K9eJrClcER64m-YxI#pkDsv<<(xAuC95j+kskb z-@xB^^{`!-8Gde@k? zd@0rEba0(n_nx-sutYB{+Cz^YBrLwF;@L;^=vniKW6yG$^eA&_uS_qY9?}+xtiltl zFAuI=WImT@mH88qY#pI6^c;7^IG zlLUR4mrS5@hb4YbY88I`_l=FLKiC*VgDcy^C=RdeZOgv8{^CO>ndU!-Eveer&HC~8 z<7j)sA7)Xk*9RlD0tFv(L^!{bz71GVji-M%u5E#k+o=kX|D7<%aPN89@$ssd{tV3=kHi_V zCZ@+@Z%?Co4HKNIIN|YmR*+~HmM7GygOMdAJitLCgSHq#Z0o)Hv;2W(^1==u5~@Nt0uFJV$;iGSMp&eI&5a0)2_yY-+&` zEo7(G)}!QWa*%)cQL}_MjbLopyaN*1mj*d}TP*qt6ql14GSwc^l56rB91V^8Wm13S z0~XqE;st^_H`$7re?DgN)<(cR5@1_c=szcg*gh7-mM4wA3CdRS(&7YI-ppxS_utcg zuc-E#T{kmV?8e*))Q-;G{TKY-uBy`@suFj6k#dKhAnGj7FY>(db2%!qAg(Q^J6u(F zH~?B@yPVgy11*bpjN0HeSGhC$G>RSkBLCXB=edIdsoPdwo*0L+Xx0==&%N7gBfel=UdGt;6r$Jf7eEh+QwG$QVH{-O6XV>lZ6I`<; z!2Lru`Xlbxh9klaCS2l<{rDJd0&mw^T%JOdui-b~4Q&5Ecw>qAj@B7?{{*CIhT;Km z4tN{L;+mim1AG7?Bjk=jf|2eot`_rVbYy( zeffpr${3Cyr7LVDicCW+iSbHb_S0xAk9|22J#yMD2&>!NO}u!M$A-#Y%*zu6&oMdn zq^o{}dHWr%1-&62PN)ltovPS7iZdK4_DG|U1DM(%HJ?M_T%Q!pbsZfjPXGDRK|fwM zZ|3#x{aE&8l0D=Hbg6hpH)e^7Q%hd|sd=dv_+C6-KD)X;J3(0r;+U%y-jV#Y$Gf4I zswOLQBr;=e`3J?7ItQ9+aK|OpR4T>!Tye5AkTNGPe9s=6i9+ROfz#VuK{Vf~3swWz mp9k`nfcIs)DqPX9->=vR&K!6bge~fpYcE}DxQ%M#;{N~zG%_;) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/constants.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/constants.cpython-34.pyc deleted file mode 100644 index 0e403b9171fe2125a9999e23ca27c934dd658a2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74454 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/html5parser.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/__pycache__/html5parser.cpython-34.pyc deleted file mode 100644 index 324363dca2b5169de34d0005e338496a23579a89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106860 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 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_inputstream.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_inputstream.py deleted file mode 100644 index 7c5639f..0000000 --- a/env/lib/python3.4/site-packages/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\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 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"") - - def handleMeta(self): - if self.data.currentByte not in spaceCharactersBytes: - # if we have ") - - 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_tokenizer.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_tokenizer.py deleted file mode 100644 index 178f6e7..0000000 --- a/env/lib/python3.4/site-packages/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 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 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.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": "" 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": "" 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": "" 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.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": "" 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.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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__init__.py deleted file mode 100644 index a5ba4bf..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 1a9c2c1ab148e69190ce2c6ad56895f0d5a4c8ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 395 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 7 - -# 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py deleted file mode 100644 index 9e7541d..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py +++ /dev/null @@ -1,2945 +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"], "annotaion-xml"), - (namespaces["svg"], "foreignObject"), - (namespaces["svg"], "desc"), - (namespaces["svg"], "title") -]) - -mathmlTextIntegrationPointElements = frozenset([ - (namespaces["mathml"], "mi"), - (namespaces["mathml"], "mo"), - (namespaces["mathml"], "mn"), - (namespaces["mathml"], "ms"), - (namespaces["mathml"], "mtext") -]) - -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"]), - "style": frozenset(["scoped"]), - "img": frozenset(["ismap"]), - "audio": frozenset(["autoplay", "controls"]), - "video": frozenset(["autoplay", "controls"]), - "script": frozenset(["defer", "async"]), - "details": frozenset(["open"]), - "datagrid": frozenset(["multiple", "disabled"]), - "command": frozenset(["hidden", "disabled", "checked", "default"]), - "hr": frozenset(["noshade"]), - "menu": frozenset(["autosubmit"]), - "fieldset": frozenset(["disabled", "readonly"]), - "option": frozenset(["disabled", "readonly", "selected"]), - "optgroup": frozenset(["disabled", "readonly"]), - "button": frozenset(["disabled", "autofocus"]), - "input": frozenset(["disabled", "readonly", "required", "autofocus", "checked", "ismap"]), - "select": frozenset(["disabled", "readonly", "autofocus", "multiple"]), - "output": frozenset(["disabled", "readonly"]), -} - -# entitiesWindows1252 has to be _ordered_ and needs to have an index. It -# therefore can't be a frozenset. -entitiesWindows1252 = ( - 8364, # 0x80 0x20AC EURO SIGN - 65533, # 0x81 UNDEFINED - 8218, # 0x82 0x201A SINGLE LOW-9 QUOTATION MARK - 402, # 0x83 0x0192 LATIN SMALL LETTER F WITH HOOK - 8222, # 0x84 0x201E DOUBLE LOW-9 QUOTATION MARK - 8230, # 0x85 0x2026 HORIZONTAL ELLIPSIS - 8224, # 0x86 0x2020 DAGGER - 8225, # 0x87 0x2021 DOUBLE DAGGER - 710, # 0x88 0x02C6 MODIFIER LETTER CIRCUMFLEX ACCENT - 8240, # 0x89 0x2030 PER MILLE SIGN - 352, # 0x8A 0x0160 LATIN CAPITAL LETTER S WITH CARON - 8249, # 0x8B 0x2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK - 338, # 0x8C 0x0152 LATIN CAPITAL LIGATURE OE - 65533, # 0x8D UNDEFINED - 381, # 0x8E 0x017D LATIN CAPITAL LETTER Z WITH CARON - 65533, # 0x8F UNDEFINED - 65533, # 0x90 UNDEFINED - 8216, # 0x91 0x2018 LEFT SINGLE QUOTATION MARK - 8217, # 0x92 0x2019 RIGHT SINGLE QUOTATION MARK - 8220, # 0x93 0x201C LEFT DOUBLE QUOTATION MARK - 8221, # 0x94 0x201D RIGHT DOUBLE QUOTATION MARK - 8226, # 0x95 0x2022 BULLET - 8211, # 0x96 0x2013 EN DASH - 8212, # 0x97 0x2014 EM DASH - 732, # 0x98 0x02DC SMALL TILDE - 8482, # 0x99 0x2122 TRADE MARK SIGN - 353, # 0x9A 0x0161 LATIN SMALL LETTER S WITH CARON - 8250, # 0x9B 0x203A SINGLE RIGHT-POINTING ANGLE QUOTATION MARK - 339, # 0x9C 0x0153 LATIN SMALL LIGATURE OE - 65533, # 0x9D UNDEFINED - 382, # 0x9E 0x017E LATIN SMALL LETTER Z WITH CARON - 376 # 0x9F 0x0178 LATIN CAPITAL LETTER Y WITH DIAERESIS -) - -xmlEntities = frozenset(['lt;', 'gt;', 'amp;', 'apos;', 'quot;']) - -entities = { - "AElig": "\xc6", - "AElig;": "\xc6", - "AMP": "&", - "AMP;": "&", - "Aacute": "\xc1", - "Aacute;": "\xc1", - "Abreve;": "\u0102", - "Acirc": "\xc2", - "Acirc;": "\xc2", - "Acy;": "\u0410", - "Afr;": "\U0001d504", - "Agrave": "\xc0", - "Agrave;": "\xc0", - "Alpha;": "\u0391", - "Amacr;": "\u0100", - "And;": "\u2a53", - "Aogon;": "\u0104", - "Aopf;": "\U0001d538", - "ApplyFunction;": "\u2061", - "Aring": "\xc5", - "Aring;": "\xc5", - "Ascr;": "\U0001d49c", - "Assign;": "\u2254", - "Atilde": "\xc3", - "Atilde;": "\xc3", - "Auml": "\xc4", - "Auml;": "\xc4", - "Backslash;": "\u2216", - "Barv;": "\u2ae7", - "Barwed;": "\u2306", - "Bcy;": "\u0411", - "Because;": "\u2235", - "Bernoullis;": "\u212c", - "Beta;": "\u0392", - "Bfr;": "\U0001d505", - "Bopf;": "\U0001d539", - "Breve;": "\u02d8", - "Bscr;": "\u212c", - "Bumpeq;": "\u224e", - "CHcy;": "\u0427", - "COPY": "\xa9", - "COPY;": "\xa9", - "Cacute;": "\u0106", - "Cap;": "\u22d2", - "CapitalDifferentialD;": "\u2145", - "Cayleys;": "\u212d", - "Ccaron;": "\u010c", - "Ccedil": "\xc7", - "Ccedil;": "\xc7", - "Ccirc;": "\u0108", - "Cconint;": "\u2230", - "Cdot;": "\u010a", - "Cedilla;": "\xb8", - "CenterDot;": "\xb7", - "Cfr;": "\u212d", - "Chi;": "\u03a7", - "CircleDot;": "\u2299", - "CircleMinus;": "\u2296", - "CirclePlus;": "\u2295", - "CircleTimes;": "\u2297", - "ClockwiseContourIntegral;": "\u2232", - "CloseCurlyDoubleQuote;": "\u201d", - "CloseCurlyQuote;": "\u2019", - "Colon;": "\u2237", - "Colone;": "\u2a74", - "Congruent;": "\u2261", - "Conint;": "\u222f", - "ContourIntegral;": "\u222e", - "Copf;": "\u2102", - "Coproduct;": "\u2210", - "CounterClockwiseContourIntegral;": "\u2233", - "Cross;": "\u2a2f", - "Cscr;": "\U0001d49e", - "Cup;": "\u22d3", - "CupCap;": "\u224d", - "DD;": "\u2145", - "DDotrahd;": "\u2911", - "DJcy;": "\u0402", - "DScy;": "\u0405", - "DZcy;": "\u040f", - "Dagger;": "\u2021", - "Darr;": "\u21a1", - "Dashv;": "\u2ae4", - "Dcaron;": "\u010e", - "Dcy;": "\u0414", - "Del;": "\u2207", - "Delta;": "\u0394", - "Dfr;": "\U0001d507", - "DiacriticalAcute;": "\xb4", - "DiacriticalDot;": "\u02d9", - "DiacriticalDoubleAcute;": "\u02dd", - "DiacriticalGrave;": "`", - "DiacriticalTilde;": "\u02dc", - "Diamond;": "\u22c4", - "DifferentialD;": "\u2146", - "Dopf;": "\U0001d53b", - "Dot;": "\xa8", - "DotDot;": "\u20dc", - "DotEqual;": "\u2250", - "DoubleContourIntegral;": "\u222f", - "DoubleDot;": "\xa8", - "DoubleDownArrow;": "\u21d3", - "DoubleLeftArrow;": "\u21d0", - "DoubleLeftRightArrow;": "\u21d4", - "DoubleLeftTee;": "\u2ae4", - "DoubleLongLeftArrow;": "\u27f8", - "DoubleLongLeftRightArrow;": "\u27fa", - "DoubleLongRightArrow;": "\u27f9", - "DoubleRightArrow;": "\u21d2", - "DoubleRightTee;": "\u22a8", - "DoubleUpArrow;": "\u21d1", - "DoubleUpDownArrow;": "\u21d5", - "DoubleVerticalBar;": "\u2225", - "DownArrow;": "\u2193", - "DownArrowBar;": "\u2913", - "DownArrowUpArrow;": "\u21f5", - "DownBreve;": "\u0311", - "DownLeftRightVector;": "\u2950", - "DownLeftTeeVector;": "\u295e", - "DownLeftVector;": "\u21bd", - "DownLeftVectorBar;": "\u2956", - "DownRightTeeVector;": "\u295f", - "DownRightVector;": "\u21c1", - "DownRightVectorBar;": "\u2957", - "DownTee;": "\u22a4", - "DownTeeArrow;": "\u21a7", - "Downarrow;": "\u21d3", - "Dscr;": "\U0001d49f", - "Dstrok;": "\u0110", - "ENG;": "\u014a", - "ETH": "\xd0", - "ETH;": "\xd0", - "Eacute": "\xc9", - "Eacute;": "\xc9", - "Ecaron;": "\u011a", - "Ecirc": "\xca", - "Ecirc;": "\xca", - "Ecy;": "\u042d", - "Edot;": "\u0116", - "Efr;": "\U0001d508", - "Egrave": "\xc8", - "Egrave;": "\xc8", - "Element;": "\u2208", - "Emacr;": "\u0112", - "EmptySmallSquare;": "\u25fb", - "EmptyVerySmallSquare;": "\u25ab", - "Eogon;": "\u0118", - "Eopf;": "\U0001d53c", - "Epsilon;": "\u0395", - "Equal;": "\u2a75", - "EqualTilde;": "\u2242", - "Equilibrium;": "\u21cc", - "Escr;": "\u2130", - "Esim;": "\u2a73", - "Eta;": "\u0397", - "Euml": "\xcb", - "Euml;": "\xcb", - "Exists;": "\u2203", - "ExponentialE;": "\u2147", - "Fcy;": "\u0424", - "Ffr;": "\U0001d509", - "FilledSmallSquare;": "\u25fc", - "FilledVerySmallSquare;": "\u25aa", - "Fopf;": "\U0001d53d", - "ForAll;": "\u2200", - "Fouriertrf;": "\u2131", - "Fscr;": "\u2131", - "GJcy;": "\u0403", - "GT": ">", - "GT;": ">", - "Gamma;": "\u0393", - "Gammad;": "\u03dc", - "Gbreve;": "\u011e", - "Gcedil;": "\u0122", - "Gcirc;": "\u011c", - "Gcy;": "\u0413", - "Gdot;": "\u0120", - "Gfr;": "\U0001d50a", - "Gg;": "\u22d9", - "Gopf;": "\U0001d53e", - "GreaterEqual;": "\u2265", - "GreaterEqualLess;": "\u22db", - "GreaterFullEqual;": "\u2267", - "GreaterGreater;": "\u2aa2", - "GreaterLess;": "\u2277", - "GreaterSlantEqual;": "\u2a7e", - "GreaterTilde;": "\u2273", - "Gscr;": "\U0001d4a2", - "Gt;": "\u226b", - "HARDcy;": "\u042a", - "Hacek;": "\u02c7", - "Hat;": "^", - "Hcirc;": "\u0124", - "Hfr;": "\u210c", - "HilbertSpace;": "\u210b", - "Hopf;": "\u210d", - "HorizontalLine;": "\u2500", - "Hscr;": "\u210b", - "Hstrok;": "\u0126", - "HumpDownHump;": "\u224e", - "HumpEqual;": "\u224f", - "IEcy;": "\u0415", - "IJlig;": "\u0132", - "IOcy;": "\u0401", - "Iacute": "\xcd", - "Iacute;": "\xcd", - "Icirc": "\xce", - "Icirc;": "\xce", - "Icy;": "\u0418", - "Idot;": "\u0130", - "Ifr;": "\u2111", - "Igrave": "\xcc", - "Igrave;": "\xcc", - "Im;": "\u2111", - "Imacr;": "\u012a", - "ImaginaryI;": "\u2148", - "Implies;": "\u21d2", - "Int;": "\u222c", - "Integral;": "\u222b", - "Intersection;": "\u22c2", - "InvisibleComma;": "\u2063", - "InvisibleTimes;": "\u2062", - "Iogon;": "\u012e", - "Iopf;": "\U0001d540", - "Iota;": "\u0399", - "Iscr;": "\u2110", - "Itilde;": "\u0128", - "Iukcy;": "\u0406", - "Iuml": "\xcf", - "Iuml;": "\xcf", - "Jcirc;": "\u0134", - "Jcy;": "\u0419", - "Jfr;": "\U0001d50d", - "Jopf;": "\U0001d541", - "Jscr;": "\U0001d4a5", - "Jsercy;": "\u0408", - "Jukcy;": "\u0404", - "KHcy;": "\u0425", - "KJcy;": "\u040c", - "Kappa;": "\u039a", - "Kcedil;": "\u0136", - "Kcy;": "\u041a", - "Kfr;": "\U0001d50e", - "Kopf;": "\U0001d542", - "Kscr;": "\U0001d4a6", - "LJcy;": "\u0409", - "LT": "<", - "LT;": "<", - "Lacute;": "\u0139", - "Lambda;": "\u039b", - "Lang;": "\u27ea", - "Laplacetrf;": "\u2112", - "Larr;": "\u219e", - "Lcaron;": "\u013d", - "Lcedil;": "\u013b", - "Lcy;": "\u041b", - "LeftAngleBracket;": "\u27e8", - "LeftArrow;": "\u2190", - "LeftArrowBar;": "\u21e4", - "LeftArrowRightArrow;": "\u21c6", - "LeftCeiling;": "\u2308", - "LeftDoubleBracket;": "\u27e6", - "LeftDownTeeVector;": "\u2961", - "LeftDownVector;": "\u21c3", - "LeftDownVectorBar;": "\u2959", - "LeftFloor;": "\u230a", - "LeftRightArrow;": "\u2194", - "LeftRightVector;": "\u294e", - "LeftTee;": "\u22a3", - "LeftTeeArrow;": "\u21a4", - "LeftTeeVector;": "\u295a", - "LeftTriangle;": "\u22b2", - "LeftTriangleBar;": "\u29cf", - "LeftTriangleEqual;": "\u22b4", - "LeftUpDownVector;": "\u2951", - "LeftUpTeeVector;": "\u2960", - "LeftUpVector;": "\u21bf", - "LeftUpVectorBar;": "\u2958", - "LeftVector;": "\u21bc", - "LeftVectorBar;": "\u2952", - "Leftarrow;": "\u21d0", - "Leftrightarrow;": "\u21d4", - "LessEqualGreater;": "\u22da", - "LessFullEqual;": "\u2266", - "LessGreater;": "\u2276", - "LessLess;": "\u2aa1", - "LessSlantEqual;": "\u2a7d", - "LessTilde;": "\u2272", - "Lfr;": "\U0001d50f", - "Ll;": "\u22d8", - "Lleftarrow;": "\u21da", - "Lmidot;": "\u013f", - "LongLeftArrow;": "\u27f5", - "LongLeftRightArrow;": "\u27f7", - "LongRightArrow;": "\u27f6", - "Longleftarrow;": "\u27f8", - "Longleftrightarrow;": "\u27fa", - "Longrightarrow;": "\u27f9", - "Lopf;": "\U0001d543", - "LowerLeftArrow;": "\u2199", - "LowerRightArrow;": "\u2198", - "Lscr;": "\u2112", - "Lsh;": "\u21b0", - "Lstrok;": "\u0141", - "Lt;": "\u226a", - "Map;": "\u2905", - "Mcy;": "\u041c", - "MediumSpace;": "\u205f", - "Mellintrf;": "\u2133", - "Mfr;": "\U0001d510", - "MinusPlus;": "\u2213", - "Mopf;": "\U0001d544", - "Mscr;": "\u2133", - "Mu;": "\u039c", - "NJcy;": "\u040a", - "Nacute;": "\u0143", - "Ncaron;": "\u0147", - "Ncedil;": "\u0145", - "Ncy;": "\u041d", - "NegativeMediumSpace;": "\u200b", - "NegativeThickSpace;": "\u200b", - "NegativeThinSpace;": "\u200b", - "NegativeVeryThinSpace;": "\u200b", - "NestedGreaterGreater;": "\u226b", - "NestedLessLess;": "\u226a", - "NewLine;": "\n", - "Nfr;": "\U0001d511", - "NoBreak;": "\u2060", - "NonBreakingSpace;": "\xa0", - "Nopf;": "\u2115", - "Not;": "\u2aec", - "NotCongruent;": "\u2262", - "NotCupCap;": "\u226d", - "NotDoubleVerticalBar;": "\u2226", - "NotElement;": "\u2209", - "NotEqual;": "\u2260", - "NotEqualTilde;": "\u2242\u0338", - "NotExists;": "\u2204", - "NotGreater;": "\u226f", - "NotGreaterEqual;": "\u2271", - "NotGreaterFullEqual;": "\u2267\u0338", - "NotGreaterGreater;": "\u226b\u0338", - "NotGreaterLess;": "\u2279", - "NotGreaterSlantEqual;": "\u2a7e\u0338", - "NotGreaterTilde;": "\u2275", - "NotHumpDownHump;": "\u224e\u0338", - "NotHumpEqual;": "\u224f\u0338", - "NotLeftTriangle;": "\u22ea", - "NotLeftTriangleBar;": "\u29cf\u0338", - "NotLeftTriangleEqual;": "\u22ec", - "NotLess;": "\u226e", - "NotLessEqual;": "\u2270", - "NotLessGreater;": "\u2278", - "NotLessLess;": "\u226a\u0338", - "NotLessSlantEqual;": "\u2a7d\u0338", - "NotLessTilde;": "\u2274", - "NotNestedGreaterGreater;": "\u2aa2\u0338", - "NotNestedLessLess;": "\u2aa1\u0338", - "NotPrecedes;": "\u2280", - "NotPrecedesEqual;": "\u2aaf\u0338", - "NotPrecedesSlantEqual;": "\u22e0", - "NotReverseElement;": "\u220c", - "NotRightTriangle;": "\u22eb", - "NotRightTriangleBar;": "\u29d0\u0338", - "NotRightTriangleEqual;": "\u22ed", - "NotSquareSubset;": "\u228f\u0338", - "NotSquareSubsetEqual;": "\u22e2", - "NotSquareSuperset;": "\u2290\u0338", - "NotSquareSupersetEqual;": "\u22e3", - "NotSubset;": "\u2282\u20d2", - "NotSubsetEqual;": "\u2288", - "NotSucceeds;": "\u2281", - "NotSucceedsEqual;": "\u2ab0\u0338", - "NotSucceedsSlantEqual;": "\u22e1", - "NotSucceedsTilde;": "\u227f\u0338", - "NotSuperset;": "\u2283\u20d2", - "NotSupersetEqual;": "\u2289", - "NotTilde;": "\u2241", - "NotTildeEqual;": "\u2244", - "NotTildeFullEqual;": "\u2247", - "NotTildeTilde;": "\u2249", - "NotVerticalBar;": "\u2224", - "Nscr;": "\U0001d4a9", - "Ntilde": "\xd1", - "Ntilde;": "\xd1", - "Nu;": "\u039d", - "OElig;": "\u0152", - "Oacute": "\xd3", - "Oacute;": "\xd3", - "Ocirc": "\xd4", - "Ocirc;": "\xd4", - "Ocy;": "\u041e", - "Odblac;": "\u0150", - "Ofr;": "\U0001d512", - "Ograve": "\xd2", - "Ograve;": "\xd2", - "Omacr;": "\u014c", - "Omega;": "\u03a9", - "Omicron;": "\u039f", - "Oopf;": "\U0001d546", - "OpenCurlyDoubleQuote;": "\u201c", - "OpenCurlyQuote;": "\u2018", - "Or;": "\u2a54", - "Oscr;": "\U0001d4aa", - "Oslash": "\xd8", - "Oslash;": "\xd8", - "Otilde": "\xd5", - "Otilde;": "\xd5", - "Otimes;": "\u2a37", - "Ouml": "\xd6", - "Ouml;": "\xd6", - "OverBar;": "\u203e", - "OverBrace;": "\u23de", - "OverBracket;": "\u23b4", - "OverParenthesis;": "\u23dc", - "PartialD;": "\u2202", - "Pcy;": "\u041f", - "Pfr;": "\U0001d513", - "Phi;": "\u03a6", - "Pi;": "\u03a0", - "PlusMinus;": "\xb1", - "Poincareplane;": "\u210c", - "Popf;": "\u2119", - "Pr;": "\u2abb", - "Precedes;": "\u227a", - "PrecedesEqual;": "\u2aaf", - "PrecedesSlantEqual;": "\u227c", - "PrecedesTilde;": "\u227e", - "Prime;": "\u2033", - "Product;": "\u220f", - "Proportion;": "\u2237", - "Proportional;": "\u221d", - "Pscr;": "\U0001d4ab", - "Psi;": "\u03a8", - "QUOT": "\"", - "QUOT;": "\"", - "Qfr;": "\U0001d514", - "Qopf;": "\u211a", - "Qscr;": "\U0001d4ac", - "RBarr;": "\u2910", - "REG": "\xae", - "REG;": "\xae", - "Racute;": "\u0154", - "Rang;": "\u27eb", - "Rarr;": "\u21a0", - "Rarrtl;": "\u2916", - "Rcaron;": "\u0158", - "Rcedil;": "\u0156", - "Rcy;": "\u0420", - "Re;": "\u211c", - "ReverseElement;": "\u220b", - "ReverseEquilibrium;": "\u21cb", - "ReverseUpEquilibrium;": "\u296f", - "Rfr;": "\u211c", - "Rho;": "\u03a1", - "RightAngleBracket;": "\u27e9", - "RightArrow;": "\u2192", - "RightArrowBar;": "\u21e5", - "RightArrowLeftArrow;": "\u21c4", - "RightCeiling;": "\u2309", - "RightDoubleBracket;": "\u27e7", - "RightDownTeeVector;": "\u295d", - "RightDownVector;": "\u21c2", - "RightDownVectorBar;": "\u2955", - "RightFloor;": "\u230b", - "RightTee;": "\u22a2", - "RightTeeArrow;": "\u21a6", - "RightTeeVector;": "\u295b", - "RightTriangle;": "\u22b3", - "RightTriangleBar;": "\u29d0", - "RightTriangleEqual;": "\u22b5", - "RightUpDownVector;": "\u294f", - "RightUpTeeVector;": "\u295c", - "RightUpVector;": "\u21be", - "RightUpVectorBar;": "\u2954", - "RightVector;": "\u21c0", - "RightVectorBar;": "\u2953", - "Rightarrow;": "\u21d2", - "Ropf;": "\u211d", - "RoundImplies;": "\u2970", - "Rrightarrow;": "\u21db", - "Rscr;": "\u211b", - "Rsh;": "\u21b1", - "RuleDelayed;": "\u29f4", - "SHCHcy;": "\u0429", - "SHcy;": "\u0428", - "SOFTcy;": "\u042c", - "Sacute;": "\u015a", - "Sc;": "\u2abc", - "Scaron;": "\u0160", - "Scedil;": "\u015e", - "Scirc;": "\u015c", - "Scy;": "\u0421", - "Sfr;": "\U0001d516", - "ShortDownArrow;": "\u2193", - "ShortLeftArrow;": "\u2190", - "ShortRightArrow;": "\u2192", - "ShortUpArrow;": "\u2191", - "Sigma;": "\u03a3", - "SmallCircle;": "\u2218", - "Sopf;": "\U0001d54a", - "Sqrt;": "\u221a", - "Square;": "\u25a1", - "SquareIntersection;": "\u2293", - "SquareSubset;": "\u228f", - "SquareSubsetEqual;": "\u2291", - "SquareSuperset;": "\u2290", - "SquareSupersetEqual;": "\u2292", - "SquareUnion;": "\u2294", - "Sscr;": "\U0001d4ae", - "Star;": "\u22c6", - "Sub;": "\u22d0", - "Subset;": "\u22d0", - "SubsetEqual;": "\u2286", - "Succeeds;": "\u227b", - "SucceedsEqual;": "\u2ab0", - "SucceedsSlantEqual;": "\u227d", - "SucceedsTilde;": "\u227f", - "SuchThat;": "\u220b", - "Sum;": "\u2211", - "Sup;": "\u22d1", - "Superset;": "\u2283", - "SupersetEqual;": "\u2287", - "Supset;": "\u22d1", - "THORN": "\xde", - "THORN;": "\xde", - "TRADE;": "\u2122", - "TSHcy;": "\u040b", - "TScy;": "\u0426", - "Tab;": "\t", - "Tau;": "\u03a4", - "Tcaron;": "\u0164", - "Tcedil;": "\u0162", - "Tcy;": "\u0422", - "Tfr;": "\U0001d517", - "Therefore;": "\u2234", - "Theta;": "\u0398", - "ThickSpace;": "\u205f\u200a", - "ThinSpace;": "\u2009", - "Tilde;": "\u223c", - "TildeEqual;": "\u2243", - "TildeFullEqual;": "\u2245", - "TildeTilde;": "\u2248", - "Topf;": "\U0001d54b", - "TripleDot;": "\u20db", - "Tscr;": "\U0001d4af", - "Tstrok;": "\u0166", - "Uacute": "\xda", - "Uacute;": "\xda", - "Uarr;": "\u219f", - "Uarrocir;": "\u2949", - "Ubrcy;": "\u040e", - "Ubreve;": "\u016c", - "Ucirc": "\xdb", - "Ucirc;": "\xdb", - "Ucy;": "\u0423", - "Udblac;": "\u0170", - "Ufr;": "\U0001d518", - "Ugrave": "\xd9", - "Ugrave;": "\xd9", - "Umacr;": "\u016a", - "UnderBar;": "_", - "UnderBrace;": "\u23df", - "UnderBracket;": "\u23b5", - "UnderParenthesis;": "\u23dd", - "Union;": "\u22c3", - "UnionPlus;": "\u228e", - "Uogon;": "\u0172", - "Uopf;": "\U0001d54c", - "UpArrow;": "\u2191", - "UpArrowBar;": "\u2912", - "UpArrowDownArrow;": "\u21c5", - "UpDownArrow;": "\u2195", - "UpEquilibrium;": "\u296e", - "UpTee;": "\u22a5", - "UpTeeArrow;": "\u21a5", - "Uparrow;": "\u21d1", - "Updownarrow;": "\u21d5", - "UpperLeftArrow;": "\u2196", - "UpperRightArrow;": "\u2197", - "Upsi;": "\u03d2", - "Upsilon;": "\u03a5", - "Uring;": "\u016e", - "Uscr;": "\U0001d4b0", - "Utilde;": "\u0168", - "Uuml": "\xdc", - "Uuml;": "\xdc", - "VDash;": "\u22ab", - "Vbar;": "\u2aeb", - "Vcy;": "\u0412", - "Vdash;": "\u22a9", - "Vdashl;": "\u2ae6", - "Vee;": "\u22c1", - "Verbar;": "\u2016", - "Vert;": "\u2016", - "VerticalBar;": "\u2223", - "VerticalLine;": "|", - "VerticalSeparator;": "\u2758", - "VerticalTilde;": "\u2240", - "VeryThinSpace;": "\u200a", - "Vfr;": "\U0001d519", - "Vopf;": "\U0001d54d", - "Vscr;": "\U0001d4b1", - "Vvdash;": "\u22aa", - "Wcirc;": "\u0174", - "Wedge;": "\u22c0", - "Wfr;": "\U0001d51a", - "Wopf;": "\U0001d54e", - "Wscr;": "\U0001d4b2", - "Xfr;": "\U0001d51b", - "Xi;": "\u039e", - "Xopf;": "\U0001d54f", - "Xscr;": "\U0001d4b3", - "YAcy;": "\u042f", - "YIcy;": "\u0407", - "YUcy;": "\u042e", - "Yacute": "\xdd", - "Yacute;": "\xdd", - "Ycirc;": "\u0176", - "Ycy;": "\u042b", - "Yfr;": "\U0001d51c", - "Yopf;": "\U0001d550", - "Yscr;": "\U0001d4b4", - "Yuml;": "\u0178", - "ZHcy;": "\u0416", - "Zacute;": "\u0179", - "Zcaron;": "\u017d", - "Zcy;": "\u0417", - "Zdot;": "\u017b", - "ZeroWidthSpace;": "\u200b", - "Zeta;": "\u0396", - "Zfr;": "\u2128", - "Zopf;": "\u2124", - "Zscr;": "\U0001d4b5", - "aacute": "\xe1", - "aacute;": "\xe1", - "abreve;": "\u0103", - "ac;": "\u223e", - "acE;": "\u223e\u0333", - "acd;": "\u223f", - "acirc": "\xe2", - "acirc;": "\xe2", - "acute": "\xb4", - "acute;": "\xb4", - "acy;": "\u0430", - "aelig": "\xe6", - "aelig;": "\xe6", - "af;": "\u2061", - "afr;": "\U0001d51e", - "agrave": "\xe0", - "agrave;": "\xe0", - "alefsym;": "\u2135", - "aleph;": "\u2135", - "alpha;": "\u03b1", - "amacr;": "\u0101", - "amalg;": "\u2a3f", - "amp": "&", - "amp;": "&", - "and;": "\u2227", - "andand;": "\u2a55", - "andd;": "\u2a5c", - "andslope;": "\u2a58", - "andv;": "\u2a5a", - "ang;": "\u2220", - "ange;": "\u29a4", - "angle;": "\u2220", - "angmsd;": "\u2221", - "angmsdaa;": "\u29a8", - "angmsdab;": "\u29a9", - "angmsdac;": "\u29aa", - "angmsdad;": "\u29ab", - "angmsdae;": "\u29ac", - "angmsdaf;": "\u29ad", - "angmsdag;": "\u29ae", - "angmsdah;": "\u29af", - "angrt;": "\u221f", - "angrtvb;": "\u22be", - "angrtvbd;": "\u299d", - "angsph;": "\u2222", - "angst;": "\xc5", - "angzarr;": "\u237c", - "aogon;": "\u0105", - "aopf;": "\U0001d552", - "ap;": "\u2248", - "apE;": "\u2a70", - "apacir;": "\u2a6f", - "ape;": "\u224a", - "apid;": "\u224b", - "apos;": "'", - "approx;": "\u2248", - "approxeq;": "\u224a", - "aring": "\xe5", - "aring;": "\xe5", - "ascr;": "\U0001d4b6", - "ast;": "*", - "asymp;": "\u2248", - "asympeq;": "\u224d", - "atilde": "\xe3", - "atilde;": "\xe3", - "auml": "\xe4", - "auml;": "\xe4", - "awconint;": "\u2233", - "awint;": "\u2a11", - "bNot;": "\u2aed", - "backcong;": "\u224c", - "backepsilon;": "\u03f6", - "backprime;": "\u2035", - "backsim;": "\u223d", - "backsimeq;": "\u22cd", - "barvee;": "\u22bd", - "barwed;": "\u2305", - "barwedge;": "\u2305", - "bbrk;": "\u23b5", - "bbrktbrk;": "\u23b6", - "bcong;": "\u224c", - "bcy;": "\u0431", - "bdquo;": "\u201e", - "becaus;": "\u2235", - "because;": "\u2235", - "bemptyv;": "\u29b0", - "bepsi;": "\u03f6", - "bernou;": "\u212c", - "beta;": "\u03b2", - "beth;": "\u2136", - "between;": "\u226c", - "bfr;": "\U0001d51f", - "bigcap;": "\u22c2", - "bigcirc;": "\u25ef", - "bigcup;": "\u22c3", - "bigodot;": "\u2a00", - "bigoplus;": "\u2a01", - "bigotimes;": "\u2a02", - "bigsqcup;": "\u2a06", - "bigstar;": "\u2605", - "bigtriangledown;": "\u25bd", - "bigtriangleup;": "\u25b3", - "biguplus;": "\u2a04", - "bigvee;": "\u22c1", - "bigwedge;": "\u22c0", - "bkarow;": "\u290d", - "blacklozenge;": "\u29eb", - "blacksquare;": "\u25aa", - "blacktriangle;": "\u25b4", - "blacktriangledown;": "\u25be", - "blacktriangleleft;": "\u25c2", - "blacktriangleright;": "\u25b8", - "blank;": "\u2423", - "blk12;": "\u2592", - "blk14;": "\u2591", - "blk34;": "\u2593", - "block;": "\u2588", - "bne;": "=\u20e5", - "bnequiv;": "\u2261\u20e5", - "bnot;": "\u2310", - "bopf;": "\U0001d553", - "bot;": "\u22a5", - "bottom;": "\u22a5", - "bowtie;": "\u22c8", - "boxDL;": "\u2557", - "boxDR;": "\u2554", - "boxDl;": "\u2556", - "boxDr;": "\u2553", - "boxH;": "\u2550", - "boxHD;": "\u2566", - "boxHU;": "\u2569", - "boxHd;": "\u2564", - "boxHu;": "\u2567", - "boxUL;": "\u255d", - "boxUR;": "\u255a", - "boxUl;": "\u255c", - "boxUr;": "\u2559", - "boxV;": "\u2551", - "boxVH;": "\u256c", - "boxVL;": "\u2563", - "boxVR;": "\u2560", - "boxVh;": "\u256b", - "boxVl;": "\u2562", - "boxVr;": "\u255f", - "boxbox;": "\u29c9", - "boxdL;": "\u2555", - "boxdR;": "\u2552", - "boxdl;": "\u2510", - "boxdr;": "\u250c", - "boxh;": "\u2500", - "boxhD;": "\u2565", - "boxhU;": "\u2568", - "boxhd;": "\u252c", - "boxhu;": "\u2534", - "boxminus;": "\u229f", - "boxplus;": "\u229e", - "boxtimes;": "\u22a0", - "boxuL;": "\u255b", - "boxuR;": "\u2558", - "boxul;": "\u2518", - "boxur;": "\u2514", - "boxv;": "\u2502", - "boxvH;": "\u256a", - "boxvL;": "\u2561", - "boxvR;": "\u255e", - "boxvh;": "\u253c", - "boxvl;": "\u2524", - "boxvr;": "\u251c", - "bprime;": "\u2035", - "breve;": "\u02d8", - "brvbar": "\xa6", - "brvbar;": "\xa6", - "bscr;": "\U0001d4b7", - "bsemi;": "\u204f", - "bsim;": "\u223d", - "bsime;": "\u22cd", - "bsol;": "\\", - "bsolb;": "\u29c5", - "bsolhsub;": "\u27c8", - "bull;": "\u2022", - "bullet;": "\u2022", - "bump;": "\u224e", - "bumpE;": "\u2aae", - "bumpe;": "\u224f", - "bumpeq;": "\u224f", - "cacute;": "\u0107", - "cap;": "\u2229", - "capand;": "\u2a44", - "capbrcup;": "\u2a49", - "capcap;": "\u2a4b", - "capcup;": "\u2a47", - "capdot;": "\u2a40", - "caps;": "\u2229\ufe00", - "caret;": "\u2041", - "caron;": "\u02c7", - "ccaps;": "\u2a4d", - "ccaron;": "\u010d", - "ccedil": "\xe7", - "ccedil;": "\xe7", - "ccirc;": "\u0109", - "ccups;": "\u2a4c", - "ccupssm;": "\u2a50", - "cdot;": "\u010b", - "cedil": "\xb8", - "cedil;": "\xb8", - "cemptyv;": "\u29b2", - "cent": "\xa2", - "cent;": "\xa2", - "centerdot;": "\xb7", - "cfr;": "\U0001d520", - "chcy;": "\u0447", - "check;": "\u2713", - "checkmark;": "\u2713", - "chi;": "\u03c7", - "cir;": "\u25cb", - "cirE;": "\u29c3", - "circ;": "\u02c6", - "circeq;": "\u2257", - "circlearrowleft;": "\u21ba", - "circlearrowright;": "\u21bb", - "circledR;": "\xae", - "circledS;": "\u24c8", - "circledast;": "\u229b", - "circledcirc;": "\u229a", - "circleddash;": "\u229d", - "cire;": "\u2257", - "cirfnint;": "\u2a10", - "cirmid;": "\u2aef", - "cirscir;": "\u29c2", - "clubs;": "\u2663", - "clubsuit;": "\u2663", - "colon;": ":", - "colone;": "\u2254", - "coloneq;": "\u2254", - "comma;": ",", - "commat;": "@", - "comp;": "\u2201", - "compfn;": "\u2218", - "complement;": "\u2201", - "complexes;": "\u2102", - "cong;": "\u2245", - "congdot;": "\u2a6d", - "conint;": "\u222e", - "copf;": "\U0001d554", - "coprod;": "\u2210", - "copy": "\xa9", - "copy;": "\xa9", - "copysr;": "\u2117", - "crarr;": "\u21b5", - "cross;": "\u2717", - "cscr;": "\U0001d4b8", - "csub;": "\u2acf", - "csube;": "\u2ad1", - "csup;": "\u2ad0", - "csupe;": "\u2ad2", - "ctdot;": "\u22ef", - "cudarrl;": "\u2938", - "cudarrr;": "\u2935", - "cuepr;": "\u22de", - "cuesc;": "\u22df", - "cularr;": "\u21b6", - "cularrp;": "\u293d", - "cup;": "\u222a", - "cupbrcap;": "\u2a48", - "cupcap;": "\u2a46", - "cupcup;": "\u2a4a", - "cupdot;": "\u228d", - "cupor;": "\u2a45", - "cups;": "\u222a\ufe00", - "curarr;": "\u21b7", - "curarrm;": "\u293c", - "curlyeqprec;": "\u22de", - "curlyeqsucc;": "\u22df", - "curlyvee;": "\u22ce", - "curlywedge;": "\u22cf", - "curren": "\xa4", - "curren;": "\xa4", - "curvearrowleft;": "\u21b6", - "curvearrowright;": "\u21b7", - "cuvee;": "\u22ce", - "cuwed;": "\u22cf", - "cwconint;": "\u2232", - "cwint;": "\u2231", - "cylcty;": "\u232d", - "dArr;": "\u21d3", - "dHar;": "\u2965", - "dagger;": "\u2020", - "daleth;": "\u2138", - "darr;": "\u2193", - "dash;": "\u2010", - "dashv;": "\u22a3", - "dbkarow;": "\u290f", - "dblac;": "\u02dd", - "dcaron;": "\u010f", - "dcy;": "\u0434", - "dd;": "\u2146", - "ddagger;": "\u2021", - "ddarr;": "\u21ca", - "ddotseq;": "\u2a77", - "deg": "\xb0", - "deg;": "\xb0", - "delta;": "\u03b4", - "demptyv;": "\u29b1", - "dfisht;": "\u297f", - "dfr;": "\U0001d521", - "dharl;": "\u21c3", - "dharr;": "\u21c2", - "diam;": "\u22c4", - "diamond;": "\u22c4", - "diamondsuit;": "\u2666", - "diams;": "\u2666", - "die;": "\xa8", - "digamma;": "\u03dd", - "disin;": "\u22f2", - "div;": "\xf7", - "divide": "\xf7", - "divide;": "\xf7", - "divideontimes;": "\u22c7", - "divonx;": "\u22c7", - "djcy;": "\u0452", - "dlcorn;": "\u231e", - "dlcrop;": "\u230d", - "dollar;": "$", - "dopf;": "\U0001d555", - "dot;": "\u02d9", - "doteq;": "\u2250", - "doteqdot;": "\u2251", - "dotminus;": "\u2238", - "dotplus;": "\u2214", - "dotsquare;": "\u22a1", - "doublebarwedge;": "\u2306", - "downarrow;": "\u2193", - "downdownarrows;": "\u21ca", - "downharpoonleft;": "\u21c3", - "downharpoonright;": "\u21c2", - "drbkarow;": "\u2910", - "drcorn;": "\u231f", - "drcrop;": "\u230c", - "dscr;": "\U0001d4b9", - "dscy;": "\u0455", - "dsol;": "\u29f6", - "dstrok;": "\u0111", - "dtdot;": "\u22f1", - "dtri;": "\u25bf", - "dtrif;": "\u25be", - "duarr;": "\u21f5", - "duhar;": "\u296f", - "dwangle;": "\u29a6", - "dzcy;": "\u045f", - "dzigrarr;": "\u27ff", - "eDDot;": "\u2a77", - "eDot;": "\u2251", - "eacute": "\xe9", - "eacute;": "\xe9", - "easter;": "\u2a6e", - "ecaron;": "\u011b", - "ecir;": "\u2256", - "ecirc": "\xea", - "ecirc;": "\xea", - "ecolon;": "\u2255", - "ecy;": "\u044d", - "edot;": "\u0117", - "ee;": "\u2147", - "efDot;": "\u2252", - "efr;": "\U0001d522", - "eg;": "\u2a9a", - "egrave": "\xe8", - "egrave;": "\xe8", - "egs;": "\u2a96", - "egsdot;": "\u2a98", - "el;": "\u2a99", - "elinters;": "\u23e7", - "ell;": "\u2113", - "els;": "\u2a95", - "elsdot;": "\u2a97", - "emacr;": "\u0113", - "empty;": "\u2205", - "emptyset;": "\u2205", - "emptyv;": "\u2205", - "emsp13;": "\u2004", - "emsp14;": "\u2005", - "emsp;": "\u2003", - "eng;": "\u014b", - "ensp;": "\u2002", - "eogon;": "\u0119", - "eopf;": "\U0001d556", - "epar;": "\u22d5", - "eparsl;": "\u29e3", - "eplus;": "\u2a71", - "epsi;": "\u03b5", - "epsilon;": "\u03b5", - "epsiv;": "\u03f5", - "eqcirc;": "\u2256", - "eqcolon;": "\u2255", - "eqsim;": "\u2242", - "eqslantgtr;": "\u2a96", - "eqslantless;": "\u2a95", - "equals;": "=", - "equest;": "\u225f", - "equiv;": "\u2261", - "equivDD;": "\u2a78", - "eqvparsl;": "\u29e5", - "erDot;": "\u2253", - "erarr;": "\u2971", - "escr;": "\u212f", - "esdot;": "\u2250", - "esim;": "\u2242", - "eta;": "\u03b7", - "eth": "\xf0", - "eth;": "\xf0", - "euml": "\xeb", - "euml;": "\xeb", - "euro;": "\u20ac", - "excl;": "!", - "exist;": "\u2203", - "expectation;": "\u2130", - "exponentiale;": "\u2147", - "fallingdotseq;": "\u2252", - "fcy;": "\u0444", - "female;": "\u2640", - "ffilig;": "\ufb03", - "fflig;": "\ufb00", - "ffllig;": "\ufb04", - "ffr;": "\U0001d523", - "filig;": "\ufb01", - "fjlig;": "fj", - "flat;": "\u266d", - "fllig;": "\ufb02", - "fltns;": "\u25b1", - "fnof;": "\u0192", - "fopf;": "\U0001d557", - "forall;": "\u2200", - "fork;": "\u22d4", - "forkv;": "\u2ad9", - "fpartint;": "\u2a0d", - "frac12": "\xbd", - "frac12;": "\xbd", - "frac13;": "\u2153", - "frac14": "\xbc", - "frac14;": "\xbc", - "frac15;": "\u2155", - "frac16;": "\u2159", - "frac18;": "\u215b", - "frac23;": "\u2154", - "frac25;": "\u2156", - "frac34": "\xbe", - "frac34;": "\xbe", - "frac35;": "\u2157", - "frac38;": "\u215c", - "frac45;": "\u2158", - "frac56;": "\u215a", - "frac58;": "\u215d", - "frac78;": "\u215e", - "frasl;": "\u2044", - "frown;": "\u2322", - "fscr;": "\U0001d4bb", - "gE;": "\u2267", - "gEl;": "\u2a8c", - "gacute;": "\u01f5", - "gamma;": "\u03b3", - "gammad;": "\u03dd", - "gap;": "\u2a86", - "gbreve;": "\u011f", - "gcirc;": "\u011d", - "gcy;": "\u0433", - "gdot;": "\u0121", - "ge;": "\u2265", - "gel;": "\u22db", - "geq;": "\u2265", - "geqq;": "\u2267", - "geqslant;": "\u2a7e", - "ges;": "\u2a7e", - "gescc;": "\u2aa9", - "gesdot;": "\u2a80", - "gesdoto;": "\u2a82", - "gesdotol;": "\u2a84", - "gesl;": "\u22db\ufe00", - "gesles;": "\u2a94", - "gfr;": "\U0001d524", - "gg;": "\u226b", - "ggg;": "\u22d9", - "gimel;": "\u2137", - "gjcy;": "\u0453", - "gl;": "\u2277", - "glE;": "\u2a92", - "gla;": "\u2aa5", - "glj;": "\u2aa4", - "gnE;": "\u2269", - "gnap;": "\u2a8a", - "gnapprox;": "\u2a8a", - "gne;": "\u2a88", - "gneq;": "\u2a88", - "gneqq;": "\u2269", - "gnsim;": "\u22e7", - "gopf;": "\U0001d558", - "grave;": "`", - "gscr;": "\u210a", - "gsim;": "\u2273", - "gsime;": "\u2a8e", - "gsiml;": "\u2a90", - "gt": ">", - "gt;": ">", - "gtcc;": "\u2aa7", - "gtcir;": "\u2a7a", - "gtdot;": "\u22d7", - "gtlPar;": "\u2995", - "gtquest;": "\u2a7c", - "gtrapprox;": "\u2a86", - "gtrarr;": "\u2978", - "gtrdot;": "\u22d7", - "gtreqless;": "\u22db", - "gtreqqless;": "\u2a8c", - "gtrless;": "\u2277", - "gtrsim;": "\u2273", - "gvertneqq;": "\u2269\ufe00", - "gvnE;": "\u2269\ufe00", - "hArr;": "\u21d4", - "hairsp;": "\u200a", - "half;": "\xbd", - "hamilt;": "\u210b", - "hardcy;": "\u044a", - "harr;": "\u2194", - "harrcir;": "\u2948", - "harrw;": "\u21ad", - "hbar;": "\u210f", - "hcirc;": "\u0125", - "hearts;": "\u2665", - "heartsuit;": "\u2665", - "hellip;": "\u2026", - "hercon;": "\u22b9", - "hfr;": "\U0001d525", - "hksearow;": "\u2925", - "hkswarow;": "\u2926", - "hoarr;": "\u21ff", - "homtht;": "\u223b", - "hookleftarrow;": "\u21a9", - "hookrightarrow;": "\u21aa", - "hopf;": "\U0001d559", - "horbar;": "\u2015", - "hscr;": "\U0001d4bd", - "hslash;": "\u210f", - "hstrok;": "\u0127", - "hybull;": "\u2043", - "hyphen;": "\u2010", - "iacute": "\xed", - "iacute;": "\xed", - "ic;": "\u2063", - "icirc": "\xee", - "icirc;": "\xee", - "icy;": "\u0438", - "iecy;": "\u0435", - "iexcl": "\xa1", - "iexcl;": "\xa1", - "iff;": "\u21d4", - "ifr;": "\U0001d526", - "igrave": "\xec", - "igrave;": "\xec", - "ii;": "\u2148", - "iiiint;": "\u2a0c", - "iiint;": "\u222d", - "iinfin;": "\u29dc", - "iiota;": "\u2129", - "ijlig;": "\u0133", - "imacr;": "\u012b", - "image;": "\u2111", - "imagline;": "\u2110", - "imagpart;": "\u2111", - "imath;": "\u0131", - "imof;": "\u22b7", - "imped;": "\u01b5", - "in;": "\u2208", - "incare;": "\u2105", - "infin;": "\u221e", - "infintie;": "\u29dd", - "inodot;": "\u0131", - "int;": "\u222b", - "intcal;": "\u22ba", - "integers;": "\u2124", - "intercal;": "\u22ba", - "intlarhk;": "\u2a17", - "intprod;": "\u2a3c", - "iocy;": "\u0451", - "iogon;": "\u012f", - "iopf;": "\U0001d55a", - "iota;": "\u03b9", - "iprod;": "\u2a3c", - "iquest": "\xbf", - "iquest;": "\xbf", - "iscr;": "\U0001d4be", - "isin;": "\u2208", - "isinE;": "\u22f9", - "isindot;": "\u22f5", - "isins;": "\u22f4", - "isinsv;": "\u22f3", - "isinv;": "\u2208", - "it;": "\u2062", - "itilde;": "\u0129", - "iukcy;": "\u0456", - "iuml": "\xef", - "iuml;": "\xef", - "jcirc;": "\u0135", - "jcy;": "\u0439", - "jfr;": "\U0001d527", - "jmath;": "\u0237", - "jopf;": "\U0001d55b", - "jscr;": "\U0001d4bf", - "jsercy;": "\u0458", - "jukcy;": "\u0454", - "kappa;": "\u03ba", - "kappav;": "\u03f0", - "kcedil;": "\u0137", - "kcy;": "\u043a", - "kfr;": "\U0001d528", - "kgreen;": "\u0138", - "khcy;": "\u0445", - "kjcy;": "\u045c", - "kopf;": "\U0001d55c", - "kscr;": "\U0001d4c0", - "lAarr;": "\u21da", - "lArr;": "\u21d0", - "lAtail;": "\u291b", - "lBarr;": "\u290e", - "lE;": "\u2266", - "lEg;": "\u2a8b", - "lHar;": "\u2962", - "lacute;": "\u013a", - "laemptyv;": "\u29b4", - "lagran;": "\u2112", - "lambda;": "\u03bb", - "lang;": "\u27e8", - "langd;": "\u2991", - "langle;": "\u27e8", - "lap;": "\u2a85", - "laquo": "\xab", - "laquo;": "\xab", - "larr;": "\u2190", - "larrb;": "\u21e4", - "larrbfs;": "\u291f", - "larrfs;": "\u291d", - "larrhk;": "\u21a9", - "larrlp;": "\u21ab", - "larrpl;": "\u2939", - "larrsim;": "\u2973", - "larrtl;": "\u21a2", - "lat;": "\u2aab", - "latail;": "\u2919", - "late;": "\u2aad", - "lates;": "\u2aad\ufe00", - "lbarr;": "\u290c", - "lbbrk;": "\u2772", - "lbrace;": "{", - "lbrack;": "[", - "lbrke;": "\u298b", - "lbrksld;": "\u298f", - "lbrkslu;": "\u298d", - "lcaron;": "\u013e", - "lcedil;": "\u013c", - "lceil;": "\u2308", - "lcub;": "{", - "lcy;": "\u043b", - "ldca;": "\u2936", - "ldquo;": "\u201c", - "ldquor;": "\u201e", - "ldrdhar;": "\u2967", - "ldrushar;": "\u294b", - "ldsh;": "\u21b2", - "le;": "\u2264", - "leftarrow;": "\u2190", - "leftarrowtail;": "\u21a2", - "leftharpoondown;": "\u21bd", - "leftharpoonup;": "\u21bc", - "leftleftarrows;": "\u21c7", - "leftrightarrow;": "\u2194", - "leftrightarrows;": "\u21c6", - "leftrightharpoons;": "\u21cb", - "leftrightsquigarrow;": "\u21ad", - "leftthreetimes;": "\u22cb", - "leg;": "\u22da", - "leq;": "\u2264", - "leqq;": "\u2266", - "leqslant;": "\u2a7d", - "les;": "\u2a7d", - "lescc;": "\u2aa8", - "lesdot;": "\u2a7f", - "lesdoto;": "\u2a81", - "lesdotor;": "\u2a83", - "lesg;": "\u22da\ufe00", - "lesges;": "\u2a93", - "lessapprox;": "\u2a85", - "lessdot;": "\u22d6", - "lesseqgtr;": "\u22da", - "lesseqqgtr;": "\u2a8b", - "lessgtr;": "\u2276", - "lesssim;": "\u2272", - "lfisht;": "\u297c", - "lfloor;": "\u230a", - "lfr;": "\U0001d529", - "lg;": "\u2276", - "lgE;": "\u2a91", - "lhard;": "\u21bd", - "lharu;": "\u21bc", - "lharul;": "\u296a", - "lhblk;": "\u2584", - "ljcy;": "\u0459", - "ll;": "\u226a", - "llarr;": "\u21c7", - "llcorner;": "\u231e", - "llhard;": "\u296b", - "lltri;": "\u25fa", - "lmidot;": "\u0140", - "lmoust;": "\u23b0", - "lmoustache;": "\u23b0", - "lnE;": "\u2268", - "lnap;": "\u2a89", - "lnapprox;": "\u2a89", - "lne;": "\u2a87", - "lneq;": "\u2a87", - "lneqq;": "\u2268", - "lnsim;": "\u22e6", - "loang;": "\u27ec", - "loarr;": "\u21fd", - "lobrk;": "\u27e6", - "longleftarrow;": "\u27f5", - "longleftrightarrow;": "\u27f7", - "longmapsto;": "\u27fc", - "longrightarrow;": "\u27f6", - "looparrowleft;": "\u21ab", - "looparrowright;": "\u21ac", - "lopar;": "\u2985", - "lopf;": "\U0001d55d", - "loplus;": "\u2a2d", - "lotimes;": "\u2a34", - "lowast;": "\u2217", - "lowbar;": "_", - "loz;": "\u25ca", - "lozenge;": "\u25ca", - "lozf;": "\u29eb", - "lpar;": "(", - "lparlt;": "\u2993", - "lrarr;": "\u21c6", - "lrcorner;": "\u231f", - "lrhar;": "\u21cb", - "lrhard;": "\u296d", - "lrm;": "\u200e", - "lrtri;": "\u22bf", - "lsaquo;": "\u2039", - "lscr;": "\U0001d4c1", - "lsh;": "\u21b0", - "lsim;": "\u2272", - "lsime;": "\u2a8d", - "lsimg;": "\u2a8f", - "lsqb;": "[", - "lsquo;": "\u2018", - "lsquor;": "\u201a", - "lstrok;": "\u0142", - "lt": "<", - "lt;": "<", - "ltcc;": "\u2aa6", - "ltcir;": "\u2a79", - "ltdot;": "\u22d6", - "lthree;": "\u22cb", - "ltimes;": "\u22c9", - "ltlarr;": "\u2976", - "ltquest;": "\u2a7b", - "ltrPar;": "\u2996", - "ltri;": "\u25c3", - "ltrie;": "\u22b4", - "ltrif;": "\u25c2", - "lurdshar;": "\u294a", - "luruhar;": "\u2966", - "lvertneqq;": "\u2268\ufe00", - "lvnE;": "\u2268\ufe00", - "mDDot;": "\u223a", - "macr": "\xaf", - "macr;": "\xaf", - "male;": "\u2642", - "malt;": "\u2720", - "maltese;": "\u2720", - "map;": "\u21a6", - "mapsto;": "\u21a6", - "mapstodown;": "\u21a7", - "mapstoleft;": "\u21a4", - "mapstoup;": "\u21a5", - "marker;": "\u25ae", - "mcomma;": "\u2a29", - "mcy;": "\u043c", - "mdash;": "\u2014", - "measuredangle;": "\u2221", - "mfr;": "\U0001d52a", - "mho;": "\u2127", - "micro": "\xb5", - "micro;": "\xb5", - "mid;": "\u2223", - "midast;": "*", - "midcir;": "\u2af0", - "middot": "\xb7", - "middot;": "\xb7", - "minus;": "\u2212", - "minusb;": "\u229f", - "minusd;": "\u2238", - "minusdu;": "\u2a2a", - "mlcp;": "\u2adb", - "mldr;": "\u2026", - "mnplus;": "\u2213", - "models;": "\u22a7", - "mopf;": "\U0001d55e", - "mp;": "\u2213", - "mscr;": "\U0001d4c2", - "mstpos;": "\u223e", - "mu;": "\u03bc", - "multimap;": "\u22b8", - "mumap;": "\u22b8", - "nGg;": "\u22d9\u0338", - "nGt;": "\u226b\u20d2", - "nGtv;": "\u226b\u0338", - "nLeftarrow;": "\u21cd", - "nLeftrightarrow;": "\u21ce", - "nLl;": "\u22d8\u0338", - "nLt;": "\u226a\u20d2", - "nLtv;": "\u226a\u0338", - "nRightarrow;": "\u21cf", - "nVDash;": "\u22af", - "nVdash;": "\u22ae", - "nabla;": "\u2207", - "nacute;": "\u0144", - "nang;": "\u2220\u20d2", - "nap;": "\u2249", - "napE;": "\u2a70\u0338", - "napid;": "\u224b\u0338", - "napos;": "\u0149", - "napprox;": "\u2249", - "natur;": "\u266e", - "natural;": "\u266e", - "naturals;": "\u2115", - "nbsp": "\xa0", - "nbsp;": "\xa0", - "nbump;": "\u224e\u0338", - "nbumpe;": "\u224f\u0338", - "ncap;": "\u2a43", - "ncaron;": "\u0148", - "ncedil;": "\u0146", - "ncong;": "\u2247", - "ncongdot;": "\u2a6d\u0338", - "ncup;": "\u2a42", - "ncy;": "\u043d", - "ndash;": "\u2013", - "ne;": "\u2260", - "neArr;": "\u21d7", - "nearhk;": "\u2924", - "nearr;": "\u2197", - "nearrow;": "\u2197", - "nedot;": "\u2250\u0338", - "nequiv;": "\u2262", - "nesear;": "\u2928", - "nesim;": "\u2242\u0338", - "nexist;": "\u2204", - "nexists;": "\u2204", - "nfr;": "\U0001d52b", - "ngE;": "\u2267\u0338", - "nge;": "\u2271", - "ngeq;": "\u2271", - "ngeqq;": "\u2267\u0338", - "ngeqslant;": "\u2a7e\u0338", - "nges;": "\u2a7e\u0338", - "ngsim;": "\u2275", - "ngt;": "\u226f", - "ngtr;": "\u226f", - "nhArr;": "\u21ce", - "nharr;": "\u21ae", - "nhpar;": "\u2af2", - "ni;": "\u220b", - "nis;": "\u22fc", - "nisd;": "\u22fa", - "niv;": "\u220b", - "njcy;": "\u045a", - "nlArr;": "\u21cd", - "nlE;": "\u2266\u0338", - "nlarr;": "\u219a", - "nldr;": "\u2025", - "nle;": "\u2270", - "nleftarrow;": "\u219a", - "nleftrightarrow;": "\u21ae", - "nleq;": "\u2270", - "nleqq;": "\u2266\u0338", - "nleqslant;": "\u2a7d\u0338", - "nles;": "\u2a7d\u0338", - "nless;": "\u226e", - "nlsim;": "\u2274", - "nlt;": "\u226e", - "nltri;": "\u22ea", - "nltrie;": "\u22ec", - "nmid;": "\u2224", - "nopf;": "\U0001d55f", - "not": "\xac", - "not;": "\xac", - "notin;": "\u2209", - "notinE;": "\u22f9\u0338", - "notindot;": "\u22f5\u0338", - "notinva;": "\u2209", - "notinvb;": "\u22f7", - "notinvc;": "\u22f6", - "notni;": "\u220c", - "notniva;": "\u220c", - "notnivb;": "\u22fe", - "notnivc;": "\u22fd", - "npar;": "\u2226", - "nparallel;": "\u2226", - "nparsl;": "\u2afd\u20e5", - "npart;": "\u2202\u0338", - "npolint;": "\u2a14", - "npr;": "\u2280", - "nprcue;": "\u22e0", - "npre;": "\u2aaf\u0338", - "nprec;": "\u2280", - "npreceq;": "\u2aaf\u0338", - "nrArr;": "\u21cf", - "nrarr;": "\u219b", - "nrarrc;": "\u2933\u0338", - "nrarrw;": "\u219d\u0338", - "nrightarrow;": "\u219b", - "nrtri;": "\u22eb", - "nrtrie;": "\u22ed", - "nsc;": "\u2281", - "nsccue;": "\u22e1", - "nsce;": "\u2ab0\u0338", - "nscr;": "\U0001d4c3", - "nshortmid;": "\u2224", - "nshortparallel;": "\u2226", - "nsim;": "\u2241", - "nsime;": "\u2244", - "nsimeq;": "\u2244", - "nsmid;": "\u2224", - "nspar;": "\u2226", - "nsqsube;": "\u22e2", - "nsqsupe;": "\u22e3", - "nsub;": "\u2284", - "nsubE;": "\u2ac5\u0338", - "nsube;": "\u2288", - "nsubset;": "\u2282\u20d2", - "nsubseteq;": "\u2288", - "nsubseteqq;": "\u2ac5\u0338", - "nsucc;": "\u2281", - "nsucceq;": "\u2ab0\u0338", - "nsup;": "\u2285", - "nsupE;": "\u2ac6\u0338", - "nsupe;": "\u2289", - "nsupset;": "\u2283\u20d2", - "nsupseteq;": "\u2289", - "nsupseteqq;": "\u2ac6\u0338", - "ntgl;": "\u2279", - "ntilde": "\xf1", - "ntilde;": "\xf1", - "ntlg;": "\u2278", - "ntriangleleft;": "\u22ea", - "ntrianglelefteq;": "\u22ec", - "ntriangleright;": "\u22eb", - "ntrianglerighteq;": "\u22ed", - "nu;": "\u03bd", - "num;": "#", - "numero;": "\u2116", - "numsp;": "\u2007", - "nvDash;": "\u22ad", - "nvHarr;": "\u2904", - "nvap;": "\u224d\u20d2", - "nvdash;": "\u22ac", - "nvge;": "\u2265\u20d2", - "nvgt;": ">\u20d2", - "nvinfin;": "\u29de", - "nvlArr;": "\u2902", - "nvle;": "\u2264\u20d2", - "nvlt;": "<\u20d2", - "nvltrie;": "\u22b4\u20d2", - "nvrArr;": "\u2903", - "nvrtrie;": "\u22b5\u20d2", - "nvsim;": "\u223c\u20d2", - "nwArr;": "\u21d6", - "nwarhk;": "\u2923", - "nwarr;": "\u2196", - "nwarrow;": "\u2196", - "nwnear;": "\u2927", - "oS;": "\u24c8", - "oacute": "\xf3", - "oacute;": "\xf3", - "oast;": "\u229b", - "ocir;": "\u229a", - "ocirc": "\xf4", - "ocirc;": "\xf4", - "ocy;": "\u043e", - "odash;": "\u229d", - "odblac;": "\u0151", - "odiv;": "\u2a38", - "odot;": "\u2299", - "odsold;": "\u29bc", - "oelig;": "\u0153", - "ofcir;": "\u29bf", - "ofr;": "\U0001d52c", - "ogon;": "\u02db", - "ograve": "\xf2", - "ograve;": "\xf2", - "ogt;": "\u29c1", - "ohbar;": "\u29b5", - "ohm;": "\u03a9", - "oint;": "\u222e", - "olarr;": "\u21ba", - "olcir;": "\u29be", - "olcross;": "\u29bb", - "oline;": "\u203e", - "olt;": "\u29c0", - "omacr;": "\u014d", - "omega;": "\u03c9", - "omicron;": "\u03bf", - "omid;": "\u29b6", - "ominus;": "\u2296", - "oopf;": "\U0001d560", - "opar;": "\u29b7", - "operp;": "\u29b9", - "oplus;": "\u2295", - "or;": "\u2228", - "orarr;": "\u21bb", - "ord;": "\u2a5d", - "order;": "\u2134", - "orderof;": "\u2134", - "ordf": "\xaa", - "ordf;": "\xaa", - "ordm": "\xba", - "ordm;": "\xba", - "origof;": "\u22b6", - "oror;": "\u2a56", - "orslope;": "\u2a57", - "orv;": "\u2a5b", - "oscr;": "\u2134", - "oslash": "\xf8", - "oslash;": "\xf8", - "osol;": "\u2298", - "otilde": "\xf5", - "otilde;": "\xf5", - "otimes;": "\u2297", - "otimesas;": "\u2a36", - "ouml": "\xf6", - "ouml;": "\xf6", - "ovbar;": "\u233d", - "par;": "\u2225", - "para": "\xb6", - "para;": "\xb6", - "parallel;": "\u2225", - "parsim;": "\u2af3", - "parsl;": "\u2afd", - "part;": "\u2202", - "pcy;": "\u043f", - "percnt;": "%", - "period;": ".", - "permil;": "\u2030", - "perp;": "\u22a5", - "pertenk;": "\u2031", - "pfr;": "\U0001d52d", - "phi;": "\u03c6", - "phiv;": "\u03d5", - "phmmat;": "\u2133", - "phone;": "\u260e", - "pi;": "\u03c0", - "pitchfork;": "\u22d4", - "piv;": "\u03d6", - "planck;": "\u210f", - "planckh;": "\u210e", - "plankv;": "\u210f", - "plus;": "+", - "plusacir;": "\u2a23", - "plusb;": "\u229e", - "pluscir;": "\u2a22", - "plusdo;": "\u2214", - "plusdu;": "\u2a25", - "pluse;": "\u2a72", - "plusmn": "\xb1", - "plusmn;": "\xb1", - "plussim;": "\u2a26", - "plustwo;": "\u2a27", - "pm;": "\xb1", - "pointint;": "\u2a15", - "popf;": "\U0001d561", - "pound": "\xa3", - "pound;": "\xa3", - "pr;": "\u227a", - "prE;": "\u2ab3", - "prap;": "\u2ab7", - "prcue;": "\u227c", - "pre;": "\u2aaf", - "prec;": "\u227a", - "precapprox;": "\u2ab7", - "preccurlyeq;": "\u227c", - "preceq;": "\u2aaf", - "precnapprox;": "\u2ab9", - "precneqq;": "\u2ab5", - "precnsim;": "\u22e8", - "precsim;": "\u227e", - "prime;": "\u2032", - "primes;": "\u2119", - "prnE;": "\u2ab5", - "prnap;": "\u2ab9", - "prnsim;": "\u22e8", - "prod;": "\u220f", - "profalar;": "\u232e", - "profline;": "\u2312", - "profsurf;": "\u2313", - "prop;": "\u221d", - "propto;": "\u221d", - "prsim;": "\u227e", - "prurel;": "\u22b0", - "pscr;": "\U0001d4c5", - "psi;": "\u03c8", - "puncsp;": "\u2008", - "qfr;": "\U0001d52e", - "qint;": "\u2a0c", - "qopf;": "\U0001d562", - "qprime;": "\u2057", - "qscr;": "\U0001d4c6", - "quaternions;": "\u210d", - "quatint;": "\u2a16", - "quest;": "?", - "questeq;": "\u225f", - "quot": "\"", - "quot;": "\"", - "rAarr;": "\u21db", - "rArr;": "\u21d2", - "rAtail;": "\u291c", - "rBarr;": "\u290f", - "rHar;": "\u2964", - "race;": "\u223d\u0331", - "racute;": "\u0155", - "radic;": "\u221a", - "raemptyv;": "\u29b3", - "rang;": "\u27e9", - "rangd;": "\u2992", - "range;": "\u29a5", - "rangle;": "\u27e9", - "raquo": "\xbb", - "raquo;": "\xbb", - "rarr;": "\u2192", - "rarrap;": "\u2975", - "rarrb;": "\u21e5", - "rarrbfs;": "\u2920", - "rarrc;": "\u2933", - "rarrfs;": "\u291e", - "rarrhk;": "\u21aa", - "rarrlp;": "\u21ac", - "rarrpl;": "\u2945", - "rarrsim;": "\u2974", - "rarrtl;": "\u21a3", - "rarrw;": "\u219d", - "ratail;": "\u291a", - "ratio;": "\u2236", - "rationals;": "\u211a", - "rbarr;": "\u290d", - "rbbrk;": "\u2773", - "rbrace;": "}", - "rbrack;": "]", - "rbrke;": "\u298c", - "rbrksld;": "\u298e", - "rbrkslu;": "\u2990", - "rcaron;": "\u0159", - "rcedil;": "\u0157", - "rceil;": "\u2309", - "rcub;": "}", - "rcy;": "\u0440", - "rdca;": "\u2937", - "rdldhar;": "\u2969", - "rdquo;": "\u201d", - "rdquor;": "\u201d", - "rdsh;": "\u21b3", - "real;": "\u211c", - "realine;": "\u211b", - "realpart;": "\u211c", - "reals;": "\u211d", - "rect;": "\u25ad", - "reg": "\xae", - "reg;": "\xae", - "rfisht;": "\u297d", - "rfloor;": "\u230b", - "rfr;": "\U0001d52f", - "rhard;": "\u21c1", - "rharu;": "\u21c0", - "rharul;": "\u296c", - "rho;": "\u03c1", - "rhov;": "\u03f1", - "rightarrow;": "\u2192", - "rightarrowtail;": "\u21a3", - "rightharpoondown;": "\u21c1", - "rightharpoonup;": "\u21c0", - "rightleftarrows;": "\u21c4", - "rightleftharpoons;": "\u21cc", - "rightrightarrows;": "\u21c9", - "rightsquigarrow;": "\u219d", - "rightthreetimes;": "\u22cc", - "ring;": "\u02da", - "risingdotseq;": "\u2253", - "rlarr;": "\u21c4", - "rlhar;": "\u21cc", - "rlm;": "\u200f", - "rmoust;": "\u23b1", - "rmoustache;": "\u23b1", - "rnmid;": "\u2aee", - "roang;": "\u27ed", - "roarr;": "\u21fe", - "robrk;": "\u27e7", - "ropar;": "\u2986", - "ropf;": "\U0001d563", - "roplus;": "\u2a2e", - "rotimes;": "\u2a35", - "rpar;": ")", - "rpargt;": "\u2994", - "rppolint;": "\u2a12", - "rrarr;": "\u21c9", - "rsaquo;": "\u203a", - "rscr;": "\U0001d4c7", - "rsh;": "\u21b1", - "rsqb;": "]", - "rsquo;": "\u2019", - "rsquor;": "\u2019", - "rthree;": "\u22cc", - "rtimes;": "\u22ca", - "rtri;": "\u25b9", - "rtrie;": "\u22b5", - "rtrif;": "\u25b8", - "rtriltri;": "\u29ce", - "ruluhar;": "\u2968", - "rx;": "\u211e", - "sacute;": "\u015b", - "sbquo;": "\u201a", - "sc;": "\u227b", - "scE;": "\u2ab4", - "scap;": "\u2ab8", - "scaron;": "\u0161", - "sccue;": "\u227d", - "sce;": "\u2ab0", - "scedil;": "\u015f", - "scirc;": "\u015d", - "scnE;": "\u2ab6", - "scnap;": "\u2aba", - "scnsim;": "\u22e9", - "scpolint;": "\u2a13", - "scsim;": "\u227f", - "scy;": "\u0441", - "sdot;": "\u22c5", - "sdotb;": "\u22a1", - "sdote;": "\u2a66", - "seArr;": "\u21d8", - "searhk;": "\u2925", - "searr;": "\u2198", - "searrow;": "\u2198", - "sect": "\xa7", - "sect;": "\xa7", - "semi;": ";", - "seswar;": "\u2929", - "setminus;": "\u2216", - "setmn;": "\u2216", - "sext;": "\u2736", - "sfr;": "\U0001d530", - "sfrown;": "\u2322", - "sharp;": "\u266f", - "shchcy;": "\u0449", - "shcy;": "\u0448", - "shortmid;": "\u2223", - "shortparallel;": "\u2225", - "shy": "\xad", - "shy;": "\xad", - "sigma;": "\u03c3", - "sigmaf;": "\u03c2", - "sigmav;": "\u03c2", - "sim;": "\u223c", - "simdot;": "\u2a6a", - "sime;": "\u2243", - "simeq;": "\u2243", - "simg;": "\u2a9e", - "simgE;": "\u2aa0", - "siml;": "\u2a9d", - "simlE;": "\u2a9f", - "simne;": "\u2246", - "simplus;": "\u2a24", - "simrarr;": "\u2972", - "slarr;": "\u2190", - "smallsetminus;": "\u2216", - "smashp;": "\u2a33", - "smeparsl;": "\u29e4", - "smid;": "\u2223", - "smile;": "\u2323", - "smt;": "\u2aaa", - "smte;": "\u2aac", - "smtes;": "\u2aac\ufe00", - "softcy;": "\u044c", - "sol;": "/", - "solb;": "\u29c4", - "solbar;": "\u233f", - "sopf;": "\U0001d564", - "spades;": "\u2660", - "spadesuit;": "\u2660", - "spar;": "\u2225", - "sqcap;": "\u2293", - "sqcaps;": "\u2293\ufe00", - "sqcup;": "\u2294", - "sqcups;": "\u2294\ufe00", - "sqsub;": "\u228f", - "sqsube;": "\u2291", - "sqsubset;": "\u228f", - "sqsubseteq;": "\u2291", - "sqsup;": "\u2290", - "sqsupe;": "\u2292", - "sqsupset;": "\u2290", - "sqsupseteq;": "\u2292", - "squ;": "\u25a1", - "square;": "\u25a1", - "squarf;": "\u25aa", - "squf;": "\u25aa", - "srarr;": "\u2192", - "sscr;": "\U0001d4c8", - "ssetmn;": "\u2216", - "ssmile;": "\u2323", - "sstarf;": "\u22c6", - "star;": "\u2606", - "starf;": "\u2605", - "straightepsilon;": "\u03f5", - "straightphi;": "\u03d5", - "strns;": "\xaf", - "sub;": "\u2282", - "subE;": "\u2ac5", - "subdot;": "\u2abd", - "sube;": "\u2286", - "subedot;": "\u2ac3", - "submult;": "\u2ac1", - "subnE;": "\u2acb", - "subne;": "\u228a", - "subplus;": "\u2abf", - "subrarr;": "\u2979", - "subset;": "\u2282", - "subseteq;": "\u2286", - "subseteqq;": "\u2ac5", - "subsetneq;": "\u228a", - "subsetneqq;": "\u2acb", - "subsim;": "\u2ac7", - "subsub;": "\u2ad5", - "subsup;": "\u2ad3", - "succ;": "\u227b", - "succapprox;": "\u2ab8", - "succcurlyeq;": "\u227d", - "succeq;": "\u2ab0", - "succnapprox;": "\u2aba", - "succneqq;": "\u2ab6", - "succnsim;": "\u22e9", - "succsim;": "\u227f", - "sum;": "\u2211", - "sung;": "\u266a", - "sup1": "\xb9", - "sup1;": "\xb9", - "sup2": "\xb2", - "sup2;": "\xb2", - "sup3": "\xb3", - "sup3;": "\xb3", - "sup;": "\u2283", - "supE;": "\u2ac6", - "supdot;": "\u2abe", - "supdsub;": "\u2ad8", - "supe;": "\u2287", - "supedot;": "\u2ac4", - "suphsol;": "\u27c9", - "suphsub;": "\u2ad7", - "suplarr;": "\u297b", - "supmult;": "\u2ac2", - "supnE;": "\u2acc", - "supne;": "\u228b", - "supplus;": "\u2ac0", - "supset;": "\u2283", - "supseteq;": "\u2287", - "supseteqq;": "\u2ac6", - "supsetneq;": "\u228b", - "supsetneqq;": "\u2acc", - "supsim;": "\u2ac8", - "supsub;": "\u2ad4", - "supsup;": "\u2ad6", - "swArr;": "\u21d9", - "swarhk;": "\u2926", - "swarr;": "\u2199", - "swarrow;": "\u2199", - "swnwar;": "\u292a", - "szlig": "\xdf", - "szlig;": "\xdf", - "target;": "\u2316", - "tau;": "\u03c4", - "tbrk;": "\u23b4", - "tcaron;": "\u0165", - "tcedil;": "\u0163", - "tcy;": "\u0442", - "tdot;": "\u20db", - "telrec;": "\u2315", - "tfr;": "\U0001d531", - "there4;": "\u2234", - "therefore;": "\u2234", - "theta;": "\u03b8", - "thetasym;": "\u03d1", - "thetav;": "\u03d1", - "thickapprox;": "\u2248", - "thicksim;": "\u223c", - "thinsp;": "\u2009", - "thkap;": "\u2248", - "thksim;": "\u223c", - "thorn": "\xfe", - "thorn;": "\xfe", - "tilde;": "\u02dc", - "times": "\xd7", - "times;": "\xd7", - "timesb;": "\u22a0", - "timesbar;": "\u2a31", - "timesd;": "\u2a30", - "tint;": "\u222d", - "toea;": "\u2928", - "top;": "\u22a4", - "topbot;": "\u2336", - "topcir;": "\u2af1", - "topf;": "\U0001d565", - "topfork;": "\u2ada", - "tosa;": "\u2929", - "tprime;": "\u2034", - "trade;": "\u2122", - "triangle;": "\u25b5", - "triangledown;": "\u25bf", - "triangleleft;": "\u25c3", - "trianglelefteq;": "\u22b4", - "triangleq;": "\u225c", - "triangleright;": "\u25b9", - "trianglerighteq;": "\u22b5", - "tridot;": "\u25ec", - "trie;": "\u225c", - "triminus;": "\u2a3a", - "triplus;": "\u2a39", - "trisb;": "\u29cd", - "tritime;": "\u2a3b", - "trpezium;": "\u23e2", - "tscr;": "\U0001d4c9", - "tscy;": "\u0446", - "tshcy;": "\u045b", - "tstrok;": "\u0167", - "twixt;": "\u226c", - "twoheadleftarrow;": "\u219e", - "twoheadrightarrow;": "\u21a0", - "uArr;": "\u21d1", - "uHar;": "\u2963", - "uacute": "\xfa", - "uacute;": "\xfa", - "uarr;": "\u2191", - "ubrcy;": "\u045e", - "ubreve;": "\u016d", - "ucirc": "\xfb", - "ucirc;": "\xfb", - "ucy;": "\u0443", - "udarr;": "\u21c5", - "udblac;": "\u0171", - "udhar;": "\u296e", - "ufisht;": "\u297e", - "ufr;": "\U0001d532", - "ugrave": "\xf9", - "ugrave;": "\xf9", - "uharl;": "\u21bf", - "uharr;": "\u21be", - "uhblk;": "\u2580", - "ulcorn;": "\u231c", - "ulcorner;": "\u231c", - "ulcrop;": "\u230f", - "ultri;": "\u25f8", - "umacr;": "\u016b", - "uml": "\xa8", - "uml;": "\xa8", - "uogon;": "\u0173", - "uopf;": "\U0001d566", - "uparrow;": "\u2191", - "updownarrow;": "\u2195", - "upharpoonleft;": "\u21bf", - "upharpoonright;": "\u21be", - "uplus;": "\u228e", - "upsi;": "\u03c5", - "upsih;": "\u03d2", - "upsilon;": "\u03c5", - "upuparrows;": "\u21c8", - "urcorn;": "\u231d", - "urcorner;": "\u231d", - "urcrop;": "\u230e", - "uring;": "\u016f", - "urtri;": "\u25f9", - "uscr;": "\U0001d4ca", - "utdot;": "\u22f0", - "utilde;": "\u0169", - "utri;": "\u25b5", - "utrif;": "\u25b4", - "uuarr;": "\u21c8", - "uuml": "\xfc", - "uuml;": "\xfc", - "uwangle;": "\u29a7", - "vArr;": "\u21d5", - "vBar;": "\u2ae8", - "vBarv;": "\u2ae9", - "vDash;": "\u22a8", - "vangrt;": "\u299c", - "varepsilon;": "\u03f5", - "varkappa;": "\u03f0", - "varnothing;": "\u2205", - "varphi;": "\u03d5", - "varpi;": "\u03d6", - "varpropto;": "\u221d", - "varr;": "\u2195", - "varrho;": "\u03f1", - "varsigma;": "\u03c2", - "varsubsetneq;": "\u228a\ufe00", - "varsubsetneqq;": "\u2acb\ufe00", - "varsupsetneq;": "\u228b\ufe00", - "varsupsetneqq;": "\u2acc\ufe00", - "vartheta;": "\u03d1", - "vartriangleleft;": "\u22b2", - "vartriangleright;": "\u22b3", - "vcy;": "\u0432", - "vdash;": "\u22a2", - "vee;": "\u2228", - "veebar;": "\u22bb", - "veeeq;": "\u225a", - "vellip;": "\u22ee", - "verbar;": "|", - "vert;": "|", - "vfr;": "\U0001d533", - "vltri;": "\u22b2", - "vnsub;": "\u2282\u20d2", - "vnsup;": "\u2283\u20d2", - "vopf;": "\U0001d567", - "vprop;": "\u221d", - "vrtri;": "\u22b3", - "vscr;": "\U0001d4cb", - "vsubnE;": "\u2acb\ufe00", - "vsubne;": "\u228a\ufe00", - "vsupnE;": "\u2acc\ufe00", - "vsupne;": "\u228b\ufe00", - "vzigzag;": "\u299a", - "wcirc;": "\u0175", - "wedbar;": "\u2a5f", - "wedge;": "\u2227", - "wedgeq;": "\u2259", - "weierp;": "\u2118", - "wfr;": "\U0001d534", - "wopf;": "\U0001d568", - "wp;": "\u2118", - "wr;": "\u2240", - "wreath;": "\u2240", - "wscr;": "\U0001d4cc", - "xcap;": "\u22c2", - "xcirc;": "\u25ef", - "xcup;": "\u22c3", - "xdtri;": "\u25bd", - "xfr;": "\U0001d535", - "xhArr;": "\u27fa", - "xharr;": "\u27f7", - "xi;": "\u03be", - "xlArr;": "\u27f8", - "xlarr;": "\u27f5", - "xmap;": "\u27fc", - "xnis;": "\u22fb", - "xodot;": "\u2a00", - "xopf;": "\U0001d569", - "xoplus;": "\u2a01", - "xotime;": "\u2a02", - "xrArr;": "\u27f9", - "xrarr;": "\u27f6", - "xscr;": "\U0001d4cd", - "xsqcup;": "\u2a06", - "xuplus;": "\u2a04", - "xutri;": "\u25b3", - "xvee;": "\u22c1", - "xwedge;": "\u22c0", - "yacute": "\xfd", - "yacute;": "\xfd", - "yacy;": "\u044f", - "ycirc;": "\u0177", - "ycy;": "\u044b", - "yen": "\xa5", - "yen;": "\xa5", - "yfr;": "\U0001d536", - "yicy;": "\u0457", - "yopf;": "\U0001d56a", - "yscr;": "\U0001d4ce", - "yucy;": "\u044e", - "yuml": "\xff", - "yuml;": "\xff", - "zacute;": "\u017a", - "zcaron;": "\u017e", - "zcy;": "\u0437", - "zdot;": "\u017c", - "zeetrf;": "\u2128", - "zeta;": "\u03b6", - "zfr;": "\U0001d537", - "zhcy;": "\u0436", - "zigrarr;": "\u21dd", - "zopf;": "\U0001d56b", - "zscr;": "\U0001d4cf", - "zwj;": "\u200d", - "zwnj;": "\u200c", -} - -replacementCharacters = { - 0x0: "\uFFFD", - 0x0d: "\u000D", - 0x80: "\u20AC", - 0x81: "\u0081", - 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): - pass - - -class ReparseException(Exception): - pass diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 4059cc8e8b348b8756f87a9546e666fe0c073728..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151 zcmaFI!^`#5e|aPW5IhDEFu(|8H~?`m3y?@*Ufgc5S{f$;wEVupj4{V3*3BYa{(ctsN&FqxTF#RN+T-E&TgsG^+(t1(nQUr z;leLL{H47j4!!ULI5A_Zr9!N{tdjE%)MZ2_h=nHS}?a^j)C|fv<>~UcW^*10z1%8fxP$Z z>;W7g{h_}!Fpi$)!gxa+D*ZP6WW2p3*HiKw9_rB8r($|5g(Oiah9t#9gY=2<(6kBzIdQ;`~%I2Fc8!$cVOJd~yQ zD_eC5^gbH8Ck1^0+hAR`#Mbe>!j{==^&iRuJUhsM@Pfd!f*{FwDar2y!C4u~dZj|W zlc_3om5wyDDIK+_!zxV!zfDlbr7jghDOyrC83&DlO1){1GbzPb<0UC-?d{jq<=Imz kQ=@iPUki@cqC)*&dhAL~c!v%`LAp1su4S_|6#LNr0}`73^8f$< diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/base.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/base.cpython-34.pyc deleted file mode 100644 index e1875c80d0226bd666494fba082c67501b25f308..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 841 zcmZuuO^?$s5FICJTDnPxNBt!v$APQ*37uXm91eApTOW zhyxdX04Lr!+p3GOGUJJ7Jnzl(@9cE?^X<2HPX*BrI$8V$6c(J$PkJnm;j=~~lyC3UlHt?wtbzST~*oBpiZ z=&G%iG}Q^YCxwUMlc44NuOS6gVq)I z;>A1LYnVHQyAyOrB*U0Dxwy_npSrfQmCB<&amuW0in8xyC)oZh=Dyj^w|aYCcG}eE z>ryrL#ivU?3MOyWrf%*0gKx|;qs#d!5ODLdaOz_Fxt~a>H`+@%VhVwm_%a)4UhH!f zUL-8uAMo{{OtcoX6BrPD!IH%bEOTMUxDcog?h$?iBub>@5&i=iat|bmQ5YmTLvVnE zR=a4AI)1Nw;r%^u6oC6=Q#9&d_!BAbYo$CnV(|Dd^dWtnr_7eSNZC)NY}&dr9A{E~ z>=bQm#%{)r=Q?scv}Jh{nB(WmL>6apIAaJjUUj~+Xlz+s%kx^U?$fqhtICJc Uqm}_-5cB20=@mas5c5g=7uiR!nE(I) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-34.pyc deleted file mode 100644 index 126cdcb271854c07f8cded936417a4d141e03ddb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1850 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-34.pyc deleted file mode 100644 index 493930fe38624181d90358e0c44bc2698dba470a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19205 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-34.pyc deleted file mode 100644 index a555442bc2ea51d6557e1c8eaf23d3ed832f45ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1345 zcmZ8h&2AJ&5U%d&ot<6JdaaPyS#YE%5{FF$dr1Tb6cITKw*|3?B!kdscBYMI>G`3% z*MMc8$V=oNDatG4A$Wk!G0MRg9)J^7y*5~kT;=Zi|Ej9@Z9M4zfA6o~i~#r#E_`^0 z+eqdQWCi{)PyiK!gh9n2;ZOyT1i(ngK?z6%6af?hR0paMk`Q$rC_+$Os3J%rsCtm} zP}+rMA7l?+W3(Pf0m}_2B9d&AD2BU54~jngj-k;ogyjHUW3~YlXc&_`*`%!V@!%B8 zgK^-7*}^nxWo24cZKJJ=it?~DWmCJYRbA#yAyZXasWW9}r;MDK6N}8qQ%)D|Hg#TP zHk&G0$=Vt>G;Nm4y@O0=Ird{F6$5=-I&p7DEaLmBWyiULf?U$$s&lFh44UAYD?-6>B zBl6ImqxvSPACf56e|oE~x56`Ki(rIO9NhYHtNwOv`NmuJy(LyF&W*9wb4#GpBldg* zzhLj?gwrVGB*yB2E@Y)|y!f6(p3*~E7mc1A*h>AN%Ee^g58O;%9AG^@)%Et3 z-o{{CNaiv!U?Cf^K8ukL_-9C8@d3ZYcKFe7y)W0#(agpXL8A^Kw0@daO|epRj??t{ zDpO~g-o9>*WNoB%LY2nq2-D~tVwBp0xxjWwMtzHs=tlx#zRSJj!*0^70;D}Mq1x9g zi5p5QNw1X8^yetYM;6cT|Fk!qrw^ugr@y+utQPbPY280f`XxGCrHJ%AfoZyrhlFf@ zWmg)JY0_xQtf?@^wbXsO(Xd@FZ)#&Re93EwJras#Q`WAVH&t6IslOp>Lg%AjsDMVQ c3A>AKtsD6xp)@q{T^{o-w#|n8QZO352YPuiivR!s diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py deleted file mode 100644 index 4795bae..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +++ /dev/null @@ -1,20 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - -try: - from collections import OrderedDict -except ImportError: - from ordereddict import OrderedDict - - -class Filter(base.Filter): - def __iter__(self): - for token in base.Filter.__iter__(self): - if token["type"] in ("StartTag", "EmptyTag"): - attrs = OrderedDict() - for name, value in sorted(token["data"].items(), - key=lambda x: x[0]): - attrs[name] = value - token["data"] = attrs - yield token diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/base.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/base.py deleted file mode 100644 index c7dbaed..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py deleted file mode 100644 index 2059ec8..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +++ /dev/null @@ -1,65 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - - -class Filter(base.Filter): - def __init__(self, source, encoding): - base.Filter.__init__(self, source) - self.encoding = encoding - - def __iter__(self): - state = "pre_head" - meta_found = (self.encoding is None) - pending = [] - - for token in base.Filter.__iter__(self): - type = token["type"] - if type == "StartTag": - if token["name"].lower() == "head": - state = "in_head" - - elif type == "EmptyTag": - if token["name"].lower() == "meta": - # replace charset with actual encoding - has_http_equiv_content_type = False - for (namespace, name), value in token["data"].items(): - if namespace is not None: - continue - elif name.lower() == 'charset': - token["data"][(namespace, name)] = self.encoding - meta_found = True - break - elif name == 'http-equiv' and value.lower() == 'content-type': - has_http_equiv_content_type = True - else: - if has_http_equiv_content_type and (None, "content") in token["data"]: - token["data"][(None, "content")] = 'text/html; charset=%s' % self.encoding - meta_found = True - - elif token["name"].lower() == "head" and not meta_found: - # insert meta into empty head - yield {"type": "StartTag", "name": "head", - "data": token["data"]} - yield {"type": "EmptyTag", "name": "meta", - "data": {(None, "charset"): self.encoding}} - yield {"type": "EndTag", "name": "head"} - meta_found = True - continue - - elif type == "EndTag": - if token["name"].lower() == "head" and pending: - # insert meta into head (if necessary) and flush pending queue - yield pending.pop(0) - if not meta_found: - yield {"type": "EmptyTag", "name": "meta", - "data": {(None, "charset"): self.encoding}} - while pending: - yield pending.pop(0) - meta_found = True - state = "post_head" - - if state == "in_head": - pending.append(token) - else: - yield token diff --git a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py deleted file mode 100644 index 3b892c8..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py +++ /dev/null @@ -1,81 +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): - def __init__(self, source, require_matching_tags=True): - 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py deleted file mode 100644 index f6edb73..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +++ /dev/null @@ -1,206 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals - -from . import base - - -class Filter(base.Filter): - 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 optgroup - # 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py deleted file mode 100644 index 026748d..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +++ /dev/null @@ -1,865 +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 / - (?P[-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): - """ sanitization 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): - 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> - # sanitize_html('Click here for $100') - # => Click here for $100 - 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('^\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"] = "" % 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('url\s*\(\s*[^\s)]+?\s*\)\s*').sub(' ', style) - - # gauntlet - if not re.match("""^([:,;#%.\sa-zA-Z0-9!]|\w-\w|'[\s\w]+'|"[\s\w]+"|\([\d,\s]+\))*$""", style): - return '' - if not re.match("^\s*([-\w]+\s*:[^:;]*(;\s*|$))*$", style): - return '' - - clean = [] - for prop, value in re.findall("([-\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("^(#[0-9a-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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py deleted file mode 100644 index 8921052..0000000 --- a/env/lib/python3.4/site-packages/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): - - 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/env/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py b/env/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py deleted file mode 100644 index f7043cb..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py +++ /dev/null @@ -1,2733 +0,0 @@ -from __future__ import absolute_import, division, unicode_literals -from pip._vendor.six import with_metaclass, viewkeys, PY3 - -import types - -try: - from collections import OrderedDict -except ImportError: - from pip._vendor.ordereddict 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 a string or file-like object into a tree""" - tb = treebuilders.getTreeBuilder(treebuilder) - p = HTMLParser(tb, namespaceHTMLElements=namespaceHTMLElements) - return p.parse(doc, **kwargs) - - -def parseFragment(doc, container="div", treebuilder="etree", namespaceHTMLElements=True, **kwargs): - 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): - """ - strict - raise an exception when a parse error is encountered - - tree - a treebuilder class controlling the type of tree that will be - returned. Built in treebuilders can be accessed through - html5lib.treebuilders.getTreeBuilder(treeType) - """ - - # 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): - """The name of the character encoding - that was used to decode the input stream, - or :obj:`None` if that is not determined yet. - - """ - if not hasattr(self, 'tokenizer'): - return None - return self.tokenizer.stream.charEncoding[0].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 - - stream - a filelike object or string containing the HTML to be parsed - - The optional encoding parameter must be a string that indicates - the encoding. If specified, that encoding will be used, - regardless of any BOM or later declaration (such as in a meta - element) - - scripting - treat noscript elements as if javascript was turned on - """ - 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 - - container - name of the element we're setting the innerHTML property - if set to None, default to 'div' - - stream - a filelike object or string containing the HTML to be parsed - - The optional encoding parameter must be a string that indicates - the encoding. If specified, that encoding will be used, - regardless of any BOM or later declaration (such as in a meta - element) - - scripting - treat noscript elements as if javascript was turned on - """ - 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 - contentType - RCDATA or RAWTEXT - """ - assert contentType in ("RAWTEXT", "RCDATA") - - self.tree.insertElement(token) - - if contentType == "RAWTEXT": - self.tokenizer.state = self.tokenizer.rawtextState - else: - self.tokenizer.state = self.tokenizer.rcdataState - - self.originalPhase = self.phase - - self.phase = self.phases["text"] - - -@_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

      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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/__init__.py deleted file mode 100644 index bee5f5e..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/__init__.py +++ /dev/null @@ -1,107 +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("packaging") - vendored("packaging.version") - vendored("packaging.specifiers") - vendored("pkg_resources") - vendored("progress") - 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/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index d3459175c11fa4d8168592c6ad1aafc67d398e96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2914 zcmbuB-HzKt6vxlliIccVKepSC1zOzirlsC~P;paL2zIMhR7IjfZC6N^W6y59JNB5F z@wV%>R|^loQy?CM8y;cA9pa)lJOEdmagw1DY_@_V9{)V&?=$0>bB^;zf8hWA<&V$q zE&%)nZ+%+GpW-2(H~=ZY8ny&d2N;3efi(w+xpslMu;w;4^eqIJ>%-cS-Na#Xz7ZjtCl{pbj?y|Y1z_sOE)atY^cCs za^dmtR{g7AW@Q*{(<0>}$YijNr^!`TYy>GS(L#$PqcY&@0g3~~gHlk`sGy)UHL^*! zKT!v~2qe#`8XFURp{OWg7W)3ZjG>pTkXcHn&g{r?%qx}#BN`;U5eS+FS)Nxa9x)ok zMH);cykI-1^Q$tA6^d{=+f>L5ZwuB1&x5LzO3*kD{Wm6`hD0BVN0PHj(J0GHF4UuY z2{9)8m^3?z$LDy+U$DWX+5}JpUV(}D*93L~P!7Bzpj_BRQ_HlNh`55gE+J2fAE2e$ zu;qjJ83-X$Ju3ImFIfGy(LXD`fTs%6s$<4nni7FKI3%VTW-ulwPURb%4gOqEJ(!9d zSbBxm_TF6=&>exNSTG(By+?KD<@ML$%NwtCo8gWzVIEtP@QpbSeeL0H=dse=C@SKd zMv?ZT=^7z-HW(kpOlptu#GDU2XqInP2rjfMcckv*Jgsn7wI^iBGNn6`s#qy8Y-xXD zGmiCO5>hm6#?h@&EU9jdX`KE9Vi70v=dERxm&+JP*G5&w(rcR|nu|}Ke{8y%V;ZB& zIKd)QQ52Rtx;t}w3SG$K*Z^5@ToRB0Y1&@fStKWkFs8bFC44?+x}U_!m|~bI!I|zR zoN*E7vF@aqR4f~5&w${%J61WnZF;)609)%AzWCJHi@JwRnDcEa>%$hqN-(4Cm2t8a zZ(!`#M=XZZ5Um&g?vf=HcHm8_4< zD4h7hSuFjdYdV`-^~F6+VT6y)XrfH&)aUos;ZhY7S$+9kR3+!EJ~LOTL^i6g>?;Wi z#W3X1-PQfItUZBFt`9by*O=k{@D zc52?%H?CBcQ(n!DyGDoAXn06>qA2Cbq^_@5suEb^1^%G~-7>{pceunVqQ=_cQuIxK zZ)NqfuOF>ETwT$v#?rx;=LFIWU*uTK@oiyhA$sjSxxc#lFj{%=Ra0SgYm;Y1Q_tUO qjv2SzJCnD;-40&KF*Y7K?DPqK+n#sY>!0%6o32m(*Vp;CyZ-{+N?I8J diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/appdirs.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/appdirs.cpython-34.pyc deleted file mode 100644 index f3d9e119550bf2d60ca04f59485b43420c8dad58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19788 zcmeHPU2GdycD_SWBt=V>|D)KBGnVa0bZpA8Q@b&|#wwB(dlO4q(^Mfws9iaxaHgHfPQeJJ*&{m!{F zLk=a&&aSs;T1(<+=Fa^&_ug~Q`R+OA^4|vr3;#O%r+4no3-K?a>*omWzlx9d-Lw#< z5EWcs6BSLE8L^rYR$5pYVQJ!FN<7p=rB9e?VfKl7R#dXleNI$z!pe%(Jf*y7X2rdf zsPqe~U&wD#`AR`Jf^+N=s{_K!QC;$Hqw>2%WtXtE;04IA|Hfa3V+z{|1G*TbM)QW012aO2k{F<8d#i?@gxf z6Xt$S$4z%V2ZVW$)Ax6!9}?yZ!W`ywWQg-4{Y7CO=JbQ&E%S&lkBX1c&7;CPBp#+k z1;t(x<}pgF3=8vRVd{L3V#kF!!uN-Tc|w>c`TmHohG;A>$nwop8x5!_IVvhI3F}2s zIVR@U-b`hzm≪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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/distro.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/distro.cpython-34.pyc deleted file mode 100644 index b5939c5c918b867fc03e78c3b87962002aad0d09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33753 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ipaddress.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ipaddress.cpython-34.pyc deleted file mode 100644 index 45e80d9746b8dd22010a4848da728f2de5c09087..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 70870 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ordereddict.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/ordereddict.cpython-34.pyc deleted file mode 100644 index 981b32909bf43f289c8ba9a420397e3da5d8231c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3892 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 Nhr`A$g2fQ?{{<`C(pdli diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/re-vendor.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/re-vendor.cpython-34.pyc deleted file mode 100644 index 9998ff5b13d0243a2251dcd98fe98dad6ffc85e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1183 zcmYjPO>Yx15FL9zv)R&$euxT$D#T?g(q1YdAwWn};ua1SstBr9o35LByV)eRQ_`qC zmH&eJNB9xGRvdZ&i7O|@PO@}kPo6#Yc;1`&9WO;cKYsu0IRLkC@542`!zuru$#D=U z0Xj7%&>@R`3LUz@4s@IacA?_}11LNw`~?Vrg>X&G=rkb5iw=Cl$Pwf&$vIJzSkCULYk6ueT}krz_CY{JzI2p?V6{N3AC{o(GA4_nWqtAT>z>)NGo6Loz5kN-#^(8kN!CRJBqAcj|C*2CVmy}52*IRnC=~>hC9;3? z2Cgj2!hymyyO#jh6t3_Dp2JNKE^QUX3Me0nV7?@y6~J+5PKArJHUJ8X0cw?Kd+JL* zL1B`HrUR*il1r6yq1{s^n0AMmI@NA5;Fb2cG!9>$jukJpFZxO_ru}hM^6D(1nx0fT zz#~=GXaCg`0W#B`m3;}JjL-ntAnW8IS)*bNSG6Rj97cC5$p-{8JuqvmE%L`c#SZOx zmcisXDAWMA?0Wxb)ym~sSx_i!h0zN*wC&)xb-*jBva+1gmcl8f(Y!0vL`|dZ9oFl$ zcy%&JeC=RiwcF2lC7PIoc6;TZE0z(W(AY3UtQuT*$c&>ui?@z0XVay|A>?<)M9b{c;^tX?h2q(N`X=+olon*DE;~Ux2R68ZB tw3~_E`MvyXrnV5_>;51gm+Y;PT5h3<$^1v3(%6l|*o(0?5m}v0`VWbn@09=m diff --git a/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/retrying.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/__pycache__/retrying.cpython-34.pyc deleted file mode 100644 index 6c29ecd362c06b427a2b62fd06aceb56bbf7d1f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8725 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 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 -# - macOS: 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, 0) -__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'): # "macOS", 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 ".". - 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 - - for a discussion of issues. - - Typical user data directories are: - macOS: ~/Library/Application Support/ - 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 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): - """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 ".". - 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/', - if XDG_DATA_DIRS is not set - - Typical user data directories are: - macOS: /Library/Application Support/ - Unix: /usr/local/share/ or /usr/share/ - Win XP: C:\Documents and Settings\All Users\Application Data\\ - Vista: (Fail! "C:\ProgramData" is a hidden *system* directory on Vista.) - Win 7: C:\ProgramData\\ # 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 ".". - 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 - - for a discussion of issues. - - Typical user data directories are: - macOS: same as user_data_dir - Unix: ~/.config/ # 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 deafult "~/.config/". - """ - 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): - """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 ".". - 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/', if XDG_CONFIG_DIRS is not set - - Typical user data directories are: - macOS: same as site_data_dir - Unix: /etc/xdg/ or $XDG_CONFIG_DIRS[i]/ 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 ".". - 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: - macOS: ~/Library/Caches/ - Unix: ~/.cache/ (XDG default) - Win XP: C:\Documents and Settings\\Local Settings\Application Data\\\Cache - Vista: 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` above). 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. - 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_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 ".". - 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 cache directories are: - macOS: ~/Library/Logs/ - Unix: ~/.cache//log # or under $XDG_CACHE_HOME if defined - Win XP: C:\Documents and Settings\\Local Settings\Application Data\\\Logs - Vista: C:\Users\\AppData\Local\\\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, 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_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. - """ - 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 - # . - 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 - # . - 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 - # . - 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 kernal.GetShortPathName(dir, buf, buf_size): - dir = jna.Native.toString(buf.tostring()).rstrip("\0") - - return dir - -if system == "win32": - try: - import win32com.shell - _get_win_folder = _get_win_folder_with_pywin32 - except ImportError: - 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", "site_data_dir", - "user_config_dir", "site_config_dir", - "user_cache_dir", "user_log_dir") - - 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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__init__.py deleted file mode 100644 index ec9da2e..0000000 --- a/env/lib/python3.4/site-packages/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.11.7' - -from .wrapper import CacheControl -from .adapter import CacheControlAdapter -from .controller import CacheController diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index edece533e3abc7754cddb7073790371634365aee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 520 zcmYjNy-ve05We&;Z78A=FW|L9Q;?8Y5Gq0pNc;>;WU<`XfWeNfi%ZqM5aN}xA_f*7 zfQd^fQf%G%zE8gIe!hph$>;6ceHsCLK;yJ1o{^PTaLxaZ<&cOP6zAC7g=| zwSyE7I9FC^L*WkRuL?^lP9R>Q@LnO->#bt(r;P0yCEKA$7du3}0}kogxS!cHSU>gJ zPv#44v7$&Gk$<*M$z8r+!uSPpp#*qfTq>vR3Xzo7);iqv#g` CMVKQ1 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-34.pyc deleted file mode 100644 index 926ea683e9aad04367856ec1cb7271730392fc6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1635 zcmZ`(ORw8R6h7l|{EG8XTTsgaQX#?h;@)hKDpeJt+#*<10g-lrC1knrkoe+P$CFl# z+Ew~j5b9r=En>ljAHa%pW_;VLN_8?v=V6b}_sw_wZ#;?q{_)RWPDTKK!Ig`n{|&DG z4VnV~3@U)s`VLeKY6nsW7}Ypb9BLO**TybXBd9${JsXdp@}UkO4Q%W|6+#_B8e!~1 z5x{HQdkjSgMP&RK3Jhc8Pw3?Z+9|wdkWN9&pqRn$4#+=1OyLN?8q?uAng4_B!YW}p zkmBiH^r}by`gy+DiSxEmvaRkHd8dTLboij$C{x0~tJ>|>q^I}gc3+D|{glgI$PMjC z7sKV?I>*(YqEP@B43q;G9F7bac`mi{%GO5k5=;R(S|@CkcoJy_9rQvy6wgGZeR^rx zZ1w2Dci%q#UQgCaioE_IZ;DDt9pyza_}HPpv*|Y=C%Daj_m-;emR;GMKG~O5aeDDY z)bh^ruP9|!_DnQIE0-HWzp?0-*`_Yex)*waP3*gDXdos`9vWbC7Be|R?=5fw9pEy+ ze?rJsQh`hM$T*?5oFEenUNT~(uwd{MkwJzjhD7-*JvJ?8 zLgm~3k&f^b%DgHMNJ+R8ds+6X+#LL!Qr+F<@(_^IqnG%SV|&siLtSfsE&9G}8$GJq zeWP?V&_L|Y?MvQe5=Z;FRfl$ae9-W0&6IW!W}2of&o5nSNWq9lA{12_&cz(P0_aDL=(pduoJW~qrx zfJ|V3x>_fEb@0zg$;Iu%WYsDQzF6EnNyesML%QY&Nq&M&8V$>j(bH3V(o*zY+w?;F z!?!_mnLi(@MRu7Sb+T+!!nI4x$eXl-OV7T~o?GW-^Cg!1IT}C}g!~%!`7Qntn>g}> z9t^UK?#i-cE@_7J7^m}Wm`tP5ba5qfW;z`tc{YgAh&uiBgSVMyjOf$PKYWv&e-!@k z5khcQ6eJ!?7OB=!dD(lD*CNZV0H-gHG{X?wtJ`8Y1dYj#U z|MKs@rX8Yx(MwN&@ds#Hq08_JDu_;2V?igv(LE|Wn)!6%lgNC^0xANUwdkZ(f48Uz zY1XEbcKsbv(Vz%&Wf3(*ShGPdAg8^g z^eEdTX6rEJ>0pbMT^rLFYW+_>9og{1$3K5OdVD+@hmF1w{(0O-)2HYRUO}+pxkpov zZbG_g)1QgNjiC9PWZ+cd=_H_=mK&h=Y5pFWkZwD4gO_LuGa#2Wg? zc4N#cCeoy5+IF>6d0OPx@O#I$^a9RRZRlb? zClAbQ{$QTZ@1HL6BD+65l{59D%XgXNTJo7Jvr0X1S~l_?q&3in^DDK9Em<$UjgG=Y zu_Gd{Cwvi!P+WiGj;IZn_K!VYf`|RUjcw4sLx-?TT{c~Kq<-Uk4+^|47;d*d2S>f< z=olj=03E`DFnZ!CFAiwx;yA?^!FJ2AQj`Efn~V!5V@J^B-*BK83S8C?Ih8#m8W z*dC{`lFt@Wn_>K^ma#dPOG2ENlS<7}lUHSIs#r@I=aV=$D*^Ji2&o32TjqQir;u5X zYEgP#m5_^tmohG;%ve;-R1Q~?tpCyDk?l@YHA~#;(V%O?nKb8Brr7s(%aOCB(bjIc zh~l%}z_!n2nn|T?xR__Dk#-m1%yL#fEs|zZ^&qOoDKJ-NgO+-Qg|{22YLCDAtF0Q@ z0q-&p>VQ|j%H2KgzK!l%Xc~nRA?^blq3DaYABhA1$h*Gx=<7*6D1-H@?`N6q_5`5^6 zgQU*GWXWEhne%n>*uA^v&sZ~e&WScM>H34aGU%&`KYUnJ@TGo#c$dJzkvf9R`sirk z4p3a#P@B{&bX`^smRfSEa&=j!e45#wl7&pQb7J66DS=!*H)OSF0DyZ-B=*P@nS2Fw!nB;01tMCIf{SY0s z4^YGQ{eCMFJ-;WSa9eb}$nT4Tz(as2tB51z=|368wJ=mke&U+nskcm2lykJ(oc z>0>``n)R!ph+4&wSn(*errA;d!pxUd)op(|4Yr9(*ytj diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-34.pyc deleted file mode 100644 index 8ba5aff06bf39b9fc15d7205c8f9e1a209be792f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1805 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-34.pyc deleted file mode 100644 index fbb587ebf8c7890f81c4008c19c634cebcf50a82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2233 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-34.pyc deleted file mode 100644 index efb7820ee3fedd23fb65f9307a446bf978f03a4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 560 zcmYjOO>fjN5Pgo5>_@kvf?ttC$pr}sReWfBE<)wPUaB;)*i^~J8hfc&rKjb;ApVlC zRS#S^aOA{{i_kirmzg)o%p3dH;&}e>{`;rj3b@C?%GrO*=FS)z-U=PiE36ch#0k0t zy~av&tkI+pxb>e7kNmX zaV})BBBhd-Sx5#6lj?EWAD|9HK#Y%rl*&;FNBJA^~G$Ofy!8| zemt@AmMUuvJ-1)OVtH_s(#JhzK>kE&mB(k6oT!t8j+reon)55_rI~n9zNDg@16VK@ Wrf2=oY&-K>?#;=sTq@OETC2aSgL%;a diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/_cmd.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/_cmd.py deleted file mode 100644 index afdcc88..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py deleted file mode 100644 index 2348856..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py +++ /dev/null @@ -1,125 +0,0 @@ -import types -import functools - -from pip._vendor.requests.adapters import HTTPAdapter - -from .controller import CacheController -from .cache import DictCache -from .filewrapper import CallbackFileWrapper - - -class CacheControlAdapter(HTTPAdapter): - invalidating_methods = set(['PUT', 'DELETE']) - - def __init__(self, cache=None, - cache_etags=True, - controller_class=None, - serializer=None, - heuristic=None, - *args, **kw): - super(CacheControlAdapter, self).__init__(*args, **kw) - self.cache = cache or DictCache() - self.heuristic = heuristic - - controller_factory = controller_class or CacheController - self.controller = controller_factory( - self.cache, - cache_etags=cache_etags, - serializer=serializer, - ) - - def send(self, request, **kw): - """ - Send a request. Use the request information to see if it - exists in the cache and cache the response if we need to and can. - """ - if request.method == 'GET': - cached_response = self.controller.cached_request(request) - if cached_response: - return self.build_response(request, cached_response, - from_cache=True) - - # check for etags and add headers if appropriate - request.headers.update( - self.controller.conditional_headers(request) - ) - - resp = super(CacheControlAdapter, self).send(request, **kw) - - return resp - - def build_response(self, request, response, from_cache=False): - """ - Build a response by making a request or using the cache. - - This will end up calling send and returning a potentially - cached response - """ - if not from_cache and request.method == 'GET': - # 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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/cache.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/cache.py deleted file mode 100644 index 7389a73..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py deleted file mode 100644 index f9e66a1..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -from textwrap import dedent - -try: - from .file_cache import FileCache -except ImportError: - notice = dedent(''' - NOTE: In order to use the FileCache you must have - lockfile installed. You can install it via pip: - pip install lockfile - ''') - print(notice) - - -try: - import redis - from .redis_cache import RedisCache -except ImportError: - pass diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 5f5e07e037ed94a0729259271bb3366f2b41d13b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 577 zcmYjNO;6k~5S`g1`;i3|QN-Ct_5gc9s)VWv2~oraq_$GoT%r&US{KJo9cSrs<%0T0 zs{W;1s~))Y2lRw(V1?!R^t?Au{r}M1PM?fWC*z2 z0^S22f$TvQK^6giRXY$<4A&``GeAT_;4$1eKmybUN_>tpg>bQCfiVF&fNT(``XGl; zjUXF&s?8PEou>*Qp1|kH;K8YZ33h!>oRocVvVA%FC?p*f<(zJRrp%qQ^DoB->{Kyr zI2mR&Ya3#APHZ*FmbztC+gLU)78FoYm)BR0i3!!%LQ3L$Z04rQLcO$@uxud;R*U)| zV3nm+V zNnKJKp=_2I&y{tkxz86?8LpqQvR;srH@U3VyUsP9tKCBbqo#UAx@)XZV-QIw6cy+N^p@z0s7O(XC!jJ<&!O@RMffjUi87n8QmedzJyfp=Q&>t` zoADuS}umI4vUOgW-%G0Dv4vMS}eqmhcSV%h@t-iNr`%b z4jkHdET2)A78+PfJzj$;&mB^?h9WuQy#dZ<+m7A-cDU^iw|6J3#yss4Jr^Wa2h-%G z1xkz5c4)Ii>L(IHtPKP`W;04G2s8HaK9>$$+MTir&d|Qgp@tDFtOI9Qyv)n2_ZgAZ zfrPBoyt*khf_meAV`-_eY6^{D;X(cG@|tm;tk){WNi?smE;s5+YbM_a7MJhcePsMb zaPRTrlF4^M9j2*Ld4xt4K#Z?sKiQEc|DbVCsYKz>O2&A}mK+$r9ogSpD^9emd8W`t zng(HCnq0e|MEnzn8`?PS=yy^Vq4U27b7_BTZmYX>ZGF2NN7s7mvafDFxz0;=1UqsN zC2Fq4`D|rr%qDt{)dzNCc5By623oeZl?>R3;EC#{@(f;~t03eQ{V8uujJp_~D<;G_ zC+D9Ru9y<8QxWPN$h25+_^{h|FmxY80;(4FO@}cMfg%q;xdnRU(+dFKC5h<}+DHdV zVFd1`e+<)*sZey*;=4f67)9fjM-9JF;Ew+gt{$&_j=mIIU zk2eu*7D;_X`*_okKZLBHXM#}*F?EAdfZVs!OtL`gA*If6Q84xb*TN5s$JpYP9PNV# zs=AT}_h>nRcYA6-?=yFy59H zKFWm)iXAdVoRqCJQM)GJPL$k{DnpTlPaeCLDIMvo<&CFh+*a?ik`I_vnOp)f<>SVv z%e>C0%gEa-Q3!(WpqmE4b~C*!l#+a(wbhBc>&DleaDM)}@#Ub!^-=7|r%`u9>J*(zJUwNsx(d}_ zU}%0BIeX(rHf0J zwtGmsOTTancIvNk&{XrS9mb2hI#ngC7;h^~JI3oJ-GNO*%~LaW-PXR(-pa`2wnCNa zQ$86tXb&DjSouEw)E6EoKSqfW@X3y)fT47+0KkW&+yU>5R=>CUXaDo~0A z5FyQ~5mMI`Gvb`cIg`%xiNHc`gc%O-s5C#u%^bFk zg>$LKKx*!h_15guw)&BbWhy(6&43LA6vgp^%>-&C?m!&1ATXsMKzG~5ofepK5PZKK z#@UX#0zIaz(=hF}`skoZWNR=p?NheuHj~ep97WA?+~w4}AfI69vmj;Ri}RC{UO8Vb zl+W6|H;0Q)jXGJ@H_$);!YoQ?W_#Z)%XC`}s%YxfHtwuyi?8V__k-#>zQUqvl5Kvy zyfj-XRq;IPbagdKq^|OfAqN^)_R;yQ+Adj1M49Wt6s^)=TgBGlnrmF}rpPa}TNXvf z9Jif)95O+g1S}P>K}afT4}@}KLUA9hRn&+0$(q;{zBpzNzcywWgnTf&l`g+&Yqrnd zo+Cj9n#pD6aGNxx!;cjxv2NH;3>$6x?qlYT@?;9PG63A>8^z+hEXvNf80X=ZuU`1< Ef8XePXaE2J diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-34.pyc deleted file mode 100644 index 17f1c14475280784af8dda1f6c879c7c7ee32f50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1762 zcmaJ>+ioL85UuVRUt*lZ%Z6-#MGU;`j>I|=Lhyo6#3C*$6c7Gaqtn-wY%Y{dW+@-d%cnr9G}=)xhmlBC~c{aDZy(E)3cE`{6job(yl z765HMxRi7OlVl)U4}jopK$z`(e{RQB8GJbWI7q5u65IGN%QJgkuiMJTd1O>lm8rSj zf#+f( zAEa?D{rha!7L(mcHhFS5&GPig@u4d8C#N6rmYdOuD$`2uCUG)mR907cvoO0_rJ0GG zWjHx^AQ+-yup~D{Pp*j_;r0{WS`5za9;W#PLV+^D^nyh&jMRZQka$Zd^6B_Q`d)&3 z=v_+J+_5&LJxX75dWX_JrRz?|ffm@_sCz#!#-|Rvgf|}i&(o2+4uvTqioh=j4aGi6 z!bhlOC~G7uKhpPb$mOdMn^@M}D9XyrM$zk78F#ms-M@7=T-cL4{SMeKYR45409=X2 zwRFyE@42#})O>gC{ie=Wyz4C(-dJ+HvE&$^?k8LkJould3-((m7ap01uee5eqN+vt z0o$ykV~;C)=d!700Q5OSw#8<^CkV3*k;l(R>-0Fb~he%)U51=k}QlEsSw{e(I{2<7aX zuT?%#IykCykmM@XS@}GO^E|L)6@YXTWMvQsDffrisA2GslNy(lWGbegl?kD?dTIBzWaK3~kdYpxp? zwSLIjJ1lP9I*lK#=2yql^db7P@AbXS4rJR|_QN)NJDS?5hBwU&yP9tLYr8r;Mp*9X WUANcWPaB}0akdP%!hsxk{oa2~FIm$7 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py deleted file mode 100644 index b77728f..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +++ /dev/null @@ -1,116 +0,0 @@ -import hashlib -import os - -from pip._vendor.lockfile import LockFile -from pip._vendor.lockfile.mkdirlockfile import MkdirLockFile - -from ..cache import BaseCache -from ..controller import CacheController - - -def _secure_open_write(filename, fmode): - # We only want to write to this file, so open it in write only mode - flags = os.O_WRONLY - - # os.O_CREAT | os.O_EXCL will fail if the file already exists, so we only - # will open *new* files. - # We specify this because we want to ensure that the mode we pass is the - # mode of the file. - flags |= os.O_CREAT | os.O_EXCL - - # Do not follow symlinks to prevent someone from making a symlink that - # we follow and insecurely open a cache file. - if hasattr(os, "O_NOFOLLOW"): - flags |= os.O_NOFOLLOW - - # On Windows we'll mark this file as binary - if hasattr(os, "O_BINARY"): - flags |= os.O_BINARY - - # Before we open our file, we want to delete any existing file that is - # there - try: - os.remove(filename) - except (IOError, OSError): - # The file must not exist already, so we can just skip ahead to opening - pass - - # Open our file, the use of os.O_CREAT | os.O_EXCL will ensure that if a - # race condition happens between the os.remove and this line, that an - # error will be raised. Because we utilize a lockfile this should only - # happen if someone is attempting to attack us. - fd = os.open(filename, flags, fmode) - try: - return os.fdopen(fd, "wb") - except: - # An error occurred wrapping our FD in a file object - os.close(fd) - raise - - -class FileCache(BaseCache): - def __init__(self, directory, forever=False, filemode=0o0600, - dirmode=0o0700, use_dir_lock=None, lock_class=None): - - if use_dir_lock is not None and lock_class is not None: - raise ValueError("Cannot use use_dir_lock and lock_class together") - - if use_dir_lock: - lock_class = MkdirLockFile - - if lock_class is None: - lock_class = LockFile - - self.directory = directory - self.forever = forever - self.filemode = filemode - self.dirmode = dirmode - self.lock_class = lock_class - - - @staticmethod - def encode(x): - return hashlib.sha224(x.encode()).hexdigest() - - def _fn(self, name): - # NOTE: This method should not change as some may depend on it. - # See: https://github.com/ionrock/cachecontrol/issues/63 - hashed = self.encode(name) - parts = list(hashed[:5]) + [hashed] - return os.path.join(self.directory, *parts) - - def get(self, key): - name = self._fn(key) - if not os.path.exists(name): - return None - - with open(name, 'rb') as fh: - return fh.read() - - def set(self, key, value): - name = self._fn(key) - - # Make sure the directory exists - try: - os.makedirs(os.path.dirname(name), self.dirmode) - except (IOError, OSError): - pass - - with self.lock_class(name) as lock: - # Write our actual file - with _secure_open_write(lock.path, self.filemode) as fh: - fh.write(value) - - def delete(self, key): - name = self._fn(key) - if not self.forever: - os.remove(name) - - -def url_to_file_path(url, filecache): - """Return the file cache path based on the URL. - - This does not ensure the file exists! - """ - key = CacheController.cache_url(url) - return filecache._fn(key) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py deleted file mode 100644 index 9f5d55f..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +++ /dev/null @@ -1,41 +0,0 @@ -from __future__ import division - -from datetime import datetime - - -def total_seconds(td): - """Python 2.6 compatability""" - if hasattr(td, 'total_seconds'): - return td.total_seconds() - - ms = td.microseconds - secs = (td.seconds + td.days * 24 * 3600) - return (ms + secs * 10**6) / 10**6 - - -class RedisCache(object): - - def __init__(self, conn): - self.conn = conn - - def get(self, key): - return self.conn.get(key) - - def set(self, key, value, expires=None): - if not expires: - self.conn.set(key, value) - else: - expires = expires - datetime.now() - self.conn.setex(key, total_seconds(expires), value) - - def delete(self, key): - self.conn.delete(key) - - def clear(self): - """Helper for clearing all the keys in a database. Use with - caution!""" - for key in self.conn.keys(): - self.conn.delete(key) - - def close(self): - self.conn.disconnect() diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py deleted file mode 100644 index 018e6ac..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py +++ /dev/null @@ -1,20 +0,0 @@ -try: - from urllib.parse import urljoin -except ImportError: - from urlparse import urljoin - - -try: - import cPickle as pickle -except ImportError: - import pickle - - -from pip._vendor.requests.packages.urllib3.response import HTTPResponse -from pip._vendor.requests.packages.urllib3.util import is_fp_closed - -# Replicate some six behaviour -try: - text_type = (unicode,) -except NameError: - text_type = (str,) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py deleted file mode 100644 index 5eb961f..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py +++ /dev/null @@ -1,353 +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): - self.cache = cache or DictCache() - self.cache_etags = cache_etags - self.serializer = serializer or Serializer() - - @classmethod - def _urlnorm(cls, uri): - """Normalize the URL to create a safe key for the cache""" - (scheme, authority, path, query, fragment) = parse_uri(uri) - if not scheme or not authority: - raise Exception("Only absolute URIs are allowed. uri = %s" % uri) - - scheme = scheme.lower() - authority = authority.lower() - - if not path: - path = "/" - - # Could do syntax based normalization of the URI before - # computing the digest. See Section 6.2.2 of Std 66. - request_uri = query and "?".join([path, query]) or path - defrag_uri = scheme + "://" + authority + request_uri - - return defrag_uri - - @classmethod - def cache_url(cls, uri): - return cls._urlnorm(uri) - - def parse_cache_control(self, headers): - """ - Parse the cache control headers returning a dictionary with values - for the different directives. - """ - retval = {} - - cc_header = 'cache-control' - if 'Cache-Control' in headers: - cc_header = 'Cache-Control' - - if cc_header in headers: - parts = headers[cc_header].split(',') - parts_with_args = [ - tuple([x.strip().lower() for x in part.split("=", 1)]) - for part in parts if -1 != part.find("=") - ] - parts_wo_args = [ - (name.strip().lower(), 1) - for name in parts if -1 == name.find("=") - ] - retval = dict(parts_with_args + parts_wo_args) - return retval - - def cached_request(self, request): - """ - Return a cached response if it exists in the cache, otherwise - return False. - """ - cache_url = self.cache_url(request.url) - logger.debug('Looking up "%s" in the cache', cache_url) - cc = self.parse_cache_control(request.headers) - - # Bail out if the request insists on fresh data - if 'no-cache' in cc: - logger.debug('Request header has "no-cache", cache bypassed') - return False - - if 'max-age' in cc and cc['max-age'] == 0: - logger.debug('Request header has "max_age" as 0, cache bypassed') - return False - - # Request allows serving from the cache, let's see if we find something - cache_data = self.cache.get(cache_url) - if cache_data is None: - logger.debug('No cache entry available') - return False - - # Check whether it can be deserialized - resp = self.serializer.loads(request, cache_data) - if not resp: - logger.warning('Cache entry deserialization failed, entry ignored') - return False - - # If we have a cached 301, return it immediately. We don't - # need to test our response for other headers b/c it is - # intrinsically "cacheable" as it is Permanent. - # See: - # https://tools.ietf.org/html/rfc7231#section-6.4.2 - # - # Client can try to refresh the value by repeating the request - # with cache busting headers as usual (ie no-cache). - if resp.status == 301: - msg = ('Returning cached "301 Moved Permanently" response ' - '(ignoring date and etag information)') - logger.debug(msg) - return resp - - headers = CaseInsensitiveDict(resp.headers) - if not headers or 'date' not in headers: - if 'etag' not in headers: - # Without date or etag, the cached response can never be used - # and should be deleted. - logger.debug('Purging cached response: no date or etag') - self.cache.delete(cache_url) - logger.debug('Ignoring cached response: no date') - return False - - now = time.time() - date = calendar.timegm( - parsedate_tz(headers['date']) - ) - current_age = max(0, now - date) - logger.debug('Current age based on date: %i', current_age) - - # TODO: There is an assumption that the result will be a - # urllib3 response object. This may not be best since we - # could probably avoid instantiating or constructing the - # response until we know we need it. - resp_cc = self.parse_cache_control(headers) - - # determine freshness - freshness_lifetime = 0 - - # Check the max-age pragma in the cache control header - if 'max-age' in resp_cc and resp_cc['max-age'].isdigit(): - freshness_lifetime = int(resp_cc['max-age']) - logger.debug('Freshness lifetime from max-age: %i', - freshness_lifetime) - - # If there isn't a max-age, check for an expires header - elif 'expires' in headers: - expires = parsedate_tz(headers['expires']) - if expires is not None: - expire_time = calendar.timegm(expires) - date - freshness_lifetime = max(0, expire_time) - logger.debug("Freshness lifetime from expires: %i", - freshness_lifetime) - - # Determine if we are setting freshness limit in the - # request. Note, this overrides what was in the response. - if 'max-age' in cc: - try: - freshness_lifetime = int(cc['max-age']) - logger.debug('Freshness lifetime from request max-age: %i', - freshness_lifetime) - except ValueError: - freshness_lifetime = 0 - - if 'min-fresh' in cc: - try: - min_fresh = int(cc['min-fresh']) - except ValueError: - min_fresh = 0 - # adjust our current age by our min fresh - current_age += min_fresh - logger.debug('Adjusted current age from min-fresh: %i', - current_age) - - # Return entry if it is fresh enough - if freshness_lifetime > current_age: - logger.debug('The response is "fresh", returning cached response') - logger.debug('%i > %i', freshness_lifetime, current_age) - return resp - - # we're not fresh. If we don't have an Etag, clear it out - if 'etag' not in headers: - logger.debug( - 'The cached response is "stale" with no etag, purging' - ) - self.cache.delete(cache_url) - - # return the original handler - return False - - def conditional_headers(self, request): - cache_url = self.cache_url(request.url) - resp = self.serializer.loads(request, self.cache.get(cache_url)) - new_headers = {} - - if resp: - headers = CaseInsensitiveDict(resp.headers) - - if 'etag' in headers: - new_headers['If-None-Match'] = headers['ETag'] - - if 'last-modified' in headers: - new_headers['If-Modified-Since'] = headers['Last-Modified'] - - return new_headers - - def cache_response(self, request, response, body=None): - """ - Algorithm for caching requests. - - This assumes a requests Response object. - """ - # From httplib2: Don't cache 206's since we aren't going to - # handle byte range requests - cacheable_status_codes = [200, 203, 300, 301] - if response.status not in cacheable_status_codes: - logger.debug( - 'Status code %s not in %s', - response.status, - cacheable_status_codes - ) - return - - response_headers = CaseInsensitiveDict(response.headers) - - # If we've been given a body, our response has a Content-Length, that - # Content-Length is valid then we can check to see if the body we've - # been given matches the expected size, and if it doesn't we'll just - # skip trying to cache it. - if (body is not None and - "content-length" in response_headers and - response_headers["content-length"].isdigit() and - int(response_headers["content-length"]) != len(body)): - return - - cc_req = self.parse_cache_control(request.headers) - cc = self.parse_cache_control(response_headers) - - cache_url = self.cache_url(request.url) - logger.debug('Updating cache with response from "%s"', cache_url) - - # Delete it from the cache if we happen to have it stored there - no_store = False - if cc.get('no-store'): - no_store = True - logger.debug('Response header has "no-store"') - if cc_req.get('no-store'): - no_store = True - logger.debug('Request header has "no-store"') - if no_store and self.cache.get(cache_url): - logger.debug('Purging existing cache entry to honor "no-store"') - self.cache.delete(cache_url) - - # If we've been given an etag, then keep the response - if self.cache_etags and 'etag' in response_headers: - logger.debug('Caching due to etag') - self.cache.set( - cache_url, - self.serializer.dumps(request, response, body=body), - ) - - # Add to the cache any 301s. We do this before looking that - # the Date headers. - elif response.status == 301: - logger.debug('Caching permanant redirect') - self.cache.set( - cache_url, - self.serializer.dumps(request, response) - ) - - # Add to the cache if the response headers demand it. If there - # is no date header then we can't do anything about expiring - # the cache. - elif 'date' in response_headers: - # cache when there is a max-age > 0 - if cc and cc.get('max-age'): - if cc['max-age'].isdigit() and int(cc['max-age']) > 0: - logger.debug('Caching b/c date exists and max-age > 0') - self.cache.set( - cache_url, - self.serializer.dumps(request, response, body=body), - ) - - # If the request can expire, it means we should cache it - # in the meantime. - elif 'expires' in response_headers: - if response_headers['expires']: - logger.debug('Caching b/c of expires header') - self.cache.set( - cache_url, - self.serializer.dumps(request, response, body=body), - ) - - def update_cached_response(self, request, response): - """On a 304 we will get a new set of headers that we want to - update our cached value with, assuming we have one. - - This should only ever be called when we've sent an ETag and - gotten a 304 as the response. - """ - cache_url = self.cache_url(request.url) - - cached_response = self.serializer.loads( - request, - self.cache.get(cache_url) - ) - - if not cached_response: - # we didn't have a cached response - return response - - # Lets update our headers with the headers from the new request: - # http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-26#section-4.1 - # - # The server isn't supposed to send headers that would make - # the cached body invalid. But... just in case, we'll be sure - # to strip out ones we know that might be problmatic due to - # typical assumptions. - excluded_headers = [ - "content-length", - ] - - cached_response.headers.update( - dict((k, v) for k, v in response.headers.items() - if k.lower() not in excluded_headers) - ) - - # we want a 200 b/c we have content via the cache - cached_response.status = 200 - - # update our cache - self.cache.set( - cache_url, - self.serializer.dumps(request, cached_response), - ) - - return cached_response diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/filewrapper.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/filewrapper.py deleted file mode 100644 index f1e1ce0..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/heuristics.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/heuristics.py deleted file mode 100644 index 94715a4..0000000 --- a/env/lib/python3.4/site-packages/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.now() - 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/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py deleted file mode 100644 index 8f9c589..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py +++ /dev/null @@ -1,196 +0,0 @@ -import base64 -import io -import json -import zlib - -from pip._vendor.requests.structures import CaseInsensitiveDict - -from .compat import HTTPResponse, pickle, text_type - - -def _b64_encode_bytes(b): - return base64.b64encode(b).decode("ascii") - - -def _b64_encode_str(s): - return _b64_encode_bytes(s.encode("utf8")) - - -def _b64_encode(s): - if isinstance(s, text_type): - return _b64_encode_str(s) - return _b64_encode_bytes(s) - - -def _b64_decode_bytes(b): - return base64.b64decode(b.encode("ascii")) - - -def _b64_decode_str(s): - return _b64_decode_bytes(s).decode("utf8") - - -class Serializer(object): - - def dumps(self, request, response, body=None): - response_headers = CaseInsensitiveDict(response.headers) - - if body is None: - body = response.read(decode_content=False) - - # NOTE: 99% sure this is dead code. I'm only leaving it - # here b/c I don't have a test yet to prove - # it. Basically, before using - # `cachecontrol.filewrapper.CallbackFileWrapper`, - # this made an effort to reset the file handle. The - # `CallbackFileWrapper` short circuits this code by - # setting the body as the content is consumed, the - # result being a `body` argument is *always* passed - # into cache_response, and in turn, - # `Serializer.dump`. - response._fp = io.BytesIO(body) - - data = { - "response": { - "body": _b64_encode_bytes(body), - "headers": dict( - (_b64_encode(k), _b64_encode(v)) - for k, v in response.headers.items() - ), - "status": response.status, - "version": response.version, - "reason": _b64_encode_str(response.reason), - "strict": response.strict, - "decode_content": response.decode_content, - }, - } - - # Construct our vary headers - data["vary"] = {} - if "vary" in response_headers: - varied_headers = response_headers['vary'].split(',') - for header in varied_headers: - header = header.strip() - data["vary"][header] = request.headers.get(header, None) - - # Encode our Vary headers to ensure they can be serialized as JSON - data["vary"] = dict( - (_b64_encode(k), _b64_encode(v) if v is not None else v) - for k, v in data["vary"].items() - ) - - return b",".join([ - b"cc=2", - zlib.compress( - json.dumps( - data, separators=(",", ":"), sort_keys=True, - ).encode("utf8"), - ), - ]) - - def loads(self, request, data): - # Short circuit if we've been given an empty set of data - if not data: - return - - # Determine what version of the serializer the data was serialized - # with - try: - ver, data = data.split(b",", 1) - except ValueError: - ver = b"cc=0" - - # Make sure that our "ver" is actually a version and isn't a false - # positive from a , being in the data stream. - if ver[:3] != b"cc=": - data = ver + data - ver = b"cc=0" - - # Get the version number out of the cc=N - ver = ver.split(b"=", 1)[-1].decode("ascii") - - # Dispatch to the actual load method for the given version - try: - return getattr(self, "_loads_v{0}".format(ver))(request, data) - except AttributeError: - # This is a version we don't have a loads function for, so we'll - # just treat it as a miss and return None - return - - def prepare_response(self, request, cached): - """Verify our vary headers match and construct a real urllib3 - HTTPResponse object. - """ - # Special case the '*' Vary value as it means we cannot actually - # determine if the cached response is suitable for this request. - if "*" in cached.get("vary", {}): - return - - # Ensure that the Vary headers for the cached response match our - # request - for header, value in cached.get("vary", {}).items(): - if request.headers.get(header, None) != value: - return - - body_raw = cached["response"].pop("body") - - 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: - return - - # We need to decode the items that we've base64 encoded - cached["response"]["body"] = _b64_decode_bytes( - cached["response"]["body"] - ) - cached["response"]["headers"] = dict( - (_b64_decode_str(k), _b64_decode_str(v)) - for k, v in cached["response"]["headers"].items() - ) - cached["response"]["reason"] = _b64_decode_str( - cached["response"]["reason"], - ) - cached["vary"] = dict( - (_b64_decode_str(k), _b64_decode_str(v) if v is not None else v) - for k, v in cached["vary"].items() - ) - - return self.prepare_response(request, cached) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py b/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py deleted file mode 100644 index ea421aa..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py +++ /dev/null @@ -1,21 +0,0 @@ -from .adapter import CacheControlAdapter -from .cache import DictCache - - -def CacheControl(sess, - cache=None, - cache_etags=True, - serializer=None, - heuristic=None): - - cache = cache or DictCache() - adapter = CacheControlAdapter( - cache, - cache_etags=cache_etags, - serializer=serializer, - heuristic=heuristic, - ) - sess.mount('http://', adapter) - sess.mount('https://', adapter) - - return sess diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py deleted file mode 100644 index 670e6b3..0000000 --- a/env/lib/python3.4/site-packages/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.7' - diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index e59b7a24b1ba11137f47bde8dea409956eb08bb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 420 zcmX|6Jx{|h5IrYOnkKE_H+0L;22rFg72-o;grP_X4_ImA!C=RclTzRhA^wtA#K3}> zneep&%kQ1^r8GzCV1 zpdtVjfsTR2pnJf2pc7yT=svLiP7#7iL1(}+@B6|5R1qxl_>=fga_Xq8W#{5b?5y3{ z;mRmuOI`9#Jas6$FjhEvR<0ggwCJ9daPj%tw#MefWv6v3ug#6Dr-v`m!DKp_UFJiV zVoO;n*$Ruh*${~$MV=fjeVL8X?;#~feavK->C6Tj+H@P?{889enws-BuzM&)`k5D< zZi+@W<7Qt C%4#bB diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-34.pyc deleted file mode 100644 index d758938dca516f9146fa7deac05c82d6af6f98bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3476 zcmd5;TT|Oc6kbWbU}Iwn3G`mK>CJ6px1G+kle8Ud;{d@JieYG+rmA8oAYyE1C30cX zna;p}>GUt{^sViKUit&_)bCpZF_#B;tK|K>=d5%tdoJ34GuiY%%fH|GGbO}dV(5xt zK7$eb4RD2M0S(bIglmeHDO^jmEaAq48y5#y#Uvrzq@KrxJ0jeaaMR)duYeD7RJa*U zCdHha748@x1$rZ5AF@*5=7c-0x#LING`Oz_cS3U~gqPCKj)FTW+$)-U<%pXB_o{HG zGP6!Rhp*W?_BD?>e2Jm~MLBjr>*^_HUF*Ubpzf zf9Ur;*LR9NxmhArqFmbx+D_lIDKx!jzHt}h-U}nyHn8u!_-|oUF@gy|h@T;z3$bsA zX~bl@Suh*Q*eRIGsx}vt6@;>2s2C;wA!Guty!fUR?(|E2zkmJyuHSL5Z{PQJp>X1I_Zetu@^mzs& zcoX0umr;a36rrw0mLE#dLJG%Js*Jc*;a+fTGCgM!R4HN=@N|*U86?o`z3;@Y$R}oxzIa9u5V98zY%?auVagq8sq^wYm#lUS;(ric5zn* zJsGhDw3!9G_|K5)a1QkY9lN1^P(G1?rlfDm=nna=Yt39=`2Z`2$-b9;skXSja%rWN zbCk+!kbhcjY<790@zIdt+>m0fU0QYZqNW8>l6m6i`AjT{&@GEeX*=IVE|5KwY&^NGZ|6VIwVC z85UIwXN?R$|2TBCaKac9t#N^)Mhjp4anYI(IAFAJnwUV$tMxaX(>n36jM>rgb=q}+W!aV}JL}U|wAvl0W;mWDaRPjn30aw;)ZC1tSR%^9} zO5CZ{>&qJ|R;jPoRC1|2S8J@5Rjhia+)(k2`GvKbim%q1wKbKkFU-xaX%TkqM>VQR zh$1mq(;`WZ>9v7q(wW0o*K4G5nmSbVa+xYg4Pm*0= z`TuJIRGjw1h{+wXM?}oMFO)vqSKK}K-P-r0b!G{MeqsRgol8$2_P$A zOV+oXCDaJF2y=va!UEwoVUbWLED;)nWx@*K2LeCv=LV>W1hg$10LpKr}_bz?LLW*F>VS%CuJ2?81^tG?rJF%5{~}8E=>C^>e-B-m~oV zIpHY%B)N^kgi6}B+iTnQ;1rkwSEdOg1fDA;4|$SbQW91?UBPnfzEtPJj)m5WV{PGzTfB~k|O{{RUr Bbou}Q diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-34.pyc deleted file mode 100644 index 1747b18295026f6a3dab0cf371e01d2b980d7b72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7951 zcmaJ`%WvGq86T4S-qqWdEk6>*Nn>ql%ZVMNKpMo6CE0Nz%c&(tv0{gzmz1;;ms}6I zu_V}s!s(^2TYIVtv_R1ZdMX;A?V&}1qKEtkokLNe=pmQp?o)r?H(ZL6m98|iGvB6dwL95m=&A z5Gw`IDTQWKrJSgGr=q6iwIGayz5L}yT} z3<8Q%D#9P2(>JR^{#f``@d#*CLa4Yy-QZ|UeWhY39sl`!N8 z>Vxs0z(^kd=xB;QNTqMkCbYMkrX0XjIf|-j$U$lo;<}=E6nwB490j4JQs*E~z$4}NH&pv%$wiAD{dHRfff4z;9+Oh5VfxqS^zGo+q9rYyd zH4}xO_%iXO-45f#4O{*c!&??!fj;z2PcwrOkE42E5Fs2iOm6TqEjEn>@X`@y&($60 zKEHvdCiV}s^tq7)&lh4pSXJfz+-f@J%cltGIPI{VILaUvop=Quu1%_WFIz?9^-Tli?O{}@CFObvZ^=^ zUB+=#&2c)B*9)lKaGZNRH%Ldyj^jlw$C1adp*%?yZJ#@mWs4qB681+?;tHxpv1Bw# z4U3^I0J2XJt+!C(zoL3tuKa@7fE1Z@d8qZYYjL;ClE%W8>SbtMDCJBqS4F0lq4qOn z4CU_)3U7!-6dHP1cq80~(jOJx7`HLuknj$38@hg6ct^O6$w!4Z!R-;@9TVPhZew8q zq&cDLq_&qL=;sUPcmB-Ma<$V9{0^j*gg2ADzA&-`p0T6Q#u_iWA44eHK|rdY-LF{LO8gI0yV{|UYKH`Bf>j12jTDC^5>0ZLUsF6R ziU&mzT@*=)jPS#fcmQ21#AZdvd*VS!bT>s(Ww}~U}HM%S|xRquKN|O zi+-M8hfaUpLz9b<`VnA#R5)K3ebEGE643p-tB%W7Qx0k@0$9}>b z&vr+dQ7lhjRMx2?+a}4(s3KEZl~d}dA?O8%iQ+IV*qmQDpLVQxJ0>gaK>@026vBE^ zvsq@1#K+4f?LA4=i*!H@v#=lWmO7+Qi9u;6?sdBnw7ZuRV3u7H?^jV`Y6!DxRjpBT zs5oRbjOUFi>QktPterzSUf)%$d544AOnoxgcrGZjZr@a=4c4$O)U9A{Bx|@Ndp>b; zvJS)43S1a5G#~*`MZvZm`o8CTQ})$Wd({nM{|qs7NL9-F*+zI-I4fG7!YHxt!YHn; z`Vb}Wj2*&gvZQGN;J2n3?Ktkyc&x>P5Mtv)_E+0u!iKiXFp?0-wj`XE2xZ=N%@2La z_}=w1gf0`lBk4NAekwM$X2&x{hN4>yfLwytD+LTpx zj^qiSo3qDREA(j(Axvp6dsboy)a@4q8XKlqHAG^Gje>ZM`b84-jj~uZ8CuRmD}8A7 zKxjonYa*$OjRwz!m^Sjz!9H{_4;|`5hw{+jK6E$_9qB_y^3c&fbTkhg>qE!#&_jLb z;XagJ0GN*V`x<|^m8;N&7&ww2fLY20j^+oThO&W)`~VDAHgGII0PB?v9M2EHlw|`a z@&g>Zq*$HI55Q7pE1uB<&*tc0XLQg|O$R_zI%ue-1E47#G*r_8(3B1us_6h|N(T+q zbO1D^gNAB40GiT4Lp2=$P3iC~b0YdF9rP@C2l`?dNa>&lGCE)&rGp;G=zxKg4tgM? z0|rt$=z)w57)a@$2QoTfAfotFR9YP^&8iw=an^k^_nU`Tltb4 zJ5{_iKRxrVgoF!a-I$wI#Va@F<`6;Nnwy`$zN`wD=5Nla^0nzJa|=t;sxWhFdO;O1 z=awoizkPLSP8IoJH84--@NUlB2dd6pY)BnF#v4<2kjL}^)NiCqZ_ZI~h%p1C=m_49gfc#t-}(HYWD{?Vq=Q#xZl} zcwV9Iv;PN22e*KSHmLC^H=tKfaf3Z73KqhX+-LQg#t*at{UY&&L7kG2H+fc>L6qZ2 zLyU^{Ajp?cBOE3;a4?+wW>9X-smdz+FkC|-)zEcAHLRH(URgUt3T-PjlofsGn+mfDrKO0vme>SGzLqkJPGV^IcT6!sJg?aZt`|7O z$jQ64E7I~hc54=PuO@E;An#DMH+v@E2kf^fF)^($8pPfwp2mOoF|*VWp>Clt`sdNm zh{>sxtqE&Rzz|D=fzjprv7GO!DecLsK}vnVA9s-Kayzm77B)<8pz0b1_6yf2%<6QY z$W$qvx$i>DSok}X^g>mTW#?%ALU~@;bD4}5f27N>TH1tqU801NPE~)(G$M_~N@*74 zz(4M{^{JphnDZLQ9TExOqb{<^M=*Tv6|o$;ybqEd79||;76634GN#Oy7J9G(Yds+ zBzDf`>9CjJQ*Q(jL_dCWDqH!)_~sY1kdHn1K4&pZ_j&%H`@sF~-$&nsljEsE(U*`d zY=8^l1%yQQ>M8M91?(><=?!?Xvfg>OqYBfPW@ceE2*bY7Nqd$mCOxE#ph3Eb`}n!~ z()cl^OY%gdOVvK+{Rpr>pl~Xdr16w-*c>rW8KY(c#;0L4%$;Lj{fHSmQ-&h5K$~EN zl%2s+TQEEZxNr8(N2#&Va!V{W#)693mY9I$fvExCPf!vEEl%8!5<(US4+{~{QvFC6 z50S#bBxHBW;)l>8_r?VNm%}glT*w3V{#hC);%M4*ce!C0;oo^;i6?%}6S3Vv6Cd-$ zGEe-HC*n{{%#fkows;aG2*<9`UHKLj(dPR+sE9h^Q~dVx8sO+rrzT!Q3w`R;xl>Pj z2to0B6SrZEtKuQzQ`lVG7bz*^B(rl(oSQ1OfdvRZXiE~v>;aVsc`@Em#=G(^0g**P ze_9!rlrf`>*=9w4o#5A~qREo-#S=Z|SW7>{*O%+*Tsw!m)9ZD=94nR{CxLwl824#fG*iy#!e%2&~{5eYe z0xDw70T{gjn7d(U*dyqlOv?nmYvyGn?(>Yg>xX4-62%`Gll}sot)Hg+r_CNT)9jt^ zvgZV4$@Y$jV3AWq{LFkx42cdgs1VdS0?h`J?|M-1iohfI`34zD&ErLKDnVTwK%C1e znHZ9WABzOT%*jyXY;f;ACT=E%#zBkC(!vv?EZ2aq)&}Ow=d}_jr*6sh#TmFIup5{` zNf-G6RRL8@)+!M%X(xdXx^vcsJ?#%^!fmS9PP2~qn7RikiW?aC7YbqreAxMT26Si` zLxo}ExUo0E)31uHN@lb2~_lR!jLg!9)7M-Yn(wTH-_=^La8y@ z7?(7&c}PCOmpnri{rUkWh3m#)DhGQU^Gf#K=}jeNsyU$5QE!obN?9W)>B3yLwiMmn uKmt+cb?K~w&{dT;^iL>nl6sFRUV!d}_B~~sFvczX7-BT6Mxjv{ANwDUH-fPM diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-34.pyc deleted file mode 100644 index 10999f7d40c06faf12b94812a9a95d9ff922d70b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1818 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 diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-34.pyc deleted file mode 100644 index 4e0c64aca5eae97b814bf8888af408470fc81688..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4986 zcmd5=OLH5?5$;*+E&y^Vz9f>?!)EL_4&qo!EX7J<#pXj4t(XEGlCn)!DqA3SX@LR( zW_Dp&EU_vT>E@gNK~5?EiTs9~=bFla7oT$SDPQ;OE*@stm0Lh=?@Z6DA7A%0@J%o= z_V3NV?|!vF^e-CtxM(loNj?UN@UN&%bfjocky?)&ic0hX>=MNeJulH-iPj^RB2Tzp z&UL}{DJl!MoO3;jDzsgzo+)fzQ^tGJ>fC(0iB9q1ktI9{lbHBeNU?`=Awr2Dz#dM+ zx!B94J)GguUYT&%UWL!wtMVCpV-!_!(wM1y((0^s+g*Kz{YdlnXAYAR6V~?3W8yO@ zgVbx|rV@so#!(!GW-JVkx>2vq?H~;Q+-tP65pQKRUaV)_r7b-U(? z;kMJK?O2PEDp+^+7m#|**W-BWfXM`i@#~vg50*EKzp{0I{evAdZQtPv479$r`LKSs zueEK>^IAZUrtu`KhgCs%LxQt&mUz-PAR~eU41gk|0{^bG1&IIy^MMcm1E{Fd3xG%9 z7y%ggAEzjw7eEmv;NLPQD7qj_0TMGODVm}efE++&r%h8dBOHv*Qgl%c!ftl-5=C<| z8pxjW6fMZn*!d;lT&C!XOt_G9u2OVOI5_KNie8Zor+CBd+M+1~y*u!DlX1%*elvVm z@g%z-Dbb-4if~kPSfXb{q098p6Y4Twao?A*vT!TXu1b4M+R#Et1Huzdck1H#+Jxo< z&E@qtUF~*~Zady?>NxJK^bQVUeZO+79vhDj}yY<H(O{cdiX^1y;yg1PVV7uSo=tSd z;a79@kMYt!Ve(TZKVz=aZ*sc`crD^pKg*55YZA6Csgvnks$#S$BN*g&A=Youc_z{< zL732X9C{z(2?HJk8XU#}Q}8+askNlmEf0UZi=*Uwji7Y^Ds$EPHD9#Hh0loFAhy72@$wUQjFU&UfG z&POyY8goIb-3|Z~#afRDYpOaHk=pH_v&b$80T6wo7vuMuGKg`07gleg!&WDHT;aTB zg+Eo)5k9&h4DXP>!$U4Gl9t%`n@;FZXLgu5`GC2+1-yb~r9ox&+c*lYc^xn7ABK{o zMeCnm^0;eV<4P=f5)HC&L~(r!lYfCHxd1{E0aeFWmz-I366A>EP5xihW@Okf>Z>h? z98#OJgZ>pyWowNp{SJ8V;`v^sd5b3dmp}Y2e9im*u&*T%u=kL4`%tysE9n~cu!%tA zE@hD<>FZpXZ)3qdJPBX3nWNOnMD8M4Scp3W&EI2wU)(DhG@lb$bf&lx96H6V0Cc`X z+%0hzz~wgX2@E0J9J1l2>NQVa$DWe(^&(o5-Pg9Z%=~t71MI|Kq(!RF;HVjCqMh*{ zH98S0hvC$x*%%vmvZNfSNmWJN5~!2eLeqX+7rA4|Jq&4k=dsvUJ4BO%s6!E;=(ZDz zvMzM9UFhi8>x?f?sK*IazXD>Wq9?08opkj_-K3Sax*elFHEI{BMl$zrc~0dx8ynHa z1e~h#!5vJ^oHtXNgkmQbbCm|Co$tfi+_R>#b7Z)O*K<~V>4I)2A-Zr^A6 z*DU%%-(kaQ<{oMOa5t|V2fqLePDC}TWJhW zm!$V<Jsq$L8_7)Do#Lpl#Hh6F(dW`(=SD9O;QFUT_uoKd580$tdnqW;J+-x^kh7vAG$;}|>%sGq5wpEmCfttZvD7aTu z;PeyL;3fquhobjC*z|vZWdX2HGcabTL@Z0}GH4lW{xI0Slr!+n3fHW~aD`pohctkP zB{v6v_mA&gBInstSo#8l5CUL2AB4r2pv)UZnO=t}YQboF;oC(slJo~mB*)z6mOzZ} zZ2chQwqqXUgpA|G0>o$~L#f!CMz@7X69rje(^B29x{G+|1fT*^81P{%6Y5v X&M=ib_J^bQ*sk(5Y08}&pY#3;1>T+B diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py deleted file mode 100644 index 7877658..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py deleted file mode 100644 index b7ff6f2..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py deleted file mode 100644 index 834962a..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py deleted file mode 100644 index 3d1d2f2..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py +++ /dev/null @@ -1,154 +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.SetConsoleTitleA - _SetConsoleTitleW.argtypes = [ - wintypes.LPCSTR - ] - _SetConsoleTitleW.restype = wintypes.BOOL - - handles = { - STDOUT: _GetStdHandle(STDOUT), - STDERR: _GetStdHandle(STDERR), - } - - def winapi_test(): - handle = handles[STDOUT] - csbi = CONSOLE_SCREEN_BUFFER_INFO() - success = _GetConsoleScreenBufferInfo( - handle, byref(csbi)) - return bool(success) - - def GetConsoleScreenBufferInfo(stream_id=STDOUT): - handle = handles[stream_id] - csbi = CONSOLE_SCREEN_BUFFER_INFO() - success = _GetConsoleScreenBufferInfo( - handle, byref(csbi)) - return csbi - - def SetConsoleTextAttribute(stream_id, attrs): - handle = handles[stream_id] - return _SetConsoleTextAttribute(handle, attrs) - - def SetConsoleCursorPosition(stream_id, position, adjust=True): - position = COORD(*position) - # If the position is out of range, do nothing. - if position.Y <= 0 or position.X <= 0: - return - # Adjust for Windows' SetConsoleCursorPosition: - # 1. being 0-based, while ANSI is 1-based. - # 2. expecting (x,y), while ANSI uses (y,x). - adjusted_position = COORD(position.Y - 1, position.X - 1) - if adjust: - # Adjust for viewport's scroll position - sr = GetConsoleScreenBufferInfo(STDOUT).srWindow - adjusted_position.Y += sr.Top - adjusted_position.X += sr.Left - # Resume normal processing - handle = handles[stream_id] - return _SetConsoleCursorPosition(handle, adjusted_position) - - def FillConsoleOutputCharacter(stream_id, char, length, start): - handle = handles[stream_id] - char = c_char(char.encode()) - length = wintypes.DWORD(length) - num_written = wintypes.DWORD(0) - # Note that this is hard-coded for ANSI (vs wide) bytes. - success = _FillConsoleOutputCharacterA( - handle, char, length, start, byref(num_written)) - return num_written.value - - def FillConsoleOutputAttribute(stream_id, attr, length, start): - ''' FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten )''' - handle = handles[stream_id] - attribute = wintypes.WORD(attr) - length = wintypes.DWORD(length) - num_written = wintypes.DWORD(0) - # Note that this is hard-coded for ANSI (vs wide) bytes. - return _FillConsoleOutputAttribute( - handle, attribute, length, start, byref(num_written)) - - def SetConsoleTitle(title): - return _SetConsoleTitleW(title) diff --git a/env/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py b/env/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py deleted file mode 100644 index 60309d3..0000000 --- a/env/lib/python3.4/site-packages/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/env/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py deleted file mode 100644 index d186b0a..0000000 --- a/env/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012-2016 Vinay Sajip. -# Licensed to the Python Software Foundation under a contributor agreement. -# See LICENSE.txt and CONTRIBUTORS.txt. -# -import logging - -__version__ = '0.2.4' - -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/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-34.pyc b/env/lib/python3.4/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index 7ca80ba7f53c7c48bac7a31583a80522eb336808..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1046 zcma)5&5qMB5FRIK(xxetrP?F+2yKhdN*q9_5>yM)svLTN&BbbCQ_{^JP73UbTejNPv}V z4m)s`Gk8S?G`C^HAnJhZz{&^dzy`>|5XCHP|3FAEy=>hZ-X9*vwD>a^Dr1~g9|guj zq=-GT2>vXzbpL5m)oHSre28UPCq+IDZQbTPpJ$SD?Q@*-`O`F4e}PF$JPQU!v&= z&dNc71kFM=HMJo{P9@XV+Ep?xl-O0RJapCW8w2rx&f2 zO%_LHNqrkPnjHQ89JCb^ej4*nU+qFb~tmM3wr|2=j z(@na={d7BrY3M2&ofL7VS|sQmRY2kfiCu7`5n+b9_o5!`Gco4q3Jpp@`Kg6bjjvtW`)}A5pfv(#}dTl-H|k zEonz<*}wmn@4c#OG-o(#D?$al?0ot1Qbo`1(5tl$OOIp&IEE>#@C*9YbD?S{z;c-`d+~RrHc-%D)xZ(lVe8Lr)MPHIKOB5xPF&f1_JO~4W6@#Dmce=)j7{GquJje%!><0rolTlj$Hf0R~dzWjx5s#T4KO6s;98S6$ zrv}F2gu8J%9)E`Ej6F?8=h=bLd2_?)eA(SNYXkI^cz|}>fV^r0QhQnBwEm!t+ykyL z;+k){;#;oywky8vQWsk%6GHoE83^so>K<2pP-90}d&k{_RNpqr*z2kfxvxW33$6;z zK4RnhmZ!<}9ajFMMr7w)@m-ZXo0R-a)=Dn8>OL!ZpR0Y2e#;(5J3 zpS*rsuh-J<#-dYr!My>RRUdQJ$KBWA3+H_y8ioU|@t$kG?}`_pgb!TpqN_gP?xkJu zN3z6=@4MDfYv@7C_n|8m9X+0P)j4a|oU0YBT_3tPtA||mNlSfF

  • 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%0ABo zbpn4~e>c-Xyd?<`#S+y@vJsYEQMx6FbB}9Ogo`p}Dw5?y&$#dFwiGGcapWvccP(|i z1vYtWHnZ3h=aFY6hFk>&$8~qzEzt~D5k4Z})zu2j+^&!Uk>Oi9;XO{qDMUV7- zj&`V&87EZcx)V#8fx^stU3jC%R2(*^M8vmv*6fFeMf`(#XOmBLE+h^x^v9k|yuyQa zkSqBtb%*@q7lpx4<}2Z!Y}_H)=n@7Ky-1F!jo1n{j!`07>y-b+;4l~n)uJJ`xG(bi z8i^uf!4T!T6du8J*%6xapc?kr#gV$s{+{o40zon#v@KRZqe$k>o&7H@&`&r2WzD&k z-28ZDQ`f0lHLd>QR|Vdqh2KOrB_`1kO=hmef_jhh#a*Kk;bW`NfQmi!&3A?zTH221 zndh_g&Fl-mR&+QbT13yrIi$!Oduz*A*PS0rpFa#nJ%r?hQ`RoIAX0Zr!zXn;dwn8~ z>$6$08;6s_Vu--H#{cDPdR3vkOz|IOlgx`K{umo|^q!;5SRu2J;2Nqm{;)!5Se@S8 z^GPM29#~XU4gre;&STgA{WKP<2XS1-)m&A|dL^dkq0u21TPnX5*0`mzZ>ppRY}Tt^ zq63M->H604Lj`qUBDT0ivs40-<4@~kkr|Ssc%iisxFNXLEBvQbgAKuJDA%`%W3N(e zUc(-`OBW9B(3@a`Ew)|bQ)!p@PIz9BgXcuy?u46*D&Ga5W4{H^WrQIVKo80FCVoOk zfPQhT0d&kR0G%d)x=IC6@m|hq(Gr5REv9K0sbpAbPpJbr6kbA*vFB z=vny=qQBf3qVDwy|02~8LiA(@(fw7M*U;HPbngzm3BGX<&G{n%$Zwj~UO3eP#{rVF z{a2r1RWvYjiDrPPglQF{uZ2+0yWIsAdW)z25wCA+Yg)`_g5rIA(e%9CB%T-Gd6vx8 zBISL&7*t5Sq?ZH;wB)tvio;avHCAgJ0 z)WeFh;par^qW6A_umU*{6ooTZY@^c%}@P?bwtGKm{g4zYKbuV zp{3l;KuuOKK7ZuubuLDTXyKuVadk5xXk?aBnn`U5?Xin?j-mFhJ8%45-ujOFU%Oko zf+D0(tU8lGwUcITf*#>BE(xzuf-;-gAHJ}dvkkZCA_NXF zvGgyCEupNS?w!>VEBE>FV~Nw@mX@dxRn9#N)EBD443^r5+FV|I-Tmt#PifrYYa7pH z>*<<@P+8kp&}g$?zA)BU&^hM)WF;xU&hw_|WW4flBZ=uIC~qAjs_!#pbPqh2@0=-;SV{c`1vd=p=H>*JY?T|37bZ=n0b%K{|> zB49^9f~dA8R&=kdZ=<6M+|3m|Rbr>;hGr^kp>xstWtA`m1h3%+=kJ087Um6&PT15& zCEmoR`MWThS67?fZ^f-Ar z=c0leZ+h1~f?q<{90ZbrMHT`w4e0MpFYtoR6mS(>)3Jg>xaphjn(zEjyorjN!=&yJ zl;tX155RI2zROMjbitt^L; zI?lU9eEKS)*V96Uy{3YCyWj&Cg1q9|+y^Hy`+P9leb9w+L?0tRe5t9r_*9k{-$j*z zWxP=L54QrbSn#SoF+YVvZ3M<7!pzW-zfnd6H@DxhE`k^;fh<40^Ld-2VfFo?Ve?;b zH0%ajp&w(*#QYDosuxSSheua%_UPJGtA zelufIQpWnt3`xh0R`UpIhHTcRHWO!v>;8N|4)Z(6-8k)y{MBHWLMXJ2m;!r(aFmU)1MNJ!+_fAb?zr5(ePN$k< zEfRE=6#n@rk-}Uc?3jgNw8%g?VrX*u%*)krxIR>jmkHq$t-A$Rv49LD3dWKJ$<(J(4Y7(+Vu?kh$ZO?~Pj%N=gC3MCJ{Fj}=ApVFV;3u!FV6@7D6gtYZn zu8P&xEwv>ZEbEu3aVT$E{OZJ)Fq0?Fj6%k?J#S>J;X@$Dvj=%5s`F3x*ur6k%vk&u z$)+17$_c+HehyKYV8VV<{33J8mj?`NXs+>o(u{&V=GCGlgYA@y`T=#F+RiVFrMnZo z9QEG8mu_scjh%4hlKwvSKRFVt7AvYK+`sr`7A%9@elcf}z>@itcjx5Zg&=#FcbVmM zdRe9GbXho-di97wv_2;Mkm;FG;y6i}a#T1Tm0^AQh9PiQiXj_Id9f66z!=eZ0xT6s zPp3qsrMDKuQe8@oi^M_r1g1c9aI{TMMbj^`{SD_}FZvW%5KRlLWJe>Z= zm2H`pn1jemWcWcB@t5qRJkw!PT=>=Rm>6xZnwid~r*cyRi+pRLRIdsb5KHY2qA8}o z_Kl;vmo}XqHvZJmkh!j4%CzOA-mh$4ouBw(cOy^#P%&e$$Ao*&TS!dhAA5}t@kZY5 z4bO40uwd`gwXJ172NM@vlZ8$=>j#ipCiow%HaEr(K5}fpt9q1`Z_WuHzMzM>ZfXjI zs|DF^{)X4Pb~FC-@9N@MVg@sdtR!1eFiTTlj?4fQFZ}p^tp&dl5P~YhRrsJEa518_ z;Ox^QK^d0}E?z>(x_$JJ!#|DhPo$NOWgg;N^(>QN;M+6*Z0CRFBg^?F-XrQ z+*;%U+v%XR{?-ywC;Ix1!~vIkQ)K!X-Hv&dSj&#nW4(x!wzfuzm3!1+id2$4L5t`p;u!HkS(55GzW zJCIR-({3{BblS=2&@fDE4HgNN5ii-yKort?jsG^TH8www@<_RXEA69X}r8A8XDW`$to{fh-h9hFHbQCkj&IBwvX>8c%c zn1Jsu7E#pqNWyNQeYvhT<_CG14|IHS6DN$IVTvSY>R9HEaF~49KGL>jGOE~R2HKHQ ztcsBGrmI7Q{3{Ps`D_wc3CADd{#zJHoQs-~3mN%~Ld2BeW^Kw4(do21nx+pNxq%Rt z&#I(Ly97ionrRTJyWON8%x9(sM*y2FJl9;f6Flo%jHl>i1jnq&zbBj+<)HmD_x7K3 zbk`}nmuFf1H0N&}bvP_{)H3scF3Ww*4TRyAZOMGQC!tb$WG<3xa)zy$hTO8hMaw!| z_Lu5fYW!@_NH1wo?{ceN3(l?jxmMIxy;878H#CHcUiC-Q_x#H>f3H5wu6bD$)uyMp zHUGJne3u@}Nq|MqULX6;MZXW<)THmpt$B$RH*tLR?KNM`lCLiLt`#r-eAg8}2J`uy zR=g3M?_BYp$M^Y;Se$l_w$qX)I5SlE5m62{lM8x6%{wYh>d-o#Thy+;)4&PhxhqYm zO&4~({y)TJzvaqMiYr`qor}wU2{F|F$*DUC@hOkc(NF2YacXN}lAo!(1w~@1!oTni zm6M@cMfC;fcBjU-z#O4m)d|OSkO_bF3&a6!4ipsl-%=Sbsgzndv|ZsS%^M&($H-8c z{z7?Kq^_3b-~8ZHEt15ogtHm!Xx%@_q;0fL#}HO>VYF>f9Qpfn2}Q)V)jBv%ZQGt!G0$_tJsyE zoqlSFI1B1Zv-FGvrXw9an~P+^@CTy$_?R}h{MYnr6J?ElT@})=6+F;U(Kd8DqF*0y zzw6@qZt`Vo>fe*E+o?PY&Y=@zKL4hx5dHv2x6BpgDyfVI-Az@%$H+ zqlVi(&c$U+31cpvuk+?Ct@}zyk@%AH$P<6n8@~MAN1VFnCJ_}_x)QCkHE%gS?{?Gh zgzBE>Pz=DV7HyayNeTYvJbR0Jw81^YxX??!WzSmu{OtCvXaOPD+3Fv&Zvpg&b9be#OK#Jv;id!! z>iRd{o#2|;G`n&c!DJNoue{Zpa+eDCT(2$m{h0UMI)52qYut9~B`*wHeE<+>?=KNA zinhk7qR4p`YwY7x>4b`nmA^fLXfjFJTwlbN zuP%wE=0_9%=pL=#ippmy-QWtH&wM6E%7}qHA%JJeUQWiUdf4IPogMLU$__=l_8Khh2}sIp zF7;Q25C18O$^Av#8;*fHZ`-q0|NS>CVT$3?c-2U`nGa&&Exr`I8EMa2{ojud$>u73 z=p>s~e^D_wmPSa<<}2x1nw1F5I$)rsIqA8srt!QJK|cv|rwb&FakX3@GSRf-%jq^{P5e;C?^!2MAr<3>u!mr3r-CxY|p#}cKcI*><62* zL;9kq>59{Sx{D;*IKx=JSL}6GA_&&n7KK%j@ycvmmdB$g2)8aO77yJ)+ogaS15@v0 z>TA=N#DdZE>sw-mV@rN*Je2lAQ&F9*cEO#2_mG0v4ywOPmqtodI`78w^!rM_BD)|W zpk_02x@k0JOS@ddsPWt*`t(|L7u22?{8ab5GDB9I*C5k?_8R&41q!!62)@A}k0H81 zsp*QZhh`xeYBl;zXY=_pl^6*0v7K+Won01;kntdqxyv{&4J@>T40gb|NYI;CkC()| z+VsUc(E#T>1$zcJ^Svs{thM9a_Wg|WT{0$(D`v@k6+b1GzOkEMbJY59fyR$;**a@a z9bP<^5t}s@#u)~#j*!WGaq%T~G@RNI9m>&jFt{}m8IX?u18HcD|KS^GGMe+^3v0*} zl=;g}=N)#w{LQ%>MSulcNqQ4`?%qhd}NWuxGkp6lCq-u(Ezk+|Qa z*AjX@=wjv&A2jK?9xQYZ7G8Xb*(|WlJ~E44H#&5F_T%5@KK`vM+nD<}We;3dvdo-a z;ngmWIQ;|KA2{D%h(M)}{ppn^kkpNYlO4ddINVp@Yg*So%O7$+<=f>-aHt+x0 zsa#-9kEE!Vl(u;8G;y;B3@~oCShb}KTMjmEb~-=p-0bHg^ofhXyNlfOj_Etv<(_-B zhlO&F#F|~?9y!jp3znC1=j5I$D{6Aj0503*o<6$!H*ybAklN)Qo%3{*d!!iuPjb&d z8$i3)J6O0iLK zHrz3T{3ot(hAE5GTDoxMK};vl$?7&FmL4(;BeOxgL13vI68;XeU$PZmP4#s*fMIbA z&2~wllqj4sUPd{Nt=uUo?7x*=;%DqCLF{Gp6|Zy*hAgs6X0lu36WiCg5n(6XTn14> zt({hmm;*z}fA+ftk27`^JQk8u#PI@k z$F&O{WtTd^<1{C2WE!PQ4Fpgf4y*oWo;0z%9lHw*DE^XyVjDK{IQERZNOq(eOdP-+ehR3am>URu$Gj1kBJQ~ zcrG8OCK7K9oiBNhEXi!b6Ta+*yx<>w1eR<0T*-2at?ZKz1CU`2tZ^*$55Ex&yY#R> zcRLFO)<27PXKdr!n1i>~v9$O5?WG_=x-fA7WQJ2P^7X_IlR0_(pqYx0tU5nX&n7HT zdrspx->l5l>9O56w`KmJLf4b>d&Jbt2Y}#$!APLDEz6H&ULlK94dfzc?@JRdtp+0? zLM0NbH)FREauQFjgDT?S0wLx;zwReZ#iDYwv1nz!W|jeZ$?H{U#<_$xS~&NB(ZeH( zvx=eYj3s_w;$w4q2%CR4Q_69koWFWPuLq2F)G z_y0Ov1=o9zm>NHrywv0ZS!-^kb9;h&$Pl~HvSofr z_b-q@Ci5(B`nWx78_(*3!BzhvZ~9q#@SAVh%0>{WCDo_Yo3VKA@iqj1;U0W{Hx!gc z2v#WbEv^oQ->jRO*i77;V|e1-xsGZRoAEkRI-ta60_>q-o5FRhaa_KC))EuoY?{;7 z0h#cvwrQr1KT{hzw6Z?d-7rgu)4UmbHkF+
    ;;>qvzPnb~~fHKoO@(~_oQA{2uC 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
    MoWQF|_Bq_SuLGnH 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 psSIM9R@rMl;h)b^|a5N%m1FH{hGH3909-Kq< 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