From cb5c8855ed670b99ab78b0a9549aaf2d219356ad Mon Sep 17 00:00:00 2001 From: byt3bl33d3r Date: Sun, 15 Nov 2020 16:42:28 -0700 Subject: [PATCH] =?UTF-8?q?Version=205.1.3=20=F0=9F=94=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replaced Gevent with AsyncIO - Shares are now logged in the database and can be queried - You can now press enter while a scan is being performed and CME will give you a completion percentage and the number of hosts remaining to scan --- Makefile | 3 +- cme/__init__.py | 3 - cme/cli.py | 8 +- cme/connection.py | 4 +- cme/crackmapexec.py | 115 ++++- cme/modules/get_keystrokes.py | 2 +- cme/protocols/smb.py | 10 +- cme/protocols/smb/atexec.py | 2 +- cme/protocols/smb/database.py | 96 +++- cme/protocols/smb/db_navigator.py | 116 ++++- cme/protocols/smb/mmcexec.py | 2 +- cme/protocols/smb/smbexec.py | 2 +- cme/protocols/smb/wmiexec.py | 2 +- cme/servers/http.py | 2 +- poetry.lock | 760 +++++++++++------------------- pyproject.toml | 12 +- requirements-dev.txt | 145 +++--- requirements.txt | 97 ++-- 18 files changed, 708 insertions(+), 673 deletions(-) diff --git a/Makefile b/Makefile index 6157398b..62c1fb16 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,6 @@ clean: rm -f -r build/ rm -f -r bin/ rm -f -r dist/ - rm -f -r *.egg-info find . -name '*.pyc' -exec rm -f {} + find . -name '*.pyo' -exec rm -f {} + find . -name '*~' -exec rm -f {} + @@ -16,6 +15,6 @@ clean: tests: flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --exclude cme/thirdparty/*,cme/data/* -reqs: +requirements: poetry export --without-hashes -f requirements.txt -o requirements.txt poetry export --without-hashes --dev -f requirements.txt -o requirements-dev.txt \ No newline at end of file diff --git a/cme/__init__.py b/cme/__init__.py index 2c2000b1..21f45d99 100755 --- a/cme/__init__.py +++ b/cme/__init__.py @@ -1,10 +1,7 @@ -from gevent import monkey import sys import os import cme -monkey.patch_all() - thirdparty_modules = os.path.join(os.path.dirname(cme.__file__), 'thirdparty') for module in os.listdir(thirdparty_modules): diff --git a/cme/cli.py b/cme/cli.py index d3897cc3..ce2b1da1 100755 --- a/cme/cli.py +++ b/cme/cli.py @@ -6,8 +6,8 @@ from cme.helpers.logger import highlight def gen_cli_args(): - VERSION = '5.1.1dev' - CODENAME = '3TH@n' + VERSION = '5.1.3dev' + CODENAME = 'U fancy huh?' p_loader = protocol_loader() protocols = p_loader.get_protocols() @@ -24,7 +24,7 @@ def gen_cli_args(): Forged by @byt3bl33d3r using the powah of dank memes {}: {} - {}: {} + {}: {} """.format(highlight('Version', 'red'), highlight(VERSION), highlight('Codename', 'red'), @@ -32,7 +32,7 @@ def gen_cli_args(): formatter_class=RawTextHelpFormatter, #version='{} - {}'.format(VERSION, CODENAME), - epilog="Ya feelin' a bit buggy all of a sudden?") + epilog="A la mierda el mundo soy una erección ambulante") parser.add_argument("-t", type=int, dest="threads", default=100, help="set how many concurrent threads to use (default: 100)") parser.add_argument("--timeout", default=None, type=int, help='max timeout in seconds of each thread (default: None)') diff --git a/cme/connection.py b/cme/connection.py index eba098bb..a3d8c777 100755 --- a/cme/connection.py +++ b/cme/connection.py @@ -1,8 +1,8 @@ import logging from os.path import isfile # from traceback import format_exc -from gevent.lock import BoundedSemaphore -from gevent.socket import gethostbyname +from threading import BoundedSemaphore +from socket import gethostbyname from functools import wraps from cme.logger import CMEAdapter from cme.context import Context diff --git a/cme/crackmapexec.py b/cme/crackmapexec.py index 491af9af..ae751bbd 100755 --- a/cme/crackmapexec.py +++ b/cme/crackmapexec.py @@ -1,7 +1,5 @@ #!/usr/bin/env python3 -from gevent.pool import Pool -from gevent import sleep from cme.logger import setup_logger, setup_debug_logger, CMEAdapter from cme.helpers.logger import highlight from cme.helpers.misc import identify_target_file @@ -14,7 +12,13 @@ from cme.loaders.module_loader import module_loader from cme.servers.http import CMEServer from cme.first_run import first_run_setup from cme.context import Context +from concurrent.futures import ThreadPoolExecutor from pprint import pformat +from decimal import Decimal +import time +import asyncio +import aioconsole +import functools import configparser import cme.helpers.powershell as powershell import cme @@ -26,11 +30,85 @@ import os import sys import logging +setup_logger() +logger = CMEAdapter() + +async def monitor_threadpool(pool, targets): + logging.debug('Started thread poller') + + while True: + try: + text = await aioconsole.ainput("") + if text == "": + pool_size = pool._work_queue.qsize() + finished_threads = len(targets) - pool_size + percentage = Decimal(finished_threads) / Decimal(len(targets)) * Decimal(100) + logger.info(f"completed: {percentage:.2f}% ({finished_threads}/{len(targets)})") + except asyncio.CancelledError: + logging.debug("Stopped thread poller") + break + +async def run_protocol(loop, protocol_obj, args, db, target, jitter): + try: + if jitter: + value = random.choice(range(jitter[0], jitter[1])) + logging.debug(f"Doin' the jitterbug for {value} second(s)") + await asyncio.sleep(value) + + thread = loop.run_in_executor( + None, + functools.partial( + protocol_obj, + args, + db, + str(target) + ) + ) + + await asyncio.wait_for( + thread, + timeout=args.timeout + ) + + except asyncio.TimeoutError: + logging.debug("Thread exceeded timeout") + except asyncio.CancelledError: + logging.debug("Stopping thread") + thread.cancel() + +async def start_threadpool(protocol_obj, args, db, targets, jitter): + pool = ThreadPoolExecutor(max_workers=args.threads + 1) + loop = asyncio.get_running_loop() + loop.set_default_executor(pool) + + monitor_task = asyncio.create_task( + monitor_threadpool(pool, targets) + ) + + jobs = [ + run_protocol( + loop, + protocol_obj, + args, + db, + target, + jitter + ) + for target in targets + ] + + try: + logging.debug("Running") + await asyncio.gather(*jobs) + except asyncio.CancelledError: + print('\n') + logger.info("Shutting down, please wait...") + logging.debug("Cancelling scan") + finally: + monitor_task.cancel() + pool.shutdown(wait=True) def main(): - - setup_logger() - logger = CMEAdapter() first_run_setup(logger) args = gen_cli_args() @@ -191,27 +269,14 @@ def main(): setattr(protocol_object, 'server', module_server.server) try: - ''' - Open all the greenlet (as supposed to redlet??) threads - Whoever came up with that name has a fetish for traffic lights - ''' - pool = Pool(args.threads) - jobs = [] - for target in targets: - jobs.append(pool.spawn(protocol_object, args, db, str(target))) - - if jitter: - value = random.choice(range(jitter[0], jitter[1])) - logging.debug("Doin' the Jitterbug for {} seconds".format(value)) - sleep(value) - - for job in jobs: - job.join(timeout=args.timeout) + asyncio.run( + start_threadpool(protocol_object, args, db, targets, jitter) + ) except KeyboardInterrupt: - pass - - if module_server: - module_server.shutdown() + logging.debug("Got keyboard interrupt") + finally: + if module_server: + module_server.shutdown() if __name__ == '__main__': main() \ No newline at end of file diff --git a/cme/modules/get_keystrokes.py b/cme/modules/get_keystrokes.py index b5c59000..346a1e3b 100644 --- a/cme/modules/get_keystrokes.py +++ b/cme/modules/get_keystrokes.py @@ -1,7 +1,7 @@ from cme.helpers.powershell import * from cme.helpers.misc import gen_random_string from cme.servers.smb import CMESMBServer -from gevent import sleep +from time import sleep from sys import exit import os diff --git a/cme/protocols/smb.py b/cme/protocols/smb.py index 8d6d75be..8859bd9c 100755 --- a/cme/protocols/smb.py +++ b/cme/protocols/smb.py @@ -526,7 +526,11 @@ class smb(connection): def shares(self): temp_dir = ntpath.normpath("\\" + gen_random_string()) - #hostid,_,_,_,_,_,_ = self.db.get_hosts(filterTerm=self.host)[0] + computer_id = self.db.get_computers(filterTerm=self.host)[0][0] + user_id = self.db.get_user( + self.domain.split('.')[0].upper(), + self.username + )[0][0] permissions = [] try: @@ -553,7 +557,9 @@ class smb(connection): pass permissions.append(share_info) - #self.db.add_share(hostid, share_name, share_remark, read, write) + + if share_name != "IPC$": + self.db.add_share(computer_id, user_id, share_name, share_remark, read, write) self.logger.success('Enumerated shares') self.logger.highlight('{:<15} {:<15} {}'.format('Share', 'Permissions', 'Remark')) diff --git a/cme/protocols/smb/atexec.py b/cme/protocols/smb/atexec.py index 3e134af4..c5df8d0f 100755 --- a/cme/protocols/smb/atexec.py +++ b/cme/protocols/smb/atexec.py @@ -4,7 +4,7 @@ from impacket.dcerpc.v5 import tsch, transport from impacket.dcerpc.v5.dtypes import NULL from impacket.dcerpc.v5.rpcrt import RPC_C_AUTHN_GSS_NEGOTIATE from cme.helpers.misc import gen_random_string -from gevent import sleep +from time import sleep class TSCH_EXEC: def __init__(self, target, share_name, username, password, domain, doKerberos=False, aesKey=None, kdcHost=None, hashes=None): diff --git a/cme/protocols/smb/database.py b/cme/protocols/smb/database.py index b8474e44..0eb99602 100755 --- a/cme/protocols/smb/database.py +++ b/cme/protocols/smb/database.py @@ -59,6 +59,19 @@ class database: FOREIGN KEY(groupid) REFERENCES groups(id) )''') + db_conn.execute('''CREATE TABLE "shares" ( + "id" integer PRIMARY KEY, + "computerid" integer, + "userid" integer, + "name" text, + "remark" text, + "read" boolean, + "write" boolean, + FOREIGN KEY(computerid) REFERENCES computers(id), + FOREIGN KEY(userid) REFERENCES users(id) + UNIQUE(computerid, userid, name) + )''') + #db_conn.execute('''CREATE TABLE "ntds_dumps" ( # "id" integer PRIMARY KEY, # "computerid", integer, @@ -68,21 +81,72 @@ class database: # FOREIGN KEY(computerid) REFERENCES computers(id) # )''') - #db_conn.execute('''CREATE TABLE "shares" ( - # "id" integer PRIMARY KEY, - # "hostid" integer, - # "name" text, - # "remark" text, - # "read" boolean, - # "write" boolean - # )''') + def add_share(self, computerid, userid, name, remark, read, write): + cur = self.conn.cursor() + cur.execute("INSERT OR IGNORE INTO shares (computerid, userid, name, remark, read, write) VALUES (?,?,?,?,?,?)", [computerid, userid, name, remark, read, write]) + cur.close() - #def add_share(self, hostid, name, remark, read, write): - # cur = self.conn.cursor() + def is_share_valid(self, shareID): + """ + Check if this share ID is valid. + """ - # cur.execute("INSERT INTO shares (hostid, name, remark, read, write) VALUES (?,?,?,?,?)", [hostid, name, remark, read, write]) + cur = self.conn.cursor() + cur.execute('SELECT * FROM shares WHERE id=? LIMIT 1', [shareID]) + results = cur.fetchall() + cur.close() - # cur.close() + logging.debug(f"is_share_valid(shareID={shareID}) => {len(results) > 0}") + return len(results) > 0 + + def get_shares(self, filterTerm = None): + cur = self.conn.cursor() + + if self.is_share_valid(filterTerm): + cur.execute("SELECT * FROM shares WHERE id=?", [filterTerm]) + elif filterTerm: + cur.execute("SELECT * FROM shares WHERE LOWER(name) LIKE LOWER(?)", [f"%{filterTerm}%"]) + else: + cur.execute("SELECT * FROM shares") + + results = cur.fetchall() + return results + + def get_shares_by_access(self, permissions, shareID=None): + cur = self.conn.cursor() + permissions = permissions.lower() + + if shareID: + if permissions == "r": + cur.execute("SELECT * FROM shares WHERE id=? AND read=1",[shareID]) + elif permissions == "w": + cur.execute("SELECT * FROM shares WHERE id=? write=1", [shareID]) + elif permissions == "rw": + cur.execute("SELECT * FROM shares WHERE id=? AND read=1 AND write=1", [shareID]) + else: + if permissions == "r": + cur.execute("SELECT * FROM shares WHERE read=1") + elif permissions == "w": + cur.execute("SELECT * FROM shares WHERE write=1") + elif permissions == "rw": + cur.execute("SELECT * FROM shares WHERE read= AND write=1") + + results = cur.fetchall() + return results + + def get_users_with_share_access(self, computerID, share_name, permissions): + cur = self.conn.cursor() + permissions = permissions.lower() + + if permissions == "r": + cur.execute("SELECT userid FROM shares WHERE computerid=(?) AND name=(?) AND read=1", [computerID, share_name]) + elif permissions == "w": + cur.execute("SELECT userid FROM shares WHERE computerid=(?) AND name=(?) AND write=1", [computerID, share_name]) + elif permissions == "rw": + cur.execute("SELECT userid FROM shares WHERE computerid=(?) AND name=(?) AND read=1 AND write=1", [computerID, share_name]) + + results = cur.fetchall() + return results def add_computer(self, ip, hostname, domain, os, dc=None): """ @@ -111,6 +175,7 @@ class database: """ Check if this credential has already been added to the database, if not add it in. """ + domain = domain.split('.')[0].upper() user_rowid = None cur = self.conn.cursor() @@ -370,6 +435,13 @@ class database: cur.close() return results + def get_user(self, domain, username): + cur = self.conn.cursor() + cur.execute("SELECT * FROM users WHERE LOWER(domain)=LOWER(?) AND LOWER(username)=LOWER(?)", [domain, username]) + results = cur.fetchall() + cur.close() + return results + def is_computer_valid(self, hostID): """ Check if this host ID is valid. diff --git a/cme/protocols/smb/db_navigator.py b/cme/protocols/smb/db_navigator.py index 352c7363..67582ec6 100644 --- a/cme/protocols/smb/db_navigator.py +++ b/cme/protocols/smb/db_navigator.py @@ -54,6 +54,120 @@ class navigator(DatabaseNavigator): data.append([hostID, str(len(links)) + ' Cred(s)', ip, hostname, domain, os]) self.print_table(data, title='Hosts') + + def display_shares(self, shares): + + data = [["ShareID", "Name", "Remark", "Read Access", "Write Access"]] + + for share in shares: + + shareID = share[0] + computerid = share[1] + name = share[3] + remark = share[4] + + users_r_access = self.db.get_users_with_share_access( + computerID=computerid, + share_name=name, + permissions='r' + ) + + users_w_access = self.db.get_users_with_share_access( + computerID=computerid, + share_name=name, + permissions='w' + ) + + data.append([shareID, name, remark, f"{len(users_r_access)} User(s)", f"{len(users_w_access)} Users"]) + + self.print_table(data) + + def do_shares(self, line): + filterTerm = line.strip() + + if filterTerm == "": + shares = self.db.get_shares() + self.display_shares(shares) + else: + shares = self.db.get_shares(filterTerm=filterTerm) + + if len(shares) > 1: + self.display_shares(shares) + elif len(shares) == 1: + share = shares[0] + shareID = share[0] + computerID = share[1] + name = share[3] + remark = share[4] + + users_r_access = self.db.get_users_with_share_access( + computerID=computerID, + share_name=name, + permissions='r' + ) + + users_w_access = self.db.get_users_with_share_access( + computerID=computerID, + share_name=name, + permissions='w' + ) + + data = [["ShareID", "Name", "Remark"]] + + data.append([shareID, name, remark]) + + self.print_table(data, title='Share') + + host = self.db.get_computers(filterTerm=computerID)[0] + + data = [['HostID', 'IP', 'Hostname', 'Domain', 'OS', 'DC']] + + hostID = host[0] + + ip = host[1] + hostname = host[2] + domain = host[3] + os = host[4] + dc = host[5] + + data.append([hostID, ip, hostname, domain, os, dc]) + + self.print_table(data, title='Share Location') + + if users_r_access: + data = [['CredID', 'CredType', 'Domain', 'UserName', 'Password']] + for user in users_r_access: + userid = user[0] + creds = self.db.get_credentials(filterTerm=userid) + + for cred in creds: + credID = cred[0] + domain = cred[1] + username = cred[2] + password = cred[3] + credtype = cred[4] + + data.append([credID, credtype, domain, username, password]) + + self.print_table(data, title='Users(s) with Read Access') + + if users_w_access: + data = [['CredID', 'CredType', 'Domain', 'UserName', 'Password']] + for user in users_w_access: + userid = user[0] + creds = self.db.get_credentials(filterTerm=userid) + + for cred in creds: + credID = cred[0] + domain = cred[1] + username = cred[2] + password = cred[3] + credtype = cred[4] + + data.append([credID, credtype, domain, username, password]) + + self.print_table(data, title='Users(s) with Write Access') + def do_groups(self, line): @@ -130,7 +244,7 @@ class navigator(DatabaseNavigator): data.append([hostID, ip, hostname, domain, os, dc]) - self.print_table(data, title='Host(s)') + self.print_table(data, title='Host') data = [['CredID', 'CredType', 'Domain', 'UserName', 'Password']] for hostID in hostIDList: diff --git a/cme/protocols/smb/mmcexec.py b/cme/protocols/smb/mmcexec.py index 237867ed..c9536fa2 100644 --- a/cme/protocols/smb/mmcexec.py +++ b/cme/protocols/smb/mmcexec.py @@ -28,7 +28,7 @@ import logging import os -from gevent import sleep +from time import sleep from cme.helpers.misc import gen_random_string from impacket.dcerpc.v5.dcom.oaut import IID_IDispatch, string_to_bin, IDispatch, DISPPARAMS, DISPATCH_PROPERTYGET, \ diff --git a/cme/protocols/smb/smbexec.py b/cme/protocols/smb/smbexec.py index 41e72b17..4c06ad5f 100755 --- a/cme/protocols/smb/smbexec.py +++ b/cme/protocols/smb/smbexec.py @@ -1,6 +1,6 @@ import logging import os -from gevent import sleep +from time import sleep from impacket.dcerpc.v5 import transport, scmr from impacket.smbconnection import * from cme.helpers.misc import gen_random_string diff --git a/cme/protocols/smb/wmiexec.py b/cme/protocols/smb/wmiexec.py index be6cfcb7..b9366218 100755 --- a/cme/protocols/smb/wmiexec.py +++ b/cme/protocols/smb/wmiexec.py @@ -1,7 +1,7 @@ import ntpath, logging import os -from gevent import sleep +from time import sleep from cme.helpers.misc import gen_random_string from impacket.dcerpc.v5.dcomrt import DCOMConnection from impacket.dcerpc.v5.dcom import wmi diff --git a/cme/servers/http.py b/cme/servers/http.py index 82554143..23567d0b 100755 --- a/cme/servers/http.py +++ b/cme/servers/http.py @@ -5,7 +5,7 @@ import os import sys import logging from http.server import BaseHTTPRequestHandler -from gevent import sleep +from time import sleep from cme.helpers.logger import highlight from cme.logger import CMEAdapter diff --git a/poetry.lock b/poetry.lock index 19ac4ec7..fb200c64 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,3 +1,11 @@ +[[package]] +name = "aioconsole" +version = "0.3.1" +description = "Asynchronous console and interfaces for asyncio" +category = "main" +optional = false +python-versions = ">=3.6" + [[package]] name = "aiowinreg" version = "0.0.3" @@ -7,9 +15,9 @@ optional = false python-versions = ">=3.6" [[package]] -name = "appnope" -version = "0.1.0" -description = "Disable App Nap on OS X 10.9" +name = "appdirs" +version = "1.4.4" +description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "dev" optional = false python-versions = "*" @@ -38,20 +46,12 @@ wrapt = ">=1.11,<2.0" [[package]] name = "asysocks" -version = "0.0.7" +version = "0.0.10" description = "" category = "main" optional = false python-versions = ">=3.6" -[[package]] -name = "backcall" -version = "0.2.0" -description = "Specifications for callback functions passed in to an API" -category = "dev" -optional = false -python-versions = "*" - [[package]] name = "bcrypt" version = "3.2.0" @@ -70,22 +70,41 @@ typecheck = ["mypy"] [[package]] name = "beautifulsoup4" -version = "4.9.1" +version = "4.9.3" description = "Screen-scraping library" category = "main" optional = false python-versions = "*" [package.dependencies] -soupsieve = [ - ">1.2", - "<2.0", -] +soupsieve = {version = ">1.2", markers = "python_version >= \"3.0\""} [package.extras] html5lib = ["html5lib"] lxml = ["lxml"] +[[package]] +name = "black" +version = "20.8b1" +description = "The uncompromising code formatter." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +appdirs = "*" +click = ">=7.1.2" +mypy-extensions = ">=0.4.3" +pathspec = ">=0.6,<1" +regex = ">=2020.1.8" +toml = ">=0.10.1" +typed-ast = ">=1.4.0" +typing-extensions = ">=3.7.4" + +[package.extras] +colorama = ["colorama (>=0.4.3)"] +d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] + [[package]] name = "bs4" version = "0.0.1" @@ -99,7 +118,7 @@ beautifulsoup4 = "*" [[package]] name = "certifi" -version = "2020.6.20" +version = "2020.11.8" description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false @@ -134,7 +153,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "colorama" -version = "0.4.3" +version = "0.4.4" description = "Cross-platform colored terminal text." category = "dev" optional = false @@ -142,7 +161,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "cryptography" -version = "3.2" +version = "3.2.1" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." category = "main" optional = false @@ -159,14 +178,6 @@ pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"] ssh = ["bcrypt (>=3.1.5)"] test = ["pytest (>=3.6.0,!=3.9.0,!=3.9.1,!=3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"] -[[package]] -name = "decorator" -version = "4.4.2" -description = "Decorators for Humans" -category = "dev" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*" - [[package]] name = "dnspython" version = "2.0.0" @@ -184,7 +195,7 @@ trio = ["trio (>=0.14.0)", "sniffio (>=1.1)"] [[package]] name = "flake8" -version = "3.8.3" +version = "3.8.4" description = "the modular source code checker: pep8 pyflakes and co" category = "dev" optional = false @@ -223,35 +234,6 @@ category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" -[[package]] -name = "gevent" -version = "20.6.2" -description = "Coroutine-based network library" -category = "main" -optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" - -[package.dependencies] -cffi = {version = ">=1.12.2", markers = "platform_python_implementation == \"CPython\" and sys_platform == \"win32\""} -greenlet = {version = ">=0.4.16", markers = "platform_python_implementation == \"CPython\""} -"zope.event" = "*" -"zope.interface" = "*" - -[package.extras] -dnspython = ["dnspython (>=1.16.0)", "idna"] -docs = ["repoze.sphinx.autointerface", "sphinxcontrib-programoutput"] -monitor = ["psutil (>=5.7.0)"] -recommended = ["dnspython (>=1.16.0)", "idna", "cffi (>=1.12.2)", "selectors2", "backports.socketpair", "psutil (>=5.7.0)"] -test = ["dnspython (>=1.16.0)", "idna", "requests", "objgraph", "cffi (>=1.12.2)", "selectors2", "futures", "mock", "backports.socketpair", "contextvars (==2.4)", "coverage (<5.0)", "coveralls (>=1.7.0)", "psutil (>=5.7.0)"] - -[[package]] -name = "greenlet" -version = "0.4.16" -description = "Lightweight in-process concurrent programming" -category = "main" -optional = false -python-versions = "*" - [[package]] name = "idna" version = "2.10" @@ -279,7 +261,7 @@ six = "*" [[package]] name = "importlib-metadata" -version = "1.7.0" +version = "2.0.0" description = "Read metadata from Python packages" category = "dev" optional = false @@ -292,48 +274,9 @@ zipp = ">=0.5" docs = ["sphinx", "rst.linker"] testing = ["packaging", "pep517", "importlib-resources (>=1.3)"] -[[package]] -name = "ipython" -version = "7.18.1" -description = "IPython: Productive Interactive Computing" -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -appnope = {version = "*", markers = "sys_platform == \"darwin\""} -backcall = "*" -colorama = {version = "*", markers = "sys_platform == \"win32\""} -decorator = "*" -jedi = ">=0.10" -pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} -pickleshare = "*" -prompt-toolkit = ">=2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.1.0" -pygments = "*" -traitlets = ">=4.2" - -[package.extras] -all = ["Sphinx (>=1.3)", "ipykernel", "ipyparallel", "ipywidgets", "nbconvert", "nbformat", "nose (>=0.10.1)", "notebook", "numpy (>=1.14)", "pygments", "qtconsole", "requests", "testpath"] -doc = ["Sphinx (>=1.3)"] -kernel = ["ipykernel"] -nbconvert = ["nbconvert"] -nbformat = ["nbformat"] -notebook = ["notebook", "ipywidgets"] -parallel = ["ipyparallel"] -qtconsole = ["qtconsole"] -test = ["nose (>=0.10.1)", "requests", "testpath", "pygments", "nbformat", "ipykernel", "numpy (>=1.14)"] - -[[package]] -name = "ipython-genutils" -version = "0.2.0" -description = "Vestigial utilities from IPython" -category = "dev" -optional = false -python-versions = "*" - [[package]] name = "isort" -version = "5.5.2" +version = "5.6.4" description = "A Python utility / library to sort Python imports." category = "dev" optional = false @@ -352,21 +295,6 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -[[package]] -name = "jedi" -version = "0.17.2" -description = "An autocompletion tool for Python that can be used for text editors." -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[package.dependencies] -parso = ">=0.7.0,<0.8.0" - -[package.extras] -qa = ["flake8 (==3.7.9)"] -testing = ["Django (<3.1)", "colorama", "docopt", "pytest (>=3.9.0,<5.0.0)"] - [[package]] name = "jinja2" version = "2.11.2" @@ -415,7 +343,7 @@ ldap3 = ">2.5.0,<2.5.2 || >2.5.2,<2.6 || >2.6" [[package]] name = "lsassy" -version = "2.1.2" +version = "2.1.3" description = "Python library to parse remote lsass dumps" category = "main" optional = false @@ -452,7 +380,7 @@ python-versions = ">=3.6" [[package]] name = "minikerberos" -version = "0.2.4" +version = "0.2.5" description = "Kerberos manipulation library in pure Python" category = "main" optional = false @@ -472,21 +400,29 @@ python-versions = "*" [[package]] name = "msldap" -version = "0.3.13" +version = "0.3.20" description = "Python library to play with MS LDAP" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] asn1crypto = "*" -asysocks = ">=0.0.7" -minikerberos = ">=0.2.1" +asysocks = ">=0.0.10" +minikerberos = ">=0.2.4" prompt-toolkit = ">=3.0.2" tqdm = "*" -winacl = ">=0.0.2" +winacl = ">=0.1.0" winsspi = {version = ">=0.0.9", markers = "platform_system == \"Windows\""} +[[package]] +name = "mypy-extensions" +version = "0.4.3" +description = "Experimental type system extensions for programs checked with the mypy typechecker." +category = "dev" +optional = false +python-versions = "*" + [[package]] name = "neo4j" version = "4.1.1" @@ -537,38 +473,16 @@ gssapi = ["pyasn1 (>=0.1.7)", "gssapi (>=1.4.1)", "pywin32 (>=2.1.8)"] invoke = ["invoke (>=1.3)"] [[package]] -name = "parso" -version = "0.7.1" -description = "A Python Parser" +name = "pathspec" +version = "0.8.1" +description = "Utility library for gitignore style pattern matching of file paths." category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - -[package.extras] -testing = ["docopt", "pytest (>=3.0.7)"] - -[[package]] -name = "pexpect" -version = "4.8.0" -description = "Pexpect allows easy control of interactive console applications." -category = "dev" -optional = false -python-versions = "*" - -[package.dependencies] -ptyprocess = ">=0.5" - -[[package]] -name = "pickleshare" -version = "0.7.5" -description = "Tiny 'shelve'-like database with concurrency support" -category = "dev" -optional = false -python-versions = "*" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "prompt-toolkit" -version = "3.0.7" +version = "3.0.8" description = "Library for building powerful interactive command lines in Python" category = "main" optional = false @@ -577,14 +491,6 @@ python-versions = ">=3.6.1" [package.dependencies] wcwidth = "*" -[[package]] -name = "ptyprocess" -version = "0.6.0" -description = "Run a subprocess in a pseudo terminal" -category = "dev" -optional = false -python-versions = "*" - [[package]] name = "pyasn1" version = "0.4.8" @@ -611,7 +517,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "pycryptodomex" -version = "3.9.8" +version = "3.9.9" description = "Cryptographic library for Python" category = "main" optional = false @@ -625,14 +531,6 @@ category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -[[package]] -name = "pygments" -version = "2.7.1" -description = "Pygments is a syntax highlighting package written in Python." -category = "dev" -optional = false -python-versions = ">=3.5" - [[package]] name = "pylint" version = "2.6.0" @@ -708,7 +606,7 @@ kerberos = ["gssapi (>=1.5.0)"] [[package]] name = "pypykatz" -version = "0.3.12" +version = "0.3.14" description = "Python implementation of Mimikatz" category = "main" optional = false @@ -716,14 +614,14 @@ python-versions = ">=3.6" [package.dependencies] aiowinreg = ">=0.0.3" -minidump = ">=0.0.12" -minikerberos = ">=0.2.1" -msldap = ">=0.2.13" +minidump = ">=0.0.13" +minikerberos = ">=0.2.5" +msldap = ">=0.3.20" winsspi = ">=0.0.9" [[package]] name = "pyspnego" -version = "0.1.1" +version = "0.1.3" description = "Windows Negotiate Authentication Client and Server" category = "main" optional = false @@ -738,15 +636,23 @@ yaml = ["ruamel.yaml"] [[package]] name = "pytz" -version = "2020.1" +version = "2020.4" description = "World timezone definitions, modern and historical" category = "main" optional = false python-versions = "*" +[[package]] +name = "regex" +version = "2020.11.13" +description = "Alternative regular expression module, to replace re." +category = "dev" +optional = false +python-versions = "*" + [[package]] name = "requests" -version = "2.24.0" +version = "2.25.0" description = "Python HTTP for Humans." category = "main" optional = false @@ -756,7 +662,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" certifi = ">=2017.4.17" chardet = ">=3.0.2,<4" idna = ">=2.5,<3" -urllib3 = ">=1.21.1,<1.25.0 || >1.25.0,<1.25.1 || >1.25.1,<1.26" +urllib3 = ">=1.21.1,<1.27" [package.extras] security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"] @@ -777,7 +683,7 @@ requests = ">=2.0.0" [[package]] name = "shiv" -version = "0.3.1" +version = "0.4.0" description = "A command line utility for building fully self contained Python zipapps." category = "dev" optional = false @@ -796,11 +702,11 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" [[package]] name = "soupsieve" -version = "1.9.6" +version = "2.0.1" description = "A modern CSS selector implementation for Beautiful Soup." category = "main" optional = false -python-versions = "*" +python-versions = ">=3.5" [[package]] name = "termcolor" @@ -820,15 +726,15 @@ python-versions = "*" [[package]] name = "toml" -version = "0.10.1" +version = "0.10.2" description = "Python Library for Tom's Obvious, Minimal Language" category = "dev" optional = false -python-versions = "*" +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" [[package]] name = "tqdm" -version = "4.49.0" +version = "4.51.0" description = "Fast, Extensible Progress Meter" category = "main" optional = false @@ -837,20 +743,6 @@ python-versions = ">=2.6, !=3.0.*, !=3.1.*" [package.extras] dev = ["py-make (>=0.1.0)", "twine", "argopt", "pydoc-markdown"] -[[package]] -name = "traitlets" -version = "5.0.4" -description = "Traitlets Python configuration system" -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -ipython-genutils = "*" - -[package.extras] -test = ["pytest"] - [[package]] name = "typed-ast" version = "1.4.1" @@ -859,9 +751,17 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "typing-extensions" +version = "3.7.4.3" +description = "Backported and Experimental Type Hints for Python 3.5+" +category = "dev" +optional = false +python-versions = "*" + [[package]] name = "urllib3" -version = "1.25.10" +version = "1.26.2" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" optional = false @@ -869,7 +769,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" [package.extras] brotli = ["brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "pyOpenSSL (>=0.14)", "ipaddress"] +secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] @@ -894,7 +794,7 @@ watchdog = ["watchdog"] [[package]] name = "winacl" -version = "0.0.6" +version = "0.1.0" description = "ACL/ACE/Security Descriptor manipulation library in pure Python" category = "main" optional = false @@ -929,7 +829,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "zipp" -version = "3.1.0" +version = "3.4.0" description = "Backport of pathlib-compatible object wrapper for zip files" category = "dev" optional = false @@ -937,46 +837,24 @@ python-versions = ">=3.6" [package.extras] docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"] -testing = ["jaraco.itertools", "func-timeout"] - -[[package]] -name = "zope.event" -version = "4.5.0" -description = "Very basic event publishing system" -category = "main" -optional = false -python-versions = "*" - -[package.extras] -docs = ["sphinx"] -test = ["zope.testrunner"] - -[[package]] -name = "zope.interface" -version = "5.1.0" -description = "Interfaces for Python" -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[package.extras] -docs = ["sphinx", "repoze.sphinx.autointerface"] -test = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] -testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] +testing = ["pytest (>=3.5,!=3.7.3)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pytest-cov", "jaraco.test (>=3.2.0)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"] [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "45ccb9713c0ff98980b17a62293dc530257f892f47e5648ffd5e155258ae3a1e" +content-hash = "6085651a55116ca752bbb9994b3b2bbeb73b34367693cdbef4b62fdff80c437a" [metadata.files] +aioconsole = [ + {file = "aioconsole-0.3.1.tar.gz", hash = "sha256:7c038bb40b7690bf5be6b17154830b7bff25e7be1c02d8420a346c3efbd5d8e5"}, +] aiowinreg = [ {file = "aiowinreg-0.0.3-py3-none-any.whl", hash = "sha256:8afdb5b2c91b1a0132bf276891c8fe5bebb44b97898c88ce4083f3720e1ece7b"}, {file = "aiowinreg-0.0.3.tar.gz", hash = "sha256:c96a886c3c4634907a2c7abc346ffc62f6372193c11dfd6a0ed9fb426aeab03f"}, ] -appnope = [ - {file = "appnope-0.1.0-py2.py3-none-any.whl", hash = "sha256:5b26757dc6f79a3b7dc9fab95359328d5747fcb2409d331ea66d0272b90ab2a0"}, - {file = "appnope-0.1.0.tar.gz", hash = "sha256:8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71"}, +appdirs = [ + {file = "appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"}, + {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, ] asn1crypto = [ {file = "asn1crypto-1.4.0-py2.py3-none-any.whl", hash = "sha256:4bcdf33c861c7d40bdcd74d8e4dd7661aac320fcdf40b9a3f95b4ee12fde2fa8"}, @@ -987,12 +865,8 @@ astroid = [ {file = "astroid-2.4.2.tar.gz", hash = "sha256:2f4078c2a41bf377eea06d71c9d2ba4eb8f6b1af2135bec27bbbb7d8f12bb703"}, ] asysocks = [ - {file = "asysocks-0.0.7-py3-none-any.whl", hash = "sha256:de96ec44a8ea780a1d82e74f7fd4aed433799101ccc554f5450ebbdbc7b23c79"}, - {file = "asysocks-0.0.7.tar.gz", hash = "sha256:c7eaa6c178bbd65d590a798ef8fba4f98c2a3240fa0a5fd28b1ec935edca4963"}, -] -backcall = [ - {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, - {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, + {file = "asysocks-0.0.10-py3-none-any.whl", hash = "sha256:64ad9e79b9f77005e67e9506403228dab5c8f1aa8eefb42abd21e3465da233c7"}, + {file = "asysocks-0.0.10.tar.gz", hash = "sha256:d1648c95b5875fc92737fcc6d662b0e320eee15264494bdbbd2337622de72ac1"}, ] bcrypt = [ {file = "bcrypt-3.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c95d4cbebffafcdd28bd28bb4e25b31c50f6da605c81ffd9ad8a3d1b2ab7b1b6"}, @@ -1004,16 +878,20 @@ bcrypt = [ {file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"}, ] beautifulsoup4 = [ - {file = "beautifulsoup4-4.9.1-py2-none-any.whl", hash = "sha256:e718f2342e2e099b640a34ab782407b7b676f47ee272d6739e60b8ea23829f2c"}, - {file = "beautifulsoup4-4.9.1-py3-none-any.whl", hash = "sha256:a6237df3c32ccfaee4fd201c8f5f9d9df619b93121d01353a64a73ce8c6ef9a8"}, - {file = "beautifulsoup4-4.9.1.tar.gz", hash = "sha256:73cc4d115b96f79c7d77c1c7f7a0a8d4c57860d1041df407dd1aae7f07a77fd7"}, + {file = "beautifulsoup4-4.9.3-py2-none-any.whl", hash = "sha256:4c98143716ef1cb40bf7f39a8e3eec8f8b009509e74904ba3a7b315431577e35"}, + {file = "beautifulsoup4-4.9.3-py3-none-any.whl", hash = "sha256:fff47e031e34ec82bf17e00da8f592fe7de69aeea38be00523c04623c04fb666"}, + {file = "beautifulsoup4-4.9.3.tar.gz", hash = "sha256:84729e322ad1d5b4d25f805bfa05b902dd96450f43842c4e99067d5e1369eb25"}, +] +black = [ + {file = "black-20.8b1-py3-none-any.whl", hash = "sha256:70b62ef1527c950db59062cda342ea224d772abdf6adc58b86a45421bab20a6b"}, + {file = "black-20.8b1.tar.gz", hash = "sha256:1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea"}, ] bs4 = [ {file = "bs4-0.0.1.tar.gz", hash = "sha256:36ecea1fd7cc5c0c6e4a1ff075df26d50da647b75376626cc186e2212886dd3a"}, ] certifi = [ - {file = "certifi-2020.6.20-py2.py3-none-any.whl", hash = "sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41"}, - {file = "certifi-2020.6.20.tar.gz", hash = "sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3"}, + {file = "certifi-2020.11.8-py2.py3-none-any.whl", hash = "sha256:1f422849db327d534e3d0c5f02a263458c3955ec0aae4ff09b95f195c59f4edd"}, + {file = "certifi-2020.11.8.tar.gz", hash = "sha256:f05def092c44fbf25834a51509ef6e631dc19765ab8a57b4e7ab85531f0a9cf4"}, ] cffi = [ {file = "cffi-1.14.3-2-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3eeeb0405fd145e714f7633a5173318bd88d8bbfc3dd0a5751f8c4f70ae629bc"}, @@ -1062,44 +940,39 @@ click = [ {file = "click-7.1.2.tar.gz", hash = "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a"}, ] colorama = [ - {file = "colorama-0.4.3-py2.py3-none-any.whl", hash = "sha256:7d73d2a99753107a36ac6b455ee49046802e59d9d076ef8e47b61499fa29afff"}, - {file = "colorama-0.4.3.tar.gz", hash = "sha256:e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1"}, + {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, ] cryptography = [ - {file = "cryptography-3.2-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:9a8580c9afcdcddabbd064c0a74f337af74ff4529cdf3a12fa2e9782d677a2e5"}, - {file = "cryptography-3.2-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:7ef41304bf978f33cfb6f43ca13bb0faac0c99cda33693aa20ad4f5e34e8cb8f"}, - {file = "cryptography-3.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:87c2fffd61e934bc0e2c927c3764c20b22d7f5f7f812ee1a477de4c89b044ca6"}, - {file = "cryptography-3.2-cp27-cp27m-win32.whl", hash = "sha256:6e8a3c7c45101a7eeee93102500e1b08f2307c717ff553fcb3c1127efc9b6917"}, - {file = "cryptography-3.2-cp27-cp27m-win_amd64.whl", hash = "sha256:52a47e60953679eea0b4d490ca3c241fb1b166a7b161847ef4667dfd49e7699d"}, - {file = "cryptography-3.2-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:6a8f64ed096d13f92d1f601a92d9fd1f1025dc73a2ca1ced46dcf5e0d4930943"}, - {file = "cryptography-3.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:3e17d02941c0f169c5b877597ca8be895fca0e5e3eb882526a74aa4804380a98"}, - {file = "cryptography-3.2-cp35-abi3-macosx_10_10_x86_64.whl", hash = "sha256:d1cbc3426e6150583b22b517ef3720036d7e3152d428c864ff0f3fcad2b97591"}, - {file = "cryptography-3.2-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:22f8251f68953553af4f9c11ec5f191198bc96cff9f0ac5dd5ff94daede0ee6d"}, - {file = "cryptography-3.2-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:f2aa3f8ba9e2e3fd49bd3de743b976ab192fbf0eb0348cebde5d2a9de0090a9f"}, - {file = "cryptography-3.2-cp35-abi3-manylinux2014_aarch64.whl", hash = "sha256:9a07e6d255053674506091d63ab4270a119e9fc83462c7ab1dbcb495b76307af"}, - {file = "cryptography-3.2-cp35-cp35m-win32.whl", hash = "sha256:f0e3986f6cce007216b23c490f093f35ce2068f3c244051e559f647f6731b7ae"}, - {file = "cryptography-3.2-cp35-cp35m-win_amd64.whl", hash = "sha256:284e275e3c099a80831f9898fb5c9559120d27675c3521278faba54e584a7832"}, - {file = "cryptography-3.2-cp36-abi3-win32.whl", hash = "sha256:f01c9116bfb3ad2831e125a73dcd957d173d6ddca7701528eff1e7d97972872c"}, - {file = "cryptography-3.2-cp36-abi3-win_amd64.whl", hash = "sha256:bd80bc156d3729b38cb227a5a76532aef693b7ac9e395eea8063ee50ceed46a5"}, - {file = "cryptography-3.2-cp36-cp36m-win32.whl", hash = "sha256:8f0fd8b0751d75c4483c534b209e39e918f0d14232c0d8a2a76e687f64ced831"}, - {file = "cryptography-3.2-cp36-cp36m-win_amd64.whl", hash = "sha256:8a0866891326d3badb17c5fd3e02c926b635e8923fa271b4813cd4d972a57ff3"}, - {file = "cryptography-3.2-cp37-cp37m-win32.whl", hash = "sha256:57b8c1ed13b8aa386cabbfde3be175d7b155682470b0e259fecfe53850967f8a"}, - {file = "cryptography-3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:88069392cd9a1e68d2cfd5c3a2b0d72a44ef3b24b8977a4f7956e9e3c4c9477a"}, - {file = "cryptography-3.2-cp38-cp38-win32.whl", hash = "sha256:fb70a4cedd69dc52396ee114416a3656e011fb0311fca55eb55c7be6ed9c8aef"}, - {file = "cryptography-3.2-cp38-cp38-win_amd64.whl", hash = "sha256:e15ac84dcdb89f92424cbaca4b0b34e211e7ce3ee7b0ec0e4f3c55cee65fae5a"}, - {file = "cryptography-3.2.tar.gz", hash = "sha256:e4789b84f8dedf190148441f7c5bfe7244782d9cbb194a36e17b91e7d3e1cca9"}, -] -decorator = [ - {file = "decorator-4.4.2-py2.py3-none-any.whl", hash = "sha256:41fa54c2a0cc4ba648be4fd43cff00aedf5b9465c9bf18d64325bc225f08f760"}, - {file = "decorator-4.4.2.tar.gz", hash = "sha256:e3a62f0520172440ca0dcc823749319382e377f37f140a0b99ef45fecb84bfe7"}, + {file = "cryptography-3.2.1-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:6dc59630ecce8c1f558277ceb212c751d6730bd12c80ea96b4ac65637c4f55e7"}, + {file = "cryptography-3.2.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:75e8e6684cf0034f6bf2a97095cb95f81537b12b36a8fedf06e73050bb171c2d"}, + {file = "cryptography-3.2.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4e7268a0ca14536fecfdf2b00297d4e407da904718658c1ff1961c713f90fd33"}, + {file = "cryptography-3.2.1-cp27-cp27m-win32.whl", hash = "sha256:7117319b44ed1842c617d0a452383a5a052ec6aa726dfbaffa8b94c910444297"}, + {file = "cryptography-3.2.1-cp27-cp27m-win_amd64.whl", hash = "sha256:a733671100cd26d816eed39507e585c156e4498293a907029969234e5e634bc4"}, + {file = "cryptography-3.2.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:a75f306a16d9f9afebfbedc41c8c2351d8e61e818ba6b4c40815e2b5740bb6b8"}, + {file = "cryptography-3.2.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:5849d59358547bf789ee7e0d7a9036b2d29e9a4ddf1ce5e06bb45634f995c53e"}, + {file = "cryptography-3.2.1-cp35-abi3-macosx_10_10_x86_64.whl", hash = "sha256:bd717aa029217b8ef94a7d21632a3bb5a4e7218a4513d2521c2a2fd63011e98b"}, + {file = "cryptography-3.2.1-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:efe15aca4f64f3a7ea0c09c87826490e50ed166ce67368a68f315ea0807a20df"}, + {file = "cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:32434673d8505b42c0de4de86da8c1620651abd24afe91ae0335597683ed1b77"}, + {file = "cryptography-3.2.1-cp35-abi3-manylinux2014_aarch64.whl", hash = "sha256:7b8d9d8d3a9bd240f453342981f765346c87ade811519f98664519696f8e6ab7"}, + {file = "cryptography-3.2.1-cp35-cp35m-win32.whl", hash = "sha256:d3545829ab42a66b84a9aaabf216a4dce7f16dbc76eb69be5c302ed6b8f4a29b"}, + {file = "cryptography-3.2.1-cp35-cp35m-win_amd64.whl", hash = "sha256:a4e27ed0b2504195f855b52052eadcc9795c59909c9d84314c5408687f933fc7"}, + {file = "cryptography-3.2.1-cp36-abi3-win32.whl", hash = "sha256:13b88a0bd044b4eae1ef40e265d006e34dbcde0c2f1e15eb9896501b2d8f6c6f"}, + {file = "cryptography-3.2.1-cp36-abi3-win_amd64.whl", hash = "sha256:07ca431b788249af92764e3be9a488aa1d39a0bc3be313d826bbec690417e538"}, + {file = "cryptography-3.2.1-cp36-cp36m-win32.whl", hash = "sha256:a035a10686532b0587d58a606004aa20ad895c60c4d029afa245802347fab57b"}, + {file = "cryptography-3.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:d26a2557d8f9122f9bf445fc7034242f4375bd4e95ecda007667540270965b13"}, + {file = "cryptography-3.2.1-cp37-cp37m-win32.whl", hash = "sha256:545a8550782dda68f8cdc75a6e3bf252017aa8f75f19f5a9ca940772fc0cb56e"}, + {file = "cryptography-3.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:55d0b896631412b6f0c7de56e12eb3e261ac347fbaa5d5e705291a9016e5f8cb"}, + {file = "cryptography-3.2.1-cp38-cp38-win32.whl", hash = "sha256:3cd75a683b15576cfc822c7c5742b3276e50b21a06672dc3a800a2d5da4ecd1b"}, + {file = "cryptography-3.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:d25cecbac20713a7c3bc544372d42d8eafa89799f492a43b79e1dfd650484851"}, + {file = "cryptography-3.2.1.tar.gz", hash = "sha256:d3d5e10be0cf2a12214ddee45c6bd203dab435e3d83b4560c03066eda600bfe3"}, ] dnspython = [ {file = "dnspython-2.0.0-py3-none-any.whl", hash = "sha256:40bb3c24b9d4ec12500f0124288a65df232a3aa749bb0c39734b782873a2544d"}, {file = "dnspython-2.0.0.zip", hash = "sha256:044af09374469c3a39eeea1a146e8cac27daec951f1f1f157b1962fc7cb9d1b7"}, ] flake8 = [ - {file = "flake8-3.8.3-py2.py3-none-any.whl", hash = "sha256:15e351d19611c887e482fb960eae4d44845013cc142d42896e9862f775d8cf5c"}, - {file = "flake8-3.8.3.tar.gz", hash = "sha256:f04b9fcbac03b0a3e58c0ab3a0ecc462e023a9faf046d57794184028123aa208"}, + {file = "flake8-3.8.4-py2.py3-none-any.whl", hash = "sha256:749dbbd6bfd0cf1318af27bf97a14e28e5ff548ef8e5b1566ccfb25a11e7c839"}, + {file = "flake8-3.8.4.tar.gz", hash = "sha256:aadae8761ec651813c24be05c6f7b4680857ef6afaae4651a4eccaef97ce6c3b"}, ] flask = [ {file = "Flask-1.1.2-py2.py3-none-any.whl", hash = "sha256:8a4fdd8936eba2512e9c85df320a37e694c93945b33ef33c89946a340a238557"}, @@ -1108,55 +981,6 @@ flask = [ future = [ {file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"}, ] -gevent = [ - {file = "gevent-20.6.2-cp27-cp27m-macosx_10_15_x86_64.whl", hash = "sha256:b03890bbddbae5667f5baad517417056496ff5e92c3c7945b27cc08f55a9fcb2"}, - {file = "gevent-20.6.2-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1ea0d34cb78cdf37870be3bfb9330ebda89197bed9e048c14f4a90dec19a33e0"}, - {file = "gevent-20.6.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:73eb4cf3114fbb5dd801bd0b93941adfa2fa6d99e91976c20a121ea14b8b39b9"}, - {file = "gevent-20.6.2-cp27-cp27m-win32.whl", hash = "sha256:f41cc8e853ac2252bc58f6feabd74b8aae613e2d19097c5373463122f4dc08f0"}, - {file = "gevent-20.6.2-cp27-cp27m-win_amd64.whl", hash = "sha256:d3baff87d935a5eeffb0e4f7cd5ffe258d2430cd62aeee2e5396f85da07df435"}, - {file = "gevent-20.6.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:7d8408854ce892f987305a0e9bf5c051f4ea29453665454396d6afb620c719b6"}, - {file = "gevent-20.6.2-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:ea2e4584950186b71d648bde6af40dae4d4c6f43db25a732ec056b27a7a83afe"}, - {file = "gevent-20.6.2-cp35-cp35m-win32.whl", hash = "sha256:c0f4340e40e0f9dfe93a52a12ddf5b1eeda9bbc89b99bf3b9b23acab0dfae0a4"}, - {file = "gevent-20.6.2-cp35-cp35m-win_amd64.whl", hash = "sha256:13c74d6784ef5ada2666abf2bb310d27a1d14291f7cac46148f336b19f714d40"}, - {file = "gevent-20.6.2-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:78bd94f6f2ac366155169df3507068f6381f2ad77625633189ce183f86a57597"}, - {file = "gevent-20.6.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:0b16dd85eddaf6acdad373ce90ed4da09ef466cbc5e0ee5932d13f099929e844"}, - {file = "gevent-20.6.2-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:a47556cac07e31b3cef8fd701599b3b1365961fe3736471f41807ffa27c5c848"}, - {file = "gevent-20.6.2-cp36-cp36m-win32.whl", hash = "sha256:bef18b8bd3b728240b9bbd699737216b793d6c97b482431f69dcbe328ad73692"}, - {file = "gevent-20.6.2-cp36-cp36m-win_amd64.whl", hash = "sha256:d0a67a20ce325f6a2068e0bd9fbf83db8a5f5ced972ed8ac5c20079a7d98c7d1"}, - {file = "gevent-20.6.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:b17915b65b49a425115ddc3087484c81b1e47ce38c931d18bb14e453753e4d06"}, - {file = "gevent-20.6.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:ebb8a545112110e3a6edf905ae1556b0538fc148c743aa7d8cfaebbbc23de31d"}, - {file = "gevent-20.6.2-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6c864b5604166ac8351e3128a1135b883b9e978fd24afbd75a249dcb42bc8ab5"}, - {file = "gevent-20.6.2-cp37-cp37m-win32.whl", hash = "sha256:e5ca5ee80a9d9e697c9fc22b4bbce9ad06870f83fc8e7774e5504892ef702476"}, - {file = "gevent-20.6.2-cp37-cp37m-win_amd64.whl", hash = "sha256:f2a02d9004ccb18edd9eaf6f25da9a7763de41a69754d5e4d872a8cbf8bd0b72"}, - {file = "gevent-20.6.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:354f932c284fa45826b32f42927d892096cce05671b50b3ff59528230217ad47"}, - {file = "gevent-20.6.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:67776cb33b638a3c61a0351d9d1e8f33a46b47de619e249de1159892f9ff035c"}, - {file = "gevent-20.6.2-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:68764aca061bbbbade43727e797f9c28042f6d90cca5fb6514ef726d43ab00ca"}, - {file = "gevent-20.6.2-cp38-cp38-win32.whl", hash = "sha256:0f3fbb1703b10609856e5dffb0e358bf5edf57e52dc7cd7226e3f8674fdc0a0f"}, - {file = "gevent-20.6.2-cp38-cp38-win_amd64.whl", hash = "sha256:a18d8dd9bfa994a22f30adfa0563d80f0809140045c34f85535f422813d25855"}, - {file = "gevent-20.6.2-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:9527087984f1659be899b3300d5d61c7c5b01d8beae106aff5160316da8bc56f"}, - {file = "gevent-20.6.2-pp27-pypy_73-macosx_10_7_x86_64.whl", hash = "sha256:76ef4c6e3332e6f7278142d791b28695adfce39735900fccef2a0f1d894f6b36"}, - {file = "gevent-20.6.2-pp27-pypy_73-win32.whl", hash = "sha256:3cb2f6978615d52e4e4e667b035c11a7272bb68b14d119faf1b138164b2f354f"}, - {file = "gevent-20.6.2.tar.gz", hash = "sha256:a23c2abf08e851c988723f6a2996d495f513a2c0dc70f9956af03af8debdb5d1"}, -] -greenlet = [ - {file = "greenlet-0.4.16-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:80cb0380838bf4e48da6adedb0c7cd060c187bb4a75f67a5aa9ec33689b84872"}, - {file = "greenlet-0.4.16-cp27-cp27m-win32.whl", hash = "sha256:df7de669cbf21de4b04a3ffc9920bc8426cab4c61365fa84d79bf97401a8bef7"}, - {file = "greenlet-0.4.16-cp27-cp27m-win_amd64.whl", hash = "sha256:1429dc183b36ec972055e13250d96e174491559433eb3061691b446899b87384"}, - {file = "greenlet-0.4.16-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:5ea034d040e6ab1d2ae04ab05a3f37dbd719c4dee3804b13903d4cc794b1336e"}, - {file = "greenlet-0.4.16-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c196a5394c56352e21cb7224739c6dd0075b69dd56f758505951d1d8d68cf8a9"}, - {file = "greenlet-0.4.16-cp35-cp35m-win32.whl", hash = "sha256:1000038ba0ea9032948e2156a9c15f5686f36945e8f9906e6b8db49f358e7b52"}, - {file = "greenlet-0.4.16-cp35-cp35m-win_amd64.whl", hash = "sha256:1b805231bfb7b2900a16638c3c8b45c694334c811f84463e52451e00c9412691"}, - {file = "greenlet-0.4.16-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:e5db19d4a7d41bbeb3dd89b49fc1bc7e6e515b51bbf32589c618655a0ebe0bf0"}, - {file = "greenlet-0.4.16-cp36-cp36m-win32.whl", hash = "sha256:eac2a3f659d5f41d6bbfb6a97733bc7800ea5e906dc873732e00cebb98cec9e4"}, - {file = "greenlet-0.4.16-cp36-cp36m-win_amd64.whl", hash = "sha256:7eed31f4efc8356e200568ba05ad645525f1fbd8674f1e5be61a493e715e3873"}, - {file = "greenlet-0.4.16-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:682328aa576ec393c1872615bcb877cf32d800d4a2f150e1a5dc7e56644010b1"}, - {file = "greenlet-0.4.16-cp37-cp37m-win32.whl", hash = "sha256:3a35e33902b2e6079949feed7a2dafa5ac6f019da97bd255842bb22de3c11bf5"}, - {file = "greenlet-0.4.16-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b2a984bbfc543d144d88caad6cc7ff4a71be77102014bd617bd88cfb038727"}, - {file = "greenlet-0.4.16-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:d83c1d38658b0f81c282b41238092ed89d8f93c6e342224ab73fb39e16848721"}, - {file = "greenlet-0.4.16-cp38-cp38-win32.whl", hash = "sha256:e695ac8c3efe124d998230b219eb51afb6ef10524a50b3c45109c4b77a8a3a92"}, - {file = "greenlet-0.4.16-cp38-cp38-win_amd64.whl", hash = "sha256:133ba06bad4e5f2f8bf6a0ac434e0fd686df749a86b3478903b92ec3a9c0c90b"}, - {file = "greenlet-0.4.16.tar.gz", hash = "sha256:6e06eac722676797e8fce4adb8ad3dc57a1bb3adfb0dd3fdf8306c055a38456c"}, -] idna = [ {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"}, {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"}, @@ -1165,29 +989,17 @@ impacket = [ {file = "impacket-0.9.21.tar.gz", hash = "sha256:912f812564e87c31a162cfe0626f3a6cbc5b6864deedbfefc31f6d321859ade3"}, ] importlib-metadata = [ - {file = "importlib_metadata-1.7.0-py2.py3-none-any.whl", hash = "sha256:dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070"}, - {file = "importlib_metadata-1.7.0.tar.gz", hash = "sha256:90bb658cdbbf6d1735b6341ce708fc7024a3e14e99ffdc5783edea9f9b077f83"}, -] -ipython = [ - {file = "ipython-7.18.1-py3-none-any.whl", hash = "sha256:2e22c1f74477b5106a6fb301c342ab8c64bb75d702e350f05a649e8cb40a0fb8"}, - {file = "ipython-7.18.1.tar.gz", hash = "sha256:a331e78086001931de9424940699691ad49dfb457cea31f5471eae7b78222d5e"}, -] -ipython-genutils = [ - {file = "ipython_genutils-0.2.0-py2.py3-none-any.whl", hash = "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8"}, - {file = "ipython_genutils-0.2.0.tar.gz", hash = "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"}, + {file = "importlib_metadata-2.0.0-py2.py3-none-any.whl", hash = "sha256:cefa1a2f919b866c5beb7c9f7b0ebb4061f30a8a9bf16d609b000e2dfaceb9c3"}, + {file = "importlib_metadata-2.0.0.tar.gz", hash = "sha256:77a540690e24b0305878c37ffd421785a6f7e53c8b5720d211b211de8d0e95da"}, ] isort = [ - {file = "isort-5.5.2-py3-none-any.whl", hash = "sha256:ba91218eee31f1e300ecc079ef0c524cea3fc41bfbb979cbdf5fd3a889e3cfed"}, - {file = "isort-5.5.2.tar.gz", hash = "sha256:171c5f365791073426b5ed3a156c2081a47f88c329161fd28228ff2da4c97ddb"}, + {file = "isort-5.6.4-py3-none-any.whl", hash = "sha256:dcab1d98b469a12a1a624ead220584391648790275560e1a43e54c5dceae65e7"}, + {file = "isort-5.6.4.tar.gz", hash = "sha256:dcaeec1b5f0eca77faea2a35ab790b4f3680ff75590bfcb7145986905aab2f58"}, ] itsdangerous = [ {file = "itsdangerous-1.1.0-py2.py3-none-any.whl", hash = "sha256:b12271b2047cb23eeb98c8b5622e2e5c5e9abd9784a153e9d8ef9cb4dd09d749"}, {file = "itsdangerous-1.1.0.tar.gz", hash = "sha256:321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19"}, ] -jedi = [ - {file = "jedi-0.17.2-py2.py3-none-any.whl", hash = "sha256:98cc583fa0f2f8304968199b01b6b4b94f469a1f4a74c1560506ca2a211378b5"}, - {file = "jedi-0.17.2.tar.gz", hash = "sha256:86ed7d9b750603e4ba582ea8edc678657fb4007894a12bcf6f4bb97892f31d20"}, -] jinja2 = [ {file = "Jinja2-2.11.2-py2.py3-none-any.whl", hash = "sha256:f0a4641d3cf955324a89c04f3d94663aa4d638abe8f733ecd3582848e1c37035"}, {file = "Jinja2-2.11.2.tar.gz", hash = "sha256:89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0"}, @@ -1228,8 +1040,8 @@ ldapdomaindump = [ {file = "ldapdomaindump-0.9.3.tar.gz", hash = "sha256:ec293973209302eb6d925c3cde6b10693c15443933d1884bc4495d4a19d29181"}, ] lsassy = [ - {file = "lsassy-2.1.2-py3-none-any.whl", hash = "sha256:71b8e959e602bec2f844caa98424da79350f08ed82e28d52bf06056930e5a44b"}, - {file = "lsassy-2.1.2.tar.gz", hash = "sha256:44ecf23cf3ac0a44439fc2643917c4454f01d255c3cac2ed10a7bf91b9929f57"}, + {file = "lsassy-2.1.3-py3-none-any.whl", hash = "sha256:08cd14d1a8f665125ef0baf8b2d2a955fbe39416a692cb114f728be627bfb8c8"}, + {file = "lsassy-2.1.3.tar.gz", hash = "sha256:ffcf351ecd4299fb30dcb33821739cfe596f26089cc09983cfa6a58d9f7cb3e1"}, ] markupsafe = [ {file = "MarkupSafe-1.1.1-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161"}, @@ -1275,8 +1087,8 @@ minidump = [ {file = "minidump-0.0.13.tar.gz", hash = "sha256:ba8a988f915e53005f8b4747515269e7ab7c937bc74ab09fec949edf04f423f1"}, ] minikerberos = [ - {file = "minikerberos-0.2.4-py3-none-any.whl", hash = "sha256:f3771e24387d588cdc2ecd909fcda9c6ead5de55bdc5c49d10839f8d7338c187"}, - {file = "minikerberos-0.2.4.tar.gz", hash = "sha256:7865d48446ca664b1b701ba56e4828854f186ebd18e2a23ca1cf510a99aaf4f5"}, + {file = "minikerberos-0.2.5-py3-none-any.whl", hash = "sha256:86fd9a9681ce9f766a6077a641c037387fe8eda91740bb465757c2bfa04ea7b9"}, + {file = "minikerberos-0.2.5.tar.gz", hash = "sha256:fe6d0f3686a51f76073d915b982b3072e3e27c3abe8ebf10b5c22b10e5321e34"}, ] msgpack = [ {file = "msgpack-1.0.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:cec8bf10981ed70998d98431cd814db0ecf3384e6b113366e7f36af71a0fca08"}, @@ -1299,8 +1111,12 @@ msgpack = [ {file = "msgpack-1.0.0.tar.gz", hash = "sha256:9534d5cc480d4aff720233411a1f765be90885750b07df772380b34c10ecb5c0"}, ] msldap = [ - {file = "msldap-0.3.13-py3-none-any.whl", hash = "sha256:23dfff5fa54c43509227558a98dce0e1890243af90142a2ccfccb0dce98d7965"}, - {file = "msldap-0.3.13.tar.gz", hash = "sha256:f0016c7dc91d4115297dffcb971e9f34ba1cddafa275742b52245c5a1497402d"}, + {file = "msldap-0.3.20-py3-none-any.whl", hash = "sha256:e6fd82c2d326924f03316d395a38fe15e798af0e2adb099225164b6829511d73"}, + {file = "msldap-0.3.20.tar.gz", hash = "sha256:48b0d6cec2897244ff405fca6f66c0a38d0b238feaf980fd7517507f3aef06e9"}, +] +mypy-extensions = [ + {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, + {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, ] neo4j = [ {file = "neo4j-4.1.1.tar.gz", hash = "sha256:b19efd8949adfd6330537bd97b2d0df88e4074b741f7db4c05427498915886ec"}, @@ -1317,25 +1133,13 @@ paramiko = [ {file = "paramiko-2.7.2-py2.py3-none-any.whl", hash = "sha256:4f3e316fef2ac628b05097a637af35685183111d4bc1b5979bd397c2ab7b5898"}, {file = "paramiko-2.7.2.tar.gz", hash = "sha256:7f36f4ba2c0d81d219f4595e35f70d56cc94f9ac40a6acdf51d6ca210ce65035"}, ] -parso = [ - {file = "parso-0.7.1-py2.py3-none-any.whl", hash = "sha256:97218d9159b2520ff45eb78028ba8b50d2bc61dcc062a9682666f2dc4bd331ea"}, - {file = "parso-0.7.1.tar.gz", hash = "sha256:caba44724b994a8a5e086460bb212abc5a8bc46951bf4a9a1210745953622eb9"}, -] -pexpect = [ - {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"}, - {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"}, -] -pickleshare = [ - {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, - {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +pathspec = [ + {file = "pathspec-0.8.1-py2.py3-none-any.whl", hash = "sha256:aa0cb481c4041bf52ffa7b0d8fa6cd3e88a2ca4879c533c9153882ee2556790d"}, + {file = "pathspec-0.8.1.tar.gz", hash = "sha256:86379d6b86d75816baba717e64b1a3a3469deb93bb76d613c9ce79edc5cb68fd"}, ] prompt-toolkit = [ - {file = "prompt_toolkit-3.0.7-py3-none-any.whl", hash = "sha256:83074ee28ad4ba6af190593d4d4c607ff525272a504eb159199b6dd9f950c950"}, - {file = "prompt_toolkit-3.0.7.tar.gz", hash = "sha256:822f4605f28f7d2ba6b0b09a31e25e140871e96364d1d377667b547bb3bf4489"}, -] -ptyprocess = [ - {file = "ptyprocess-0.6.0-py2.py3-none-any.whl", hash = "sha256:d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f"}, - {file = "ptyprocess-0.6.0.tar.gz", hash = "sha256:923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0"}, + {file = "prompt_toolkit-3.0.8-py3-none-any.whl", hash = "sha256:7debb9a521e0b1ee7d2fe96ee4bd60ef03c6492784de0547337ca4433e46aa63"}, + {file = "prompt_toolkit-3.0.8.tar.gz", hash = "sha256:25c95d2ac813909f813c93fde734b6e44406d1477a9faef7c915ff37d39c0a8c"}, ] pyasn1 = [ {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, @@ -1361,50 +1165,46 @@ pycparser = [ {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, ] pycryptodomex = [ - {file = "pycryptodomex-3.9.8-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:c0d085c8187a1e4d3402f626c9e438b5861151ab132d8761d9c5ce6491a87761"}, - {file = "pycryptodomex-3.9.8-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:1714675fb4ac29a26ced38ca22eb8ffd923ac851b7a6140563863194d7158422"}, - {file = "pycryptodomex-3.9.8-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:c990f2c58f7c67688e9e86e6557ed05952669ff6f1343e77b459007d85f7df00"}, - {file = "pycryptodomex-3.9.8-cp27-cp27m-win32.whl", hash = "sha256:9fd758e5e2fe02d57860b85da34a1a1e7037155c4eadc2326fc7af02f9cae214"}, - {file = "pycryptodomex-3.9.8-cp27-cp27m-win_amd64.whl", hash = "sha256:b2d756620078570d3f940c84bc94dd30aa362b795cce8b2723300a8800b87f1c"}, - {file = "pycryptodomex-3.9.8-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:2710fc8d83b3352b370db932b3710033b9d630b970ff5aaa3e7458b5336e3b32"}, - {file = "pycryptodomex-3.9.8-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:2199708ebeed4b82eb45b10e1754292677f5a0df7d627ee91ea01290b9bab7e6"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:8044eae59301dd392fbb4a7c5d64e1aea8ef0be2540549807ecbe703d6233d68"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:06f5a458624c9b0e04c0086c7f84bcc578567dab0ddc816e0476b3057b18339f"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:ccbbec59bf4b74226170c54476da5780c9176bae084878fc94d9a2c841218e34"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:3b23d63030819b7d9ac7db9360305fd1241e6870ca5b7e8d59fee4db4674a490"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-win32.whl", hash = "sha256:e4e1c486bf226822c8dceac81d0ec59c0a2399dbd1b9e04f03c3efa3605db677"}, - {file = "pycryptodomex-3.9.8-cp35-cp35m-win_amd64.whl", hash = "sha256:2275a663c9e744ee4eace816ef2d446b3060554c5773a92fbc79b05bf47debda"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-macosx_10_6_intel.whl", hash = "sha256:93a75d1acd54efed314b82c952b39eac96ce98d241ad7431547442e5c56138aa"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:e42860fbe1292668b682f6dabd225fbe2a7a4fa1632f0c39881c019e93dea594"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:f60b3484ce4be04f5da3777c51c5140d3fe21cdd6674f2b6568f41c8130bcdeb"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:c315262e26d54a9684e323e37ac9254f481d57fcc4fd94002992460898ef5c04"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-win32.whl", hash = "sha256:a2ee8ba99d33e1a434fcd27d7d0aa7964163efeee0730fe2efc9d60edae1fc71"}, - {file = "pycryptodomex-3.9.8-cp36-cp36m-win_amd64.whl", hash = "sha256:58e19560814dabf5d788b95a13f6b98279cf41a49b1e49ee6cf6c79a57adb4c9"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-macosx_10_6_intel.whl", hash = "sha256:a2bc4e1a2e6ca3a18b2e0be6131a23af76fecb37990c159df6edc7da6df913e3"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:4e0b27697fa1621c6d3d3b4edeec723c2e841285de6a8d378c1962da77b349be"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:3caa32cf807422adf33c10c88c22e9e2e08b9d9d042f12e1e25fe23113dd618f"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:ddb1ae2891c8cb83a25da87a3e00111a9654fc5f0b70f18879c41aece45d6182"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-win32.whl", hash = "sha256:89be1bf55e50116fe7e493a7c0c483099770dd7f81b87ac8d04a43b1a203e259"}, - {file = "pycryptodomex-3.9.8-cp37-cp37m-win_amd64.whl", hash = "sha256:17272d06e4b2f6455ee2cbe93e8eb50d9450a5dc6223d06862ee1ea5d1235861"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ea4d4b58f9bc34e224ef4b4604a6be03d72ef1f8c486391f970205f6733dbc46"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-manylinux1_i686.whl", hash = "sha256:8fcdda24dddf47f716400d54fc7f75cadaaba1dd47cc127e59d752c9c0fc3c48"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:4ae6379350a09339109e9b6f419bb2c3f03d3e441f4b0f5b8ca699d47cc9ff7e"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:85c108b42e47d4073344ff61d4e019f1d95bb7725ca0fe87d0a2deb237c10e49"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-win32.whl", hash = "sha256:dc2bed32c7b138f1331794e454a953360c8cedf3ee62ae31f063822da6007489"}, - {file = "pycryptodomex-3.9.8-cp38-cp38-win_amd64.whl", hash = "sha256:914fbb18e29c54585e6aa39d300385f90d0fa3b3cc02ed829b08f95c1acf60c2"}, - {file = "pycryptodomex-3.9.8-cp39-cp39-manylinux1_i686.whl", hash = "sha256:35b9c9177a9fe7288b19dd41554c9c8ca1063deb426dd5a02e7e2a7416b6bd11"}, - {file = "pycryptodomex-3.9.8-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:e070a1f91202ed34c396be5ea842b886f6fa2b90d2db437dc9fb35a26c80c060"}, - {file = "pycryptodomex-3.9.8-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f5bd6891380e0fb5467251daf22525644fdf6afd9ae8bc2fe065c78ea1882e0d"}, - {file = "pycryptodomex-3.9.8.tar.gz", hash = "sha256:48cc2cfc251f04a6142badeb666d1ff49ca6fdfc303fd72579f62b768aaa52b9"}, + {file = "pycryptodomex-3.9.9-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:5e486cab2dfcfaec934dd4f5d5837f4a9428b690f4d92a3b020fd31d1497ca64"}, + {file = "pycryptodomex-3.9.9-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:42669638e4f7937b7141044a2fbd1019caca62bd2cdd8b535f731426ab07bde1"}, + {file = "pycryptodomex-3.9.9-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:4ce1fc1e6d2fd2d6dc197607153327989a128c093e0e94dca63408f506622c3e"}, + {file = "pycryptodomex-3.9.9-cp27-cp27m-win32.whl", hash = "sha256:d2d1388595cb5d27d9220d5cbaff4f37c6ec696a25882eb06d224d241e6e93fb"}, + {file = "pycryptodomex-3.9.9-cp27-cp27m-win_amd64.whl", hash = "sha256:a1d38a96da57e6103423a446079ead600b450cf0f8ebf56a231895abf77e7ffc"}, + {file = "pycryptodomex-3.9.9-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:934e460c5058346c6f1d62fdf3db5680fbdfbfd212722d24d8277bf47cd9ebdc"}, + {file = "pycryptodomex-3.9.9-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:3642252d7bfc4403a42050e18ba748bedebd5a998a8cba89665a4f42aea4c380"}, + {file = "pycryptodomex-3.9.9-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:a385fceaa0cdb97f0098f1c1e9ec0b46cc09186ddf60ec23538e871b1dddb6dc"}, + {file = "pycryptodomex-3.9.9-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:73240335f4a1baf12880ebac6df66ab4d3a9212db9f3efe809c36a27280d16f8"}, + {file = "pycryptodomex-3.9.9-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:305e3c46f20d019cd57543c255e7ba49e432e275d7c0de8913b6dbe57a851bc8"}, + {file = "pycryptodomex-3.9.9-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:871852044f55295449fbf225538c2c4118525093c32f0a6c43c91bed0452d7e3"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-macosx_10_6_intel.whl", hash = "sha256:4632d55a140b28e20be3cd7a3057af52fb747298ff0fd3290d4e9f245b5004ba"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:a9aac1a30b00b5038d3d8e48248f3b58ea15c827b67325c0d18a447552e30fc8"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:a7cf1c14e47027d9fb9d26aa62e5d603994227bd635e58a8df4b1d2d1b6a8ed7"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:20fb7f4efc494016eab1bc2f555bc0a12dd5ca61f35c95df8061818ffb2c20a3"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-win32.whl", hash = "sha256:892e93f3e7e10c751d6c17fa0dc422f7984cfd5eb6690011f9264dc73e2775fc"}, + {file = "pycryptodomex-3.9.9-cp36-cp36m-win_amd64.whl", hash = "sha256:28ee3bcb4d609aea3040cad995a8e2c9c6dc57c12183dadd69e53880c35333b9"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-macosx_10_6_intel.whl", hash = "sha256:d62fbab185a6b01c5469eda9f0795f3d1a5bba24f5a5813f362e4b73a3c4dc70"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:bef9e9d39393dc7baec39ba4bac6c73826a4db02114cdeade2552a9d6afa16e2"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:f20a62397e09704049ce9007bea4f6bad965ba9336a760c6f4ef1b4192e12d6d"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:c885fe4d5f26ce8ca20c97d02e88f5fdd92c01e1cc771ad0951b21e1641faf6d"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-win32.whl", hash = "sha256:f81f7311250d9480e36dec819127897ae772e7e8de07abfabe931b8566770b8e"}, + {file = "pycryptodomex-3.9.9-cp37-cp37m-win_amd64.whl", hash = "sha256:55cf4e99b3ba0122dee570dc7661b97bf35c16aab3e2ccb5070709d282a1c7ab"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:15c03ffdac17731b126880622823d30d0a3cc7203cd219e6b9814140a44e7fab"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-manylinux1_i686.whl", hash = "sha256:3547b87b16aad6afb28c9b3a9cd870e11b5e7b5ac649b74265258d96d8de1130"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:65ec88c8271448d2ea109d35c1f297b09b872c57214ab7e832e413090d3469a9"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:404faa3e518f8bea516aae2aac47d4d960397199a15b4bd6f66cad97825469a0"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-win32.whl", hash = "sha256:d2e853e0f9535e693fade97768cf7293f3febabecc5feb1e9b2ffdfe1044ab96"}, + {file = "pycryptodomex-3.9.9-cp38-cp38-win_amd64.whl", hash = "sha256:836fe39282e75311ce4c38468be148f7fac0df3d461c5de58c5ff1ddb8966bac"}, + {file = "pycryptodomex-3.9.9-cp39-cp39-manylinux1_i686.whl", hash = "sha256:4a88c9383d273bdce3afc216020282c9c5c39ec0bd9462b1a206af6afa377cf0"}, + {file = "pycryptodomex-3.9.9-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:9736f3f3e1761024200637a080a4f922f5298ad5d780e10dbb5634fe8c65b34c"}, + {file = "pycryptodomex-3.9.9-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:6c95a3361ce70068cf69526a58751f73ddac5ba27a3c2379b057efa2f5338c8c"}, + {file = "pycryptodomex-3.9.9-cp39-cp39-win32.whl", hash = "sha256:b696876ee583d15310be57311e90e153a84b7913ac93e6b99675c0c9867926d0"}, + {file = "pycryptodomex-3.9.9-cp39-cp39-win_amd64.whl", hash = "sha256:7651211e15109ac0058a49159265d9f6e6423c8a81c65434d3c56d708417a05b"}, + {file = "pycryptodomex-3.9.9.tar.gz", hash = "sha256:7b5b7c5896f8172ea0beb283f7f9428e0ab88ec248ce0a5b8c98d73e26267d51"}, ] pyflakes = [ {file = "pyflakes-2.2.0-py2.py3-none-any.whl", hash = "sha256:0d94e0e05a19e57a99444b6ddcf9a6eb2e5c68d3ca1e98e90707af8152c90a92"}, {file = "pyflakes-2.2.0.tar.gz", hash = "sha256:35b2d75ee967ea93b55750aa9edbbf72813e06a66ba54438df2cfac9e3c27fc8"}, ] -pygments = [ - {file = "Pygments-2.7.1-py3-none-any.whl", hash = "sha256:307543fe65c0947b126e83dd5a61bd8acbd84abec11f43caebaf5534cbc17998"}, - {file = "Pygments-2.7.1.tar.gz", hash = "sha256:926c3f319eda178d1bd90851e4317e6d8cdb5e292a3386aac9bd75eca29cf9c7"}, -] pylint = [ {file = "pylint-2.6.0-py3-none-any.whl", hash = "sha256:bfe68f020f8a0fece830a22dd4d5dddb4ecc6137db04face4c3420a46a52239f"}, {file = "pylint-2.6.0.tar.gz", hash = "sha256:bb4a908c9dadbc3aac18860550e870f58e1a02c9f2c204fdf5693d73be061210"}, @@ -1442,46 +1242,91 @@ pypsrp = [ {file = "pypsrp-0.5.0.tar.gz", hash = "sha256:e4d13c84a5a150c75ec5bc8653059fa78e8421172049e0496d1df89ca24d9a6d"}, ] pypykatz = [ - {file = "pypykatz-0.3.12-py3-none-any.whl", hash = "sha256:8acd8d69f7b0ab343c593490a0837871b58b5c322ad54ada2fad0fed049349f3"}, - {file = "pypykatz-0.3.12.tar.gz", hash = "sha256:b63b19ec6ee8448bbcf7003e6ad1f9d7a2784fd8cee54aebcc5f717792a43200"}, + {file = "pypykatz-0.3.14-py3-none-any.whl", hash = "sha256:e5c47969d59a18b9f82b631d65a79255e0488bd3f79c852b1802b0bd09ab7fb3"}, + {file = "pypykatz-0.3.14.tar.gz", hash = "sha256:59441ad430f1ed05ca3b1bc900b250616d6d4e072c86f3acafabd8059047b88a"}, ] pyspnego = [ - {file = "pyspnego-0.1.1-cp27-cp27m-win32.whl", hash = "sha256:79b8c24d35c5f5e013bc7745b17cd4d30c627297e802301c53333688b46fc36f"}, - {file = "pyspnego-0.1.1-cp27-cp27m-win_amd64.whl", hash = "sha256:8086b91c07d46e63dfffb1d67190ca73120182e2f6853437215b7c8021848ae1"}, - {file = "pyspnego-0.1.1-cp35-cp35m-win32.whl", hash = "sha256:74e117510296bd1b1435719a6c44f29bedc45cec27eb0bea506b4783e1f8598b"}, - {file = "pyspnego-0.1.1-cp35-cp35m-win_amd64.whl", hash = "sha256:c02e587a214414532de363a534cd51cbd4c5b9e4ca3a345dd2ebb3328c9be961"}, - {file = "pyspnego-0.1.1-cp36-cp36m-win32.whl", hash = "sha256:3355fc3dffbe15775a81c83c929a4401355137e3e0cf71f99e628d9a5e0dca18"}, - {file = "pyspnego-0.1.1-cp36-cp36m-win_amd64.whl", hash = "sha256:084d5669f174c658aed5ac57d3c23bd57ec7d4a10b38c2105642248145e5aa92"}, - {file = "pyspnego-0.1.1-cp37-cp37m-win32.whl", hash = "sha256:29e71e54ae288790521538e44e8fd7645c75990dc0bfa4d0f1813d2112b75373"}, - {file = "pyspnego-0.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:6a3056c8e1d9753424153104ff47cde675dd306e6e762f2d2e7478902e14eda0"}, - {file = "pyspnego-0.1.1-cp38-cp38-win32.whl", hash = "sha256:fe3e0ae2f8b5e5139d70b0a69f2e464b1ae0b77b04eb69df8aab9c60fdae2dfe"}, - {file = "pyspnego-0.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:7313507bad43a321c46a210a4c631d4d5aced7964bd6e720edfef2fa95f30f2e"}, - {file = "pyspnego-0.1.1-py2.py3-none-any.whl", hash = "sha256:53772b4a4039785c1e6193e0172e9f8d5db8f483279f5d69abd78467f0d3c48e"}, - {file = "pyspnego-0.1.1.tar.gz", hash = "sha256:c45f95cd0877b6354b4e3e9ad49df30bc3d9f4f6730fc32e90eb2e32b1fef34d"}, + {file = "pyspnego-0.1.3-cp27-cp27m-win32.whl", hash = "sha256:17c4c29ffa8a99d2b95942570864804f00756945bacb5c217c96d24d72523596"}, + {file = "pyspnego-0.1.3-cp27-cp27m-win_amd64.whl", hash = "sha256:0fa9ea4bd6be196ec88db3f63a54854e6898e6a5bcba973551a99f4786cefa25"}, + {file = "pyspnego-0.1.3-cp35-cp35m-win32.whl", hash = "sha256:f87f10c66a17b7b1d9e186110c35269d353ecb6e30c7a573e65cfb1286e8799f"}, + {file = "pyspnego-0.1.3-cp35-cp35m-win_amd64.whl", hash = "sha256:53dd617ae50b3d7dea3d44b8e2184f3a11f0ddc9dd94ef6abe990cbd4b7eac50"}, + {file = "pyspnego-0.1.3-cp36-cp36m-win32.whl", hash = "sha256:ac7b19f0c24bfdef3065b1b0187a2653c86f15f6cc0cb123a3bf1c88e466073b"}, + {file = "pyspnego-0.1.3-cp36-cp36m-win_amd64.whl", hash = "sha256:73e896e916d47b3ab15372e48f21291c84608bc15885e091544c9417ffe2f0bc"}, + {file = "pyspnego-0.1.3-cp37-cp37m-win32.whl", hash = "sha256:3ca1faf60b6e42f8583c20d40e0a29af2baf282943abd847a609356c0086c6a4"}, + {file = "pyspnego-0.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:320fdcc33599d28cfc257b01d01cfb2a8b59cd821a15949e81fb74befe8a56d9"}, + {file = "pyspnego-0.1.3-cp38-cp38-win32.whl", hash = "sha256:9b6222bf10a912351bb8cadad26307e8ca227aca0533c36bc8ad763cb3f8310e"}, + {file = "pyspnego-0.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:ce50e00516bac280c93acfaab098579ef2d138790fa47a208938bfb91016e417"}, + {file = "pyspnego-0.1.3-cp39-cp39-win32.whl", hash = "sha256:e6ffcf69090a6b10866f3e68ba5055a5f9371e9e1aab544493a9bcdf80c7e53f"}, + {file = "pyspnego-0.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:95570bbef667df19d3e59d22ebb4afb88ad713f12d81899c5d82f8dd475b85d9"}, + {file = "pyspnego-0.1.3-py2.py3-none-any.whl", hash = "sha256:e63dec220a0a29bd929f8bbd401eb747da591c50f1c5a4e68f86aa73626dd57d"}, + {file = "pyspnego-0.1.3.tar.gz", hash = "sha256:a2963d52b64ecd7df3f8e9a311a423e75bd4bcc5944d46da16837607f9f6e667"}, ] pytz = [ - {file = "pytz-2020.1-py2.py3-none-any.whl", hash = "sha256:a494d53b6d39c3c6e44c3bec237336e14305e4f29bbf800b599253057fbb79ed"}, - {file = "pytz-2020.1.tar.gz", hash = "sha256:c35965d010ce31b23eeb663ed3cc8c906275d6be1a34393a1d73a41febf4a048"}, + {file = "pytz-2020.4-py2.py3-none-any.whl", hash = "sha256:5c55e189b682d420be27c6995ba6edce0c0a77dd67bfbe2ae6607134d5851ffd"}, + {file = "pytz-2020.4.tar.gz", hash = "sha256:3e6b7dd2d1e0a59084bcee14a17af60c5c562cdc16d828e8eba2e683d3a7e268"}, +] +regex = [ + {file = "regex-2020.11.13-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:8b882a78c320478b12ff024e81dc7d43c1462aa4a3341c754ee65d857a521f85"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:a63f1a07932c9686d2d416fb295ec2c01ab246e89b4d58e5fa468089cab44b70"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:6e4b08c6f8daca7d8f07c8d24e4331ae7953333dbd09c648ed6ebd24db5a10ee"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:bba349276b126947b014e50ab3316c027cac1495992f10e5682dc677b3dfa0c5"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:56e01daca75eae420bce184edd8bb341c8eebb19dd3bce7266332258f9fb9dd7"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:6a8ce43923c518c24a2579fda49f093f1397dad5d18346211e46f134fc624e31"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:1ab79fcb02b930de09c76d024d279686ec5d532eb814fd0ed1e0051eb8bd2daa"}, + {file = "regex-2020.11.13-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:9801c4c1d9ae6a70aeb2128e5b4b68c45d4f0af0d1535500884d644fa9b768c6"}, + {file = "regex-2020.11.13-cp36-cp36m-win32.whl", hash = "sha256:49cae022fa13f09be91b2c880e58e14b6da5d10639ed45ca69b85faf039f7a4e"}, + {file = "regex-2020.11.13-cp36-cp36m-win_amd64.whl", hash = "sha256:749078d1eb89484db5f34b4012092ad14b327944ee7f1c4f74d6279a6e4d1884"}, + {file = "regex-2020.11.13-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b2f4007bff007c96a173e24dcda236e5e83bde4358a557f9ccf5e014439eae4b"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:38c8fd190db64f513fe4e1baa59fed086ae71fa45083b6936b52d34df8f86a88"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5862975b45d451b6db51c2e654990c1820523a5b07100fc6903e9c86575202a0"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:262c6825b309e6485ec2493ffc7e62a13cf13fb2a8b6d212f72bd53ad34118f1"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:bafb01b4688833e099d79e7efd23f99172f501a15c44f21ea2118681473fdba0"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:e32f5f3d1b1c663af7f9c4c1e72e6ffe9a78c03a31e149259f531e0fed826512"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:3bddc701bdd1efa0d5264d2649588cbfda549b2899dc8d50417e47a82e1387ba"}, + {file = "regex-2020.11.13-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:02951b7dacb123d8ea6da44fe45ddd084aa6777d4b2454fa0da61d569c6fa538"}, + {file = "regex-2020.11.13-cp37-cp37m-win32.whl", hash = "sha256:0d08e71e70c0237883d0bef12cad5145b84c3705e9c6a588b2a9c7080e5af2a4"}, + {file = "regex-2020.11.13-cp37-cp37m-win_amd64.whl", hash = "sha256:1fa7ee9c2a0e30405e21031d07d7ba8617bc590d391adfc2b7f1e8b99f46f444"}, + {file = "regex-2020.11.13-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:baf378ba6151f6e272824b86a774326f692bc2ef4cc5ce8d5bc76e38c813a55f"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux1_i686.whl", hash = "sha256:e3faaf10a0d1e8e23a9b51d1900b72e1635c2d5b0e1bea1c18022486a8e2e52d"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:2a11a3e90bd9901d70a5b31d7dd85114755a581a5da3fc996abfefa48aee78af"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:d1ebb090a426db66dd80df8ca85adc4abfcbad8a7c2e9a5ec7513ede522e0a8f"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:b2b1a5ddae3677d89b686e5c625fc5547c6e492bd755b520de5332773a8af06b"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:2c99e97d388cd0a8d30f7c514d67887d8021541b875baf09791a3baad48bb4f8"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:c084582d4215593f2f1d28b65d2a2f3aceff8342aa85afd7be23a9cad74a0de5"}, + {file = "regex-2020.11.13-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:a3d748383762e56337c39ab35c6ed4deb88df5326f97a38946ddd19028ecce6b"}, + {file = "regex-2020.11.13-cp38-cp38-win32.whl", hash = "sha256:7913bd25f4ab274ba37bc97ad0e21c31004224ccb02765ad984eef43e04acc6c"}, + {file = "regex-2020.11.13-cp38-cp38-win_amd64.whl", hash = "sha256:6c54ce4b5d61a7129bad5c5dc279e222afd00e721bf92f9ef09e4fae28755683"}, + {file = "regex-2020.11.13-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1862a9d9194fae76a7aaf0150d5f2a8ec1da89e8b55890b1786b8f88a0f619dc"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux1_i686.whl", hash = "sha256:4902e6aa086cbb224241adbc2f06235927d5cdacffb2425c73e6570e8d862364"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:7a25fcbeae08f96a754b45bdc050e1fb94b95cab046bf56b016c25e9ab127b3e"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:d2d8ce12b7c12c87e41123997ebaf1a5767a5be3ec545f64675388970f415e2e"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:f7d29a6fc4760300f86ae329e3b6ca28ea9c20823df123a2ea8693e967b29917"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:717881211f46de3ab130b58ec0908267961fadc06e44f974466d1887f865bd5b"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:3128e30d83f2e70b0bed9b2a34e92707d0877e460b402faca908c6667092ada9"}, + {file = "regex-2020.11.13-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:8f6a2229e8ad946e36815f2a03386bb8353d4bde368fdf8ca5f0cb97264d3b5c"}, + {file = "regex-2020.11.13-cp39-cp39-win32.whl", hash = "sha256:f8f295db00ef5f8bae530fc39af0b40486ca6068733fb860b42115052206466f"}, + {file = "regex-2020.11.13-cp39-cp39-win_amd64.whl", hash = "sha256:a15f64ae3a027b64496a71ab1f722355e570c3fac5ba2801cafce846bf5af01d"}, + {file = "regex-2020.11.13.tar.gz", hash = "sha256:83d6b356e116ca119db8e7c6fc2983289d87b27b3fac238cfe5dca529d884562"}, ] requests = [ - {file = "requests-2.24.0-py2.py3-none-any.whl", hash = "sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898"}, - {file = "requests-2.24.0.tar.gz", hash = "sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b"}, + {file = "requests-2.25.0-py2.py3-none-any.whl", hash = "sha256:e786fa28d8c9154e6a4de5d46a1d921b8749f8b74e28bde23768e5e16eece998"}, + {file = "requests-2.25.0.tar.gz", hash = "sha256:7f1a0b932f4a60a1a65caa4263921bb7d9ee911957e0ae4a23a6dd08185ad5f8"}, ] requests-ntlm = [ {file = "requests_ntlm-1.1.0-py2.py3-none-any.whl", hash = "sha256:1eb43d1026b64d431a8e0f1e8a8c8119ac698e72e9b95102018214411a8463ea"}, {file = "requests_ntlm-1.1.0.tar.gz", hash = "sha256:9189c92e8c61ae91402a64b972c4802b2457ce6a799d658256ebf084d5c7eb71"}, ] shiv = [ - {file = "shiv-0.3.1-py2.py3-none-any.whl", hash = "sha256:950909f3ddf3fcbbab12e2a9cd661b7b34d7ce5a661ada02780c5985f8d3081e"}, - {file = "shiv-0.3.1.tar.gz", hash = "sha256:30d62f3ed2f0956574ded93b75075fe1336b291dfc044d200a4fbe54898c01d4"}, + {file = "shiv-0.4.0-py2.py3-none-any.whl", hash = "sha256:9761bc852e7b69ef3978676657cc18e3f68dd505fbbbfa4539e1d8b5befb6019"}, + {file = "shiv-0.4.0.tar.gz", hash = "sha256:824ff4a2278fe3f315452902050bf1751b05b1e785c522ef6285df1868125189"}, ] six = [ {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, ] soupsieve = [ - {file = "soupsieve-1.9.6-py2.py3-none-any.whl", hash = "sha256:feb1e937fa26a69e08436aad4a9037cd7e1d4c7212909502ba30701247ff8abd"}, - {file = "soupsieve-1.9.6.tar.gz", hash = "sha256:7985bacc98c34923a439967c1a602dc4f1e15f923b6fcf02344184f86cc7efaa"}, + {file = "soupsieve-2.0.1-py3-none-any.whl", hash = "sha256:1634eea42ab371d3d346309b93df7870a88610f0725d47528be902a0d95ecc55"}, + {file = "soupsieve-2.0.1.tar.gz", hash = "sha256:a59dc181727e95d25f781f0eb4fd1825ff45590ec8ff49eadfd7f1a537cc0232"}, ] termcolor = [ {file = "termcolor-1.1.0.tar.gz", hash = "sha256:1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b"}, @@ -1490,16 +1335,12 @@ terminaltables = [ {file = "terminaltables-3.1.0.tar.gz", hash = "sha256:f3eb0eb92e3833972ac36796293ca0906e998dc3be91fbe1f8615b331b853b81"}, ] toml = [ - {file = "toml-0.10.1-py2.py3-none-any.whl", hash = "sha256:bda89d5935c2eac546d648028b9901107a595863cb36bae0c73ac804a9b4ce88"}, - {file = "toml-0.10.1.tar.gz", hash = "sha256:926b612be1e5ce0634a2ca03470f95169cf16f939018233a670519cb4ac58b0f"}, + {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, + {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, ] tqdm = [ - {file = "tqdm-4.49.0-py2.py3-none-any.whl", hash = "sha256:8f3c5815e3b5e20bc40463fa6b42a352178859692a68ffaa469706e6d38342a5"}, - {file = "tqdm-4.49.0.tar.gz", hash = "sha256:faf9c671bd3fad5ebaeee366949d969dca2b2be32c872a7092a1e1a9048d105b"}, -] -traitlets = [ - {file = "traitlets-5.0.4-py3-none-any.whl", hash = "sha256:9664ec0c526e48e7b47b7d14cd6b252efa03e0129011de0a9c1d70315d4309c3"}, - {file = "traitlets-5.0.4.tar.gz", hash = "sha256:86c9351f94f95de9db8a04ad8e892da299a088a64fd283f9f6f18770ae5eae1b"}, + {file = "tqdm-4.51.0-py2.py3-none-any.whl", hash = "sha256:9ad44aaf0fc3697c06f6e05c7cf025dd66bc7bcb7613c66d85f4464c47ac8fad"}, + {file = "tqdm-4.51.0.tar.gz", hash = "sha256:ef54779f1c09f346b2b5a8e5c61f96fbcb639929e640e59f8cf810794f406432"}, ] typed-ast = [ {file = "typed_ast-1.4.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:73d785a950fc82dd2a25897d525d003f6378d1cb23ab305578394694202a58c3"}, @@ -1522,17 +1363,16 @@ typed-ast = [ {file = "typed_ast-1.4.1-cp38-cp38-win32.whl", hash = "sha256:715ff2f2df46121071622063fc7543d9b1fd19ebfc4f5c8895af64a77a8c852c"}, {file = "typed_ast-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc0fea399acb12edbf8a628ba8d2312f583bdbdb3335635db062fa98cf71fca4"}, {file = "typed_ast-1.4.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:d43943ef777f9a1c42bf4e552ba23ac77a6351de620aa9acf64ad54933ad4d34"}, - {file = "typed_ast-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:92c325624e304ebf0e025d1224b77dd4e6393f18aab8d829b5b7e04afe9b7a2c"}, - {file = "typed_ast-1.4.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:d648b8e3bf2fe648745c8ffcee3db3ff903d0817a01a12dd6a6ea7a8f4889072"}, - {file = "typed_ast-1.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:fac11badff8313e23717f3dada86a15389d0708275bddf766cca67a84ead3e91"}, - {file = "typed_ast-1.4.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:0d8110d78a5736e16e26213114a38ca35cb15b6515d535413b090bd50951556d"}, - {file = "typed_ast-1.4.1-cp39-cp39-win32.whl", hash = "sha256:b52ccf7cfe4ce2a1064b18594381bccf4179c2ecf7f513134ec2f993dd4ab395"}, - {file = "typed_ast-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:3742b32cf1c6ef124d57f95be609c473d7ec4c14d0090e5a5e05a15269fb4d0c"}, {file = "typed_ast-1.4.1.tar.gz", hash = "sha256:8c8aaad94455178e3187ab22c8b01a3837f8ee50e09cf31f1ba129eb293ec30b"}, ] +typing-extensions = [ + {file = "typing_extensions-3.7.4.3-py2-none-any.whl", hash = "sha256:dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f"}, + {file = "typing_extensions-3.7.4.3-py3-none-any.whl", hash = "sha256:7cb407020f00f7bfc3cb3e7881628838e69d8f3fcab2f64742a5e76b2f841918"}, + {file = "typing_extensions-3.7.4.3.tar.gz", hash = "sha256:99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c"}, +] urllib3 = [ - {file = "urllib3-1.25.10-py2.py3-none-any.whl", hash = "sha256:e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461"}, - {file = "urllib3-1.25.10.tar.gz", hash = "sha256:91056c15fa70756691db97756772bb1eb9678fa585d9184f24534b100dc60f4a"}, + {file = "urllib3-1.26.2-py2.py3-none-any.whl", hash = "sha256:d8ff90d979214d7b4f8ce956e80f4028fc6860e4431f731ea4a8c08f23f99473"}, + {file = "urllib3-1.26.2.tar.gz", hash = "sha256:19188f96923873c92ccb987120ec4acaa12f0461fa9ce5d3d0772bc965a39e08"}, ] wcwidth = [ {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, @@ -1543,8 +1383,8 @@ werkzeug = [ {file = "Werkzeug-1.0.1.tar.gz", hash = "sha256:6c80b1e5ad3665290ea39320b91e1be1e0d5f60652b964a3070216de83d2e47c"}, ] winacl = [ - {file = "winacl-0.0.6-py3-none-any.whl", hash = "sha256:c6870eca430abdf7f7f0649f049e10d5bcd7453cbce0168c8267b9415f540122"}, - {file = "winacl-0.0.6.tar.gz", hash = "sha256:9fe05da7c18124ba0e47a39c377e8224dc5e645464cbf257672af522d76d1138"}, + {file = "winacl-0.1.0-py3-none-any.whl", hash = "sha256:52133da6f54632b894fb447c1130dca4522477e8c442273ebdabef38d1cd88ed"}, + {file = "winacl-0.1.0.tar.gz", hash = "sha256:97320c6b2c029a884196666e0aa92bdd45936f4db9d54e516330e8bf176cb017"}, ] winsspi = [ {file = "winsspi-0.0.9-py3-none-any.whl", hash = "sha256:a64624a25fc2d3663a2c5376c5291f3c7531e9c8051571de9ca9db8bf25746c2"}, @@ -1558,52 +1398,6 @@ xmltodict = [ {file = "xmltodict-0.12.0.tar.gz", hash = "sha256:50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21"}, ] zipp = [ - {file = "zipp-3.1.0-py3-none-any.whl", hash = "sha256:aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b"}, - {file = "zipp-3.1.0.tar.gz", hash = "sha256:c599e4d75c98f6798c509911d08a22e6c021d074469042177c8c86fb92eefd96"}, -] -"zope.event" = [ - {file = "zope.event-4.5.0-py2.py3-none-any.whl", hash = "sha256:2666401939cdaa5f4e0c08cf7f20c9b21423b95e88f4675b1443973bdb080c42"}, - {file = "zope.event-4.5.0.tar.gz", hash = "sha256:5e76517f5b9b119acf37ca8819781db6c16ea433f7e2062c4afc2b6fbedb1330"}, -] -"zope.interface" = [ - {file = "zope.interface-5.1.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:645a7092b77fdbc3f68d3cc98f9d3e71510e419f54019d6e282328c0dd140dcd"}, - {file = "zope.interface-5.1.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:d1fe9d7d09bb07228650903d6a9dc48ea649e3b8c69b1d263419cc722b3938e8"}, - {file = "zope.interface-5.1.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:a744132d0abaa854d1aad50ba9bc64e79c6f835b3e92521db4235a1991176813"}, - {file = "zope.interface-5.1.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:461d4339b3b8f3335d7e2c90ce335eb275488c587b61aca4b305196dde2ff086"}, - {file = "zope.interface-5.1.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:269b27f60bcf45438e8683269f8ecd1235fa13e5411de93dae3b9ee4fe7f7bc7"}, - {file = "zope.interface-5.1.0-cp27-cp27m-win32.whl", hash = "sha256:6874367586c020705a44eecdad5d6b587c64b892e34305bb6ed87c9bbe22a5e9"}, - {file = "zope.interface-5.1.0-cp27-cp27m-win_amd64.whl", hash = "sha256:8149ded7f90154fdc1a40e0c8975df58041a6f693b8f7edcd9348484e9dc17fe"}, - {file = "zope.interface-5.1.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:0103cba5ed09f27d2e3de7e48bb320338592e2fabc5ce1432cf33808eb2dfd8b"}, - {file = "zope.interface-5.1.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:b0becb75418f8a130e9d465e718316cd17c7a8acce6fe8fe07adc72762bee425"}, - {file = "zope.interface-5.1.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:fb55c182a3f7b84c1a2d6de5fa7b1a05d4660d866b91dbf8d74549c57a1499e8"}, - {file = "zope.interface-5.1.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:4f98f70328bc788c86a6a1a8a14b0ea979f81ae6015dd6c72978f1feff70ecda"}, - {file = "zope.interface-5.1.0-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:af2c14efc0bb0e91af63d00080ccc067866fb8cbbaca2b0438ab4105f5e0f08d"}, - {file = "zope.interface-5.1.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:f68bf937f113b88c866d090fea0bc52a098695173fc613b055a17ff0cf9683b6"}, - {file = "zope.interface-5.1.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:d7804f6a71fc2dda888ef2de266727ec2f3915373d5a785ed4ddc603bbc91e08"}, - {file = "zope.interface-5.1.0-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:74bf0a4f9091131de09286f9a605db449840e313753949fe07c8d0fe7659ad1e"}, - {file = "zope.interface-5.1.0-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:ba4261c8ad00b49d48bbb3b5af388bb7576edfc0ca50a49c11dcb77caa1d897e"}, - {file = "zope.interface-5.1.0-cp35-cp35m-win32.whl", hash = "sha256:ebb4e637a1fb861c34e48a00d03cffa9234f42bef923aec44e5625ffb9a8e8f9"}, - {file = "zope.interface-5.1.0-cp35-cp35m-win_amd64.whl", hash = "sha256:911714b08b63d155f9c948da2b5534b223a1a4fc50bb67139ab68b277c938578"}, - {file = "zope.interface-5.1.0-cp36-cp36m-macosx_10_6_intel.whl", hash = "sha256:e74671e43ed4569fbd7989e5eecc7d06dc134b571872ab1d5a88f4a123814e9f"}, - {file = "zope.interface-5.1.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:b1d2ed1cbda2ae107283befd9284e650d840f8f7568cb9060b5466d25dc48975"}, - {file = "zope.interface-5.1.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:ef739fe89e7f43fb6494a43b1878a36273e5924869ba1d866f752c5812ae8d58"}, - {file = "zope.interface-5.1.0-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:eb9b92f456ff3ec746cd4935b73c1117538d6124b8617bc0fe6fda0b3816e345"}, - {file = "zope.interface-5.1.0-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:dcefc97d1daf8d55199420e9162ab584ed0893a109f45e438b9794ced44c9fd0"}, - {file = "zope.interface-5.1.0-cp36-cp36m-win32.whl", hash = "sha256:f40db0e02a8157d2b90857c24d89b6310f9b6c3642369852cdc3b5ac49b92afc"}, - {file = "zope.interface-5.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:14415d6979356629f1c386c8c4249b4d0082f2ea7f75871ebad2e29584bd16c5"}, - {file = "zope.interface-5.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5e86c66a6dea8ab6152e83b0facc856dc4d435fe0f872f01d66ce0a2131b7f1d"}, - {file = "zope.interface-5.1.0-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:39106649c3082972106f930766ae23d1464a73b7d30b3698c986f74bf1256a34"}, - {file = "zope.interface-5.1.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:8cccf7057c7d19064a9e27660f5aec4e5c4001ffcf653a47531bde19b5aa2a8a"}, - {file = "zope.interface-5.1.0-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:562dccd37acec149458c1791da459f130c6cf8902c94c93b8d47c6337b9fb826"}, - {file = "zope.interface-5.1.0-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:da2844fba024dd58eaa712561da47dcd1e7ad544a257482392472eae1c86d5e5"}, - {file = "zope.interface-5.1.0-cp37-cp37m-win32.whl", hash = "sha256:1ae4693ccee94c6e0c88a4568fb3b34af8871c60f5ba30cf9f94977ed0e53ddd"}, - {file = "zope.interface-5.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:dd98c436a1fc56f48c70882cc243df89ad036210d871c7427dc164b31500dc11"}, - {file = "zope.interface-5.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1b87ed2dc05cb835138f6a6e3595593fea3564d712cb2eb2de963a41fd35758c"}, - {file = "zope.interface-5.1.0-cp38-cp38-manylinux1_i686.whl", hash = "sha256:558a20a0845d1a5dc6ff87cd0f63d7dac982d7c3be05d2ffb6322a87c17fa286"}, - {file = "zope.interface-5.1.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7b726194f938791a6691c7592c8b9e805fc6d1b9632a833b9c0640828cd49cbc"}, - {file = "zope.interface-5.1.0-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:60a207efcd8c11d6bbeb7862e33418fba4e4ad79846d88d160d7231fcb42a5ee"}, - {file = "zope.interface-5.1.0-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:b054eb0a8aa712c8e9030065a59b5e6a5cf0746ecdb5f087cca5ec7685690c19"}, - {file = "zope.interface-5.1.0-cp38-cp38-win32.whl", hash = "sha256:27d287e61639d692563d9dab76bafe071fbeb26818dd6a32a0022f3f7ca884b5"}, - {file = "zope.interface-5.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:a5f8f85986197d1dd6444763c4a15c991bfed86d835a1f6f7d476f7198d5f56a"}, - {file = "zope.interface-5.1.0.tar.gz", hash = "sha256:40e4c42bd27ed3c11b2c983fecfb03356fae1209de10686d03c02c8696a1d90e"}, + {file = "zipp-3.4.0-py3-none-any.whl", hash = "sha256:102c24ef8f171fd729d46599845e95c7ab894a4cf45f5de11a44cc7444fb1108"}, + {file = "zipp-3.4.0.tar.gz", hash = "sha256:ed5eee1974372595f9e416cc7bbeeb12335201d8081ca8a0743c954d4446e5cb"}, ] diff --git a/pyproject.toml b/pyproject.toml index c5c5d807..6129b6ee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "crackmapexec" -version = "5.1.1dev" +version = "5.1.3dev" description = "A swiss army knife for pentesting networks" authors = ["Marcello Salvati "] readme = "README.md" @@ -51,7 +51,6 @@ cmedb = 'cme.cmedb:main' [tool.poetry.dependencies] python = "^3.7.0" -gevent = ">=1.2.0" requests = ">=2.9.1" requests-ntlm = ">=0.3.0" bs4 = "^0.0.1" @@ -65,13 +64,14 @@ paramiko = "^2.7.2" impacket = "^0.9.21" xmltodict = "^0.12.0" terminaltables = "^3.1.0" +aioconsole = "^0.3.1" [tool.poetry.dev-dependencies] -flake8 = "^3.8.2" -pylint = "^2.5.2" -shiv = "^0.3.1" -ipython = "^7.18.1" +flake8 = "*" +pylint = "*" +shiv = "*" +black = "^20.8b1" [build-system] requires = ["poetry>=0.12"] diff --git a/requirements-dev.txt b/requirements-dev.txt index d42c3bae..5c0c0c69 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,85 +1,76 @@ -aiowinreg==0.0.3 -appnope==0.1.0; sys_platform == "darwin" -asn1crypto==1.4.0 -astroid==2.4.2 -asysocks==0.0.7 -backcall==0.2.0 -bcrypt==3.2.0 -beautifulsoup4==4.9.1 +aioconsole==0.3.1; python_version >= "3.6" +aiowinreg==0.0.3; python_version >= "3.6" +appdirs==1.4.4; python_version >= "3.6" +asn1crypto==1.4.0; python_version >= "3.7" +astroid==2.4.2; python_version >= "3.5" +asysocks==0.0.10; python_version >= "3.7" +bcrypt==3.2.0; python_version >= "3.6" +beautifulsoup4==4.9.3 +black==20.8b1; python_version >= "3.6" bs4==0.0.1 -certifi==2020.6.20 -cffi==1.14.3 -chardet==3.0.4 -click==7.1.2 -colorama==0.4.3; sys_platform == "win32" -cryptography==3.1 -decorator==4.4.2 -dnspython==2.0.0 -flake8==3.8.3 -flask==1.1.2 -future==0.18.2 -gevent==20.6.2 -greenlet==0.4.16; platform_python_implementation == "CPython" -idna==2.10 +certifi==2020.11.8; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +cffi==1.14.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +chardet==3.0.4; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +click==7.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +colorama==0.4.4; python_version >= "3.5" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.5" and python_full_version >= "3.5.0" +cryptography==3.2.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +dnspython==2.0.0; python_version >= "3.6" +flake8==3.8.4; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") +flask==1.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +future==0.18.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" +idna==2.10; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" impacket==0.9.21 -importlib-metadata==1.7.0; python_version < "3.8" -ipython==7.18.1 -ipython-genutils==0.2.0 -isort==5.5.2 -itsdangerous==1.1.0 -jedi==0.17.2 -jinja2==2.11.2 -lazy-object-proxy==1.4.3 -ldap3==2.8.1 -ldapdomaindump==0.9.3 -lsassy==2.1.2 -markupsafe==1.1.1 -mccabe==0.6.1 -minidump==0.0.13 -minikerberos==0.2.4 +importlib-metadata==2.0.0; python_version >= "2.7" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.5.0" and python_version < "3.8" +isort==5.6.4; python_version >= "3.6" and python_version < "4.0" +itsdangerous==1.1.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +jinja2==2.11.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +lazy-object-proxy==1.4.3; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.5" +ldap3==2.8.1; python_version >= "3.6" +ldapdomaindump==0.9.3; python_version >= "3.6" +lsassy==2.1.3; python_version >= "3.6" +markupsafe==1.1.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +mccabe==0.6.1; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.5" +minidump==0.0.13; python_version >= "3.6" +minikerberos==0.2.5; python_version >= "3.7" msgpack==1.0.0 -msldap==0.3.13 +msldap==0.3.20; python_version >= "3.7" +mypy-extensions==0.4.3; python_version >= "3.6" neo4j==4.1.1 -netaddr==0.8.0 -ntlm-auth==1.5.0 +netaddr==0.8.0; python_version >= "3.6" +ntlm-auth==1.5.0; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" paramiko==2.7.2 -parso==0.7.1 -pexpect==4.8.0; sys_platform != "win32" -pickleshare==0.7.5 -prompt-toolkit==3.0.7 -ptyprocess==0.6.0; sys_platform != "win32" -pyasn1==0.4.8 -pycodestyle==2.6.0 -pycparser==2.20 -pycryptodomex==3.9.8 -pyflakes==2.2.0 -pygments==2.7.1 -pylint==2.6.0 -pylnk3==0.3.0 -pynacl==1.4.0 -pyopenssl==19.1.0 -pypsrp==0.5.0 -pypykatz==0.3.12 -pyspnego==0.1.1 -pytz==2020.1 -requests==2.24.0 +pathspec==0.8.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +prompt-toolkit==3.0.8; python_full_version >= "3.6.1" and python_version >= "3.7" +pyasn1==0.4.8; python_version >= "3.6" +pycodestyle==2.6.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" +pycparser==2.20; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pycryptodomex==3.9.9; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" +pyflakes==2.2.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" +pylint==2.6.0; python_version >= "3.5" +pylnk3==0.3.0; python_version >= "3" +pynacl==1.4.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" +pyopenssl==19.1.0; python_version >= "3.6" +pypsrp==0.5.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +pypykatz==0.3.14; python_version >= "3.6" +pyspnego==0.1.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pytz==2020.4 +regex==2020.11.13; python_version >= "3.6" requests-ntlm==1.1.0 -shiv==0.3.1 -six==1.15.0 -soupsieve==1.9.6 +requests==2.25.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +shiv==0.4.0; python_version >= "3.6" +six==1.15.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +soupsieve==2.0.1; python_version >= "3.5" termcolor==1.1.0 terminaltables==3.1.0 -toml==0.10.1 -tqdm==4.49.0 -traitlets==5.0.4 -typed-ast==1.4.1; implementation_name == "cpython" and python_version < "3.8" -urllib3==1.25.10 -wcwidth==0.2.5 -werkzeug==1.0.1 -winacl==0.0.6 -winsspi==0.0.9 -wrapt==1.12.1 -xmltodict==0.12.0 -zipp==3.1.0; python_version < "3.8" -zope.event==4.5.0 -zope.interface==5.1.0 +toml==0.10.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" +tqdm==4.51.0; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.2.0" and python_version >= "3.7" +typed-ast==1.4.1; implementation_name == "cpython" and python_version < "3.8" and python_version >= "3.6" +typing-extensions==3.7.4.3; python_version >= "3.6" +urllib3==1.26.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" +wcwidth==0.2.5; python_full_version >= "3.6.1" and python_version >= "3.7" +werkzeug==1.0.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +winacl==0.1.0; python_version >= "3.7" +winsspi==0.0.9; platform_system == "Windows" and python_version >= "3.7" +wrapt==1.12.1; python_version >= "3.5" +xmltodict==0.12.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") +zipp==3.4.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.5.0" and python_version < "3.8" and python_version >= "3.6" diff --git a/requirements.txt b/requirements.txt index b6156e12..aa8bfa7a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,58 +1,55 @@ -aiowinreg==0.0.3 -asn1crypto==1.4.0 -asysocks==0.0.7 -bcrypt==3.2.0 -beautifulsoup4==4.9.1 +aioconsole==0.3.1; python_version >= "3.6" +aiowinreg==0.0.3; python_version >= "3.6" +asn1crypto==1.4.0; python_version >= "3.7" +asysocks==0.0.10; python_version >= "3.7" +bcrypt==3.2.0; python_version >= "3.6" +beautifulsoup4==4.9.3 bs4==0.0.1 -certifi==2020.6.20 -cffi==1.14.3 -chardet==3.0.4 -click==7.1.2 -cryptography==3.1 -dnspython==2.0.0 -flask==1.1.2 -future==0.18.2 -gevent==20.6.2 -greenlet==0.4.16; platform_python_implementation == "CPython" -idna==2.10 +certifi==2020.11.8; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +cffi==1.14.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +chardet==3.0.4; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +click==7.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +cryptography==3.2.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +dnspython==2.0.0; python_version >= "3.6" +flask==1.1.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +future==0.18.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6" +idna==2.10; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" impacket==0.9.21 -itsdangerous==1.1.0 -jinja2==2.11.2 -ldap3==2.8.1 -ldapdomaindump==0.9.3 -lsassy==2.1.2 -markupsafe==1.1.1 -minidump==0.0.13 -minikerberos==0.2.4 +itsdangerous==1.1.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +jinja2==2.11.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +ldap3==2.8.1; python_version >= "3.6" +ldapdomaindump==0.9.3; python_version >= "3.6" +lsassy==2.1.3; python_version >= "3.6" +markupsafe==1.1.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +minidump==0.0.13; python_version >= "3.6" +minikerberos==0.2.5; python_version >= "3.7" msgpack==1.0.0 -msldap==0.3.13 +msldap==0.3.20; python_version >= "3.7" neo4j==4.1.1 -netaddr==0.8.0 -ntlm-auth==1.5.0 +netaddr==0.8.0; python_version >= "3.6" +ntlm-auth==1.5.0; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" paramiko==2.7.2 -prompt-toolkit==3.0.7 -pyasn1==0.4.8 -pycparser==2.20 -pycryptodomex==3.9.8 -pylnk3==0.3.0 -pynacl==1.4.0 -pyopenssl==19.1.0 -pypsrp==0.5.0 -pypykatz==0.3.12 -pyspnego==0.1.1 -pytz==2020.1 -requests==2.24.0 +prompt-toolkit==3.0.8; python_full_version >= "3.6.1" and python_version >= "3.7" +pyasn1==0.4.8; python_version >= "3.6" +pycparser==2.20; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pycryptodomex==3.9.9; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" +pylnk3==0.3.0; python_version >= "3" +pynacl==1.4.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" +pyopenssl==19.1.0; python_version >= "3.6" +pypsrp==0.5.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +pypykatz==0.3.14; python_version >= "3.6" +pyspnego==0.1.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pytz==2020.4 requests-ntlm==1.1.0 -six==1.15.0 -soupsieve==1.9.6 +requests==2.25.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +six==1.15.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +soupsieve==2.0.1; python_version >= "3.5" termcolor==1.1.0 terminaltables==3.1.0 -tqdm==4.49.0 -urllib3==1.25.10 -wcwidth==0.2.5 -werkzeug==1.0.1 -winacl==0.0.6 -winsspi==0.0.9 -xmltodict==0.12.0 -zope.event==4.5.0 -zope.interface==5.1.0 +tqdm==4.51.0; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.2.0" and python_version >= "3.7" +urllib3==1.26.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" +wcwidth==0.2.5; python_full_version >= "3.6.1" and python_version >= "3.7" +werkzeug==1.0.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +winacl==0.1.0; python_version >= "3.7" +winsspi==0.0.9; platform_system == "Windows" and python_version >= "3.7" +xmltodict==0.12.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0")