Showing preview only (5,562K chars total). Download the full file or copy to clipboard to get everything.
Repository: hengxuZ/spot-trend-grid
Branch: master
Commit: e3e076fab61d
Files: 471
Total size: 5.2 MB
Directory structure:
gitextract_920zid03/
├── .idea/
│ ├── encodings.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── spot-trend-grid.iml
│ ├── vcs.xml
│ └── workspace.xml
├── LICENSE
├── README.en.md
├── README.md
├── __init__.py
├── app/
│ ├── BinanceAPI.py
│ ├── __init__.py
│ ├── authorization.py
│ └── dingding.py
├── data/
│ ├── __init__.py
│ ├── calcIndex.py
│ ├── data.json
│ └── runBetData.py
├── dev-ReadMe.md
├── run.py
└── venv/
├── bin/
│ ├── Activate.ps1
│ ├── activate
│ ├── activate.csh
│ ├── activate.fish
│ ├── chardetect
│ ├── easy_install
│ ├── easy_install-3.8
│ ├── pip
│ ├── pip3
│ ├── pip3.8
│ ├── python
│ ├── python3
│ └── python3.8
├── lib/
│ └── python3.8/
│ └── site-packages/
│ ├── certifi/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── cacert.pem
│ │ └── core.py
│ ├── certifi-2020.11.8.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── chardet/
│ │ ├── __init__.py
│ │ ├── big5freq.py
│ │ ├── big5prober.py
│ │ ├── chardistribution.py
│ │ ├── charsetgroupprober.py
│ │ ├── charsetprober.py
│ │ ├── cli/
│ │ │ ├── __init__.py
│ │ │ └── chardetect.py
│ │ ├── codingstatemachine.py
│ │ ├── compat.py
│ │ ├── cp949prober.py
│ │ ├── enums.py
│ │ ├── escprober.py
│ │ ├── escsm.py
│ │ ├── eucjpprober.py
│ │ ├── euckrfreq.py
│ │ ├── euckrprober.py
│ │ ├── euctwfreq.py
│ │ ├── euctwprober.py
│ │ ├── gb2312freq.py
│ │ ├── gb2312prober.py
│ │ ├── hebrewprober.py
│ │ ├── jisfreq.py
│ │ ├── jpcntx.py
│ │ ├── langbulgarianmodel.py
│ │ ├── langcyrillicmodel.py
│ │ ├── langgreekmodel.py
│ │ ├── langhebrewmodel.py
│ │ ├── langhungarianmodel.py
│ │ ├── langthaimodel.py
│ │ ├── langturkishmodel.py
│ │ ├── latin1prober.py
│ │ ├── mbcharsetprober.py
│ │ ├── mbcsgroupprober.py
│ │ ├── mbcssm.py
│ │ ├── sbcharsetprober.py
│ │ ├── sbcsgroupprober.py
│ │ ├── sjisprober.py
│ │ ├── universaldetector.py
│ │ ├── utf8prober.py
│ │ └── version.py
│ ├── chardet-3.0.4.dist-info/
│ │ ├── DESCRIPTION.rst
│ │ ├── INSTALLER
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ ├── entry_points.txt
│ │ ├── metadata.json
│ │ └── top_level.txt
│ ├── easy-install.pth
│ ├── idna/
│ │ ├── __init__.py
│ │ ├── codec.py
│ │ ├── compat.py
│ │ ├── core.py
│ │ ├── idnadata.py
│ │ ├── intranges.py
│ │ ├── package_data.py
│ │ └── uts46data.py
│ ├── idna-2.10.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE.rst
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── pip-10.0.1-py3.8.egg/
│ │ ├── EGG-INFO/
│ │ │ ├── PKG-INFO
│ │ │ ├── SOURCES.txt
│ │ │ ├── dependency_links.txt
│ │ │ ├── entry_points.txt
│ │ │ ├── not-zip-safe
│ │ │ ├── requires.txt
│ │ │ └── top_level.txt
│ │ └── pip/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── _internal/
│ │ │ ├── __init__.py
│ │ │ ├── basecommand.py
│ │ │ ├── baseparser.py
│ │ │ ├── build_env.py
│ │ │ ├── cache.py
│ │ │ ├── cmdoptions.py
│ │ │ ├── commands/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── check.py
│ │ │ │ ├── completion.py
│ │ │ │ ├── configuration.py
│ │ │ │ ├── download.py
│ │ │ │ ├── freeze.py
│ │ │ │ ├── hash.py
│ │ │ │ ├── help.py
│ │ │ │ ├── install.py
│ │ │ │ ├── list.py
│ │ │ │ ├── search.py
│ │ │ │ ├── show.py
│ │ │ │ ├── uninstall.py
│ │ │ │ └── wheel.py
│ │ │ ├── compat.py
│ │ │ ├── configuration.py
│ │ │ ├── download.py
│ │ │ ├── exceptions.py
│ │ │ ├── index.py
│ │ │ ├── locations.py
│ │ │ ├── models/
│ │ │ │ ├── __init__.py
│ │ │ │ └── index.py
│ │ │ ├── operations/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── check.py
│ │ │ │ ├── freeze.py
│ │ │ │ └── prepare.py
│ │ │ ├── pep425tags.py
│ │ │ ├── req/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── req_file.py
│ │ │ │ ├── req_install.py
│ │ │ │ ├── req_set.py
│ │ │ │ └── req_uninstall.py
│ │ │ ├── resolve.py
│ │ │ ├── status_codes.py
│ │ │ ├── utils/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── appdirs.py
│ │ │ │ ├── deprecation.py
│ │ │ │ ├── encoding.py
│ │ │ │ ├── filesystem.py
│ │ │ │ ├── glibc.py
│ │ │ │ ├── hashes.py
│ │ │ │ ├── logging.py
│ │ │ │ ├── misc.py
│ │ │ │ ├── outdated.py
│ │ │ │ ├── packaging.py
│ │ │ │ ├── setuptools_build.py
│ │ │ │ ├── temp_dir.py
│ │ │ │ ├── typing.py
│ │ │ │ └── ui.py
│ │ │ ├── vcs/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── bazaar.py
│ │ │ │ ├── git.py
│ │ │ │ ├── mercurial.py
│ │ │ │ └── subversion.py
│ │ │ └── wheel.py
│ │ └── _vendor/
│ │ ├── __init__.py
│ │ ├── appdirs.py
│ │ ├── cachecontrol/
│ │ │ ├── __init__.py
│ │ │ ├── _cmd.py
│ │ │ ├── adapter.py
│ │ │ ├── cache.py
│ │ │ ├── caches/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── file_cache.py
│ │ │ │ └── redis_cache.py
│ │ │ ├── compat.py
│ │ │ ├── controller.py
│ │ │ ├── filewrapper.py
│ │ │ ├── heuristics.py
│ │ │ ├── serialize.py
│ │ │ └── wrapper.py
│ │ ├── certifi/
│ │ │ ├── __init__.py
│ │ │ ├── __main__.py
│ │ │ ├── cacert.pem
│ │ │ └── core.py
│ │ ├── chardet/
│ │ │ ├── __init__.py
│ │ │ ├── big5freq.py
│ │ │ ├── big5prober.py
│ │ │ ├── chardistribution.py
│ │ │ ├── charsetgroupprober.py
│ │ │ ├── charsetprober.py
│ │ │ ├── cli/
│ │ │ │ ├── __init__.py
│ │ │ │ └── chardetect.py
│ │ │ ├── codingstatemachine.py
│ │ │ ├── compat.py
│ │ │ ├── cp949prober.py
│ │ │ ├── enums.py
│ │ │ ├── escprober.py
│ │ │ ├── escsm.py
│ │ │ ├── eucjpprober.py
│ │ │ ├── euckrfreq.py
│ │ │ ├── euckrprober.py
│ │ │ ├── euctwfreq.py
│ │ │ ├── euctwprober.py
│ │ │ ├── gb2312freq.py
│ │ │ ├── gb2312prober.py
│ │ │ ├── hebrewprober.py
│ │ │ ├── jisfreq.py
│ │ │ ├── jpcntx.py
│ │ │ ├── langbulgarianmodel.py
│ │ │ ├── langcyrillicmodel.py
│ │ │ ├── langgreekmodel.py
│ │ │ ├── langhebrewmodel.py
│ │ │ ├── langhungarianmodel.py
│ │ │ ├── langthaimodel.py
│ │ │ ├── langturkishmodel.py
│ │ │ ├── latin1prober.py
│ │ │ ├── mbcharsetprober.py
│ │ │ ├── mbcsgroupprober.py
│ │ │ ├── mbcssm.py
│ │ │ ├── sbcharsetprober.py
│ │ │ ├── sbcsgroupprober.py
│ │ │ ├── sjisprober.py
│ │ │ ├── universaldetector.py
│ │ │ ├── utf8prober.py
│ │ │ └── version.py
│ │ ├── colorama/
│ │ │ ├── __init__.py
│ │ │ ├── ansi.py
│ │ │ ├── ansitowin32.py
│ │ │ ├── initialise.py
│ │ │ ├── win32.py
│ │ │ └── winterm.py
│ │ ├── distlib/
│ │ │ ├── __init__.py
│ │ │ ├── _backport/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── misc.py
│ │ │ │ ├── shutil.py
│ │ │ │ ├── sysconfig.cfg
│ │ │ │ ├── sysconfig.py
│ │ │ │ └── tarfile.py
│ │ │ ├── compat.py
│ │ │ ├── database.py
│ │ │ ├── index.py
│ │ │ ├── locators.py
│ │ │ ├── manifest.py
│ │ │ ├── markers.py
│ │ │ ├── metadata.py
│ │ │ ├── resources.py
│ │ │ ├── scripts.py
│ │ │ ├── util.py
│ │ │ ├── version.py
│ │ │ └── wheel.py
│ │ ├── distro.py
│ │ ├── html5lib/
│ │ │ ├── __init__.py
│ │ │ ├── _ihatexml.py
│ │ │ ├── _inputstream.py
│ │ │ ├── _tokenizer.py
│ │ │ ├── _trie/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _base.py
│ │ │ │ ├── datrie.py
│ │ │ │ └── py.py
│ │ │ ├── _utils.py
│ │ │ ├── constants.py
│ │ │ ├── filters/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── alphabeticalattributes.py
│ │ │ │ ├── base.py
│ │ │ │ ├── inject_meta_charset.py
│ │ │ │ ├── lint.py
│ │ │ │ ├── optionaltags.py
│ │ │ │ ├── sanitizer.py
│ │ │ │ └── whitespace.py
│ │ │ ├── html5parser.py
│ │ │ ├── serializer.py
│ │ │ ├── treeadapters/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── genshi.py
│ │ │ │ └── sax.py
│ │ │ ├── treebuilders/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── dom.py
│ │ │ │ ├── etree.py
│ │ │ │ └── etree_lxml.py
│ │ │ └── treewalkers/
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── dom.py
│ │ │ ├── etree.py
│ │ │ ├── etree_lxml.py
│ │ │ └── genshi.py
│ │ ├── idna/
│ │ │ ├── __init__.py
│ │ │ ├── codec.py
│ │ │ ├── compat.py
│ │ │ ├── core.py
│ │ │ ├── idnadata.py
│ │ │ ├── intranges.py
│ │ │ ├── package_data.py
│ │ │ └── uts46data.py
│ │ ├── ipaddress.py
│ │ ├── lockfile/
│ │ │ ├── __init__.py
│ │ │ ├── linklockfile.py
│ │ │ ├── mkdirlockfile.py
│ │ │ ├── pidlockfile.py
│ │ │ ├── sqlitelockfile.py
│ │ │ └── symlinklockfile.py
│ │ ├── msgpack/
│ │ │ ├── __init__.py
│ │ │ ├── _version.py
│ │ │ ├── exceptions.py
│ │ │ └── fallback.py
│ │ ├── packaging/
│ │ │ ├── __about__.py
│ │ │ ├── __init__.py
│ │ │ ├── _compat.py
│ │ │ ├── _structures.py
│ │ │ ├── markers.py
│ │ │ ├── requirements.py
│ │ │ ├── specifiers.py
│ │ │ ├── utils.py
│ │ │ └── version.py
│ │ ├── pkg_resources/
│ │ │ ├── __init__.py
│ │ │ └── py31compat.py
│ │ ├── progress/
│ │ │ ├── __init__.py
│ │ │ ├── bar.py
│ │ │ ├── counter.py
│ │ │ ├── helpers.py
│ │ │ └── spinner.py
│ │ ├── pyparsing.py
│ │ ├── pytoml/
│ │ │ ├── __init__.py
│ │ │ ├── core.py
│ │ │ ├── parser.py
│ │ │ └── writer.py
│ │ ├── requests/
│ │ │ ├── __init__.py
│ │ │ ├── __version__.py
│ │ │ ├── _internal_utils.py
│ │ │ ├── adapters.py
│ │ │ ├── api.py
│ │ │ ├── auth.py
│ │ │ ├── certs.py
│ │ │ ├── compat.py
│ │ │ ├── cookies.py
│ │ │ ├── exceptions.py
│ │ │ ├── help.py
│ │ │ ├── hooks.py
│ │ │ ├── models.py
│ │ │ ├── packages.py
│ │ │ ├── sessions.py
│ │ │ ├── status_codes.py
│ │ │ ├── structures.py
│ │ │ └── utils.py
│ │ ├── retrying.py
│ │ ├── six.py
│ │ ├── urllib3/
│ │ │ ├── __init__.py
│ │ │ ├── _collections.py
│ │ │ ├── connection.py
│ │ │ ├── connectionpool.py
│ │ │ ├── contrib/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _securetransport/
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── bindings.py
│ │ │ │ │ └── low_level.py
│ │ │ │ ├── appengine.py
│ │ │ │ ├── ntlmpool.py
│ │ │ │ ├── pyopenssl.py
│ │ │ │ ├── securetransport.py
│ │ │ │ └── socks.py
│ │ │ ├── exceptions.py
│ │ │ ├── fields.py
│ │ │ ├── filepost.py
│ │ │ ├── packages/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── backports/
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ └── makefile.py
│ │ │ │ ├── ordered_dict.py
│ │ │ │ ├── six.py
│ │ │ │ └── ssl_match_hostname/
│ │ │ │ ├── __init__.py
│ │ │ │ └── _implementation.py
│ │ │ ├── poolmanager.py
│ │ │ ├── request.py
│ │ │ ├── response.py
│ │ │ └── util/
│ │ │ ├── __init__.py
│ │ │ ├── connection.py
│ │ │ ├── request.py
│ │ │ ├── response.py
│ │ │ ├── retry.py
│ │ │ ├── selectors.py
│ │ │ ├── ssl_.py
│ │ │ ├── timeout.py
│ │ │ ├── url.py
│ │ │ └── wait.py
│ │ └── webencodings/
│ │ ├── __init__.py
│ │ ├── labels.py
│ │ ├── mklabels.py
│ │ ├── tests.py
│ │ └── x_user_defined.py
│ ├── requests/
│ │ ├── __init__.py
│ │ ├── __version__.py
│ │ ├── _internal_utils.py
│ │ ├── adapters.py
│ │ ├── api.py
│ │ ├── auth.py
│ │ ├── certs.py
│ │ ├── compat.py
│ │ ├── cookies.py
│ │ ├── exceptions.py
│ │ ├── help.py
│ │ ├── hooks.py
│ │ ├── models.py
│ │ ├── packages.py
│ │ ├── sessions.py
│ │ ├── status_codes.py
│ │ ├── structures.py
│ │ └── utils.py
│ ├── requests-2.25.0.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── setuptools-39.1.0-py3.8.egg
│ ├── setuptools.pth
│ ├── urllib3/
│ │ ├── __init__.py
│ │ ├── _collections.py
│ │ ├── _version.py
│ │ ├── connection.py
│ │ ├── connectionpool.py
│ │ ├── contrib/
│ │ │ ├── __init__.py
│ │ │ ├── _appengine_environ.py
│ │ │ ├── _securetransport/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── bindings.py
│ │ │ │ └── low_level.py
│ │ │ ├── appengine.py
│ │ │ ├── ntlmpool.py
│ │ │ ├── pyopenssl.py
│ │ │ ├── securetransport.py
│ │ │ └── socks.py
│ │ ├── exceptions.py
│ │ ├── fields.py
│ │ ├── filepost.py
│ │ ├── packages/
│ │ │ ├── __init__.py
│ │ │ ├── backports/
│ │ │ │ ├── __init__.py
│ │ │ │ └── makefile.py
│ │ │ ├── six.py
│ │ │ └── ssl_match_hostname/
│ │ │ ├── __init__.py
│ │ │ └── _implementation.py
│ │ ├── poolmanager.py
│ │ ├── request.py
│ │ ├── response.py
│ │ └── util/
│ │ ├── __init__.py
│ │ ├── connection.py
│ │ ├── proxy.py
│ │ ├── queue.py
│ │ ├── request.py
│ │ ├── response.py
│ │ ├── retry.py
│ │ ├── ssl_.py
│ │ ├── ssltransport.py
│ │ ├── timeout.py
│ │ ├── url.py
│ │ └── wait.py
│ └── urllib3-1.26.2.dist-info/
│ ├── INSTALLER
│ ├── LICENSE.txt
│ ├── METADATA
│ ├── RECORD
│ ├── WHEEL
│ └── top_level.txt
├── pip-selfcheck.json
└── pyvenv.cfg
================================================
FILE CONTENTS
================================================
================================================
FILE: .idea/encodings.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
</project>
================================================
FILE: .idea/misc.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7 (spot-trend-grid) (2)" project-jdk-type="Python SDK" />
</project>
================================================
FILE: .idea/modules.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/spot-trend-grid.iml" filepath="$PROJECT_DIR$/.idea/spot-trend-grid.iml" />
</modules>
</component>
</project>
================================================
FILE: .idea/spot-trend-grid.iml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="TestRunnerService">
<option name="PROJECT_TEST_RUNNER" value="Unittests" />
</component>
</module>
================================================
FILE: .idea/vcs.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
================================================
FILE: .idea/workspace.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="1454a47d-7125-4cb7-9357-2aa664e2ddbe" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/run.py" beforeDir="false" afterPath="$PROJECT_DIR$/run.py" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="CoverageDataManager">
<SUITE FILE_PATH="coverage/spot_trend_grid$create_data.coverage" NAME="create_data Coverage Results" MODIFIED="1621747781470" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
<SUITE FILE_PATH="coverage/spot_trend_grid$run.coverage" NAME="run Coverage Results" MODIFIED="1631886798550" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/data/data.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="212">
<caret line="18" column="21" lean-forward="true" selection-start-line="18" selection-start-column="21" selection-end-line="18" selection-end-column="21" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/run.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="252">
<caret line="56" column="108" lean-forward="true" selection-start-line="56" selection-start-column="108" selection-end-line="56" selection-end-column="108" />
<folding>
<element signature="e#24#61#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/data/runBetData.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="480">
<caret line="34" column="8" selection-start-line="34" selection-start-column="8" selection-end-line="34" selection-end-column="8" />
<folding>
<element signature="e#24#61#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/app/dingding.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="129">
<caret line="31" column="16" lean-forward="true" selection-start-line="31" selection-start-column="16" selection-end-line="31" selection-end-column="16" />
<folding>
<element signature="e#0#20#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/app/BinanceAPI.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="198">
<caret line="60" column="8" selection-start-line="60" selection-start-column="8" selection-end-line="60" selection-end-column="8" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/app/authorization.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="120">
<caret line="8" selection-start-line="8" selection-end-line="8" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/README.md">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
<state split_layout="FIRST">
<first_editor relative-caret-position="1515">
<caret line="101" column="5" lean-forward="true" selection-start-line="101" selection-start-column="5" selection-end-line="101" selection-end-column="5" />
</first_editor>
<second_editor />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/data/calcIndex.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1260">
<caret line="87" selection-start-line="87" selection-end-line="87" />
<folding>
<element signature="e#0#37#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FindInProjectRecents">
<findStrings>
<find>_get</find>
<find>dingding_warn</find>
<find>coin</find>
<find>set_future_step</find>
<find>set_step</find>
<find>get_recode</find>
<find>set</find>
<find>set_record_price</find>
<find>get_record_price</find>
<find>get_record</find>
<find>modify_price</find>
<find>set_ratio</find>
<find>future_buy_price</find>
<find>data_json[</find>
<find>get_coin</find>
<find>get_ticker_price</find>
<find>ticker/price</find>
<find>data_json['</find>
<find>res['orderId']</find>
<find>get_cointype</find>
</findStrings>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/data/calcIndex.py" />
<option value="$PROJECT_DIR$/create_data.py" />
<option value="$PROJECT_DIR$/app/BinanceAPI.py" />
<option value="$PROJECT_DIR$/data/runBetData.py" />
<option value="$PROJECT_DIR$/data/data.json" />
<option value="$PROJECT_DIR$/app/authorization.py" />
<option value="$PROJECT_DIR$/README.md" />
<option value="$PROJECT_DIR$/app/dingding.py" />
<option value="$PROJECT_DIR$/run.py" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="y" value="25" />
<option name="width" value="1440" />
<option name="height" value="875" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="spot-trend-grid" type="b2602c69:ProjectViewProjectNode" />
<item name="spot-trend-grid" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="spot-trend-grid" type="b2602c69:ProjectViewProjectNode" />
<item name="spot-trend-grid" type="462c0819:PsiDirectoryNode" />
<item name="app" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="spot-trend-grid" type="b2602c69:ProjectViewProjectNode" />
<item name="spot-trend-grid" type="462c0819:PsiDirectoryNode" />
<item name="data" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager" selected="Python.run">
<configuration name="create_data" type="PythonConfigurationType" factoryName="Python" nameIsGenerated="true">
<module name="spot-trend-grid" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="$PROJECT_DIR$/venv/bin/python" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="false" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/create_data.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="run" type="PythonConfigurationType" factoryName="Python" nameIsGenerated="true">
<module name="spot-trend-grid" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="$PROJECT_DIR$/venv/bin/python" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="false" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/run.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<list>
<item itemvalue="Python.create_data" />
<item itemvalue="Python.run" />
</list>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="1454a47d-7125-4cb7-9357-2aa664e2ddbe" name="Default Changelist" comment="" />
<created>1621255024032</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1621255024032</updated>
<workItem from="1621255025323" duration="5735000" />
<workItem from="1621686408326" duration="2581000" />
<workItem from="1621732179027" duration="6401000" />
<workItem from="1623162203993" duration="9107000" />
<workItem from="1623510037111" duration="323000" />
<workItem from="1625036138538" duration="946000" />
<workItem from="1625113621202" duration="313000" />
<workItem from="1625119680214" duration="1304000" />
<workItem from="1625133644665" duration="323000" />
<workItem from="1625134615728" duration="264000" />
<workItem from="1625135454215" duration="245000" />
<workItem from="1630735055975" duration="5891000" />
<workItem from="1632193463065" duration="2000" />
<workItem from="1635301842176" duration="1370000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="35841000" />
</component>
<component name="ToolWindowManager">
<frame x="0" y="25" width="1440" height="875" extended-state="6" />
<editor active="true" />
<layout>
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.16523606" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Favorites" order="2" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" weight="0.32877752" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.3976834" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
<window_info anchor="bottom" id="Version Control" order="8" />
<window_info anchor="bottom" id="Database Changes" order="9" />
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
<window_info active="true" anchor="bottom" id="Terminal" order="11" visible="true" weight="0.32689834" />
<window_info anchor="bottom" id="Python Console" order="12" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="SciView" order="3" />
<window_info anchor="right" id="Database" order="4" />
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/app/BinanceAPI.py</url>
<line>168</line>
<option name="timeStamp" value="22" />
</line-breakpoint>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/app/dingding.py</url>
<line>18</line>
<option name="timeStamp" value="26" />
</line-breakpoint>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/app/dingding.py</url>
<line>62</line>
<option name="timeStamp" value="30" />
</line-breakpoint>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/app/BinanceAPI.py</url>
<line>37</line>
<option name="timeStamp" value="31" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
<component name="debuggerHistoryManager">
<expressions id="evaluateExpression">
<expression>
<expression-string>quantity</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>error_info</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>e</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>Exception</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>res</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>'code' in res</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>'orderId' in res</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>res.has_key("code")</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>res.has_key("orderId")</expression-string>
<language-id>Python</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
</expressions>
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/venv/lib/python3.8/site-packages/requests/api.py" />
<entry file="file:///Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/codecs.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="69">
<caret line="309" selection-start-line="309" selection-end-line="309" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/dev-ReadMe.md">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
<state split_layout="SPLIT">
<first_editor />
<second_editor />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/authplan.py" />
<entry file="file://$PROJECT_DIR$/create_data.py" />
<entry file="file:///Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/_bootlocale.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="660">
<caret line="45" selection-start-line="45" selection-end-line="45" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/data/runBetData.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="480">
<caret line="34" column="8" selection-start-line="34" selection-start-column="8" selection-end-line="34" selection-end-column="8" />
<folding>
<element signature="e#24#61#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/app/authorization.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="120">
<caret line="8" selection-start-line="8" selection-end-line="8" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/README.md">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
<state split_layout="FIRST">
<first_editor relative-caret-position="1515">
<caret line="101" column="5" lean-forward="true" selection-start-line="101" selection-start-column="5" selection-end-line="101" selection-end-column="5" />
</first_editor>
<second_editor />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/data/calcIndex.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1260">
<caret line="87" selection-start-line="87" selection-end-line="87" />
<folding>
<element signature="e#0#37#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/data/data.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="212">
<caret line="18" column="21" lean-forward="true" selection-start-line="18" selection-start-column="21" selection-end-line="18" selection-end-column="21" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/app/BinanceAPI.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="198">
<caret line="60" column="8" selection-start-line="60" selection-start-column="8" selection-end-line="60" selection-end-column="8" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/app/dingding.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="129">
<caret line="31" column="16" lean-forward="true" selection-start-line="31" selection-start-column="16" selection-end-line="31" selection-end-column="16" />
<folding>
<element signature="e#0#20#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/run.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="252">
<caret line="56" column="108" lean-forward="true" selection-start-line="56" selection-start-column="108" selection-end-line="56" selection-end-column="108" />
<folding>
<element signature="e#24#61#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
</project>
================================================
FILE: LICENSE
================================================
MIT License
Copyright (c) 2020 幸福村的码农
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.
================================================
FILE: README.en.md
================================================
# 币安量化-网格交易
#### Description
币安交易所-量化交易-网格策略实践
#### Software Architecture
Software architecture description
#### Installation
1. xxxx
2. xxxx
3. xxxx
#### Instructions
1. xxxx
2. xxxx
3. xxxx
#### Contribution
1. Fork the repository
2. Create Feat_xxx branch
3. Commit your code
4. Create Pull Request
#### Gitee Feature
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4. The most valuable open source project [GVP](https://gitee.com/gvp)
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
================================================
FILE: README.md
================================================
如果您想和我一样通过币圈赚到第一桶金?
那么你需要 时间+充足的精力+一点点💰
准备好了吗? 那就进入下方的表格吧(开始你的区块链任务的之旅)
https://docs.google.com/spreadsheets/d/1szV11my3F11HG2kVUt1Bo2a4P7u19fWr4U8mqYzMP_U/edit?usp=sharing
---
### 🎉第二版本🎉 (现货趋势网格)
v2适合震荡上涨的行情
如果您对后面的行情看跌,建议您使用 v4版 [合约开空趋势网格](https://github.com/hengxuZ/future-short-grid)
作者 🔗:https://linktr.ee/erwaplayblockchain
视频教程⬆️ 尽在YouTube discord群链接🔗 ⬆️⬆️
欢迎👏加入discord社群目标:打造一个频道,监控全网。别人知道的消息,你也能够第一时间发现。
前期免费🆓,后期付费进群。收入的费用将成立DAO基金。基金用于购买白名单,nft,奖励对社区有贡献的小伙伴!

---
### 介绍
在第一版本的基础上
**趋势判断,不在固定点位开单,选择更优的开仓点位**
### 优势:🎉
1. 简单易上手
2. 安全(不用将api_secret告诉他人)
### 如何启动
1. 修改app目录下的authorization文件
```
api_key='你的key'
api_secret='你的secret'
dingding_token = '申请钉钉群助手的token' # 强烈建议您使用 (若不会申请,请加我个人微信)
```
如果你还没有币安账号: [注册页面](https://www.binancezh.top/zh-CN/register?ref=OW7U53AB) [免翻墙地址](https://www.binancezh.cc/zh-CN/register?ref=OW7U53AB)
交易返佣20% 注册立刻返现5元,充值交易再返现15元(下方加微信返现)。
或者可以注册火币账号:[注册页面](https://www.huobi.ms/zh-cn/topic/double-reward/?invite_code=w2732223)交易返佣15% 注册立刻返现5元,充值并且交易再返现10元
>交易返佣计算公式:交易金额1W元 * 手续费比率0.1% * 0.02 = 2元(交易1w节约2元)
申请api_key地址: [币安API管理页面](https://www.binance.com/cn/usercenter/settings/api-management)
>申请api_key时一定要勾选上
1.允许现货及杠杆交易
2.允许合约
2. 安装依赖包
'''
pip install requests
'''
3. 修改data/data.json配置文件 (参数详细解读->[一定要看](https://github.com/hengxuZ/binance-quantization/blob/master/dev-ReadMe.md))
```
由于本版本支持多币对,配置文件略有不同
1.coinList中填入你要执行的币对,下方的该币对一一对应配置项
{
"coinList": [
"ETHUSDT",
"BTCUSDT",
"BNBUSDT"
],
"ETHUSDT": { # 每个币对象要一一对应
"runBet": {
"next_buy_price": 3800, # 下次买入价
"grid_sell_price": 4000, # 下次卖出价 (没有仓位,自动更新价格,不做卖出操作)
"step": 0, # 已经购入多少手(根据quantity推算)
"recorded_price": [ # 此项不用管,
]
},
"config": {
"profit_ratio": 2.3, # 此项不用管,根据4小时ART,20根k线计算
"double_throw_ratio": 2.3, # 此项不用管,根据4小时ART,20根k线计算
"quantity": [ # 每次要买入多少 (单次购买0.003个ETH)
0.003
]
}
},
"BTCUSDT": {
"runBet": {
"next_buy_price": 49000.0,
"grid_sell_price": 50000.0,
"step": 0,
"recorded_price": []
},
"config": {
"profit_ratio": 1.7,
"double_throw_ratio": 1.7,
"quantity": [
0.001
]
}
},
"BNBUSDT": {
"runBet": {
"next_buy_price": 450,
"grid_sell_price": 500,
"step": 0,
"recorded_price": []
},
"config": {
"profit_ratio": 2.0,
"double_throw_ratio": 2.0,
"quantity": [
0.02
]
}
}
}
```
4. 运行主文件
```
# nohup python3 run.py > run.log & #后台挂载 程序买卖、异常会通过钉钉通知(推荐使用钉钉模式启动👍)
```
如果您不想那么麻烦,又是python、linux 服务器。可以使用下面链接注册派网。体验网格交易
(通过该链接注册的用户,加我立马返现5元)
### 注意事项(一定要看)
- 由于交易所的api在大陆无法访问,默认运行环境是国外的服务器,默认环境是python3(linux自带的是python2)
- 如果您使用的交易所为币安,那么请保证账户里有足够的bnb
- 手续费足够低
- 确保购买的币种完整(如果没有bnb,比如购买1个eth,其中你只会得到0.999。其中0.001作为手续费支付了)
- 动态百分比可调整(参考atr计算)
- data/runBetData 里的 get_atr(‘时间维度’,‘参考k线数量’)
- 第一版本现货账户保证有足够的U
### 钉钉预警
如果您想使用钉钉通知,那么你需要创建一个钉钉群,然后加入自定义机器人。最后将机器人的token粘贴到authorization文件中的dingding_token
关键词输入:报警
#### 钉钉通知交易截图

#### 25日实战收益

### 私人微信:欢迎志同道合的朋友一同探讨,一起进步。

#### qq群号:1143200770


### 钉钉设置教程

### 免责申明
本项目不构成投资建议,投资者应独立决策并自行承担风险
币圈有风险,入圈须谨慎。
> 🚫风险提示:防范以“虚拟货币”“区块链”名义进行非法集资的风险。
---
- 市价单改为限价单
- 调整set_ratio可配置
- 行情数据使用websocket
- 引入talib指标
================================================
FILE: __init__.py
================================================
================================================
FILE: app/BinanceAPI.py
================================================
# -*- coding: utf-8 -*
import requests, time, hmac, hashlib,json,os
from app.authorization import dingding_token, recv_window,api_secret,api_key
# from app.dingding import Message
# linux
data_path = os.getcwd()+"/data/data.json"
# windows
# data_path = os.getcwd() + "\data\data.json"
try:
from urllib import urlencode
# python3
except ImportError:
from urllib.parse import urlencode
class BinanceAPI(object):
BASE_URL = "https://www.binance.com/api/v1"
FUTURE_URL = "https://fapi.binance.com"
BASE_URL_V3 = "https://api.binance.com/api/v3"
PUBLIC_URL = "https://www.binance.com/exchange/public/product"
def __init__(self, key, secret):
self.key = key
self.secret = secret
def ping(self):
path = "%s/ping" % self.BASE_URL_V3
return requests.get(path, timeout=180, verify=True).json()
def get_ticker_price(self,market,rotate_count=0):
path = "%s/ticker/price" % self.BASE_URL_V3
params = {"symbol":market}
res = self._get_no_sign(path,params)
if res == 443 and rotate_count < 20: # 网络问题并且20次都访问都是443则报错停止运行
rotate_count += 1
time.sleep(20)
self.get_ticker_price(market,rotate_count)
time.sleep(2)
return float(res['price'])
def get_ticker_24hour(self,market):
path = "%s/ticker/24hr" % self.BASE_URL_V3
params = {"symbol":market}
res = self._get_no_sign(path,params)
return res
def get_klines(self, market, interval, limit,startTime=None, endTime=None,rotate_count = 0):
path = "%s/klines" % self.BASE_URL
params = None
if startTime is None:
params = {"symbol": market, "interval":interval, "limit":limit}
else:
params = {"symbol": market,"limit":limit, "interval":interval, "startTime":startTime, "endTime":endTime}
res = self._get_no_sign(path, params)
return res
def buy_limit(self, market, quantity, rate):
path = "%s/order" % self.BASE_URL_V3
params = self._order(market, quantity, "BUY", rate)
return self._post(path, params)
def sell_limit(self, market, quantity, rate):
path = "%s/order" % self.BASE_URL_V3
params = self._order(market, quantity, "SELL", rate)
return self._post(path, params)
def buy_market(self, market, quantity):
path = "%s/order" % self.BASE_URL_V3
params = self._order(market, quantity, "BUY")
return self._post(path, params)
def sell_market(self, market, quantity):
path = "%s/order" % self.BASE_URL_V3
params = self._order(market, quantity, "SELL")
return self._post(path, params)
def get_ticker_24hour(self,market):
path = "%s/ticker/24hr" % self.BASE_URL
params = {"symbol":market}
res = self._get_no_sign(path,params)
return round(float(res['priceChangePercent']),1)
def get_positionInfo(self, symbol):
'''当前持仓交易对信息'''
path = "%s/positionRisk" % self.BASE_URL
params = {"symbol":symbol}
time.sleep(1)
return self._get(path, params)
def get_future_positionInfo(self, symbol):
'''当前期货持仓交易对信息'''
path = "%s/fapi/v2/positionRisk" % self.FUTURE_URL
params = {"symbol":symbol}
res = self._get(path, params)
print(res)
return res
def dingding_warn(self,text):
headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=%s" % dingding_token
json_text = json_text = {
"msgtype": "text",
"at": {
"atMobiles": [
"11111"
],
"isAtAll": False
},
"text": {
"content": text
}
}
requests.post(api_url, json.dumps(json_text), headers=headers).content
def get_cointype(self):
'''读取json文件'''
tmp_json = {}
with open(data_path, 'r') as f:
tmp_json = json.load(f)
f.close()
return tmp_json["config"]["cointype"]
### ----私有函数---- ###
def _order(self, market, quantity, side, price=None):
'''
:param market:币种类型。如:BTCUSDT、ETHUSDT
:param quantity: 购买量
:param side: 订单方向,买还是卖
:param price: 价格
:return:
'''
params = {}
if price is not None:
params["type"] = "LIMIT"
params["price"] = self._format(price)
params["timeInForce"] = "GTC"
else:
params["type"] = "MARKET"
params["symbol"] = market
params["side"] = side
params["quantity"] = '%.8f' % quantity
return params
def _get(self, path, params={}):
params.update({"recvWindow": recv_window})
query = urlencode(self._sign(params))
url = "%s?%s" % (path, query)
header = {"X-MBX-APIKEY": self.key}
res = requests.get(url, headers=header,timeout=30, verify=True).json()
if isinstance(res,dict):
if 'code' in res:
error_info = "报警:做多网格,请求异常.错误原因{info}".format(info=str(res))
self.dingding_warn(error_info)
return res
def _get_no_sign(self, path, params={}):
query = urlencode(params)
url = "%s?%s" % (path, query)
# res = requests.get(url, timeout=10, verify=True).json()
try:
res = requests.get(url, timeout=10, verify=True).json()
if isinstance(res,dict):
if 'code' in res:
error_info = "报警:做多网格,请求异常.错误原因{info}".format( info=str(res))
self.dingding_warn(error_info)
return res
except Exception as e:
if str(e).find("443") != -1: # 网络错误不用报错
return 443
def _sign(self, params={}):
data = params.copy()
ts = int(1000 * time.time())
data.update({"timestamp": ts})
h = urlencode(data)
b = bytearray()
b.extend(self.secret.encode())
signature = hmac.new(b, msg=h.encode('utf-8'), digestmod=hashlib.sha256).hexdigest()
data.update({"signature": signature})
return data
def _post(self, path, params={}):
params.update({"recvWindow": recv_window})
query = self._sign(params)
url = "%s" % (path)
header = {"X-MBX-APIKEY": self.key}
res = requests.post(url, headers=header, data=query, timeout=180, verify=True).json()
if isinstance(res,dict):
if 'code' in res:
error_info = "报警:做多网格,请求异常.错误原因{info}".format( info=str(res))
self.dingding_warn(error_info)
return res
def _format(self, price):
return "{:.8f}".format(price)
if __name__ == "__main__":
instance = BinanceAPI(api_key,api_secret)
# print(instance.buy_limit("EOSUSDT",5,2))
# print(instance.get_ticker_price("WINGUSDT"))
print(instance.get_ticker_24hour("WINGUSDT"))
================================================
FILE: app/__init__.py
================================================
================================================
FILE: app/authorization.py
================================================
# Get an Key and Secret
# https://www.binance.com/restapipub.html
api_key = ''
api_secret = ''
recv_window = 5000
dingding_token = ""
================================================
FILE: app/dingding.py
================================================
import requests,json
# windows
from app.authorization import dingding_token, recv_window,api_secret,api_key
from app.BinanceAPI import BinanceAPI
# linux
# from app.authorization import dingding_token
class Message:
def buy_market_msg(self, market, quantity):
'''
市价买单
:param market: 交易对
:param quantity: 购买的数量
:return:
'''
try:
res = BinanceAPI(api_key,api_secret).buy_market(market, quantity)
if 'orderId' in res:
buy_info = "报警:币种为:{cointype}。买单量为:{num}.买单价格为:{price}".format(cointype=market,num=quantity,price=float(res['fills'][0]['price']))
self.dingding_warn(buy_info)
return res
else:
error_info = "报警:币种为:{cointype},买单失败.{info}".format(cointype=market, info=res)
self.dingding_warn(error_info)
except BaseException as e:
error_info = "报警:币种为:{cointype},买单失败.{info}".format(cointype=market,info=str(e))
self.dingding_warn(error_info)
return res
def buy_limit_msg(self, market, quantity,price):
'''
限价买单
:param market: 交易对
:param quantity: 购买的数量
:param price : 挂单价格
:return:
'''
try:
res = BinanceAPI(api_key,api_secret).buy_limit(market, quantity,price)
if 'orderId' in res:
buy_info = "报警:币种为:{cointype}。买单量为:{num}.买单价格为:{price}".format(cointype=market,num=quantity,price=float(res['fills'][0]['price']))
self.dingding_warn(buy_info)
return res
else:
error_info = "报警:币种为:{cointype},买单失败.{info}".format(cointype=market, info=res)
self.dingding_warn(error_info)
except BaseException as e:
error_info = "报警:币种为:{cointype},买单失败.{info}".format(cointype=market,info=str(e))
self.dingding_warn(error_info)
return res
def sell_market_msg(self,market, quantity,profit_usdt=0):
'''
市价卖单
:param market:交易对
:param quantity: 数量
:param rate: 价格
:return:
'''
try:
res = BinanceAPI(api_key,api_secret).sell_market(market, quantity)
if 'orderId' in res:
buy_info = "报警:币种为:{cointype}。卖单量为:{num}。预计盈利{profit_num}U".format(cointype=market,num=quantity,profit_num=round(profit_usdt,2))
self.dingding_warn(buy_info)
return res
else:
error_info = "报警:币种为:{cointype},卖单失败.{info}".format(cointype=market, info=res)
self.dingding_warn(error_info)
except BaseException as e:
print("-------报错信息------")
print(BaseException) # 报错内容输出到 nohup,out
error_info = "报警:币种为:{cointype},卖单失败.{info}".format(cointype=market,info=str(e))
self.dingding_warn(error_info+str(res))
return res
def sell_limit_msg(self,market, quantity,price,profit_usdt=0):
'''
限价卖单
:param market:交易对
:param quantity: 数量
:param price: 价格
:return:
'''
try:
res = BinanceAPI(api_key,api_secret).sell_limit(market, quantity,price)
if 'orderId' in res:
buy_info = "报警:币种为:{cointype}。卖单量为:{num}。预计盈利{profit_num}U".format(cointype=market,num=quantity,profit_num=round(profit_usdt,2))
self.dingding_warn(buy_info)
return res
else:
error_info = "报警:币种为:{cointype},卖单失败.{info}".format(cointype=market, info=res)
self.dingding_warn(error_info)
except BaseException as e:
print("-------报错信息------")
print(BaseException) # 报错内容输出到 nohup,out
error_info = "报警:币种为:{cointype},卖单失败.{info}".format(cointype=market,info=str(e))
self.dingding_warn(error_info+str(res))
return res
def dingding_warn(self,text):
headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=%s" % dingding_token
json_text = self._msg(text)
requests.post(api_url, json.dumps(json_text), headers=headers).content
def _msg(self,text):
json_text = {
"msgtype": "text",
"at": {
"atMobiles": [
"11111"
],
"isAtAll": False
},
"text": {
"content": text
}
}
return json_text
if __name__ == "__main__":
msg = Message()
================================================
FILE: data/__init__.py
================================================
================================================
FILE: data/calcIndex.py
================================================
from app.BinanceAPI import BinanceAPI
from app.authorization import api_key,api_secret
from data.runBetData import RunBetData
import time,os,json
runbet = RunBetData()
binan = BinanceAPI(api_key,api_secret)
class CalcIndex:
def __init__(self):
pass
# def calcMA(self,symbol):
# '''
# :param symbol: 交易对
# :param interval: 间隔时间 1h 4h 1d
# :return: 当前时间ma20 60 120 的值
# '''
# sum_ma10=0
# sum_ma20=0
# sum_ma40=0
# num = 0
# data = binan.get_klines(symbol, "1h", 40)
# for i in range(len(data)):
# if i>=30 and i <=40:
# sum_ma10 += float(data[i][4])
# if i>=20 and i <=40:
# sum_ma20 += float(data[i][4])
#
# sum_ma40 += float(data[i][4])
#
# return [self.roundNum(sum_ma10/10),self.roundNum(sum_ma20/20),self.roundNum(sum_ma40/40)]
# def calcSlopeMA10(self,symbol,interval):
# '''
# :param symbol:
# :param interval:
# :return: 上一时刻的m20值
# '''
# last_ma10 = 0
# next_ma10 = 0
# num = 0
# data = binan.get_klines(symbol, interval, 11)
# for i in range(len(data)):
# if i==0:
# last_ma10+=float(data[i][4])
# elif i==10:
# next_ma10+=float(data[i][4])
# else:
# last_ma10+=float(data[i][4])
# next_ma10+=float(data[i][4])
# return [self.roundNum(last_ma10/10),self.roundNum(next_ma10/10)]
def is_open_position(self,symbol):
'''
:return: 0 空仓 1 有多单 -1 有空单
'''
tmp = binan.get_future_positionInfo(symbol)
for item in tmp: # 遍历是有仓位
if item['positionSide'] == "SHORT" and float(item['positionAmt']) != 0.0:
return [-1,item['positionAmt']]
if item['positionSide'] == "LONG" and float(item['positionAmt']) != 0.0:
return [1,item['positionAmt']]
return [0,item['positionAmt']]
def get_earn(self):
tmp = binan.get_future_positionInfo(runbet.get_cointype())
for item in tmp: # 遍历是有仓位
if item['positionSide'] == "SHORT" and float(item['positionAmt']) != 0.0:
return float(item['unRealizedProfit'])
if item['positionSide'] == "LONG" and float(item['positionAmt']) != 0.0:
return float(item['unRealizedProfit'])
def calcSlopeMA5(self,symbol,interval,point):
'''
:param symbol:
:param interval:
:return: 上一时刻的m20值
'''
last_ma5 = 0
next_ma5 = 0
data = binan.get_klines(symbol, interval, 6)
for i in range(len(data)):
if i==0:
last_ma5+=float(data[i][4])
elif i==5:
next_ma5+=float(data[i][4])
else:
last_ma5+=float(data[i][4])
next_ma5+=float(data[i][4])
return [round(last_ma5/5,point), round(next_ma5/5,point)]
# def calcSlope(self,symbol,interval,direction):
# '''
#
# :param symbol:
# :param interval:
# :param direction: 多头还是空头 多:true 空为:false
# :return: 斜率是否满足开仓
# '''
# lastMA10,tmpMA10 = self.calcSlopeMA10(symbol,interval)
# if direction:
# return tmpMA10 > lastMA10
# else:
# return lastMA10 > tmpMA10
def calcAngle(self,symbol,interval,direction,point):
'''
:param symbol:
:param interval:
:param direction:
:return: 趋势来了 正在拉伸 不买
'''
lastMA5,tmpMA5 = self.calcSlopeMA5(symbol, interval,point)
if direction:
return tmpMA5 <= lastMA5
else:
return tmpMA5 >= lastMA5
def calcMA10(self,symbol,interval,point):
sum_ma10 = 0
data = binan.get_klines(symbol, interval, 10)
for i in range(len(data)):
sum_ma10+=float(data[i][4])
return round(sum_ma10 / 10,point)
def get_position_price(self,direction=True):
tmp = binan.get_positionInfo(runbet.get_cointype())
for item in tmp: # 遍历是有仓位
if direction: # 多头持仓均价
if item['positionSide'] == "LONG" and float(item['positionAmt']) != 0.0:
return float(item['entryPrice'])
else: # 空头持仓均价
if item['positionSide'] == "SHORT" and float(item['positionAmt']) != 0.0:
return float(item['entryPrice'])
return False
================================================
FILE: data/data.json
================================================
{
"coinList": [
"ETHUSDT",
"BTCUSDT",
"BNBUSDT"
],
"ETHUSDT": {
"runBet": {
"next_buy_price": 3800,
"grid_sell_price": 4000,
"step": 0,
"recorded_price": [
]
},
"config": {
"profit_ratio": 2.3,
"double_throw_ratio": 2.3,
"quantity": [
0.003
]
}
},
"BTCUSDT": {
"runBet": {
"next_buy_price": 49000.0,
"grid_sell_price": 50000.0,
"step": 0,
"recorded_price": []
},
"config": {
"profit_ratio": 1.7,
"double_throw_ratio": 1.7,
"quantity": [
0.001
]
}
},
"BNBUSDT": {
"runBet": {
"next_buy_price": 450,
"grid_sell_price": 500,
"step": 0,
"recorded_price": []
},
"config": {
"profit_ratio": 2.0,
"double_throw_ratio": 2.0,
"quantity": [
0.05
]
}
}
}
================================================
FILE: data/runBetData.py
================================================
# -*- coding: utf-8 -*-
from app.BinanceAPI import BinanceAPI
from app.authorization import api_key,api_secret
import os,json
binan = BinanceAPI(api_key,api_secret)
# linux
data_path = os.getcwd()+"/data/data.json"
# windows
# data_path = os.getcwd() + "\data\data.json"
class RunBetData:
def _get_json_data(self):
'''读取json文件'''
tmp_json = {}
with open(data_path, 'r') as f:
tmp_json = json.load(f)
f.close()
return tmp_json
def _modify_json_data(self,data):
'''修改json文件'''
with open(data_path, "w") as f:
f.write(json.dumps(data, indent=4))
f.close()
####------下面为输出函数--------####
def get_coinList(self):
data_json = self._get_json_data()
return data_json["coinList"]
def get_buy_price(self,symbol):
data_json = self._get_json_data()
return data_json[symbol]["runBet"]["next_buy_price"]
def get_sell_price(self,symbol):
data_json = self._get_json_data()
return data_json[symbol]["runBet"]["grid_sell_price"]
def get_cointype(self,symbol):
data_json = self._get_json_data()
return data_json[symbol]["config"]["cointype"]
def get_record_price(self,symbol):
'''卖出后,step减一后,再读取上次买入的价格'''
data_json = self._get_json_data()
cur_step = self.get_step(symbol) - 1
return data_json[symbol]['runBet']['recorded_price'][cur_step]
def get_quantity(self,symbol,exchange_method=True):
'''
:param exchange: True 代表买入,取买入的仓位 False:代表卖出,取卖出应该的仓位
:return:
'''
data_json = self._get_json_data()
cur_step = data_json[symbol]["runBet"]["step"] if exchange_method else data_json[symbol]["runBet"]["step"] - 1 # 买入与卖出操作对应的仓位不同
quantity_arr = data_json[symbol]["config"]["quantity"]
quantity = None
if cur_step < len(quantity_arr): # 当前仓位 > 设置的仓位 取最后一位
quantity = quantity_arr[0] if cur_step == 0 else quantity_arr[cur_step]
else:
quantity = quantity_arr[-1]
return quantity
def get_step(self,symbol):
data_json = self._get_json_data()
return data_json[symbol]["runBet"]["step"]
def remove_record_price(self,symbol):
'''记录交易价格'''
data_json = self._get_json_data()
del data_json[symbol]['runBet']['recorded_price'][-1]
self._modify_json_data(data_json)
def get_profit_ratio(self,symbol):
'''获取补仓比率'''
data_json = self._get_json_data()
return data_json[symbol]['config']['profit_ratio']
def get_double_throw_ratio(self,symbol):
'''获取止盈比率'''
data_json = self._get_json_data()
return data_json[symbol]['config']['double_throw_ratio']
def set_record_price(self,symbol,value):
'''记录交易价格'''
data_json = self._get_json_data()
data_json[symbol]['runBet']['recorded_price'].append(value)
self._modify_json_data(data_json)
def get_atr(self,symbol,interval='4h',kline_num=20):
data = binan.get_klines(symbol, interval, kline_num)
percent_total = 0
for i in range(len(data)):
percent_total = abs(float(data[i][3]) - float(data[i][2])) / float(data[i][4]) + percent_total
return round(percent_total/kline_num * 100,1)
def set_ratio(self,symbol):
'''修改补仓止盈比率'''
data_json = self._get_json_data()
atr_value = self.get_atr(symbol)
data_json[symbol]['config']['double_throw_ratio'] = atr_value
data_json[symbol]['config']['profit_ratio'] = atr_value
self._modify_json_data(data_json)
# 买入后,修改 补仓价格 和 网格平仓价格以及步数
def modify_price(self,symbol, deal_price,step,market_price):
data_json = self._get_json_data()
data_json[symbol]["runBet"]["next_buy_price"] = round(deal_price * (1 - data_json[symbol]["config"]["double_throw_ratio"] / 100), 6) # 默认保留6位小数
data_json[symbol]["runBet"]["grid_sell_price"] = round(deal_price * (1 + data_json[symbol]["config"]["profit_ratio"] / 100), 6)
# 如果修改的价格满足立刻卖出则,再次更改
if data_json[symbol]["runBet"]["next_buy_price"] > market_price:
data_json[symbol]["runBet"]["next_buy_price"] = round( market_price * (1 - data_json[symbol]["config"]["double_throw_ratio"] / 100), 6)
elif data_json[symbol]["runBet"]["grid_sell_price"] < market_price:
data_json[symbol]["runBet"]["grid_sell_price"] = round(market_price * (1 + data_json[symbol]["config"]["profit_ratio"] / 100), 6)
data_json[symbol]["runBet"]["step"] = step
self._modify_json_data(data_json)
print("修改后的补仓价格为:{double}。修改后的网格价格为:{grid}".format(double=data_json[symbol]["runBet"]["next_buy_price"],
grid=data_json[symbol]["runBet"]["grid_sell_price"]))
if __name__ == "__main__":
instance = RunBetData()
# print(instance.modify_price(8.87,instance.get_step()-1))
print(instance.get_quantity(False))
================================================
FILE: dev-ReadMe.md
================================================
### 项目介绍
> 背景:在量化运行的过程中,每当价格回落到满足买入价格时,🤖️ 会主动下一个买入订单。如果一直📉 那么就一直买一直买,直到账户没有💰 或 设置了停止补仓的策略。
> 那么在这个价格下跌过程中,为什么不去利用下这个下跌的过程。而是坐以待毙等着上涨盈利?我们完全可以收集下跌过程中的势能,转化为我们需要的能量。
> 结论:所以我选择了在下跌的过程开启了该交易对的做空,这样就能够很好的运用上每一次的波动率。
### 使用介绍
1.调整需要执行的交易对的杠杆倍数为x1,这样才能和现货形成数量上的对冲效应(你也可以使用更高的倍数,但是你一定要清楚每一个仓位买入量是多少,现货的买入量又是多少)
2. 修改配置data.json (位置在于./data/data.json)
```
{
"runBet": {
"next_buy_price": 2.71, <-- 现货买入价格,期货卖出价格
"grid_sell_price": 2.87, <-- 现货卖出价格, 期货买入价格
"spot_step": 0, <-- 现货当前持仓手数(你买了几手仓)
"future_step": 2 <-- 期货当前持仓手数(你开了几手仓)
},
"config": {
"profit_ratio": 3, <-- 现货下次补仓比率,期货止盈比率
"double_throw_ratio": 3, <-- 现货止盈比率,期货下次补仓比率
"cointype": "EOSUSDT",
"spot_quantity": [
50 <-- 现货买入量(可以自定义每手买入量,超出手数后,每手买入量均按照最后一位购买)
],
"future_quantity": [
50 <-- 期货买入量(可以自定义每手买入量,超出手数后,每手买入量均按照最后一位购买)
]
}
}
⬆️ 面配置还有很多可玩性,比如
"config": {
"profit_ratio": 5,
"double_throw_ratio": 10,
}
```
表达的意思是:趋势向上的网格

3.运行脚本
python3 eos.py
================================================
FILE: run.py
================================================
# -*- coding: utf-8 -*-
from app.BinanceAPI import BinanceAPI
from app.authorization import api_key,api_secret
from data.runBetData import RunBetData
from app.dingding import Message
from data.calcIndex import CalcIndex
import time
binan = BinanceAPI(api_key,api_secret)
runbet = RunBetData()
msg = Message()
index = CalcIndex()
class Run_Main():
def __init__(self):
self.coinList = runbet.get_coinList()
pass
def pre_data(self,cointype):
'''获取交易对的data.json基础信息
cointype:交易对
'''
grid_buy_price = runbet.get_buy_price(cointype) # 当前网格买入价格
grid_sell_price = runbet.get_sell_price(cointype) # 当前网格卖出价格
quantity = runbet.get_quantity(cointype) # 买入量
step = runbet.get_step(cointype) # 当前步数
cur_market_price = binan.get_ticker_price(cointype) # 当前交易对市价
right_size = len(str(cur_market_price).split(".")[1])
return [grid_buy_price,grid_sell_price,quantity,step,cur_market_price,right_size]
def loop_run(self):
while True:
for coinType in self.coinList:
[grid_buy_price,grid_sell_price,quantity,step,cur_market_price,right_size] = self.pre_data(coinType)
if grid_buy_price >= cur_market_price:#and index.calcAngle(coinType,"5m",False,right_size): # 是否满足买入价
res = msg.buy_market_msg(coinType, quantity)
if 'orderId' in res: # 挂单成功
success_price = float(res['fills'][0]['price'])
runbet.set_ratio(coinType)
time.sleep(1)
runbet.set_record_price(coinType,success_price)
time.sleep(1)
runbet.modify_price(coinType,cur_market_price, step+1,cur_market_price) #修改data.json中价格、当前步数
time.sleep(60*2) # 挂单后,停止运行1分钟
else:
break
elif grid_sell_price < cur_market_price :#and index.calcAngle(coinType,"5m",True,right_size): # 是否满足卖出价
if step==0: # setp=0 防止踏空,跟随价格上涨
runbet.modify_price(coinType,grid_sell_price,step,cur_market_price)
else:
last_price = runbet.get_record_price(coinType)
sell_amount = runbet.get_quantity(coinType,False)
porfit_usdt = (cur_market_price - last_price) * sell_amount
res = msg.sell_market_msg(coinType, runbet.get_quantity(coinType,False),porfit_usdt)
if 'orderId' in res: #True 代表下单成功
runbet.set_ratio(coinType) #启动动态改变比率
time.sleep(1)
runbet.modify_price(coinType,runbet.get_record_price(coinType), step - 1,cur_market_price)
time.sleep(1)
runbet.remove_record_price(coinType)
time.sleep(60*1) # 挂单后,停止运行1分钟
else:
break
else:
print("币种:{coin}当前市价:{market_price}。未能满足交易,继续运行".format(market_price = cur_market_price,coin=coinType))
time.sleep(1)
#if __name__ == "__main__":
# instance = Run_Main()
# try:
# instance.loop_run()
# except Exception as e:
# error_info = "报警:做多网格,服务停止"
# msg.dingding_warn(error_info)
# 调试看报错运行下面,正式运行用上面
if __name__ == "__main__":
instance = Run_Main()
instance.loop_run()
================================================
FILE: venv/bin/Activate.ps1
================================================
<#
.Synopsis
Activate a Python virtual environment for the current PowerShell session.
.Description
Pushes the python executable for a virtual environment to the front of the
$Env:PATH environment variable and sets the prompt to signify that you are
in a Python virtual environment. Makes use of the command line switches as
well as the `pyvenv.cfg` file values present in the virtual environment.
.Parameter VenvDir
Path to the directory that contains the virtual environment to activate. The
default value for this is the parent of the directory that the Activate.ps1
script is located within.
.Parameter Prompt
The prompt prefix to display when this virtual environment is activated. By
default, this prompt is the name of the virtual environment folder (VenvDir)
surrounded by parentheses and followed by a single space (ie. '(.venv) ').
.Example
Activate.ps1
Activates the Python virtual environment that contains the Activate.ps1 script.
.Example
Activate.ps1 -Verbose
Activates the Python virtual environment that contains the Activate.ps1 script,
and shows extra information about the activation as it executes.
.Example
Activate.ps1 -VenvDir C:\Users\MyUser\Common\.venv
Activates the Python virtual environment located in the specified location.
.Example
Activate.ps1 -Prompt "MyPython"
Activates the Python virtual environment that contains the Activate.ps1 script,
and prefixes the current prompt with the specified string (surrounded in
parentheses) while the virtual environment is active.
.Notes
On Windows, it may be required to enable this Activate.ps1 script by setting the
execution policy for the user. You can do this by issuing the following PowerShell
command:
PS C:\> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
For more information on Execution Policies:
ttps:/go.microsoft.com/fwlink/?LinkID=135170
#>
Param(
[Parameter(Mandatory = $false)]
[String]
$VenvDir,
[Parameter(Mandatory = $false)]
[String]
$Prompt
)
<# Function declarations --------------------------------------------------- #>
<#
.Synopsis
Remove all shell session elements added by the Activate script, including the
addition of the virtual environment's Python executable from the beginning of
the PATH variable.
.Parameter NonDestructive
If present, do not remove this function from the global namespace for the
session.
#>
function global:deactivate ([switch]$NonDestructive) {
# Revert to original values
# The prior prompt:
if (Test-Path -Path Function:_OLD_VIRTUAL_PROMPT) {
Copy-Item -Path Function:_OLD_VIRTUAL_PROMPT -Destination Function:prompt
Remove-Item -Path Function:_OLD_VIRTUAL_PROMPT
}
# The prior PYTHONHOME:
if (Test-Path -Path Env:_OLD_VIRTUAL_PYTHONHOME) {
Copy-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME -Destination Env:PYTHONHOME
Remove-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME
}
# The prior PATH:
if (Test-Path -Path Env:_OLD_VIRTUAL_PATH) {
Copy-Item -Path Env:_OLD_VIRTUAL_PATH -Destination Env:PATH
Remove-Item -Path Env:_OLD_VIRTUAL_PATH
}
# Just remove the VIRTUAL_ENV altogether:
if (Test-Path -Path Env:VIRTUAL_ENV) {
Remove-Item -Path env:VIRTUAL_ENV
}
# Just remove the _PYTHON_VENV_PROMPT_PREFIX altogether:
if (Get-Variable -Name "_PYTHON_VENV_PROMPT_PREFIX" -ErrorAction SilentlyContinue) {
Remove-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Scope Global -Force
}
# Leave deactivate function in the global namespace if requested:
if (-not $NonDestructive) {
Remove-Item -Path function:deactivate
}
}
<#
.Description
Get-PyVenvConfig parses the values from the pyvenv.cfg file located in the
given folder, and returns them in a map.
For each line in the pyvenv.cfg file, if that line can be parsed into exactly
two strings separated by `=` (with any amount of whitespace surrounding the =)
then it is considered a `key = value` line. The left hand string is the key,
the right hand is the value.
If the value starts with a `'` or a `"` then the first and last character is
stripped from the value before being captured.
.Parameter ConfigDir
Path to the directory that contains the `pyvenv.cfg` file.
#>
function Get-PyVenvConfig(
[String]
$ConfigDir
) {
Write-Verbose "Given ConfigDir=$ConfigDir, obtain values in pyvenv.cfg"
# Ensure the file exists, and issue a warning if it doesn't (but still allow the function to continue).
$pyvenvConfigPath = Join-Path -Resolve -Path $ConfigDir -ChildPath 'pyvenv.cfg' -ErrorAction Continue
# An empty map will be returned if no config file is found.
$pyvenvConfig = @{ }
if ($pyvenvConfigPath) {
Write-Verbose "File exists, parse `key = value` lines"
$pyvenvConfigContent = Get-Content -Path $pyvenvConfigPath
$pyvenvConfigContent | ForEach-Object {
$keyval = $PSItem -split "\s*=\s*", 2
if ($keyval[0] -and $keyval[1]) {
$val = $keyval[1]
# Remove extraneous quotations around a string value.
if ("'""".Contains($val.Substring(0, 1))) {
$val = $val.Substring(1, $val.Length - 2)
}
$pyvenvConfig[$keyval[0]] = $val
Write-Verbose "Adding Key: '$($keyval[0])'='$val'"
}
}
}
return $pyvenvConfig
}
<# Begin Activate script --------------------------------------------------- #>
# Determine the containing directory of this script
$VenvExecPath = Split-Path -Parent $MyInvocation.MyCommand.Definition
$VenvExecDir = Get-Item -Path $VenvExecPath
Write-Verbose "Activation script is located in path: '$VenvExecPath'"
Write-Verbose "VenvExecDir Fullname: '$($VenvExecDir.FullName)"
Write-Verbose "VenvExecDir Name: '$($VenvExecDir.Name)"
# Set values required in priority: CmdLine, ConfigFile, Default
# First, get the location of the virtual environment, it might not be
# VenvExecDir if specified on the command line.
if ($VenvDir) {
Write-Verbose "VenvDir given as parameter, using '$VenvDir' to determine values"
}
else {
Write-Verbose "VenvDir not given as a parameter, using parent directory name as VenvDir."
$VenvDir = $VenvExecDir.Parent.FullName.TrimEnd("\\/")
Write-Verbose "VenvDir=$VenvDir"
}
# Next, read the `pyvenv.cfg` file to determine any required value such
# as `prompt`.
$pyvenvCfg = Get-PyVenvConfig -ConfigDir $VenvDir
# Next, set the prompt from the command line, or the config file, or
# just use the name of the virtual environment folder.
if ($Prompt) {
Write-Verbose "Prompt specified as argument, using '$Prompt'"
}
else {
Write-Verbose "Prompt not specified as argument to script, checking pyvenv.cfg value"
if ($pyvenvCfg -and $pyvenvCfg['prompt']) {
Write-Verbose " Setting based on value in pyvenv.cfg='$($pyvenvCfg['prompt'])'"
$Prompt = $pyvenvCfg['prompt'];
}
else {
Write-Verbose " Setting prompt based on parent's directory's name. (Is the directory name passed to venv module when creating the virutal environment)"
Write-Verbose " Got leaf-name of $VenvDir='$(Split-Path -Path $venvDir -Leaf)'"
$Prompt = Split-Path -Path $venvDir -Leaf
}
}
Write-Verbose "Prompt = '$Prompt'"
Write-Verbose "VenvDir='$VenvDir'"
# Deactivate any currently active virtual environment, but leave the
# deactivate function in place.
deactivate -nondestructive
# Now set the environment variable VIRTUAL_ENV, used by many tools to determine
# that there is an activated venv.
$env:VIRTUAL_ENV = $VenvDir
if (-not $Env:VIRTUAL_ENV_DISABLE_PROMPT) {
Write-Verbose "Setting prompt to '$Prompt'"
# Set the prompt to include the env name
# Make sure _OLD_VIRTUAL_PROMPT is global
function global:_OLD_VIRTUAL_PROMPT { "" }
Copy-Item -Path function:prompt -Destination function:_OLD_VIRTUAL_PROMPT
New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value $Prompt
function global:prompt {
Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) "
_OLD_VIRTUAL_PROMPT
}
}
# Clear PYTHONHOME
if (Test-Path -Path Env:PYTHONHOME) {
Copy-Item -Path Env:PYTHONHOME -Destination Env:_OLD_VIRTUAL_PYTHONHOME
Remove-Item -Path Env:PYTHONHOME
}
# Add the venv to the PATH
Copy-Item -Path Env:PATH -Destination Env:_OLD_VIRTUAL_PATH
$Env:PATH = "$VenvExecDir$([System.IO.Path]::PathSeparator)$Env:PATH"
================================================
FILE: venv/bin/activate
================================================
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly
deactivate () {
# reset old environment variables
if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then
PATH="${_OLD_VIRTUAL_PATH:-}"
export PATH
unset _OLD_VIRTUAL_PATH
fi
if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then
PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}"
export PYTHONHOME
unset _OLD_VIRTUAL_PYTHONHOME
fi
# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
hash -r
fi
if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then
PS1="${_OLD_VIRTUAL_PS1:-}"
export PS1
unset _OLD_VIRTUAL_PS1
fi
unset VIRTUAL_ENV
if [ ! "${1:-}" = "nondestructive" ] ; then
# Self destruct!
unset -f deactivate
fi
}
# unset irrelevant variables
deactivate nondestructive
VIRTUAL_ENV="/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv"
export VIRTUAL_ENV
_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"
export PATH
# unset PYTHONHOME if set
# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
# could use `if (set -u; : $PYTHONHOME) ;` in bash
if [ -n "${PYTHONHOME:-}" ] ; then
_OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}"
unset PYTHONHOME
fi
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
_OLD_VIRTUAL_PS1="${PS1:-}"
if [ "x(venv) " != x ] ; then
PS1="(venv) ${PS1:-}"
else
if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1"
else
PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1"
fi
fi
export PS1
fi
# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
hash -r
fi
================================================
FILE: venv/bin/activate.csh
================================================
# This file must be used with "source bin/activate.csh" *from csh*.
# You cannot run it directly.
# Created by Davide Di Blasi <davidedb@gmail.com>.
# Ported to Python 3.3 venv by Andrew Svetlov <andrew.svetlov@gmail.com>
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'
# Unset irrelevant variables.
deactivate nondestructive
setenv VIRTUAL_ENV "/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv"
set _OLD_VIRTUAL_PATH="$PATH"
setenv PATH "$VIRTUAL_ENV/bin:$PATH"
set _OLD_VIRTUAL_PROMPT="$prompt"
if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then
if ("venv" != "") then
set env_name = "venv"
else
if (`basename "VIRTUAL_ENV"` == "__") then
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
set env_name = `basename \`dirname "$VIRTUAL_ENV"\``
else
set env_name = `basename "$VIRTUAL_ENV"`
endif
endif
set prompt = "[$env_name] $prompt"
unset env_name
endif
alias pydoc python -m pydoc
rehash
================================================
FILE: venv/bin/activate.fish
================================================
# This file must be used with ". bin/activate.fish" *from fish* (http://fishshell.org)
# you cannot run it directly
function deactivate -d "Exit virtualenv and return to normal shell 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"
functions -e fish_prompt
set -e _OLD_FISH_PROMPT_OVERRIDE
functions -c _old_fish_prompt fish_prompt
functions -e _old_fish_prompt
end
set -e VIRTUAL_ENV
if test "$argv[1]" != "nondestructive"
# Self destruct!
functions -e deactivate
end
end
# unset irrelevant variables
deactivate nondestructive
set -gx VIRTUAL_ENV "/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv"
set -gx _OLD_VIRTUAL_PATH $PATH
set -gx PATH "$VIRTUAL_ENV/bin" $PATH
# unset PYTHONHOME if set
if set -q PYTHONHOME
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
set -e PYTHONHOME
end
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
# fish uses a function instead of an env var to generate the prompt.
# save the current fish_prompt function as the function _old_fish_prompt
functions -c fish_prompt _old_fish_prompt
# with the original prompt function renamed, we can override with our own.
function fish_prompt
# Save the return status of the last command
set -l old_status $status
# Prompt override?
if test -n "(venv) "
printf "%s%s" "(venv) " (set_color normal)
else
# ...Otherwise, prepend env
set -l _checkbase (basename "$VIRTUAL_ENV")
if test $_checkbase = "__"
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
printf "%s[%s]%s " (set_color -b blue white) (basename (dirname "$VIRTUAL_ENV")) (set_color normal)
else
printf "%s(%s)%s" (set_color -b blue white) (basename "$VIRTUAL_ENV") (set_color normal)
end
end
# Restore the return status of the previous command.
echo "exit $old_status" | .
_old_fish_prompt
end
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
end
================================================
FILE: venv/bin/chardetect
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# -*- 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())
================================================
FILE: venv/bin/easy_install
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==39.1.0','console_scripts','easy_install'
__requires__ = 'setuptools==39.1.0'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('setuptools==39.1.0', 'console_scripts', 'easy_install')()
)
================================================
FILE: venv/bin/easy_install-3.8
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==39.1.0','console_scripts','easy_install-3.8'
__requires__ = 'setuptools==39.1.0'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('setuptools==39.1.0', 'console_scripts', 'easy_install-3.8')()
)
================================================
FILE: venv/bin/pip
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip'
__requires__ = 'pip==10.0.1'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('pip==10.0.1', 'console_scripts', 'pip')()
)
================================================
FILE: venv/bin/pip3
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip3'
__requires__ = 'pip==10.0.1'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('pip==10.0.1', 'console_scripts', 'pip3')()
)
================================================
FILE: venv/bin/pip3.8
================================================
#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==10.0.1','console_scripts','pip3.8'
__requires__ = 'pip==10.0.1'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('pip==10.0.1', 'console_scripts', 'pip3.8')()
)
================================================
FILE: venv/lib/python3.8/site-packages/certifi/__init__.py
================================================
from .core import contents, where
__version__ = "2020.11.08"
================================================
FILE: venv/lib/python3.8/site-packages/certifi/__main__.py
================================================
import argparse
from certifi import contents, where
parser = argparse.ArgumentParser()
parser.add_argument("-c", "--contents", action="store_true")
args = parser.parse_args()
if args.contents:
print(contents())
else:
print(where())
================================================
FILE: venv/lib/python3.8/site-packages/certifi/cacert.pem
================================================
# 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=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=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=AAA Certificate Services O=Comodo CA Limited
# Subject: CN=AAA Certificate Services O=Comodo CA Limited
# Label: "Comodo AAA Services root"
# Serial: 1
# MD5 Fingerprint: 49:79:04:b0:eb:87:19:ac:47:b0:bc:11:51:9b:74:d0
# SHA1 Fingerprint: d1:eb:23:a4:6d:17:d6:8f:d9:25:64:c2:f1:f1:60:17:64:d8:e3:49
# SHA256 Fingerprint: d7:a7:a0:fb:5d:7e:27:31:d7:71:e9:48:4e:bc:de:f7:1d:5f:0c:3e:0a:29:48:78:2b:c8:3e:e0:ea:69:9e:f4
-----BEGIN CERTIFICATE-----
MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb
MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj
YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL
MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE
BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM
GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua
BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe
3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4
YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR
rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm
ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU
oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF
MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v
QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t
b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF
AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q
GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz
Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2
G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi
l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3
smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==
-----END CERTIFICATE-----
# Issuer: CN=QuoVadis Root Certification Authority O=QuoVadis Limited OU=Root Certification Authority
# Subject: CN=QuoVadis Root Certification Authority O=QuoVadis Limited OU=Root Certification Authority
# Label: "QuoVadis Root CA"
# Serial: 985026699
# MD5 Fingerprint: 27:de:36:fe:72:b7:00:03:00:9d:f4:f0:1e:6c:04:24
# SHA1 Fingerprint: de:3f:40:bd:50:93:d3:9b:6c:60:f6:da:bc:07:62:01:00:89:76:c9
# SHA256 Fingerprint: a4:5e:de:3b:bb:f0:9c:8a:e1:5c:72:ef:c0:72:68:d6:93:a2:1c:99:6f:d5:1e:67:ca:07:94:60:fd:6d:88:73
-----BEGIN CERTIFICATE-----
MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJC
TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0
aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0
aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNaFw0yMTAzMTcxODMz
MzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUw
IwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVR
dW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Yp
li4kVEAkOPcahdxYTMukJ0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2D
rOpm2RgbaIr1VxqYuvXtdj182d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJ
WCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cug
F+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospU
xbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCC
Ak4wPQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVv
dmFkaXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw
ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNl
IG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBh
c3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFy
ZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh
Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYI
KwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3T
KbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rq
y+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1p
dGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYD
VQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCL
MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSk
fnIYj9lofFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf8
7C9TqnN7Az10buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1R
cHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0y
mQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW
xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQNiOK
SnQ2+Q==
-----END CERTIFICATE-----
# Issuer: CN=QuoVadis Root CA 2 O=QuoVadis Limited
# Subject: CN=QuoVadis Root CA 2 O=QuoVadis Limited
# Label: "QuoVadis Root CA 2"
# Serial: 1289
# MD5 Fingerprint: 5e:39:7b:dd:f8:ba:ec:82:e9:ac:62:ba:0c:54:00:2b
# SHA1 Fingerprint: ca:3a:fb:cf:12:40:36:4b:44:b2:16:20:88:80:48:39:19:93:7c:f7
# SHA256 Fingerprint: 85:a0:dd:7d:d7:20:ad:b7:ff:05:f8:3d:54:2b:20:9d:c7:ff:45:28:f7:d6:77:b1:83:89:fe:a5:e5:c4:9e:86
-----BEGIN CERTIFICATE-----
MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x
GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv
b3QgQ0EgMjAeFw0wNjExMjQxODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNV
BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W
YWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCa
GMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6XJxg
Fyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55J
WpzmM+Yklvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bB
rrcCaoF6qUWD4gXmuVbBlDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp
+ARz8un+XJiM9XOva7R+zdRcAitMOeGylZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1
ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt66/3FsvbzSUr5R/7mp/i
Ucw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1JdxnwQ5hYIiz
PtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og
/zOhD7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UH
oycR7hYQe7xFSkyyBNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuI
yV77zGHcizN300QyNQliBJIWENieJ0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1Ud
EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBQahGK8SEwzJQTU7tD2
A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGUa6FJpEcwRTEL
MAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT
ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2f
BluornFdLwUvZ+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzn
g/iN/Ae42l9NLmeyhP3ZRPx3UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2Bl
fF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodmVjB3pjd4M1IQWK4/YY7yarHvGH5K
WWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK+JDSV6IZUaUtl0Ha
B0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrWIozc
hLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPR
TUIZ3Ph1WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWD
mbA4CD/pXvk1B+TJYm5Xf6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0Z
ohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y
4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8VCLAAVBpQ570su9t+Oza
8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u
-----END CERTIFICATE-----
# Issuer: CN=QuoVadis Root CA 3 O=QuoVadis Limited
# Subject: CN=QuoVadis Root CA 3 O=QuoVadis Limited
# Label: "QuoVadis Root CA 3"
# Serial: 1478
# MD5 Fingerprint: 31:85:3c:62:94:97:63:b9:aa:fd:89:4e:af:6f:e0:cf
# SHA1 Fingerprint: 1f:49:14:f7:d8:74:95:1d:dd:ae:02:c0:be:fd:3a:2d:82:75:51:85
# SHA256 Fingerprint: 18:f1:fc:7f:20:5d:f8:ad:dd:eb:7f:e0:07:dd:57:e3:af:37:5a:9c:4d:8d:73:54:6b:f4:f1:fe:d1:e1:8d:35
-----BEGIN CERTIFICATE-----
MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x
GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv
b3QgQ0EgMzAeFw0wNjExMjQxOTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNV
BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W
YWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDM
V0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNggDhoB
4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUr
H556VOijKTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd
8lyyBTNvijbO0BNO/79KDDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9Cabwv
vWhDFlaJKjdhkf2mrk7AyxRllDdLkgbvBNDInIjbC3uBr7E9KsRlOni27tyAsdLT
mZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwpp5ijJUMv7/FfJuGITfhe
btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8nT8KKdjc
T5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDt
WAEXMJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZ
c6tsgLjoC2SToJyMGf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A
4iLItLRkT9a6fUg+qGkM17uGcclzuD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYD
VR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHTBgkrBgEEAb5YAAMwgcUwgZMG
CCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmljYXRlIGNvbnN0
aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0
aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu
dC4wLQYIKwYBBQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2Nw
czALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4G
A1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4ywLQoUmkRzBFMQswCQYDVQQGEwJC
TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UEAxMSUXVvVmFkaXMg
Um9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZVqyM0
7ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSem
d1o417+shvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd
+LJ2w/w4E6oM3kJpK27zPOuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B
4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadN
t54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp8kokUvd0/bpO5qgdAm6x
DYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBCbjPsMZ57
k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6s
zHXug/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0j
Wy10QJLZYxkNc91pvGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeT
mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK
4SVhM7JZG+Ju1zdXtg2pEto=
-----END CERTIFICATE-----
# Issuer: O=SECOM Trust.net OU=Security Communication RootCA1
# Subject: O=SECOM Trust.net OU=Security Communication RootCA1
# Label: "Security Communication Root CA"
# Serial: 0
# MD5 Fingerprint: f1:bc:63:6a:54:e0:b5:27:f5:cd:e7:1a:e3:4d:6e:4a
# SHA1 Fingerprint: 36:b1:2b:49:f9:81:9e:d7:4c:9e:bc:38:0f:c6:56:8f:5d:ac:b2:f7
# SHA256 Fingerprint: e7:5e:72:ed:9f:56:0e:ec:6e:b4:80:00:73:a4:3f:c3:ad:19:19:5a:39:22:82:01:78:95:97:4a:99:02:6b:6c
-----BEGIN CERTIFICATE-----
MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEY
MBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21t
dW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5
WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYD
VQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwggEiMA0GCSqGSIb3
DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw8yl8
9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ
DKaVv0uMDPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9
Ms+k2Y7CI9eNqPPYJayX5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/N
QV3Is00qVUarH9oe4kA92819uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJ
xrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0G
A1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0T
AQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vG
kl3g0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfr
Uj94nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5
Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJU
JRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfcioU+tHXot
RSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAiFL39vmwLAw==
-----END CERTIFICATE-----
# Issuer: CN=Sonera Class2 CA O=Sonera
# Subject: CN=Sonera Class2 CA O=Sonera
# Label: "Sonera Class 2 Root CA"
# Serial: 29
# MD5 Fingerprint: a3:ec:75:0f:2e:88:df:fa:48:01:4e:0b:5c:48:6f:fb
# SHA1 Fingerprint: 37:f7:6d:e6:07:7c:90:c5:b1:3e:93:1a:b7:41:10:b4:f2:e4:9a:27
# SHA256 Fingerprint: 79:08:b4:03:14:c1:38:10:0b:51:8d:07:35:80:7f:fb:fc:f8:51:8a:00:95:33:71:05:ba:38:6b:15:3d:d9:27
-----BEGIN CERTIFICATE-----
MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP
MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAx
MDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNV
BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBDQTCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3/Ei9vX+ALTU74W+o
Z6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybTdXnt
5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s
3TmVToMGf+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2Ej
vOr7nQKV0ba5cTppCD8PtOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu
8nYybieDwnPz3BjotJPqdURrBGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEw
DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEG
MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zil
zqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/
3DEIcbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvD
FNr450kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6
Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2
ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M
-----END CERTIFICATE-----
# Issuer: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com
# Subject: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com
# Label: "XRamp Global CA Root"
# Serial: 107108908803651509692980124233745014957
# MD5 Fingerprint: a1:0b:44:b3:ca:10:d8:00:6e:9d:0f:d8:0f:92:0a:d1
# SHA1 Fingerprint: b8:01:86:d1:eb:9c:86:a5:41:04:cf:30:54:f3:4c:52:b7:e5:58:c6
# SHA256 Fingerprint: ce:cd:dc:90:50:99:d8:da:df:c5:b1:d2:09:b7:37:cb:e2:c1:8c:fb:2c:10:c0:ff:0b:cf:0d:32:86:fc:1a:a2
-----BEGIN CERTIFICATE-----
MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB
gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk
MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY
UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx
NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3
dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy
dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB
dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6
38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP
KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q
DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4
qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa
JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi
PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P
BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs
jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0
eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD
ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR
vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt
qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa
IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy
i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ
O+7ETPTsJ3xCwnR8gooJybQDJbw=
-----END CERTIFICATE-----
# Issuer: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority
# Subject: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority
# Label: "Go Daddy Class 2 CA"
# Serial: 0
# MD5 Fingerprint: 91:de:06:25:ab:da:fd:32:17:0c:bb:25:17:2a:84:67
# SHA1 Fingerprint: 27:96:ba:e6:3f:18:01:e2:77:26:1b:a0:d7:77:70:02:8f:20:ee:e4
# SHA256 Fingerprint: c3:84:6b:f2:4b:9e:93:ca:64:27:4c:0e:c6:7c:1e:cc:5e:02:4f:fc:ac:d2:d7:40:19:35:0e:81:fe:54:6a:e4
-----BEGIN CERTIFICATE-----
MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
ReYNnyicsbkqWletNw+vHX/bvZ8=
-----END CERTIFICATE-----
# Issuer: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority
# Subject: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority
# Label: "Starfield Class 2 CA"
# Serial: 0
# MD5 Fingerprint: 32:4a:4b:bb:c8:63:69:9b:be:74:9a:c6:dd:1d:46:24
# SHA1 Fingerprint: ad:7e:1c:28:b0:64:ef:8f:60:03:40:20:14:c3:d0:e3:37:0e:b5:8a
# SHA256 Fingerprint: 14:65:fa:20:53:97:b8:76:fa:a6:f0:a9:95:8e:55:90:e4:0f:cc:7f:aa:4f:b7:c2:c8:67:75:21:fb:5f:b6:58
-----BEGIN CERTIFICATE-----
MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl
MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp
U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw
NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE
ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp
ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3
DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf
8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN
+lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0
X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa
K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA
1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G
A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR
zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0
YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD
bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w
DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3
L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D
eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl
xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp
VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY
WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q=
-----END CERTIFICATE-----
# Issuer: 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=DST Root CA X3 O=Digital Signature Trust Co.
# Subject: CN=DST Root CA X3 O=Digital Signature Trust Co.
# Label: "DST Root CA X3"
# Serial: 91299735575339953335919266965803778155
# MD5 Fingerprint: 41:03:52:dc:0f:f7:50:1b:16:f0:02:8e:ba:6f:45:c5
# SHA1 Fingerprint: da:c9:02:4f:54:d8:f6:df:94:93:5f:b1:73:26:38:ca:6a:d7:7c:13
# SHA256 Fingerprint: 06:87:26:03:31:a7:24:03:d9:09:f1:05:e6:9b:cf:0d:32:e1:bd:24:93:ff:c6:d9:20:6d:11:bc:d6:77:07:39
-----BEGIN CERTIFICATE-----
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----
# Issuer: CN=SwissSign Gold CA - G2 O=SwissSign AG
# Subject: CN=SwissSign Gold CA - G2 O=SwissSign AG
# Label: "SwissSign Gold CA - G2"
# Serial: 13492815561806991280
# MD5 Fingerprint: 24:77:d9:a8:91:d1:3b:fa:88:2d:c2:ff:f8:cd:33:93
# SHA1 Fingerprint: d8:c5:38:8a:b7:30:1b:1b:6e:d4:7a:e6:45:25:3a:6f:9f:1a:27:61
# SHA256 Fingerprint: 62:dd:0b:e9:b9:f5:0a:16:3e:a0:f8:e7:5c:05:3b:1e:ca:57:ea:55:c8:68:8f:64:7c:68:81:f2:c8:35:7b:95
-----BEGIN CERTIFICATE-----
MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
BAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2ln
biBHb2xkIENBIC0gRzIwHhcNMDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBF
MQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMR8wHQYDVQQDExZT
d2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC
CgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUqt2/8
76LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+
bbqBHH5CjCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c
6bM8K8vzARO/Ws/BtQpgvd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqE
emA8atufK+ze3gE/bk3lUIbLtK/tREDFylqM2tIrfKjuvqblCqoOpd8FUrdVxyJd
MmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvRAiTysybUa9oEVeXBCsdt
MDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuendjIj3o02y
MszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69y
FGkOpeUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPi
aG59je883WX0XaxR7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxM
gI93e2CaHt+28kgeDrpOVG2Y4OGiGqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCB
qTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUWyV7
lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64OfPAeGZe6Drn
8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov
L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe6
45R88a7A3hfm5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczO
UYrHUDFu4Up+GC9pWbY9ZIEr44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5
O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOfMke6UiI0HTJ6CVanfCU2qT1L2sCC
bwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6mGu6uLftIdxf+u+yv
GPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxpmo/a
77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCC
hdiDyyJkvC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid3
92qgQmwLOM7XdVAyksLfKzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEpp
Ld6leNcG2mqeSz53OiATIgHQv2ieY2BrNU0LbbqhPcCT4H8js1WtciVORvnSFu+w
ZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6LqjviOvrv1vA+ACOzB2+htt
Qc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ
-----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: 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=Cybertrust Global Root O=Cybertrust, Inc
# Subject: CN=Cybertrust Global Root O=Cybertrust, Inc
# Label: "Cybertrust Global Root"
# Serial: 4835703278459682877484360
# MD5 Fingerprint: 72:e4:4a:87:e3:69:40:80:77:ea:bc:e3:f4:ff:f0:e1
# SHA1 Fingerprint: 5f:43:e5:b1:bf:f8:78:8c:ac:1c:c7:ca:4a:9a:c6:22:2b:cc:34:c6
# SHA256 Fingerprint: 96:0a:df:00:63:e9:63:56:75:0c:29:65:dd:0a:08:67:da:0b:9c:bd:6e:77:71:4a:ea:fb:23:49:ab:39:3d:a3
-----BEGIN CERTIFICATE-----
MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYG
A1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2Jh
bCBSb290MB4XDTA2MTIxNTA4MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UE
ChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBS
b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+Mi8vRRQZhP/8NN5
7CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW0ozS
J8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2y
HLtgwEZLAfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iP
t3sMpTjr3kfb1V05/Iin89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNz
FtApD0mpSPCzqrdsxacwOUBdrsTiXSZT8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAY
XSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/
MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2MDSgMqAw
hi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3Js
MB8GA1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUA
A4IBAQBW7wojoFROlZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMj
Wqd8BfP9IjsO0QbE2zZMcwSO5bAi5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUx
XOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2hO0j9n0Hq0V+09+zv+mKts2o
omcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+TX3EJIrduPuoc
A06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW
WL1WMRJOEcgh4LMRkWXbtKaIOM5V
-----END CERTIFICATE-----
# Issuer: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority
# Subject: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority
# Label: "ePKI Root Certification Authority"
# Serial: 28956088682735189655030529057352760477
# MD5 Fingerprint: 1b:2e:00:ca:26:06:90:3d:ad:fe:6f:15:68:d3:6b:b3
# SHA1 Fingerprint: 67:65:0d:f1:7e:8e:7e:5b:82:40:a4:f4:56:4b:cf:e2:3d:69:c6:f0
# SHA256 Fingerprint: c0:a6:f4:dc:63:a2:4b:fd:cf:54:ef:2a:6a:08:2a:0a:72:de:35:80:3e:2f:f5:ff:52:7a:e5:d8:72:06:df:d5
-----BEGIN CERTIFICATE-----
MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe
MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0
ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw
IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL
SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF
AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH
SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh
ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X
DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1
TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ
fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA
sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU
WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS
nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH
dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip
NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC
AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF
MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH
ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB
uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl
PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP
JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/
gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2
j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6
5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB
o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS
/jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z
Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE
W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D
hNQ+IIX3Sj0rnP0qCglN6oH4EZw=
-----END CERTIFICATE-----
# Issuer: O=certSIGN OU=certSIGN ROOT CA
# Subject: O=certSIGN OU=certSIGN ROOT CA
# Label: "certSIGN ROOT CA"
# Serial: 35210227249154
# MD5 Fingerprint: 18:98:c0:d6:e9:3a:fc:f9:b0:f5:0c:f7:4b:01:44:17
# SHA1 Fingerprint: fa:b7:ee:36:97:26:62:fb:2d:b0:2a:f6:bf:03:fd:e8:7c:4b:2f:9b
# SHA256 Fingerprint: ea:a9:62:c4:fa:4a:6b:af:eb:e4:15:19:6d:35:1c:cd:88:8d:4f:53:f3:fa:8a:e6:d7:c4:66:a9:4e:60:42:bb
-----BEGIN CERTIFICATE-----
MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYT
AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBD
QTAeFw0wNjA3MDQxNzIwMDRaFw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJP
MREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTCC
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7IJUqOtdu0KBuqV5Do
0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHHrfAQ
UySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5d
RdY4zTW2ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQ
OA7+j0xbm0bqQfWwCHTD0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwv
JoIQ4uNllAoEwF73XVv4EOLQunpL+943AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08C
AwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAcYwHQYDVR0O
BBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IBAQA+0hyJ
LjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecY
MnQ8SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ
44gx+FkagQnIl6Z0x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6I
Jd1hJyMctTEHBDa0GpC9oHRxUIltvBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNw
i/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7NzTogVZ96edhBiIL5VaZVDADlN
9u6wWk5JRFRYX0KD
-----END CERTIFICATE-----
# Issuer: CN=GeoTrust Primary Certification Authority - G3 O=GeoTrust Inc. OU=(c) 2008 GeoTrust Inc. - For authorized use only
# Subject: CN=GeoTrust Primary Certification Authority - G3 O=GeoTrust Inc. OU=(c) 2008 GeoTrust Inc. - For authorized use only
# Label: "GeoTrust Primary Certification Authority - G3"
# Serial: 28809105769928564313984085209975885599
# MD5 Fingerprint: b5:e8:34:36:c9:10:44:58:48:70:6d:2e:83:d4:b8:05
# SHA1 Fingerprint: 03:9e:ed:b8:0b:e7:a0:3c:69:53:89:3b:20:d2:d9:32:3a:4c:2a:fd
# SHA256 Fingerprint: b4:78:b8:12:25:0d:f8:78:63:5c:2a:a7:ec:7d:15:5e:aa:62:5e:e8:29:16:e2:cd:29:43:61:88:6c:d1:fb:d4
-----BEGIN CERTIFICATE-----
MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCB
mDELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsT
MChjKSAyMDA4IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s
eTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
cml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIzNTk1OVowgZgxCzAJ
BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg
MjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0
BgNVBAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz
+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5jK/BGvESyiaHAKAxJcCGVn2TAppMSAmUm
hsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdEc5IiaacDiGydY8hS2pgn
5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3CIShwiP/W
JmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exAL
DmKudlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC
huOl1UcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw
HQYDVR0OBBYEFMR5yo6hTgMdHNxr2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IB
AQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9cr5HqQ6XErhK8WTTOd8lNNTB
zU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbEAp7aDHdlDkQN
kv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD
AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUH
SJsMC8tJP33st/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2G
spki4cErx5z481+oghLrGREt
-----END CERTIFICATE-----
# Issuer: CN=thawte Primary Root CA - G2 O=thawte, Inc. OU=(c) 2007 thawte, Inc. - For authorized use only
# Subject: CN=thawte Primary Root CA - G2 O=thawte, Inc. OU=(c) 2007 thawte, Inc. - For authorized use only
# Label: "thawte Primary Root CA - G2"
# Serial: 71758320672825410020661621085256472406
# MD5 Fingerprint: 74:9d:ea:60:24:c4:fd:22:53:3e:cc:3a:72:d9:29:4f
# SHA1 Fingerprint: aa:db:bc:22:23:8f:c4:01:a1:27:bb:38:dd:f4:1d:db:08:9e:f0:12
# SHA256 Fingerprint: a4:31:0d:50:af:18:a6:44:71:90:37:2a:86:af:af:8b:95:1f:fb:43:1d:83:7f:1e:56:88:b4:59:71:ed:15:57
-----BEGIN CERTIFICATE-----
MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL
MAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMp
IDIwMDcgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAi
BgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMjAeFw0wNzExMDUwMDAw
MDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh
d3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBGb3Ig
YXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9v
dCBDQSAtIEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/
BebfowJPDQfGAFG6DAJSLSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6
papu+7qzcMBniKI11KOasf2twu8x+qi58/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8E
BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmtgAMADna3+FGO6Lts6K
DPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUNG4k8VIZ3
KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41ox
XZ3Krr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg==
-----END CERTIFICATE-----
# Issuer: CN=thawte Primary Root CA - G3 O=thawte, Inc. OU=Certification Services Division/(c) 2008 thawte, Inc. - For authorized use only
# Subject: CN=thawte Primary Root CA - G3 O=thawte, Inc. OU=Certification Services Division/(c) 2008 thawte, Inc. - For authorized use only
# Label: "thawte Primary Root CA - G3"
# Serial: 127614157056681299805556476275995414779
# MD5 Fingerprint: fb:1b:5d:43:8a:94:cd:44:c6:76:f2:43:4b:47:e7:31
# SHA1 Fingerprint: f1:8b:53:8d:1b:e9:03:b6:a6:f0:56:43:5b:17:15:89:ca:f3:6b:f2
# SHA256 Fingerprint: 4b:03:f4:58:07:ad:70:f2:1b:fc:2c:ae:71:c9:fd:e4:60:4c:06:4c:f5:ff:b6:86:ba:e5:db:aa:d7:fd:d3:4c
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCB
rjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf
Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw
MDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNV
BAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0wODA0MDIwMDAwMDBa
Fw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3Rl
LCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9u
MTgwNgYDVQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXpl
ZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEcz
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm
gcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2AtP0LMqmsywCPLLEHd5N/8
YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC+BsUa0Lf
b1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS9
9irY7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2S
zhkGcuYMXDhpxwTWvGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUk
OQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV
HQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJKoZIhvcNAQELBQADggEBABpA
2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweKA3rD6z8KLFIW
oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu
t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7c
KUGRIjxpp7sC8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fM
m7v/OeZWYdMKp8RcTGB7BXcmer/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZu
MdRAGmI0Nj81Aa6sY6A=
-----END CERTIFICATE-----
# Issuer: CN=GeoTrust Primary Certification Authority - G2 O=GeoTrust Inc. OU=(c) 2007 GeoTrust Inc. - For authorized use only
# Subject: CN=GeoTrust Primary Certification Authority - G2 O=GeoTrust Inc. OU=(c) 2007 GeoTrust Inc. - For authorized use only
# Label: "GeoTrust Primary Certification Authority - G2"
# Serial: 80682863203381065782177908751794619243
# MD5 Fingerprint: 01:5e:d8:6b:bd:6f:3d:8e:a1:31:f8:12:e0:98:73:6a
# SHA1 Fingerprint: 8d:17:84:d5:37:f3:03:7d:ec:70:fe:57:8b:51:9a:99:e6:10:d7:b0
# SHA256 Fingerprint: 5e:db:7a:c4:3b:82:a0:6a:87:61:e8:d7:be:49:79:eb:f2:61:1f:7d:d7:9b:f9:1c:1c:6b:56:6a:21:9e:d7:66
-----BEGIN CERTIFICATE-----
MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDEL
MAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChj
KSAyMDA3IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2
MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0
eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1OVowgZgxCzAJBgNV
BAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykgMjAw
NyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNV
BAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH
MjB2MBAGByqGSM49AgEGBSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcL
So17VDs6bl8VAsBQps8lL33KSLjHUGMcKiEIfJo22Av+0SbFWDEwKCXzXV2juLal
tJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO
BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+EVXVMAoG
CCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGT
qQ7mndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBucz
rD6ogRLQy7rQkgu2npaqBA+K
-----END CERTIFICATE-----
# Issuer: CN=VeriSign Universal Root Certification Authority O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2008 VeriSign, Inc. - For authorized use only
# Subject: CN=VeriSign Universal Root Certification Authority O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2008 VeriSign, Inc. - For authorized use only
# Label: "VeriSign Universal Root Certification Authority"
# Serial: 85209574734084581917763752644031726877
# MD5 Fingerprint: 8e:ad:b5:01:aa:4d:81:e4:8c:1d:d1:e1:14:00:95:19
# SHA1 Fingerprint: 36:79:ca:35:66:87:72:30:4d:30:a5:fb:87:3b:0f:a7:7b:b7:0d:54
# SHA256 Fingerprint: 23:99:56:11:27:a5:71:25:de:8c:ef:ea:61:0d:df:2f:a0:78:b5:c8:06:7f:4e:82:82:90:bf:b8:60:e8:4b:3c
-----BEGIN CERTIFICATE-----
MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCB
vTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJp
U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYDVQQDEy9W
ZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
Fw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJVUzEX
MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0
IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9y
IGF1dGhvcml6ZWQgdXNlIG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNh
bCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj1mCOkdeQmIN65lgZOIzF
9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGPMiJhgsWH
H26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+H
LL729fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN
/BMReYTtXlT2NJ8IAfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPT
rJ9VAMf2CGqUuV/c4DPxhGD5WycRtPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1Ud
EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFsw
WTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgs
exkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud
DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4
sAPmLGd75JR3Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+
seQxIcaBlVZaDrHC1LGmWazxY8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz
4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTxP/jgdFcrGJ2BtMQo2pSXpXDrrB2+
BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+PwGZsY6rp2aQW9IHR
lRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4mJO3
7M2CYfE45k+XmCpajQ==
-----END CERTIFICATE-----
# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2007 VeriSign, Inc. - For authorized use only
# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G4 O=VeriSign, Inc. OU=VeriSign Trust Network/(c) 2007 VeriSign, Inc. - For authorized use only
# Label: "VeriSign Class 3 Public Primary Certification Authority - G4"
# Serial: 63143484348153506665311985501458640051
# MD5 Fingerprint: 3a:52:e1:e7:fd:6f:3a:e3:6f:f3:6f:99:1b:f9:22:41
# SHA1 Fingerprint: 22:d5:d8:df:8f:02:31:d1:8d:f7:9d:b7:cf:8a:2d:64:c9:3f:6c:3a
# SHA256 Fingerprint: 69:dd:d7:ea:90:bb:57:c9:3e:13:5d:c8:5e:a6:fc:d5:48:0b:60:32:39:bd:c4:54:fc:75:8b:2a:26:cf:7f:79
-----BEGIN CERTIFICATE-----
MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjEL
MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW
ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2ln
biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp
U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y
aXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjELMAkG
A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp
U2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwg
SW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2ln
biBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5
IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8Utpkmw4tXNherJI9/gHm
GUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGzrl0Bp3ve
fLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUw
AwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJ
aW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYj
aHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMW
kf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMDA2gAMGUCMGYhDBgmYFo4e1ZC
4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIxAJw9SDkjOVga
FRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA==
-----END CERTIFICATE-----
# Issuer: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services)
# Subject: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services)
# Label: "NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny"
# Serial: 80544274841616
# MD5 Fingerprint: c5:a1:b7:ff:73:dd:d6:d7:34:32:18:df:fc:3c:ad:88
# SHA1 Fingerprint: 06:08:3f:59:3f:15:a1:04:a0:69:a4:6b:a9:03:d0:06:b7:97:09:91
# SHA256 Fingerprint: 6c:61:da:c3:a2:de:f0:31:50:6b:e0:36:d2:a6:fe:40:19:94:fb:d1:3d:f9:c8:d4:66:59:92:74:c4:46:ec:98
-----BEGIN CERTIFICATE-----
MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG
EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3
MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl
cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR
dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB
pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM
b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm
aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz
IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT
lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz
AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5
VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG
ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2
BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG
AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M
U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh
bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C
+C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC
bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F
uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2
XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E=
-----END CERTIFICATE-----
# Issuer: CN=Hongkong Post Root CA 1 O=Hongkong Post
# Subject: CN=Hongkong Post Root CA 1 O=Hongkong Post
# Label: "Hongkong Post Root CA 1"
# Serial: 1000
# MD5 Fingerprint: a8:0d:6f:39:78:b9:43:6d:77:42:6d:98:5a:cc:23:ca
# SHA1 Fingerprint: d6:da:a8:20:8d:09:d2:15:4d:24:b5:2f:cb:34:6e:b2:58:b2:8a:58
# SHA256 Fingerprint: f9:e6:7d:33:6c:51:00:2a:c0:54:c6:32:02:2d:66:dd:a2:e7:e3:ff:f1:0a:d0:61:ed:31:d8:bb:b4:10:cf:b2
-----BEGIN CERTIFICATE-----
MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsx
FjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg
Um9vdCBDQSAxMB4XDTAzMDUxNTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkG
A1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdr
b25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1ApzQ
jVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEn
PzlTCeqrauh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjh
ZY4bXSNmO7ilMlHIhqqhqZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9
nnV0ttgCXjqQesBCNnLsak3c78QA3xMYV18meMjWCnl3v/evt3a5pQuEF10Q6m/h
q5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNVHRMBAf8ECDAGAQH/AgED
MA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7ih9legYsC
mEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI3
7piol7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clB
oiMBdDhViw+5LmeiIAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJs
EhTkYY2sEJCehFC78JZvRZ+K88psT/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpO
fMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilTc4afU9hDDl3WY4JxHYB0yvbi
AmvZWg==
-----END CERTIFICATE-----
# Issuer: CN=SecureSign RootCA11 O=Japan Certification Services, Inc.
# Subject: CN=SecureSign RootCA11 O=Japan Certification Services, Inc.
# Label: "SecureSign RootCA11"
# Serial: 1
# MD5 Fingerprint: b7:52:74:e2:92:b4:80:93:f2:75:e4:cc:d7:f2:ea:26
# SHA1 Fingerprint: 3b:c4:9f:48:f8:f3:73:a0:9c:1e:bd:f8:5b:b1:c3:65:c7:d8:11:b3
# SHA256 Fingerprint: bf:0f:ee:fb:9e:3a:58:1a:d5:f9:e9:db:75:89:98:57:43:d2:61:08:5c:4d:31:4f:6f:5d:72:59:aa:42:16:12
-----BEGIN CERTIFICATE-----
MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDEr
MCkGA1UEChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoG
A1UEAxMTU2VjdXJlU2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0
MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZp
Y2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1cmVTaWduIFJvb3RD
QTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvLTJsz
i1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8
h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOV
MdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9
UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni
8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsC
h8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYD
VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB
AKChOBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm
KbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQ
X5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWr
QbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR7SXf+Of5
pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN
QSdJQO7e5iNEOdyhIta6A/I=
-----END CERTIFICATE-----
# Issuer: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd.
# Subject: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd.
# Label: "Microsec e-Szigno Root CA 2009"
# Serial: 14014712776195784473
# MD5 Fingerprint: f8:49:f4:03:bc:44:2d:83:be:48:69:7d:29:64:fc:b1
# SHA1 Fingerprint: 89:df:74:fe:5c:f4:0f:4a:80:f9:e3:37:7d:54:da:91:e1:01:31:8e
# SHA256 Fingerprint: 3c:5f:81:fe:a5:fa:b8:2c:64:bf:a2:ea:ec:af:cd:e8:e0:77:fc:86:20:a7:ca:e5:37:16:3d:f3:6e:db:f3:78
-----BEGIN CERTIFICATE-----
MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD
VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0
ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G
CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y
OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx
FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp
Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o
dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP
kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc
cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U
fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7
N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC
xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1
+rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G
A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM
Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG
SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h
mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk
ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775
tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c
2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t
HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW
-----END CERTIFICATE-----
# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3
# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3
# Label: "GlobalSign Root CA - R3"
# Serial: 4835703278459759426209954
# MD5 Fingerprint: c5:df:b8:49:ca:05:13:55:ee:2d:ba:1a:c3:3e:b0:28
# SHA1 Fingerprint: d6:9b:56:11:48:f0:1c:77:c5:45:78:c1:09:26:df:5b:85:69:76:ad
# SHA256 Fingerprint: cb:b5:22:d7:b7:f1:27:ad:6a:01:13:86:5b:df:1c:d4:10:2e:7d:07:59:af:63:5a:7c:f4:72:0d:c9:63:c5:3b
-----BEGIN CERTIFICATE-----
MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
WD9f
-----END CERTIFICATE-----
# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068
# Subject: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068
# Label: "Autoridad de Certificacion Firmaprofesional CIF A62634068"
# Serial: 6047274297262753887
# MD5 Fingerprint: 73:3a:74:7a:ec:bb:a3:96:a6:c2:e4:e2:c8:9b:c0:c3
# SHA1 Fingerprint: ae:c5:fb:3f:c8:e1:bf:c4:e5:4f:03:07:5a:9a:e8:00:b7:f7:b6:fa
# SHA256 Fingerprint: 04:04:80:28:bf:1f:28:64:d4:8f:9a:d4:d8:32:94:36:6a:82:88:56:55:3f:3b:14:30:3f:90:14:7f:5d:40:ef
-----BEGIN CERTIFICATE-----
MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UE
BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h
cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEy
MzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg
Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi
MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9
thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM
cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG
L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i
NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h
X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b
m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy
Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja
EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T
KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF
6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh
OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD
VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNHDhpkLzCBpgYD
VR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp
cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBv
ACAAZABlACAAbABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBl
AGwAbwBuAGEAIAAwADgAMAAxADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF
661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx51tkljYyGOylMnfX40S2wBEqgLk9
am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qkR71kMrv2JYSiJ0L1
ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaPT481
PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS
3a/DTg4fJl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5k
SeTy36LssUzAKh3ntLFlosS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF
3dvd6qJ2gHN99ZwExEWN57kci57q13XRcrHedUTnQn3iV2t93Jm8PYMo6oCTjcVM
ZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoRsaS8I8nkvof/uZS2+F0g
StRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTDKCOM/icz
Q0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQB
jLMi6Et8Vcad+qMUu2WFbm5PEn4KPJ2V
-----END CERTIFICATE-----
# Issuer: CN=Izenpe.com O=IZENPE S.A.
# Subject: CN=Izenpe.com O=IZENPE S.A.
# Label: "Izenpe.com"
# Serial: 917563065490389241595536686991402621
# MD5 Fingerprint: a6:b0:cd:85:80:da:5c:50:34:a3:39:90:2f:55:67:73
# SHA1 Fingerprint: 2f:78:3d:25:52:18:a7:4a:65:39:71:b5:2c:a2:9c:45:15:6f:e9:19
# SHA256 Fingerprint: 25:30:cc:8e:98:32:15:02:ba:d9:6f:9b:1f:ba:1b:09:9e:2d:29:9e:0f:45:48:bb:91:4f:36:3b:c0:d4:53:1f
-----BEGIN CERTIFICATE-----
MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4
MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6
ZW5wZS5jb20wHhcNMDcxMjEzMTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYD
VQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5j
b20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ03rKDx6sp4boFmVq
scIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAKClaO
xdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6H
LmYRY2xU+zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFX
uaOKmMPsOzTFlUFpfnXCPCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQD
yCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxTOTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+
JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbKF7jJeodWLBoBHmy+E60Q
rLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK0GqfvEyN
BjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8L
hij+0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIB
QFqNeb+Lz0vPqhbBleStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+
HMh3/1uaD7euBUbl8agW7EekFwIDAQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2lu
Zm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+SVpFTlBFIFMuQS4gLSBDSUYg
QTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBGNjIgUzgxQzBB
BgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx
MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC
AQYwHQYDVR0OBBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUA
A4ICAQB4pgwWSp9MiDrAyw6lFn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWb
laQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbgakEyrkgPH7UIBzg/YsfqikuFgba56
awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8qhT/AQKM6WfxZSzwo
JNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Csg1lw
LDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCT
VyvehQP5aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGk
LhObNA5me0mrZJfQRsN5nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJb
UjWumDqtujWTI6cfSN01RpiyEGjkpTHCClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/
QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZoQ0iy2+tzJOeRf1SktoA+
naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1ZWrOZyGls
QyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw==
-----END CERTIFICATE-----
# Issuer: CN=Chambers of Commerce Root - 2008 O=AC Camerfirma S.A.
# Subject: CN=Chambers of Commerce Root - 2008 O=AC Camerfirma S.A.
# Label: "Chambers of Commerce Root - 2008"
# Serial: 11806822484801597146
# MD5 Fingerprint: 5e:80:9e:84:5a:0e:65:0b:17:02:f3:55:18:2a:3e:d7
# SHA1 Fingerprint: 78:6a:74:ac:76:ab:14:7f:9c:6a:30:50:ba:9e:a8:7e:fe:9a:ce:3c
# SHA256 Fingerprint: 06:3e:4a:fa:c4:91:df:d3:32:f3:08:9b:85:42:e9:46:17:d8:93:d7:fe:94:4e:10:a7:93:7e:e2:9d:96:93:c0
-----BEGIN CERTIFICATE-----
MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0
IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3
MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xKTAnBgNVBAMTIENoYW1iZXJz
IG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEyMjk1MFoXDTM4MDcz
MTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBj
dXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIw
EAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEp
MCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0G
CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW9
28sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKAXuFixrYp4YFs8r/lfTJq
VKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorjh40G072Q
DuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR
5gN/ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL
ZEFHcpOrUMPrCXZkNNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05a
Sd+pZgvMPMZ4fKecHePOjlO+Bd5gD2vlGts/4+EhySnB8esHnFIbAURRPHsl18Tl
UlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331lubKgdaX8ZSD6e2wsWsSaR6s
+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ0wlf2eOKNcx5
Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj
ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAx
hduub+84Mxh2EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNV
HQ4EFgQU+SSsD7K1+HnA+mCIG8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1
+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpN
YWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29t
L2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVy
ZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAt
IDIwMDiCCQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRV
HSAAMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20w
DQYJKoZIhvcNAQEFBQADggIBAJASryI1wqM58C7e6bXpeHxIvj99RZJe6dqxGfwW
PJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH3qLPaYRgM+gQDROpI9CF
5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbURWpGqOt1
glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaH
FoI6M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2
pSB7+R5KBWIBpih1YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MD
xvbxrN8y8NmBGuScvfaAFPDRLLmF9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QG
tjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcKzBIKinmwPQN/aUv0NCB9szTq
jktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvGnrDQWzilm1De
fhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg
OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZ
d0jQ
-----END CERTIFICATE-----
# Issuer: CN=Global Chambersign Root - 2008 O=AC Camerfirma S.A.
# Subject: CN=Global Chambersign Root - 2008 O=AC Camerfirma S.A.
# Label: "Global Chambersign Root - 2008"
# Serial: 14541511773111788494
# MD5 Fingerprint: 9e:80:ff:78:01:0c:2e:c1:36:bd:fe:96:90:6e:08:f3
# SHA1 Fingerprint: 4a:bd:ee:ec:95:0d:35:9c:89:ae:c7:52:a1:2c:5b:29:f6:d6:aa:0c
# SHA256 Fingerprint: 13:63:35:43:93:34:a7:69:80:16:a0:d3:24:de:72:28:4e:07:9d:7b:52:20:bb:8f:bd:74:78:16:ee:be:ba:ca
-----BEGIN CERTIFICATE-----
MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYD
VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0
IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3
MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD
aGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMxNDBaFw0zODA3MzEx
MjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3Vy
cmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAG
A1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAl
BgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZI
hvcNAQEBBQADggIPADCCAgoCggIBAMDfVtPkOpt2RbQT2//BthmLN0EYlVJH6xed
KYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXfXjaOcNFccUMd2drvXNL7
G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0ZJJ0YPP2
zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4
ddPB/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyG
HoiMvvKRhI9lNNgATH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2
Id3UwD2ln58fQ1DJu7xsepeY7s2MH/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3V
yJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfeOx2YItaswTXbo6Al/3K1dh3e
beksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSFHTynyQbehP9r
6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh
wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsog
zCtLkykPAgMBAAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW
BBS5CcqcHtvTbDprru1U8VuTBjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDpr
ru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UEBhMCRVUxQzBBBgNVBAcTOk1hZHJp
ZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJmaXJtYS5jb20vYWRk
cmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJmaXJt
YSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiC
CQDJzdPp1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCow
KAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZI
hvcNAQEFBQADggIBAICIf3DekijZBZRG/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZ
UohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6ReAJ3spED8IXDneRRXoz
X1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/sdZ7LoR/x
fxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVz
a2Mg9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yyd
Yhz2rXzdpjEetrHHfoUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMd
SqlapskD7+3056huirRXhOukP9DuqqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9O
AP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETrP3iZ8ntxPjzxmKfFGBI/5rso
M0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVqc5iJWzouE4ge
v8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z
09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B
-----END CERTIFICATE-----
# Issuer: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc.
# Subject: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc.
# Label: "Go Daddy Root Certificate Authority - G2"
# Serial: 0
# MD5 Fingerprint: 80:3a:bc:22:c1:e6:fb:8d:9b:3b:27:4a:32:1b:9a:01
# SHA1 Fingerprint: 47:be:ab:c9:22:ea:e8:0e:78:78:34:62:a7:9f:45:c2:54:fd:e6:8b
# SHA256 Fingerprint: 45:14:0b:32:47:eb:9c:c8:c5:b4:f0:d7:b5:30:91:f7:32:92:08:9e:6e:5a:63:e2:74:9d:d3:ac:a9:19:8e:da
-----BEGIN CERTIFICATE-----
MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT
EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp
ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz
NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH
EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE
AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD
E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH
/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy
DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh
GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR
tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA
AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE
FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX
WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu
9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr
gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo
2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO
LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI
4uJEvlz36hz1
-----END CERTIFICATE-----
# Issuer: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc.
# Subject: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc.
# Label: "Starfield Root Certificate Authority - G2"
# Serial: 0
# MD5 Fingerprint: d6:39:81:c6:52:7e:96:69:fc:fc:ca:66:ed:05:f2:96
# SHA1 Fingerprint: b5:1c:06:7c:ee:2b:0c:3d:f8:55:ab:2d:92:f4:fe:39:d4:e7:0f:0e
# SHA256 Fingerprint: 2c:e1:cb:0b:f9:d2:f9:e1:02:99:3f:be:21:51:52:c3:b2:dd:0c:ab:de:1c:68:e5:31:9b:83:91:54:db:b7:f5
-----BEGIN CERTIFICATE-----
MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx
EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT
HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs
ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw
MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6
b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj
aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp
Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg
nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1
HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N
Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN
dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0
HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO
BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G
CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU
sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3
4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg
8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K
pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1
mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0
-----END CERTIFICATE-----
# Issuer: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc.
# Subject: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc.
# Label: "Starfield Services Root Certificate Authority - G2"
# Serial: 0
# MD5 Fingerprint: 17:35:74:af:7b:61:1c:eb:f4:f9:3c:e2:ee:40:f9:a2
# SHA1 Fingerprint: 92:5a:8f:8d:2c:6d:04:e0:66:5f:59:6a:ff:22:d8:63:e8:25:6f:3f
# SHA256 Fingerprint: 56:8d:69:05:a2:c8:87:08:a4:b3:02:51:90:ed:cf:ed:b1:97:4a:60:6a:13:c6:e5:29:0f:cb:2a:e6:3e:da:b5
-----BEGIN CERTIFICATE-----
MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx
EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT
HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs
ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5
MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD
VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy
ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy
dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p
OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2
8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K
Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe
hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk
6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw
DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q
AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI
bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB
ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z
qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd
iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn
0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN
sSi6
-----END CERTIFICATE-----
# Issuer: CN=AffirmTrust Commercial O=AffirmTrust
# Subject: CN=AffirmTrust Commercial O=AffirmTrust
# Label: "AffirmTrust Commercial"
# Serial: 8608355977964138876
# MD5 Fingerprint: 82:92:ba:5b:ef:cd:8a:6f:a6:3d:55:f9:84:f6:d6:b7
# SHA1 Fingerprint: f9:b5:b6:32:45:5f:9c:be:ec:57:5f:80:dc:e9:6e:2c:c7:b2:78:b7
# SHA256 Fingerprint: 03:76:ab:1d:54:c5:f9:80:3c:e4:b2:e2:01:a0:ee:7e:ef:7b:57:b6:36:e8:a9:3c:9b:8d:48:60:c9:6f:5f:a7
-----BEGIN CERTIFICATE-----
MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE
BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz
dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL
MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp
cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP
Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr
ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL
MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1
yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr
VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/
nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ
KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG
XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj
vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt
Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g
N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC
nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8=
-----END CERTIFICATE-----
# Issuer: CN=AffirmTrust Networking O=AffirmTrust
# Subject: CN=AffirmTrust Networking O=AffirmTrust
# Label: "AffirmTrust Networking"
# Serial: 8957382827206547757
# MD5 Fingerprint: 42:65:ca:be:01:9a:9a:4c:a9:8c:41:49:cd:c0:d5:7f
# SHA1 Fingerprint: 29:36:21:02:8b:20:ed:02:f5:66:c5:32:d1:d6:ed:90:9f:45:00:2f
# SHA256 Fingerprint: 0a:81:ec:5a:92:97:77:f1:45:90:4a:f3:8d:5d:50:9f:66:b5:e2:c5:8f:cd:b5:31:05:8b:0e:17:f3:f0:b4:1b
-----BEGIN CERTIFICATE-----
MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE
BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz
dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL
MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp
cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y
YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua
kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL
QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp
6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG
yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i
QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ
KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO
tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu
QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ
Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u
olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48
x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s=
-----END CERTIFICATE-----
# Issuer: CN=AffirmTrust Premium O=AffirmTrust
# Subject: CN=AffirmTrust Premium O=AffirmTrust
# Label: "AffirmTrust Premium"
# Serial: 7893706540734352110
# MD5 Fingerprint: c4:5d:0e:48:b6:ac:28:30:4e:0a:bc:f9:38:16:87:57
# SHA1 Fingerprint: d8:a6:33:2c:e0:03:6f:b1:85:f6:63:4f:7d:6a:06:65:26:32:28:27
# SHA256 Fingerprint: 70:a7:3f:7f:37:6b:60:07:42:48:90:45:34:b1:14:82:d5:bf:0e:69:8e:cc:49:8d:f5:25:77:eb:f2:e9:3b:9a
-----BEGIN CERTIFICATE-----
MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE
BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz
dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG
A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U
cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf
qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ
JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ
+jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS
s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5
HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7
70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG
V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S
qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S
5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia
C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX
OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE
FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/
BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2
KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg
Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B
8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ
MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc
0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ
u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF
u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH
YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8
GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO
RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e
KeC2uAloGRwYQw==
-----END CERTIFICATE-----
# Issuer: CN=AffirmTrust Premium ECC O=AffirmTrust
# Subject: CN=AffirmTrust Premium ECC O=AffirmTrust
# Label: "AffirmTrust Premium ECC"
# Serial: 8401224907861490260
# MD5 Fingerprint: 64:b0:09:55:cf:b1:d5:99:e2:be:13:ab:a6:5d:ea:4d
# SHA1 Fingerprint: b8:23:6b:00:2f:1d:16:86:53:01:55:6c:11:a4:37:ca:eb:ff:c3:bb
# SHA256 Fingerprint: bd:71:fd:f6:da:97:e4:cf:62:d1:64:7a:dd:25:81:b0:7d:79:ad:f8:39:7e:b4:ec:ba:9c:5e:84:88:82:14:23
-----BEGIN CERTIFICATE-----
MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC
VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ
cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ
BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt
VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D
0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9
ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G
A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G
A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs
aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I
flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ==
-----END CERTIFICATE-----
# Issuer: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority
# Subject: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority
# Label: "Certum Trusted Network CA"
# Serial: 279744
# MD5 Fingerprint: d5:e9:81:40:c5:18:69:fc:46:2c:89:75:62:0f:aa:78
# SHA1 Fingerprint: 07:e0:32:e0:20:b7:2c:3f:19:2f:06:28:a2:59:3a:19:a7:0f:06:9e
# SHA256 Fingerprint: 5c:58:46:8d:55:f5:8e:49:7e:74:39:82:d2:b5:00:10:b6:d1:65:37:4a:cf:83:a7:d4:a3:2d:b7:68:c4:40:8e
-----BEGIN CERTIFICATE-----
MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM
MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D
ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU
cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3
WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg
Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw
IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH
UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM
TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU
BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM
kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x
AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV
HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y
sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL
I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8
J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY
VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI
03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw=
-----END CERTIFICATE-----
# Issuer: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA
# Subject: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA
# Label: "TWCA Root Certification Authority"
# Serial: 1
# MD5 Fingerprint: aa:08:8f:f6:f9:7b:b7:f2:b1:a7:1e:9b:ea:ea:bd:79
# SHA1 Fingerprint: cf:9e:87:6d:d3:eb:fc:42:26:97:a3:b5:a3:7a:a0:76:a9:06:23:48
# SHA256 Fingerprint: bf:d8:8f:e1:10:1c:41:ae:3e:80:1b:f8:be:56:35:0e:e9:ba:d1:a6:b9:bd:51:5e:dc:5c:6d:5b:87:11:ac:44
-----BEGIN CERTIFICATE-----
MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES
MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU
V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz
WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO
LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm
aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE
AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH
K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX
RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z
rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx
3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq
hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC
MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls
XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D
lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn
aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ
YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw==
-----END CERTIFICATE-----
# Issuer: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2
# Subject: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2
# Label: "Security Communication RootCA2"
# Serial: 0
# MD5 Fingerprint: 6c:39:7d:a4:0e:55:59:b2:3f:d6:41:b1:12:50:de:43
# SHA1 Fingerprint: 5f:3b:8c:f2:f8:10:b3:7d:78:b4:ce:ec:19:19:c3:73:34:b9:c7:74
# SHA256 Fingerprint: 51:3b:2c:ec:b8:10:d4:cd:e5:dd:85:39:1a:df:c6:c2:dd:60:d8:7b:b7:36:d2:b5:21:48:4a:a4:7a:0e:be:f6
-----BEGIN CERTIFICATE-----
MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl
MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe
U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX
DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy
dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj
YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV
OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr
zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM
VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ
hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO
ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw
awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs
OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3
DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF
coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc
okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8
t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy
1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/
SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03
-----END CERTIFICATE-----
# Issuer: CN=EC-ACC O=Agencia Catalana de Certificacio (NIF Q-0801176-I) OU=Serveis Publics de Certificacio/Vegeu https://www.catcert.net/verarrel (c)03/Jerarquia Entitats de Certificacio Catalanes
# Subject: CN=EC-ACC O=Agencia Catalana de Certificacio (NIF Q-0801176-I) OU=Serveis Publics de Certificacio/Vegeu https://www.catcert.net/verarrel (c)03/Jerarquia Entitats de Certificacio Catalanes
# Label: "EC-ACC"
# Serial: -23701579247955709139626555126524820479
# MD5 Fingerprint: eb:f5:9d:29:0d:61:f9:42:1f:7c:c2:ba:6d:e3:15:09
# SHA1 Fingerprint: 28:90:3a:63:5b:52:80:fa:e6:77:4c:0b:6d:a7:d6:ba:a6:4a:f2:e8
# SHA256 Fingerprint: 88:49:7f:01:60:2f:31:54:24:6a:e2:8c:4d:5a:ef:10:f1:d8:7e:bb:76:62:6f:4a:e0:b7:f9:5b:a7:96:87:99
-----BEGIN CERTIFICATE-----
MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB
8zELMAkGA1UEBhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2Vy
dGlmaWNhY2lvIChOSUYgUS0wODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1
YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYDVQQLEyxWZWdldSBodHRwczovL3d3
dy5jYXRjZXJ0Lm5ldC92ZXJhcnJl
gitextract_920zid03/
├── .idea/
│ ├── encodings.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── spot-trend-grid.iml
│ ├── vcs.xml
│ └── workspace.xml
├── LICENSE
├── README.en.md
├── README.md
├── __init__.py
├── app/
│ ├── BinanceAPI.py
│ ├── __init__.py
│ ├── authorization.py
│ └── dingding.py
├── data/
│ ├── __init__.py
│ ├── calcIndex.py
│ ├── data.json
│ └── runBetData.py
├── dev-ReadMe.md
├── run.py
└── venv/
├── bin/
│ ├── Activate.ps1
│ ├── activate
│ ├── activate.csh
│ ├── activate.fish
│ ├── chardetect
│ ├── easy_install
│ ├── easy_install-3.8
│ ├── pip
│ ├── pip3
│ ├── pip3.8
│ ├── python
│ ├── python3
│ └── python3.8
├── lib/
│ └── python3.8/
│ └── site-packages/
│ ├── certifi/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── cacert.pem
│ │ └── core.py
│ ├── certifi-2020.11.8.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── chardet/
│ │ ├── __init__.py
│ │ ├── big5freq.py
│ │ ├── big5prober.py
│ │ ├── chardistribution.py
│ │ ├── charsetgroupprober.py
│ │ ├── charsetprober.py
│ │ ├── cli/
│ │ │ ├── __init__.py
│ │ │ └── chardetect.py
│ │ ├── codingstatemachine.py
│ │ ├── compat.py
│ │ ├── cp949prober.py
│ │ ├── enums.py
│ │ ├── escprober.py
│ │ ├── escsm.py
│ │ ├── eucjpprober.py
│ │ ├── euckrfreq.py
│ │ ├── euckrprober.py
│ │ ├── euctwfreq.py
│ │ ├── euctwprober.py
│ │ ├── gb2312freq.py
│ │ ├── gb2312prober.py
│ │ ├── hebrewprober.py
│ │ ├── jisfreq.py
│ │ ├── jpcntx.py
│ │ ├── langbulgarianmodel.py
│ │ ├── langcyrillicmodel.py
│ │ ├── langgreekmodel.py
│ │ ├── langhebrewmodel.py
│ │ ├── langhungarianmodel.py
│ │ ├── langthaimodel.py
│ │ ├── langturkishmodel.py
│ │ ├── latin1prober.py
│ │ ├── mbcharsetprober.py
│ │ ├── mbcsgroupprober.py
│ │ ├── mbcssm.py
│ │ ├── sbcharsetprober.py
│ │ ├── sbcsgroupprober.py
│ │ ├── sjisprober.py
│ │ ├── universaldetector.py
│ │ ├── utf8prober.py
│ │ └── version.py
│ ├── chardet-3.0.4.dist-info/
│ │ ├── DESCRIPTION.rst
│ │ ├── INSTALLER
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ ├── entry_points.txt
│ │ ├── metadata.json
│ │ └── top_level.txt
│ ├── easy-install.pth
│ ├── idna/
│ │ ├── __init__.py
│ │ ├── codec.py
│ │ ├── compat.py
│ │ ├── core.py
│ │ ├── idnadata.py
│ │ ├── intranges.py
│ │ ├── package_data.py
│ │ └── uts46data.py
│ ├── idna-2.10.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE.rst
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── pip-10.0.1-py3.8.egg/
│ │ ├── EGG-INFO/
│ │ │ ├── PKG-INFO
│ │ │ ├── SOURCES.txt
│ │ │ ├── dependency_links.txt
│ │ │ ├── entry_points.txt
│ │ │ ├── not-zip-safe
│ │ │ ├── requires.txt
│ │ │ └── top_level.txt
│ │ └── pip/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── _internal/
│ │ │ ├── __init__.py
│ │ │ ├── basecommand.py
│ │ │ ├── baseparser.py
│ │ │ ├── build_env.py
│ │ │ ├── cache.py
│ │ │ ├── cmdoptions.py
│ │ │ ├── commands/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── check.py
│ │ │ │ ├── completion.py
│ │ │ │ ├── configuration.py
│ │ │ │ ├── download.py
│ │ │ │ ├── freeze.py
│ │ │ │ ├── hash.py
│ │ │ │ ├── help.py
│ │ │ │ ├── install.py
│ │ │ │ ├── list.py
│ │ │ │ ├── search.py
│ │ │ │ ├── show.py
│ │ │ │ ├── uninstall.py
│ │ │ │ └── wheel.py
│ │ │ ├── compat.py
│ │ │ ├── configuration.py
│ │ │ ├── download.py
│ │ │ ├── exceptions.py
│ │ │ ├── index.py
│ │ │ ├── locations.py
│ │ │ ├── models/
│ │ │ │ ├── __init__.py
│ │ │ │ └── index.py
│ │ │ ├── operations/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── check.py
│ │ │ │ ├── freeze.py
│ │ │ │ └── prepare.py
│ │ │ ├── pep425tags.py
│ │ │ ├── req/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── req_file.py
│ │ │ │ ├── req_install.py
│ │ │ │ ├── req_set.py
│ │ │ │ └── req_uninstall.py
│ │ │ ├── resolve.py
│ │ │ ├── status_codes.py
│ │ │ ├── utils/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── appdirs.py
│ │ │ │ ├── deprecation.py
│ │ │ │ ├── encoding.py
│ │ │ │ ├── filesystem.py
│ │ │ │ ├── glibc.py
│ │ │ │ ├── hashes.py
│ │ │ │ ├── logging.py
│ │ │ │ ├── misc.py
│ │ │ │ ├── outdated.py
│ │ │ │ ├── packaging.py
│ │ │ │ ├── setuptools_build.py
│ │ │ │ ├── temp_dir.py
│ │ │ │ ├── typing.py
│ │ │ │ └── ui.py
│ │ │ ├── vcs/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── bazaar.py
│ │ │ │ ├── git.py
│ │ │ │ ├── mercurial.py
│ │ │ │ └── subversion.py
│ │ │ └── wheel.py
│ │ └── _vendor/
│ │ ├── __init__.py
│ │ ├── appdirs.py
│ │ ├── cachecontrol/
│ │ │ ├── __init__.py
│ │ │ ├── _cmd.py
│ │ │ ├── adapter.py
│ │ │ ├── cache.py
│ │ │ ├── caches/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── file_cache.py
│ │ │ │ └── redis_cache.py
│ │ │ ├── compat.py
│ │ │ ├── controller.py
│ │ │ ├── filewrapper.py
│ │ │ ├── heuristics.py
│ │ │ ├── serialize.py
│ │ │ └── wrapper.py
│ │ ├── certifi/
│ │ │ ├── __init__.py
│ │ │ ├── __main__.py
│ │ │ ├── cacert.pem
│ │ │ └── core.py
│ │ ├── chardet/
│ │ │ ├── __init__.py
│ │ │ ├── big5freq.py
│ │ │ ├── big5prober.py
│ │ │ ├── chardistribution.py
│ │ │ ├── charsetgroupprober.py
│ │ │ ├── charsetprober.py
│ │ │ ├── cli/
│ │ │ │ ├── __init__.py
│ │ │ │ └── chardetect.py
│ │ │ ├── codingstatemachine.py
│ │ │ ├── compat.py
│ │ │ ├── cp949prober.py
│ │ │ ├── enums.py
│ │ │ ├── escprober.py
│ │ │ ├── escsm.py
│ │ │ ├── eucjpprober.py
│ │ │ ├── euckrfreq.py
│ │ │ ├── euckrprober.py
│ │ │ ├── euctwfreq.py
│ │ │ ├── euctwprober.py
│ │ │ ├── gb2312freq.py
│ │ │ ├── gb2312prober.py
│ │ │ ├── hebrewprober.py
│ │ │ ├── jisfreq.py
│ │ │ ├── jpcntx.py
│ │ │ ├── langbulgarianmodel.py
│ │ │ ├── langcyrillicmodel.py
│ │ │ ├── langgreekmodel.py
│ │ │ ├── langhebrewmodel.py
│ │ │ ├── langhungarianmodel.py
│ │ │ ├── langthaimodel.py
│ │ │ ├── langturkishmodel.py
│ │ │ ├── latin1prober.py
│ │ │ ├── mbcharsetprober.py
│ │ │ ├── mbcsgroupprober.py
│ │ │ ├── mbcssm.py
│ │ │ ├── sbcharsetprober.py
│ │ │ ├── sbcsgroupprober.py
│ │ │ ├── sjisprober.py
│ │ │ ├── universaldetector.py
│ │ │ ├── utf8prober.py
│ │ │ └── version.py
│ │ ├── colorama/
│ │ │ ├── __init__.py
│ │ │ ├── ansi.py
│ │ │ ├── ansitowin32.py
│ │ │ ├── initialise.py
│ │ │ ├── win32.py
│ │ │ └── winterm.py
│ │ ├── distlib/
│ │ │ ├── __init__.py
│ │ │ ├── _backport/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── misc.py
│ │ │ │ ├── shutil.py
│ │ │ │ ├── sysconfig.cfg
│ │ │ │ ├── sysconfig.py
│ │ │ │ └── tarfile.py
│ │ │ ├── compat.py
│ │ │ ├── database.py
│ │ │ ├── index.py
│ │ │ ├── locators.py
│ │ │ ├── manifest.py
│ │ │ ├── markers.py
│ │ │ ├── metadata.py
│ │ │ ├── resources.py
│ │ │ ├── scripts.py
│ │ │ ├── util.py
│ │ │ ├── version.py
│ │ │ └── wheel.py
│ │ ├── distro.py
│ │ ├── html5lib/
│ │ │ ├── __init__.py
│ │ │ ├── _ihatexml.py
│ │ │ ├── _inputstream.py
│ │ │ ├── _tokenizer.py
│ │ │ ├── _trie/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _base.py
│ │ │ │ ├── datrie.py
│ │ │ │ └── py.py
│ │ │ ├── _utils.py
│ │ │ ├── constants.py
│ │ │ ├── filters/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── alphabeticalattributes.py
│ │ │ │ ├── base.py
│ │ │ │ ├── inject_meta_charset.py
│ │ │ │ ├── lint.py
│ │ │ │ ├── optionaltags.py
│ │ │ │ ├── sanitizer.py
│ │ │ │ └── whitespace.py
│ │ │ ├── html5parser.py
│ │ │ ├── serializer.py
│ │ │ ├── treeadapters/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── genshi.py
│ │ │ │ └── sax.py
│ │ │ ├── treebuilders/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── dom.py
│ │ │ │ ├── etree.py
│ │ │ │ └── etree_lxml.py
│ │ │ └── treewalkers/
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── dom.py
│ │ │ ├── etree.py
│ │ │ ├── etree_lxml.py
│ │ │ └── genshi.py
│ │ ├── idna/
│ │ │ ├── __init__.py
│ │ │ ├── codec.py
│ │ │ ├── compat.py
│ │ │ ├── core.py
│ │ │ ├── idnadata.py
│ │ │ ├── intranges.py
│ │ │ ├── package_data.py
│ │ │ └── uts46data.py
│ │ ├── ipaddress.py
│ │ ├── lockfile/
│ │ │ ├── __init__.py
│ │ │ ├── linklockfile.py
│ │ │ ├── mkdirlockfile.py
│ │ │ ├── pidlockfile.py
│ │ │ ├── sqlitelockfile.py
│ │ │ └── symlinklockfile.py
│ │ ├── msgpack/
│ │ │ ├── __init__.py
│ │ │ ├── _version.py
│ │ │ ├── exceptions.py
│ │ │ └── fallback.py
│ │ ├── packaging/
│ │ │ ├── __about__.py
│ │ │ ├── __init__.py
│ │ │ ├── _compat.py
│ │ │ ├── _structures.py
│ │ │ ├── markers.py
│ │ │ ├── requirements.py
│ │ │ ├── specifiers.py
│ │ │ ├── utils.py
│ │ │ └── version.py
│ │ ├── pkg_resources/
│ │ │ ├── __init__.py
│ │ │ └── py31compat.py
│ │ ├── progress/
│ │ │ ├── __init__.py
│ │ │ ├── bar.py
│ │ │ ├── counter.py
│ │ │ ├── helpers.py
│ │ │ └── spinner.py
│ │ ├── pyparsing.py
│ │ ├── pytoml/
│ │ │ ├── __init__.py
│ │ │ ├── core.py
│ │ │ ├── parser.py
│ │ │ └── writer.py
│ │ ├── requests/
│ │ │ ├── __init__.py
│ │ │ ├── __version__.py
│ │ │ ├── _internal_utils.py
│ │ │ ├── adapters.py
│ │ │ ├── api.py
│ │ │ ├── auth.py
│ │ │ ├── certs.py
│ │ │ ├── compat.py
│ │ │ ├── cookies.py
│ │ │ ├── exceptions.py
│ │ │ ├── help.py
│ │ │ ├── hooks.py
│ │ │ ├── models.py
│ │ │ ├── packages.py
│ │ │ ├── sessions.py
│ │ │ ├── status_codes.py
│ │ │ ├── structures.py
│ │ │ └── utils.py
│ │ ├── retrying.py
│ │ ├── six.py
│ │ ├── urllib3/
│ │ │ ├── __init__.py
│ │ │ ├── _collections.py
│ │ │ ├── connection.py
│ │ │ ├── connectionpool.py
│ │ │ ├── contrib/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _securetransport/
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── bindings.py
│ │ │ │ │ └── low_level.py
│ │ │ │ ├── appengine.py
│ │ │ │ ├── ntlmpool.py
│ │ │ │ ├── pyopenssl.py
│ │ │ │ ├── securetransport.py
│ │ │ │ └── socks.py
│ │ │ ├── exceptions.py
│ │ │ ├── fields.py
│ │ │ ├── filepost.py
│ │ │ ├── packages/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── backports/
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ └── makefile.py
│ │ │ │ ├── ordered_dict.py
│ │ │ │ ├── six.py
│ │ │ │ └── ssl_match_hostname/
│ │ │ │ ├── __init__.py
│ │ │ │ └── _implementation.py
│ │ │ ├── poolmanager.py
│ │ │ ├── request.py
│ │ │ ├── response.py
│ │ │ └── util/
│ │ │ ├── __init__.py
│ │ │ ├── connection.py
│ │ │ ├── request.py
│ │ │ ├── response.py
│ │ │ ├── retry.py
│ │ │ ├── selectors.py
│ │ │ ├── ssl_.py
│ │ │ ├── timeout.py
│ │ │ ├── url.py
│ │ │ └── wait.py
│ │ └── webencodings/
│ │ ├── __init__.py
│ │ ├── labels.py
│ │ ├── mklabels.py
│ │ ├── tests.py
│ │ └── x_user_defined.py
│ ├── requests/
│ │ ├── __init__.py
│ │ ├── __version__.py
│ │ ├── _internal_utils.py
│ │ ├── adapters.py
│ │ ├── api.py
│ │ ├── auth.py
│ │ ├── certs.py
│ │ ├── compat.py
│ │ ├── cookies.py
│ │ ├── exceptions.py
│ │ ├── help.py
│ │ ├── hooks.py
│ │ ├── models.py
│ │ ├── packages.py
│ │ ├── sessions.py
│ │ ├── status_codes.py
│ │ ├── structures.py
│ │ └── utils.py
│ ├── requests-2.25.0.dist-info/
│ │ ├── INSTALLER
│ │ ├── LICENSE
│ │ ├── METADATA
│ │ ├── RECORD
│ │ ├── WHEEL
│ │ └── top_level.txt
│ ├── setuptools-39.1.0-py3.8.egg
│ ├── setuptools.pth
│ ├── urllib3/
│ │ ├── __init__.py
│ │ ├── _collections.py
│ │ ├── _version.py
│ │ ├── connection.py
│ │ ├── connectionpool.py
│ │ ├── contrib/
│ │ │ ├── __init__.py
│ │ │ ├── _appengine_environ.py
│ │ │ ├── _securetransport/
│ │ │ │ ├── __init__.py
│ │ │ │ ├── bindings.py
│ │ │ │ └── low_level.py
│ │ │ ├── appengine.py
│ │ │ ├── ntlmpool.py
│ │ │ ├── pyopenssl.py
│ │ │ ├── securetransport.py
│ │ │ └── socks.py
│ │ ├── exceptions.py
│ │ ├── fields.py
│ │ ├── filepost.py
│ │ ├── packages/
│ │ │ ├── __init__.py
│ │ │ ├── backports/
│ │ │ │ ├── __init__.py
│ │ │ │ └── makefile.py
│ │ │ ├── six.py
│ │ │ └── ssl_match_hostname/
│ │ │ ├── __init__.py
│ │ │ └── _implementation.py
│ │ ├── poolmanager.py
│ │ ├── request.py
│ │ ├── response.py
│ │ └── util/
│ │ ├── __init__.py
│ │ ├── connection.py
│ │ ├── proxy.py
│ │ ├── queue.py
│ │ ├── request.py
│ │ ├── response.py
│ │ ├── retry.py
│ │ ├── ssl_.py
│ │ ├── ssltransport.py
│ │ ├── timeout.py
│ │ ├── url.py
│ │ └── wait.py
│ └── urllib3-1.26.2.dist-info/
│ ├── INSTALLER
│ ├── LICENSE.txt
│ ├── METADATA
│ ├── RECORD
│ ├── WHEEL
│ └── top_level.txt
├── pip-selfcheck.json
└── pyvenv.cfg
Showing preview only (415K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (5647 symbols across 308 files)
FILE: app/BinanceAPI.py
class BinanceAPI (line 15) | class BinanceAPI(object):
method __init__ (line 21) | def __init__(self, key, secret):
method ping (line 25) | def ping(self):
method get_ticker_price (line 29) | def get_ticker_price(self,market,rotate_count=0):
method get_ticker_24hour (line 40) | def get_ticker_24hour(self,market):
method get_klines (line 46) | def get_klines(self, market, interval, limit,startTime=None, endTime=N...
method buy_limit (line 56) | def buy_limit(self, market, quantity, rate):
method sell_limit (line 61) | def sell_limit(self, market, quantity, rate):
method buy_market (line 66) | def buy_market(self, market, quantity):
method sell_market (line 71) | def sell_market(self, market, quantity):
method get_ticker_24hour (line 76) | def get_ticker_24hour(self,market):
method get_positionInfo (line 82) | def get_positionInfo(self, symbol):
method get_future_positionInfo (line 89) | def get_future_positionInfo(self, symbol):
method dingding_warn (line 97) | def dingding_warn(self,text):
method get_cointype (line 113) | def get_cointype(self):
method _order (line 121) | def _order(self, market, quantity, side, price=None):
method _get (line 144) | def _get(self, path, params={}):
method _get_no_sign (line 156) | def _get_no_sign(self, path, params={}):
method _sign (line 172) | def _sign(self, params={}):
method _post (line 184) | def _post(self, path, params={}):
method _format (line 198) | def _format(self, price):
FILE: app/dingding.py
class Message (line 9) | class Message:
method buy_market_msg (line 11) | def buy_market_msg(self, market, quantity):
method buy_limit_msg (line 32) | def buy_limit_msg(self, market, quantity,price):
method sell_market_msg (line 54) | def sell_market_msg(self,market, quantity,profit_usdt=0):
method sell_limit_msg (line 81) | def sell_limit_msg(self,market, quantity,price,profit_usdt=0):
method dingding_warn (line 107) | def dingding_warn(self,text):
method _msg (line 113) | def _msg(self,text):
FILE: data/calcIndex.py
class CalcIndex (line 8) | class CalcIndex:
method __init__ (line 10) | def __init__(self):
method is_open_position (line 56) | def is_open_position(self,symbol):
method get_earn (line 70) | def get_earn(self):
method calcSlopeMA5 (line 78) | def calcSlopeMA5(self,symbol,interval,point):
method calcAngle (line 115) | def calcAngle(self,symbol,interval,direction,point):
method calcMA10 (line 129) | def calcMA10(self,symbol,interval,point):
method get_position_price (line 137) | def get_position_price(self,direction=True):
FILE: data/runBetData.py
class RunBetData (line 11) | class RunBetData:
method _get_json_data (line 13) | def _get_json_data(self):
method _modify_json_data (line 22) | def _modify_json_data(self,data):
method get_coinList (line 31) | def get_coinList(self):
method get_buy_price (line 35) | def get_buy_price(self,symbol):
method get_sell_price (line 40) | def get_sell_price(self,symbol):
method get_cointype (line 44) | def get_cointype(self,symbol):
method get_record_price (line 48) | def get_record_price(self,symbol):
method get_quantity (line 54) | def get_quantity(self,symbol,exchange_method=True):
method get_step (line 71) | def get_step(self,symbol):
method remove_record_price (line 75) | def remove_record_price(self,symbol):
method get_profit_ratio (line 82) | def get_profit_ratio(self,symbol):
method get_double_throw_ratio (line 87) | def get_double_throw_ratio(self,symbol):
method set_record_price (line 92) | def set_record_price(self,symbol,value):
method get_atr (line 98) | def get_atr(self,symbol,interval='4h',kline_num=20):
method set_ratio (line 107) | def set_ratio(self,symbol):
method modify_price (line 117) | def modify_price(self,symbol, deal_price,step,market_price):
FILE: run.py
class Run_Main (line 15) | class Run_Main():
method __init__ (line 17) | def __init__(self):
method pre_data (line 21) | def pre_data(self,cointype):
method loop_run (line 32) | def loop_run(self):
FILE: venv/lib/python3.8/site-packages/certifi/core.py
function where (line 17) | def where():
function read_text (line 47) | def read_text(_module, _path, encoding="ascii"):
function where (line 53) | def where():
function contents (line 59) | def contents():
FILE: venv/lib/python3.8/site-packages/chardet/__init__.py
function detect (line 24) | def detect(byte_str):
FILE: venv/lib/python3.8/site-packages/chardet/big5prober.py
class Big5Prober (line 34) | class Big5Prober(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 42) | def charset_name(self):
method language (line 46) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/chardistribution.py
class CharDistributionAnalysis (line 40) | class CharDistributionAnalysis(object):
method __init__ (line 46) | def __init__(self):
method reset (line 61) | def reset(self):
method feed (line 70) | def feed(self, char, char_len):
method get_confidence (line 84) | def get_confidence(self):
method got_enough_data (line 100) | def got_enough_data(self):
method get_order (line 105) | def get_order(self, byte_str):
class EUCTWDistributionAnalysis (line 113) | class EUCTWDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 114) | def __init__(self):
method get_order (line 120) | def get_order(self, byte_str):
class EUCKRDistributionAnalysis (line 132) | class EUCKRDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 133) | def __init__(self):
method get_order (line 139) | def get_order(self, byte_str):
class GB2312DistributionAnalysis (line 151) | class GB2312DistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 152) | def __init__(self):
method get_order (line 158) | def get_order(self, byte_str):
class Big5DistributionAnalysis (line 170) | class Big5DistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 171) | def __init__(self):
method get_order (line 177) | def get_order(self, byte_str):
class SJISDistributionAnalysis (line 192) | class SJISDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 193) | def __init__(self):
method get_order (line 199) | def get_order(self, byte_str):
class EUCJPDistributionAnalysis (line 217) | class EUCJPDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 218) | def __init__(self):
method get_order (line 224) | def get_order(self, byte_str):
FILE: venv/lib/python3.8/site-packages/chardet/charsetgroupprober.py
class CharSetGroupProber (line 32) | class CharSetGroupProber(CharSetProber):
method __init__ (line 33) | def __init__(self, lang_filter=None):
method reset (line 39) | def reset(self):
method charset_name (line 50) | def charset_name(self):
method language (line 58) | def language(self):
method feed (line 65) | def feed(self, byte_str):
method get_confidence (line 85) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/charsetprober.py
class CharSetProber (line 35) | class CharSetProber(object):
method __init__ (line 39) | def __init__(self, lang_filter=None):
method reset (line 44) | def reset(self):
method charset_name (line 48) | def charset_name(self):
method feed (line 51) | def feed(self, buf):
method state (line 55) | def state(self):
method get_confidence (line 58) | def get_confidence(self):
method filter_high_byte_only (line 62) | def filter_high_byte_only(buf):
method filter_international_words (line 67) | def filter_international_words(buf):
method filter_with_english_letters (line 104) | def filter_with_english_letters(buf):
FILE: venv/lib/python3.8/site-packages/chardet/cli/chardetect.py
function description_of (line 26) | def description_of(lines, name='stdin'):
function main (line 54) | def main(argv=None):
FILE: venv/lib/python3.8/site-packages/chardet/codingstatemachine.py
class CodingStateMachine (line 33) | class CodingStateMachine(object):
method __init__ (line 55) | def __init__(self, sm):
method reset (line 63) | def reset(self):
method next_state (line 66) | def next_state(self, c):
method get_current_charlen (line 80) | def get_current_charlen(self):
method get_coding_state_machine (line 83) | def get_coding_state_machine(self):
method language (line 87) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/cp949prober.py
class CP949Prober (line 34) | class CP949Prober(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 44) | def charset_name(self):
method language (line 48) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/enums.py
class InputState (line 8) | class InputState(object):
class LanguageFilter (line 17) | class LanguageFilter(object):
class ProbingState (line 32) | class ProbingState(object):
class MachineState (line 41) | class MachineState(object):
class SequenceLikelihood (line 50) | class SequenceLikelihood(object):
method get_num_categories (line 60) | def get_num_categories(cls):
class CharacterCategory (line 65) | class CharacterCategory(object):
FILE: venv/lib/python3.8/site-packages/chardet/escprober.py
class EscCharSetProber (line 35) | class EscCharSetProber(CharSetProber):
method __init__ (line 42) | def __init__(self, lang_filter=None):
method reset (line 58) | def reset(self):
method charset_name (line 70) | def charset_name(self):
method language (line 74) | def language(self):
method get_confidence (line 77) | def get_confidence(self):
method feed (line 83) | def feed(self, byte_str):
FILE: venv/lib/python3.8/site-packages/chardet/eucjpprober.py
class EUCJPProber (line 36) | class EUCJPProber(MultiByteCharSetProber):
method __init__ (line 37) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 49) | def charset_name(self):
method language (line 53) | def language(self):
method feed (line 56) | def feed(self, byte_str):
method get_confidence (line 89) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/euckrprober.py
class EUCKRProber (line 34) | class EUCKRProber(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 42) | def charset_name(self):
method language (line 46) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/euctwprober.py
class EUCTWProber (line 33) | class EUCTWProber(MultiByteCharSetProber):
method __init__ (line 34) | def __init__(self):
method charset_name (line 41) | def charset_name(self):
method language (line 45) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/gb2312prober.py
class GB2312Prober (line 33) | class GB2312Prober(MultiByteCharSetProber):
method __init__ (line 34) | def __init__(self):
method charset_name (line 41) | def charset_name(self):
method language (line 45) | def language(self):
FILE: venv/lib/python3.8/site-packages/chardet/hebrewprober.py
class HebrewProber (line 128) | class HebrewProber(CharSetProber):
method __init__ (line 154) | def __init__(self):
method reset (line 164) | def reset(self):
method set_model_probers (line 174) | def set_model_probers(self, logicalProber, visualProber):
method is_final (line 178) | def is_final(self, c):
method is_non_final (line 182) | def is_non_final(self, c):
method feed (line 196) | def feed(self, byte_str):
method charset_name (line 256) | def charset_name(self):
method language (line 283) | def language(self):
method state (line 287) | def state(self):
FILE: venv/lib/python3.8/site-packages/chardet/jpcntx.py
class JapaneseContextAnalysis (line 116) | class JapaneseContextAnalysis(object):
method __init__ (line 123) | def __init__(self):
method reset (line 131) | def reset(self):
method feed (line 143) | def feed(self, byte_str, num_bytes):
method got_enough_data (line 170) | def got_enough_data(self):
method get_confidence (line 173) | def get_confidence(self):
method get_order (line 180) | def get_order(self, byte_str):
class SJISContextAnalysis (line 183) | class SJISContextAnalysis(JapaneseContextAnalysis):
method __init__ (line 184) | def __init__(self):
method charset_name (line 189) | def charset_name(self):
method get_order (line 192) | def get_order(self, byte_str):
class EUCJPContextAnalysis (line 212) | class EUCJPContextAnalysis(JapaneseContextAnalysis):
method get_order (line 213) | def get_order(self, byte_str):
FILE: venv/lib/python3.8/site-packages/chardet/latin1prober.py
class Latin1Prober (line 96) | class Latin1Prober(CharSetProber):
method __init__ (line 97) | def __init__(self):
method reset (line 103) | def reset(self):
method charset_name (line 109) | def charset_name(self):
method language (line 113) | def language(self):
method feed (line 116) | def feed(self, byte_str):
method get_confidence (line 130) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/mbcharsetprober.py
class MultiByteCharSetProber (line 34) | class MultiByteCharSetProber(CharSetProber):
method __init__ (line 39) | def __init__(self, lang_filter=None):
method reset (line 45) | def reset(self):
method charset_name (line 54) | def charset_name(self):
method language (line 58) | def language(self):
method feed (line 61) | def feed(self, byte_str):
method get_confidence (line 90) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/mbcsgroupprober.py
class MBCSGroupProber (line 41) | class MBCSGroupProber(CharSetGroupProber):
method __init__ (line 42) | def __init__(self, lang_filter=None):
FILE: venv/lib/python3.8/site-packages/chardet/sbcharsetprober.py
class SingleByteCharSetProber (line 33) | class SingleByteCharSetProber(CharSetProber):
method __init__ (line 39) | def __init__(self, model, reversed=False, name_prober=None):
method reset (line 53) | def reset(self):
method charset_name (line 64) | def charset_name(self):
method language (line 71) | def language(self):
method feed (line 77) | def feed(self, byte_str):
method get_confidence (line 124) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/sbcsgroupprober.py
class SBCSGroupProber (line 43) | class SBCSGroupProber(CharSetGroupProber):
method __init__ (line 44) | def __init__(self):
FILE: venv/lib/python3.8/site-packages/chardet/sjisprober.py
class SJISProber (line 36) | class SJISProber(MultiByteCharSetProber):
method __init__ (line 37) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 49) | def charset_name(self):
method language (line 53) | def language(self):
method feed (line 56) | def feed(self, byte_str):
method get_confidence (line 89) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/chardet/universaldetector.py
class UniversalDetector (line 51) | class UniversalDetector(object):
method __init__ (line 81) | def __init__(self, lang_filter=LanguageFilter.ALL):
method reset (line 94) | def reset(self):
method feed (line 111) | def feed(self, byte_str):
method close (line 220) | def close(self):
FILE: venv/lib/python3.8/site-packages/chardet/utf8prober.py
class UTF8Prober (line 35) | class UTF8Prober(CharSetProber):
method __init__ (line 38) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 50) | def charset_name(self):
method language (line 54) | def language(self):
method feed (line 57) | def feed(self, byte_str):
method get_confidence (line 76) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/idna/codec.py
class Codec (line 7) | class Codec(codecs.Codec):
method encode (line 9) | def encode(self, data, errors='strict'):
method decode (line 19) | def decode(self, data, errors='strict'):
class IncrementalEncoder (line 29) | class IncrementalEncoder(codecs.BufferedIncrementalEncoder):
method _buffer_encode (line 30) | def _buffer_encode(self, data, errors, final):
class IncrementalDecoder (line 62) | class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
method _buffer_decode (line 63) | def _buffer_decode(self, data, errors, final):
class StreamWriter (line 103) | class StreamWriter(Codec, codecs.StreamWriter):
class StreamReader (line 106) | class StreamReader(Codec, codecs.StreamReader):
function getregentry (line 109) | def getregentry():
FILE: venv/lib/python3.8/site-packages/idna/compat.py
function ToASCII (line 4) | def ToASCII(label):
function ToUnicode (line 7) | def ToUnicode(label):
function nameprep (line 10) | def nameprep(s):
FILE: venv/lib/python3.8/site-packages/idna/core.py
class IDNAError (line 16) | class IDNAError(UnicodeError):
class IDNABidiError (line 21) | class IDNABidiError(IDNAError):
class InvalidCodepoint (line 26) | class InvalidCodepoint(IDNAError):
class InvalidCodepointContext (line 31) | class InvalidCodepointContext(IDNAError):
function _combining_class (line 36) | def _combining_class(cp):
function _is_script (line 43) | def _is_script(cp, script):
function _punycode (line 46) | def _punycode(s):
function _unot (line 49) | def _unot(s):
function valid_label_length (line 53) | def valid_label_length(label):
function valid_string_length (line 60) | def valid_string_length(label, trailing_dot):
function check_bidi (line 67) | def check_bidi(label, check_ltr=False):
function check_initial_combiner (line 127) | def check_initial_combiner(label):
function check_hyphen_ok (line 134) | def check_hyphen_ok(label):
function check_nfc (line 143) | def check_nfc(label):
function valid_contextj (line 149) | def valid_contextj(label, pos):
function valid_contexto (line 193) | def valid_contexto(label, pos, exception=False):
function check_label (line 234) | def check_label(label):
function alabel (line 266) | def alabel(label):
function ulabel (line 291) | def ulabel(label):
function uts46_remap (line 316) | def uts46_remap(domain, std3_rules=True, transitional=False):
function encode (line 344) | def encode(s, strict=False, uts46=False, std3_rules=False, transitional=...
function decode (line 375) | def decode(s, strict=False, uts46=False, std3_rules=False):
FILE: venv/lib/python3.8/site-packages/idna/intranges.py
function intranges_from_list (line 10) | def intranges_from_list(list_):
function _encode_range (line 31) | def _encode_range(start, end):
function _decode_range (line 34) | def _decode_range(r):
function intranges_contain (line 38) | def intranges_contain(int_, ranges):
FILE: venv/lib/python3.8/site-packages/idna/uts46data.py
function _seg_0 (line 8) | def _seg_0():
function _seg_1 (line 112) | def _seg_1():
function _seg_2 (line 216) | def _seg_2():
function _seg_3 (line 320) | def _seg_3():
function _seg_4 (line 424) | def _seg_4():
function _seg_5 (line 528) | def _seg_5():
function _seg_6 (line 632) | def _seg_6():
function _seg_7 (line 736) | def _seg_7():
function _seg_8 (line 840) | def _seg_8():
function _seg_9 (line 944) | def _seg_9():
function _seg_10 (line 1048) | def _seg_10():
function _seg_11 (line 1152) | def _seg_11():
function _seg_12 (line 1256) | def _seg_12():
function _seg_13 (line 1360) | def _seg_13():
function _seg_14 (line 1464) | def _seg_14():
function _seg_15 (line 1568) | def _seg_15():
function _seg_16 (line 1672) | def _seg_16():
function _seg_17 (line 1776) | def _seg_17():
function _seg_18 (line 1880) | def _seg_18():
function _seg_19 (line 1984) | def _seg_19():
function _seg_20 (line 2088) | def _seg_20():
function _seg_21 (line 2192) | def _seg_21():
function _seg_22 (line 2296) | def _seg_22():
function _seg_23 (line 2400) | def _seg_23():
function _seg_24 (line 2504) | def _seg_24():
function _seg_25 (line 2608) | def _seg_25():
function _seg_26 (line 2712) | def _seg_26():
function _seg_27 (line 2816) | def _seg_27():
function _seg_28 (line 2920) | def _seg_28():
function _seg_29 (line 3024) | def _seg_29():
function _seg_30 (line 3128) | def _seg_30():
function _seg_31 (line 3232) | def _seg_31():
function _seg_32 (line 3336) | def _seg_32():
function _seg_33 (line 3440) | def _seg_33():
function _seg_34 (line 3544) | def _seg_34():
function _seg_35 (line 3648) | def _seg_35():
function _seg_36 (line 3752) | def _seg_36():
function _seg_37 (line 3856) | def _seg_37():
function _seg_38 (line 3960) | def _seg_38():
function _seg_39 (line 4064) | def _seg_39():
function _seg_40 (line 4168) | def _seg_40():
function _seg_41 (line 4272) | def _seg_41():
function _seg_42 (line 4376) | def _seg_42():
function _seg_43 (line 4480) | def _seg_43():
function _seg_44 (line 4584) | def _seg_44():
function _seg_45 (line 4688) | def _seg_45():
function _seg_46 (line 4792) | def _seg_46():
function _seg_47 (line 4896) | def _seg_47():
function _seg_48 (line 5000) | def _seg_48():
function _seg_49 (line 5104) | def _seg_49():
function _seg_50 (line 5208) | def _seg_50():
function _seg_51 (line 5312) | def _seg_51():
function _seg_52 (line 5416) | def _seg_52():
function _seg_53 (line 5520) | def _seg_53():
function _seg_54 (line 5624) | def _seg_54():
function _seg_55 (line 5728) | def _seg_55():
function _seg_56 (line 5832) | def _seg_56():
function _seg_57 (line 5936) | def _seg_57():
function _seg_58 (line 6040) | def _seg_58():
function _seg_59 (line 6144) | def _seg_59():
function _seg_60 (line 6248) | def _seg_60():
function _seg_61 (line 6352) | def _seg_61():
function _seg_62 (line 6456) | def _seg_62():
function _seg_63 (line 6560) | def _seg_63():
function _seg_64 (line 6664) | def _seg_64():
function _seg_65 (line 6768) | def _seg_65():
function _seg_66 (line 6872) | def _seg_66():
function _seg_67 (line 6976) | def _seg_67():
function _seg_68 (line 7080) | def _seg_68():
function _seg_69 (line 7184) | def _seg_69():
function _seg_70 (line 7288) | def _seg_70():
function _seg_71 (line 7392) | def _seg_71():
function _seg_72 (line 7496) | def _seg_72():
function _seg_73 (line 7600) | def _seg_73():
function _seg_74 (line 7704) | def _seg_74():
function _seg_75 (line 7808) | def _seg_75():
function _seg_76 (line 7912) | def _seg_76():
function _seg_77 (line 8016) | def _seg_77():
function _seg_78 (line 8120) | def _seg_78():
function _seg_79 (line 8224) | def _seg_79():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/__init__.py
function autocomplete (line 60) | def autocomplete():
function create_main_parser (line 140) | def create_main_parser():
function parseopts (line 171) | def parseopts(args):
function check_isolated (line 213) | def check_isolated(args):
function main (line 222) | def main(args=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/basecommand.py
class Command (line 43) | class Command(object):
method __init__ (line 50) | def __init__(self, isolated=False):
method _build_session (line 74) | def _build_session(self, options, retries=None, timeout=None):
method parse_args (line 110) | def parse_args(self, args):
method main (line 114) | def main(self, args):
class RequirementCommand (line 274) | class RequirementCommand(Command):
method populate_requirement_set (line 277) | def populate_requirement_set(requirement_set, args, options, finder,
method _build_package_finder (line 350) | def _build_package_finder(self, options, session,
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/baseparser.py
class PrettyHelpFormatter (line 18) | class PrettyHelpFormatter(optparse.IndentedHelpFormatter):
method __init__ (line 21) | def __init__(self, *args, **kwargs):
method format_option_strings (line 28) | def format_option_strings(self, option):
method _format_option_strings (line 31) | def _format_option_strings(self, option, mvarfmt=' <%s>', optsep=', '):
method format_heading (line 54) | def format_heading(self, heading):
method format_usage (line 59) | def format_usage(self, usage):
method format_description (line 67) | def format_description(self, description):
method format_epilog (line 85) | def format_epilog(self, epilog):
method indent_lines (line 92) | def indent_lines(self, text, indent):
class UpdatingDefaultsHelpFormatter (line 97) | class UpdatingDefaultsHelpFormatter(PrettyHelpFormatter):
method expand_default (line 104) | def expand_default(self, option):
class CustomOptionParser (line 110) | class CustomOptionParser(optparse.OptionParser):
method insert_option_group (line 112) | def insert_option_group(self, idx, *args, **kwargs):
method option_list_all (line 122) | def option_list_all(self):
class ConfigOptionParser (line 131) | class ConfigOptionParser(CustomOptionParser):
method __init__ (line 135) | def __init__(self, *args, **kwargs):
method check_default (line 144) | def check_default(self, option, key, val):
method _get_ordered_configuration_items (line 151) | def _get_ordered_configuration_items(self):
method _update_defaults (line 175) | def _update_defaults(self, defaults):
method get_default_values (line 217) | def get_default_values(self):
method error (line 238) | def error(self, msg):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/build_env.py
class BuildEnvironment (line 11) | class BuildEnvironment(object):
method __init__ (line 15) | def __init__(self, no_clean):
method path (line 20) | def path(self):
method __enter__ (line 23) | def __enter__(self):
method __exit__ (line 60) | def __exit__(self, exc_type, exc_val, exc_tb):
method cleanup (line 74) | def cleanup(self):
class NoOpBuildEnvironment (line 78) | class NoOpBuildEnvironment(BuildEnvironment):
method __init__ (line 82) | def __init__(self, no_clean):
method __enter__ (line 85) | def __enter__(self):
method __exit__ (line 88) | def __exit__(self, exc_type, exc_val, exc_tb):
method cleanup (line 91) | def cleanup(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/cache.py
class Cache (line 20) | class Cache(object):
method __init__ (line 31) | def __init__(self, cache_dir, format_control, allowed_formats):
method _get_cache_path_parts (line 40) | def _get_cache_path_parts(self, link):
method _get_candidates (line 65) | def _get_candidates(self, link, package_name):
method get_path_for_link (line 89) | def get_path_for_link(self, link):
method get (line 94) | def get(self, link, package_name):
method _link_for_candidate (line 100) | def _link_for_candidate(self, link, candidate):
method cleanup (line 106) | def cleanup(self):
class SimpleWheelCache (line 110) | class SimpleWheelCache(Cache):
method __init__ (line 114) | def __init__(self, cache_dir, format_control):
method get_path_for_link (line 119) | def get_path_for_link(self, link):
method get (line 139) | def get(self, link, package_name):
class EphemWheelCache (line 158) | class EphemWheelCache(SimpleWheelCache):
method __init__ (line 162) | def __init__(self, format_control):
method cleanup (line 170) | def cleanup(self):
class WheelCache (line 174) | class WheelCache(Cache):
method __init__ (line 181) | def __init__(self, cache_dir, format_control):
method get_path_for_link (line 188) | def get_path_for_link(self, link):
method get_ephem_path_for_link (line 191) | def get_ephem_path_for_link(self, link):
method get (line 194) | def get(self, link, package_name):
method cleanup (line 200) | def cleanup(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/cmdoptions.py
function make_option_group (line 29) | def make_option_group(group, parser):
function check_install_build_global (line 41) | def check_install_build_global(options, check_options=None):
function exists_action (line 207) | def exists_action():
function extra_index_url (line 255) | def extra_index_url():
function find_links (line 278) | def find_links():
function trusted_host (line 291) | def trusted_host():
function constraints (line 314) | def constraints():
function requirements (line 326) | def requirements():
function editable (line 338) | def editable():
function _get_format_control (line 362) | def _get_format_control(values, option):
function _handle_no_binary (line 367) | def _handle_no_binary(option, opt_str, value, parser):
function _handle_only_binary (line 374) | def _handle_only_binary(option, opt_str, value, parser):
function no_binary (line 381) | def no_binary():
function only_binary (line 395) | def only_binary():
function _merge_hash (line 527) | def _merge_hash(option, opt_str, value, parser):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/__init__.py
function get_summaries (line 45) | def get_summaries(ordered=True):
function get_similar_commands (line 57) | def get_similar_commands(name):
function _sort_commands (line 71) | def _sort_commands(cmddict, order):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/check.py
class CheckCommand (line 12) | class CheckCommand(Command):
method run (line 19) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/completion.py
class CompletionCommand (line 48) | class CompletionCommand(Command):
method __init__ (line 54) | def __init__(self, *args, **kw):
method run (line 80) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/configuration.py
class ConfigurationCommand (line 15) | class ConfigurationCommand(Command):
method __init__ (line 44) | def __init__(self, *args, **kwargs):
method run (line 86) | def run(self, options, args):
method _determine_file (line 129) | def _determine_file(self, options, need_value):
method list_values (line 153) | def list_values(self, options, args):
method get_name (line 159) | def get_name(self, options, args):
method set_name_value (line 165) | def set_name_value(self, options, args):
method unset_name (line 171) | def unset_name(self, options, args):
method open_in_editor (line 177) | def open_in_editor(self, options, args):
method _get_n_args (line 192) | def _get_n_args(self, args, example, n):
method _save_configuration (line 207) | def _save_configuration(self):
method _determine_editor (line 219) | def _determine_editor(self, options):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/download.py
class DownloadCommand (line 20) | class DownloadCommand(RequirementCommand):
method __init__ (line 43) | def __init__(self, *args, **kw):
method run (line 125) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/freeze.py
class FreezeCommand (line 14) | class FreezeCommand(Command):
method __init__ (line 26) | def __init__(self, *args, **kw):
method run (line 73) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/hash.py
class HashCommand (line 15) | class HashCommand(Command):
method __init__ (line 28) | def __init__(self, *args, **kw):
method run (line 40) | def run(self, options, args):
function _hash_of_file (line 51) | def _hash_of_file(path, algorithm):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/help.py
class HelpCommand (line 7) | class HelpCommand(Command):
method run (line 15) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/install.py
class InstallCommand (line 36) | class InstallCommand(RequirementCommand):
method __init__ (line 59) | def __init__(self, *args, **kw):
method run (line 198) | def run(self, options, args):
method _handle_target_dir (line 385) | def _handle_target_dir(self, target_dir, target_temp_dir, upgrade):
method _warn_about_conflicts (line 441) | def _warn_about_conflicts(self, to_install):
function get_lib_location_guesses (line 464) | def get_lib_location_guesses(*args, **kwargs):
function create_env_error_message (line 469) | def create_env_error_message(error, show_traceback, using_user_site):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/list.py
class ListCommand (line 23) | class ListCommand(Command):
method __init__ (line 34) | def __init__(self, *args, **kw):
method _build_package_finder (line 112) | def _build_package_finder(self, options, index_urls, session):
method run (line 125) | def run(self, options, args):
method get_outdated (line 154) | def get_outdated(self, packages, options):
method get_uptodate (line 160) | def get_uptodate(self, packages, options):
method get_not_required (line 166) | def get_not_required(self, packages, options):
method iter_packages_latest_infos (line 172) | def iter_packages_latest_infos(self, packages, options):
method output_legacy (line 211) | def output_legacy(self, dist, options):
method output_legacy_latest (line 228) | def output_legacy_latest(self, dist, options):
method output_package_listing (line 235) | def output_package_listing(self, packages, options):
method output_package_listing_columns (line 259) | def output_package_listing_columns(self, data, header):
function tabulate (line 274) | def tabulate(vals):
function format_for_columns (line 292) | def format_for_columns(pkgs, options):
function format_for_json (line 329) | def format_for_json(packages, options):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/search.py
class SearchCommand (line 25) | class SearchCommand(Command):
method __init__ (line 33) | def __init__(self, *args, **kw):
method run (line 44) | def run(self, options, args):
method search (line 60) | def search(self, query, options):
function transform_hits (line 69) | def transform_hits(hits):
function print_results (line 97) | def print_results(hits, name_column_width=None, terminal_width=None):
function highest_version (line 134) | def highest_version(versions):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/show.py
class ShowCommand (line 16) | class ShowCommand(Command):
method __init__ (line 24) | def __init__(self, *args, **kw):
method run (line 35) | def run(self, options, args):
function search_packages_info (line 48) | def search_packages_info(query):
function print_results (line 121) | def print_results(distributions, list_files=False, verbose=False):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/uninstall.py
class UninstallCommand (line 10) | class UninstallCommand(Command):
method __init__ (line 26) | def __init__(self, *args, **kw):
method run (line 45) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/wheel.py
class WheelCommand (line 20) | class WheelCommand(RequirementCommand):
method __init__ (line 45) | def __init__(self, *args, **kw):
method run (line 104) | def run(self, options, args):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/compat.py
function backslashreplace_decode_fn (line 56) | def backslashreplace_decode_fn(err):
function console_to_str (line 69) | def console_to_str(data):
function native_str (line 121) | def native_str(s, replace=False):
function native_str (line 127) | def native_str(s, replace=False):
function get_path_uid (line 134) | def get_path_uid(path):
function expanduser (line 163) | def expanduser(path):
function samefile (line 188) | def samefile(file1, file2):
function get_terminal_size (line 199) | def get_terminal_size():
function get_terminal_size (line 206) | def get_terminal_size():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/configuration.py
function _normalize_name (line 39) | def _normalize_name(name):
function _disassemble_key (line 49) | def _disassemble_key(name):
class Configuration (line 64) | class Configuration(object):
method __init__ (line 78) | def __init__(self, isolated, load_only=None):
method load (line 108) | def load(self):
method get_file_to_edit (line 116) | def get_file_to_edit(self):
method items (line 128) | def items(self):
method get_value (line 135) | def get_value(self, key):
method set_value (line 144) | def set_value(self, key, value):
method unset_value (line 163) | def unset_value(self, key):
method save (line 202) | def save(self):
method _ensure_have_load_only (line 221) | def _ensure_have_load_only(self):
method _dictionary (line 228) | def _dictionary(self):
method _load_config_files (line 241) | def _load_config_files(self):
method _load_file (line 268) | def _load_file(self, variant, fname):
method _construct_parser (line 279) | def _construct_parser(self, fname):
method _load_environment_vars (line 297) | def _load_environment_vars(self):
method _normalized_keys (line 305) | def _normalized_keys(self, section, items):
method _get_environ_vars (line 318) | def _get_environ_vars(self):
method _iter_config_files (line 330) | def _iter_config_files(self):
method _get_parser_to_modify (line 360) | def _get_parser_to_modify(self):
method _mark_as_modified (line 374) | def _mark_as_modified(self, fname, parser):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/download.py
function user_agent (line 68) | def user_agent():
class MultiDomainBasicAuth (line 137) | class MultiDomainBasicAuth(AuthBase):
method __init__ (line 139) | def __init__(self, prompting=True):
method __call__ (line 143) | def __call__(self, req):
method handle_401 (line 176) | def handle_401(self, resp, **kwargs):
method parse_credentials (line 210) | def parse_credentials(self, netloc):
class LocalFSAdapter (line 220) | class LocalFSAdapter(BaseAdapter):
method send (line 222) | def send(self, request, stream=None, timeout=None, verify=None, cert=N...
method close (line 249) | def close(self):
class SafeFileCache (line 253) | class SafeFileCache(FileCache):
method __init__ (line 259) | def __init__(self, *args, **kwargs):
method get (line 279) | def get(self, *args, **kwargs):
method set (line 292) | def set(self, *args, **kwargs):
method delete (line 305) | def delete(self, *args, **kwargs):
class InsecureHTTPAdapter (line 319) | class InsecureHTTPAdapter(HTTPAdapter):
method cert_verify (line 321) | def cert_verify(self, conn, url, verify, cert):
class PipSession (line 326) | class PipSession(requests.Session):
method __init__ (line 330) | def __init__(self, *args, **kwargs):
method request (line 392) | def request(self, method, url, *args, **kwargs):
function get_file_content (line 400) | def get_file_content(url, comes_from=None, session=None):
function is_url (line 450) | def is_url(name):
function url_to_path (line 458) | def url_to_path(url):
function path_to_url (line 475) | def path_to_url(path):
function is_archive_file (line 485) | def is_archive_file(name):
function unpack_vcs_link (line 493) | def unpack_vcs_link(link, location):
function _get_used_vcs_backend (line 498) | def _get_used_vcs_backend(link):
function is_vcs_url (line 505) | def is_vcs_url(link):
function is_file_url (line 509) | def is_file_url(link):
function is_dir_url (line 513) | def is_dir_url(link):
function _progress_indicator (line 524) | def _progress_indicator(iterable, *args, **kwargs):
function _download_url (line 528) | def _download_url(resp, link, content_file, hashes, progress_bar):
function _copy_file (line 623) | def _copy_file(filename, location, link):
function unpack_http_url (line 650) | def unpack_http_url(link, location, download_dir=None,
function unpack_file_url (line 688) | def unpack_file_url(link, location, download_dir=None, hashes=None):
function _copy_dist_from_dir (line 736) | def _copy_dist_from_dir(link_path, location):
class PipXmlrpcTransport (line 772) | class PipXmlrpcTransport(xmlrpc_client.Transport):
method __init__ (line 777) | def __init__(self, index_url, session, use_datetime=False):
method request (line 783) | def request(self, host, handler, request_body, verbose=False):
function unpack_url (line 801) | def unpack_url(link, location, download_dir=None,
function _download_http_url (line 843) | def _download_http_url(link, session, temp_dir, hashes, progress_bar):
function _check_download_dir (line 902) | def _check_download_dir(link, download_dir, hashes):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/exceptions.py
class PipError (line 9) | class PipError(Exception):
class ConfigurationError (line 13) | class ConfigurationError(PipError):
class InstallationError (line 17) | class InstallationError(PipError):
class UninstallationError (line 21) | class UninstallationError(PipError):
class DistributionNotFound (line 25) | class DistributionNotFound(InstallationError):
class RequirementsFileParseError (line 29) | class RequirementsFileParseError(InstallationError):
class BestVersionAlreadyInstalled (line 33) | class BestVersionAlreadyInstalled(PipError):
class BadCommand (line 38) | class BadCommand(PipError):
class CommandError (line 42) | class CommandError(PipError):
class PreviousBuildDirError (line 46) | class PreviousBuildDirError(PipError):
class InvalidWheelFilename (line 50) | class InvalidWheelFilename(InstallationError):
class UnsupportedWheel (line 54) | class UnsupportedWheel(InstallationError):
class HashErrors (line 58) | class HashErrors(InstallationError):
method __init__ (line 61) | def __init__(self):
method append (line 64) | def append(self, error):
method __str__ (line 67) | def __str__(self):
method __nonzero__ (line 76) | def __nonzero__(self):
method __bool__ (line 79) | def __bool__(self):
class HashError (line 83) | class HashError(InstallationError):
method body (line 102) | def body(self):
method __str__ (line 114) | def __str__(self):
method _requirement_name (line 117) | def _requirement_name(self):
class VcsHashUnsupported (line 127) | class VcsHashUnsupported(HashError):
class DirectoryUrlHashUnsupported (line 136) | class DirectoryUrlHashUnsupported(HashError):
class HashMissing (line 145) | class HashMissing(HashError):
method __init__ (line 157) | def __init__(self, gotten_hash):
method body (line 164) | def body(self):
class HashUnpinned (line 182) | class HashUnpinned(HashError):
class HashMismatch (line 191) | class HashMismatch(HashError):
method __init__ (line 206) | def __init__(self, allowed, gots):
method body (line 216) | def body(self):
method _hash_comparison (line 220) | def _hash_comparison(self):
class UnsupportedPythonVersion (line 247) | class UnsupportedPythonVersion(InstallationError):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/index.py
class InstallationCandidate (line 60) | class InstallationCandidate(object):
method __init__ (line 62) | def __init__(self, project, version, location):
method __repr__ (line 68) | def __repr__(self):
method __hash__ (line 73) | def __hash__(self):
method __lt__ (line 76) | def __lt__(self, other):
method __le__ (line 79) | def __le__(self, other):
method __eq__ (line 82) | def __eq__(self, other):
method __ge__ (line 85) | def __ge__(self, other):
method __gt__ (line 88) | def __gt__(self, other):
method __ne__ (line 91) | def __ne__(self, other):
method _compare (line 94) | def _compare(self, other, method):
class PackageFinder (line 101) | class PackageFinder(object):
method __init__ (line 108) | def __init__(self, find_links, index_urls, allow_all_prereleases=False,
method get_formatted_locations (line 192) | def get_formatted_locations(self):
method add_dependency_links (line 204) | def add_dependency_links(self, links):
method _sort_locations (line 218) | def _sort_locations(locations, expand_dir=False):
method _candidate_sort_key (line 269) | def _candidate_sort_key(self, candidate):
method _validate_secure_origin (line 301) | def _validate_secure_origin(self, logger, location):
method _get_index_urls_locations (line 372) | def _get_index_urls_locations(self, project_name):
method find_all_candidates (line 394) | def find_all_candidates(self, project_name):
method find_requirement (line 477) | def find_requirement(self, req, upgrade):
method _get_pages (line 576) | def _get_pages(self, locations, project_name):
method _sort_links (line 595) | def _sort_links(self, links):
method _package_versions (line 611) | def _package_versions(self, links, search):
method _log_skipped_link (line 619) | def _log_skipped_link(self, link, reason):
method _link_package_versions (line 624) | def _link_package_versions(self, link, search):
method _get_page (line 704) | def _get_page(self, link):
function egg_info_matches (line 708) | def egg_info_matches(
class HTMLPage (line 737) | class HTMLPage(object):
method __init__ (line 740) | def __init__(self, content, url, headers=None):
method __str__ (line 758) | def __str__(self):
method get_page (line 762) | def get_page(cls, link, skip_archives=True, session=None):
method _handle_fail (line 848) | def _handle_fail(link, reason, url, meth=None):
method _get_content_type (line 855) | def _get_content_type(url, session):
method base_url (line 869) | def base_url(self):
method links (line 880) | def links(self):
method clean_link (line 894) | def clean_link(self, url):
class Link (line 902) | class Link(object):
method __init__ (line 904) | def __init__(self, url, comes_from=None, requires_python=None):
method __str__ (line 926) | def __str__(self):
method __repr__ (line 936) | def __repr__(self):
method __eq__ (line 939) | def __eq__(self, other):
method __ne__ (line 944) | def __ne__(self, other):
method __lt__ (line 949) | def __lt__(self, other):
method __le__ (line 954) | def __le__(self, other):
method __gt__ (line 959) | def __gt__(self, other):
method __ge__ (line 964) | def __ge__(self, other):
method __hash__ (line 969) | def __hash__(self):
method filename (line 973) | def filename(self):
method scheme (line 981) | def scheme(self):
method netloc (line 985) | def netloc(self):
method path (line 989) | def path(self):
method splitext (line 992) | def splitext(self):
method ext (line 996) | def ext(self):
method url_without_fragment (line 1000) | def url_without_fragment(self):
method egg_fragment (line 1007) | def egg_fragment(self):
method subdirectory_fragment (line 1016) | def subdirectory_fragment(self):
method hash (line 1027) | def hash(self):
method hash_name (line 1034) | def hash_name(self):
method show_url (line 1041) | def show_url(self):
method is_wheel (line 1045) | def is_wheel(self):
method is_artifact (line 1049) | def is_artifact(self):
function fmt_ctl_handle_mutual_exclude (line 1072) | def fmt_ctl_handle_mutual_exclude(value, target, other):
function fmt_ctl_formats (line 1091) | def fmt_ctl_formats(fmt_ctl, canonical_name):
function fmt_ctl_no_binary (line 1104) | def fmt_ctl_no_binary(fmt_ctl):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/locations.py
function write_delete_marker_file (line 30) | def write_delete_marker_file(directory):
function running_under_virtualenv (line 39) | def running_under_virtualenv():
function virtualenv_no_global (line 52) | def virtualenv_no_global():
function distutils_scheme (line 136) | def distutils_scheme(dist_name, user=False, home=None, root=None,
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/models/index.py
class Index (line 4) | class Index(object):
method __init__ (line 5) | def __init__(self, url):
method url_to_path (line 11) | def url_to_path(self, path):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/check.py
function create_package_set_from_installed (line 29) | def create_package_set_from_installed(**kwargs):
function check_package_set (line 43) | def check_package_set(package_set):
function check_install_conflicts (line 83) | def check_install_conflicts(to_install):
function _simulate_installation_of (line 97) | def _simulate_installation_of(to_install, state):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/freeze.py
function freeze (line 24) | def freeze(
class FrozenRequirement (line 159) | class FrozenRequirement(object):
method __init__ (line 160) | def __init__(self, name, req, editable, comments=()):
method from_dist (line 170) | def from_dist(cls, dist, dependency_links):
method egg_name (line 241) | def egg_name(dist):
method __str__ (line 248) | def __str__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/prepare.py
function make_abstract_dist (line 34) | def make_abstract_dist(req):
function _install_build_reqs (line 50) | def _install_build_reqs(finder, prefix, build_requirements):
class DistAbstraction (line 70) | class DistAbstraction(object):
method __init__ (line 89) | def __init__(self, req):
method dist (line 92) | def dist(self, finder):
method prep_for_dist (line 96) | def prep_for_dist(self, finder):
class IsWheel (line 101) | class IsWheel(DistAbstraction):
method dist (line 103) | def dist(self, finder):
method prep_for_dist (line 107) | def prep_for_dist(self, finder, build_isolation):
class IsSDist (line 112) | class IsSDist(DistAbstraction):
method dist (line 114) | def dist(self, finder):
method prep_for_dist (line 123) | def prep_for_dist(self, finder, build_isolation):
class Installed (line 158) | class Installed(DistAbstraction):
method dist (line 160) | def dist(self, finder):
method prep_for_dist (line 163) | def prep_for_dist(self, finder):
class RequirementPreparer (line 167) | class RequirementPreparer(object):
method __init__ (line 171) | def __init__(self, build_dir, download_dir, src_dir, wheel_download_dir,
method _download_should_save (line 200) | def _download_should_save(self):
method prepare_linked_requirement (line 213) | def prepare_linked_requirement(self, req, session, finder,
method prepare_editable_requirement (line 331) | def prepare_editable_requirement(self, req, require_hashes, use_user_s...
method prepare_installed_requirement (line 358) | def prepare_installed_requirement(self, req, require_hashes, skip_reas...
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/pep425tags.py
function get_config_var (line 20) | def get_config_var(var):
function get_abbr_impl (line 28) | def get_abbr_impl():
function get_impl_ver (line 41) | def get_impl_ver():
function get_impl_version_info (line 49) | def get_impl_version_info():
function get_impl_tag (line 60) | def get_impl_tag():
function get_flag (line 67) | def get_flag(var, fallback, expected=True, warn=True):
function get_abi_tag (line 79) | def get_abi_tag():
function _is_running_32bit (line 113) | def _is_running_32bit():
function get_platform (line 117) | def get_platform():
function is_manylinux1_compatible (line 143) | def is_manylinux1_compatible():
function get_darwin_arches (line 160) | def get_darwin_arches(major, minor, machine):
function get_supported (line 221) | def get_supported(versions=None, noarch=False, platform=None,
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/__init__.py
function install_given_reqs (line 19) | def install_given_reqs(to_install, install_options, global_options=(),
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_file.py
function parse_requirements (line 60) | def parse_requirements(filename, finder=None, comes_from=None, options=N...
function preprocess (line 93) | def preprocess(content, options):
function process_line (line 107) | def process_line(line, filename, line_number, finder=None, comes_from=None,
function break_args_options (line 222) | def break_args_options(line):
function build_parser (line 239) | def build_parser(line):
function join_lines (line 261) | def join_lines(lines_enum):
function ignore_comments (line 290) | def ignore_comments(lines_enum):
function skip_regex (line 301) | def skip_regex(lines_enum, options):
function expand_env_variables (line 314) | def expand_env_variables(lines_enum):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_install.py
function _strip_extras (line 54) | def _strip_extras(path):
class InstallRequirement (line 66) | class InstallRequirement(object):
method __init__ (line 73) | def __init__(self, req, comes_from, source_dir=None, editable=False,
method from_editable (line 133) | def from_editable(cls, editable_req, comes_from=None, isolated=False,
method from_req (line 162) | def from_req(cls, req, comes_from=None, isolated=False, wheel_cache=No...
method from_line (line 175) | def from_line(
method __str__ (line 272) | def __str__(self):
method __repr__ (line 290) | def __repr__(self):
method populate_link (line 294) | def populate_link(self, finder, upgrade, require_hashes):
method specifier (line 315) | def specifier(self):
method is_pinned (line 319) | def is_pinned(self):
method from_path (line 328) | def from_path(self):
method build_location (line 341) | def build_location(self, build_dir):
method _correct_build_location (line 368) | def _correct_build_location(self):
method name (line 402) | def name(self):
method setup_py_dir (line 408) | def setup_py_dir(self):
method setup_py (line 414) | def setup_py(self):
method pyproject_toml (line 426) | def pyproject_toml(self):
method get_pep_518_info (line 437) | def get_pep_518_info(self):
method run_egg_info (line 453) | def run_egg_info(self):
method egg_info_data (line 512) | def egg_info_data(self, filename):
method egg_info_path (line 524) | def egg_info_path(self, filename):
method pkg_info (line 578) | def pkg_info(self):
method installed_version (line 592) | def installed_version(self):
method assert_source_matches_version (line 595) | def assert_source_matches_version(self):
method update_editable (line 612) | def update_editable(self, obtain=True):
method uninstall (line 641) | def uninstall(self, auto_confirm=False, verbose=False,
method archive (line 664) | def archive(self, build_dir):
method _clean_zip_name (line 712) | def _clean_zip_name(self, name, prefix):
method match_markers (line 720) | def match_markers(self, extras_requested=None):
method install (line 732) | def install(self, install_options, global_options=None, root=None,
method ensure_has_source_dir (line 823) | def ensure_has_source_dir(self, parent_dir):
method get_install_args (line 837) | def get_install_args(self, global_options, record_filename, root, prefix,
method remove_temporary_source (line 864) | def remove_temporary_source(self):
method install_editable (line 875) | def install_editable(self, install_options,
method check_if_exists (line 905) | def check_if_exists(self, use_user_site):
method is_wheel (line 947) | def is_wheel(self):
method move_wheel_files (line 950) | def move_wheel_files(self, wheeldir, root=None, home=None, prefix=None,
method get_dist (line 964) | def get_dist(self):
method has_hash_options (line 977) | def has_hash_options(self):
method hashes (line 986) | def hashes(self, trust_internet=True):
function _strip_postfix (line 1008) | def _strip_postfix(req):
function parse_editable (line 1024) | def parse_editable(editable_req):
function deduce_helpful_msg (line 1091) | def deduce_helpful_msg(req):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_set.py
class RequirementSet (line 13) | class RequirementSet(object):
method __init__ (line 15) | def __init__(self, require_hashes=False):
method __str__ (line 31) | def __str__(self):
method __repr__ (line 37) | def __repr__(self):
method add_requirement (line 44) | def add_requirement(self, install_req, parent_req_name=None,
method has_requirement (line 137) | def has_requirement(self, project_name):
method has_requirements (line 147) | def has_requirements(self):
method get_requirement (line 151) | def get_requirement(self, project_name):
method cleanup_files (line 159) | def cleanup_files(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_uninstall.py
function _script_names (line 25) | def _script_names(dist, script_name, is_gui):
function _unique (line 46) | def _unique(fn):
function uninstallation_paths (line 58) | def uninstallation_paths(dist):
function compact (line 78) | def compact(paths):
function compress_for_output_listing (line 97) | def compress_for_output_listing(paths):
class UninstallPathSet (line 143) | class UninstallPathSet(object):
method __init__ (line 146) | def __init__(self, dist):
method _permitted (line 154) | def _permitted(self, path):
method add (line 162) | def add(self, path):
method add_pth (line 181) | def add_pth(self, pth_file, entry):
method _stash (line 190) | def _stash(self, path):
method remove (line 195) | def remove(self, auto_confirm=False, verbose=False):
method _allowed_to_proceed (line 225) | def _allowed_to_proceed(self, verbose):
method rollback (line 252) | def rollback(self):
method commit (line 268) | def commit(self):
method from_dist (line 274) | def from_dist(cls, dist):
class UninstallPthEntries (line 404) | class UninstallPthEntries(object):
method __init__ (line 405) | def __init__(self, pth_file):
method add (line 414) | def add(self, entry):
method remove (line 424) | def remove(self):
method rollback (line 446) | def rollback(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/resolve.py
class Resolver (line 30) | class Resolver(object):
method __init__ (line 37) | def __init__(self, preparer, session, finder, wheel_cache, use_user_site,
method resolve (line 63) | def resolve(self, requirement_set):
method _is_upgrade_allowed (line 112) | def _is_upgrade_allowed(self, req):
method _set_req_to_reinstall (line 121) | def _set_req_to_reinstall(self, req):
method _check_skip_installed (line 132) | def _check_skip_installed(self, req_to_install):
method _get_abstract_dist_for (line 184) | def _get_abstract_dist_for(self, req):
method _resolve_one (line 241) | def _resolve_one(self, requirement_set, req_to_install):
method get_installation_order (line 329) | def get_installation_order(self, req_set):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/appdirs.py
function user_cache_dir (line 15) | def user_cache_dir(appname):
function user_data_dir (line 63) | def user_data_dir(appname, roaming=False):
function user_config_dir (line 115) | def user_config_dir(appname, roaming=True):
function site_config_dirs (line 148) | def site_config_dirs(appname):
function _get_win_folder_from_registry (line 188) | def _get_win_folder_from_registry(csidl_name):
function _get_win_folder_with_ctypes (line 210) | def _get_win_folder_with_ctypes(csidl_name):
function _win_path_to_bytes (line 243) | def _win_path_to_bytes(path):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/deprecation.py
class PipDeprecationWarning (line 15) | class PipDeprecationWarning(Warning):
class Pending (line 19) | class Pending(object):
class RemovedInPip11Warning (line 23) | class RemovedInPip11Warning(PipDeprecationWarning):
class RemovedInPip12Warning (line 27) | class RemovedInPip12Warning(PipDeprecationWarning, Pending):
function _showwarning (line 37) | def _showwarning(message, category, filename, lineno, file=None, line=No...
function install_warning_logger (line 69) | def install_warning_logger():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/encoding.py
function auto_decode (line 19) | def auto_decode(data):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/filesystem.py
function check_path_owner (line 7) | def check_path_owner(path):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/glibc.py
function glibc_version_string (line 8) | def glibc_version_string():
function check_glibc_version (line 34) | def check_glibc_version(version_str, required_major, minimum_minor):
function have_compatible_glibc (line 50) | def have_compatible_glibc(required_major, minimum_minor):
function libc_ver (line 74) | def libc_ver():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/hashes.py
class Hashes (line 22) | class Hashes(object):
method __init__ (line 27) | def __init__(self, hashes=None):
method check_against_chunks (line 34) | def check_against_chunks(self, chunks):
method _raise (line 57) | def _raise(self, gots):
method check_against_file (line 60) | def check_against_file(self, file):
method check_against_path (line 68) | def check_against_path(self, path):
method __nonzero__ (line 72) | def __nonzero__(self):
method __bool__ (line 76) | def __bool__(self):
class MissingHashes (line 80) | class MissingHashes(Hashes):
method __init__ (line 87) | def __init__(self):
method _raise (line 93) | def _raise(self, gots):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/logging.py
function indent_log (line 30) | def indent_log(num=2):
function get_indentation (line 42) | def get_indentation():
class IndentingFormatter (line 46) | class IndentingFormatter(logging.Formatter):
method format (line 48) | def format(self, record):
function _color_wrap (line 61) | def _color_wrap(*colors):
class ColorizedStreamHandler (line 67) | class ColorizedStreamHandler(logging.StreamHandler):
method __init__ (line 79) | def __init__(self, stream=None, no_color=None):
method should_color (line 86) | def should_color(self):
method format (line 107) | def format(self, record):
class BetterRotatingFileHandler (line 119) | class BetterRotatingFileHandler(logging.handlers.RotatingFileHandler):
method _open (line 121) | def _open(self):
class MaxLevelFilter (line 126) | class MaxLevelFilter(logging.Filter):
method __init__ (line 128) | def __init__(self, level):
method filter (line 131) | def filter(self, record):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/misc.py
function import_or_raise (line 76) | def import_or_raise(pkg_or_module_string, ExceptionType, *args, **kwargs):
function ensure_dir (line 83) | def ensure_dir(path):
function get_prog (line 92) | def get_prog():
function rmtree (line 106) | def rmtree(dir, ignore_errors=False):
function rmtree_errorhandler (line 111) | def rmtree_errorhandler(func, path, exc_info):
function display_path (line 126) | def display_path(path):
function backup_dir (line 138) | def backup_dir(dir, ext='.bak'):
function ask_path_exists (line 149) | def ask_path_exists(message, options):
function ask (line 156) | def ask(message, options):
function format_size (line 175) | def format_size(bytes):
function is_installable_dir (line 186) | def is_installable_dir(path):
function is_svn_page (line 196) | def is_svn_page(html):
function file_contents (line 204) | def file_contents(filename):
function read_chunks (line 209) | def read_chunks(file, size=io.DEFAULT_BUFFER_SIZE):
function split_leading_dir (line 218) | def split_leading_dir(path):
function has_leading_dir (line 229) | def has_leading_dir(paths):
function normalize_path (line 244) | def normalize_path(path, resolve_symlinks=True):
function splitext (line 257) | def splitext(path):
function renames (line 266) | def renames(old, new):
function is_local (line 283) | def is_local(path):
function dist_is_local (line 295) | def dist_is_local(dist):
function dist_in_usersite (line 306) | def dist_in_usersite(dist):
function dist_in_site_packages (line 314) | def dist_in_site_packages(dist):
function dist_is_editable (line 324) | def dist_is_editable(dist):
function get_installed_distributions (line 333) | def get_installed_distributions(local_only=True,
function egg_link_path (line 390) | def egg_link_path(dist):
function dist_location (line 427) | def dist_location(dist):
function current_umask (line 441) | def current_umask():
function unzip_file (line 448) | def unzip_file(filename, location, flatten=True):
function untar_file (line 491) | def untar_file(filename, location):
function unpack_file (line 567) | def unpack_file(filename, location, content_type, link):
function call_subprocess (line 600) | def call_subprocess(cmd, show_stdout=True, cwd=None,
function read_text_file (line 713) | def read_text_file(filename):
function _make_build_dir (line 737) | def _make_build_dir(build_dir):
class FakeFile (line 742) | class FakeFile(object):
method __init__ (line 745) | def __init__(self, lines):
method readline (line 748) | def readline(self):
method __iter__ (line 757) | def __iter__(self):
class StreamWrapper (line 761) | class StreamWrapper(StringIO):
method from_stream (line 764) | def from_stream(cls, orig_stream):
method encoding (line 770) | def encoding(self):
function captured_output (line 775) | def captured_output(stream_name):
function captured_stdout (line 789) | def captured_stdout():
class cached_property (line 801) | class cached_property(object):
method __init__ (line 809) | def __init__(self, func):
method __get__ (line 813) | def __get__(self, obj, cls):
function get_installed_version (line 821) | def get_installed_version(dist_name, lookup_dirs=None):
function consume (line 841) | def consume(iterator):
function enum (line 847) | def enum(*sequential, **named):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/outdated.py
class VirtualenvSelfCheckState (line 24) | class VirtualenvSelfCheckState(object):
method __init__ (line 25) | def __init__(self):
method save (line 35) | def save(self, pypi_version, current_time):
class GlobalSelfCheckState (line 49) | class GlobalSelfCheckState(object):
method __init__ (line 50) | def __init__(self):
method save (line 60) | def save(self, pypi_version, current_time):
function load_selfcheck_statefile (line 87) | def load_selfcheck_statefile():
function pip_version_check (line 94) | def pip_version_check(session, options):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/packaging.py
function check_requires_python (line 15) | def check_requires_python(requires_python):
function get_metadata (line 35) | def get_metadata(dist):
function check_dist_requires_python (line 43) | def check_dist_requires_python(dist):
function get_installer (line 65) | def get_installer(dist):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/temp_dir.py
class TempDirectory (line 12) | class TempDirectory(object):
method __init__ (line 37) | def __init__(self, path=None, delete=None, kind="temp"):
method __repr__ (line 49) | def __repr__(self):
method __enter__ (line 52) | def __enter__(self):
method __exit__ (line 56) | def __exit__(self, exc, value, tb):
method create (line 60) | def create(self):
method cleanup (line 77) | def cleanup(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/ui.py
function _select_progress_class (line 36) | def _select_progress_class(preferred, fallback):
class InterruptibleMixin (line 66) | class InterruptibleMixin(object):
method __init__ (line 84) | def __init__(self, *args, **kwargs):
method finish (line 100) | def finish(self):
method handle_sigint (line 110) | def handle_sigint(self, signum, frame):
class SilentBar (line 121) | class SilentBar(Bar):
method update (line 123) | def update(self):
class BlueEmojiBar (line 127) | class BlueEmojiBar(IncrementalBar):
class DownloadProgressMixin (line 135) | class DownloadProgressMixin(object):
method __init__ (line 137) | def __init__(self, *args, **kwargs):
method downloaded (line 142) | def downloaded(self):
method download_speed (line 146) | def download_speed(self):
method pretty_eta (line 153) | def pretty_eta(self):
method iter (line 158) | def iter(self, it, n=1):
class WindowsMixin (line 165) | class WindowsMixin(object):
method __init__ (line 167) | def __init__(self, *args, **kwargs):
class BaseDownloadProgressBar (line 194) | class BaseDownloadProgressBar(WindowsMixin, InterruptibleMixin,
class DefaultDownloadProgressBar (line 205) | class DefaultDownloadProgressBar(BaseDownloadProgressBar,
class DownloadSilentBar (line 210) | class DownloadSilentBar(BaseDownloadProgressBar, SilentBar): # type: ig...
class DownloadIncrementalBar (line 214) | class DownloadIncrementalBar(BaseDownloadProgressBar, # type: ignore
class DownloadChargingBar (line 219) | class DownloadChargingBar(BaseDownloadProgressBar, # type: ignore
class DownloadShadyBar (line 224) | class DownloadShadyBar(BaseDownloadProgressBar, ShadyBar): # type: ignore
class DownloadFillingSquaresBar (line 228) | class DownloadFillingSquaresBar(BaseDownloadProgressBar, # type: ignore
class DownloadFillingCirclesBar (line 233) | class DownloadFillingCirclesBar(BaseDownloadProgressBar, # type: ignore
class DownloadBlueEmojiProgressBar (line 238) | class DownloadBlueEmojiProgressBar(BaseDownloadProgressBar, # type: ignore
class DownloadProgressSpinner (line 243) | class DownloadProgressSpinner(WindowsMixin, InterruptibleMixin,
method next_phase (line 249) | def next_phase(self):
method update (line 254) | def update(self):
function DownloadProgressProvider (line 278) | def DownloadProgressProvider(progress_bar, max=None):
function hidden_cursor (line 294) | def hidden_cursor(file):
class RateLimiter (line 312) | class RateLimiter(object):
method __init__ (line 313) | def __init__(self, min_update_interval_seconds):
method ready (line 317) | def ready(self):
method reset (line 322) | def reset(self):
class InteractiveSpinner (line 326) | class InteractiveSpinner(object):
method __init__ (line 327) | def __init__(self, message, file=None, spin_chars="-\\|/",
method _write (line 342) | def _write(self, status):
method spin (line 354) | def spin(self):
method finish (line 361) | def finish(self, final_status):
class NonInteractiveSpinner (line 374) | class NonInteractiveSpinner(object):
method __init__ (line 375) | def __init__(self, message, min_update_interval_seconds=60):
method _update (line 381) | def _update(self, status):
method spin (line 386) | def spin(self):
method finish (line 393) | def finish(self, final_status):
function open_spinner (line 401) | def open_spinner(message):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/__init__.py
class RevOptions (line 29) | class RevOptions(object):
method __init__ (line 38) | def __init__(self, vcs, rev=None, extra_args=None):
method __repr__ (line 52) | def __repr__(self):
method arg_rev (line 56) | def arg_rev(self):
method to_args (line 62) | def to_args(self):
method to_display (line 74) | def to_display(self):
method make_new (line 80) | def make_new(self, rev):
class VcsSupport (line 90) | class VcsSupport(object):
method __init__ (line 94) | def __init__(self):
method __iter__ (line 103) | def __iter__(self):
method backends (line 107) | def backends(self):
method dirnames (line 111) | def dirnames(self):
method all_schemes (line 115) | def all_schemes(self):
method register (line 121) | def register(self, cls):
method unregister (line 129) | def unregister(self, cls=None, name=None):
method get_backend_name (line 137) | def get_backend_name(self, location):
method get_backend (line 149) | def get_backend(self, name):
method get_backend_from_location (line 154) | def get_backend_from_location(self, location):
class VersionControl (line 164) | class VersionControl(object):
method __init__ (line 173) | def __init__(self, url=None, *args, **kwargs):
method get_base_rev_args (line 177) | def get_base_rev_args(self, rev):
method make_rev_options (line 186) | def make_rev_options(self, rev=None, extra_args=None):
method _is_local_repository (line 196) | def _is_local_repository(self, repo):
method translate_egg_surname (line 206) | def translate_egg_surname(self, surname):
method export (line 210) | def export(self, location):
method get_url_rev (line 217) | def get_url_rev(self):
method get_info (line 236) | def get_info(self, location):
method normalize_url (line 244) | def normalize_url(self, url):
method compare_urls (line 251) | def compare_urls(self, url1, url2):
method obtain (line 257) | def obtain(self, dest):
method switch (line 264) | def switch(self, dest, url, rev_options):
method update (line 273) | def update(self, dest, rev_options):
method is_commit_id_equal (line 282) | def is_commit_id_equal(self, dest, name):
method check_destination (line 292) | def check_destination(self, dest, url, rev_options):
method unpack (line 381) | def unpack(self, location):
method get_src_requirement (line 390) | def get_src_requirement(self, dist, location):
method get_url (line 399) | def get_url(self, location):
method get_revision (line 406) | def get_revision(self, location):
method run_command (line 412) | def run_command(self, cmd, show_stdout=True, cwd=None,
method controls_location (line 440) | def controls_location(cls, location):
function get_src_requirement (line 452) | def get_src_requirement(dist, location):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/bazaar.py
class Bazaar (line 16) | class Bazaar(VersionControl):
method __init__ (line 25) | def __init__(self, url=None, *args, **kwargs):
method get_base_rev_args (line 32) | def get_base_rev_args(self, rev):
method export (line 35) | def export(self, location):
method switch (line 51) | def switch(self, dest, url, rev_options):
method update (line 54) | def update(self, dest, rev_options):
method obtain (line 58) | def obtain(self, dest):
method get_url_rev (line 72) | def get_url_rev(self):
method get_url (line 79) | def get_url(self, location):
method get_revision (line 92) | def get_revision(self, location):
method get_src_requirement (line 98) | def get_src_requirement(self, dist, location):
method is_commit_id_equal (line 108) | def is_commit_id_equal(self, dest, name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/git.py
function looks_like_hash (line 27) | def looks_like_hash(sha):
class Git (line 31) | class Git(VersionControl):
method __init__ (line 43) | def __init__(self, url=None, *args, **kwargs):
method get_base_rev_args (line 64) | def get_base_rev_args(self, rev):
method get_git_version (line 67) | def get_git_version(self):
method export (line 80) | def export(self, location):
method get_revision_sha (line 92) | def get_revision_sha(self, dest, rev):
method check_rev_options (line 120) | def check_rev_options(self, dest, rev_options):
method is_commit_id_equal (line 144) | def is_commit_id_equal(self, dest, name):
method switch (line 158) | def switch(self, dest, url, rev_options):
method update (line 165) | def update(self, dest, rev_options):
method obtain (line 179) | def obtain(self, dest):
method get_url (line 208) | def get_url(self, location):
method get_revision (line 223) | def get_revision(self, location):
method _get_subdirectory (line 229) | def _get_subdirectory(self, location):
method get_src_requirement (line 256) | def get_src_requirement(self, dist, location):
method get_url_rev (line 270) | def get_url_rev(self):
method update_submodules (line 287) | def update_submodules(self, location):
method controls_location (line 296) | def controls_location(cls, location):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/mercurial.py
class Mercurial (line 16) | class Mercurial(VersionControl):
method get_base_rev_args (line 22) | def get_base_rev_args(self, rev):
method export (line 25) | def export(self, location):
method switch (line 34) | def switch(self, dest, url, rev_options):
method update (line 50) | def update(self, dest, rev_options):
method obtain (line 55) | def obtain(self, dest):
method get_url (line 70) | def get_url(self, location):
method get_revision (line 78) | def get_revision(self, location):
method get_revision_hash (line 84) | def get_revision_hash(self, location):
method get_src_requirement (line 90) | def get_src_requirement(self, dist, location):
method is_commit_id_equal (line 100) | def is_commit_id_equal(self, dest, name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/subversion.py
class Subversion (line 25) | class Subversion(VersionControl):
method get_base_rev_args (line 31) | def get_base_rev_args(self, rev):
method get_info (line 34) | def get_info(self, location):
method export (line 62) | def export(self, location):
method switch (line 76) | def switch(self, dest, url, rev_options):
method update (line 80) | def update(self, dest, rev_options):
method obtain (line 84) | def obtain(self, dest):
method get_location (line 99) | def get_location(self, dist, dependency_links):
method get_revision (line 113) | def get_revision(self, location):
method get_url_rev (line 140) | def get_url_rev(self):
method get_url (line 147) | def get_url(self, location):
method _get_svn_url_rev (line 167) | def _get_svn_url_rev(self, location):
method get_src_requirement (line 211) | def get_src_requirement(self, dist, location):
method is_commit_id_equal (line 220) | def is_commit_id_equal(self, dest, name):
method remove_auth_from_url (line 225) | def remove_auth_from_url(url):
function get_rev_options (line 243) | def get_rev_options(vcs, url, rev):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/wheel.py
function rehash (line 55) | def rehash(path, algo='sha256', blocksize=1 << 20):
function open_for_csv (line 69) | def open_for_csv(name, mode):
function fix_script (line 79) | def fix_script(path):
function root_is_purelib (line 101) | def root_is_purelib(name, wheeldir):
function get_entrypoints (line 117) | def get_entrypoints(filename):
function message_about_scripts_not_on_PATH (line 148) | def message_about_scripts_not_on_PATH(scripts):
function move_wheel_files (line 208) | def move_wheel_files(name, req, wheeldir, user=False, home=None, root=None,
function wheel_version (line 506) | def wheel_version(source_dir):
function check_compatibility (line 525) | def check_compatibility(version, name):
class Wheel (line 554) | class Wheel(object):
method __init__ (line 566) | def __init__(self, filename):
method support_index_min (line 591) | def support_index_min(self, tags=None):
method supported (line 603) | def supported(self, tags=None):
class WheelBuilder (line 610) | class WheelBuilder(object):
method __init__ (line 613) | def __init__(self, finder, preparer, wheel_cache,
method _build_one (line 625) | def _build_one(self, req, output_dir, python_tag=None):
method _build_one_inside_env (line 635) | def _build_one_inside_env(self, req, output_dir, python_tag=None):
method _base_setup_args (line 652) | def _base_setup_args(self, req):
method __build_one (line 662) | def __build_one(self, req, tempd, python_tag=None):
method _clean_one (line 683) | def _clean_one(self, req):
method build (line 695) | def build(self, requirements, session, autobuilding=False):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/__init__.py
function vendored (line 29) | def vendored(modulename):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/appdirs.py
function user_data_dir (line 45) | def user_data_dir(appname=None, appauthor=None, version=None, roaming=Fa...
function site_data_dir (line 100) | def site_data_dir(appname=None, appauthor=None, version=None, multipath=...
function user_config_dir (line 166) | def user_config_dir(appname=None, appauthor=None, version=None, roaming=...
function site_config_dir (line 206) | def site_config_dir(appname=None, appauthor=None, version=None, multipat...
function user_cache_dir (line 257) | def user_cache_dir(appname=None, appauthor=None, version=None, opinion=T...
function user_state_dir (line 314) | def user_state_dir(appname=None, appauthor=None, version=None, roaming=F...
function user_log_dir (line 356) | def user_log_dir(appname=None, appauthor=None, version=None, opinion=True):
class AppDirs (line 407) | class AppDirs(object):
method __init__ (line 409) | def __init__(self, appname=None, appauthor=None, version=None,
method user_data_dir (line 418) | def user_data_dir(self):
method site_data_dir (line 423) | def site_data_dir(self):
method user_config_dir (line 428) | def user_config_dir(self):
method site_config_dir (line 433) | def site_config_dir(self):
method user_cache_dir (line 438) | def user_cache_dir(self):
method user_state_dir (line 443) | def user_state_dir(self):
method user_log_dir (line 448) | def user_log_dir(self):
function _get_win_folder_from_registry (line 455) | def _get_win_folder_from_registry(csidl_name):
function _get_win_folder_with_pywin32 (line 479) | def _get_win_folder_with_pywin32(csidl_name):
function _get_win_folder_with_ctypes (line 506) | def _get_win_folder_with_ctypes(csidl_name):
function _get_win_folder_with_jna (line 532) | def _get_win_folder_with_jna(csidl_name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/_cmd.py
function setup_logging (line 12) | def setup_logging():
function get_session (line 18) | def get_session():
function get_args (line 33) | def get_args():
function main (line 39) | def main(args=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/adapter.py
class CacheControlAdapter (line 12) | class CacheControlAdapter(HTTPAdapter):
method __init__ (line 15) | def __init__(self, cache=None,
method send (line 34) | def send(self, request, cacheable_methods=None, **kw):
method build_response (line 58) | def build_response(self, request, response, from_cache=False,
method close (line 132) | def close(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/cache.py
class BaseCache (line 8) | class BaseCache(object):
method get (line 10) | def get(self, key):
method set (line 13) | def set(self, key, value):
method delete (line 16) | def delete(self, key):
method close (line 19) | def close(self):
class DictCache (line 23) | class DictCache(BaseCache):
method __init__ (line 25) | def __init__(self, init_dict=None):
method get (line 29) | def get(self, key):
method set (line 32) | def set(self, key, value):
method delete (line 36) | def delete(self, key):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/caches/file_cache.py
function _secure_open_write (line 15) | def _secure_open_write(filename, fmode):
class FileCache (line 55) | class FileCache(BaseCache):
method __init__ (line 56) | def __init__(self, directory, forever=False, filemode=0o0600,
method encode (line 86) | def encode(x):
method _fn (line 89) | def _fn(self, name):
method get (line 96) | def get(self, key):
method set (line 104) | def set(self, key, value):
method delete (line 118) | def delete(self, key):
function url_to_file_path (line 127) | def url_to_file_path(url, filecache):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/caches/redis_cache.py
function total_seconds (line 7) | def total_seconds(td):
class RedisCache (line 17) | class RedisCache(BaseCache):
method __init__ (line 19) | def __init__(self, conn):
method get (line 22) | def get(self, key):
method set (line 25) | def set(self, key, value, expires=None):
method delete (line 32) | def delete(self, key):
method clear (line 35) | def clear(self):
method close (line 41) | def close(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/controller.py
function parse_uri (line 21) | def parse_uri(uri):
class CacheController (line 30) | class CacheController(object):
method __init__ (line 33) | def __init__(self, cache=None, cache_etags=True, serializer=None,
method _urlnorm (line 41) | def _urlnorm(cls, uri):
method cache_url (line 61) | def cache_url(cls, uri):
method parse_cache_control (line 64) | def parse_cache_control(self, headers):
method cached_request (line 112) | def cached_request(self, request):
method conditional_headers (line 227) | def conditional_headers(self, request):
method cache_response (line 243) | def cache_response(self, request, response, body=None,
method update_cached_response (line 330) | def update_cached_response(self, request, response):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/filewrapper.py
class CallbackFileWrapper (line 4) | class CallbackFileWrapper(object):
method __init__ (line 16) | def __init__(self, fp, callback):
method __getattr__ (line 21) | def __getattr__(self, name):
method __is_fp_closed (line 33) | def __is_fp_closed(self):
method _close (line 48) | def _close(self):
method read (line 59) | def read(self, amt=None):
method _safe_read (line 67) | def _safe_read(self, amt):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/heuristics.py
function expire_after (line 11) | def expire_after(delta, date=None):
function datetime_to_header (line 16) | def datetime_to_header(dt):
class BaseHeuristic (line 20) | class BaseHeuristic(object):
method warning (line 22) | def warning(self, response):
method update_headers (line 33) | def update_headers(self, response):
method apply (line 42) | def apply(self, response):
class OneDayCache (line 54) | class OneDayCache(BaseHeuristic):
method update_headers (line 59) | def update_headers(self, response):
class ExpiresAfter (line 71) | class ExpiresAfter(BaseHeuristic):
method __init__ (line 76) | def __init__(self, **kw):
method update_headers (line 79) | def update_headers(self, response):
method warning (line 86) | def warning(self, response):
class LastModified (line 91) | class LastModified(BaseHeuristic):
method update_headers (line 107) | def update_headers(self, resp):
method warning (line 137) | def warning(self, resp):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/serialize.py
function _b64_decode_bytes (line 12) | def _b64_decode_bytes(b):
function _b64_decode_str (line 16) | def _b64_decode_str(s):
class Serializer (line 20) | class Serializer(object):
method dumps (line 22) | def dumps(self, request, response, body=None):
method loads (line 75) | def loads(self, request, data):
method prepare_response (line 104) | def prepare_response(self, request, cached):
method _loads_v0 (line 144) | def _loads_v0(self, request, data):
method _loads_v1 (line 150) | def _loads_v1(self, request, data):
method _loads_v2 (line 158) | def _loads_v2(self, request, data):
method _loads_v3 (line 182) | def _loads_v3(self, request, data):
method _loads_v4 (line 188) | def _loads_v4(self, request, data):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/wrapper.py
function CacheControl (line 5) | def CacheControl(sess,
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/certifi/core.py
class DeprecatedBundleWarning (line 14) | class DeprecatedBundleWarning(DeprecationWarning):
function where (line 21) | def where():
function old_where (line 27) | def old_where():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/__init__.py
function detect (line 24) | def detect(byte_str):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/big5prober.py
class Big5Prober (line 34) | class Big5Prober(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 42) | def charset_name(self):
method language (line 46) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/chardistribution.py
class CharDistributionAnalysis (line 40) | class CharDistributionAnalysis(object):
method __init__ (line 46) | def __init__(self):
method reset (line 61) | def reset(self):
method feed (line 70) | def feed(self, char, char_len):
method get_confidence (line 84) | def get_confidence(self):
method got_enough_data (line 100) | def got_enough_data(self):
method get_order (line 105) | def get_order(self, byte_str):
class EUCTWDistributionAnalysis (line 113) | class EUCTWDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 114) | def __init__(self):
method get_order (line 120) | def get_order(self, byte_str):
class EUCKRDistributionAnalysis (line 132) | class EUCKRDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 133) | def __init__(self):
method get_order (line 139) | def get_order(self, byte_str):
class GB2312DistributionAnalysis (line 151) | class GB2312DistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 152) | def __init__(self):
method get_order (line 158) | def get_order(self, byte_str):
class Big5DistributionAnalysis (line 170) | class Big5DistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 171) | def __init__(self):
method get_order (line 177) | def get_order(self, byte_str):
class SJISDistributionAnalysis (line 192) | class SJISDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 193) | def __init__(self):
method get_order (line 199) | def get_order(self, byte_str):
class EUCJPDistributionAnalysis (line 217) | class EUCJPDistributionAnalysis(CharDistributionAnalysis):
method __init__ (line 218) | def __init__(self):
method get_order (line 224) | def get_order(self, byte_str):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/charsetgroupprober.py
class CharSetGroupProber (line 32) | class CharSetGroupProber(CharSetProber):
method __init__ (line 33) | def __init__(self, lang_filter=None):
method reset (line 39) | def reset(self):
method charset_name (line 50) | def charset_name(self):
method language (line 58) | def language(self):
method feed (line 65) | def feed(self, byte_str):
method get_confidence (line 85) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/charsetprober.py
class CharSetProber (line 35) | class CharSetProber(object):
method __init__ (line 39) | def __init__(self, lang_filter=None):
method reset (line 44) | def reset(self):
method charset_name (line 48) | def charset_name(self):
method feed (line 51) | def feed(self, buf):
method state (line 55) | def state(self):
method get_confidence (line 58) | def get_confidence(self):
method filter_high_byte_only (line 62) | def filter_high_byte_only(buf):
method filter_international_words (line 67) | def filter_international_words(buf):
method filter_with_english_letters (line 104) | def filter_with_english_letters(buf):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/cli/chardetect.py
function description_of (line 26) | def description_of(lines, name='stdin'):
function main (line 54) | def main(argv=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/codingstatemachine.py
class CodingStateMachine (line 33) | class CodingStateMachine(object):
method __init__ (line 55) | def __init__(self, sm):
method reset (line 63) | def reset(self):
method next_state (line 66) | def next_state(self, c):
method get_current_charlen (line 80) | def get_current_charlen(self):
method get_coding_state_machine (line 83) | def get_coding_state_machine(self):
method language (line 87) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/cp949prober.py
class CP949Prober (line 34) | class CP949Prober(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 44) | def charset_name(self):
method language (line 48) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/enums.py
class InputState (line 8) | class InputState(object):
class LanguageFilter (line 17) | class LanguageFilter(object):
class ProbingState (line 32) | class ProbingState(object):
class MachineState (line 41) | class MachineState(object):
class SequenceLikelihood (line 50) | class SequenceLikelihood(object):
method get_num_categories (line 60) | def get_num_categories(cls):
class CharacterCategory (line 65) | class CharacterCategory(object):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/escprober.py
class EscCharSetProber (line 35) | class EscCharSetProber(CharSetProber):
method __init__ (line 42) | def __init__(self, lang_filter=None):
method reset (line 58) | def reset(self):
method charset_name (line 70) | def charset_name(self):
method language (line 74) | def language(self):
method get_confidence (line 77) | def get_confidence(self):
method feed (line 83) | def feed(self, byte_str):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/eucjpprober.py
class EUCJPProber (line 36) | class EUCJPProber(MultiByteCharSetProber):
method __init__ (line 37) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 49) | def charset_name(self):
method language (line 53) | def language(self):
method feed (line 56) | def feed(self, byte_str):
method get_confidence (line 89) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/euckrprober.py
class EUCKRProber (line 34) | class EUCKRProber(MultiByteCharSetProber):
method __init__ (line 35) | def __init__(self):
method charset_name (line 42) | def charset_name(self):
method language (line 46) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/euctwprober.py
class EUCTWProber (line 33) | class EUCTWProber(MultiByteCharSetProber):
method __init__ (line 34) | def __init__(self):
method charset_name (line 41) | def charset_name(self):
method language (line 45) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/gb2312prober.py
class GB2312Prober (line 33) | class GB2312Prober(MultiByteCharSetProber):
method __init__ (line 34) | def __init__(self):
method charset_name (line 41) | def charset_name(self):
method language (line 45) | def language(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/hebrewprober.py
class HebrewProber (line 128) | class HebrewProber(CharSetProber):
method __init__ (line 154) | def __init__(self):
method reset (line 164) | def reset(self):
method set_model_probers (line 174) | def set_model_probers(self, logicalProber, visualProber):
method is_final (line 178) | def is_final(self, c):
method is_non_final (line 182) | def is_non_final(self, c):
method feed (line 196) | def feed(self, byte_str):
method charset_name (line 256) | def charset_name(self):
method language (line 283) | def language(self):
method state (line 287) | def state(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/jpcntx.py
class JapaneseContextAnalysis (line 116) | class JapaneseContextAnalysis(object):
method __init__ (line 123) | def __init__(self):
method reset (line 131) | def reset(self):
method feed (line 143) | def feed(self, byte_str, num_bytes):
method got_enough_data (line 170) | def got_enough_data(self):
method get_confidence (line 173) | def get_confidence(self):
method get_order (line 180) | def get_order(self, byte_str):
class SJISContextAnalysis (line 183) | class SJISContextAnalysis(JapaneseContextAnalysis):
method __init__ (line 184) | def __init__(self):
method charset_name (line 189) | def charset_name(self):
method get_order (line 192) | def get_order(self, byte_str):
class EUCJPContextAnalysis (line 212) | class EUCJPContextAnalysis(JapaneseContextAnalysis):
method get_order (line 213) | def get_order(self, byte_str):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/latin1prober.py
class Latin1Prober (line 96) | class Latin1Prober(CharSetProber):
method __init__ (line 97) | def __init__(self):
method reset (line 103) | def reset(self):
method charset_name (line 109) | def charset_name(self):
method language (line 113) | def language(self):
method feed (line 116) | def feed(self, byte_str):
method get_confidence (line 130) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/mbcharsetprober.py
class MultiByteCharSetProber (line 34) | class MultiByteCharSetProber(CharSetProber):
method __init__ (line 39) | def __init__(self, lang_filter=None):
method reset (line 45) | def reset(self):
method charset_name (line 54) | def charset_name(self):
method language (line 58) | def language(self):
method feed (line 61) | def feed(self, byte_str):
method get_confidence (line 90) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/mbcsgroupprober.py
class MBCSGroupProber (line 41) | class MBCSGroupProber(CharSetGroupProber):
method __init__ (line 42) | def __init__(self, lang_filter=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/sbcharsetprober.py
class SingleByteCharSetProber (line 33) | class SingleByteCharSetProber(CharSetProber):
method __init__ (line 39) | def __init__(self, model, reversed=False, name_prober=None):
method reset (line 53) | def reset(self):
method charset_name (line 64) | def charset_name(self):
method language (line 71) | def language(self):
method feed (line 77) | def feed(self, byte_str):
method get_confidence (line 124) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/sbcsgroupprober.py
class SBCSGroupProber (line 43) | class SBCSGroupProber(CharSetGroupProber):
method __init__ (line 44) | def __init__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/sjisprober.py
class SJISProber (line 36) | class SJISProber(MultiByteCharSetProber):
method __init__ (line 37) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 49) | def charset_name(self):
method language (line 53) | def language(self):
method feed (line 56) | def feed(self, byte_str):
method get_confidence (line 89) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/universaldetector.py
class UniversalDetector (line 51) | class UniversalDetector(object):
method __init__ (line 81) | def __init__(self, lang_filter=LanguageFilter.ALL):
method reset (line 94) | def reset(self):
method feed (line 111) | def feed(self, byte_str):
method close (line 220) | def close(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/utf8prober.py
class UTF8Prober (line 35) | class UTF8Prober(CharSetProber):
method __init__ (line 38) | def __init__(self):
method reset (line 44) | def reset(self):
method charset_name (line 50) | def charset_name(self):
method language (line 54) | def language(self):
method feed (line 57) | def feed(self, byte_str):
method get_confidence (line 76) | def get_confidence(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/colorama/ansi.py
function code_to_chars (line 12) | def code_to_chars(code):
function set_title (line 15) | def set_title(title):
function clear_screen (line 18) | def clear_screen(mode=2):
function clear_line (line 21) | def clear_line(mode=2):
class AnsiCodes (line 25) | class AnsiCodes(object):
method __init__ (line 26) | def __init__(self):
class AnsiCursor (line 36) | class AnsiCursor(object):
method UP (line 37) | def UP(self, n=1):
method DOWN (line 39) | def DOWN(self, n=1):
method FORWARD (line 41) | def FORWARD(self, n=1):
method BACK (line 43) | def BACK(self, n=1):
method POS (line 45) | def POS(self, x=1, y=1):
class AnsiFore (line 49) | class AnsiFore(AnsiCodes):
class AnsiBack (line 71) | class AnsiBack(AnsiCodes):
class AnsiStyle (line 93) | class AnsiStyle(AnsiCodes):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/colorama/ansitowin32.py
function is_stream_closed (line 16) | def is_stream_closed(stream):
function is_a_tty (line 20) | def is_a_tty(stream):
class StreamWrapper (line 24) | class StreamWrapper(object):
method __init__ (line 30) | def __init__(self, wrapped, converter):
method __getattr__ (line 36) | def __getattr__(self, name):
method write (line 39) | def write(self, text):
class AnsiToWin32 (line 43) | class AnsiToWin32(object):
method __init__ (line 52) | def __init__(self, wrapped, convert=None, strip=None, autoreset=False):
method should_wrap (line 85) | def should_wrap(self):
method get_win32_calls (line 95) | def get_win32_calls(self):
method write (line 139) | def write(self, text):
method reset_all (line 149) | def reset_all(self):
method write_and_convert (line 156) | def write_and_convert(self, text):
method write_plain_text (line 172) | def write_plain_text(self, text, start, end):
method convert_ansi (line 178) | def convert_ansi(self, paramstring, command):
method extract_params (line 184) | def extract_params(self, command, paramstring):
method call_win32 (line 202) | def call_win32(self, command, params):
method convert_osc (line 224) | def convert_osc(self, text):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/colorama/initialise.py
function reset_all (line 18) | def reset_all():
function init (line 23) | def init(autoreset=False, convert=None, strip=None, wrap=True):
function deinit (line 51) | def deinit():
function colorama_text (line 59) | def colorama_text(*args, **kwargs):
function reinit (line 67) | def reinit():
function wrap_stream (line 74) | def wrap_stream(stream, convert, strip, autoreset, wrap):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/colorama/win32.py
class CONSOLE_SCREEN_BUFFER_INFO (line 21) | class CONSOLE_SCREEN_BUFFER_INFO(Structure):
method __str__ (line 30) | def __str__(self):
function _winapi_test (line 97) | def _winapi_test(handle):
function winapi_test (line 103) | def winapi_test():
function GetConsoleScreenBufferInfo (line 106) | def GetConsoleScreenBufferInfo(stream_id=STDOUT):
function SetConsoleTextAttribute (line 113) | def SetConsoleTextAttribute(stream_id, attrs):
function SetConsoleCursorPosition (line 117) | def SetConsoleCursorPosition(stream_id, position, adjust=True):
function FillConsoleOutputCharacter (line 135) | def FillConsoleOutputCharacter(stream_id, char, length, start):
function FillConsoleOutputAttribute (line 145) | def FillConsoleOutputAttribute(stream_id, attr, length, start):
function SetConsoleTitle (line 155) | def SetConsoleTitle(title):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/colorama/winterm.py
class WinColor (line 6) | class WinColor(object):
class WinStyle (line 17) | class WinStyle(object):
class WinTerm (line 22) | class WinTerm(object):
method __init__ (line 24) | def __init__(self):
method get_attrs (line 36) | def get_attrs(self):
method set_attrs (line 39) | def set_attrs(self, value):
method reset_all (line 44) | def reset_all(self, on_stderr=None):
method fore (line 48) | def fore(self, fore=None, light=False, on_stderr=False):
method back (line 59) | def back(self, back=None, light=False, on_stderr=False):
method style (line 70) | def style(self, style=None, on_stderr=False):
method set_console (line 76) | def set_console(self, attrs=None, on_stderr=False):
method get_position (line 84) | def get_position(self, handle):
method set_cursor_position (line 92) | def set_cursor_position(self, position=None, on_stderr=False):
method cursor_adjust (line 102) | def cursor_adjust(self, x, y, on_stderr=False):
method erase_screen (line 110) | def erase_screen(self, mode=0, on_stderr=False):
method erase_line (line 139) | def erase_line(self, mode=0, on_stderr=False):
method set_title (line 161) | def set_title(self, title):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/__init__.py
class DistlibException (line 11) | class DistlibException(Exception):
class NullHandler (line 17) | class NullHandler(logging.Handler):
method handle (line 18) | def handle(self, record): pass
method emit (line 19) | def emit(self, record): pass
method createLock (line 20) | def createLock(self): self.lock = None
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/_backport/misc.py
function cache_from_source (line 17) | def cache_from_source(py_file, debug=__debug__):
function callable (line 27) | def callable(obj):
function fsencode (line 34) | def fsencode(filename):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/_backport/shutil.py
class Error (line 44) | class Error(EnvironmentError):
class SpecialFileError (line 47) | class SpecialFileError(EnvironmentError):
class ExecError (line 51) | class ExecError(EnvironmentError):
class ReadError (line 54) | class ReadError(EnvironmentError):
class RegistryError (line 57) | class RegistryError(Exception):
function copyfileobj (line 67) | def copyfileobj(fsrc, fdst, length=16*1024):
function _samefile (line 75) | def _samefile(src, dst):
function copyfile (line 87) | def copyfile(src, dst):
function copymode (line 107) | def copymode(src, dst):
function copystat (line 114) | def copystat(src, dst):
function copy (line 130) | def copy(src, dst):
function copy2 (line 141) | def copy2(src, dst):
function ignore_patterns (line 152) | def ignore_patterns(*patterns):
function copytree (line 164) | def copytree(src, dst, symlinks=False, ignore=None, copy_function=copy2,
function rmtree (line 246) | def rmtree(path, ignore_errors=False, onerror=None):
function _basename (line 295) | def _basename(path):
function move (line 300) | def move(src, dst):
function _destinsrc (line 340) | def _destinsrc(src, dst):
function _get_gid (line 349) | def _get_gid(name):
function _get_uid (line 361) | def _get_uid(name):
function _make_tarball (line 373) | def _make_tarball(base_name, base_dir, compress="gzip", verbose=0, dry_r...
function _call_external_zip (line 435) | def _call_external_zip(base_dir, zip_filename, verbose=False, dry_run=Fa...
function _make_zipfile (line 452) | def _make_zipfile(base_name, base_dir, verbose=0, dry_run=0, logger=None):
function get_archive_formats (line 510) | def get_archive_formats():
function register_archive_format (line 520) | def register_archive_format(name, function, extra_args=None, description...
function unregister_archive_format (line 541) | def unregister_archive_format(name):
function make_archive (line 544) | def make_archive(base_name, format, root_dir=None, base_dir=None, verbos...
function get_unpack_formats (line 599) | def get_unpack_formats():
function _check_unpack_options (line 610) | def _check_unpack_options(extensions, function, extra_args):
function register_unpack_format (line 628) | def register_unpack_format(name, extensions, function, extra_args=None,
function unregister_unpack_format (line 650) | def unregister_unpack_format(name):
function _ensure_directory (line 654) | def _ensure_directory(path):
function _unpack_zipfile (line 660) | def _unpack_zipfile(filename, extract_dir):
function _unpack_tarfile (line 697) | def _unpack_tarfile(filename, extract_dir):
function _find_unpack_format (line 720) | def _find_unpack_format(filename):
function unpack_archive (line 727) | def unpack_archive(filename, extract_dir=None, format=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/_backport/sysconfig.py
function _safe_realpath (line 34) | def _safe_realpath(path):
function is_python_build (line 58) | def is_python_build():
function _ensure_cfg_read (line 68) | def _ensure_cfg_read():
function _expand_globals (line 89) | def _expand_globals(config):
function _subst_vars (line 133) | def _subst_vars(path, local_vars):
function _extend_dict (line 149) | def _extend_dict(target_dict, other_dict):
function _expand_vars (line 157) | def _expand_vars(scheme, vars):
function format_value (line 170) | def format_value(value, vars):
function _get_default_scheme (line 179) | def _get_default_scheme():
function _getuserbase (line 186) | def _getuserbase():
function _parse_makefile (line 215) | def _parse_makefile(filename, vars=None):
function get_makefile_filename (line 333) | def get_makefile_filename():
function _init_posix (line 344) | def _init_posix(vars):
function _init_non_posix (line 372) | def _init_non_posix(vars):
function parse_config_h (line 388) | def parse_config_h(fp, vars=None):
function get_config_h_filename (line 419) | def get_config_h_filename():
function get_scheme_names (line 431) | def get_scheme_names():
function get_path_names (line 436) | def get_path_names():
function get_paths (line 442) | def get_paths(scheme=_get_default_scheme(), vars=None, expand=True):
function get_path (line 455) | def get_path(name, scheme=_get_default_scheme(), vars=None, expand=True):
function get_config_vars (line 463) | def get_config_vars(*args):
function get_config_var (line 594) | def get_config_var(name):
function get_platform (line 603) | def get_platform():
function get_python_version (line 765) | def get_python_version():
function _print_dict (line 769) | def _print_dict(title, data):
function _main (line 776) | def _main():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/_backport/tarfile.py
function stn (line 185) | def stn(s, length, encoding, errors):
function nts (line 191) | def nts(s, encoding, errors):
function nti (line 199) | def nti(s):
function itn (line 216) | def itn(n, digits=8, format=DEFAULT_FORMAT):
function calc_chksums (line 243) | def calc_chksums(buf):
function copyfileobj (line 256) | def copyfileobj(src, dst, length=None):
function filemode (line 312) | def filemode(mode):
class TarError (line 327) | class TarError(Exception):
class ExtractError (line 330) | class ExtractError(TarError):
class ReadError (line 333) | class ReadError(TarError):
class CompressionError (line 336) | class CompressionError(TarError):
class StreamError (line 339) | class StreamError(TarError):
class HeaderError (line 342) | class HeaderError(TarError):
class EmptyHeaderError (line 345) | class EmptyHeaderError(HeaderError):
class TruncatedHeaderError (line 348) | class TruncatedHeaderError(HeaderError):
class EOFHeaderError (line 351) | class EOFHeaderError(HeaderError):
class InvalidHeaderError (line 354) | class InvalidHeaderError(HeaderError):
class SubsequentHeaderError (line 357) | class SubsequentHeaderError(HeaderError):
class _LowLevelFile (line 364) | class _LowLevelFile(object):
method __init__ (line 370) | def __init__(self, name, mode):
method close (line 379) | def close(self):
method read (line 382) | def read(self, size):
method write (line 385) | def write(self, s):
class _Stream (line 388) | class _Stream(object):
method __init__ (line 399) | def __init__(self, name, mode, comptype, fileobj, bufsize):
method __del__ (line 451) | def __del__(self):
method _init_write_gz (line 455) | def _init_write_gz(self):
method write (line 469) | def write(self, s):
method __write (line 479) | def __write(self, s):
method close (line 488) | def close(self):
method _init_read_gz (line 516) | def _init_read_gz(self):
method tell (line 547) | def tell(self):
method seek (line 552) | def seek(self, pos=0):
method read (line 565) | def read(self, size=None):
method _read (line 583) | def _read(self, size):
method __read (line 604) | def __read(self, size):
class _StreamProxy (line 620) | class _StreamProxy(object):
method __init__ (line 625) | def __init__(self, fileobj):
method read (line 629) | def read(self, size):
method getcomptype (line 633) | def getcomptype(self):
method close (line 640) | def close(self):
class _BZ2Proxy (line 644) | class _BZ2Proxy(object):
method __init__ (line 654) | def __init__(self, fileobj, mode):
method init (line 660) | def init(self):
method read (line 670) | def read(self, size):
method seek (line 685) | def seek(self, pos):
method tell (line 690) | def tell(self):
method write (line 693) | def write(self, data):
method close (line 698) | def close(self):
class _FileInFile (line 707) | class _FileInFile(object):
method __init__ (line 713) | def __init__(self, fileobj, offset, size, blockinfo=None):
method seekable (line 736) | def seekable(self):
method tell (line 742) | def tell(self):
method seek (line 747) | def seek(self, position):
method read (line 752) | def read(self, size=None):
class ExFileObject (line 782) | class ExFileObject(object):
method __init__ (line 788) | def __init__(self, tarfile, tarinfo):
method readable (line 801) | def readable(self):
method writable (line 804) | def writable(self):
method seekable (line 807) | def seekable(self):
method read (line 810) | def read(self, size=None):
method readline (line 837) | def readline(self, size=-1):
method readlines (line 866) | def readlines(self):
method tell (line 876) | def tell(self):
method seek (line 884) | def seek(self, pos, whence=os.SEEK_SET):
method close (line 905) | def close(self):
method __iter__ (line 910) | def __iter__(self):
class TarInfo (line 923) | class TarInfo(object):
method __init__ (line 937) | def __init__(self, name=""):
method _getpath (line 963) | def _getpath(self):
method _setpath (line 965) | def _setpath(self, name):
method _getlinkpath (line 969) | def _getlinkpath(self):
method _setlinkpath (line 971) | def _setlinkpath(self, linkname):
method __repr__ (line 975) | def __repr__(self):
method get_info (line 978) | def get_info(self):
method tobuf (line 1002) | def tobuf(self, format=DEFAULT_FORMAT, encoding=ENCODING, errors="surr...
method create_ustar_header (line 1016) | def create_ustar_header(self, info, encoding, errors):
method create_gnu_header (line 1029) | def create_gnu_header(self, info, encoding, errors):
method create_pax_header (line 1043) | def create_pax_header(self, info, encoding):
method create_pax_global_header (line 1093) | def create_pax_global_header(cls, pax_headers):
method _posix_split_name (line 1098) | def _posix_split_name(self, name):
method _create_header (line 1114) | def _create_header(info, format, encoding, errors):
method _create_payload (line 1142) | def _create_payload(payload):
method _create_gnu_long_header (line 1152) | def _create_gnu_long_header(cls, name, type, encoding, errors):
method _create_pax_generic_header (line 1169) | def _create_pax_generic_header(cls, pax_headers, type, encoding):
method frombuf (line 1220) | def frombuf(cls, buf, encoding, errors):
method fromtarfile (line 1283) | def fromtarfile(cls, tarfile):
method _proc_member (line 1303) | def _proc_member(self, tarfile):
method _proc_builtin (line 1316) | def _proc_builtin(self, tarfile):
method _proc_gnulong (line 1333) | def _proc_gnulong(self, tarfile):
method _proc_sparse (line 1355) | def _proc_sparse(self, tarfile):
method _proc_pax (line 1383) | def _proc_pax(self, tarfile):
method _proc_gnusparse_00 (line 1485) | def _proc_gnusparse_00(self, next, pax_headers, buf):
method _proc_gnusparse_01 (line 1496) | def _proc_gnusparse_01(self, next, pax_headers):
method _proc_gnusparse_10 (line 1502) | def _proc_gnusparse_10(self, next, pax_headers, tarfile):
method _apply_pax_info (line 1518) | def _apply_pax_info(self, pax_headers, encoding, errors):
method _decode_pax_field (line 1541) | def _decode_pax_field(self, value, encoding, fallback_encoding, fallba...
method _block (line 1549) | def _block(self, count):
method isreg (line 1558) | def isreg(self):
method isfile (line 1560) | def isfile(self):
method isdir (line 1562) | def isdir(self):
method issym (line 1564) | def issym(self):
method islnk (line 1566) | def islnk(self):
method ischr (line 1568) | def ischr(self):
method isblk (line 1570) | def isblk(self):
method isfifo (line 1572) | def isfifo(self):
method issparse (line 1574) | def issparse(self):
method isdev (line 1576) | def isdev(self):
class TarFile (line 1580) | class TarFile(object):
method __init__ (line 1606) | def __init__(self, name=None, mode="r", fileobj=None, format=None,
method open (line 1714) | def open(cls, name=None, mode="r", fileobj=None, bufsize=RECORDSIZE, *...
method taropen (line 1790) | def taropen(cls, name, mode="r", fileobj=None, **kwargs):
method gzopen (line 1798) | def gzopen(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs):
method bz2open (line 1829) | def bz2open(cls, name, mode="r", fileobj=None, compresslevel=9, **kwar...
method close (line 1864) | def close(self):
method getmember (line 1884) | def getmember(self, name):
method getmembers (line 1895) | def getmembers(self):
method getnames (line 1905) | def getnames(self):
method gettarinfo (line 1911) | def gettarinfo(self, name=None, arcname=None, fileobj=None):
method list (line 2009) | def list(self, verbose=True):
method add (line 2038) | def add(self, name, arcname=None, recursive=True, exclude=None, filter...
method addfile (line 2100) | def addfile(self, tarinfo, fileobj=None):
method extractall (line 2126) | def extractall(self, path=".", members=None):
method extract (line 2164) | def extract(self, member, path="", set_attrs=True):
method extractfile (line 2199) | def extractfile(self, member):
method _extract_member (line 2237) | def _extract_member(self, tarinfo, targetpath, set_attrs=True):
method makedir (line 2285) | def makedir(self, tarinfo, targetpath):
method makefile (line 2296) | def makefile(self, tarinfo, targetpath):
method makeunknown (line 2312) | def makeunknown(self, tarinfo, targetpath):
method makefifo (line 2320) | def makefifo(self, tarinfo, targetpath):
method makedev (line 2328) | def makedev(self, tarinfo, targetpath):
method makelink (line 2343) | def makelink(self, tarinfo, targetpath):
method chown (line 2372) | def chown(self, tarinfo, targetpath):
method chmod (line 2394) | def chmod(self, tarinfo, targetpath):
method utime (line 2403) | def utime(self, tarinfo, targetpath):
method next (line 2414) | def next(self):
method _getmember (line 2463) | def _getmember(self, name, tarinfo=None, normalize=False):
method _load (line 2486) | def _load(self):
method _check (line 2496) | def _check(self, mode=None):
method _find_link_target (line 2505) | def _find_link_target(self, tarinfo):
method __iter__ (line 2524) | def __iter__(self):
method _dbg (line 2532) | def _dbg(self, level, msg):
method __enter__ (line 2538) | def __enter__(self):
method __exit__ (line 2542) | def __exit__(self, type, value, traceback):
class TarIter (line 2553) | class TarIter(object):
method __init__ (line 2560) | def __init__(self, tarfile):
method __iter__ (line 2565) | def __iter__(self):
method __next__ (line 2570) | def __next__(self):
function is_tarfile (line 2595) | def is_tarfile(name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/compat.py
function quote (line 30) | def quote(s):
function splituser (line 52) | def splituser(host):
class CertificateError (line 94) | class CertificateError(ValueError):
function _dnsname_match (line 98) | def _dnsname_match(dn, hostname, max_wildcards=1):
function match_hostname (line 148) | def match_hostname(cert, hostname):
class Container (line 194) | class Container(object):
method __init__ (line 198) | def __init__(self, **kwargs):
function which (line 206) | def which(cmd, mode=os.F_OK | os.X_OK, path=None):
class ZipExtFile (line 278) | class ZipExtFile(BaseZipExtFile):
method __init__ (line 279) | def __init__(self, base):
method __enter__ (line 282) | def __enter__(self):
method __exit__ (line 285) | def __exit__(self, *exc_info):
class ZipFile (line 289) | class ZipFile(BaseZipFile):
method __enter__ (line 290) | def __enter__(self):
method __exit__ (line 293) | def __exit__(self, *exc_info):
method open (line 297) | def open(self, *args, **kwargs):
function python_implementation (line 304) | def python_implementation():
function callable (line 324) | def callable(obj):
function fsencode (line 344) | def fsencode(filename):
function fsdecode (line 353) | def fsdecode(filename):
function _get_normal_name (line 370) | def _get_normal_name(orig_enc):
function detect_encoding (line 381) | def detect_encoding(readline):
function _recursive_repr (line 489) | def _recursive_repr(fillvalue='...'):
class ChainMap (line 518) | class ChainMap(MutableMapping):
method __init__ (line 531) | def __init__(self, *maps):
method __missing__ (line 538) | def __missing__(self, key):
method __getitem__ (line 541) | def __getitem__(self, key):
method get (line 549) | def get(self, key, default=None):
method __len__ (line 552) | def __len__(self):
method __iter__ (line 555) | def __iter__(self):
method __contains__ (line 558) | def __contains__(self, key):
method __bool__ (line 561) | def __bool__(self):
method __repr__ (line 565) | def __repr__(self):
method fromkeys (line 570) | def fromkeys(cls, iterable, *args):
method copy (line 574) | def copy(self):
method new_child (line 580) | def new_child(self): # like Django's Context.pu...
method parents (line 585) | def parents(self): # like Django's Context.pop()
method __setitem__ (line 589) | def __setitem__(self, key, value):
method __delitem__ (line 592) | def __delitem__(self, key):
method popitem (line 598) | def popitem(self):
method pop (line 605) | def pop(self, key, *args):
method clear (line 612) | def clear(self):
function cache_from_source (line 622) | def cache_from_source(path, debug_override=None):
class OrderedDict (line 649) | class OrderedDict(dict):
method __init__ (line 661) | def __init__(self, *args, **kwds):
method __setitem__ (line 677) | def __setitem__(self, key, value, dict_setitem=dict.__setitem__):
method __delitem__ (line 687) | def __delitem__(self, key, dict_delitem=dict.__delitem__):
method __iter__ (line 696) | def __iter__(self):
method __reversed__ (line 704) | def __reversed__(self):
method clear (line 712) | def clear(self):
method popitem (line 724) | def popitem(self, last=True):
method keys (line 749) | def keys(self):
method values (line 753) | def values(self):
method items (line 757) | def items(self):
method iterkeys (line 761) | def iterkeys(self):
method itervalues (line 765) | def itervalues(self):
method iteritems (line 770) | def iteritems(self):
method update (line 775) | def update(*args, **kwds):
method pop (line 810) | def pop(self, key, default=__marker):
method setdefault (line 823) | def setdefault(self, key, default=None):
method __repr__ (line 830) | def __repr__(self, _repr_running=None):
method __reduce__ (line 844) | def __reduce__(self):
method copy (line 854) | def copy(self):
method fromkeys (line 859) | def fromkeys(cls, iterable, value=None):
method __eq__ (line 869) | def __eq__(self, other):
method __ne__ (line 878) | def __ne__(self, other):
method viewkeys (line 883) | def viewkeys(self):
method viewvalues (line 887) | def viewvalues(self):
method viewitems (line 891) | def viewitems(self):
function valid_ident (line 901) | def valid_ident(s):
class ConvertingDict (line 917) | class ConvertingDict(dict):
method __getitem__ (line 920) | def __getitem__(self, key):
method get (line 932) | def get(self, key, default=None):
function pop (line 944) | def pop(self, key, default=None):
class ConvertingList (line 954) | class ConvertingList(list):
method __getitem__ (line 956) | def __getitem__(self, key):
method pop (line 968) | def pop(self, idx=-1):
class ConvertingTuple (line 977) | class ConvertingTuple(tuple):
method __getitem__ (line 979) | def __getitem__(self, key):
class BaseConfigurator (line 989) | class BaseConfigurator(object):
method __init__ (line 1009) | def __init__(self, config):
method resolve (line 1013) | def resolve(self, s):
method ext_convert (line 1036) | def ext_convert(self, value):
method cfg_convert (line 1040) | def cfg_convert(self, value):
method convert (line 1074) | def convert(self, value):
method configure_custom (line 1102) | def configure_custom(self, config):
method as_tuple (line 1116) | def as_tuple(self, value):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/database.py
class _Cache (line 44) | class _Cache(object):
method __init__ (line 48) | def __init__(self):
method clear (line 56) | def clear(self):
method add (line 64) | def add(self, dist):
class DistributionPath (line 74) | class DistributionPath(object):
method __init__ (line 78) | def __init__(self, path=None, include_egg=False):
method _get_cache_enabled (line 98) | def _get_cache_enabled(self):
method _set_cache_enabled (line 101) | def _set_cache_enabled(self, value):
method clear_cache (line 106) | def clear_cache(self):
method _yield_distributions (line 114) | def _yield_distributions(self):
method _generate_cache (line 156) | def _generate_cache(self):
method distinfo_dirname (line 176) | def distinfo_dirname(cls, name, version):
method get_distributions (line 197) | def get_distributions(self):
method get_distribution (line 219) | def get_distribution(self, name):
method provides_distribution (line 245) | def provides_distribution(self, name, version=None):
method get_file_path (line 286) | def get_file_path(self, name, relative_path):
method get_exported_entries (line 295) | def get_exported_entries(self, category, name=None):
class Distribution (line 314) | class Distribution(object):
method __init__ (line 332) | def __init__(self, metadata):
method source_url (line 350) | def source_url(self):
method name_and_version (line 359) | def name_and_version(self):
method provides (line 366) | def provides(self):
method _get_requirements (line 377) | def _get_requirements(self, req_attr):
method run_requires (line 385) | def run_requires(self):
method meta_requires (line 389) | def meta_requires(self):
method build_requires (line 393) | def build_requires(self):
method test_requires (line 397) | def test_requires(self):
method dev_requires (line 401) | def dev_requires(self):
method matches_requirement (line 404) | def matches_requirement(self, req):
method __repr__ (line 438) | def __repr__(self):
method __eq__ (line 448) | def __eq__(self, other):
method __hash__ (line 464) | def __hash__(self):
class BaseInstalledDistribution (line 471) | class BaseInstalledDistribution(Distribution):
method __init__ (line 479) | def __init__(self, metadata, path, env=None):
method get_hash (line 494) | def get_hash(self, data, hasher=None):
class InstalledDistribution (line 526) | class InstalledDistribution(BaseInstalledDistribution):
method __init__ (line 536) | def __init__(self, path, metadata=None, env=None):
method __repr__ (line 570) | def __repr__(self):
method __str__ (line 574) | def __str__(self):
method _get_records (line 577) | def _get_records(self):
method exports (line 601) | def exports(self):
method read_exports (line 614) | def read_exports(self):
method write_exports (line 629) | def write_exports(self, exports):
method get_resource_path (line 640) | def get_resource_path(self, relative_path):
method list_installed_files (line 660) | def list_installed_files(self):
method write_installed_files (line 670) | def write_installed_files(self, paths, prefix, dry_run=False):
method check_installed_files (line 705) | def check_installed_files(self):
method shared_locations (line 741) | def shared_locations(self):
method write_shared_locations (line 767) | def write_shared_locations(self, paths, dry_run=False):
method get_distinfo_resource (line 792) | def get_distinfo_resource(self, path):
method get_distinfo_file (line 801) | def get_distinfo_file(self, path):
method list_distinfo_files (line 830) | def list_distinfo_files(self):
method __eq__ (line 846) | def __eq__(self, other):
class EggInfoDistribution (line 854) | class EggInfoDistribution(BaseInstalledDistribution):
method __init__ (line 863) | def __init__(self, path, env=None):
method _get_metadata (line 884) | def _get_metadata(self, path):
method __repr__ (line 974) | def __repr__(self):
method __str__ (line 978) | def __str__(self):
method check_installed_files (line 981) | def check_installed_files(self):
method list_installed_files (line 1000) | def list_installed_files(self):
method list_distinfo_files (line 1038) | def list_distinfo_files(self, absolute=False):
method __eq__ (line 1067) | def __eq__(self, other):
class DependencyGraph (line 1078) | class DependencyGraph(object):
method __init__ (line 1094) | def __init__(self):
method add_distribution (line 1099) | def add_distribution(self, distribution):
method add_edge (line 1109) | def add_edge(self, x, y, label=None):
method add_missing (line 1124) | def add_missing(self, distribution, requirement):
method _repr_dist (line 1135) | def _repr_dist(self, dist):
method repr_node (line 1138) | def repr_node(self, dist, level=1):
method to_dot (line 1151) | def to_dot(self, f, skip_disconnected=True):
method topological_sort (line 1183) | def topological_sort(self):
method __repr__ (line 1214) | def __repr__(self):
function make_graph (line 1222) | def make_graph(dists, scheme='default'):
function get_dependent_dists (line 1276) | def get_dependent_dists(dists, dist):
function get_required_dists (line 1302) | def get_required_dists(dists, dist):
function make_dist (line 1327) | def make_dist(name, version, **kwargs):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/index.py
class PackageIndex (line 28) | class PackageIndex(object):
method __init__ (line 36) | def __init__(self, url=None):
method _get_pypirc_command (line 65) | def _get_pypirc_command(self):
method read_configuration (line 75) | def read_configuration(self):
method save_configuration (line 90) | def save_configuration(self):
method check_credentials (line 102) | def check_credentials(self):
method register (line 114) | def register(self, metadata):
method _reader (line 134) | def _reader(self, name, stream, outbuf):
method get_sign_command (line 152) | def get_sign_command(self, filename, signer, sign_password,
method run_command (line 181) | def run_command(self, cmd, input_data=None):
method sign_file (line 216) | def sign_file(self, filename, signer, sign_password, keystore=None):
method upload_file (line 239) | def upload_file(self, metadata, filename, signer=None, sign_password=N...
method upload_documentation (line 296) | def upload_documentation(self, metadata, doc_dir):
method get_verify_command (line 324) | def get_verify_command(self, signature_filename, data_filename,
method verify_signature (line 348) | def verify_signature(self, signature_filename, data_filename,
method download_file (line 373) | def download_file(self, url, destfile, digest=None, reporthook=None):
method send_request (line 450) | def send_request(self, req):
method encode_request (line 466) | def encode_request(self, fields, files):
method search (line 509) | def search(self, terms, operator=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/locators.py
function get_all_distribution_names (line 41) | def get_all_distribution_names(url=None):
class RedirectHandler (line 55) | class RedirectHandler(BaseRedirectHandler):
method http_error_302 (line 64) | def http_error_302(self, req, fp, code, msg, headers):
class Locator (line 86) | class Locator(object):
method __init__ (line 102) | def __init__(self, scheme='default'):
method get_errors (line 121) | def get_errors(self):
method clear_errors (line 135) | def clear_errors(self):
method clear_cache (line 142) | def clear_cache(self):
method _get_scheme (line 145) | def _get_scheme(self):
method _set_scheme (line 148) | def _set_scheme(self, value):
method _get_project (line 153) | def _get_project(self, name):
method get_distribution_names (line 165) | def get_distribution_names(self):
method get_project (line 171) | def get_project(self, name):
method score_url (line 188) | def score_url(self, url):
method prefer_url (line 203) | def prefer_url(self, url1, url2):
method split_filename (line 225) | def split_filename(self, filename, project_name):
method convert_url_to_download_info (line 231) | def convert_url_to_download_info(self, url, project_name):
method _get_digest (line 303) | def _get_digest(self, info):
method _update_version_data (line 319) | def _update_version_data(self, result, info):
method locate (line 342) | def locate(self, requirement, prereleases=False):
class PyPIRPCLocator (line 402) | class PyPIRPCLocator(Locator):
method __init__ (line 407) | def __init__(self, url, **kwargs):
method get_distribution_names (line 418) | def get_distribution_names(self):
method _get_project (line 424) | def _get_project(self, name):
class PyPIJSONLocator (line 450) | class PyPIJSONLocator(Locator):
method __init__ (line 455) | def __init__(self, url, **kwargs):
method get_distribution_names (line 459) | def get_distribution_names(self):
method _get_project (line 465) | def _get_project(self, name):
class Page (line 519) | class Page(object):
method __init__ (line 535) | def __init__(self, data, url):
method links (line 549) | def links(self):
class SimpleScrapingLocator (line 577) | class SimpleScrapingLocator(Locator):
method __init__ (line 591) | def __init__(self, url, timeout=None, num_workers=10, **kwargs):
method _prepare_threads (line 617) | def _prepare_threads(self):
method _wait_threads (line 630) | def _wait_threads(self):
method _get_project (line 643) | def _get_project(self, name):
method _is_platform_dependent (line 664) | def _is_platform_dependent(self, url):
method _process_download (line 670) | def _process_download(self, url):
method _should_queue (line 690) | def _should_queue(self, link, referrer, rel):
method _fetch (line 719) | def _fetch(self):
method get_page (line 752) | def get_page(self, url):
method get_distribution_names (line 813) | def get_distribution_names(self):
class DirectoryLocator (line 825) | class DirectoryLocator(Locator):
method __init__ (line 830) | def __init__(self, path, **kwargs):
method should_include (line 847) | def should_include(self, filename, parent):
method _get_project (line 855) | def _get_project(self, name):
method get_distribution_names (line 871) | def get_distribution_names(self):
class JSONLocator (line 890) | class JSONLocator(Locator):
method get_distribution_names (line 897) | def get_distribution_names(self):
method _get_project (line 903) | def _get_project(self, name):
class DistPathLocator (line 928) | class DistPathLocator(Locator):
method __init__ (line 933) | def __init__(self, distpath, **kwargs):
method _get_project (line 943) | def _get_project(self, name):
class AggregatingLocator (line 956) | class AggregatingLocator(Locator):
method __init__ (line 960) | def __init__(self, *locators, **kwargs):
method clear_cache (line 976) | def clear_cache(self):
method _set_scheme (line 981) | def _set_scheme(self, value):
method _get_project (line 988) | def _get_project(self, name):
method get_distribution_names (line 1032) | def get_distribution_names(self):
class DependencyFinder (line 1058) | class DependencyFinder(object):
method __init__ (line 1063) | def __init__(self, locator=None):
method add_distribution (line 1071) | def add_distribution(self, dist):
method remove_distribution (line 1086) | def remove_distribution(self, dist):
method get_matcher (line 1104) | def get_matcher(self, reqt):
method find_providers (line 1120) | def find_providers(self, reqt):
method try_to_replace (line 1144) | def try_to_replace(self, provider, other, problems):
method find (line 1184) | def find(self, requirement, meta_extras=None, prereleases=False):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/manifest.py
class Manifest (line 37) | class Manifest(object):
method __init__ (line 42) | def __init__(self, base=None):
method findall (line 57) | def findall(self):
method add (line 84) | def add(self, item):
method add_many (line 94) | def add_many(self, items):
method sorted (line 103) | def sorted(self, wantdirs=False):
method clear (line 125) | def clear(self):
method process_directive (line 130) | def process_directive(self, directive):
method _parse_directive (line 209) | def _parse_directive(self, directive):
method _include_pattern (line 256) | def _include_pattern(self, pattern, anchor=True, prefix=None,
method _exclude_pattern (line 297) | def _exclude_pattern(self, pattern, anchor=True, prefix=None,
method _translate_pattern (line 317) | def _translate_pattern(self, pattern, anchor=True, prefix=None,
method _glob_to_re (line 372) | def _glob_to_re(self, pattern):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/markers.py
function _is_literal (line 25) | def _is_literal(o):
class Evaluator (line 30) | class Evaluator(object):
method evaluate (line 50) | def evaluate(self, expr, context):
function default_context (line 77) | def default_context():
function interpret (line 113) | def interpret(marker, execution_context=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/metadata.py
class MetadataMissingError (line 28) | class MetadataMissingError(DistlibException):
class MetadataConflictError (line 32) | class MetadataConflictError(DistlibException):
class MetadataUnrecognizedVersionError (line 36) | class MetadataUnrecognizedVersionError(DistlibException):
class MetadataInvalidError (line 40) | class MetadataInvalidError(DistlibException):
function _version2fieldlist (line 108) | def _version2fieldlist(version):
function _best_version (line 122) | def _best_version(fields):
function _get_name_and_version (line 245) | def _get_name_and_version(name, version, for_filename=False):
class LegacyMetadata (line 258) | class LegacyMetadata(object):
method __init__ (line 270) | def __init__(self, path=None, fileobj=None, mapping=None,
method set_metadata_version (line 286) | def set_metadata_version(self):
method _write_field (line 289) | def _write_field(self, fileobj, name, value):
method __getitem__ (line 292) | def __getitem__(self, name):
method __setitem__ (line 295) | def __setitem__(self, name, value):
method __delitem__ (line 298) | def __delitem__(self, name):
method __contains__ (line 305) | def __contains__(self, name):
method _convert_name (line 309) | def _convert_name(self, name):
method _default_value (line 315) | def _default_value(self, name):
method _remove_line_prefix (line 320) | def _remove_line_prefix(self, value):
method __getattr__ (line 326) | def __getattr__(self, name):
method get_fullname (line 337) | def get_fullname(self, filesafe=False):
method is_field (line 343) | def is_field(self, name):
method is_multi_field (line 348) | def is_multi_field(self, name):
method read (line 352) | def read(self, filepath):
method read_file (line 360) | def read_file(self, fileob):
method write (line 383) | def write(self, filepath, skip_unknown=False):
method write_file (line 391) | def write_file(self, fileobject, skip_unknown=False):
method update (line 416) | def update(self, other=None, **kwargs):
method set (line 444) | def set(self, name, value):
method get (line 488) | def get(self, name, default=_MISSING):
method check (line 517) | def check(self, strict=False):
method todict (line 561) | def todict(self, skip_missing=False):
method add_requirements (line 620) | def add_requirements(self, requirements):
method keys (line 631) | def keys(self):
method __iter__ (line 634) | def __iter__(self):
method values (line 638) | def values(self):
method items (line 641) | def items(self):
method __repr__ (line 644) | def __repr__(self):
class Metadata (line 653) | class Metadata(object):
method __init__ (line 695) | def __init__(self, path=None, fileobj=None, mapping=None,
method __getattribute__ (line 763) | def __getattribute__(self, key):
method _validate_value (line 806) | def _validate_value(self, key, value, scheme=None):
method __setattr__ (line 816) | def __setattr__(self, key, value):
method name_and_version (line 856) | def name_and_version(self):
method provides (line 860) | def provides(self):
method provides (line 871) | def provides(self, value):
method get_requirements (line 877) | def get_requirements(self, reqts, extras=None, env=None):
method dictionary (line 920) | def dictionary(self):
method dependencies (line 926) | def dependencies(self):
method dependencies (line 933) | def dependencies(self, value):
method _validate_mapping (line 939) | def _validate_mapping(self, mapping, scheme):
method validate (line 953) | def validate(self):
method todict (line 962) | def todict(self):
method _from_legacy (line 969) | def _from_legacy(self):
method _to_legacy (line 1007) | def _to_legacy(self):
method write (line 1044) | def write(self, path=None, fileobj=None, legacy=False, skip_unknown=Tr...
method add_requirements (line 1070) | def add_requirements(self, requirements):
method __repr__ (line 1087) | def __repr__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/resources.py
class ResourceCache (line 28) | class ResourceCache(Cache):
method __init__ (line 29) | def __init__(self, base=None):
method is_stale (line 35) | def is_stale(self, resource, path):
method get (line 46) | def get(self, resource):
class ResourceBase (line 72) | class ResourceBase(object):
method __init__ (line 73) | def __init__(self, finder, name):
class Resource (line 78) | class Resource(ResourceBase):
method as_stream (line 86) | def as_stream(self):
method file_path (line 96) | def file_path(self):
method bytes (line 103) | def bytes(self):
method size (line 107) | def size(self):
class ResourceContainer (line 111) | class ResourceContainer(ResourceBase):
method resources (line 115) | def resources(self):
class ResourceFinder (line 119) | class ResourceFinder(object):
method __init__ (line 129) | def __init__(self, module):
method _adjust_path (line 134) | def _adjust_path(self, path):
method _make_path (line 137) | def _make_path(self, resource_name):
method _find (line 149) | def _find(self, path):
method get_cache_info (line 152) | def get_cache_info(self, resource):
method find (line 155) | def find(self, resource_name):
method get_stream (line 167) | def get_stream(self, resource):
method get_bytes (line 170) | def get_bytes(self, resource):
method get_size (line 174) | def get_size(self, resource):
method get_resources (line 177) | def get_resources(self, resource):
method is_container (line 183) | def is_container(self, resource):
method iterator (line 188) | def iterator(self, resource_name):
class ZipResourceFinder (line 209) | class ZipResourceFinder(ResourceFinder):
method __init__ (line 213) | def __init__(self, module):
method _adjust_path (line 224) | def _adjust_path(self, path):
method _find (line 227) | def _find(self, path):
method get_cache_info (line 245) | def get_cache_info(self, resource):
method get_bytes (line 250) | def get_bytes(self, resource):
method get_stream (line 253) | def get_stream(self, resource):
method get_size (line 256) | def get_size(self, resource):
method get_resources (line 260) | def get_resources(self, resource):
method _is_directory (line 275) | def _is_directory(self, path):
function register_finder (line 304) | def register_finder(loader, finder_maker):
function finder (line 310) | def finder(package):
function finder_for_path (line 338) | def finder_for_path(path):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/scripts.py
function _enquote_executable (line 66) | def _enquote_executable(executable):
class ScriptMaker (line 82) | class ScriptMaker(object):
method __init__ (line 91) | def __init__(self, source_dir, target_dir, add_launchers=True,
method _get_alternate_executable (line 107) | def _get_alternate_executable(self, executable, options):
method _is_shell (line 115) | def _is_shell(self, executable):
method _fix_jython_executable (line 127) | def _fix_jython_executable(self, executable):
method _build_shebang (line 139) | def _build_shebang(self, executable, post_interp):
method _get_shebang (line 170) | def _get_shebang(self, encoding, post_interp=b'', options=None):
method _get_script_text (line 226) | def _get_script_text(self, entry):
method get_manifest (line 232) | def get_manifest(self, exename):
method _write_script (line 236) | def _write_script(self, names, shebang, script_bytes, filenames, ext):
method _make_script (line 286) | def _make_script(self, entry, filenames, options=None):
method _copy_script (line 309) | def _copy_script(self, script, filenames):
method dry_run (line 362) | def dry_run(self):
method dry_run (line 366) | def dry_run(self, value):
method _get_launcher (line 373) | def _get_launcher(self, kind):
method make (line 387) | def make(self, specification, options=None):
method make_multiple (line 406) | def make_multiple(self, specifications, options=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/util.py
function parse_marker (line 56) | def parse_marker(marker_string):
function parse_requirement (line 145) | def parse_requirement(req):
function get_resources_dests (line 266) | def get_resources_dests(resources_root, rules):
function in_venv (line 292) | def in_venv():
function get_executable (line 302) | def get_executable():
function proceed (line 318) | def proceed(prompt, allowed_chars, error_prompt=None, default=None):
function extract_by_key (line 334) | def extract_by_key(d, keys):
function read_exports (line 343) | def read_exports(stream):
function write_exports (line 390) | def write_exports(exports, stream):
function tempdir (line 410) | def tempdir():
function chdir (line 418) | def chdir(d):
function socket_timeout (line 428) | def socket_timeout(seconds=15):
class cached_property (line 437) | class cached_property(object):
method __init__ (line 438) | def __init__(self, func):
method __get__ (line 443) | def __get__(self, obj, cls=None):
function convert_path (line 451) | def convert_path(pathname):
class FileOperator (line 478) | class FileOperator(object):
method __init__ (line 479) | def __init__(self, dry_run=False):
method _init_record (line 484) | def _init_record(self):
method record_as_written (line 489) | def record_as_written(self, path):
method newer (line 493) | def newer(self, source, target):
method copy_file (line 513) | def copy_file(self, infile, outfile, check=True):
method copy_stream (line 530) | def copy_stream(self, instream, outfile, encoding=None):
method write_binary_file (line 545) | def write_binary_file(self, path, data):
method write_text_file (line 552) | def write_text_file(self, path, data, encoding):
method set_mode (line 559) | def set_mode(self, bits, mask, files):
method ensure_dir (line 573) | def ensure_dir(self, path):
method byte_compile (line 585) | def byte_compile(self, path, optimize=False, force=False, prefix=None):
method ensure_removed (line 599) | def ensure_removed(self, path):
method is_writable (line 620) | def is_writable(self, path):
method commit (line 632) | def commit(self):
method rollback (line 642) | def rollback(self):
function resolve (line 660) | def resolve(module_name, dotted_path):
class ExportEntry (line 675) | class ExportEntry(object):
method __init__ (line 676) | def __init__(self, name, prefix, suffix, flags):
method value (line 683) | def value(self):
method __repr__ (line 686) | def __repr__(self): # pragma: no cover
method __eq__ (line 690) | def __eq__(self, other):
function get_export_entry (line 708) | def get_export_entry(specification):
function get_cache_base (line 739) | def get_cache_base(suffix=None):
function path_to_cache_dir (line 780) | def path_to_cache_dir(path):
function ensure_slash (line 797) | def ensure_slash(s):
function parse_credentials (line 803) | def parse_credentials(netloc):
function get_process_umask (line 814) | def get_process_umask():
function is_string_sequence (line 819) | def is_string_sequence(seq):
function split_filename (line 834) | def split_filename(filename, project_name=None):
function parse_name_and_version (line 862) | def parse_name_and_version(p):
function get_extras (line 877) | def get_extras(requested, available):
function _get_external_data (line 902) | def _get_external_data(url):
function get_project_data (line 924) | def get_project_data(name):
function get_package_data (line 930) | def get_package_data(name, version):
class Cache (line 936) | class Cache(object):
method __init__ (line 943) | def __init__(self, base):
method prefix_to_dir (line 957) | def prefix_to_dir(self, prefix):
method clear (line 963) | def clear(self):
class EventMixin (line 980) | class EventMixin(object):
method __init__ (line 984) | def __init__(self):
method add (line 987) | def add(self, event, subscriber, append=True):
method remove (line 1007) | def remove(self, event, subscriber):
method get_subscribers (line 1019) | def get_subscribers(self, event):
method publish (line 1026) | def publish(self, event, *args, **kwargs):
class Sequencer (line 1052) | class Sequencer(object):
method __init__ (line 1053) | def __init__(self):
method add_node (line 1058) | def add_node(self, node):
method remove_node (line 1061) | def remove_node(self, node, edges=False):
method add (line 1077) | def add(self, pred, succ):
method remove (line 1082) | def remove(self, pred, succ):
method is_step (line 1095) | def is_step(self, step):
method get_steps (line 1099) | def get_steps(self, final):
method strong_connections (line 1125) | def strong_connections(self):
method dot (line 1176) | def dot(self):
function unarchive (line 1194) | def unarchive(archive_filename, dest_dir, format=None, check=True):
function zip_dir (line 1248) | def zip_dir(directory):
class Progress (line 1268) | class Progress(object):
method __init__ (line 1271) | def __init__(self, minval=0, maxval=100):
method update (line 1279) | def update(self, curval):
method increment (line 1289) | def increment(self, incr):
method start (line 1293) | def start(self):
method stop (line 1297) | def stop(self):
method maximum (line 1303) | def maximum(self):
method percentage (line 1307) | def percentage(self):
method format_duration (line 1317) | def format_duration(self, duration):
method ETA (line 1327) | def ETA(self):
method speed (line 1346) | def speed(self):
function iglob (line 1366) | def iglob(path_glob):
function _iglob (line 1377) | def _iglob(path_glob):
class HTTPSConnection (line 1413) | class HTTPSConnection(httplib.HTTPSConnection):
method connect (line 1418) | def connect(self):
class HTTPSHandler (line 1455) | class HTTPSHandler(BaseHTTPSHandler):
method __init__ (line 1456) | def __init__(self, ca_certs, check_domain=True):
method _conn_maker (line 1461) | def _conn_maker(self, *args, **kwargs):
method https_open (line 1477) | def https_open(self, req):
class HTTPSOnlyHandler (line 1496) | class HTTPSOnlyHandler(HTTPSHandler, HTTPHandler):
method http_open (line 1497) | def http_open(self, req):
class HTTP (line 1508) | class HTTP(httplib.HTTP):
method __init__ (line 1509) | def __init__(self, host='', port=None, **kwargs):
class HTTPS (line 1516) | class HTTPS(httplib.HTTPS):
method __init__ (line 1517) | def __init__(self, host='', port=None, **kwargs):
class Transport (line 1523) | class Transport(xmlrpclib.Transport):
method __init__ (line 1524) | def __init__(self, timeout, use_datetime=0):
method make_connection (line 1528) | def make_connection(self, host):
class SafeTransport (line 1540) | class SafeTransport(xmlrpclib.SafeTransport):
method __init__ (line 1541) | def __init__(self, timeout, use_datetime=0):
method make_connection (line 1545) | def make_connection(self, host):
class ServerProxy (line 1561) | class ServerProxy(xmlrpclib.ServerProxy):
method __init__ (line 1562) | def __init__(self, uri, **kwargs):
function _csv_open (line 1582) | def _csv_open(fn, mode, **kwargs):
class CSVBase (line 1593) | class CSVBase(object):
method __enter__ (line 1600) | def __enter__(self):
method __exit__ (line 1603) | def __exit__(self, *exc_info):
class CSVReader (line 1607) | class CSVReader(CSVBase):
method __init__ (line 1608) | def __init__(self, **kwargs):
method __iter__ (line 1619) | def __iter__(self):
method next (line 1622) | def next(self):
class CSVWriter (line 1632) | class CSVWriter(CSVBase):
method __init__ (line 1633) | def __init__(self, fn, **kwargs):
method writerow (line 1637) | def writerow(self, row):
class Configurator (line 1651) | class Configurator(BaseConfigurator):
method __init__ (line 1656) | def __init__(self, config, base=None):
method configure_custom (line 1660) | def configure_custom(self, config):
method __getitem__ (line 1691) | def __getitem__(self, key):
method inc_convert (line 1697) | def inc_convert(self, value):
class SubprocessMixin (line 1706) | class SubprocessMixin(object):
method __init__ (line 1710) | def __init__(self, verbose=False, progress=None):
method reader (line 1714) | def reader(self, stream, context):
method run_command (line 1735) | def run_command(self, cmd, **kwargs):
function normalize_name (line 1752) | def normalize_name(name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/version.py
class UnsupportedVersionError (line 25) | class UnsupportedVersionError(ValueError):
class Version (line 30) | class Version(object):
method __init__ (line 31) | def __init__(self, s):
method parse (line 37) | def parse(self, s):
method _check_compatible (line 40) | def _check_compatible(self, other):
method __eq__ (line 44) | def __eq__(self, other):
method __ne__ (line 48) | def __ne__(self, other):
method __lt__ (line 51) | def __lt__(self, other):
method __gt__ (line 55) | def __gt__(self, other):
method __le__ (line 58) | def __le__(self, other):
method __ge__ (line 61) | def __ge__(self, other):
method __hash__ (line 65) | def __hash__(self):
method __repr__ (line 68) | def __repr__(self):
method __str__ (line 71) | def __str__(self):
method is_prerelease (line 75) | def is_prerelease(self):
class Matcher (line 79) | class Matcher(object):
method parse_requirement (line 97) | def parse_requirement(self, s):
method __init__ (line 100) | def __init__(self, s):
method match (line 129) | def match(self, version):
method exact_version (line 151) | def exact_version(self):
method _check_compatible (line 157) | def _check_compatible(self, other):
method __eq__ (line 161) | def __eq__(self, other):
method __ne__ (line 165) | def __ne__(self, other):
method __hash__ (line 169) | def __hash__(self):
method __repr__ (line 172) | def __repr__(self):
method __str__ (line 175) | def __str__(self):
function _pep_440_key (line 184) | def _pep_440_key(s):
class NormalizedVersion (line 248) | class NormalizedVersion(Version):
method parse (line 266) | def parse(self, s):
method is_prerelease (line 280) | def is_prerelease(self):
function _match_prefix (line 284) | def _match_prefix(x, y):
class NormalizedMatcher (line 295) | class NormalizedMatcher(Matcher):
method _adjust_local (line 310) | def _adjust_local(self, version, constraint, prefix):
method _match_lt (line 324) | def _match_lt(self, version, constraint, prefix):
method _match_gt (line 332) | def _match_gt(self, version, constraint, prefix):
method _match_le (line 340) | def _match_le(self, version, constraint, prefix):
method _match_ge (line 344) | def _match_ge(self, version, constraint, prefix):
method _match_eq (line 348) | def _match_eq(self, version, constraint, prefix):
method _match_arbitrary (line 356) | def _match_arbitrary(self, version, constraint, prefix):
method _match_ne (line 359) | def _match_ne(self, version, constraint, prefix):
method _match_compatible (line 367) | def _match_compatible(self, version, constraint, prefix):
function _suggest_semantic_version (line 406) | def _suggest_semantic_version(s):
function _suggest_normalized_version (line 452) | def _suggest_normalized_version(s):
function _legacy_key (line 578) | def _legacy_key(s):
class LegacyVersion (line 604) | class LegacyVersion(Version):
method parse (line 605) | def parse(self, s):
method is_prerelease (line 609) | def is_prerelease(self):
class LegacyMatcher (line 619) | class LegacyMatcher(Matcher):
method _match_compatible (line 627) | def _match_compatible(self, version, constraint, prefix):
function is_semver (line 649) | def is_semver(s):
function _semantic_key (line 653) | def _semantic_key(s):
class SemanticVersion (line 674) | class SemanticVersion(Version):
method parse (line 675) | def parse(self, s):
method is_prerelease (line 679) | def is_prerelease(self):
class SemanticMatcher (line 683) | class SemanticMatcher(Matcher):
class VersionScheme (line 687) | class VersionScheme(object):
method __init__ (line 688) | def __init__(self, key, matcher, suggester=None):
method is_valid_version (line 693) | def is_valid_version(self, s):
method is_valid_matcher (line 701) | def is_valid_matcher(self, s):
method is_valid_constraint_list (line 709) | def is_valid_constraint_list(self, s):
method suggest (line 715) | def suggest(self, s):
function get_scheme (line 733) | def get_scheme(name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distlib/wheel.py
function _derive_abi (line 59) | def _derive_abi():
class Mounter (line 98) | class Mounter(object):
method __init__ (line 99) | def __init__(self):
method add (line 103) | def add(self, pathname, extensions):
method remove (line 107) | def remove(self, pathname):
method find_module (line 113) | def find_module(self, fullname, path=None):
method load_module (line 120) | def load_module(self, fullname):
class Wheel (line 136) | class Wheel(object):
method __init__ (line 144) | def __init__(self, filename=None, sign=False, verify=False):
method filename (line 186) | def filename(self):
method exists (line 203) | def exists(self):
method tags (line 208) | def tags(self):
method metadata (line 215) | def metadata(self):
method get_wheel_metadata (line 244) | def get_wheel_metadata(self, zf):
method info (line 254) | def info(self):
method process_shebang (line 260) | def process_shebang(self, data):
method get_hash (line 290) | def get_hash(self, data, hash_kind=None):
method write_record (line 301) | def write_record(self, records, record_path, base):
method write_records (line 310) | def write_records(self, info, libdir, archive_paths):
method build_zip (line 326) | def build_zip(self, pathname, archive_paths):
method build (line 332) | def build(self, paths, tags=None, wheel_version=None):
method install (line 436) | def install(self, paths, maker, **kwargs):
method _get_dylib_cache (line 664) | def _get_dylib_cache(self):
method _get_extensions (line 673) | def _get_extensions(self):
method is_compatible (line 707) | def is_compatible(self):
method is_mountable (line 713) | def is_mountable(self):
method mount (line 719) | def mount(self, append=False):
method unmount (line 740) | def unmount(self):
method verify (line 752) | def verify(self):
method update (line 806) | def update(self, modifier, dest_dir=None, **kwargs):
function compatible_tags (line 907) | def compatible_tags():
function is_compatible (line 974) | def is_compatible(wheel, tags=None):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/distro.py
function linux_distribution (line 95) | def linux_distribution(full_distribution_name=True):
function id (line 123) | def id():
function name (line 198) | def name(pretty=False):
function version (line 237) | def version(pretty=False, best=False):
function version_parts (line 281) | def version_parts(best=False):
function major_version (line 298) | def major_version(best=False):
function minor_version (line 311) | def minor_version(best=False):
function build_number (line 324) | def build_number(best=False):
function like (line 337) | def like():
function codename (line 354) | def codename():
function info (line 378) | def info(pretty=False, best=False):
function os_release_info (line 422) | def os_release_info():
function lsb_release_info (line 432) | def lsb_release_info():
function distro_release_info (line 443) | def distro_release_info():
function os_release_attr (line 453) | def os_release_attr(attribute):
function lsb_release_attr (line 472) | def lsb_release_attr(attribute):
function distro_release_attr (line 492) | def distro_release_attr(attribute):
class cached_property (line 511) | class cached_property(object):
method __init__ (line 516) | def __init__(self, f):
method __get__ (line 520) | def __get__(self, obj, owner):
class LinuxDistribution (line 526) | class LinuxDistribution(object):
method __init__ (line 544) | def __init__(self,
method __repr__ (line 611) | def __repr__(self):
method linux_distribution (line 624) | def linux_distribution(self, full_distribution_name=True):
method id (line 638) | def id(self):
method name (line 661) | def name(self, pretty=False):
method version (line 680) | def version(self, pretty=False, best=False):
method version_parts (line 713) | def version_parts(self, best=False):
method major_version (line 729) | def major_version(self, best=False):
method minor_version (line 737) | def minor_version(self, best=False):
method build_number (line 745) | def build_number(self, best=False):
method like (line 753) | def like(self):
method codename (line 761) | def codename(self):
method info (line 772) | def info(self, pretty=False, best=False):
method os_release_info (line 791) | def os_release_info(self):
method lsb_release_info (line 800) | def lsb_release_info(self):
method distro_release_info (line 810) | def distro_release_info(self):
method os_release_attr (line 820) | def os_release_attr(self, attribute):
method lsb_release_attr (line 829) | def lsb_release_attr(self, attribute):
method distro_release_attr (line 838) | def distro_release_attr(self, attribute):
method _os_release_info (line 848) | def _os_release_info(self):
method _parse_os_release_content (line 861) | def _parse_os_release_content(lines):
method _lsb_release_info (line 921) | def _lsb_release_info(self):
method _parse_lsb_release_content (line 940) | def _parse_lsb_release_content(lines):
method _distro_release_info (line 964) | def _distro_release_info(self):
method _parse_distro_release_file (line 1026) | def _parse_distro_release_file(self, filepath):
method _parse_distro_release_content (line 1049) | def _parse_distro_release_content(line):
function main (line 1080) | def main():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_ihatexml.py
function charStringToList (line 103) | def charStringToList(chars):
function normaliseCharList (line 124) | def normaliseCharList(charList):
function missingRanges (line 143) | def missingRanges(charList):
function listToRegexpStr (line 154) | def listToRegexpStr(charList):
function hexToInt (line 165) | def hexToInt(hex_str):
function escapeRegexp (line 169) | def escapeRegexp(string):
class InfosetFilter (line 186) | class InfosetFilter(object):
method __init__ (line 189) | def __init__(self,
method coerceAttribute (line 209) | def coerceAttribute(self, name, namespace=None):
method coerceElement (line 220) | def coerceElement(self, name):
method coerceComment (line 223) | def coerceComment(self, data):
method coerceCharacters (line 233) | def coerceCharacters(self, data):
method coercePubid (line 241) | def coercePubid(self, data):
method toXmlName (line 252) | def toXmlName(self, name):
method getReplacementCharacter (line 270) | def getReplacementCharacter(self, char):
method fromXmlName (line 277) | def fromXmlName(self, name):
method escapeChar (line 282) | def escapeChar(self, char):
method unescapeChar (line 287) | def unescapeChar(self, charcode):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_inputstream.py
class BufferedStream (line 57) | class BufferedStream(object):
method __init__ (line 64) | def __init__(self, stream):
method tell (line 69) | def tell(self):
method seek (line 76) | def seek(self, pos):
method read (line 85) | def read(self, bytes):
method _bufferedBytes (line 94) | def _bufferedBytes(self):
method _readStream (line 97) | def _readStream(self, bytes):
method _readFromBuffer (line 104) | def _readFromBuffer(self, bytes):
function HTMLInputStream (line 131) | def HTMLInputStream(source, **kwargs):
class HTMLUnicodeInputStream (line 154) | class HTMLUnicodeInputStream(object):
method __init__ (line 164) | def __init__(self, source):
method reset (line 196) | def reset(self):
method openStream (line 210) | def openStream(self, source):
method _position (line 224) | def _position(self, offset):
method position (line 235) | def position(self):
method char (line 240) | def char(self):
method readChunk (line 255) | def readChunk(self, chunkSize=None):
method characterErrorsUCS4 (line 293) | def characterErrorsUCS4(self, data):
method characterErrorsUCS2 (line 297) | def characterErrorsUCS2(self, data):
method charsUntil (line 320) | def charsUntil(self, characters, opposite=False):
method unget (line 367) | def unget(self, char):
class HTMLBinaryInputStream (line 384) | class HTMLBinaryInputStream(HTMLUnicodeInputStream):
method __init__ (line 392) | def __init__(self, source, override_encoding=None, transport_encoding=...
method reset (line 434) | def reset(self):
method openStream (line 438) | def openStream(self, source):
method determineEncoding (line 457) | def determineEncoding(self, chardet=True):
method changeEncoding (line 519) | def changeEncoding(self, newEncoding):
method detectBOM (line 535) | def detectBOM(self):
method detectEncodingMeta (line 569) | def detectEncodingMeta(self):
class EncodingBytes (line 584) | class EncodingBytes(bytes):
method __new__ (line 588) | def __new__(self, value):
method __init__ (line 592) | def __init__(self, value):
method __iter__ (line 596) | def __iter__(self):
method __next__ (line 599) | def __next__(self):
method next (line 607) | def next(self):
method previous (line 611) | def previous(self):
method setPosition (line 620) | def setPosition(self, position):
method getPosition (line 625) | def getPosition(self):
method getCurrentByte (line 635) | def getCurrentByte(self):
method skip (line 640) | def skip(self, chars=spaceCharactersBytes):
method skipUntil (line 652) | def skipUntil(self, chars):
method matchBytes (line 663) | def matchBytes(self, bytes):
method jumpTo (line 674) | def jumpTo(self, bytes):
class EncodingParser (line 688) | class EncodingParser(object):
method __init__ (line 691) | def __init__(self, data):
method getEncoding (line 696) | def getEncoding(self):
method handleComment (line 719) | def handleComment(self):
method handleMeta (line 723) | def handleMeta(self):
method handlePossibleStartTag (line 759) | def handlePossibleStartTag(self):
method handlePossibleEndTag (line 762) | def handlePossibleEndTag(self):
method handlePossibleTag (line 766) | def handlePossibleTag(self, endTag):
method handleOther (line 789) | def handleOther(self):
method getAttribute (line 792) | def getAttribute(self):
class ContentAttrParser (line 869) | class ContentAttrParser(object):
method __init__ (line 870) | def __init__(self, data):
method parse (line 874) | def parse(self):
function lookupEncoding (line 908) | def lookupEncoding(encoding):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_tokenizer.py
class HTMLTokenizer (line 21) | class HTMLTokenizer(object):
method __init__ (line 34) | def __init__(self, stream, parser=None, **kwargs):
method __iter__ (line 49) | def __iter__(self):
method consumeNumberEntity (line 65) | def consumeNumberEntity(self, isHex):
method consumeEntity (line 137) | def consumeEntity(self, allowedChar=None, fromAttribute=False):
method processEntityInAttribute (line 217) | def processEntityInAttribute(self, allowedChar):
method emitCurrentToken (line 222) | def emitCurrentToken(self):
method dataState (line 242) | def dataState(self):
method entityDataState (line 271) | def entityDataState(self):
method rcdataState (line 276) | def rcdataState(self):
method characterReferenceInRcdata (line 305) | def characterReferenceInRcdata(self):
method rawtextState (line 310) | def rawtextState(self):
method scriptDataState (line 328) | def scriptDataState(self):
method plaintextState (line 346) | def plaintextState(self):
method tagOpenState (line 361) | def tagOpenState(self):
method closeTagOpenState (line 396) | def closeTagOpenState(self):
method tagNameState (line 420) | def tagNameState(self):
method rcdataLessThanSignState (line 442) | def rcdataLessThanSignState(self):
method rcdataEndTagOpenState (line 453) | def rcdataEndTagOpenState(self):
method rcdataEndTagNameState (line 464) | def rcdataEndTagNameState(self):
method rawtextLessThanSignState (line 492) | def rawtextLessThanSignState(self):
method rawtextEndTagOpenState (line 503) | def rawtextEndTagOpenState(self):
method rawtextEndTagNameState (line 514) | def rawtextEndTagNameState(self):
method scriptDataLessThanSignState (line 542) | def scriptDataLessThanSignState(self):
method scriptDataEndTagOpenState (line 556) | def scriptDataEndTagOpenState(self):
method scriptDataEndTagNameState (line 567) | def scriptDataEndTagNameState(self):
method scriptDataEscapeStartState (line 595) | def scriptDataEscapeStartState(self):
method scriptDataEscapeStartDashState (line 605) | def scriptDataEscapeStartDashState(self):
method scriptDataEscapedState (line 615) | def scriptDataEscapedState(self):
method scriptDataEscapedDashState (line 635) | def scriptDataEscapedDashState(self):
method scriptDataEscapedDashDashState (line 655) | def scriptDataEscapedDashDashState(self):
method scriptDataEscapedLessThanSignState (line 677) | def scriptDataEscapedLessThanSignState(self):
method scriptDataEscapedEndTagOpenState (line 692) | def scriptDataEscapedEndTagOpenState(self):
method scriptDataEscapedEndTagNameState (line 703) | def scriptDataEscapedEndTagNameState(self):
method scriptDataDoubleEscapeStartState (line 731) | def scriptDataDoubleEscapeStartState(self):
method scriptDataDoubleEscapedState (line 747) | def scriptDataDoubleEscapedState(self):
method scriptDataDoubleEscapedDashState (line 768) | def scriptDataDoubleEscapedDashState(self):
method scriptDataDoubleEscapedDashDashState (line 791) | def scriptDataDoubleEscapedDashDashState(self):
method scriptDataDoubleEscapedLessThanSignState (line 816) | def scriptDataDoubleEscapedLessThanSignState(self):
method scriptDataDoubleEscapeEndState (line 827) | def scriptDataDoubleEscapeEndState(self):
method beforeAttributeNameState (line 843) | def beforeAttributeNameState(self):
method attributeNameState (line 873) | def attributeNameState(self):
method afterAttributeNameState (line 927) | def afterAttributeNameState(self):
method beforeAttributeValueState (line 959) | def beforeAttributeValueState(self):
method attributeValueDoubleQuotedState (line 993) | def attributeValueDoubleQuotedState(self):
method attributeValueSingleQuotedState (line 1012) | def attributeValueSingleQuotedState(self):
method attributeValueUnQuotedState (line 1031) | def attributeValueUnQuotedState(self):
method afterAttributeValueState (line 1056) | def afterAttributeValueState(self):
method selfClosingStartTagState (line 1076) | def selfClosingStartTagState(self):
method bogusCommentState (line 1094) | def bogusCommentState(self):
method markupDeclarationOpenState (line 1109) | def markupDeclarationOpenState(self):
method commentStartState (line 1154) | def commentStartState(self):
method commentStartDashState (line 1177) | def commentStartDashState(self):
method commentState (line 1200) | def commentState(self):
method commentEndDashState (line 1218) | def commentEndDashState(self):
method commentEndState (line 1237) | def commentEndState(self):
method commentEndBangState (line 1268) | def commentEndBangState(self):
method doctypeState (line 1291) | def doctypeState(self):
method beforeDoctypeNameState (line 1308) | def beforeDoctypeNameState(self):
method doctypeNameState (line 1334) | def doctypeNameState(self):
method afterDoctypeNameState (line 1359) | def afterDoctypeNameState(self):
method afterDoctypePublicKeywordState (line 1410) | def afterDoctypePublicKeywordState(self):
method beforeDoctypePublicIdentifierState (line 1430) | def beforeDoctypePublicIdentifierState(self):
method doctypePublicIdentifierDoubleQuotedState (line 1459) | def doctypePublicIdentifierDoubleQuotedState(self):
method doctypePublicIdentifierSingleQuotedState (line 1483) | def doctypePublicIdentifierSingleQuotedState(self):
method afterDoctypePublicIdentifierState (line 1507) | def afterDoctypePublicIdentifierState(self):
method betweenDoctypePublicAndSystemIdentifiersState (line 1537) | def betweenDoctypePublicAndSystemIdentifiersState(self):
method afterDoctypeSystemKeywordState (line 1563) | def afterDoctypeSystemKeywordState(self):
method beforeDoctypeSystemIdentifierState (line 1583) | def beforeDoctypeSystemIdentifierState(self):
method doctypeSystemIdentifierDoubleQuotedState (line 1612) | def doctypeSystemIdentifierDoubleQuotedState(self):
method doctypeSystemIdentifierSingleQuotedState (line 1636) | def doctypeSystemIdentifierSingleQuotedState(self):
method afterDoctypeSystemIdentifierState (line 1660) | def afterDoctypeSystemIdentifierState(self):
method bogusDoctypeState (line 1679) | def bogusDoctypeState(self):
method cdataSectionState (line 1693) | def cdataSectionState(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_trie/_base.py
class Trie (line 6) | class Trie(Mapping):
method keys (line 9) | def keys(self, prefix=None):
method has_keys_with_prefix (line 18) | def has_keys_with_prefix(self, prefix):
method longest_prefix (line 25) | def longest_prefix(self, prefix):
method longest_prefix_item (line 35) | def longest_prefix_item(self, prefix):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_trie/datrie.py
class Trie (line 9) | class Trie(ABCTrie):
method __init__ (line 10) | def __init__(self, data):
method __contains__ (line 22) | def __contains__(self, key):
method __len__ (line 25) | def __len__(self):
method __iter__ (line 28) | def __iter__(self):
method __getitem__ (line 31) | def __getitem__(self, key):
method keys (line 34) | def keys(self, prefix=None):
method has_keys_with_prefix (line 37) | def has_keys_with_prefix(self, prefix):
method longest_prefix (line 40) | def longest_prefix(self, prefix):
method longest_prefix_item (line 43) | def longest_prefix_item(self, prefix):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_trie/py.py
class Trie (line 9) | class Trie(ABCTrie):
method __init__ (line 10) | def __init__(self, data):
method __contains__ (line 19) | def __contains__(self, key):
method __len__ (line 22) | def __len__(self):
method __iter__ (line 25) | def __iter__(self):
method __getitem__ (line 28) | def __getitem__(self, key):
method keys (line 31) | def keys(self, prefix=None):
method has_keys_with_prefix (line 54) | def has_keys_with_prefix(self, prefix):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/_utils.py
class MethodDispatcher (line 36) | class MethodDispatcher(dict):
method __init__ (line 49) | def __init__(self, items=()):
method __getitem__ (line 64) | def __getitem__(self, key):
function isSurrogatePair (line 71) | def isSurrogatePair(data):
function surrogatePairToCodepoint (line 77) | def surrogatePairToCodepoint(data):
function moduleFactoryFactory (line 86) | def moduleFactoryFactory(factory):
function memoize (line 115) | def memoize(func):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/constants.py
class DataLossWarning (line 2941) | class DataLossWarning(UserWarning):
class _ReparseException (line 2946) | class _ReparseException(Exception):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/alphabeticalattributes.py
function _attr_key (line 8) | def _attr_key(attr):
class Filter (line 19) | class Filter(base.Filter):
method __iter__ (line 21) | def __iter__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/base.py
class Filter (line 4) | class Filter(object):
method __init__ (line 5) | def __init__(self, source):
method __iter__ (line 8) | def __iter__(self):
method __getattr__ (line 11) | def __getattr__(self, name):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/inject_meta_charset.py
class Filter (line 6) | class Filter(base.Filter):
method __init__ (line 8) | def __init__(self, source, encoding):
method __iter__ (line 19) | def __iter__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/lint.py
class Filter (line 12) | class Filter(base.Filter):
method __init__ (line 18) | def __init__(self, source, require_matching_tags=True):
method __iter__ (line 29) | def __iter__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/optionaltags.py
class Filter (line 6) | class Filter(base.Filter):
method slider (line 8) | def slider(self):
method __iter__ (line 18) | def __iter__(self):
method is_optional_start (line 31) | def is_optional_start(self, tagname, previous, next):
method is_optional_end (line 88) | def is_optional_end(self, tagname, next):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/sanitizer.py
class Filter (line 707) | class Filter(base.Filter):
method __init__ (line 709) | def __init__(self,
method __iter__ (line 764) | def __iter__(self):
method sanitize_token (line 781) | def sanitize_token(self, token):
method allowed_token (line 799) | def allowed_token(self, token):
method disallowed_token (line 849) | def disallowed_token(self, token):
method sanitize_css (line 869) | def sanitize_css(self, style):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/filters/whitespace.py
class Filter (line 12) | class Filter(base.Filter):
method __iter__ (line 16) | def __iter__(self):
function collapse_spaces (line 37) | def collapse_spaces(text):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/html5parser.py
function parse (line 27) | def parse(doc, treebuilder="etree", namespaceHTMLElements=True, **kwargs):
function parseFragment (line 50) | def parseFragment(doc, container="div", treebuilder="etree", namespaceHT...
function method_decorator_metaclass (line 75) | def method_decorator_metaclass(function):
class HTMLParser (line 87) | class HTMLParser(object):
method __init__ (line 94) | def __init__(self, tree=None, strict=False, namespaceHTMLElements=True...
method _parse (line 125) | def _parse(self, stream, innerHTML=False, container="div", scripting=F...
method reset (line 139) | def reset(self):
method documentEncoding (line 174) | def documentEncoding(self):
method isHTMLIntegrationPoint (line 183) | def isHTMLIntegrationPoint(self, element):
method isMathMLTextIntegrationPoint (line 193) | def isMathMLTextIntegrationPoint(self, element):
method mainLoop (line 196) | def mainLoop(self):
method normalizedTokens (line 263) | def normalizedTokens(self):
method parse (line 267) | def parse(self, stream, *args, **kwargs):
method parseFragment (line 292) | def parseFragment(self, stream, *args, **kwargs):
method parseError (line 320) | def parseError(self, errorcode="XXX-undefined-error", datavars=None):
method normalizeToken (line 328) | def normalizeToken(self, token):
method adjustMathMLAttributes (line 339) | def adjustMathMLAttributes(self, token):
method adjustSVGAttributes (line 342) | def adjustSVGAttributes(self, token):
method adjustForeignAttributes (line 345) | def adjustForeignAttributes(self, token):
method reparseTokenNormal (line 348) | def reparseTokenNormal(self, token):
method resetInsertionMode (line 352) | def resetInsertionMode(self):
method parseRCDataRawtext (line 396) | def parseRCDataRawtext(self, token, contentType):
function getPhases (line 413) | def getPhases(debug):
function adjust_attributes (line 2774) | def adjust_attributes(token, replacements):
function impliedTagToken (line 2781) | def impliedTagToken(name, type="EndTag", attributes=None,
class ParseError (line 2789) | class ParseError(Exception):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/serializer.py
function htmlentityreplace_errors (line 42) | def htmlentityreplace_errors(exc):
function serialize (line 75) | def serialize(input, tree="etree", encoding=None, **serializer_opts):
class HTMLSerializer (line 104) | class HTMLSerializer(object):
method __init__ (line 135) | def __init__(self, **kwargs):
method encode (line 224) | def encode(self, string):
method encodeStrict (line 231) | def encodeStrict(self, string):
method serialize (line 238) | def serialize(self, treewalker, encoding=None):
method render (line 375) | def render(self, treewalker, encoding=None):
method serializeError (line 400) | def serializeError(self, data="XXX ERROR MESSAGE NEEDED"):
class SerializeError (line 407) | class SerializeError(Exception):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treeadapters/genshi.py
function to_genshi (line 7) | def to_genshi(walker):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treeadapters/sax.py
function to_sax (line 13) | def to_sax(walker, handler):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treebuilders/__init__.py
function getTreeBuilder (line 39) | def getTreeBuilder(treeType, implementation=None, **kwargs):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treebuilders/base.py
class Node (line 23) | class Node(object):
method __init__ (line 25) | def __init__(self, name):
method __str__ (line 45) | def __str__(self):
method __repr__ (line 54) | def __repr__(self):
method appendChild (line 57) | def appendChild(self, node):
method insertText (line 65) | def insertText(self, data, insertBefore=None):
method insertBefore (line 77) | def insertBefore(self, node, refNode):
method removeChild (line 89) | def removeChild(self, node):
method reparentChildren (line 97) | def reparentChildren(self, newParent):
method cloneNode (line 110) | def cloneNode(self):
method hasContent (line 116) | def hasContent(self):
class ActiveFormattingElements (line 122) | class ActiveFormattingElements(list):
method append (line 123) | def append(self, node):
method nodesEqual (line 136) | def nodesEqual(self, node1, node2):
class TreeBuilder (line 146) | class TreeBuilder(object):
method __init__ (line 172) | def __init__(self, namespaceHTMLElements):
method reset (line 184) | def reset(self):
method elementInScope (line 196) | def elementInScope(self, target, variant=None):
method reconstructActiveFormattingElements (line 218) | def reconstructActiveFormattingElements(self):
method clearActiveFormattingElements (line 264) | def clearActiveFormattingElements(self):
method elementInActiveFormattingElements (line 269) | def elementInActiveFormattingElements(self, name):
method insertRoot (line 283) | def insertRoot(self, token):
method insertDoctype (line 288) | def insertDoctype(self, token):
method insertComment (line 296) | def insertComment(self, token, parent=None):
method createElement (line 301) | def createElement(self, token):
method _getInsertFromTable (line 309) | def _getInsertFromTable(self):
method _setInsertFromTable (line 312) | def _setInsertFromTable(self, value):
method insertElementNormal (line 323) | def insertElementNormal(self, token):
method insertElementTable (line 333) | def insertElementTable(self, token):
method insertText (line 349) | def insertText(self, data, parent=None):
method getTableMisnestedNodePosition (line 364) | def getTableMisnestedNodePosition(self):
method generateImpliedEndTags (line 390) | def generateImpliedEndTags(self, exclude=None):
method getDocument (line 400) | def getDocument(self):
method getFragment (line 404) | def getFragment(self):
method testSerializer (line 411) | def testSerializer(self, node):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treebuilders/dom.py
function getDomBuilder (line 14) | def getDomBuilder(DomImplementation):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treebuilders/etree.py
function getETreeBuilder (line 17) | def getETreeBuilder(ElementTreeImplementation, fullTree=False):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treebuilders/etree_lxml.py
class DocumentType (line 34) | class DocumentType(object):
method __init__ (line 35) | def __init__(self, name, publicId, systemId):
class Document (line 41) | class Document(object):
method __init__ (line 42) | def __init__(self):
method appendChild (line 46) | def appendChild(self, element):
method _getChildNodes (line 49) | def _getChildNodes(self):
function testSerializer (line 55) | def testSerializer(element):
function tostring (line 134) | def tostring(element):
class TreeBuilder (line 175) | class TreeBuilder(base.TreeBuilder):
method __init__ (line 183) | def __init__(self, namespaceHTMLElements, fullTree=False):
method reset (line 259) | def reset(self):
method testSerializer (line 265) | def testSerializer(self, element):
method getDocument (line 268) | def getDocument(self):
method getFragment (line 274) | def getFragment(self):
method insertDoctype (line 284) | def insertDoctype(self, token):
method insertCommentInitial (line 300) | def insertCommentInitial(self, data, parent=None):
method insertCommentMain (line 305) | def insertCommentMain(self, data, parent=None):
method insertRoot (line 311) | def insertRoot(self, token):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/__init__.py
function getTreeWalker (line 21) | def getTreeWalker(treeType, implementation=None, **kwargs):
function concatenateCharacterTokens (line 65) | def concatenateCharacterTokens(tokens):
function pprint (line 80) | def pprint(walker):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/base.py
class TreeWalker (line 20) | class TreeWalker(object):
method __init__ (line 27) | def __init__(self, tree):
method __iter__ (line 35) | def __iter__(self):
method error (line 38) | def error(self, msg):
method emptyTag (line 48) | def emptyTag(self, namespace, name, attrs, hasChildren=False):
method startTag (line 69) | def startTag(self, namespace, name, attrs):
method endTag (line 86) | def endTag(self, namespace, name):
method text (line 100) | def text(self, data):
method comment (line 138) | def comment(self, data):
method doctype (line 148) | def doctype(self, name, publicId=None, systemId=None):
method entity (line 165) | def entity(self, name):
method unknown (line 175) | def unknown(self, nodeType):
class NonRecursiveTreeWalker (line 180) | class NonRecursiveTreeWalker(TreeWalker):
method getNodeDetails (line 181) | def getNodeDetails(self, node):
method getFirstChild (line 184) | def getFirstChild(self, node):
method getNextSibling (line 187) | def getNextSibling(self, node):
method getParentNode (line 190) | def getParentNode(self, node):
method __iter__ (line 193) | def __iter__(self):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/dom.py
class TreeWalker (line 8) | class TreeWalker(base.NonRecursiveTreeWalker):
method getNodeDetails (line 9) | def getNodeDetails(self, node):
method getFirstChild (line 36) | def getFirstChild(self, node):
method getNextSibling (line 39) | def getNextSibling(self, node):
method getParentNode (line 42) | def getParentNode(self, node):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/etree.py
function getETreeBuilder (line 14) | def getETreeBuilder(ElementTreeImplementation):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/etree_lxml.py
function ensure_str (line 12) | def ensure_str(s):
class Root (line 21) | class Root(object):
method __init__ (line 22) | def __init__(self, et):
method __getitem__ (line 49) | def __getitem__(self, key):
method getnext (line 52) | def getnext(self):
method __len__ (line 55) | def __len__(self):
class Doctype (line 59) | class Doctype(object):
method __init__ (line 60) | def __init__(self, root_node, name, public_id, system_id):
method getnext (line 69) | def getnext(self):
class FragmentRoot (line 73) | class FragmentRoot(Root):
method __init__ (line 74) | def __init__(self, children):
method getnext (line 78) | def getnext(self):
class FragmentWrapper (line 82) | class FragmentWrapper(object):
method __init__ (line 83) | def __init__(self, fragment_root, obj):
method __getattr__ (line 95) | def __getattr__(self, name):
method getnext (line 98) | def getnext(self):
method __getitem__ (line 106) | def __getitem__(self, key):
method __bool__ (line 109) | def __bool__(self):
method getparent (line 112) | def getparent(self):
method __str__ (line 115) | def __str__(self):
method __unicode__ (line 118) | def __unicode__(self):
method __len__ (line 121) | def __len__(self):
class TreeWalker (line 125) | class TreeWalker(base.NonRecursiveTreeWalker):
method __init__ (line 126) | def __init__(self, tree):
method getNodeDetails (line 137) | def getNodeDetails(self, node):
method getFirstChild (line 178) | def getFirstChild(self, node):
method getNextSibling (line 187) | def getNextSibling(self, node):
method getParentNode (line 203) | def getParentNode(self, node):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/html5lib/treewalkers/genshi.py
class TreeWalker (line 12) | class TreeWalker(base.TreeWalker):
method __iter__ (line 13) | def __iter__(self):
method tokens (line 27) | def tokens(self, event, next):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/idna/codec.py
class Codec (line 7) | class Codec(codecs.Codec):
method encode (line 9) | def encode(self, data, errors='strict'):
method decode (line 19) | def decode(self, data, errors='strict'):
class IncrementalEncoder (line 29) | class IncrementalEncoder(codecs.BufferedIncrementalEncoder):
method _buffer_encode (line 30) | def _buffer_encode(self, data, errors, final):
class IncrementalDecoder (line 62) | class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
method _buffer_decode (line 63) | def _buffer_decode(self, data, errors, final):
class StreamWriter (line 103) | class StreamWriter(Codec, codecs.StreamWriter):
class StreamReader (line 106) | class StreamReader(Codec, codecs.StreamReader):
function getregentry (line 109) | def getregentry():
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/idna/compat.py
function ToASCII (line 4) | def ToASCII(label):
function ToUnicode (line 7) | def ToUnicode(label):
function nameprep (line 10) | def nameprep(s):
FILE: venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/idna/core.py
class IDNAError (line 16) | class IDNAError(UnicodeError):
class IDNABidiError (line 21) | class IDNABidiError(IDNAError):
class InvalidCodepoint (line 26) | class InvalidCodepoint(IDNAError):
class InvalidCodepointContext (line 31) | class InvalidCodepointContext(IDNAError):
function _combining_class (line 36) | def _combining_class(cp):
function _is_script (line 39) | def _is_script(cp, script):
function _punycode (line 42) | def _punycode(s):
function _unot (line 45) | def _unot(s):
function valid_label_length (line 49) | def valid_label_length(label):
function valid_string_length (line 56) | def valid_string_length(label, trailing_dot):
function check_bidi (line 63) | def check_bidi(label, check_ltr=False):
function check_initial_combiner (line 124) | def check_initial_combiner(label):
function check_hyphen_ok (line 131) | def check_hyphen_ok(label):
function check_nfc (line 140) | def check_nfc(label):
function valid_contextj (line 146) | def valid_contextj(label, pos):
function valid_contexto (line 190) | def valid_contexto(label, pos, exception=
Condensed preview — 471 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (5,792K chars).
[
{
"path": ".idea/encodings.xml",
"chars": 135,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"Encoding\" addBOMForNewFiles=\"with NO BOM"
},
{
"path": ".idea/misc.xml",
"chars": 310,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"JavaScriptSettings\">\n <option name=\"l"
},
{
"path": ".idea/modules.xml",
"chars": 282,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"ProjectModuleManager\">\n <modules>\n "
},
{
"path": ".idea/spot-trend-grid.iml",
"chars": 398,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<module type=\"PYTHON_MODULE\" version=\"4\">\n <component name=\"NewModuleRootManager"
},
{
"path": ".idea/vcs.xml",
"chars": 180,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"VcsDirectoryMappings\">\n <mapping dire"
},
{
"path": ".idea/workspace.xml",
"chars": 22396,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"ChangeListManager\">\n <list default=\"t"
},
{
"path": "LICENSE",
"chars": 1063,
"preview": "MIT License\n\nCopyright (c) 2020 幸福村的码农\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof "
},
{
"path": "README.en.md",
"chars": 824,
"preview": "# 币安量化-网格交易\n\n#### Description\n币安交易所-量化交易-网格策略实践\n\n#### Software Architecture\nSoftware architecture description\n\n#### Inst"
},
{
"path": "README.md",
"chars": 4107,
"preview": "\n如果您想和我一样通过币圈赚到第一桶金?\n \n那么你需要 时间+充足的精力+一点点💰\n \n准备好了吗? 那就进入下方的表格吧(开始你的区块链任务的之旅)\nhttps://docs.google.com/spreadsheets/d/1szV"
},
{
"path": "__init__.py",
"chars": 0,
"preview": ""
},
{
"path": "app/BinanceAPI.py",
"chars": 7083,
"preview": "# -*- coding: utf-8 -*\nimport requests, time, hmac, hashlib,json,os\nfrom app.authorization import dingding_token, recv_w"
},
{
"path": "app/__init__.py",
"chars": 0,
"preview": ""
},
{
"path": "app/authorization.py",
"chars": 136,
"preview": "# Get an Key and Secret\n# https://www.binance.com/restapipub.html\n\napi_key = ''\napi_secret = ''\nrecv_window = 5000\n\nding"
},
{
"path": "app/dingding.py",
"chars": 4667,
"preview": "import requests,json\n\n# windows\nfrom app.authorization import dingding_token, recv_window,api_secret,api_key\nfrom app.Bi"
},
{
"path": "data/__init__.py",
"chars": 0,
"preview": ""
},
{
"path": "data/calcIndex.py",
"chars": 4590,
"preview": "from app.BinanceAPI import BinanceAPI\nfrom app.authorization import api_key,api_secret\nfrom data.runBetData import RunBe"
},
{
"path": "data/data.json",
"chars": 1144,
"preview": "{\n \"coinList\": [\n \"ETHUSDT\",\n \"BTCUSDT\",\n \"BNBUSDT\"\n ],\n \"ETHUSDT\": {\n \"runBet\": {\n"
},
{
"path": "data/runBetData.py",
"chars": 5035,
"preview": "# -*- coding: utf-8 -*-\nfrom app.BinanceAPI import BinanceAPI\nfrom app.authorization import api_key,api_secret\nimport os"
},
{
"path": "dev-ReadMe.md",
"chars": 1248,
"preview": "### 项目介绍\n> 背景:在量化运行的过程中,每当价格回落到满足买入价格时,🤖️ 会主动下一个买入订单。如果一直📉 那么就一直买一直买,直到账户没有💰 或 设置了停止补仓的策略。\n> 那么在这个价格下跌过程中,为什么不去利用下这个下跌的过"
},
{
"path": "run.py",
"chars": 3571,
"preview": "# -*- coding: utf-8 -*-\nfrom app.BinanceAPI import BinanceAPI\nfrom app.authorization import api_key,api_secret\nfrom data"
},
{
"path": "venv/bin/Activate.ps1",
"chars": 8832,
"preview": "<#\r\n.Synopsis\r\nActivate a Python virtual environment for the current PowerShell session.\r\n\r\n.Description\r\nPushes the pyt"
},
{
"path": "venv/bin/activate",
"chars": 2251,
"preview": "# This file must be used with \"source bin/activate\" *from bash*\n# you cannot run it directly\n\ndeactivate () {\n # rese"
},
{
"path": "venv/bin/activate.csh",
"chars": 1303,
"preview": "# This file must be used with \"source bin/activate.csh\" *from csh*.\n# You cannot run it directly.\n# Created by Davide Di"
},
{
"path": "venv/bin/activate.fish",
"chars": 2455,
"preview": "# This file must be used with \". bin/activate.fish\" *from fish* (http://fishshell.org)\n# you cannot run it directly\n\nfun"
},
{
"path": "venv/bin/chardetect",
"chars": 291,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n\n# -*- coding: utf-8 -*-\nimport re\n"
},
{
"path": "venv/bin/easy_install",
"chars": 470,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n# EASY-INSTALL-ENTRY-SCRIPT: 'setup"
},
{
"path": "venv/bin/easy_install-3.8",
"chars": 478,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n# EASY-INSTALL-ENTRY-SCRIPT: 'setup"
},
{
"path": "venv/bin/pip",
"chars": 431,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n# EASY-INSTALL-ENTRY-SCRIPT: 'pip=="
},
{
"path": "venv/bin/pip3",
"chars": 433,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n# EASY-INSTALL-ENTRY-SCRIPT: 'pip=="
},
{
"path": "venv/bin/pip3.8",
"chars": 437,
"preview": "#!/Users/xingfucundeerwa/Desktop/github/binance/binance-quantization/venv/bin/python\n# EASY-INSTALL-ENTRY-SCRIPT: 'pip=="
},
{
"path": "venv/lib/python3.8/site-packages/certifi/__init__.py",
"chars": 62,
"preview": "from .core import contents, where\n\n__version__ = \"2020.11.08\"\n"
},
{
"path": "venv/lib/python3.8/site-packages/certifi/__main__.py",
"chars": 243,
"preview": "import argparse\n\nfrom certifi import contents, where\n\nparser = argparse.ArgumentParser()\nparser.add_argument(\"-c\", \"--co"
},
{
"path": "venv/lib/python3.8/site-packages/certifi/cacert.pem",
"chars": 281608,
"preview": "\n# Issuer: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA\n# Subject: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Ro"
},
{
"path": "venv/lib/python3.8/site-packages/certifi/core.py",
"chars": 2303,
"preview": "# -*- coding: utf-8 -*-\n\n\"\"\"\ncertifi.py\n~~~~~~~~~~\n\nThis module returns the installation location of cacert.pem or its c"
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/INSTALLER",
"chars": 4,
"preview": "pip\n"
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/LICENSE",
"chars": 1048,
"preview": "This packge contains a modified version of ca-bundle.crt:\n\nca-bundle.crt -- Bundle of CA Root Certificates\n\nCertificate "
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/METADATA",
"chars": 2994,
"preview": "Metadata-Version: 2.1\nName: certifi\nVersion: 2020.11.8\nSummary: Python package for providing Mozilla's CA Bundle.\nHome-p"
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/RECORD",
"chars": 942,
"preview": "certifi/__init__.py,sha256=TocBfHrqAkQK91W5jNYhRH8KKizxkkXZBk68DTHj0xo,62\r\ncertifi/__main__.py,sha256=xBBoj905TUWBLRGANO"
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/WHEEL",
"chars": 110,
"preview": "Wheel-Version: 1.0\nGenerator: bdist_wheel (0.35.1)\nRoot-Is-Purelib: true\nTag: py2-none-any\nTag: py3-none-any\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/certifi-2020.11.8.dist-info/top_level.txt",
"chars": 8,
"preview": "certifi\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/__init__.py",
"chars": 1559,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# This library is free software; you can redistrib"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/big5freq.py",
"chars": 31254,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/big5prober.py",
"chars": 1757,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/chardistribution.py",
"chars": 9411,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/charsetgroupprober.py",
"chars": 3787,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/charsetprober.py",
"chars": 5110,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/cli/__init__.py",
"chars": 1,
"preview": "\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/cli/chardetect.py",
"chars": 2738,
"preview": "#!/usr/bin/env python\n\"\"\"\nScript which takes one or more file paths and reports on their detected\nencodings\n\nExample::\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/codingstatemachine.py",
"chars": 3590,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/compat.py",
"chars": 1134,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# Contributor(s):\n# Dan Blanchard\n# Ian Cordas"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/cp949prober.py",
"chars": 1855,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/enums.py",
"chars": 1661,
"preview": "\"\"\"\nAll of the Enums that are used throughout the chardet package.\n\n:author: Dan Blanchard (dan.blanchard@gmail.com)\n\"\"\""
},
{
"path": "venv/lib/python3.8/site-packages/chardet/escprober.py",
"chars": 3950,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/escsm.py",
"chars": 10510,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/eucjpprober.py",
"chars": 3749,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/euckrfreq.py",
"chars": 13546,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/euckrprober.py",
"chars": 1748,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/euctwfreq.py",
"chars": 31621,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/euctwprober.py",
"chars": 1747,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/gb2312freq.py",
"chars": 20715,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/gb2312prober.py",
"chars": 1754,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/hebrewprober.py",
"chars": 13838,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/jisfreq.py",
"chars": 25777,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/jpcntx.py",
"chars": 19643,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langbulgarianmodel.py",
"chars": 12839,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langcyrillicmodel.py",
"chars": 17948,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langgreekmodel.py",
"chars": 12688,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langhebrewmodel.py",
"chars": 11345,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langhungarianmodel.py",
"chars": 12592,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langthaimodel.py",
"chars": 11290,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Communicator client"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/langturkishmodel.py",
"chars": 11099,
"preview": "# -*- coding: utf-8 -*-\n######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Moz"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/latin1prober.py",
"chars": 5370,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/mbcharsetprober.py",
"chars": 3413,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/mbcsgroupprober.py",
"chars": 2012,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/mbcssm.py",
"chars": 25481,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/sbcharsetprober.py",
"chars": 5657,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/sbcsgroupprober.py",
"chars": 3546,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/sjisprober.py",
"chars": 3774,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/universaldetector.py",
"chars": 12485,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is Mozilla Universal charset d"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/utf8prober.py",
"chars": 2766,
"preview": "######################## BEGIN LICENSE BLOCK ########################\n# The Original Code is mozilla.org code.\n#\n# The I"
},
{
"path": "venv/lib/python3.8/site-packages/chardet/version.py",
"chars": 242,
"preview": "\"\"\"\nThis module exists only to simplify retrieving the version number of chardet\nfrom within setup.py and from chardet s"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/DESCRIPTION.rst",
"chars": 2174,
"preview": "Chardet: The Universal Character Encoding Detector\n--------------------------------------------------\n\n.. image:: https:"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/INSTALLER",
"chars": 4,
"preview": "pip\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/METADATA",
"chars": 3239,
"preview": "Metadata-Version: 2.0\nName: chardet\nVersion: 3.0.4\nSummary: Universal encoding detector for Python 2 and 3\nHome-page: ht"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/RECORD",
"chars": 6167,
"preview": "chardet/__init__.py,sha256=YsP5wQlsHJ2auF1RZJfypiSrCA7_bQiRm3ES_NI76-Y,1559\r\nchardet/big5freq.py,sha256=D_zK5GyzoVsRes0H"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/WHEEL",
"chars": 110,
"preview": "Wheel-Version: 1.0\nGenerator: bdist_wheel (0.29.0)\nRoot-Is-Purelib: true\nTag: py2-none-any\nTag: py3-none-any\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/entry_points.txt",
"chars": 60,
"preview": "[console_scripts]\nchardetect = chardet.cli.chardetect:main\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/metadata.json",
"chars": 1375,
"preview": "{\"classifiers\": [\"Development Status :: 4 - Beta\", \"Intended Audience :: Developers\", \"License :: OSI Approved :: GNU Li"
},
{
"path": "venv/lib/python3.8/site-packages/chardet-3.0.4.dist-info/top_level.txt",
"chars": 8,
"preview": "chardet\n"
},
{
"path": "venv/lib/python3.8/site-packages/easy-install.pth",
"chars": 53,
"preview": "./setuptools-39.1.0-py3.8.egg\n./pip-10.0.1-py3.8.egg\n"
},
{
"path": "venv/lib/python3.8/site-packages/idna/__init__.py",
"chars": 58,
"preview": "from .package_data import __version__\nfrom .core import *\n"
},
{
"path": "venv/lib/python3.8/site-packages/idna/codec.py",
"chars": 3299,
"preview": "from .core import encode, decode, alabel, ulabel, IDNAError\nimport codecs\nimport re\n\n_unicode_dots_re = re.compile(u'[\\u"
},
{
"path": "venv/lib/python3.8/site-packages/idna/compat.py",
"chars": 232,
"preview": "from .core import *\nfrom .codec import *\n\ndef ToASCII(label):\n return encode(label)\n\ndef ToUnicode(label):\n return"
},
{
"path": "venv/lib/python3.8/site-packages/idna/core.py",
"chars": 11951,
"preview": "from . import idnadata\nimport bisect\nimport unicodedata\nimport re\nimport sys\nfrom .intranges import intranges_contain\n\n_"
},
{
"path": "venv/lib/python3.8/site-packages/idna/idnadata.py",
"chars": 42350,
"preview": "# This file is automatically generated by tools/idna-data\n\n__version__ = \"13.0.0\"\nscripts = {\n 'Greek': (\n 0x3"
},
{
"path": "venv/lib/python3.8/site-packages/idna/intranges.py",
"chars": 1749,
"preview": "\"\"\"\nGiven a list of integers, made up of (hopefully) a small number of long runs\nof consecutive integers, compute a repr"
},
{
"path": "venv/lib/python3.8/site-packages/idna/package_data.py",
"chars": 22,
"preview": "__version__ = '2.10'\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/idna/uts46data.py",
"chars": 193057,
"preview": "# This file is automatically generated by tools/idna-data\n# vim: set fileencoding=utf-8 :\n\n\"\"\"IDNA Mapping Table from UT"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/INSTALLER",
"chars": 4,
"preview": "pip\n"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/LICENSE.rst",
"chars": 1565,
"preview": "License\n-------\n\nLicense: bsd-3-clause\n\nCopyright (c) 2013-2020, Kim Davies. All rights reserved.\n\nRedistribution and us"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/METADATA",
"chars": 8951,
"preview": "Metadata-Version: 2.1\nName: idna\nVersion: 2.10\nSummary: Internationalized Domain Names in Applications (IDNA)\nHome-page:"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/RECORD",
"chars": 1396,
"preview": "idna/__init__.py,sha256=9Nt7xpyet3DmOrPUGooDdAwmHZZu1qUAy2EaJ93kGiQ,58\r\nidna/codec.py,sha256=lvYb7yu7PhAqFaAIAdWcwgaWI2U"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/WHEEL",
"chars": 110,
"preview": "Wheel-Version: 1.0\nGenerator: bdist_wheel (0.33.6)\nRoot-Is-Purelib: true\nTag: py2-none-any\nTag: py3-none-any\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/idna-2.10.dist-info/top_level.txt",
"chars": 5,
"preview": "idna\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/PKG-INFO",
"chars": 2903,
"preview": "Metadata-Version: 2.1\nName: pip\nVersion: 10.0.1\nSummary: The PyPA recommended tool for installing Python packages.\nHome-"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/SOURCES.txt",
"chars": 12502,
"preview": "AUTHORS.txt\nLICENSE.txt\nMANIFEST.in\nNEWS.rst\nREADME.rst\npyproject.toml\nsetup.cfg\nsetup.py\ndocs/Makefile\ndocs/__init__.py"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/dependency_links.txt",
"chars": 1,
"preview": "\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/entry_points.txt",
"chars": 98,
"preview": "[console_scripts]\npip = pip._internal:main\npip3 = pip._internal:main\npip3.8 = pip._internal:main\n\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/not-zip-safe",
"chars": 2,
"preview": "\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/requires.txt",
"chars": 74,
"preview": "\n[testing]\npytest\nmock\npretend\nscripttest>=1.3\nvirtualenv>=1.10\nfreezegun\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/EGG-INFO/top_level.txt",
"chars": 4,
"preview": "pip\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/__init__.py",
"chars": 24,
"preview": "__version__ = \"10.0.1\"\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/__main__.py",
"chars": 629,
"preview": "from __future__ import absolute_import\r\n\r\nimport os\r\nimport sys\r\n\r\n# If we are running from a wheel, add the wheel to sy"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/__init__.py",
"chars": 8675,
"preview": "#!/usr/bin/env python\r\nfrom __future__ import absolute_import\r\n\r\nimport locale\r\nimport logging\r\nimport os\r\nimport optpar"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/basecommand.py",
"chars": 14014,
"preview": "\"\"\"Base Command class, and related routines\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport logging\r\nimport logging"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/baseparser.py",
"chars": 8764,
"preview": "\"\"\"Base option parser setup\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport logging\r\nimport optparse\r\nimport sys\r\ni"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/build_env.py",
"chars": 2773,
"preview": "\"\"\"Build Environment used for isolation during sdist building\r\n\"\"\"\r\n\r\nimport os\r\nfrom distutils.sysconfig import get_pyt"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/cache.py",
"chars": 7023,
"preview": "\"\"\"Cache Management\r\n\"\"\"\r\n\r\nimport errno\r\nimport hashlib\r\nimport logging\r\nimport os\r\n\r\nfrom pip._vendor.packaging.utils "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/cmdoptions.py",
"chars": 16679,
"preview": "\"\"\"\r\nshared options and groups\r\n\r\nThe principle here is to define options once, but *not* instantiate them\r\nglobally. On"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/__init__.py",
"chars": 2297,
"preview": "\"\"\"\r\nPackage containing all pip commands\r\n\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nfrom pip._internal.commands.com"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/check.py",
"chars": 1500,
"preview": "import logging\r\n\r\nfrom pip._internal.basecommand import Command\r\nfrom pip._internal.operations.check import (\r\n check"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/completion.py",
"chars": 3018,
"preview": "from __future__ import absolute_import\r\n\r\nimport sys\r\nimport textwrap\r\n\r\nfrom pip._internal.basecommand import Command\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/configuration.py",
"chars": 7343,
"preview": "import logging\r\nimport os\r\nimport subprocess\r\n\r\nfrom pip._internal.basecommand import Command\r\nfrom pip._internal.config"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/download.py",
"chars": 9092,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\n\r\nfrom pip._internal import cmdoptions\r\nfrom pip._i"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/freeze.py",
"chars": 3320,
"preview": "from __future__ import absolute_import\r\n\r\nimport sys\r\n\r\nfrom pip._internal import index\r\nfrom pip._internal.basecommand "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/hash.py",
"chars": 1729,
"preview": "from __future__ import absolute_import\r\n\r\nimport hashlib\r\nimport logging\r\nimport sys\r\n\r\nfrom pip._internal.basecommand i"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/help.py",
"chars": 1079,
"preview": "from __future__ import absolute_import\r\n\r\nfrom pip._internal.basecommand import SUCCESS, Command\r\nfrom pip._internal.exc"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/install.py",
"chars": 20270,
"preview": "from __future__ import absolute_import\r\n\r\nimport errno\r\nimport logging\r\nimport operator\r\nimport os\r\nimport shutil\r\nfrom "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/list.py",
"chars": 11957,
"preview": "from __future__ import absolute_import\r\n\r\nimport json\r\nimport logging\r\nimport warnings\r\n\r\nfrom pip._vendor import six\r\nf"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/search.py",
"chars": 4842,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport sys\r\nimport textwrap\r\nfrom collections import OrderedDi"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/show.py",
"chars": 6378,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\nfrom email.parser import FeedParser # type: ignore"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/uninstall.py",
"chars": 2786,
"preview": "from __future__ import absolute_import\r\n\r\nfrom pip._vendor.packaging.utils import canonicalize_name\r\n\r\nfrom pip._interna"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/commands/wheel.py",
"chars": 6986,
"preview": "# -*- coding: utf-8 -*-\r\nfrom __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\n\r\nfrom pip._internal impor"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/compat.py",
"chars": 7912,
"preview": "\"\"\"Stuff that differs in different Python versions and platform\r\ndistributions.\"\"\"\r\nfrom __future__ import absolute_impo"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/configuration.py",
"chars": 13330,
"preview": "\"\"\"Configuration management setup\r\n\r\nSome terminology:\r\n- name\r\n As written in config files.\r\n- value\r\n Value associat"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/download.py",
"chars": 34257,
"preview": "from __future__ import absolute_import\r\n\r\nimport cgi\r\nimport email.utils\r\nimport getpass\r\nimport json\r\nimport logging\r\ni"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/exceptions.py",
"chars": 8470,
"preview": "\"\"\"Exceptions used throughout package\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nfrom itertools import chain, groupby"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/index.py",
"chars": 41718,
"preview": "\"\"\"Routines related to PyPI, indexes\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport cgi\r\nimport itertools\r\nimport "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/locations.py",
"chars": 6504,
"preview": "\"\"\"Locations where we look for configs, install stuff, etc\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport os\r\nimpo"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/models/__init__.py",
"chars": 85,
"preview": "from pip._internal.models.index import Index, PyPI\r\n\r\n\r\n__all__ = [\"Index\", \"PyPI\"]\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/models/index.py",
"chars": 433,
"preview": "from pip._vendor.six.moves.urllib import parse as urllib_parse\r\n\r\n\r\nclass Index(object):\r\n def __init__(self, url):\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/__init__.py",
"chars": 0,
"preview": ""
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/check.py",
"chars": 3776,
"preview": "\"\"\"Validation of dependencies of packages\r\n\"\"\"\r\n\r\nfrom collections import namedtuple\r\n\r\nfrom pip._vendor.packaging.utils"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/freeze.py",
"chars": 10277,
"preview": "from __future__ import absolute_import\r\n\r\nimport collections\r\nimport logging\r\nimport os\r\nimport re\r\nimport warnings\r\n\r\nf"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/operations/prepare.py",
"chars": 15496,
"preview": "\"\"\"Prepares a distribution for installation\r\n\"\"\"\r\n\r\nimport itertools\r\nimport logging\r\nimport os\r\nimport sys\r\nfrom copy i"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/pep425tags.py",
"chars": 11115,
"preview": "\"\"\"Generate and work with PEP 425 Compatibility Tags.\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport distutils.uti"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/__init__.py",
"chars": 2152,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\n\r\nfrom .req_install import InstallRequirement\r\nfrom .req_set i"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_file.py",
"chars": 12248,
"preview": "\"\"\"\r\nRequirements file parsing\r\n\"\"\"\r\n\r\nfrom __future__ import absolute_import\r\n\r\nimport optparse\r\nimport os\r\nimport re\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_install.py",
"chars": 43930,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\nimport re\r\nimport shutil\r\nimport sys\r\nimport syscon"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_set.py",
"chars": 7268,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nfrom collections import OrderedDict\r\n\r\nfrom pip._internal.exce"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/req/req_uninstall.py",
"chars": 17002,
"preview": "from __future__ import absolute_import\r\n\r\nimport csv\r\nimport functools\r\nimport logging\r\nimport os\r\nimport sys\r\nimport sy"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/resolve.py",
"chars": 13939,
"preview": "\"\"\"Dependency Resolution\r\n\r\nThe dependency resolution in pip is performed as follows:\r\n\r\nfor top-level requirements:\r\n "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/status_codes.py",
"chars": 164,
"preview": "from __future__ import absolute_import\r\n\r\nSUCCESS = 0\r\nERROR = 1\r\nUNKNOWN_ERROR = 2\r\nVIRTUALENV_NOT_FOUND = 3\r\nPREVIOUS_"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/__init__.py",
"chars": 0,
"preview": ""
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/appdirs.py",
"chars": 9372,
"preview": "\"\"\"\r\nThis code was taken from https://github.com/ActiveState/appdirs and modified\r\nto suit our purposes.\r\n\"\"\"\r\nfrom __fu"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/deprecation.py",
"chars": 2374,
"preview": "\"\"\"\r\nA module that implements tooling to enable easy warnings about deprecations.\r\n\"\"\"\r\nfrom __future__ import absolute_"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/encoding.py",
"chars": 1058,
"preview": "import codecs\r\nimport locale\r\nimport re\r\nimport sys\r\n\r\nBOMS = [\r\n (codecs.BOM_UTF8, 'utf8'),\r\n (codecs.BOM_UTF16, "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/filesystem.py",
"chars": 937,
"preview": "import os\r\nimport os.path\r\n\r\nfrom pip._internal.compat import get_path_uid\r\n\r\n\r\ndef check_path_owner(path):\r\n # If we"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/glibc.py",
"chars": 3088,
"preview": "from __future__ import absolute_import\r\n\r\nimport ctypes\r\nimport re\r\nimport warnings\r\n\r\n\r\ndef glibc_version_string():\r\n "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/hashes.py",
"chars": 2994,
"preview": "from __future__ import absolute_import\r\n\r\nimport hashlib\r\n\r\nfrom pip._vendor.six import iteritems, iterkeys, itervalues\r"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/logging.py",
"chars": 3586,
"preview": "from __future__ import absolute_import\r\n\r\nimport contextlib\r\nimport logging\r\nimport logging.handlers\r\nimport os\r\n\r\nfrom "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/misc.py",
"chars": 28053,
"preview": "from __future__ import absolute_import\r\n\r\nimport contextlib\r\nimport errno\r\nimport io\r\nimport locale\r\n# we have a submodu"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/outdated.py",
"chars": 5951,
"preview": "from __future__ import absolute_import\r\n\r\nimport datetime\r\nimport json\r\nimport logging\r\nimport os.path\r\nimport sys\r\n\r\nfr"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/packaging.py",
"chars": 2347,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport sys\r\nfrom email.parser import FeedParser # type: ignor"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/setuptools_build.py",
"chars": 286,
"preview": "# Shim to wrap setup.py invocation with setuptools\r\nSETUPTOOLS_SHIM = (\r\n \"import setuptools, tokenize;__file__=%r;\"\r"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/temp_dir.py",
"chars": 2697,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os.path\r\nimport tempfile\r\n\r\nfrom pip._internal.utils.mi"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/typing.py",
"chars": 1144,
"preview": "\"\"\"For neatly implementing static typing in pip.\r\n\r\n`mypy` - the static type analysis tool we use - uses the `typing` mo"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/utils/ui.py",
"chars": 14058,
"preview": "from __future__ import absolute_import, division\r\n\r\nimport contextlib\r\nimport itertools\r\nimport logging\r\nimport sys\r\nimp"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/__init__.py",
"chars": 15755,
"preview": "\"\"\"Handles all VCS (version control) support\"\"\"\r\nfrom __future__ import absolute_import\r\n\r\nimport copy\r\nimport errno\r\nim"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/bazaar.py",
"chars": 3848,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\n\r\nfrom pip._vendor.six.moves.urllib import parse as"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/git.py",
"chars": 11743,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os.path\r\nimport re\r\n\r\nfrom pip._vendor.packaging.versio"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/mercurial.py",
"chars": 3708,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\n\r\nfrom pip._vendor.six.moves import configparser\r\n\r"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/vcs/subversion.py",
"chars": 9826,
"preview": "from __future__ import absolute_import\r\n\r\nimport logging\r\nimport os\r\nimport re\r\n\r\nfrom pip._vendor.six.moves.urllib impo"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_internal/wheel.py",
"chars": 31967,
"preview": "\"\"\"\r\nSupport for installing and building the \"wheel\" binary package format.\r\n\"\"\"\r\nfrom __future__ import absolute_import"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/__init__.py",
"chars": 4841,
"preview": "\"\"\"\r\npip._vendor is for vendoring dependencies of pip to prevent needing pip to\r\ndepend on something external.\r\n\r\nFiles "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/appdirs.py",
"chars": 25150,
"preview": "#!/usr/bin/env python\r\n# -*- coding: utf-8 -*-\r\n# Copyright (c) 2005-2010 ActiveState Software Inc.\r\n# Copyright (c) 201"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/__init__.py",
"chars": 313,
"preview": "\"\"\"CacheControl import Interface.\r\n\r\nMake it easy to import from cachecontrol without long namespaces.\r\n\"\"\"\r\n__author__ "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/_cmd.py",
"chars": 1380,
"preview": "import logging\r\n\r\nfrom pip._vendor import requests\r\n\r\nfrom pip._vendor.cachecontrol.adapter import CacheControlAdapter\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/adapter.py",
"chars": 5156,
"preview": "import types\r\nimport functools\r\nimport zlib\r\n\r\nfrom pip._vendor.requests.adapters import HTTPAdapter\r\n\r\nfrom .controller"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/cache.py",
"chars": 829,
"preview": "\"\"\"\r\nThe cache object API for implementing caches. The default is a thread\r\nsafe in-memory dictionary.\r\n\"\"\"\r\nfrom thread"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/caches/__init__.py",
"chars": 88,
"preview": "from .file_cache import FileCache # noqa\r\nfrom .redis_cache import RedisCache # noqa\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/caches/file_cache.py",
"chars": 4202,
"preview": "import hashlib\r\nimport os\r\nfrom textwrap import dedent\r\n\r\nfrom ..cache import BaseCache\r\nfrom ..controller import CacheC"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/caches/redis_cache.py",
"chars": 1145,
"preview": "from __future__ import division\r\n\r\nfrom datetime import datetime\r\nfrom pip._vendor.cachecontrol.cache import BaseCache\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/compat.py",
"chars": 724,
"preview": "try:\r\n from urllib.parse import urljoin\r\nexcept ImportError:\r\n from urlparse import urljoin\r\n\r\n\r\ntry:\r\n import "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/controller.py",
"chars": 14232,
"preview": "\"\"\"\r\nThe httplib2 algorithms ported for use with requests.\r\n\"\"\"\r\nimport logging\r\nimport re\r\nimport calendar\r\nimport time"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/filewrapper.py",
"chars": 2609,
"preview": "from io import BytesIO\r\n\r\n\r\nclass CallbackFileWrapper(object):\r\n \"\"\"\r\n Small wrapper around a fp object which will"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/heuristics.py",
"chars": 4282,
"preview": "import calendar\r\nimport time\r\n\r\nfrom email.utils import formatdate, parsedate, parsedate_tz\r\n\r\nfrom datetime import date"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/serialize.py",
"chars": 7249,
"preview": "import base64\r\nimport io\r\nimport json\r\nimport zlib\r\n\r\nfrom pip._vendor import msgpack\r\nfrom pip._vendor.requests.structu"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/cachecontrol/wrapper.py",
"chars": 781,
"preview": "from .adapter import CacheControlAdapter\r\nfrom .cache import DictCache\r\n\r\n\r\ndef CacheControl(sess,\r\n cac"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/certifi/__init__.py",
"chars": 66,
"preview": "from .core import where, old_where\r\n\r\n__version__ = \"2018.01.18\"\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/certifi/__main__.py",
"chars": 43,
"preview": "from certifi import where\r\nprint(where())\r\n"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/certifi/cacert.pem",
"chars": 271088,
"preview": "\n# Issuer: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA\n# Subject: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Ro"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/certifi/core.py",
"chars": 873,
"preview": "#!/usr/bin/env python\r\n# -*- coding: utf-8 -*-\r\n\r\n\"\"\"\r\ncertifi.py\r\n~~~~~~~~~~\r\n\r\nThis module returns the installation lo"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/__init__.py",
"chars": 1598,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# This library is free software; you can redistri"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/big5freq.py",
"chars": 31640,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# The Original Code is Mozilla Communicator clien"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/big5prober.py",
"chars": 1804,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# The Original Code is Mozilla Communicator clien"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/chardistribution.py",
"chars": 9644,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# The Original Code is Mozilla Communicator clien"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/charsetgroupprober.py",
"chars": 3893,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# The Original Code is Mozilla Communicator clien"
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/charsetprober.py",
"chars": 5255,
"preview": "######################## BEGIN LICENSE BLOCK ########################\r\n# The Original Code is Mozilla Universal charset "
},
{
"path": "venv/lib/python3.8/site-packages/pip-10.0.1-py3.8.egg/pip/_vendor/chardet/cli/__init__.py",
"chars": 2,
"preview": "\r\n"
}
]
// ... and 271 more files (download for full content)
About this extraction
This page contains the full source code of the hengxuZ/spot-trend-grid GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 471 files (5.2 MB), approximately 1.4M tokens, and a symbol index with 5647 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.